Decompile abmagReset

This commit is contained in:
Ryan Dwyer 2021-03-04 23:28:53 +10:00
parent 2f2d7689b1
commit cd076e7de2
3 changed files with 39 additions and 34 deletions

View File

@ -11645,7 +11645,7 @@ void func0f0a1528(void)
player->hands[i].matmot2 = 0.0f;
player->hands[i].matmot3 = 0.0f;
player->hands[i].angledamper = 0.0f;
player->hands[i].unk0db8 = 0.0f;
player->hands[i].gunsmokepoint = 0.0f;
player->hands[i].unk0b90 = 0;
player->hands[i].unk0888 = 0.0f;
player->hands[i].allowshootframe = 0;
@ -20620,14 +20620,13 @@ glabel func0f0a9d2c
/* f0a9d90: 00000000 */ nop
);
GLOBAL_ASM(
glabel func0f0a9d94
/* f0a9d94: a4800000 */ sh $zero,0x0($a0)
/* f0a9d98: a0800005 */ sb $zero,0x5($a0)
/* f0a9d9c: a0800004 */ sb $zero,0x4($a0)
/* f0a9da0: 03e00008 */ jr $ra
/* f0a9da4: a4800002 */ sh $zero,0x2($a0)
);
void abmagReset(struct abmag *abmag)
{
abmag->unk00 = 0;
abmag->unk05 = 0;
abmag->unk04 = 0;
abmag->unk02 = 0;
}
GLOBAL_ASM(
glabel func0f0a9da8
@ -22129,13 +22128,13 @@ glabel hudRenderAmmo
/* f0ab344: 8fa4012c */ lw $a0,0x12c($sp)
/* f0ab348: 132f000d */ beq $t9,$t7,.L0f0ab380
/* f0ab34c: 24841568 */ addiu $a0,$a0,0x1568
/* f0ab350: 0fc2a765 */ jal func0f0a9d94
/* f0ab350: 0fc2a765 */ jal abmagReset
/* f0ab354: afaa0058 */ sw $t2,0x58($sp)
/* f0ab358: 8fa4005c */ lw $a0,0x5c($sp)
/* f0ab35c: 0fc2a765 */ jal func0f0a9d94
/* f0ab35c: 0fc2a765 */ jal abmagReset
/* f0ab360: 2484078c */ addiu $a0,$a0,0x78c
/* f0ab364: 8faa0058 */ lw $t2,0x58($sp)
/* f0ab368: 0fc2a765 */ jal func0f0a9d94
/* f0ab368: 0fc2a765 */ jal abmagReset
/* f0ab36c: 2544005c */ addiu $a0,$t2,0x5c
/* f0ab370: 8faa0058 */ lw $t2,0x58($sp)
/* f0ab374: 8fae0110 */ lw $t6,0x110($sp)
@ -22758,10 +22757,10 @@ void func0f0abd30(s32 handnum)
hand->unk08c0 = 1;
if (gunctrl->ammotypes[0] >= 0) {
func0f0a9d94(&hand->unk0dc4);
abmagReset(&hand->abmag);
if (handnum == HAND_RIGHT) {
func0f0a9d94(&gunctrl->unk15dc);
abmagReset(&gunctrl->abmag);
}
gunctrl->unk15e9 = 0;

View File

@ -164,7 +164,7 @@ void currentPlayerGiveAmmoForWeapon(u32 weaponnum, u32 func, u32 quantity);
u32 func0f0a9b10(void);
u32 func0f0a9b68(void);
u32 func0f0a9d2c(void);
void func0f0a9d94(u32 *arg0);
void abmagReset(struct abmag *abmag);
u32 func0f0a9da8(void);
u32 func0f0a9fc0(void);
Gfx *hudRenderAmmo(Gfx *gdl);

View File

@ -1719,6 +1719,14 @@ struct beam {
/*0x28*/ f32 dist;
};
struct abmag {
u16 unk00;
u16 unk02;
u8 unk04;
u8 unk05;
u16 alignment;
};
// The first 4 bytes of the hand struct
struct shorthand {
u8 weaponnum;
@ -2081,23 +2089,22 @@ struct hand {
/*0x0d7c*/ u32 unk0d7c;
/*0x0d80*/ struct remoteminething *unk0d80;
/*0x0d84*/ struct audiohandle *audiohandle;
/*0x0d88*/ u32 unk0d88;
/*0x0d8c*/ u32 unk0d8c;
/*0x0d90*/ u32 unk0d90;
/*0x0d94*/ u32 unk0d94;
/*0x0d98*/ u32 unk0d98;
/*0x0d9c*/ u32 unk0d9c;
/*0x0da0*/ u32 unk0da0;
/*0x0da4*/ u32 unk0da4;
/*0x0da8*/ u32 unk0da8;
/*0x0dac*/ u32 unk0dac;
/*0x0db0*/ u32 unk0db0;
/*0x0db4*/ u32 unk0db4;
/*0x0db8*/ f32 unk0db8;
/*0x0dbc*/ u32 unk0dbc;
/*0x0dc0*/ u32 unk0dc0;
/*0x0dc4*/ u32 unk0dc4;
/*0x0dc8*/ u32 unk0dc8;
/*0x0d88*/ u32 ispare4;
/*0x0d8c*/ u32 ispare5;
/*0x0d90*/ u32 ispare6;
/*0x0d94*/ u32 ispare7;
/*0x0d98*/ u32 ispare8;
/*0x0d9c*/ u32 ispare9;
/*0x0da0*/ u32 ispare10;
/*0x0da4*/ f32 fspare1;
/*0x0da8*/ f32 fspare2;
/*0x0dac*/ f32 fspare3;
/*0x0db0*/ f32 fspare4;
/*0x0db4*/ f32 fspare5;
/*0x0db8*/ f32 gunsmokepoint;
/*0x0dbc*/ u32 fspare7;
/*0x0dc0*/ u32 fspare8;
/*0x0dc4*/ struct abmag abmag;
/*0x0dcc*/ u32 unk0dcc;
/*0x0dd0*/ u32 unk0dd0;
/*0x0dd4*/ u32 unk0dd4;
@ -2150,8 +2157,7 @@ struct gunctrl {
/*0x15d0*/ u32 unk15d0;
/*0x15d4*/ u32 unk15d4;
/*0x15d8*/ u32 unk15d8;
/*0x15dc*/ u32 unk15dc;
/*0x15e0*/ u32 unk15e0;
/*0x15dc*/ struct abmag abmag;
/*0x15e4*/ s8 ammotypes[2];
/*0x15e6*/ u8 unk15e6;
/*0x15e7*/ u8 unk15e7;