From 9f7600d1344120f68bd9cc180e37c777a1b238e9 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sun, 28 Jun 2020 19:34:33 +1000 Subject: [PATCH] Decompile func0f06f504 --- src/game/propobj.c | 31 +++++++++---------------------- src/include/constants.h | 1 + src/include/game/propobj.h | 2 +- 3 files changed, 11 insertions(+), 23 deletions(-) diff --git a/src/game/propobj.c b/src/game/propobj.c index f3ea001d5..924e58153 100644 --- a/src/game/propobj.c +++ b/src/game/propobj.c @@ -10901,28 +10901,15 @@ glabel func0f06f314 /* f06f500: 00601025 */ or $v0,$v1,$zero ); -GLOBAL_ASM( -glabel func0f06f504 -/* f06f504: 27bdffe0 */ addiu $sp,$sp,-32 -/* f06f508: afbf0014 */ sw $ra,0x14($sp) -/* f06f50c: 8c820004 */ lw $v0,0x4($a0) -/* f06f510: 2405000c */ addiu $a1,$zero,0xc -/* f06f514: 8c4e0008 */ lw $t6,0x8($v0) -/* f06f518: 000e78c0 */ sll $t7,$t6,0x3 -/* f06f51c: 05e30008 */ bgezl $t7,.L0f06f540 -/* f06f520: 8fbf0014 */ lw $ra,0x14($sp) -/* f06f524: 0fc1bcc5 */ jal func0f06f314 -/* f06f528: afa2001c */ sw $v0,0x1c($sp) -/* f06f52c: 8fa2001c */ lw $v0,0x1c($sp) -/* f06f530: 8c580040 */ lw $t8,0x40($v0) -/* f06f534: 37190004 */ ori $t9,$t8,0x4 -/* f06f538: ac590040 */ sw $t9,0x40($v0) -/* f06f53c: 8fbf0014 */ lw $ra,0x14($sp) -.L0f06f540: -/* f06f540: 27bd0020 */ addiu $sp,$sp,0x20 -/* f06f544: 03e00008 */ jr $ra -/* f06f548: 00000000 */ nop -); +void func0f06f504(struct prop *prop) +{ + struct defaultobj *obj = prop->obj; + + if (obj->flags & OBJFLAG_DEACTIVATED) { + func0f06f314(prop, EXPLOSIONTYPE_12); + obj->hidden |= OBJHFLAG_00000004; + } +} GLOBAL_ASM( glabel func0f06f54c diff --git a/src/include/constants.h b/src/include/constants.h index 526c952a5..2a9670427 100644 --- a/src/include/constants.h +++ b/src/include/constants.h @@ -557,6 +557,7 @@ #define EXPLOSIONTYPE_0 0 #define EXPLOSIONTYPE_3 3 #define EXPLOSIONTYPE_8 8 +#define EXPLOSIONTYPE_12 12 #define EXPLOSIONTYPE_14 14 #define EXPLOSIONTYPE_25 25 diff --git a/src/include/game/propobj.h b/src/include/game/propobj.h index b05440204..20716cc84 100644 --- a/src/include/game/propobj.h +++ b/src/include/game/propobj.h @@ -115,7 +115,7 @@ u32 func0f06ec20(void); u32 func0f06ed64(void); u32 func0f06ef44(void); u32 func0f06f0a0(void); -u32 func0f06f314(void); +void func0f06f314(struct prop *prop, u32 explosiontype); void func0f06f504(struct prop *ammocrate); void func0f06f54c(struct prop *weapon); void func0f07063c(struct prop *prop, bool arg1);