From d90f35cbb819319941225c0ddc6c8355126d02a9 Mon Sep 17 00:00:00 2001 From: Pecusx Date: Mon, 26 May 2025 18:14:09 +0200 Subject: [PATCH] Final (?) foot animation --- lumber.asm | 29 ++++++++++++++++++----------- lumber.xex | Bin 29119 -> 29147 bytes 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/lumber.asm b/lumber.asm index 0e0cc67..e1d257c 100644 --- a/lumber.asm +++ b/lumber.asm @@ -27,7 +27,6 @@ display = $a000 .zpvar VBItemp .word .zpvar tempbyte .byte .zpvar SyncByte .byte - .zpvar AnimTimer .byte .zpvar NTSCCounter .byte .zpvar StateFlag .byte ; 0 - menu, 1 - game screen, 2 RIP screen, 5 - game over screen, etc. .zpvar PowerValue .byte ; power: 0 - 48 @@ -597,7 +596,7 @@ no_next_credit ;-------------------------------------------------- lda RTCLOK+2 and #%00000011 ; for slower animation - bne no_timber_animation + jne no_timber_animation inc AnimTimer ; animations ; check if animation in progress @@ -654,7 +653,7 @@ no_eyes_animation beq no_foot ; eyes up (no animation) ; continue foot animation inx - cpx #9 ; after last phase of foot animation + cpx #13 ; after last phase of foot animation bne not_end_f ldx #0 ; set to mo animation phase not_end_f @@ -663,12 +662,17 @@ not_end_f jmp no_timber_animation no_foot ; no animation in progress let's make new - lda RANDOM - and #%00011111 - bne no_timber_animation ; 0 - animation - ldx #1 ; start foot animation + lda RTCLOK+2 + and #%00000111 ; for slower animation + bne no_timber_animation + dec FootTimer + bne no_timber_animation + ; start foot animation + ldx #1 stx FootPhase jsr MenuFootSet + randomize 15 35 + sta FootTimer no_timber_animation rts .endp @@ -1089,6 +1093,7 @@ gameOver ;-------------------------------------------------- .proc StartScreen ;-------------------------------------------------- + mva #200 FootTimer ; set delay for first foot animation jsr MakeDarkScreen jsr MenuAnimationsReset jsr HidePM @@ -2256,6 +2261,10 @@ EyesPhase .ds 1 FootPhase .ds 1 +AnimTimer + .ds 1 +FootTimer + .ds 1 ;-------------------------------------------------- .proc MenuAnimationsReset ;-------------------------------------------------- @@ -2272,8 +2281,7 @@ FootPhase ;-------------------------------------------------- .proc MenuEyesSet ;-------------------------------------------------- -; set eyes to phase in EyesPhase register -; ldx EyesPhase +; set eyes to phase in X register lda title_anime_tableL,x sta timber_eyes_addr lda title_anime_tableH,x @@ -2283,8 +2291,7 @@ FootPhase ;-------------------------------------------------- .proc MenuFootSet ;-------------------------------------------------- -; set eyes to phase in FootPhase register -; ldx FootPhase +; set eyes to phase in X register txa lsr ; two times lower animation speed and #%00000001 diff --git a/lumber.xex b/lumber.xex index 6f6e3888d72863b0e89ddbedd72f91f434ea74f3..aba568508a0408de5f4dfcdcdab6672576e3a116 100644 GIT binary patch delta 4640 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 Y3UeWTk-=Q3pTBbKX35=9L-*GI0@XSw0{{R3