mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-09-13 04:25:18 -04:00
Identify chrGoToPos, chrGoToProp, chrGoToCover and rename cmd0124 to go_to_cover
This commit is contained in:
+17
-17
@@ -28671,7 +28671,7 @@ glabel func0f037224
|
||||
/* f0372bc: 10000007 */ beqz $zero,.L0f0372dc
|
||||
/* f0372c0: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
.L0f0372c4:
|
||||
/* f0372c4: 0fc0e10f */ jal func0f03843c
|
||||
/* f0372c4: 0fc0e10f */ jal chrGoToPos
|
||||
/* f0372c8: 90870065 */ lbu $a3,0x65($a0)
|
||||
/* f0372cc: 10000003 */ beqz $zero,.L0f0372dc
|
||||
/* f0372d0: 8fbf0014 */ lw $ra,0x14($sp)
|
||||
@@ -29935,7 +29935,7 @@ glabel func0f037b70
|
||||
);
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f03843c
|
||||
glabel chrGoToPos
|
||||
/* f03843c: 27bdff70 */ addiu $sp,$sp,-144
|
||||
/* f038440: afbf001c */ sw $ra,0x1c($sp)
|
||||
/* f038444: afb00018 */ sw $s0,0x18($sp)
|
||||
@@ -30678,7 +30678,7 @@ glabel func0f038b9c
|
||||
/* f038ef8: 02602025 */ or $a0,$s3,$zero
|
||||
/* f038efc: 27a500a8 */ addiu $a1,$sp,0xa8
|
||||
/* f038f00: 27a60060 */ addiu $a2,$sp,0x60
|
||||
/* f038f04: 0fc0e10f */ jal func0f03843c
|
||||
/* f038f04: 0fc0e10f */ jal chrGoToPos
|
||||
/* f038f08: 24070008 */ addiu $a3,$zero,0x8
|
||||
.L0f038f0c:
|
||||
/* f038f0c: 8fbf0044 */ lw $ra,0x44($sp)
|
||||
@@ -32448,7 +32448,7 @@ glabel func0f03a894
|
||||
/* f03a920: 27a50020 */ addiu $a1,$sp,0x20
|
||||
/* f03a924: 27a60074 */ addiu $a2,$sp,0x74
|
||||
/* f03a928: 8fa70080 */ lw $a3,0x80($sp)
|
||||
/* f03a92c: 0fc0e10f */ jal func0f03843c
|
||||
/* f03a92c: 0fc0e10f */ jal chrGoToPos
|
||||
/* f03a930: a7a90074 */ sh $t1,0x74($sp)
|
||||
/* f03a934: 50400004 */ beqzl $v0,.L0f03a948
|
||||
/* f03a938: 00001025 */ or $v0,$zero,$zero
|
||||
@@ -32510,7 +32510,7 @@ bool chrGoToTarget(struct chrdata *chr, u32 speed)
|
||||
(chr->flags & CHRFLAG0_CAN_RUN_FOR_ALARM)) {
|
||||
struct prop *prop = chrGetTargetProp(chr);
|
||||
|
||||
if (func0f03843c(chr, &prop->pos, &prop->rooms[0], speed)) {
|
||||
if (chrGoToPos(chr, &prop->pos, &prop->rooms[0], speed)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -32527,7 +32527,7 @@ bool chrGoToChr(struct chrdata *chr, u32 dst_chrnum, u32 speed)
|
||||
(chr->flags & CHRFLAG0_CAN_RUN_FOR_ALARM)) {
|
||||
struct chrdata *dstchr = chrFindById(chr, dst_chrnum);
|
||||
|
||||
if (dstchr && dstchr->prop && func0f03843c(chr, &dstchr->prop->pos, &dstchr->prop->rooms[0], speed)) {
|
||||
if (dstchr && dstchr->prop && chrGoToPos(chr, &dstchr->prop->pos, &dstchr->prop->rooms[0], speed)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -32536,10 +32536,10 @@ bool chrGoToChr(struct chrdata *chr, u32 dst_chrnum, u32 speed)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool func0f03ab74(struct chrdata *chr, struct prop *prop, s32 arg2)
|
||||
bool chrGoToProp(struct chrdata *chr, struct prop *prop, s32 speed)
|
||||
{
|
||||
if (func0f039a18(chr) && prop) {
|
||||
if (func0f03843c(chr, &prop->pos, &prop->rooms[0], arg2)) {
|
||||
if (chrGoToPos(chr, &prop->pos, &prop->rooms[0], speed)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -32593,7 +32593,7 @@ glabel func0f03abd0
|
||||
/* f03ac64: 12000008 */ beqz $s0,.L0f03ac88
|
||||
/* f03ac68: 8fa5008c */ lw $a1,0x8c($sp)
|
||||
/* f03ac6c: 02003025 */ or $a2,$s0,$zero
|
||||
/* f03ac70: 0fc0e10f */ jal func0f03843c
|
||||
/* f03ac70: 0fc0e10f */ jal chrGoToPos
|
||||
/* f03ac74: 8fa70090 */ lw $a3,0x90($sp)
|
||||
/* f03ac78: 50400004 */ beqzl $v0,.L0f03ac8c
|
||||
/* f03ac7c: 00001025 */ or $v0,$zero,$zero
|
||||
@@ -32636,7 +32636,7 @@ glabel func0f03aca0
|
||||
/* f03acf4: 0fc12e8d */ jal func0f04ba34
|
||||
/* f03acf8: 8c84a3e4 */ lw $a0,-0x5c1c($a0)
|
||||
/* f03acfc: 02002025 */ or $a0,$s0,$zero
|
||||
/* f03ad00: 0fc1309a */ jal func0f04c268
|
||||
/* f03ad00: 0fc1309a */ jal chrGoToCover
|
||||
/* f03ad04: 24050002 */ addiu $a1,$zero,0x2
|
||||
/* f03ad08: 1000001c */ beqz $zero,.L0f03ad7c
|
||||
/* f03ad0c: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
@@ -32667,7 +32667,7 @@ glabel func0f03aca0
|
||||
/* f03ad68: 00003025 */ or $a2,$zero,$zero
|
||||
.L0f03ad6c:
|
||||
/* f03ad6c: 02002025 */ or $a0,$s0,$zero
|
||||
/* f03ad70: 0fc1309a */ jal func0f04c268
|
||||
/* f03ad70: 0fc1309a */ jal chrGoToCover
|
||||
/* f03ad74: 24050002 */ addiu $a1,$zero,0x2
|
||||
/* f03ad78: 8fbf001c */ lw $ra,0x1c($sp)
|
||||
.L0f03ad7c:
|
||||
@@ -32891,7 +32891,7 @@ glabel func0f03afac
|
||||
/* f03b1ac: 8fa40088 */ lw $a0,0x88($sp)
|
||||
/* f03b1b0: 27a50068 */ addiu $a1,$sp,0x68
|
||||
/* f03b1b4: 27a60058 */ addiu $a2,$sp,0x58
|
||||
/* f03b1b8: 0fc0e10f */ jal func0f03843c
|
||||
/* f03b1b8: 0fc0e10f */ jal chrGoToPos
|
||||
/* f03b1bc: 02003825 */ or $a3,$s0,$zero
|
||||
/* f03b1c0: 10000002 */ beqz $zero,.L0f03b1cc
|
||||
/* f03b1c4: 24020001 */ addiu $v0,$zero,0x1
|
||||
@@ -33141,7 +33141,7 @@ glabel func0f03b1e0
|
||||
/* f03b54c: 8fa402b8 */ lw $a0,0x2b8($sp)
|
||||
/* f03b550: 27a50068 */ addiu $a1,$sp,0x68
|
||||
/* f03b554: 02403025 */ or $a2,$s2,$zero
|
||||
/* f03b558: 0fc0e10f */ jal func0f03843c
|
||||
/* f03b558: 0fc0e10f */ jal chrGoToPos
|
||||
/* f03b55c: 02203825 */ or $a3,$s1,$zero
|
||||
/* f03b560: 3c0e800a */ lui $t6,0x800a
|
||||
/* f03b564: 8dcea2f8 */ lw $t6,-0x5d08($t6)
|
||||
@@ -45547,7 +45547,7 @@ glabel func0f046a8c
|
||||
/* f046b70: 10000211 */ beqz $zero,.L0f0473b8
|
||||
/* f046b74: ae0b00d8 */ sw $t3,0xd8($s0)
|
||||
.L0f046b78:
|
||||
/* f046b78: 0fc0e10f */ jal func0f03843c
|
||||
/* f046b78: 0fc0e10f */ jal chrGoToPos
|
||||
/* f046b7c: 92070065 */ lbu $a3,0x65($s0)
|
||||
.L0f046b80:
|
||||
/* f046b80: 0fc0dc89 */ jal func0f037224
|
||||
@@ -51411,7 +51411,7 @@ glabel func0f04bffc
|
||||
/* f04c264: 27bd00a8 */ addiu $sp,$sp,0xa8
|
||||
);
|
||||
|
||||
s16 func0f04c268(struct chrdata *chr, u8 speed)
|
||||
s16 chrGoToCover(struct chrdata *chr, u8 speed)
|
||||
{
|
||||
struct cover cover;
|
||||
|
||||
@@ -51420,7 +51420,7 @@ s16 func0f04c268(struct chrdata *chr, u8 speed)
|
||||
}
|
||||
|
||||
if (func0f039a18(chr) && chr->cover != -1 && coverLoad(chr->cover, &cover)) {
|
||||
func0f03843c(chr, cover.pos, &cover.room, speed);
|
||||
chrGoToPos(chr, cover.pos, &cover.room, speed);
|
||||
return chr->cover;
|
||||
}
|
||||
|
||||
@@ -51509,7 +51509,7 @@ glabel func0f04c2e8
|
||||
/* f04c410: 02002025 */ or $a0,$s0,$zero
|
||||
/* f04c414: 27a50040 */ addiu $a1,$sp,0x40
|
||||
/* f04c418: 27a60030 */ addiu $a2,$sp,0x30
|
||||
/* f04c41c: 0fc0e10f */ jal func0f03843c
|
||||
/* f04c41c: 0fc0e10f */ jal chrGoToPos
|
||||
/* f04c420: 8fa70054 */ lw $a3,0x54($sp)
|
||||
/* f04c424: 10000003 */ beqz $zero,.L0f04c434
|
||||
/* f04c428: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
|
||||
@@ -8726,10 +8726,10 @@ bool ai0123(void)
|
||||
/**
|
||||
* @cmd 0124
|
||||
*/
|
||||
bool ai0124(void)
|
||||
bool aiGoToCover(void)
|
||||
{
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
func0f04c268(g_Vars.chrdata, cmd[2]);
|
||||
chrGoToCover(g_Vars.chrdata, cmd[2]);
|
||||
g_Vars.aioffset += 3;
|
||||
|
||||
return false;
|
||||
@@ -10537,7 +10537,7 @@ glabel ai0136
|
||||
/* f05b3ac: afa30024 */ sw $v1,0x24($sp)
|
||||
/* f05b3b0: 8fa30024 */ lw $v1,0x24($sp)
|
||||
/* f05b3b4: 8e040424 */ lw $a0,0x424($s0)
|
||||
/* f05b3b8: 0fc1309a */ jal func0f04c268
|
||||
/* f05b3b8: 0fc1309a */ jal chrGoToCover
|
||||
/* f05b3bc: 90650002 */ lbu $a1,0x2($v1)
|
||||
/* f05b3c0: 8e190438 */ lw $t9,0x438($s0)
|
||||
.L0f05b3c4:
|
||||
@@ -10810,7 +10810,7 @@ bool aiIfDangerousObjectNearby(void)
|
||||
bool ai013e(void)
|
||||
{
|
||||
if (func0f03aca0(g_Vars.chrdata, 0x43c80000, 1) == 0 && func0f04bffc(g_Vars.chrdata, 1000, 12000) != -1) {
|
||||
func0f04c268(g_Vars.chrdata, 2);
|
||||
chrGoToCover(g_Vars.chrdata, SPEED_RUN);
|
||||
}
|
||||
|
||||
g_Vars.aioffset += 2;
|
||||
@@ -11787,14 +11787,14 @@ bool aiIfChrHasGun(void)
|
||||
/**
|
||||
* @cmd 0170
|
||||
*/
|
||||
bool ai0170(void)
|
||||
bool aiDoGunCommand(void)
|
||||
{
|
||||
u8 *cmd = g_Vars.ailist + g_Vars.aioffset;
|
||||
struct weaponobj *weapon = g_Vars.chrdata->gunprop->weapon;
|
||||
|
||||
if (cmd[2] == 0 || ((weapon->hidden & OBJHFLAG_00000080) == 0 && cmd[2] == 1)) {
|
||||
if (cmd[2] == 0) {
|
||||
func0f03ab74(g_Vars.chrdata, g_Vars.chrdata->gunprop, 1);
|
||||
chrGoToProp(g_Vars.chrdata, g_Vars.chrdata->gunprop, SPEED_JOG);
|
||||
}
|
||||
|
||||
g_Vars.aioffset = chraiGoToLabel(g_Vars.ailist, g_Vars.aioffset, cmd[3]);
|
||||
|
||||
@@ -47332,7 +47332,7 @@ glabel func0f08f11c
|
||||
/* f08f2d0: 02202025 */ or $a0,$s1,$zero
|
||||
/* f08f2d4: 24450008 */ addiu $a1,$v0,0x8
|
||||
/* f08f2d8: 24460028 */ addiu $a2,$v0,0x28
|
||||
/* f08f2dc: 0fc0e10f */ jal func0f03843c
|
||||
/* f08f2dc: 0fc0e10f */ jal chrGoToPos
|
||||
/* f08f2e0: 00003825 */ or $a3,$zero,$zero
|
||||
/* f08f2e4: 10400013 */ beqz $v0,.L0f08f334
|
||||
/* f08f2e8: 24090258 */ addiu $t1,$zero,0x258
|
||||
|
||||
@@ -16741,7 +16741,7 @@ glabel func0f194b40
|
||||
/* f1963d8: 02802025 */ or $a0,$s4,$zero
|
||||
/* f1963dc: 50a00079 */ beqzl $a1,.L0f1965c4
|
||||
/* f1963e0: 928202a0 */ lbu $v0,0x2a0($s4)
|
||||
/* f1963e4: 0fc0eadd */ jal func0f03ab74
|
||||
/* f1963e4: 0fc0eadd */ jal chrGoToProp
|
||||
/* f1963e8: 24060002 */ addiu $a2,$zero,0x2
|
||||
/* f1963ec: 10000074 */ beqz $zero,.L0f1965c0
|
||||
/* f1963f0: a29502a0 */ sb $s5,0x2a0($s4)
|
||||
@@ -16786,7 +16786,7 @@ glabel func0f194b40
|
||||
.L0f196480:
|
||||
/* f196480: 2645008c */ addiu $a1,$s2,0x8c
|
||||
/* f196484: 2646007a */ addiu $a2,$s2,0x7a
|
||||
/* f196488: 0fc0e10f */ jal func0f03843c
|
||||
/* f196488: 0fc0e10f */ jal chrGoToPos
|
||||
/* f19648c: 24070002 */ addiu $a3,$zero,0x2
|
||||
/* f196490: 1000004c */ beqz $zero,.L0f1965c4
|
||||
/* f196494: 928202a0 */ lbu $v0,0x2a0($s4)
|
||||
@@ -16843,7 +16843,7 @@ glabel func0f194b40
|
||||
/* f196550: 05800005 */ bltz $t4,.L0f196568
|
||||
/* f196554: 00000000 */ sll $zero,$zero,0x0
|
||||
.L0f196558:
|
||||
/* f196558: 0fc0e10f */ jal func0f03843c
|
||||
/* f196558: 0fc0e10f */ jal chrGoToPos
|
||||
/* f19655c: a29502a0 */ sb $s5,0x2a0($s4)
|
||||
/* f196560: 10000018 */ beqz $zero,.L0f1965c4
|
||||
/* f196564: 928202a0 */ lbu $v0,0x2a0($s4)
|
||||
@@ -16862,7 +16862,7 @@ glabel func0f194b40
|
||||
/* f196590: 5300000c */ beqzl $t8,.L0f1965c4
|
||||
/* f196594: 928202a0 */ lbu $v0,0x2a0($s4)
|
||||
/* f196598: a29502a0 */ sb $s5,0x2a0($s4)
|
||||
/* f19659c: 0fc0eadd */ jal func0f03ab74
|
||||
/* f19659c: 0fc0eadd */ jal chrGoToProp
|
||||
/* f1965a0: 8e450010 */ lw $a1,0x10($s2)
|
||||
/* f1965a4: 10000007 */ beqz $zero,.L0f1965c4
|
||||
/* f1965a8: 928202a0 */ lbu $v0,0x2a0($s4)
|
||||
@@ -17115,7 +17115,7 @@ glabel func0f194b40
|
||||
/* f19692c: 2645008c */ addiu $a1,$s2,0x8c
|
||||
/* f196930: 1d60001e */ bgtz $t3,.L0f1969ac
|
||||
/* f196934: 2646007a */ addiu $a2,$s2,0x7a
|
||||
/* f196938: 0fc0e10f */ jal func0f03843c
|
||||
/* f196938: 0fc0e10f */ jal chrGoToPos
|
||||
/* f19693c: 24070002 */ addiu $a3,$zero,0x2
|
||||
/* f196940: 1000001b */ beqz $zero,.L0f1969b0
|
||||
/* f196944: 8e4900dc */ lw $t1,0xdc($s2)
|
||||
@@ -17974,6 +17974,6 @@ void func0f197544(struct chrdata *chr)
|
||||
}
|
||||
|
||||
if (!pass) {
|
||||
func0f03843c(chr, &chr->act_aibotgetitem.pos, &chr->act_aibotgetitem.rooms[0], chr->speed);
|
||||
chrGoToPos(chr, &chr->act_aibotgetitem.pos, &chr->act_aibotgetitem.rooms[0], chr->speed);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -402,14 +402,14 @@ glabel func0f197600
|
||||
.L0f197ab0:
|
||||
/* f197ab0: 00e02825 */ or $a1,$a3,$zero
|
||||
/* f197ab4: 24060002 */ addiu $a2,$zero,0x2
|
||||
/* f197ab8: 0fc0eadd */ jal func0f03ab74
|
||||
/* f197ab8: 0fc0eadd */ jal chrGoToProp
|
||||
/* f197abc: afa80054 */ sw $t0,0x54($sp)
|
||||
/* f197ac0: 10000006 */ beqz $zero,.L0f197adc
|
||||
/* f197ac4: 8fa80054 */ lw $t0,0x54($sp)
|
||||
.L0f197ac8:
|
||||
/* f197ac8: 00e02825 */ or $a1,$a3,$zero
|
||||
/* f197acc: 24060002 */ addiu $a2,$zero,0x2
|
||||
/* f197ad0: 0fc0eadd */ jal func0f03ab74
|
||||
/* f197ad0: 0fc0eadd */ jal chrGoToProp
|
||||
/* f197ad4: afa80054 */ sw $t0,0x54($sp)
|
||||
/* f197ad8: 8fa80054 */ lw $t0,0x54($sp)
|
||||
.L0f197adc:
|
||||
|
||||
+16
-8
@@ -2463,9 +2463,9 @@
|
||||
mkword(flags), \
|
||||
label,
|
||||
|
||||
#define cmd0124_run_for_cover_maybe(action) \
|
||||
#define go_to_cover(speed) \
|
||||
mkshort(0x0124), \
|
||||
action,
|
||||
speed,
|
||||
|
||||
// Related to command 012f
|
||||
// globals.c only
|
||||
@@ -2945,13 +2945,19 @@
|
||||
0x00, \
|
||||
label,
|
||||
|
||||
// If bool is false, run some function on the chr and their gun ground
|
||||
// prop, then follow the label.
|
||||
// If bool is true, don't call the function, and only follow the label if the
|
||||
// gun prop has OBJHFLAG_00000080.
|
||||
#define if_gun_landed(bool, label) \
|
||||
/**
|
||||
* If operation is 1, checks if the chr's dropped gun can be run to and follow
|
||||
* the label if so.
|
||||
*
|
||||
* If operation is 0, makes the chr run to the dropped gun. No check is done,
|
||||
* and the label is followed.
|
||||
*
|
||||
* Don't use this directly. Use convenience macros if_gun_landed and go_to_gun
|
||||
* instead.
|
||||
*/
|
||||
#define do_gun_command(operation, label) \
|
||||
mkshort(0x0170), \
|
||||
bool, \
|
||||
operation, \
|
||||
label,
|
||||
|
||||
/**
|
||||
@@ -3800,3 +3806,5 @@
|
||||
|
||||
#define if_stage_is_not(stage, label) if_stage_lt(stage, label) if_stage_gt(stage, label)
|
||||
|
||||
#define go_to_gun(label) do_gun_command(0, label)
|
||||
#define if_gun_landed(label) do_gun_command(1, label)
|
||||
|
||||
@@ -218,7 +218,7 @@ u32 func0f0375b0(void);
|
||||
u32 func0f0375e8(void);
|
||||
u32 func0f0379b0(void);
|
||||
u32 func0f037b70(void);
|
||||
u32 func0f03843c(struct chrdata *chr, struct coord *pos, s16 *room_id, u32 speed);
|
||||
u32 chrGoToPos(struct chrdata *chr, struct coord *pos, s16 *room_id, u32 speed);
|
||||
struct path *pathFindById(u32 path_id);
|
||||
u32 func0f038868(void);
|
||||
void func0f038b9c(struct chrdata *chr, struct path *path);
|
||||
@@ -254,7 +254,7 @@ u32 chrTrySurrender(struct chrdata *chr);
|
||||
bool chrFadeOut(struct chrdata *chr);
|
||||
bool chrGoToTarget(struct chrdata *chr, u32 speed);
|
||||
bool chrGoToChr(struct chrdata *chr, u32 dst_chrnum, u32 speed);
|
||||
bool func0f03ab74(struct chrdata *chr, struct prop *prop, s32 arg2);
|
||||
bool chrGoToProp(struct chrdata *chr, struct prop *prop, s32 speed);
|
||||
u32 func0f03abd0(void);
|
||||
u32 func0f03aca0(struct chrdata *chr, u32 arg1, u32 arg2);
|
||||
bool chrTryStop(struct chrdata *chr);
|
||||
@@ -393,7 +393,7 @@ u32 func0f04b748(void);
|
||||
u32 func0f04b950(struct chrdata *chr, u32 cover, u32 arg2);
|
||||
u32 func0f04ba34(struct chrdata *chr, u16 arg1, u32 arg2);
|
||||
u32 func0f04bffc(struct chrdata *chr, u32 arg1, u32 arg2);
|
||||
s16 func0f04c268(struct chrdata *chr, u8 speed);
|
||||
s16 chrGoToCover(struct chrdata *chr, u8 speed);
|
||||
u32 func0f04c2e8(void);
|
||||
void chrAddTargetToBdlist(struct chrdata *chr);
|
||||
s32 chrGetDistanceLostToTargetInLastSecond(struct chrdata *chr);
|
||||
|
||||
@@ -292,7 +292,7 @@
|
||||
/*0x0121*/ bool ai0121(void);
|
||||
/*0x0122*/ bool ai0122(void);
|
||||
/*0x0123*/ bool ai0123(void);
|
||||
/*0x0124*/ bool ai0124(void);
|
||||
/*0x0124*/ bool aiGoToCover(void);
|
||||
/*0x0125*/ bool ai0125(void);
|
||||
/*0x0126*/ bool aiIfPlayerUsingCmpOrAr34(void);
|
||||
/*0x0127*/ bool ai0127(void);
|
||||
@@ -345,7 +345,7 @@
|
||||
/*0x016d*/ bool aiChrAdjustMotionBlur(void);
|
||||
/*0x016e*/ bool ai016e(void);
|
||||
/*0x016f*/ bool aiIfChrHasGun(void);
|
||||
/*0x0170*/ bool ai0170(void);
|
||||
/*0x0170*/ bool aiDoGunCommand(void);
|
||||
/*0x0171*/ bool aiIfDistanceToGunLessThan(void);
|
||||
/*0x0172*/ bool ai0172(void);
|
||||
/*0x0173*/ bool aiChrCopyProperties(void);
|
||||
|
||||
+5
-7
@@ -964,15 +964,13 @@ u8 func0007_alerted[] = {
|
||||
goto_next(LABEL_GETGUN_FAILED)
|
||||
|
||||
label(0x13)
|
||||
if_gun_landed(TRUE, /*goto*/ 0xb1)
|
||||
if_gun_landed(/*goto*/ 0xb1)
|
||||
if_timer_gt(300, /*goto*/ LABEL_GETGUN_FAILED)
|
||||
goto_first(0xb0)
|
||||
|
||||
// Note: When if_gun_landed param is FALSE, it's not actually an if
|
||||
// statement, but does some task.
|
||||
label(0xb1)
|
||||
restart_timer
|
||||
if_gun_landed(FALSE, /*goto*/ 0xad)
|
||||
go_to_gun(/*goto*/ 0xad)
|
||||
|
||||
beginloop(0xad)
|
||||
dprint 'G','O',' ','F','O','R',' ','G','U','N','\n',0,
|
||||
@@ -1252,7 +1250,7 @@ u8 func0007_alerted[] = {
|
||||
unset_self_flag_bankx(CHRFLAG1_00040000, BANK_1)
|
||||
unset_self_flag_bankx(CHRFLAG1_00020000, BANK_1)
|
||||
label(0x16)
|
||||
cmd0124_run_for_cover_maybe(2)
|
||||
go_to_cover(SPEED_RUN)
|
||||
|
||||
beginloop(0xa6)
|
||||
if_chr_stopped(/*goto*/ 0xa7)
|
||||
@@ -1493,7 +1491,7 @@ u8 func0007_alerted[] = {
|
||||
label(0x16)
|
||||
say_quip(CHR_BOND, 0x02, 0xff, 0x02, 0x01, BANK_0, 0x00, 0x00)
|
||||
restart_timer
|
||||
cmd0124_run_for_cover_maybe(MA_COVERWAIT)
|
||||
go_to_cover(SPEED_RUN)
|
||||
|
||||
beginloop(0x55)
|
||||
if_dangerous_object_nearby(3, /*goto*/ LABEL_FLEE_GRENADE)
|
||||
@@ -3292,7 +3290,7 @@ u8 func000c_combat_with_target_chr[] = {
|
||||
label(0x53)
|
||||
dprint 'G','O',' ','T','O',' ','C','O','V','E','R','\n',0,
|
||||
say_quip(CHR_BOND, 0x02, 0xff, 0x02, 0x01, BANK_0, 0x00, 0x00)
|
||||
cmd0124_run_for_cover_maybe(MA_COVERWAIT)
|
||||
go_to_cover(SPEED_RUN)
|
||||
restart_timer
|
||||
|
||||
beginloop(0xc7)
|
||||
|
||||
@@ -14426,7 +14426,7 @@ bool (*g_CommandPointers[])(void) = {
|
||||
/*0x0121*/ ai0121,
|
||||
/*0x0122*/ ai0122,
|
||||
/*0x0123*/ ai0123,
|
||||
/*0x0124*/ ai0124,
|
||||
/*0x0124*/ aiGoToCover,
|
||||
/*0x0125*/ ai0125,
|
||||
/*0x0126*/ aiIfPlayerUsingCmpOrAr34,
|
||||
/*0x0127*/ ai0127,
|
||||
@@ -14502,7 +14502,7 @@ bool (*g_CommandPointers[])(void) = {
|
||||
/*0x016d*/ aiChrAdjustMotionBlur,
|
||||
/*0x016e*/ ai016e,
|
||||
/*0x016f*/ aiIfChrHasGun,
|
||||
/*0x0170*/ ai0170,
|
||||
/*0x0170*/ aiDoGunCommand,
|
||||
/*0x0171*/ aiIfDistanceToGunLessThan,
|
||||
/*0x0172*/ ai0172,
|
||||
/*0x0173*/ aiChrCopyProperties,
|
||||
|
||||
Reference in New Issue
Block a user