summaryrefslogtreecommitdiff
path: root/src/growup.s
diff options
context:
space:
mode:
Diffstat (limited to 'src/growup.s')
-rwxr-xr-xsrc/growup.s143
1 files changed, 143 insertions, 0 deletions
diff --git a/src/growup.s b/src/growup.s
index 724ee4c..b8d8922 100755
--- a/src/growup.s
+++ b/src/growup.s
@@ -1113,6 +1113,140 @@ LakituBomb:
+.global GlobalZOrderDeath
+GlobalZOrderDeath:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalZorder
+
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f8, 0(r11)
+ stfs f8, 0xB4(r28)
+ stfs f8, 0xC(r1)
+
+ mtlr r0
+ addi r1, r1, 0x60
+ blr
+
+NormalZorder:
+ mtlr r0
+ addi r1, r1, 0x60
+ blr
+
+
+.global PokeyZOrderDeath
+PokeyZOrderDeath:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalPokeyZorder
+
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f0, 0(r11)
+ stfs f0, 0xB4(r31)
+
+ lwz r0, 0x5D0(r31)
+ blr
+
+NormalPokeyZorder:
+ lwz r0, 0x5D0(r31)
+ blr
+
+
+.global PokeyZOrderDeathFreeze
+PokeyZOrderDeathFreeze:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalPokeyZorderFreeze
+
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f0, 0(r11)
+ stfs f0, 0xB4(r3)
+
+ lwz r0, 0x604(r3)
+ blr
+
+NormalPokeyZorderFreeze:
+ lwz r0, 0x604(r3)
+ blr
+
+
+.global PokeyZOrderDamage
+PokeyZOrderDamage:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalPokeyZorderDamage
+
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f0, 0(r11)
+ stfs f0, 0xB4(r31)
+
+ mr r3, r31
+ blr
+
+NormalPokeyZorderDamage:
+ mr r3, r31
+ blr
+
+
+.global GabonRockZOrderDeath
+GabonRockZOrderDeath:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalGabonRockZorder
+
+ stfs f0, 0xE8(r3)
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f0, 0(r11)
+ stfs f0, 0xB4(r3)
+ blr
+
+NormalGabonRockZorder:
+ stfs f0, 0xE8(r3)
+ blr
+
+
+.global GabonRockZOrderDeathDrop
+GabonRockZOrderDeathDrop:
+
+ lis r10, ZOrderOn@h
+ ori r10, r10, ZOrderOn@l
+ lbz r10, 0(r10)
+ cmpwi r10, 0
+ beq NormalGabonRockZorderDrop
+
+ mr r31, r3
+ lis r11, InFront@h
+ ori r11, r11, InFront@l
+ lfs f0, 0(r11)
+ stfs f0, 0xB4(r31)
+ blr
+
+NormalGabonRockZorderDrop:
+ mr r31, r3
+ blr
+
+
+
.data
.global GlobalSpriteSize
@@ -1133,6 +1267,12 @@ SizerOn:
.align 4
+.global ZOrderOn
+ZOrderOn:
+ .byte 0
+
+.align 4
+
LookupTable:
.float 1, 1, 1, 1, 0.25, 0.5, 0.75, 1.25, 1.5, 2, 2.5, 3, 4, 5, 8, 10
@@ -1142,6 +1282,9 @@ RiderLookupTable:
PiranhaPosF:
.float 4.0
+InFront:
+ .float 5500.0
+
ConvertFloat:
.word 0x43300000,0x0,0x43300000,0x80000000