Prev: 54028 Up: Map Next: 54087
54039: Render HUD
Used by the routines at Stage_Next_Wave and PlayerDeath.
Clears the screen buffer, sets a white background, draws the playfield border (DrawPlayfieldBorder), and redraws the attribute bar (UpdateAttributeBar) before falling through to RenderHUD_Draw. Scores (PrintPlayerScore) and lives (DrawLivesDisplay) are then rendered for each player in turn by swapping state with Swap_Player_State; the "WAVE" label and wave number (PrintWaveNumber) are printed last for player 1.
RenderHUD 54039 CALL ClearScreenBuffer Call ClearScreenBuffer.
54042 LD A,7 Call SetBackgroundColour using WHITE.
54044 CALL SetBackgroundColour
54047 CALL DrawPlayfieldBorder Call DrawPlayfieldBorder.
54050 CALL UpdateAttributeBar Call UpdateAttributeBar.
This entry point is used by the routine at Clear_Screen_And_Render_HUD.
Shared entry point, also reached from Clear_Screen_And_Render_HUD via JP (which clears the screen and sets the background but skips the wave animation and attribute bar setup). Renders scores and lives for player 1, then swaps to player 2.
RenderHUD_Draw 54053 CALL PrintPlayerScore Call PrintPlayerScore.
54056 CALL DrawLivesDisplay Call DrawLivesDisplay.
Swap to player 2 to render their score, lives and wave number.
54059 CALL Swap_Player_State Call Swap_Player_State.
54062 CALL PrintPlayerScore Call PrintPlayerScore.
54065 CALL DrawLivesDisplay Call DrawLivesDisplay.
54068 CALL PrintWaveNumber Call PrintWaveNumber.
Swap back to player 1; print the "WAVE" label and player 1's wave number, then redraw the attribute bar to complete the HUD.
54071 CALL Swap_Player_State Call Swap_Player_State.
54074 LD HL,53478 Call PrintMessaging using Messaging_Wave.
54077 CALL PrintMessaging
54080 CALL PrintWaveNumber Call PrintWaveNumber.
54083 CALL UpdateAttributeBar Call UpdateAttributeBar.
54086 RET Return.
Prev: 54028 Up: Map Next: 54087