From 13ae687d9c5b1a45eade7e00266d826c734a1743 Mon Sep 17 00:00:00 2001 From: Randy Thiemann Date: Tue, 5 Dec 2023 05:32:05 +0100 Subject: [PATCH] Fixed hard drop not working in 20G. --- bin/PandorasBlocks.gbc | Bin 262144 -> 262144 bytes bin/PandorasBlocks.map | 4 ++-- bin/PandorasBlocks.pocket | Bin 262144 -> 262144 bytes bin/PandorasBlocks.sym | 4 ++-- src/field.asm | 18 ++++++++++-------- 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/bin/PandorasBlocks.gbc b/bin/PandorasBlocks.gbc index 1687cbbc2fa891eb3215e5e9319ca6669a85d0b6..9b13dd47a014e4b27288e64fc74bd843fe0f003b 100644 GIT binary patch delta 99 zcmZo@5NK!+*x=8|IJ-H3aeDwG<33iYm;V?Qe1937|Hq=?_K#UZ{vVTu^oQ1eA{rLc d{oEPNw#TtEUbDxesvW2bh?%zgxifFt0RTbmC3*k= delta 99 zcmZo@5NK!+*x=8|IJG%|aeDwG<33iY)_)=zz8_xxV^nbeWpMrpu|<-w!YUF)FzKGC2Q_MZ@7Avxek9CJoW) de(sEB+vC_7ui4{K)eckz#7x`$+?hA+002ksC1C&n diff --git a/bin/PandorasBlocks.sym b/bin/PandorasBlocks.sym index 8e90a9a..8ea8d23 100644 --- a/bin/PandorasBlocks.sym +++ b/bin/PandorasBlocks.sym @@ -1282,7 +1282,7 @@ 04:4702 FieldProcess.noeffect 04:4706 FieldProcess.skipmovement 04:4706 FieldProcess.donemanipulating -04:4728 FieldProcess.sonicdrop +04:4722 FieldProcess.sonicdrop 04:4733 FieldProcess.sonicneutrallockskip 04:473d FieldProcess.harddrop 04:474c FieldProcess.donedeterminingharddropdistance @@ -2147,7 +2147,7 @@ 05:4728 BigFieldProcess.noeffect 05:472c BigFieldProcess.skipmovement 05:472c BigFieldProcess.donemanipulating -05:474e BigFieldProcess.sonicdrop +05:4748 BigFieldProcess.sonicdrop 05:4759 BigFieldProcess.sonicneutrallockskip 05:4763 BigFieldProcess.harddrop 05:4772 BigFieldProcess.donedeterminingharddropdistance diff --git a/src/field.asm b/src/field.asm index d473db4..606a3e0 100644 --- a/src/field.asm +++ b/src/field.asm @@ -1460,10 +1460,7 @@ FieldProcess:: ld a, 1 ldh [hWantedG], a - ; Is a hard/sonic drop requested? Skip if in 20G mode. - ldh a, [hCurrentIntegerGravity] - cp a, 20 - jr z, .postdrop + ; Is a hard/sonic drop requested? ldh a, [hUpState] cp a, 1 jr nz, .postdrop @@ -1479,6 +1476,10 @@ FieldProcess:: ; Sonic drop. .sonicdrop + ; Skip in 20G mode. + ldh a, [hCurrentIntegerGravity] + cp a, 20 + jr z, .postdrop ld a, [wDropModeState] cp a, DROP_MODE_SNIC jr z, .sonicneutrallockskip @@ -3716,10 +3717,7 @@ BigFieldProcess:: ld a, 1 ldh [hWantedG], a - ; Is a hard/sonic drop requested? Skip if in 20G mode. - ldh a, [hCurrentIntegerGravity] - cp a, 20 - jr z, .postdrop + ; Is a hard/sonic drop requested? ldh a, [hUpState] cp a, 1 jr nz, .postdrop @@ -3735,6 +3733,10 @@ BigFieldProcess:: ; Sonic drop. .sonicdrop + ; Skip in 20G mode. + ldh a, [hCurrentIntegerGravity] + cp a, 20 + jr z, .postdrop ld a, [wDropModeState] cp a, DROP_MODE_SNIC jr z, .sonicneutrallockskip