Prev: 35875 Up: Map Next: 35995
35915: Action: Look
Describes where the current character is. The player gets the place name; another character is reported instead. Reached through the action table at ActionTable, dispatched by Turn_RunTheHandlerIfPresent.
If the message is held back, the place is not described.
Action_Look 35915 CALL ConditionSuppressTheMessage Call ConditionSuppressTheMessage. If the message is held back, the place is not described.
35918 LD IX,(46860) Use the record of the character whose turn it is.
35922 LD A,(IX+1) Read where this character is.
35925 CP 255 Jump to Action_Look_DescribeTheLocation if this character is not inside another object.
35927 JR Z,Action_Look_DescribeTheLocation
35929 LD HL,128 Store 0128 in 45053.
35932 LD (45053),HL
35935 LD HL,45052 Point at the message "You are in[0x16]" (45052).
35938 CALL PrintMessage Call PrintMessage to print message.
35941 PUSH IX Read where this character is.
35943 LD A,(IX+1)
Find the object's record.
35946 CALL LocateObject Call LocateObject to locate object.
Describe the place.
35949 CALL Message_ExitsForThisLocation Call Message_ExitsForThisLocation to print the exits for this location.
35952 LD E,(IX+8) Read the name token from the object record.
35955 LD A,(IX+9) Read the name token's high byte from the object record.
35958 AND 15 Keep the low nibble of byte 9 of this object.
35960 LD D,A
Print the token in DE.
35961 CALL PrintToken Call PrintToken to print a dictionary token.
Print a full stop.
35964 LD A,46 Print a full stop after the place name.
35966 CALL Print_Character
Print a newline.
35969 CALL Print_LineBreak Call Print_LineBreak to print a newline.
35972 LD HL,45059 Point at the message "You see :[0x14]" (45059).
35975 CALL PrintMessage Call PrintMessage to print message.
35978 POP IX Read where this object is from the object record.
35980 LD A,(IX+1)
35983 LD B,(IX+16) Read the location from the object record.
35986 JP Message_ListWithASeparator Jump to Message_ListWithASeparator to list what is in this place.
Action_Look_DescribeTheLocation 35989 LD A,(IX+16) Read the location from the object record.
35992 JP YouSeePreposition Jump to YouSeePreposition to describe this location.
Prev: 35875 Up: Map Next: 35995