print("Hint for this room: Try using the `help` command.");
},
PlayerAction::Nonsense=>{
print("I couldn't understand that. Try `help` or `hint`.");
print("`hint` may contain spoilers. `help` will not.");
},
PlayerAction::Wait=>{
print("You wait around a bit. You can hear humming from the electrical lights, and the distant rumble of the building's HVAC system. The room smells faintly of fresh paint. Nothing has changed.");
},
PlayerAction::LookAround=>{
print("You are in a small room. In one corner is a TABLE. Obvious exits are a locked DOOR, and an EMERGENCY EXIT.");
}
PlayerAction::Look(item_name)=>{
matchitem_name{
ItemName::Nonsense=>{
print_undetected_item();
},
ItemName::Door=>{
print("You examine the DOOR. It is firmly locked, and you don't have any lock-picking tools. On the DOOR is an electronic KEYPAD.");
state.room_1.detected_keypad=true;
},
ItemName::EmergencyExit=>{
print("The EMERGENCY EXIT reads, \"Emergency exit. Push bar to open. Alarm will sound. Door will unlock in 15 seconds.\". The EMERGENCY EXIT is period-accurate for an American Wal-Mart c. 2020 C.E.");
},
ItemName::Keypad=>{
ifstate.room_1.detected_keypad{
print("The DOOR is locked by an electronic KEYPAD. A soft amber power light indicates that the KEYPAD is likely functional. The KEYPAD buttons are the digits 0-9, Enter, and Clear. Experience tells you that the key code is likely 4 or 5 digits long.");
}
else{
print_undetected_item();
}
},
ItemName::Note=>{
ifstate.room_1.detected_note{
forxin[
"You pick up the NOTE and read it.",
"",
"Welcome to SEROTONIN DEPOSITORY.",
"As you play, keep in mind:",
"- LOOKing at ITEMS is not always safe",
"- TAKEing an item may be bad long-term",
"- WAITing counts as an action",
"- LOOKing AROUND is always safe",
"- Other NOTEs may contain non-truths",
"The code for this first KEYPAD is 1234.",
"",
" -- Phayle Sayf",
"",
"You notice that the NOTE is _not_ period-accurate.",
].into_iter(){
print(x);
}
}
else{
print_undetected_item();
}
},
ItemName::Table=>{
print("You look at the TABLE. Your instincts tell you that it is period-accurate. Upon the TABLE sits a NOTE.");
print("Welcome to SEROTONIN DEPOSITORY, the only adventure game ever made.");
print("");
print("You have been consensually kidnapped by a diabolical ADVENTURE GAME ENTHUSIAST and encouraged to solve PUZZLES for their sick PLEASURE. The only winning move is to solve all the PUZZLES.");
print("");
print("Press ENTER if you dare to begin.");
letinput=read_input()?;
if!input.is_empty(){
print("That was more than just ENTER but OKAY, overachiever.");