![]() |
Routines |
| Prev: F8E4 | Up: Map | Next: F964 |
|
Blow the horn.
|
||||
| Action_Blow | F916 | CALL Parser_ValidateDirectObject | Call Parser_ValidateDirectObject. | |
| F919 | RET C | Return if the direct object is malformed. | ||
|
Was the player trying to blow ... the horn?
|
||||
| F91A | LD HL,$E827 | Call Parser_AdvanceToSeparator with E827. | ||
| F91D | CALL Parser_AdvanceToSeparator | |||
| F920 | JR NZ,Blow_YouCant | Jump to Blow_YouCant if the token isn't for the horn. | ||
| F922 | LD A,$09 | Jump to Blow_CheckRoom if "A horn" is held. | ||
| F924 | CALL IsObjectCarried | |||
| F927 | JR Z,Blow_CheckRoom | |||
|
Print "You're no carrying a horn.".
|
||||
| F929 | LD HL,$E3A2 | HL=Messaging_YoureNoCarryingAHorn. | ||
| F92C | JP PrintResponse | Jump to PrintResponse. | ||
|
Where is the player blowing the horn?
|
||||
| Blow_CheckRoom | F92F | LD A,($BA9B) | Jump to Blow_FetchDragon if *CurrentRoom is room 17: " The Brink of a Precipice". | |
| F932 | CP $17 | |||
| F934 | JR Z,Blow_FetchDragon | |||
| F936 | CP $34 | Jump to Response_ItHasNoApparentEffect if *CurrentRoom isn't room 34: " At the Bottom of the Precipice". | ||
| F938 | JP NZ,Response_ItHasNoApparentEffect | |||
|
Is the dragon in play?
|
||||
| Blow_FetchDragon | F93B | LD A,$16 | Call GetObjectLocation with item 16: "A dragon. It is watching you". | |
| F93D | CALL GetObjectLocation | |||
| F940 | AND A | Jump to Response_ItHasNoApparentEffect if the dragon is not in play. | ||
| F941 | JP Z,Response_ItHasNoApparentEffect | |||
| F944 | LD A,($BA9B) | Jump to Blow_ToPrecipice if *CurrentRoom isn't room 17: " The Brink of a Precipice". | ||
| F947 | CP $17 | |||
| F949 | JR NZ,Blow_ToPrecipice | |||
| F94B | LD A,$34 | Call MovePlayerToRoom with room 34: " At the Bottom of the Precipice". | ||
| F94D | CALL MovePlayerToRoom | |||
|
Print "The dragon leaps into the air,
catching you carefully.
You are lifted with it.
The dragon deposits you at
the bottom of the precipice.".
|
||||
| F950 | LD HL,$E3BD | HL=Messaging_TheDragonLeapsIntoTheAir. | ||
| F953 | JP PrintResponse | Jump to PrintResponse. | ||
|
Move the player to the brink of the precipice.
|
||||
| Blow_ToPrecipice | F956 | LD A,$17 | Call MovePlayerToRoom with room 17: " The Brink of a Precipice". | |
| F958 | CALL MovePlayerToRoom | |||
|
Print "The dragon swoops down
and picks you up.
It takes you to the top
of the precipice.".
|
||||
| F95B | LD HL,$E444 | HL=Messaging_TheDragonSwoopsDown. | ||
| F95E | JP PrintResponse | Jump to PrintResponse. | ||
|
Nothing else is valid.
|
||||
| Blow_YouCant | F961 | JP Response_ItHasNoApparentEffect | Jump to Response_ItHasNoApparentEffect. | |
| Prev: F8E4 | Up: Map | Next: F964 |