Prev: 58208 Up: Map Next: 58535
58514: Tick Entity Colour Timer
Entity handler that drives a per-entity colour timer. Each frame it decrements the timer byte; if still non-zero, extracts the animation frame index from the low 3 bits and calls Paint_Narrow_Entity_Attributes to refresh the entity's attribute colours, then advances the entity pointer by 11 bytes via Tick_Entity_Colour_Timer_Advance. When the timer reaches zero, falls through to Retire_Expired_Entity to erase and retire the entity. Written into entity records by Kill_Tracked_Enemy_Entity.
Tick_Entity_Colour_Timer 58514 DEC (HL) Decrement the entity timer; if still live, extract the low 3 bits as the animation frame index and refresh the entity's attribute colours via Paint_Narrow_Entity_Attributes.
58515 JP Z,Retire_Expired_Entity
58518 LD A,(HL)
58519 INC HL
58520 AND 7
58522 EXX
58523 LD B,A
58524 EXX
58525 PUSH HL
58526 CALL Paint_Narrow_Entity_Attributes
58529 POP HL
This entry point is used by the routine at Process_Cluster_Entity.
Tick_Entity_Colour_Timer_Advance 58530 LD DE,11 Advance the entity pointer by 11 bytes and return.
58533 ADD HL,DE
58534 RET
Prev: 58208 Up: Map Next: 58535