![]() |
Routines |
Prev: AD32 | Up: Map | Next: AE6B |
Used by the routine at Parser_ProcessItem.
|
||||||||||||
Parser_ValidateItem | AE36 | INC BC | Adjust the counter for the sum. | |||||||||
AE37 | LD A,($A7E8) | Calculate the index (*Count_Objects-C) and store the result in E. | ||||||||||
AE3A | SUB C | |||||||||||
AE3B | LD E,A | |||||||||||
AE3C | PUSH DE | Stash DE on the stack. | ||||||||||
AE3D | LD IX,($A7D4) | Call GetTableEntry with *Pointer_ItemGroupingTable. | ||||||||||
AE41 | CALL GetTableEntry | |||||||||||
AE44 | POP DE | Restore DE from the stack. | ||||||||||
AE45 | JR ValidateItem | Jump to ValidateItem. | ||||||||||
ValidateItem_Loop | AE47 | INC HL | Increment HL by one. | |||||||||
ValidateItem | AE48 | LD A,(HL) | Jump to Response_ItemNotHere if *HL is equal to FF. | |||||||||
AE49 | CP $FF | |||||||||||
AE4B | JR Z,Response_ItemNotHere | |||||||||||
AE4D | CALL ValidateItemPresent | Call ValidateItemPresent. | ||||||||||
AE50 | JR NZ,ValidateItem_Loop | Jump to ValidateItem_Loop if the item wasn't found. | ||||||||||
AE52 | RET | Return. | ||||||||||
The item being referenced isn't in the room or in the players inventory.
Print "I can't see ".
|
||||||||||||
Response_ItemNotHere | AE53 | LD HL,$A8DB | HL=Messaging_ICantSee. | |||||||||
AE56 | CALL PrintString | Call PrintString. | ||||||||||
Print the object name.
|
||||||||||||
AE59 | LD IX,($A7D6) | Call GetTableEntry with *Pointer_ObjectNounPhrases. | ||||||||||
AE5D | CALL GetTableEntry | |||||||||||
AE60 | CALL PrintString | Call PrintString. | ||||||||||
Print " here.".
|
||||||||||||
AE63 | LD HL,$A8E8 | HL=Messaging_Here. | ||||||||||
AE66 | CALL PrintStringAndNewline | Call PrintStringAndNewline. | ||||||||||
AE69 | SCF | Set the carry flag. | ||||||||||
AE6A | RET | Return. | ||||||||||
View the equivalent code in The Jewels Of Babylon.
|
Prev: AD32 | Up: Map | Next: AE6B |