Prev: 99BB Up: Map Next: 99FA
99CE: Handle shield loss
Used by the routines at D1B9 and D215.
Input
L Shield loss quantity
99CE LD A,$01 Set shield loss counter to 1
99D0 LD ($A04E),A
This entry point is used by the routine at 969B.
99D3 LD A,($A04E) Decrement shield loss counter
99D6 DEC A
99D7 LD ($A04E),A
99DA OR A Return is shield loss counter is not zero
99DB RET NZ
99DC LD A,$04 Reset shield loss counter
99DE LD ($A04E),A
99E1 LD A,($A04D) Decrement shield power
99E4 SUB L
99E5 JP C,$99EF Jump forward if shield loss is less than 0
99E8 LD ($A04D),A Set new shield power value
99EB CALL $99FA Draw shield power in HUD
99EE RET
99EF XOR A Set shield power to zero
99F0 LD ($A04D),A
99F3 LD ($A049),A Deactivite shield
99F6 CALL $99FA Draw shield power in HUD
99F9 RET
Prev: 99BB Up: Map Next: 99FA