From 6ff16ef5929b04c5ab0fe6359e8391037e32c7d9 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Mon, 19 Aug 2019 23:55:31 -0400 Subject: [PATCH] ootw: c1: slugs are re-initialized right and fall properly --- ootw/TODO | 8 ++-- ootw/ootw_c1_sluggy.s | 23 ++++++++- ootw/ootw_graphics/sprites/slugs.inc | 71 +++++++++++++--------------- 3 files changed, 56 insertions(+), 46 deletions(-) diff --git a/ootw/TODO b/ootw/TODO index ebe68149..d685e2ca 100644 --- a/ootw/TODO +++ b/ootw/TODO @@ -11,13 +11,9 @@ TODO Before release: when calculating room calcs, take Y position into account - L1 -- fix beast ending - L1 -- have beast collapse L1 -- fix slugs - + slugs on ceiling drop + adjust slug attack range + spawn new slugs in 2nd room - + be sure can jump over slugs L2 -- add doors L2 -- disable door/powerline by shooting wall @@ -76,7 +72,6 @@ BEHAVIOR DIFFERENCES: - small things like birds flying are not implemented * caverns: - - slugs possibly can fall due to earthquake? - beast on hill and 2nd screen -- complex, only appears if you happen to leave same time beast does? then movement depends on xposition? @@ -91,6 +86,9 @@ BEHAVIOR DIFFERENCES: - beast should climb hill in rope room better - beast has shadow when standing + * slugs: + - slugs possibly can fall due to earthquake? + - they should explode away from kick (what's it doing now) + Level/Checkpoint 2 diff --git a/ootw/ootw_c1_sluggy.s b/ootw/ootw_c1_sluggy.s index 86ec3435..d9ba5179 100644 --- a/ootw/ootw_c1_sluggy.s +++ b/ootw/ootw_c1_sluggy.s @@ -105,6 +105,21 @@ slugg6_falling: .byte 0 init_slugs: + ; outside loop, init ceiling-ness + + ; ground slugs + lda #30 + sta slugg0_y + sta slugg3_y + sta slugg4_y + sta slugg5_y + + ; ceiling slugs + lda #2 + sta slugg1_y + sta slugg2_y + sta slugg6_y + ldx #0 init_slug_loop: @@ -302,8 +317,8 @@ no_attack: sec sbc PHYSICIST_X clc - adc #5 - cmp #10 + adc #8 ; fall if within 8 of physicist + cmp #16 bcs no_falling ; bge lda #1 @@ -392,6 +407,10 @@ check_draw_falling: tay dey + lda FRAMEL ; slow things down + and #$f + bne done_falling_slugs + ; actually fall cpy #7 beq falling_slugs diff --git a/ootw/ootw_graphics/sprites/slugs.inc b/ootw/ootw_graphics/sprites/slugs.inc index 98054044..d0297ed0 100644 --- a/ootw/ootw_graphics/sprites/slugs.inc +++ b/ootw/ootw_graphics/sprites/slugs.inc @@ -48,7 +48,7 @@ slug_falling_progression_hi: .byte >slug_falling8 ; 9 .byte >slug_falling9 ; 10 .byte >slug_falling10 ; 11 - .byte >slug_falling11 ; 12 + .byte >slug_falling7 ; 12 slug_falling_progression_lo: .byte