* Flags:
* #1 - Player has pissed
* #2 - Bear is going to eat player
* #3 - Player is dead -- no more messages!
*
* Counters:
* #1 - On after player pisses. At 15, tells him to talk to bear.
* #2 - On at start of game. At 20, tells him to go read something.
* #3 - On after player reads graffiti. At 15, makes clue phone appear.
* #4 - On when bear sees player. At 7, the bear eats him.
(* Don't let player do GET ALL, because it doesn't activate all my GET THIS *)
(* and GET THAT commands and I don't want to deal with it. (Maybe I need *)
(* to use SPECIAL in the .dat file?) *)
COMMAND GET ALL
BeforeCommand
FlagOFF 3
PrintMessage 48
DoneWithTurn
END_COMMAND
(* Don't let player get anything with the light off. *)
COMMAND GET ANY
BeforeCommand
FlagOFF 3
NOT LightPresent
PrintMessage 49
DoneWithTurn
END_COMMAND
(* Tell player to get posters one at a time. *)
COMMAND GET POSTERS
BeforeCommand
InRoom 207
OR
InRoom 220
PrintMessage 50
DoneWithTurn
END_COMMAND
(* Turn on counter if player enters room with bear. *)
COMMAND ANY
BeforeCommand
FlagOFF 2
InRoom 300
LightPresent
TurnFlagON 2
TurnCounterON 4
END_COMMAND
(* Have bear eat player if he waits too long. *)
COMMAND ANY
AfterCommand
CounterGT 4 7
PrintMessage 42
TurnFlagON 3
EndGame
QuitAllCMDs
DoneWithTurn
END_COMMAND
(* Bear stops player from leaving. *)
COMMAND SOUTH
BeforeCommand
FlagOFF 3
FlagON 2
PrintMessage 41
DoneWithTurn
END_COMMAND
(* Remind player that bear is going to kill him. *)
COMMAND ANY
AfterCommand
FlagOFF 3
FlagON 2
RandomMessage 43 45
END_COMMAND
(* Turn 'read graffiti' counter on. *)
COMMAND ANY
BeforeCommand
NewLife
TurnCounterON 2
END_COMMAND
(* Tell player to read graffiti. *)
COMMAND ANY
AfterCommand
FlagOFF 3
CounterGT 2 20
PrintMessage 39
TurnCounterOFF 2
END_COMMAND
(* Make need to piss follow player to each room *)
COMMAND ANY
AfterCommand
FlagOFF 3
FlagOFF 1
PutInCurrentRoom 204
END_COMMAND
(* Don't let player piss after he's already pissed once. *)
COMMAND PISS
BeforeCommand
FlagON 1
FlagOFF 3
PrintMessage 9
DoneWithTurn
END_COMMAND
(* Piss in pants. *)
COMMAND PISS IN PANTS
BeforeCommand
FlagOFF 3
PrintMessage 31
TurnFlagON 3
EndGame
DoneWithTurn
END_COMMAND
(* Don't let player piss on wall. *)
COMMAND PISS ON WALLS
BeforeCommand
FlagOFF 3
PrintMessage 33
DoneWithTurn
END_COMMAND
(* Piss on the bear. *)
COMMAND PISS ON BEAR
BeforeCommand
FlagOFF 3
InRoom 300
OR
InRoom 301
PrintMessage 32
Destroy 300
TurnFlagON 3
EndGame
DoneWithTurn
QuitAllCMDs
TurnFlagON 3
END_COMMAND
(* Don't let player piss on floor. *)
COMMAND PISS ON FLOOR
BeforeCommand
FlagOFF 3
PrintMessage 18
DoneWithTurn
END_COMMAND
(* Don't let player piss in any room other than purple room. *)
COMMAND PISS
BeforeCommand
FlagOFF 3
NOT AtLocation 4
PrintMessage 1
DoneWithTurn
END_COMMAND
(* Dont let player piss if toilet is locked. *)
COMMAND PISS
BeforeCommand
AtLocation 4
IsLocked 201
PrintMessage 2
DoneWithTurn
END_COMMAND
(* Allow player to piss if in purple room with toilet unlocked. *)
(* First change the picture to the pissed-on picture if it's in the toilet. *)
COMMAND PISS
BeforeCommand
AtLocation 4
NOT IsLocked 202
NOT FlagON 1
InRoom 221
NOT IsCarrying 221
SwapLocations 221 222
END_COMMAND
(* Then let the player piss. *)
COMMAND PISS
BeforeCommand
AtLocation 4
NOT IsLocked 202
NOT FlagON 1
PrintMessage 3
PlusScore 1
TurnFlagON 1
TurnCounterON 1
Destroy 204
PutInCurrentRoom 215
DoneWithTurn
END_COMMAND
(* Can't eat sandwich if you aren't carrying it. *)
COMMAND EAT SANDWICH
BeforeCommand
InRoom 225
NOT IsCarrying 225
PrintMessage 25 (* Might want to pick it up first. *)
DoneWithTurn
END_COMMAND
(* Randomly remind player that he has to piss *)
COMMAND ANY
AfterCommand
FlagOFF 3
FlagOFF 1
Chance 35
RandomMessage 11 14
END_COMMAND
COMMAND FEED SANDWICH TO BEAR
BeforeCommand
FlagOFF 3
InRoom 300
IsCarrying 225
ReDirectTo DROP SANDWICH
END_COMMAND
(* Throw something at bear = attack bear with object. *)
COMMAND THROW ANY AT BEAR
ReDirectTo ATTACK BEAR WITH $NOUN$
END_COMMAND
(* Attack bear with something. *)
COMMAND ATTACK BEAR WITH ANY
BeforeCommand
FlagOFF 3
ObjectPresent
InRoom 300
OR
InRoom 301
PrintMessage 27
Destroy 300
TurnFlagON 3
EndGame
DoneWithTurn
QuitAllCMDs
END_COMMAND
(* Can't attack bear with bare hands. *)
COMMAND ATTACK BEAR
BeforeCommand
FlagOFF 3
InRoom 300
OR
InRoom 301
PrintMessage 36
DoneWithTurn
END_COMMAND
(* Talk to bear. *)
COMMAND TALK TO BEAR
BeforeCommand
FlagOFF 3
FlagON 1
InRoom 301
PrintMessage 28
DoneWithTurn
END_COMMAND
(* Yell at player for getting UNMOVABLE objecs. *)
COMMAND GET FLOOR
BeforeCommand
FlagOFF 3
PrintMessage 19
DoneWithTurn
END_COMMAND
(* Don't let player take walls, but don't claim there are no walls here. *)
COMMAND GET WALLS
BeforeCommand
FlagOFF 3
PrintMessage 19
DoneWithTurn
END_COMMAND
(* Prevent player from going through closed door. *)
COMMAND SOUTH
BeforeCommand
AtLocation 2
NOT IsOpen 200
PrintMessage 8
DoneWithTurn
END_COMMAND
(* Prevent player from going through hole before he's found it. *)
COMMAND EAST
BeforeCommand
AtLocation 2
NOT InRoom 214
PrintMessage 15
DoneWithTurn
END_COMMAND
(* Display message when player gets Sammy Hagar poster *)
(* Switch visible poster for the invisible one, and give *)
(* it to the player.
COMMAND GET ANY
BeforeCommand
NOUNIsNumber 209
PrintMessage 29
Destroy 209 (* Destroy invisible poster *)
GetIt 210 (* Give player visible poster *)
SendToRoom 214 2 (* Put hole in room *)
SwapLocations 207 220 (* Remove Hagar from the group of posters *)
TurnCounterOFF 2
TurnCounterOFF 3
DoneWithTurn
END_COMMAND
(* Don't let player write if he doesn't have the crayon. *)
COMMAND WRITE ANY
BeforeCommand
FlagOFF 3
NOT IsCarrying 218
PrintMessage 16
DoneWithTurn
END_COMMAND
(* Do let player write if he has the crayon. *)
COMMAND WRITE ANY
BeforeCommand
FlagOFF 3
IsCarrying 218
PrintMessage 17
DoneWithTurn
END_COMMAND
(* Display message as guitar picks are picked up. *)
COMMAND GET PICKS
BeforeCommand
AtLocation 2
Present 203
NOT IsCarrying 203
PrintMessage 4
END_COMMAND
(* Display message when toilet is unlocked. *)
COMMAND UNLOCK TOILET WITH KEY
BeforeCommand
AtLocation 4
IsCarrying 202
PrintMessage 5
PutInCurrentRoom 221
PlusScore 1
END_COMMAND
(* Prevent player from re-locking toilet. Else he can keep *)
(* locking and unlocking it to rack up points. *)
COMMAND LOCK TOILET WITH KEY
BeforeCommand
AtLocation 4
IsCarrying 202
NOT IsLocked 201
PrintMessage 10
Destroy 202
DoneWithTurn
END_COMMAND
(* Get picture. *)
COMMAND GET PICTURE
BeforeCommand
InRoom 221
NOT IsCarrying 221
PrintMessage 20
MinusScore 1
END_COMMAND
(* Get soiled picture. *)
COMMAND GET PICTURE
BeforeCommand
InRoom 222
NOT IsCarrying 222
PrintMessage 23
MinusScore 2
END_COMMAND
(* Can't drop picture. *)
COMMAND DROP PICTURE
BeforeCommand
IsCarrying 221
OR
IsCarrying 222
PrintMessage 21
DoneWithTurn
END_COMMAND
(* Display message when toilet flushes but player hasn't pissed yet. *)
COMMAND FLUSH TOILET
BeforeCommand
AtLocation 4
FlagOFF 1
PrintMessage 6
DoneWithTurn
END_COMMAND
(* Display message when player flushes toilet after having pissed in it. *)
(* Player wins game. *)
COMMAND FLUSH TOILET
BeforeCommand
AtLocation 4
FlagON 1
PrintMessage 7
PlusScore 1
WinGame
DoneWithTurn
END_COMMAND