![]() |
Routines |
| Prev: 36367 | Up: Map | Next: 36493 |
|
Store the given room as the current room and update the exit record.
|
||||
| MovePlayerToRoom | 36376 | LD C,A | Remember the room being entered. | |
| 36377 | LD A,(25123) | Fetch the current room. | ||
| 36380 | LD HL,25124 | The scenic events remember the room the player just left. | ||
| 36383 | LD B,8 | Up to eight scenic rooms may name the room just left. | ||
| 36385 | JR MovePlayerToRoom_Step1 | Continue at MovePlayerToRoom_Step1 to see if this scenic slot names the old room. | ||
| MovePlayerToRoom_Loop1 | 36387 | INC HL | Move on to the next scenic room. | |
| MovePlayerToRoom_Step1 | 36388 | CP (HL) | Leave this scenic slot when it does not name the old room. | |
| 36389 | JR NZ,MovePlayerToRoom_Step2 | |||
| 36391 | LD (HL),C | This scenic slot now names the room being entered. | ||
| MovePlayerToRoom_Step2 | 36392 | DJNZ MovePlayerToRoom_Loop1 | Repeat for the remaining scenic rooms. | |
| 36394 | LD A,C | Make the new room current. | ||
| 36395 | LD (25123),A | |||
| 36398 | LD E,0 | Draw the room, including its picture. | ||
| 36400 | CALL Handler_DisplayRoom | Call Handler_DisplayRoom to display the room. | ||
| 36403 | LD A,18 | Jump to MovePlayerToRoom_Step3 when An android guard. He has shot at you and missed. (18) is not here or being carried. | ||
| 36405 | CALL IsObjectInCurrentRoom | |||
| 36408 | JR NZ,MovePlayerToRoom_Step3 | |||
| 36410 | LD HL,25113 | Check the turn-based event flags. | ||
| 36413 | SET 0,(HL) | The android will attack in 2 turns. | ||
| 36415 | LD A,2 | |||
| 36417 | LD (25114),A | |||
| MovePlayerToRoom_Step3 | 36420 | LD A,36 | Jump to MovePlayerToRoom_Step4 when A huge,blind slug is blocking the western exit. It is advancing toward you. (36) is not here or being carried. | |
| 36422 | CALL IsObjectInCurrentRoom | |||
| 36425 | JR NZ,MovePlayerToRoom_Step4 | |||
| 36427 | LD HL,25113 | Check the turn-based event flags. | ||
| 36430 | SET 1,(HL) | The slug will attack in 6 turns. | ||
| 36432 | LD A,6 | |||
| 36434 | LD (25115),A | |||
| MovePlayerToRoom_Step4 | 36437 | LD A,39 | Jump to MovePlayerToRoom_Step5 when The alien commander, in space armour. (39) is not here or being carried. | |
| 36439 | CALL IsObjectInCurrentRoom | |||
| 36442 | JR NZ,MovePlayerToRoom_Step5 | |||
| 36444 | LD HL,25113 | Check the turn-based event flags. | ||
| 36447 | SET 2,(HL) | The second android will attack in 6 turns. | ||
| 36449 | LD A,6 | |||
| 36451 | LD (25116),A | |||
| MovePlayerToRoom_Step5 | 36454 | LD A,(25123) | Fetch the current room. | |
| 36457 | CP 5 | The tractor beam is only dealt with on The Landing Pad.. | ||
| 36459 | JR NZ,MovePlayerToRoom_Step6 | |||
| 36461 | LD HL,25113 | Check the turn-based event flags. | ||
| 36464 | BIT 3,(HL) | The explosion countdown is not armed. | ||
| 36466 | JR Z,MovePlayerToRoom_Step6 | |||
| 36468 | RES 3,(HL) | Leave the explosion countdown unarmed. | ||
| 36470 | LD BC,12288 | Move A tractor beam is holding the ship. Takeoff is impossible. (48) to nowhere (0). | ||
| 36473 | CALL UpdateObjectLocation | |||
| 36476 | XOR A | Close the south exit of The Landing Pad.. | ||
| 36477 | LD (35705),A | |||
| 36480 | LD BC,16388 | Move The ship is ready to take off. (64) to In the Galaxy at rest,on a landing pad. (4). | ||
| 36483 | CALL UpdateObjectLocation | |||
| 36486 | LD HL,33730 | Print There is a tremendous roar underground,to the south. The alien complex is destroyed.. | ||
| 36489 | CALL PrintStringAndANewline | |||
| MovePlayerToRoom_Step6 | 36492 | RET | Return. | |
| Prev: 36367 | Up: Map | Next: 36493 |