Decompile aiSetObjFlag3

This commit is contained in:
Ryan Dwyer 2019-10-22 19:11:18 +10:00
parent 2a93169586
commit 121eba3786
3 changed files with 16 additions and 44 deletions

View File

@ -6311,48 +6311,20 @@ glabel ai00af
/**
* @cmd 0118
*/
GLOBAL_ASM(
glabel ai0118
/* f054ae0: 3c03800a */ lui $v1,0x800a
/* f054ae4: 24639fc0 */ addiu $v1,$v1,-24640
/* f054ae8: 8c6e0434 */ lw $t6,0x434($v1)
/* f054aec: 8c6f0438 */ lw $t7,0x438($v1)
/* f054af0: 27bdffe0 */ addiu $sp,$sp,-32
/* f054af4: afbf0014 */ sw $ra,0x14($sp)
/* f054af8: 01cf1021 */ addu $v0,$t6,$t7
/* f054afc: 90580003 */ lbu $t8,0x3($v0)
/* f054b00: 90480004 */ lbu $t0,0x4($v0)
/* f054b04: 904b0005 */ lbu $t3,0x5($v0)
/* f054b08: 904e0006 */ lbu $t6,0x6($v0)
/* f054b0c: 0018ce00 */ sll $t9,$t8,0x18
/* f054b10: 00084c00 */ sll $t1,$t0,0x10
/* f054b14: 03295025 */ or $t2,$t9,$t1
/* f054b18: 000b6200 */ sll $t4,$t3,0x8
/* f054b1c: 014c6825 */ or $t5,$t2,$t4
/* f054b20: 01ae7825 */ or $t7,$t5,$t6
/* f054b24: afaf0018 */ sw $t7,0x18($sp)
/* f054b28: 0fc2556c */ jal objFindByTagId
/* f054b2c: 90440002 */ lbu $a0,0x2($v0)
/* f054b30: 3c03800a */ lui $v1,0x800a
/* f054b34: 10400008 */ beqz $v0,.L0f054b58
/* f054b38: 24639fc0 */ addiu $v1,$v1,-24640
/* f054b3c: 8c580014 */ lw $t8,0x14($v0)
/* f054b40: 8fb90018 */ lw $t9,0x18($sp)
/* f054b44: 53000005 */ beqzl $t8,.L0f054b5c
/* f054b48: 8c6b0438 */ lw $t3,0x438($v1)
/* f054b4c: 8c480010 */ lw $t0,0x10($v0)
/* f054b50: 01194825 */ or $t1,$t0,$t9
/* f054b54: ac490010 */ sw $t1,0x10($v0)
.L0f054b58:
/* f054b58: 8c6b0438 */ lw $t3,0x438($v1)
.L0f054b5c:
/* f054b5c: 8fbf0014 */ lw $ra,0x14($sp)
/* f054b60: 27bd0020 */ addiu $sp,$sp,0x20
/* f054b64: 256a0007 */ addiu $t2,$t3,0x7
/* f054b68: ac6a0438 */ sw $t2,0x438($v1)
/* f054b6c: 03e00008 */ jr $ra
/* f054b70: 00001025 */ or $v0,$zero,$zero
);
bool aiSetObjFlag3(void)
{
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
u32 flags = (cmd[4] << 16) | (cmd[5] << 8) | cmd[6] | (cmd[3] << 24);
struct defaultobj *obj = objFindByTagId(cmd[2]);
if (obj && obj->pos) {
obj->flags3 |= flags;
}
g_Vars.aioffset += 7;
return false;
}
/**
* @cmd 0119

View File

@ -280,7 +280,7 @@
/*0x0115*/ bool aiHideChr(void);
/*0x0116*/ bool aiShowObj(void);
/*0x0117*/ bool aiHideObj(void);
/*0x0118*/ bool ai0118(void);
/*0x0118*/ bool aiSetObjFlag3(void);
/*0x0119*/ bool ai0119(void);
/*0x011a*/ bool ai011a(void);
/*0x011b*/ bool aiChrSetHiddenFlag(void);

View File

@ -14233,7 +14233,7 @@ bool (*command_pointers[])(void) = {
/*0x0115*/ aiHideChr,
/*0x0116*/ aiShowObj,
/*0x0117*/ aiHideObj,
/*0x0118*/ ai0118,
/*0x0118*/ aiSetObjFlag3,
/*0x0119*/ ai0119,
/*0x011a*/ ai011a,
/*0x011b*/ aiChrSetHiddenFlag,