Discover AI command try_start_alarm and decompile objFindByPadNum

This commit is contained in:
Ryan Dwyer
2020-05-27 21:03:53 +10:00
parent 1e55efb2e8
commit 690ba9baa8
8 changed files with 42 additions and 42 deletions
+13 -3
View File
@@ -372,7 +372,17 @@
mkshort(0x0026), \
chr,
#define cmd0027(pad, label) \
/**
* Makes the chr try to run to an alarm switch and activate it.
*
* The pad argument should be the pad that the alarm is at. A check is done to
* make sure the object at that pad is healthy.
*
* Note that no check is done to make sure that the object at the pad is
* actually an alarm switch, and the chr will actually run to their closest
* alarm switch rather than the one at the given pad.
*/
#define try_start_alarm(pad, label) \
mkshort(0x0027), \
mkshort(pad), \
label,
@@ -382,8 +392,8 @@
* start. To make guards spawn when the alarm is sounded, an AI list must wait
* for the alarm then spawn them.
*
* The alarm does not have a timer. You may want to use an AI list to wait for
* them alarm, then wait a certain amount of time before deactivating it.
* Alarms have a 30 second timer, with the exception of G5 Building which is
* 55 seconds.
*/
#define activate_alarm \
mkshort(0x0028),
+2 -2
View File
@@ -210,7 +210,7 @@ void func0f02e9a0(struct chrdata *chr, f32 arg1);
void func0f02ed28(struct chrdata *chr, f32 arg1);
void chrStop(struct chrdata *chr);
void chrKneel(struct chrdata *chr);
void func0f02effc(struct chrdata *chr);
void chrStartAlarm(struct chrdata *chr);
void chrThrowGrenade(struct chrdata *chr, s32 arg1, s32 arg2);
void chrDoSurprisedSurrender(struct chrdata *chr);
void chrDoSurprisedLookAround(struct chrdata *chr);
@@ -248,7 +248,7 @@ bool chrTrySurprisedSurrender(struct chrdata *chr);
bool chrTrySurprisedLookAround(struct chrdata *chr);
bool chrTryKneel(struct chrdata *chr);
bool func0f03af44(struct chrdata *chr, u32 anim_id, f32 fstartframe, f32 fendframe, u8 flags, u32 transition, f32 result);
bool func0f03b5f0(struct chrdata *chr, s32 pad_id);
bool chrTryStartAlarm(struct chrdata *chr, s32 pad_id);
s32 chrConsiderGrenadeThrow(struct chrdata *chr, u32 entitytype, u32 entityid);
void chrTickKneel(struct chrdata *chr);
void func0f03ccdc(struct chrdata *chr);
+1 -1
View File
@@ -42,7 +42,7 @@
/*0x0024*/ bool aiSurrender(void);
/*0x0025*/ bool aiFadeOut(void);
/*0x0026*/ bool aiRemoveChr(void);
/*0x0027*/ bool ai0027(void);
/*0x0027*/ bool aiTryStartAlarm(void);
/*0x0028*/ bool aiActivateAlarm(void);
/*0x0029*/ bool aiDeactivateAlarm(void);
/*0x002a*/ bool ai002a(void);
+1 -1
View File
@@ -51,7 +51,7 @@ u32 func0f067d88(void);
u32 func0f067dc4(void);
void func0f068018(struct animdata *animdata, f32 *arg1, f32 *arg2, f32 *arg3, f32 *arg4);
u32 func0f06803c(void);
struct defaultobj *func0f0681c0(s32 pad_id);
struct defaultobj *objFindByPadNum(s32 padnum);
u32 func0f068218(void);
u32 func0f0682dc(void);
u32 func0f0682fc(void);