Prev: 47715 Up: Map Next: 47793
47755: Check For Early Draw
Used by the routine at HandleWaitingOutlaw.
Reads the controls while the outlaw is waiting. If the player moves the crosshair or fires, the outlaw is provoked and starts to draw at once, and "DRAW!!" appears in yellow, if it is not already on the screen.
Input
IX The address of the outlaw
CheckForEarlyDraw 47755 LD A,(IX+6) Fetch the flag which shows that the outlaw has been provoked.
47758 AND A Return if the outlaw has already been provoked.
47759 RET NZ
47760 CALL ReadControls Read the controls.
47763 AND A Return if nothing has been pressed.
47764 RET Z
47765 LD A,1 Set the flag to one.
47767 LD (IX+6),A Store the flag which shows the outlaw is provoked.
47770 LD (IX+10),A Make this the last move.
47773 LD (IX+11),A Make the timer run out on the next frame.
47776 LD HL,41489 Point HL at DrawMessageState.
47779 LD A,(HL) Fetch the flag.
47780 AND A Return if the draw message has already been printed.
47781 RET NZ
47782 LD (HL),1 Set the flag to one.
Print the "DRAW!!" message.
47784 LD HL,20526 Point HL at 20526 (in the screen buffer).
47787 LD DE,47826 Point DE at DrawMessages_Yellow.
47790 JP PrintLargeText Jump to PrintLargeText.
Prev: 47715 Up: Map Next: 47793