Decompile aiSetShootingAtMeList

This commit is contained in:
Ryan Dwyer
2019-10-06 23:18:15 +10:00
parent e909f2376f
commit 0c384e6494
5 changed files with 21 additions and 32 deletions
+13 -22
View File
@@ -88067,28 +88067,19 @@ bool aiSetPunchDodgeList(void)
/**
* @cmd 01c2
*/
GLOBAL_ASM(
glabel ai01c2
/* f04df1c: 3c06800a */ lui $a2,0x800a
/* f04df20: 24c69fc0 */ addiu $a2,$a2,-24640
/* f04df24: 8cc30438 */ lw $v1,0x438($a2)
/* f04df28: 8cce0434 */ lw $t6,0x434($a2)
/* f04df2c: 8cc50424 */ lw $a1,0x424($a2)
/* f04df30: 01c31021 */ addu $v0,$t6,$v1
/* f04df34: 904f0002 */ lbu $t7,0x2($v0)
/* f04df38: 90590003 */ lbu $t9,0x3($v0)
/* f04df3c: 00001025 */ or $v0,$zero,$zero
/* f04df40: 000fc200 */ sll $t8,$t7,0x8
/* f04df44: 03192025 */ or $a0,$t8,$t9
/* f04df48: 10a00003 */ beqz $a1,.L0f04df58
/* f04df4c: 3088ffff */ andi $t0,$a0,0xffff
/* f04df50: a4a80356 */ sh $t0,0x356($a1)
/* f04df54: 8cc30438 */ lw $v1,0x438($a2)
.L0f04df58:
/* f04df58: 24690004 */ addiu $t1,$v1,0x4
/* f04df5c: 03e00008 */ jr $ra
/* f04df60: acc90438 */ sw $t1,0x438($a2)
);
bool aiSetShootingAtMeList(void)
{
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
u16 ailistid = cmd[3] | (cmd[2] << 8);
if (g_Vars.chrdata) {
g_Vars.chrdata->aishootingatmelist = ailistid;
}
g_Vars.aioffset += 4;
return false;
}
/**
* @cmd 01c3
+2 -2
View File
@@ -1707,9 +1707,9 @@
mkshort(0x01c1), \
mkshort(ailistid),
#define set_aishootingatmel(value) \
#define set_aishootingatmelist(ailistid) \
mkshort(0x01c2), \
mkshort(value),
mkshort(ailistid),
#define set_darkroom_function(function) \
mkshort(0x01c3), \
+1 -1
View File
@@ -413,7 +413,7 @@
/*0x01bf*/ bool ai01bf(void);
/*0x01c0*/ bool ai01c0(void);
/*0x01c1*/ bool aiSetPunchDodgeList(void);
/*0x01c2*/ bool ai01c2(void);
/*0x01c2*/ bool aiSetShootingAtMeList(void);
/*0x01c3*/ bool ai01c3(void);
/*0x01c4*/ bool ai01c4(void);
/*0x01c5*/ bool ai01c5(void);
+1 -1
View File
@@ -207,7 +207,7 @@ struct chrdata {
/*0x344*/ struct coord LastDropPos;
/*0x350*/ u32 unk350;
/*0x354*/ u16 aipunchdodgelist;
/*0x356*/ u16 aishootingatmel;
/*0x356*/ u16 aishootingatmelist;
/*0x358*/ u16 poisonCounter;
/*0x35a*/ u16 aidarkroomlist;
/*0x35c*/ u16 aiplayerdeadlist;
+4 -6
View File
@@ -14397,7 +14397,7 @@ bool (*command_pointers[])(void) = {
/*0x01bf*/ ai01bf,
/*0x01c0*/ ai01c0,
/*0x01c1*/ aiSetPunchDodgeList,
/*0x01c2*/ ai01c2,
/*0x01c2*/ aiSetShootingAtMeList,
/*0x01c3*/ ai01c3,
/*0x01c4*/ ai01c4,
/*0x01c5*/ ai01c5,
@@ -28530,7 +28530,7 @@ u8 func0007_alerted[] = {
// is_chr_is_dead_maybe (named wrong) was false
label(0x16)
set_onshot_function(GFUNC_ALERTED)
set_aishootingatmel(35)
set_aishootingatmelist(GFUNC_DODGE)
set_darkroom_function(GFUNC_SEARCH_FOR_PLAYER)
dprint 'S','T','A','R','T',' ','L','O','O','P','\n',0,
@@ -32540,7 +32540,7 @@ u8 func002b_do_something_and_wait[] = {
* Not used.
*/
u8 func0022_comment_on_player_dead[] = {
set_aishootingatmel(0)
set_aishootingatmelist(GFUNC_IDLE)
dprint 'K','I','L','L','\n',0,
stop_chr
@@ -32579,8 +32579,6 @@ u8 func0022_comment_on_player_dead[] = {
/**
* Do a sideways dodge, then assign GFUNC_ALERTED.
*
* Not used?
*/
u8 func0023_dodge[] = {
if_chr_dying(CHR_SELF, /*goto*/ 0x16)
@@ -32590,7 +32588,7 @@ u8 func0023_dodge[] = {
// Dying
label(0x16)
set_aishootingatmel(0)
set_aishootingatmelist(GFUNC_IDLE)
set_function(CHR_SELF, GFUNC_IDLE)
label(0x13)