Prev: 42335 Up: Map Next: 42491
42442: Event: Test The Open Flag
Tests whether the object is open and returns 5. The zero flag is set when the object is not open. The bytes after that return belong to later events.
Event_TestTheOpenFlag 42442 BIT 5,(IX+7) Test whether the object is open.
42446 LD A,5 Take 5. The open test is left in the flags.
42448 RET Return.
If the message is held back, the container test is skipped.
42449 CALL ConditionSuppressTheMessage Call ConditionSuppressTheMessage. If the message is held back, the container test is skipped.
42452 LD HL,50258 Point HL at the location byte at 50258.
42455 LD A,(49451) Return if the current location is not that object's location.
42458 CP (HL)
42459 RET NZ
42460 LD HL,45189 Point at the message "the vicious warg run around you and howls." (45189).
42463 JP Turn_FinishTheSentence Jump back to Turn_FinishTheSentence to print "the vicious warg run around you and howls.".
Reached through the action list of 12 - "Large Trap Door" for action 0, dispatched by TriggerAction.
42466 LD A,(46824) Read *CurrentObject.
42469 CP 19 Return if the current object is not 19.
42471 RET NZ
42472 CALL Turn_GateTheMessage Call Turn_GateTheMessage to let the message through or hold it back.
42475 LD IX,50158 Point IX at 19 - "Barrel".
42479 LD A,(IX+16) Read the object's location.
42482 CP 33 Return if "Barrel" is not at location 33 - "Forestriver".
42484 RET NZ
42485 LD A,2 Write 2 to *51845.
42487 LD (51845),A
42490 RET Return.
Prev: 42335 Up: Map Next: 42491