Routines |
Prev: 44063 | Up: Map | Next: 44198 |
Used by the routine at 64623.
|
||||
44100 | CALL 63399 | Print or update command summary window at top of screen | ||
44103 | LD DE,55955 | Point DE at "TRAVEL TO " text... | ||
44106 | CALL 63349 | ...and print in command summary window at top of screen | ||
44109 | LD HL,51428 | Point HL at "TRAVEL TO ?" text | ||
44112 | PUSH HL | Store HL (pointer to "TRAVEL TO ?" text) | ||
44113 | LD HL,48589 | Load HL with start address of list of characters for "TRAVEL TO" character selection menu | ||
44116 | CALL 46106 | Display and process input for character selection menu ("TRAVEL TO") | ||
44119 | CALL 64207 | Display execute / reject command window and return here if execute chosen, else exit to main game loop | ||
44122 | LD A,2 | If Magic Knight is not carrying the Crystal Ball (2)... | ||
44124 | CALL 45510 | ... | ||
44127 | JP NZ,64290 | ...then display "YOU CANNOT [Current Command] THAT SPELL NOW..." window (12) and return to game | ||
44130 | LD A,25 | If Magic Knight is not carrying the Magic Missile (25)... | ||
44132 | CALL 45510 | ... | ||
44135 | JP NZ,64290 | ...then display "YOU CANNOT [Current Command] THAT SPELL NOW..." window (12) and return to game | ||
44138 | LD A,(41937) | Load BC with three times index of Current Character... | ||
44141 | LD C,A | ... | ||
44142 | ADD A,A | ... | ||
44143 | ADD A,C | ... | ||
44144 | LD B,0 | ... | ||
44146 | LD C,A | ... | ||
44147 | LD HL,24898 | Point IX at start of table of characters' current positions at 24898... | ||
44150 | ADD HL,BC | ...and add BC as offset | ||
44151 | LD A,(HL) | If character's current room is 99... | ||
44152 | CP 99 | ... | ||
44154 | JP Z,64290 | ...then display "YOU CANNOT [Current Command] THAT SPELL NOW..." window (12) and return to game | ||
44157 | CP 100 | If character's current room is 100... | ||
44159 | JP Z,64290 | ...then display "YOU CANNOT [Current Command] THAT SPELL NOW..." window (12) and return to game | ||
44162 | LD C,30 | If Magic Knight's magic level is at least 30 then flash border and screen and decrease Magic Knight's magic level by 30, otherwise set carry flag | ||
44164 | PUSH HL | |||
44165 | CALL 44225 | |||
44168 | POP HL | |||
44169 | JP C,64290 | If carry flag set then display "YOU CANNOT [Current Command] THAT SPELL NOW..." window (12) and return to game | ||
44172 | LD A,(HL) | Set Magic Knight's current room to be the same as the character's... | ||
44173 | LD (23702),A | ... | ||
44176 | INC HL | Advance HL to character's x-coordinate... | ||
44177 | LD A,(HL) | ...and load into A | ||
44178 | ADD A,A | Multiply A by eight to get x-coordinate in pixels... | ||
44179 | ADD A,A | ... | ||
44180 | ADD A,A | ... | ||
44181 | LD (24840),A | ...and set Magic Knight's current x-coordinate to this value | ||
44184 | INC HL | Advance HL to character's y-coordinate... | ||
44185 | LD A,(HL) | ...and load into A | ||
44186 | ADD A,A | Multiply A by eight to get y-coordinate in pixels... | ||
44187 | ADD A,A | ... | ||
44188 | ADD A,A | ... | ||
44189 | LD (24841),A | ...and set Magic Knight's current y-coordinate to this value | ||
44192 | LD HL,55846 | Point HL at "YOU FEEL YOUR BODY SUCKED THROUGH A BYPASS..." text | ||
44195 | JP 64293 | Display "YOU FEEL YOUR BODY SUCKED THROUGH A BYPASS..." window (15) and return to game |
Prev: 44063 | Up: Map | Next: 44198 |