From 0a3b6a9ffb630c69852d5d7dc9faab87849d6733 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Sat, 29 Feb 2020 20:18:29 +1000 Subject: [PATCH] Attempt to decompile weaponGetModel --- src/game/chr/chraicommands.c | 16 ++--- src/game/game_066310.c | 6 +- src/game/game_097ba0.c | 2 +- src/game/game_0b63b0.c | 2 +- src/game/game_11ecf0.c | 77 -------------------- src/game/game_127910.c | 124 ++++++++++++++++++++++++++++++++- src/game/game_129900.c | 20 ++++++ src/game/game_190260.c | 4 +- src/game/game_197600.c | 4 +- src/game/game_1999b0.c | 2 +- src/include/game/game_127910.h | 2 +- 11 files changed, 161 insertions(+), 98 deletions(-) diff --git a/src/game/chr/chraicommands.c b/src/game/chr/chraicommands.c index 286a3706e..dc1fe186e 100644 --- a/src/game/chr/chraicommands.c +++ b/src/game/chr/chraicommands.c @@ -10784,8 +10784,8 @@ bool aiChrSetCutsceneWeapon(void) { u8 *cmd = g_Vars.ailist + g_Vars.aioffset; struct chrdata *chr = chrFindById(g_Vars.chrdata, cmd[2]); - s32 weapon_id = func0f128af4(cmd[3]); - s32 fallback_id = func0f128af4(cmd[4]); + s32 model_id = weaponGetModel(cmd[3]); + s32 fallback_model_id = weaponGetModel(cmd[4]); if (chr) { if (cmd[3] == 0xff) { @@ -10813,20 +10813,20 @@ bool aiChrSetCutsceneWeapon(void) } } } else { - if (chr->weapons_held[0] == NULL && chr->weapons_held[1] == NULL && fallback_id >= 0) { - func0f08b8e8(chr, fallback_id, cmd[4], 0, 0, 0); + if (chr->weapons_held[0] == NULL && chr->weapons_held[1] == NULL && fallback_model_id >= 0) { + func0f08b8e8(chr, fallback_model_id, cmd[4], 0, 0, 0); } } } else { func0f08b8b8(chr, 1); func0f08b8b8(chr, 0); - if (weapon_id >= 0) { - func0f08b8e8(chr, weapon_id, cmd[3], 0, 0, 0); + if (model_id >= 0) { + func0f08b8e8(chr, model_id, cmd[3], 0, 0, 0); } - if (fallback_id >= 0) { - func0f08b8e8(chr, fallback_id, cmd[4], 0x10000000, 0, 0); + if (fallback_model_id >= 0) { + func0f08b8e8(chr, fallback_model_id, cmd[4], 0x10000000, 0, 0); } } } diff --git a/src/game/game_066310.c b/src/game/game_066310.c index a61d74240..012528c0f 100644 --- a/src/game/game_066310.c +++ b/src/game/game_066310.c @@ -43159,7 +43159,7 @@ glabel func0f08bad0 /* f08bafc: afa40020 */ sw $a0,0x20($sp) /* f08bb00: afa50024 */ sw $a1,0x24($sp) /* f08bb04: afa60028 */ sw $a2,0x28($sp) -/* f08bb08: 0fc4a2bd */ jal func0f128af4 +/* f08bb08: 0fc4a2bd */ jal weaponGetModel /* f08bb0c: 00a02025 */ or $a0,$a1,$zero /* f08bb10: 8fa40020 */ lw $a0,0x20($sp) /* f08bb14: 00402825 */ or $a1,$v0,$zero @@ -48978,7 +48978,7 @@ glabel func0f0910ac /* f091120: 3c120040 */ lui $s2,0x40 /* f091124: 24110008 */ addiu $s1,$zero,0x8 .L0f091128: -/* f091128: 0fc4a2bd */ jal func0f128af4 +/* f091128: 0fc4a2bd */ jal weaponGetModel /* f09112c: 02002025 */ or $a0,$s0,$zero /* f091130: 04420039 */ bltzl $v0,.L0f091218 /* f091134: 26100001 */ addiu $s0,$s0,0x1 @@ -49071,7 +49071,7 @@ glabel func0f091250 /* f091260: afa40030 */ sw $a0,0x30($sp) /* f091264: 8dcf00bc */ lw $t7,0xbc($t6) /* f091268: 8df80004 */ lw $t8,0x4($t7) -/* f09126c: 0fc4a2bd */ jal func0f128af4 +/* f09126c: 0fc4a2bd */ jal weaponGetModel /* f091270: afb80024 */ sw $t8,0x24($sp) /* f091274: 8fa40024 */ lw $a0,0x24($sp) /* f091278: 00402825 */ or $a1,$v0,$zero diff --git a/src/game/game_097ba0.c b/src/game/game_097ba0.c index 1c024fecc..338ec5ce8 100644 --- a/src/game/game_097ba0.c +++ b/src/game/game_097ba0.c @@ -12676,7 +12676,7 @@ glabel func0f0a2ae4 /* f0a2c70: 8fa40044 */ lw $a0,0x44($sp) /* f0a2c74: 0fc22e2e */ jal func0f08b8b8 /* f0a2c78: 24050001 */ addiu $a1,$zero,0x1 -/* f0a2c7c: 0fc4a2bd */ jal func0f128af4 +/* f0a2c7c: 0fc4a2bd */ jal weaponGetModel /* f0a2c80: 8fa40048 */ lw $a0,0x48($sp) /* f0a2c84: 0440001e */ bltz $v0,.L0f0a2d00 /* f0a2c88: 00402825 */ or $a1,$v0,$zero diff --git a/src/game/game_0b63b0.c b/src/game/game_0b63b0.c index 0447f4cb6..9468806f9 100644 --- a/src/game/game_0b63b0.c +++ b/src/game/game_0b63b0.c @@ -2943,7 +2943,7 @@ glabel func0f0b8ba0 /* f0b8c88: 8d08ddd0 */ lw $t0,-0x2230($t0) /* f0b8c8c: afa8006c */ sw $t0,0x6c($sp) .L0f0b8c90: -/* f0b8c90: 0fc4a2bd */ jal func0f128af4 +/* f0b8c90: 0fc4a2bd */ jal weaponGetModel /* f0b8c94: 8fa4006c */ lw $a0,0x6c($sp) /* f0b8c98: 3c038009 */ lui $v1,0x8009 /* f0b8c9c: 90630af0 */ lbu $v1,0xaf0($v1) diff --git a/src/game/game_11ecf0.c b/src/game/game_11ecf0.c index a64542501..7c605668d 100644 --- a/src/game/game_11ecf0.c +++ b/src/game/game_11ecf0.c @@ -100,83 +100,6 @@ const u32 var7f1b5140[] = {0x3eaaaaab}; const u32 var7f1b5144[] = {0x00000000}; const u32 var7f1b5148[] = {0x00000000}; const u32 var7f1b514c[] = {0x00000000}; -const u32 var7f1b5150[] = {0xc3653838}; -const u32 var7f1b5154[] = {0x4164924b}; -const u32 var7f1b5158[] = {0x3f6e147b}; -const u32 var7f1b515c[] = {0x3f666666}; -const u32 var7f1b5160[] = {0xc0490fdb}; -const u32 var7f1b5164[] = {0x3faaaaab}; -const u32 var7f1b5168[] = {0x7f128b54}; -const u32 var7f1b516c[] = {0x7f128b54}; -const u32 var7f1b5170[] = {0x7f128b5c}; -const u32 var7f1b5174[] = {0x7f128b8c}; -const u32 var7f1b5178[] = {0x7f128b94}; -const u32 var7f1b517c[] = {0x7f128b64}; -const u32 var7f1b5180[] = {0x7f128b6c}; -const u32 var7f1b5184[] = {0x7f128b84}; -const u32 var7f1b5188[] = {0x7f128b74}; -const u32 var7f1b518c[] = {0x7f128b7c}; -const u32 var7f1b5190[] = {0x7f128b9c}; -const u32 var7f1b5194[] = {0x7f128bc4}; -const u32 var7f1b5198[] = {0x7f128bcc}; -const u32 var7f1b519c[] = {0x7f128bd4}; -const u32 var7f1b51a0[] = {0x7f128bdc}; -const u32 var7f1b51a4[] = {0x7f128bac}; -const u32 var7f1b51a8[] = {0x7f128bbc}; -const u32 var7f1b51ac[] = {0x7f128ba4}; -const u32 var7f1b51b0[] = {0x7f128bb4}; -const u32 var7f1b51b4[] = {0x7f128be4}; -const u32 var7f1b51b8[] = {0x7f128bec}; -const u32 var7f1b51bc[] = {0x7f128c14}; -const u32 var7f1b51c0[] = {0x7f128c0c}; -const u32 var7f1b51c4[] = {0x7f128bfc}; -const u32 var7f1b51c8[] = {0x7f128bf4}; -const u32 var7f1b51cc[] = {0x7f128c04}; -const u32 var7f1b51d0[] = {0x7f128c2c}; -const u32 var7f1b51d4[] = {0x7f128c1c}; -const u32 var7f1b51d8[] = {0x7f128c34}; -const u32 var7f1b51dc[] = {0x7f128c24}; -const u32 var7f1b51e0[] = {0x7f128c4c}; -const u32 var7f1b51e4[] = {0x7f128c44}; -const u32 var7f1b51e8[] = {0x7f128c64}; -const u32 var7f1b51ec[] = {0x7f128c5c}; -const u32 var7f1b51f0[] = {0x7f128c54}; -const u32 var7f1b51f4[] = {0x7f128cbc}; -const u32 var7f1b51f8[] = {0x7f128c7c}; -const u32 var7f1b51fc[] = {0x7f128c84}; -const u32 var7f1b5200[] = {0x7f128c8c}; -const u32 var7f1b5204[] = {0x7f128c94}; -const u32 var7f1b5208[] = {0x7f128c9c}; -const u32 var7f1b520c[] = {0x7f128ca4}; -const u32 var7f1b5210[] = {0x7f128cac}; -const u32 var7f1b5214[] = {0x7f128cb4}; -const u32 var7f1b5218[] = {0x7f128c3c}; -const u32 var7f1b521c[] = {0x7f128cd4}; -const u32 var7f1b5220[] = {0x7f128cd4}; -const u32 var7f1b5224[] = {0x7f128cd4}; -const u32 var7f1b5228[] = {0x7f128cd4}; -const u32 var7f1b522c[] = {0x7f128c74}; - -const char var7f1b5230[] = "VTXSTORE : vtxfixrefs -> Start - p1=%x, p2=%x\n"; -const char var7f1b5260[] = "vtxfixrefs : Part=%x -- Mapping ptr %x -> %x\n"; -const char var7f1b5290[] = "VTXSTORE : vtxfixrefs -> End - Done=%d\n"; -const char var7f1b52b8[] = "vtxstorecheck : memaFree -> %u bytes at Ptr=%x(%x)\n"; -const char var7f1b52ec[] = "vtxstorecheck : At block 1 %d -> Ref1=%x, Ref2=%x\n"; -const char var7f1b5320[] = "vtxstorecheck : At block 2 %d -> Ref1=%x, Ref2=%x\n"; -const char var7f1b5354[] = "vtx buffer low, need to delete objects\n"; -const char var7f1b537c[] = "getfreevertices : %d of type %d -> ref1=%x, ref2=%x\n"; -const char var7f1b53b4[] = "vtxstore: 1st mema alloc of %u bytes\n"; -const char var7f1b53dc[] = "getfreevertices : Return ptr = %x\n"; -const char var7f1b5400[] = "vtxstore: Out of mema (returning NULL)\n"; -const char var7f1b5428[] = "vtxstore: GROSS! CorspeCount > MAX_CORPSES corpses! Freeing corpse %x\n"; -const char var7f1b5470[] = "vtxstore: CorpseCount %d, Trying to free %d\n"; -const char var7f1b54a0[] = "vtxstore: Freeing corpse %x\n"; -const char var7f1b54c0[] = "vtxstore: Out of vertices type %d wanted %d free %d (returning NULL)\n"; -const char var7f1b5508[] = "vtxstore: freevertices type %d, list %x\n"; -const char var7f1b5534[] = "freevertices: address not found in array %x\n"; -const char var7f1b5564[] = ""; -const char var7f1b5568[] = ""; -const char var7f1b556c[] = ""; GLOBAL_ASM( glabel func0f11ecf0 diff --git a/src/game/game_127910.c b/src/game/game_127910.c index d1b123eab..c31d25764 100644 --- a/src/game/game_127910.c +++ b/src/game/game_127910.c @@ -14,6 +14,65 @@ #include "lib/lib_12dc0.h" #include "types.h" +const u32 var7f1b5150[] = {0xc3653838}; +const u32 var7f1b5154[] = {0x4164924b}; +const u32 var7f1b5158[] = {0x3f6e147b}; +const u32 var7f1b515c[] = {0x3f666666}; +const u32 var7f1b5160[] = {0xc0490fdb}; +const u32 var7f1b5164[] = {0x3faaaaab}; + +// weaponGetModel +const u32 var7f1b5168[] = {0x7f128b54}; +const u32 var7f1b516c[] = {0x7f128b54}; +const u32 var7f1b5170[] = {0x7f128b5c}; +const u32 var7f1b5174[] = {0x7f128b8c}; +const u32 var7f1b5178[] = {0x7f128b94}; +const u32 var7f1b517c[] = {0x7f128b64}; +const u32 var7f1b5180[] = {0x7f128b6c}; +const u32 var7f1b5184[] = {0x7f128b84}; +const u32 var7f1b5188[] = {0x7f128b74}; +const u32 var7f1b518c[] = {0x7f128b7c}; +const u32 var7f1b5190[] = {0x7f128b9c}; +const u32 var7f1b5194[] = {0x7f128bc4}; +const u32 var7f1b5198[] = {0x7f128bcc}; +const u32 var7f1b519c[] = {0x7f128bd4}; +const u32 var7f1b51a0[] = {0x7f128bdc}; +const u32 var7f1b51a4[] = {0x7f128bac}; +const u32 var7f1b51a8[] = {0x7f128bbc}; +const u32 var7f1b51ac[] = {0x7f128ba4}; +const u32 var7f1b51b0[] = {0x7f128bb4}; +const u32 var7f1b51b4[] = {0x7f128be4}; +const u32 var7f1b51b8[] = {0x7f128bec}; +const u32 var7f1b51bc[] = {0x7f128c14}; +const u32 var7f1b51c0[] = {0x7f128c0c}; +const u32 var7f1b51c4[] = {0x7f128bfc}; +const u32 var7f1b51c8[] = {0x7f128bf4}; +const u32 var7f1b51cc[] = {0x7f128c04}; +const u32 var7f1b51d0[] = {0x7f128c2c}; +const u32 var7f1b51d4[] = {0x7f128c1c}; +const u32 var7f1b51d8[] = {0x7f128c34}; +const u32 var7f1b51dc[] = {0x7f128c24}; +const u32 var7f1b51e0[] = {0x7f128c4c}; +const u32 var7f1b51e4[] = {0x7f128c44}; +const u32 var7f1b51e8[] = {0x7f128c64}; +const u32 var7f1b51ec[] = {0x7f128c5c}; +const u32 var7f1b51f0[] = {0x7f128c54}; +const u32 var7f1b51f4[] = {0x7f128cbc}; +const u32 var7f1b51f8[] = {0x7f128c7c}; +const u32 var7f1b51fc[] = {0x7f128c84}; +const u32 var7f1b5200[] = {0x7f128c8c}; +const u32 var7f1b5204[] = {0x7f128c94}; +const u32 var7f1b5208[] = {0x7f128c9c}; +const u32 var7f1b520c[] = {0x7f128ca4}; +const u32 var7f1b5210[] = {0x7f128cac}; +const u32 var7f1b5214[] = {0x7f128cb4}; +const u32 var7f1b5218[] = {0x7f128c3c}; +const u32 var7f1b521c[] = {0x7f128cd4}; +const u32 var7f1b5220[] = {0x7f128cd4}; +const u32 var7f1b5224[] = {0x7f128cd4}; +const u32 var7f1b5228[] = {0x7f128cd4}; +const u32 var7f1b522c[] = {0x7f128c74}; + void func0f127910(void) { s32 i; @@ -1145,7 +1204,7 @@ void currentPlayerSetAspectRatio(f32 aspect) } GLOBAL_ASM( -glabel func0f128af4 +glabel weaponGetModel /* f128af4: 28810052 */ slti $at,$a0,0x52 /* f128af8: 14200007 */ bnez $at,.L0f128b18 /* f128afc: 24010052 */ addiu $at,$zero,0x52 @@ -1283,6 +1342,67 @@ glabel func0f128af4 /* f128cec: 00601025 */ or $v0,$v1,$zero ); +//s32 weaponGetModel(s32 weapon) +//{ +// switch (weapon) { +// case WEAPON_NONE: +// case WEAPON_UNARMED: return -1; +// case WEAPON_FALCON2: return MODEL_CHRFALCON2; +// case WEAPON_MAGSEC4: return MODEL_CHRLEEGUN1; +// case WEAPON_MAULER: return MODEL_CHRMAULER; +// case WEAPON_DY357MAGNUM: return MODEL_CHRDY357; +// case WEAPON_DY357LX: return MODEL_CHRDY357TRENT; +// case WEAPON_PHOENIX: return MODEL_CHRMAIANPISTOL; +// case WEAPON_FALCON2_SILENCER: return MODEL_CHRFALCON2SIL; +// case WEAPON_FALCON2_SCOPE: return MODEL_CHRFALCON2SCOPE; +// case WEAPON_CMP150: return MODEL_CHRCMP150; +// case WEAPON_AR34: return MODEL_CHRAR34; +// case WEAPON_DRAGON: return MODEL_CHRDRAGON; +// case WEAPON_SUPERDRAGON: return MODEL_CHRSUPERDRAGON; +// case WEAPON_K7AVENGER: return MODEL_CHRAVENGER; +// case WEAPON_CYCLONE: return MODEL_CHRCYCLONE; +// case WEAPON_CALLISTONTG: return MODEL_CHRMAIANSMG; +// case WEAPON_RCP120: return MODEL_CHRRCP120; +// case WEAPON_LAPTOPGUN: return MODEL_CHRPCGUN; +// case WEAPON_SHOTGUN: return MODEL_CHRSHOTGUN; +// case WEAPON_REAPER: return MODEL_CHRSKMINIGUN; +// case WEAPON_ROCKETLAUNCHER: return MODEL_CHRDYROCKET; +// case WEAPON_DEVASTATOR: return MODEL_CHRDEVASTATOR; +// case WEAPON_SLAYER: return MODEL_CHRSKROCKET; +// case WEAPON_FARSIGHTXR20: return MODEL_CHRZ2020; +// case WEAPON_SNIPERRIFLE: return MODEL_CHRSNIPERRIFLE; +// case WEAPON_CROSSBOW: return MODEL_CHRCROSSBOW; +// case WEAPON_LASER: return MODEL_CHRLASER; +// case WEAPON_COMBATKNIFE: return MODEL_CHRKNIFE; +// case WEAPON_TRANQUILIZER: return MODEL_CHRDRUGGUN; +// case WEAPON_PSYCHOSISGUN: return MODEL_CHRDRUGGUN; +// case WEAPON_NBOMB: return MODEL_CHRNBOMB; +// case WEAPON_GRENADE: return MODEL_CHRGRENADE; +// case WEAPON_REMOTEMINE: return MODEL_CHRREMOTEMINE; +// case WEAPON_PROXIMITYMINE: return MODEL_CHRPROXIMITYMINE; +// case WEAPON_TIMEDMINE: return MODEL_CHRTIMEDMINE; +// case WEAPON_BRIEFCASE2: return MODEL_CHRBRIEFCASE; +// case WEAPON_CLOAKINGDEVICE: return MODEL_CHRCLOAKER; +// case WEAPON_PP9I: return MODEL_CHRWPPK; +// case WEAPON_CC13: return MODEL_CHRTT33; +// case WEAPON_KL01313: return MODEL_CHRSKORPION; +// case WEAPON_KF7SPECIAL: return MODEL_CHRKALASH; +// case WEAPON_ZZT: return MODEL_CHRUZI; +// case WEAPON_DMC: return MODEL_CHRMP5K; +// case WEAPON_AR53: return MODEL_CHRM16; +// case WEAPON_RCP45: return MODEL_CHRFNP90; +// case WEAPON_COMBATBOOST: return -1; +// case WEAPON_HAMMER: return MODEL_CHRLUMPHAMMER; +// case WEAPON_52: return MODEL_CHRSONICSCREWER; +// } +// +// if (weapon <= WEAPON_PSYCHOSISGUN) { +// return MODEL_CHRSNIPERRIFLE; +// } +// +// return -1; +//} + GLOBAL_ASM( glabel func0f128cf0 /* f128cf0: 3c0e800a */ lui $t6,0x800a @@ -1316,7 +1436,7 @@ glabel func0f128d20 /* f128d50: 0fc2866a */ jal getCurrentPlayerWeaponId /* f128d54: afa30024 */ sw $v1,0x24($sp) /* f128d58: 00402025 */ or $a0,$v0,$zero -/* f128d5c: 0fc4a2bd */ jal func0f128af4 +/* f128d5c: 0fc4a2bd */ jal weaponGetModel /* f128d60: afa20030 */ sw $v0,0x30($sp) /* f128d64: 8fa30024 */ lw $v1,0x24($sp) /* f128d68: 24010004 */ addiu $at,$zero,0x4 diff --git a/src/game/game_129900.c b/src/game/game_129900.c index a055b3e14..238cc3c9b 100644 --- a/src/game/game_129900.c +++ b/src/game/game_129900.c @@ -29,6 +29,26 @@ #include "lib/lib_4b480.h" #include "types.h" +const char var7f1b5230[] = "VTXSTORE : vtxfixrefs -> Start - p1=%x, p2=%x\n"; +const char var7f1b5260[] = "vtxfixrefs : Part=%x -- Mapping ptr %x -> %x\n"; +const char var7f1b5290[] = "VTXSTORE : vtxfixrefs -> End - Done=%d\n"; +const char var7f1b52b8[] = "vtxstorecheck : memaFree -> %u bytes at Ptr=%x(%x)\n"; +const char var7f1b52ec[] = "vtxstorecheck : At block 1 %d -> Ref1=%x, Ref2=%x\n"; +const char var7f1b5320[] = "vtxstorecheck : At block 2 %d -> Ref1=%x, Ref2=%x\n"; +const char var7f1b5354[] = "vtx buffer low, need to delete objects\n"; +const char var7f1b537c[] = "getfreevertices : %d of type %d -> ref1=%x, ref2=%x\n"; +const char var7f1b53b4[] = "vtxstore: 1st mema alloc of %u bytes\n"; +const char var7f1b53dc[] = "getfreevertices : Return ptr = %x\n"; +const char var7f1b5400[] = "vtxstore: Out of mema (returning NULL)\n"; +const char var7f1b5428[] = "vtxstore: GROSS! CorspeCount > MAX_CORPSES corpses! Freeing corpse %x\n"; +const char var7f1b5470[] = "vtxstore: CorpseCount %d, Trying to free %d\n"; +const char var7f1b54a0[] = "vtxstore: Freeing corpse %x\n"; +const char var7f1b54c0[] = "vtxstore: Out of vertices type %d wanted %d free %d (returning NULL)\n"; +const char var7f1b5508[] = "vtxstore: freevertices type %d, list %x\n"; +const char var7f1b5534[] = "freevertices: address not found in array %x\n"; +const char var7f1b5564[] = ""; +const char var7f1b5568[] = ""; +const char var7f1b556c[] = ""; const char var7f1b5570[] = "ecol"; const u32 var7f1b5578[] = {0x44bb8000}; diff --git a/src/game/game_190260.c b/src/game/game_190260.c index af6515856..f7a5e1311 100644 --- a/src/game/game_190260.c +++ b/src/game/game_190260.c @@ -2528,7 +2528,7 @@ glabel func0f192628 .L0f1926a0: /* f1926a0: 8e1902d4 */ lw $t9,0x2d4($s0) /* f1926a4: 8f240020 */ lw $a0,0x20($t9) -/* f1926a8: 0fc4a2bd */ jal func0f128af4 +/* f1926a8: 0fc4a2bd */ jal weaponGetModel /* f1926ac: afa7002c */ sw $a3,0x2c($sp) /* f1926b0: 8fa7002c */ lw $a3,0x2c($sp) /* f1926b4: 04400009 */ bltz $v0,.L0f1926dc @@ -5060,7 +5060,7 @@ glabel func0f194b40 /* f194d28: 0fc65f3c */ jal func0f197cf0 /* f194d2c: 8e450020 */ lw $a1,0x20($s2) /* f194d30: 00408025 */ or $s0,$v0,$zero -/* f194d34: 0fc4a2bd */ jal func0f128af4 +/* f194d34: 0fc4a2bd */ jal weaponGetModel /* f194d38: 8e440020 */ lw $a0,0x20($s2) /* f194d3c: 12000019 */ beqz $s0,.L0f194da4 /* f194d40: 00408825 */ or $s1,$v0,$zero diff --git a/src/game/game_197600.c b/src/game/game_197600.c index 042bf8ea3..d818b1e88 100644 --- a/src/game/game_197600.c +++ b/src/game/game_197600.c @@ -2417,7 +2417,7 @@ glabel func0f1994b0 .L0f199698: /* f199698: 55c00018 */ bnezl $t6,.L0f1996fc /* f19969c: 8fa40064 */ lw $a0,0x64($sp) -/* f1996a0: 0fc4a2bd */ jal func0f128af4 +/* f1996a0: 0fc4a2bd */ jal weaponGetModel /* f1996a4: 8fa40064 */ lw $a0,0x64($sp) /* f1996a8: 04400013 */ bltz $v0,.L0f1996f8 /* f1996ac: 00402825 */ or $a1,$v0,$zero @@ -2547,7 +2547,7 @@ glabel func0f19978c /* f199864: 5501001b */ bnel $t0,$at,.L0f1998d4 /* f199868: 8e6402d4 */ lw $a0,0x2d4($s3) .L0f19986c: -/* f19986c: 0fc4a2bd */ jal func0f128af4 +/* f19986c: 0fc4a2bd */ jal weaponGetModel /* f199870: 86240004 */ lh $a0,0x4($s1) /* f199874: 18400016 */ blez $v0,.L0f1998d0 /* f199878: 00402825 */ or $a1,$v0,$zero diff --git a/src/game/game_1999b0.c b/src/game/game_1999b0.c index 796660e2e..e068383fe 100644 --- a/src/game/game_1999b0.c +++ b/src/game/game_1999b0.c @@ -737,7 +737,7 @@ glabel func0f199f84 /* f19a278: 27bd00c8 */ addiu $sp,$sp,0xc8 /* f19a27c: 27bdffe8 */ addiu $sp,$sp,-24 /* f19a280: afbf0014 */ sw $ra,0x14($sp) -/* f19a284: 0fc4a2bd */ jal func0f128af4 +/* f19a284: 0fc4a2bd */ jal weaponGetModel /* f19a288: 00000000 */ sll $zero,$zero,0x0 /* f19a28c: 8fbf0014 */ lw $ra,0x14($sp) /* f19a290: 27bd0018 */ addiu $sp,$sp,0x18 diff --git a/src/include/game/game_127910.h b/src/include/game/game_127910.h index 7f4378adc..459d60411 100644 --- a/src/include/game/game_127910.h +++ b/src/include/game/game_127910.h @@ -13,7 +13,7 @@ void func0f128a9c(u32 arg0, u32 arg1); void func0f128ab8(u32 arg0, u32 arg1); void currentPlayerSetFovY(f32 fovy); void currentPlayerSetAspectRatio(f32 aspect); -s32 func0f128af4(s32 arg0); +s32 weaponGetModel(s32 arg0); u32 func0f128cf0(void); u32 func0f128d20(void); u32 func0f128dbc(void);