![]()  | 
Routines | 
| Prev: 44338 | Up: Map | Next: 44651 | 
| 
 
Used by the routine at Parser_ProcessItem.
 
 
  | 
||||||||||||
| Parser_ValidateItem | 44598 | INC BC | Adjust the counter for the sum. | |||||||||
| 44599 | LD A,(42984) | Calculate the index (*Count_Items-C) and store the result in E. | ||||||||||
| 44602 | SUB C | |||||||||||
| 44603 | LD E,A | |||||||||||
| 44604 | PUSH DE | Stash DE on the stack. | ||||||||||
| 44605 | LD IX,(42964) | Call GetTableEntry with *Pointer_ItemGroupingTable. | ||||||||||
| 44609 | CALL GetTableEntry | |||||||||||
| 44612 | POP DE | Restore DE from the stack. | ||||||||||
| 44613 | JR ValidateItem | Jump to ValidateItem. | ||||||||||
| ValidateItem_Loop | 44615 | INC HL | Increment HL by one. | |||||||||
| ValidateItem | 44616 | LD A,(HL) | Jump to Response_ItemNotHere if *HL is equal to 255. | |||||||||
| 44617 | CP 255 | |||||||||||
| 44619 | JR Z,Response_ItemNotHere | |||||||||||
| 44621 | CALL ValidateItemPresent | Call ValidateItemPresent. | ||||||||||
| 44624 | JR NZ,ValidateItem_Loop | Jump to ValidateItem_Loop if the item wasn't found. | ||||||||||
| 44626 | RET | Return. | ||||||||||
| 
 
The item being referenced isn't in the room or in the players inventory.
 
Print "I can't see ".
 
 | 
||||||||||||
| Response_ItemNotHere | 44627 | LD HL,43227 | HL=Messaging_ICantSee. | |||||||||
| 44630 | CALL PrintString | Call PrintString. | ||||||||||
| 
 
Print the object name.
 
 | 
||||||||||||
| 44633 | LD IX,(42966) | Call GetTableEntry with *Pointer_ObjectNounPhrases. | ||||||||||
| 44637 | CALL GetTableEntry | |||||||||||
| 44640 | CALL PrintString | Call PrintString. | ||||||||||
| 
 
Print " here.".
 
 | 
||||||||||||
| 44643 | LD HL,43240 | HL=Messaging_Here. | ||||||||||
| 44646 | CALL PrintStringAndNewline | Call PrintStringAndNewline. | ||||||||||
| 44649 | SCF | Set the carry flag. | ||||||||||
| 44650 | RET | Return. | ||||||||||
| 
 
View the equivalent code in The Jewels Of Babylon.
 
 | 
||||||||||||
| Prev: 44338 | Up: Map | Next: 44651 |