Prev: 62154 Up: Map Next: 62290
62236: Handler: Energy Bar Attributes
Used by the routine at RunHandlers.
energy
George:
Handler_EnergyBarAttributes 62236 LD C,34 C=horizontal co-ordinate (34).
62238 LD H,106 H=INK: RED, PAPER: CYAN (BRIGHT) .
62240 LD A,(53214) A=*George_Energy.
62243 CALL WriteEnergyBar_AttributesLoop Call WriteEnergyBar_AttributesLoop.
Lizzy:
62246 LD C,44 C=horizontal co-ordinate (44).
62248 LD H,108 H=INK: GREEN, PAPER: CYAN (BRIGHT) .
62250 LD A,(53261) A=*Lizzy_Energy.
62253 CALL WriteEnergyBar_AttributesLoop Call WriteEnergyBar_AttributesLoop.
Ralph:
62256 LD C,54 C=horizontal co-ordinate (54).
62258 LD H,111 H=INK: WHITE, PAPER: CYAN (BRIGHT) .
62260 LD A,(53308) A=*Ralph_Energy.
62263 CALL WriteEnergyBar_AttributesLoop Call WriteEnergyBar_AttributesLoop.
62266 RET Return.
f
WriteEnergyBar_AttributesLoop 62267 LD B,0 B=0.
62269 LD D,B D=B.
62270 AND A Return if the monsters energy is at zero.
62271 RET Z
62272 SUB 8 Subtract 8 from the monsters energy held by A.
62274 JR C,WriteEnergyBar_Attributes Jump to WriteEnergyBar_Attributes if A was lower than 8.
Stash the monsters energy while A is being used for writing to the buffer.
62276 EX AF,AF' Exchange the AF register with the shadow AF register.
62277 CALL WriteEnergyBar_Attributes Call WriteEnergyBar_Attributes.
62280 EX AF,AF' Exchange the shadow AF register back to the normal AF register.
62281 INC C Increment the horizontal co-ordinate by one.
62282 JR WriteEnergyBar_AttributesLoop Jump to WriteEnergyBar_AttributesLoop.
Write the energy bar to the buffer.
WriteEnergyBar_Attributes 62284 LD D,131 D=vertical co-ordinate (131).
62286 LD E,C E=horizontal co-ordinate for the current monster held in C.
62287 LD A,H A=bar colour held in H.
62288 LD (DE),A Write A to *DE.
62289 RET Return.
Prev: 62154 Up: Map Next: 62290