diff options
Diffstat (limited to 'src/growup.s')
-rwxr-xr-x | src/growup.s | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/src/growup.s b/src/growup.s index 6e78e52..f9b06c9 100755 --- a/src/growup.s +++ b/src/growup.s @@ -441,6 +441,74 @@ ModifySpeedUpdatesA: # blr +NotTooBigToBurn: + lwz r4, 4(r5) + blr + +.global TooBigToBurn +TooBigToBurn: + + # Go back if Type is a Player, Yoshi, or World Map Shit + lhz r10, 8(r31) + cmpwi r10, 0x12 + blt NotTooBigToBurn + + # Go back if it's 60 + cmpwi r10, 60 + beq NotTooBigToBurn + + # Go back if SizerOn is 0 (off) + lis r10, SizerOn@h + ori r10, r10, SizerOn@l + lbz r10, 0(r10) + cmpwi r10, 0 + beq NotTooBigToBurn + + stb r30, 0x34(r1) + lwz r31, 0x4C(r1) + stb r29, 0x35(r1) + lwz r30, 0x48(r1) + lwz r29, 0x44(r1) + lwz r0, 0x54(r1) + mtlr r0 + addi r1, r1, 0x50 + blr + + +NotTooBigToFreeze: + lwz r0, 0x490(r3) + blr + +.global TooBigToFreeze +TooBigToFreeze: + + # Go back if Type is a Player, Yoshi, or World Map Shit + lhz r10, 8(r28) + cmpwi r10, 0x12 + blt NotTooBigToFreeze + + # Go back if it's 60 + cmpwi r10, 60 + beq NotTooBigToFreeze + + # Go back if SizerOn is 0 (off) + lis r10, SizerOn@h + ori r10, r10, SizerOn@l + lbz r10, 0(r10) + cmpwi r10, 0 + beq NotTooBigToFreeze + + lwz r31, 0x1C(r1) + li r3, 1 + lwz r30, 0x18(r1) + lwz r29, 0x14(r1) + lwz r28, 0x10(r1) + lwz r0, 0x24(r1) + mtlr r0 + addi r1, r1, 0x20 + blr + + CollisionNoChanges: stw r4, 4(r3) @@ -1276,6 +1344,32 @@ NormalGabonRockZorderDrop: blr +notRegularTeresa: + li r5, 1 + blr + +.global BooZOrderHack +BooZOrderHack: + + lhz r0, 8(r3) + cmplwi r0, 0xB0 + bne notRegularTeresa + + lfs f8, 0xB4(r30) + + lis r11, booZorderPlus@h + ori r11, r11, booZorderPlus@l + lfs f7, 0(r11) + + fadds f8, f8, f7 + + stfs f7, 0xB4(r30) + stfs f7, 0x990(r30) + stfs f7, 0x99C(r30) + + li r5, 1 + blr + .data @@ -1326,4 +1420,6 @@ ConvertFloat: Stupid: .string "Fucking Sprite was enlarged by %f times\n" .align 4 +booZorderPlus: + .float 5500.0 |