![]() |
Routines |
| Prev: 40169 | Up: Map | Next: 40208 |
|
Used by the routines at ProcessCharacterActionWithText, StoreSetMarkPrintPoliceLine, PrintSurprisedRemarkOnce and StoreSetMarkPointer.
Stores the room picture, and counts down while the object is not in the character's room. When the character holds it, stores a fresh delay once the counter has run out.
|
||||||||||||
| ProcessCharacterActionParameter | 40178 | LD A,C | Call CheckObjectInCharacterLocation to check object in character location. | |||||||||
| 40179 | LD (41012),A | |||||||||||
| 40182 | CALL CheckObjectInCharacterLocation | |||||||||||
| 40185 | JR Z,ProcessCharacterActionParameter_Next | Jump ahead to ProcessCharacterActionParameter_Next when this character holds the object. | ||||||||||
| 40187 | DEC (HL) | Jump to ProcessCharacterActionParameter_0 if the count does not become negative. | ||||||||||
| 40188 | JP P,ProcessCharacterActionParameter_0 | |||||||||||
| 40191 | INC (HL) | Count one more in the pointer. | ||||||||||
| ProcessCharacterActionParameter_0 | 40192 | POP DE | Restore DE from the stack. | |||||||||
| 40193 | RET | Return. | ||||||||||
|
When the counter has run out, stores this character's attribute plus thirty.
|
||||||||||||
| ProcessCharacterActionParameter_Next | 40194 | LD A,(HL) | Jump back to ProcessCharacterActionParameter_0 while this byte is not zero. | |||||||||
| 40195 | AND A | |||||||||||
| 40196 | JR NZ,ProcessCharacterActionParameter_0 | |||||||||||
| 40198 | LD A,15 | Case, then call GetRandomNumber to take a random number. | ||||||||||
| 40200 | CALL GetRandomNumber | |||||||||||
| 40203 | ADD A,30 | Advance the result by 30. | ||||||||||
| 40205 | LD (HL),A | Store the result at the pointer. | ||||||||||
| 40206 | XOR A | Clear A. | ||||||||||
| 40207 | RET | Return. | ||||||||||
| Prev: 40169 | Up: Map | Next: 40208 |