![]() |
Routines |
| Prev: 58208 | Up: Map | Next: 58535 |
|
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 |