This commit is contained in:
fgsfds committed 2023-08-06 18:52:09 +02:00
commit eb8c4e9ee9
113 files changed
+1523 -1597

No files matched your search

+2 -2
View File
@@ -232,8 +232,8 @@ extern bool g_FogEnabled;
extern bool g_EnvHasTransparency;
extern struct distfadesettings *g_EnvDistFadeSettingsPtr;
extern u8 *g_RoomMtxAges;
extern s16 *g_RoomMtxLinkedRooms;
extern s16 *g_RoomMtxBaseRooms;
extern RoomNum *g_RoomMtxLinkedRooms;
extern RoomNum *g_RoomMtxBaseRooms;
extern f32 *g_RoomMtxScales;
extern Mtxf *g_RoomMtxMatrices;
extern struct fileinfo g_FileInfo[NUM_FILES];
+2 -2
View File
@@ -4334,11 +4334,11 @@
* Gets the distance from chr to pad, but only if they are on the same floor
* (ie. Y difference is less than 150).
*/
#define if_chr_same_floor_distance_to_pad_lt(chr, pad, distance, label) \
#define if_chr_same_floor_distance_to_pad_lt(chr, distance, pad, label) \
mkshort(0x01df), \
chr, \
mkshort(pad), \
mkshort(distance / 10), \
mkshort(pad), \
label,
/**
+56 -27
View File
@@ -1347,6 +1347,9 @@
#define HATTYPE_METAL 3
#define HATTYPE_CLOTH 5
#define HEADANIM_RESTING 0
#define HEADANIM_MOVING 1
#define HEADBODYTYPE_DEFAULT 0
#define HEADBODYTYPE_FEMALE 1
#define HEADBODYTYPE_FEMALEGUARD 2
@@ -1382,6 +1385,8 @@
#define HITPART_GENERAL 200
#define HITPART_GENERALHALF 201
#define HOVFLAG_FIRSTTICK 1
#define HOVTYPE_BED 0
#define HOVTYPE_BIKE 1
#define HOVTYPE_CRATE 2
@@ -3264,33 +3269,57 @@
#define PADFLAG_AIDUCK 0x10000
#define PADFLAG_AIBOTINUSE 0x20000
#define PAK010_00 0
#define PAK010_01 1
#define PAK010_02 2
#define PAK010_03 3
#define PAK010_04 4
#define PAK010_05 5
#define PAK010_06 6
#define PAK010_07 7
#define PAK010_08 8
#define PAK010_09 9
#define PAK010_10 10
#define PAK010_11 11
#define PAK010_12 12
#define PAK010_13 13
#define PAK010_14 14
#define PAK010_15 15
#define PAK010_16 16
#define PAK010_17 17
#define PAK010_18 18
#define PAK010_19 19
#define PAK010_20 20
#define PAK010_21 21
#define PAK010_22 22
#define PAK010_24 24
#define PAK010_25 25
#define PAK010_26 26
#define PAK010_27 27
#define PAK008_00 0
#define PAK008_01 1
#define PAK008_02 2
#define PAK008_03 3
#define PAK008_04 4
#define PAK008_05 5
#define PAK008_06 6
#define PAK008_07 7
#define PAK008_08 8
#define PAK008_09 9
#define PAK008_11 11
#define PAK008_12 12
#define PAK00C_00 0
#define PAK00C_01 1
#define PAK00C_02 2
#define PAK00C_03 3
#define PAKERRORDIALOG_FULL 0
#define PAKERRORDIALOG_CORRUPT 1
#define PAKERRORDIALOG_DEVICEERROR 2
#define PAKERRORDIALOG_GB_UNREADABLE 3
#define PAKERRORDIALOG_DATALOST 4
#define PAKSTATE_NOPAK 0
#define PAKSTATE_UNPLUGGING 1
#define PAKSTATE_PROBE 2
#define PAKSTATE_MEM_DISPATCH 3
#define PAKSTATE_MEM_PRE_PREPARE 4
#define PAKSTATE_MEM_PREPARE 5
#define PAKSTATE_MEM_POST_PREPARE 6
#define PAKSTATE_07 7
#define PAKSTATE_GB_PRE_PREPARE 8
#define PAKSTATE_GB_PREPARE 9
#define PAKSTATE_GB_POST_PREPARE1 10
#define PAKSTATE_READY 11
#define PAKSTATE_12 12
#define PAKSTATE_13 13
#define PAKSTATE_MEM_ENTER_DEVICEERROR 14
#define PAKSTATE_MEM_ENTER_CORRUPT 15
#define PAKSTATE_MEM_ENTER_FULL 16
#define PAKSTATE_17 17
#define PAKSTATE_18 18
#define PAKSTATE_MEM_DEVICEERROR 19
#define PAKSTATE_MEM_CORRUPT 20
#define PAKSTATE_MEM_FULL 21
#define PAKSTATE_22 22
#define PAKSTATE_GB_POST_PREPARE2 24
#define PAKSTATE_GB_POST_PREPARE3 25
#define PAKSTATE_GB_OPEN_UNREADABLE 26
#define PAKSTATE_GB_IDLE_UNREADABLE 27
#define PAK_ERR1_OK 0
#define PAK_ERR1_NOPAK PFS_ERR_NOPACK /* no memory card is plugged */
+2 -2
View File
@@ -46,7 +46,7 @@ extern s32 g_SoundMode;
extern s32 g_SndNumPlaying;
extern struct audiorussmapping g_AudioRussMappings[];
extern struct audioconfig g_AudioConfigs[];
extern bool var8005eedc;
extern bool g_JoyPfsPollMasterEnabled;
extern f32 var8005ef10[2];
extern s32 g_NumGlobalAilists;
extern s32 g_NumLvAilists;
@@ -310,7 +310,7 @@ extern struct menudialogdef g_MpEditSimulant4MbMenuDialog;
extern struct menudialogdef g_AdvancedSetup4MbMenuDialog;
extern struct filelist *g_FileLists[MAX_PLAYERS];
extern bool var80075bd0[];
extern struct var80075c00 var80075c00[];
extern struct headanim g_HeadAnims[2];
extern s32 var80075d60;
extern s32 var80075d64;
extern s32 var80075d68;
+9 -9
View File
@@ -72,25 +72,25 @@ bool bgTestHitInVtxBatch(struct coord *arg0, struct coord *arg1, struct coord *a
s32 bg0f1612e4(struct coord *bbmin, struct coord *bbmax, struct coord *frompos, struct coord *dist, struct coord *arg4, struct coord *arg5);
bool bgTestHitInRoom(struct coord *frompos, struct coord *topos, s32 roomnum, struct hitthing *hitthing);
bool bgRoomIsLoaded(s32 room);
bool bgRoomContainsCoord(struct coord *pos, s16 roomnum);
bool bgTestPosInRoomCheap(struct coord *pos, s16 roomnum);
bool bgTestPosInRoomExpensive(struct coord *pos, s16 roomnum);
bool bgTestPosInRoom(struct coord *pos, s16 roomnum);
void bgFindRoomsByPos(struct coord *pos, s16 *inrooms, s16 *aboverooms, s32 max, s16 *bestroom);
bool bgRoomContainsCoord(struct coord *pos, RoomNum roomnum);
bool bgTestPosInRoomCheap(struct coord *pos, RoomNum roomnum);
bool bgTestPosInRoomExpensive(struct coord *pos, RoomNum roomnum);
bool bgTestPosInRoom(struct coord *pos, RoomNum roomnum);
void bgFindRoomsByPos(struct coord *pos, RoomNum *inrooms, RoomNum *aboverooms, s32 max, RoomNum *bestroom);
bool bgCmdPushValue(bool value);
bool bgCmdPopValue(void);
bool bgCmdGetNthValueFromEnd(s32 offset);
struct bgcmd *bgCmdExecuteBranch(struct bgcmd *cmd, bool s2);
struct bgcmd *bgCmdExecute(struct bgcmd *cmd);
void bgTickPortalsXray(void);
void bgAddToSnake(s16 fromroomnum, s16 roomnum, s16 draworder, struct screenbox *box);
void bgAddToSnake(RoomNum fromroomnum, RoomNum roomnum, s16 draworder, struct screenbox *box);
void bgConsumeSnakeItem(struct bgsnakeitem *arg0);
bool bgTryConsumeSnake(void);
void bgChooseRoomsToLoad(void);
void bgTickPortals(void);
Gfx *bgRenderSceneAndLoadCandidate(Gfx *gdl);
s32 bgGetForceOnscreenRooms(s16 *rooms, s32 len);
s32 bgRoomGetNeighbours(s32 room, s16 *rooms, s32 len);
s32 bgGetForceOnscreenRooms(RoomNum *rooms, s32 len);
s32 bgRoomGetNeighbours(s32 room, RoomNum *rooms, s32 len);
bool bgRoomsAreNeighbours(s32 roomnum1, s32 roomnum2);
void bgCalculateScreenProperties(void);
void bgExpandRoomToPortals(s32 roomnum);
@@ -101,6 +101,6 @@ void bgSetPortalOpenState(s32 portal, bool open);
s32 bgFindPortalBetweenPositions(struct coord *pos1, struct coord *pos2);
bool bgIsBboxOverlapping(struct coord *arg0, struct coord *arg1, struct coord *arg2, struct coord *arg3);
void bgCalculatePortalBbox(s32 portalnum, struct coord *bbmin, struct coord *bbmax);
void bgFindEnteredRooms(struct coord *bbmin, struct coord *upper, s16 *rooms, s32 maxlen, bool arg4);
void bgFindEnteredRooms(struct coord *bbmin, struct coord *upper, RoomNum *rooms, s32 maxlen, bool arg4);
#endif
+1 -1
View File
@@ -16,7 +16,7 @@ struct model *bodyAllocateModel(s32 bodynum, s32 headnum, u32 spawnflags);
s32 body0f02d3f8(void);
s32 bodyChooseHead(s32 bodynum);
void bodyAllocateChr(s32 stagenum, struct packedchr *packed, s32 cmdindex);
struct prop *bodyAllocateEyespy(struct pad *pad, s16 room);
struct prop *bodyAllocateEyespy(struct pad *pad, RoomNum room);
void bodyCalculateHeadOffset(struct modeldef *headmodeldef, s32 headnum, s32 bodynum);
#endif
+1 -1
View File
@@ -4,7 +4,7 @@
#include "data.h"
#include "types.h"
f32 eyespyFindGround(s16 *floorroom);
f32 eyespyFindGround(RoomNum *floorroom);
s32 eyespyTryMoveUpwards(f32 yvel);
s32 eyespyCalculateNewPosition(struct coord *vel);
bool eyespyCalculateNewPositionWithPush(struct coord *vel);
+4 -4
View File
@@ -73,9 +73,9 @@ void bgunTickMasterLoad(void);
void bgunTickLoad(void);
bool bgunLoadAll(void);
struct modeldef *bgunGetCartModeldef(void);
void bgun0f09ebcc(struct defaultobj *obj, struct coord *coord, s16 *rooms, Mtxf *matrix1, struct coord *velocity, Mtxf *matrix2, struct prop *prop, struct coord *pos);
void bgun0f09ebcc(struct defaultobj *obj, struct coord *coord, RoomNum *rooms, Mtxf *matrix1, struct coord *velocity, Mtxf *matrix2, struct prop *prop, struct coord *pos);
void bgun0f09ed2c(struct defaultobj *obj, struct coord *coord, Mtxf *arg2, struct coord *velocity, Mtxf *arg4);
struct defaultobj *bgunCreateThrownProjectile2(struct chrdata *chr, struct gset *gset, struct coord *pos, s16 *rooms, Mtxf *arg4, struct coord *velocity);
struct defaultobj *bgunCreateThrownProjectile2(struct chrdata *chr, struct gset *gset, struct coord *pos, RoomNum *rooms, Mtxf *arg4, struct coord *velocity);
void bgunCreateThrownProjectile(s32 handnum, struct gset *gset);
void bgunUpdateHeldRocket(s32 handnum);
void bgunCreateHeldRocket(s32 handnum, struct weaponfunc_shootprojectile *func);
@@ -142,8 +142,8 @@ s32 bgunAllocateFireslot(void);
void bgunRender(Gfx **gdl);
struct sndstate **bgunAllocateAudioHandle(void);
void bgunPlayPropHitSound(struct gset *gset, struct prop *prop, s32 texturenum);
void bgunPlayGlassHitSound(struct coord *pos, s16 *rooms, s32 texturenum);
void bgunPlayBgHitSound(struct gset *gset, struct coord *hitpos, s32 texturenum, s16 *rooms);
void bgunPlayGlassHitSound(struct coord *pos, RoomNum *rooms, s32 texturenum);
void bgunPlayBgHitSound(struct gset *gset, struct coord *hitpos, s32 texturenum, RoomNum *rooms);
void bgunSetTriggerOn(s32 handnum, bool on);
s32 bgunConsiderToggleGunFunction(s32 usedowntime, bool trigpressed, bool fromactivemenu);
void bgun0f0a8c50(void);
+1 -1
View File
@@ -10,7 +10,7 @@ void bheadFlipAnimation(void);
void bheadUpdateIdleRoll(void);
void bheadUpdatePos(struct coord *vel);
void bheadUpdateRot(struct coord *lookvel, struct coord *upvel);
void bheadSetdamp(f32 headdamp);
void bheadSetDamp(f32 headdamp);
void bheadUpdate(f32 arg0, f32 arg1);
void bheadAdjustAnimation(f32 speed);
void bheadStartDeathAnimation(s16 animnum, u32 flip, f32 fstarttime, f32 speed);
+2 -2
View File
@@ -30,8 +30,8 @@ void bmoveUpdateSpeedThetaControl(f32 value);
f32 bmoveCalculateLookahead(void);
void bmoveResetMoveData(struct movedata *data);
void bmoveProcessInput(bool allowc1x, bool allowc1y, bool allowc1buttons, bool ignorec2);
void bmoveFindEnteredRoomsByPos(struct player *player, struct coord *arg1, s16 *rooms);
void bmoveFindEnteredRooms(struct player *player, s16 *rooms);
void bmoveFindEnteredRoomsByPos(struct player *player, struct coord *arg1, RoomNum *rooms);
void bmoveFindEnteredRooms(struct player *player, RoomNum *rooms);
void bmoveUpdateRooms(struct player *player);
void bmove0f0cb904(struct coord *coord);
void bmove0f0cba88(f32 *a, f32 *b, struct coord *c, f32 mult1, f32 mult2);
+3 -3
View File
@@ -4,7 +4,7 @@
#include "data.h"
#include "types.h"
bool botroomFindPos(s16 room, struct coord *pos, f32 *angleptr, s32 *padnumptr, s32 *covernumptr);
bool botroomFindPos(RoomNum room, struct coord *pos, f32 *angleptr, s32 *padnumptr, s32 *covernumptr);
bool botIsDizzy(struct chrdata *chr);
void botReset(struct chrdata *chr, u8 respawning);
@@ -45,8 +45,8 @@ char *botGetCommandName(s32 command);
void botApplyAttack(struct chrdata *chr, struct prop *prop);
void botApplyFollow(struct chrdata *chr, struct prop *prop);
void botApplyProtect(struct chrdata *chr, struct prop *prop);
void botApplyDefend(struct chrdata *chr, struct coord *pos, s16 *room, f32 angle);
void botApplyHold(struct chrdata *chr, struct coord *pos, s16 *room, f32 angle);
void botApplyDefend(struct chrdata *chr, struct coord *pos, RoomNum *room, f32 angle);
void botApplyHold(struct chrdata *chr, struct coord *pos, RoomNum *room, f32 angle);
void botApplyScenarioCommand(struct chrdata *chr, u32 arg1);
bool botCanFollow(struct chrdata *leader, struct chrdata *follower);
s32 botFindTeammateToFollow(struct chrdata *chr, f32 range);
+1 -1
View File
@@ -18,7 +18,7 @@ u32 botactGetProjectileThrowInterval(u32 weapon);
s32 botactGetWeaponByAmmoType(s32 ammotype);
void botactThrow(struct chrdata *chr);
s32 botactGetShootInterval60(s32 weaponnum, s32 funcnum);
bool botactFindRocketRoute(struct chrdata *chr, struct coord *frompos, struct coord *topos, s16 *fromrooms, s16 *torooms, struct projectile *projectile);
bool botactFindRocketRoute(struct chrdata *chr, struct coord *frompos, struct coord *topos, RoomNum *fromrooms, RoomNum *torooms, struct projectile *projectile);
void botactGetRocketNextStepPos(u16 padnum, struct coord *pos);
void botactCreateSlayerRocket(struct chrdata *chr);
+1 -1
View File
@@ -43,6 +43,6 @@ f32 camGetPerspAspect(void);
void cam0f0b5838(void);
bool cam0f0b5b9c(struct coord *arg0, f32 arg1);
bool camIsPosInScreenBox(struct coord *pos, f32 arg1, struct drawslot *drawslot);
bool camIsPosInFovAndVisibleRoom(s16 *rooms, struct coord *pos, f32 arg2);
bool camIsPosInFovAndVisibleRoom(RoomNum *rooms, struct coord *pos, f32 arg2);
#endif
+7 -7
View File
@@ -6,24 +6,24 @@
void chrSetChrnum(struct chrdata *chr, s16 chrnum);
void chrDeregister(s32 chrnum);
void chrCalculatePushPos(struct chrdata *chr, struct coord *pos, s16 *rooms, bool arg3);
void chrCalculatePushPos(struct chrdata *chr, struct coord *pos, RoomNum *rooms, bool arg3);
#if VERSION >= VERSION_NTSC_1_0
bool chr0f01f264(struct chrdata *chr, struct coord *pos, s16 *rooms, f32 arg3, bool arg4);
bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3, bool arg4);
#else
bool chr0f01f264(struct chrdata *chr, struct coord *pos, s16 *rooms, f32 arg3);
bool chr0f01f264(struct chrdata *chr, struct coord *pos, RoomNum *rooms, f32 arg3);
#endif
bool chr0f01f378(struct model *model, struct coord *arg1, struct coord *arg2, f32 *mangroundptr);
s32 chrsGetNumFree(void);
s16 chrsGetNextUnusedChrnum(void);
struct prop *chr0f020b14(struct prop *prop, struct model *model, struct coord *pos, s16 *rooms, f32 arg3, u8 *ailist);
struct prop *chr0f020b14(struct prop *prop, struct model *model, struct coord *pos, RoomNum *rooms, f32 arg3, u8 *ailist);
void chrRemove(struct prop *prop, bool free);
void chrUpdateAimProperties(struct chrdata *chr);
void chrFlinchBody(struct chrdata *chr);
void chrFlinchHead(struct chrdata *chr, f32 arg1);
f32 chrGetFlinchAmount(struct chrdata *chr);
void chr0f021fa8(struct chrdata *chr, struct coord *pos, s16 *rooms);
void chr0f021fa8(struct chrdata *chr, struct coord *pos, RoomNum *rooms);
void chr0f0220ec(struct chrdata *chr, s32 lvupdate240, bool arg2);
void chr0f022214(struct chrdata *chr, struct prop *child, bool fulltick);
void chrUpdateCloak(struct chrdata *chr);
@@ -80,9 +80,9 @@ f32 chrGetMaxDamage(struct chrdata *chr);
void chrAddHealth(struct chrdata *chr, f32 health);
f32 chrGetArmor(struct chrdata *chr);
void chrInit(struct prop *prop, u8 *ailist);
struct prop *chrAllocate(struct model *model, struct coord *pos, s16 *rooms, f32 faceangle, u8 *ailist);
struct prop *chrAllocate(struct model *model, struct coord *pos, RoomNum *rooms, f32 faceangle, u8 *ailist);
void chrClearReferences(s32 propnum);
void chr0f022084(struct chrdata *chr, s16 *room);
void chr0f022084(struct chrdata *chr, RoomNum *room);
void chr0f0220ac(struct chrdata *chr);
void chrCloak(struct chrdata *chr, bool arg1);
void chrUncloak(struct chrdata *chr, bool value);
+25 -25
View File
@@ -66,8 +66,8 @@ void chrDamageByImpact(struct chrdata *chr, f32 damage, struct coord *vector, st
void chrDamageByExplosion(struct chrdata *chr, f32 damage, struct coord *vector, struct prop *prop, struct coord *explosionpos);
void playerUpdateDamageStats(struct prop *attacker, struct prop *victim, f32 damage);
void chrDamage(struct chrdata *chr, f32 damage, struct coord *vector, struct gset *gset, struct prop *aprop, s32 hitpart, bool damageshield, struct prop *prop2, struct modelnode *node, struct model *model, s32 side, s16 *arg11, bool explosion, struct coord *explosionpos);
bool func0f03645c(struct chrdata *chr, struct coord *arg1, s16 *arg2, struct coord *arg3, struct coord *arg4, s32 cdtypes);
bool func0f03654c(struct chrdata *chr, struct coord *pos, s16 *rooms, struct coord *pos2, s16 *rooms2, struct coord *vector, f32 arg6, u32 types);
bool func0f03645c(struct chrdata *chr, struct coord *arg1, RoomNum *arg2, struct coord *arg3, struct coord *arg4, s32 cdtypes);
bool func0f03654c(struct chrdata *chr, struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *rooms2, struct coord *vector, f32 arg6, u32 types);
bool propchrHasClearLineToPos(struct prop *prop, struct coord *dstpos, struct coord *vector);
bool propchrHasClearLineInVector(struct prop *prop, struct coord *coord, f32 arg2);
bool func0f036974(struct prop *prop, struct coord *coord);
@@ -75,9 +75,9 @@ void chrGetSideVectorToTarget(struct chrdata *chr, bool side, struct coord *vect
bool chrCanRollInDirection(struct chrdata *chr, bool toleft, f32 distance);
void chrGetSideVector(struct chrdata *chr, bool side, struct coord *vector);
bool chrCanJumpInDirection(struct chrdata *chr, bool side, f32 distance);
bool chrIsRoomOffScreen(struct chrdata *chr, struct coord *waypos, s16 *wayrooms);
bool chrIsRoomOffScreen(struct chrdata *chr, struct coord *waypos, RoomNum *wayrooms);
void chrGoPosInitMagic(struct chrdata *chr, struct waydata *waydata, struct coord *arg2, struct coord *prevpos);
void chrGoPosGetCurWaypointInfoWithFlags(struct chrdata *chr, struct coord *pos, s16 *rooms, u32 *flags);
void chrGoPosGetCurWaypointInfoWithFlags(struct chrdata *chr, struct coord *pos, RoomNum *rooms, u32 *flags);
f32 func0f0370a8(struct chrdata *chr);
s32 chrGoPosCalculateBaseTtl(struct chrdata *chr);
void chrGoPosConsiderRestart(struct chrdata *chr);
@@ -85,20 +85,20 @@ void chrGoPosInitExpensive(struct chrdata *chr);
void chrGoPosAdvanceWaypoint(struct chrdata *chr);
s32 chrPatrolCalculateStep(struct chrdata *chr, bool *forward, s32 numsteps);
s16 chrPatrolCalculatePadNum(struct chrdata *chr, s32 numsteps);
void chrPatrolGetCurWaypointInfoWithFlags(struct chrdata *chr, struct coord *pos, s16 *rooms, u32 *flags);
void chrPatrolGetCurWaypointInfoWithFlags(struct chrdata *chr, struct coord *pos, RoomNum *rooms, u32 *flags);
void func0f037580(struct chrdata *chr);
void func0f0375b0(struct chrdata *chr);
void chrNavTickMagic(struct chrdata *chr, struct waydata *waydata, f32 speed, struct coord *arg3, s16 *rooms);
void chrNavTickMagic(struct chrdata *chr, struct waydata *waydata, f32 speed, struct coord *arg3, RoomNum *rooms);
void chrCalculatePosition(struct chrdata *chr, struct coord *pos);
void chrGoPosChooseAnimation(struct chrdata *chr);
bool chrGoToRoomPos(struct chrdata *chr, struct coord *pos, s16 *rooms, u32 goposflags);
bool chrGoToRoomPos(struct chrdata *chr, struct coord *pos, RoomNum *rooms, u32 goposflags);
void chrPatrolChooseAnimation(struct chrdata *chr);
void chrStartPatrol(struct chrdata *chr, struct path *path);
bool chrHasLosToEntity(struct chrdata *chr, struct coord *chrpos, s16 *chrrooms, bool allowextraheight, u32 attackflags, u32 entityid);
bool chrHasLosToAttackTarget(struct chrdata *chr, struct coord *pos, s16 *rooms, bool allowextraheight);
bool chrHasLosToChr(struct chrdata *chr, struct chrdata *target, s16 *room);
bool chrHasLosToPos(struct chrdata *viewerchr, struct coord *pos, s16 *rooms);
bool chrHasLosToPosWasteful(struct chrdata *chr, struct coord *pos, s16 *room);
bool chrHasLosToEntity(struct chrdata *chr, struct coord *chrpos, RoomNum *chrrooms, bool allowextraheight, u32 attackflags, u32 entityid);
bool chrHasLosToAttackTarget(struct chrdata *chr, struct coord *pos, RoomNum *rooms, bool allowextraheight);
bool chrHasLosToChr(struct chrdata *chr, struct chrdata *target, RoomNum *room);
bool chrHasLosToPos(struct chrdata *viewerchr, struct coord *pos, RoomNum *rooms);
bool chrHasLosToPosWasteful(struct chrdata *chr, struct coord *pos, RoomNum *room);
bool chrHasLosToProp(struct chrdata *chr, struct prop *prop);
bool chrIsStopped(struct chrdata *chr);
bool chrCheckCanSeeTarget(struct chrdata *chr);
@@ -166,8 +166,8 @@ bool posIsArrivingLaterallyAtPos(struct coord *prevpos, struct coord *curpos, st
bool posIsArrivingAtPos(struct coord *prevpos, struct coord *curpos, struct coord *targetpos, f32 range);
void chrTickRunPos(struct chrdata *chr);
void func0f044b68(struct coord *arg0, struct coord *arg1, struct coord *arg2);
bool chrNavCanSeeNextPos(struct chrdata *chr, struct coord *pos, s16 *rooms, struct coord *aimpos, struct coord *arg4, struct coord *arg5, f32 negchrradius, f32 chrradius, s32 cdtypes, s32 arg9);
bool chrNavCheckForObstacle(struct chrdata *chr, struct coord *chrpos, s16 *chrrooms, struct coord *aimpos, struct coord *leftpos, struct coord *rightpos, f32 negchrradius, f32 chrradius, s32 cdtypes, bool hasobstacle);
bool chrNavCanSeeNextPos(struct chrdata *chr, struct coord *pos, RoomNum *rooms, struct coord *aimpos, struct coord *arg4, struct coord *arg5, f32 negchrradius, f32 chrradius, s32 cdtypes, s32 arg9);
bool chrNavCheckForObstacle(struct chrdata *chr, struct coord *chrpos, RoomNum *chrrooms, struct coord *aimpos, struct coord *leftpos, struct coord *rightpos, f32 negchrradius, f32 chrradius, s32 cdtypes, bool hasobstacle);
bool chrNavTryObstacle(struct chrdata *chr, struct coord *arg1, bool arg2, struct coord *arg3, f32 radius, bool arg5, struct coord *nextpos, struct waydata *waydata, f32 arg8, s32 cdtypes, s32 arg10);
struct prop *chrOpenDoor(struct chrdata *chr, struct coord *rangepos);
void chrNavTickMain(struct chrdata *chr, struct coord *pos, struct waydata *waydata, bool arg3);
@@ -181,7 +181,7 @@ void chraTick(struct chrdata *chr);
void cutsceneStart(u32 ailistid);
void chraTickBg(void);
f32 chrGetAngleToPos(struct chrdata *chr, struct coord *pos);
void chrGetAttackEntityPos(struct chrdata *chr, u32 attackflags, s32 entityid, struct coord *pos, s16 *rooms);
void chrGetAttackEntityPos(struct chrdata *chr, u32 attackflags, s32 entityid, struct coord *pos, RoomNum *rooms);
f32 chrGetAngleFromTargetsFov(struct chrdata *chr);
f32 chrGetVerticalAngleToTarget(struct chrdata *chr);
bool chrIsInTargetsFovX(struct chrdata *chr, u8 fov360);
@@ -197,23 +197,23 @@ bool chrIsTargetAimingAtMe(struct chrdata *chr);
bool chrSawInjury(struct chrdata *chr, u8 arg1);
bool chrSawDeath(struct chrdata *chr, u8 arg1);
bool waypointIsWithin90DegreesOfPosAngle(struct waypoint *waypoint, struct coord *pos, f32 angle);
s32 chrFindWaypointWithinPosQuadrant(struct coord *pos, s16 *rooms, f32 angle, u8 quadrant);
s32 chrFindWaypointWithinPosQuadrant(struct coord *pos, RoomNum *rooms, f32 angle, u8 quadrant);
bool func0f04a4ec(struct chrdata *chr, u8 quadrant);
bool chrSetPadPresetToWaypointWithinTargetQuadrant(struct chrdata *chr, u8 arg1);
bool chrSetChrPresetToChrNearPad(u32 checktype, struct chrdata *chr, f32 distance, s32 padnum);
bool chrSetChrPresetToChrNearPos(u8 checktype, struct chrdata *chr, f32 distance, struct coord *pos, s16 *room);
bool chrSetChrPresetToChrNearPos(u8 checktype, struct chrdata *chr, f32 distance, struct coord *pos, RoomNum *room);
bool chrSetPadPresetToPadOnRouteToTarget(struct chrdata *chr);
bool chrIsPosOffScreen(struct coord *pos, s16 *rooms);
bool chrIsPosOffScreen(struct coord *pos, RoomNum *rooms);
#if VERSION >= VERSION_NTSC_1_0
bool chrAdjustPosForSpawn(f32 chrradius, struct coord *pos, s16 *rooms, f32 angle, bool allowonscreen, bool force, bool onlysurrounding);
bool chrAdjustPosForSpawn(f32 chrradius, struct coord *pos, RoomNum *rooms, f32 angle, bool allowonscreen, bool force, bool onlysurrounding);
#else
bool chrAdjustPosForSpawn(f32 chrradius, struct coord *pos, s16 *rooms, f32 angle, bool allowonscreen, bool force);
bool chrAdjustPosForSpawn(f32 chrradius, struct coord *pos, RoomNum *rooms, f32 angle, bool allowonscreen, bool force);
#endif
struct prop *chrSpawnAtCoord(s32 body, s32 head, struct coord *pos, s16 *room, f32 angle, u8 *ailist, u32 spawnflags);
struct prop *chrSpawnAtCoord(s32 body, s32 head, struct coord *pos, RoomNum *room, f32 angle, u8 *ailist, u32 spawnflags);
bool chrIsPropPresetBlockingSightToTarget(struct chrdata *chr);
bool chrMoveToPos(struct chrdata *chr, struct coord *pos, s16 *room, f32 angle, bool ignorebg);
bool chrMoveToPos(struct chrdata *chr, struct coord *pos, RoomNum *room, f32 angle, bool ignorebg);
bool chrCheckCoverOutOfSight(struct chrdata *chr, s32 covernum, bool soft);
s32 chrAssignCoverByCriteria(struct chrdata *chr, u16 arg1, s32 arg2);
s32 chrAssignCoverAwayFromDanger(struct chrdata *chr, s32 mindist, s32 maxdist);
@@ -238,9 +238,9 @@ void chrRunToPos(struct chrdata *chr, struct coord *pos);
void chrBeginDead(struct chrdata *chr);
f32 chrGetShield(struct chrdata *chr);
void chrDie(struct chrdata *chr, s32 aplayernum);
void chrGoPosGetCurWaypointInfo(struct chrdata *chr, struct coord *pos, s16 *rooms);
void chrGoPosGetCurWaypointInfo(struct chrdata *chr, struct coord *pos, RoomNum *rooms);
void chrGoPosClearRestartTtl(struct chrdata *chr);
void chrPatrolGetCurWaypointInfo(struct chrdata *chr, struct coord *pos, s16 *rooms);
void chrPatrolGetCurWaypointInfo(struct chrdata *chr, struct coord *pos, RoomNum *rooms);
struct path *pathFindById(u32 path_id);
void chrRecordLastVisibleTargetTime(struct chrdata *chr);
bool chrHasLosToTarget(struct chrdata *chr);
@@ -340,7 +340,7 @@ s16 *teamGetChrIds(s32 team_id);
s16 *squadronGetChrIds(s32 squadron_id);
void audioMarkAsRecentlyPlayed(s16 audioid);
bool audioWasNotPlayedRecently(s16 audioid);
Gfx *chrsRenderChrStats(Gfx *gdl, s16 *rooms);
Gfx *chrsRenderChrStats(Gfx *gdl, RoomNum *rooms);
void chrToggleModelPart(struct chrdata *chr, s32 partnum);
bool chrIsAvoiding(struct chrdata *chr);
void chrDrCarollEmitSparks(struct chrdata *chr);
+1 -1
View File
@@ -19,7 +19,7 @@ bool lightIsVulnerable(s32 roomnum, s32 lightnum);
bool lightIsOn(s32 roomnum, s32 lightnum);
void roomSetFlashBrightness(s32 roomnum, s32 value);
void roomSetDefaults(struct room *room);
Gfx *lightsSetForRoom(Gfx *gdl, s16 roomnum);
Gfx *lightsSetForRoom(Gfx *gdl, RoomNum roomnum);
Gfx *lightsSetDefault(Gfx *gdl);
void roomInitLights(s32 roomnum);
bool lightsHandleHit(struct coord *gunpos, struct coord *hitpos, s32 roomnum);
+1 -1
View File
@@ -7,7 +7,7 @@
void dyntexTickRoom(s32 roomnum, Vtx *vertices);
void dyntexAddVertex(Vtx *vertex);
void dyntexSetCurrentType(s16 type);
void dyntexSetCurrentRoom(s16 roomnum);
void dyntexSetCurrentRoom(RoomNum roomnum);
void dyntexReset(void);
bool dyntexHasRoom(void);
+3 -3
View File
@@ -8,13 +8,13 @@ void explosionsReset(void);
void explosionsStop(void);
bool explosionCreateSimple(struct prop *prop, struct coord *pos, s16 *rooms, s16 type, s32 playernum);
bool explosionCreateComplex(struct prop *prop, struct coord *pos, s16 *rooms, s16 type, s32 playernum);
bool explosionCreateSimple(struct prop *prop, struct coord *pos, RoomNum *rooms, s16 type, s32 playernum);
bool explosionCreateComplex(struct prop *prop, struct coord *pos, RoomNum *rooms, s16 type, s32 playernum);
f32 explosionGetHorizontalRangeAtFrame(struct explosion *exp, s32 frame);
f32 explosionGetVerticalRangeAtFrame(struct explosion *exp, s32 frame);
void explosionGetBboxAtFrame(struct coord *lower, struct coord *upper, s32 frame, struct prop *prop);
void explosionAlertChrs(f32 *radius, struct coord *noisepos);
bool explosionCreate(struct prop *prop, struct coord *pos, s16 *rooms, s16 type, s32 playernum, bool makescorch, struct coord *arg6, s16 room, struct coord *arg8);
bool explosionCreate(struct prop *prop, struct coord *pos, RoomNum *rooms, s16 type, s32 playernum, bool makescorch, struct coord *arg6, RoomNum room, struct coord *arg8);
void explosionsUpdateShake(struct coord *arg0, struct coord *arg1, struct coord *arg2);
bool explosionOverlapsProp(struct explosion *exp, struct prop *prop, struct coord *pos1, struct coord *pos2);
void explosionInflictDamage(struct prop *prop);
+1 -1
View File
@@ -8,7 +8,7 @@ void func0f110bf0(void);
void func0f110bf8(void);
void filelistCreate(s32 listnum, u8 filetype);
s32 filelistFindOrCreate(u8 filetype);
void func0f110d90(s32 device);
void filelistInvalidatePak(s32 device);
void filelistsTick(void);
void filelistUpdate(struct filelist *list);
+4 -4
View File
@@ -97,11 +97,11 @@ Gfx *menuRenderBackgroundLayer2(Gfx *gdl, u8 bg, f32 frac);
Gfx *menuRender(Gfx *gdl);
u32 menuChooseMusic(void);
u32 menuGetRoot(void);
void func0f0fce8c(struct menudialogdef *dialogdef, s32 playernum, s32 arg2);
void menuPushPakDialogForPlayer(struct menudialogdef *dialogdef, s32 playernum, s32 arg2);
char *menuTextSaveDeviceName(struct menuitem *item);
u32 func0f0fd118(u32 arg0);
bool func0f0fd1f4(s32 device, s32 arg1);
void func0f0fd320(s32 arg0, s32 arg1);
s32 menuPakNumToPlayerNum(s32 paknum);
bool menuIsReadyForPakError(s32 device, s32 arg1);
void menuPushPakErrorDialog(s32 arg0, s32 arg1);
void func0f0fd494(struct coord *pos);
void func0f0fd548(s32 arg0);
struct menudialog *menuIsDialogOpen(struct menudialogdef *dialogdef);
+2 -2
View File
@@ -26,8 +26,8 @@ void scenarioTick(void);
void scenarioTickChr(struct chrdata *chr);
Gfx *scenarioRadarExtra(Gfx *gdl);
bool scenarioRadarChr(Gfx **gdl, struct prop *prop);
f32 scenarioChooseSpawnLocation(f32 chrradius, struct coord *pos, s16 *rooms, struct prop *prop);
f32 scenarioChooseSpawnLocation(f32 chrradius, struct coord *pos, RoomNum *rooms, struct prop *prop);
s32 scenarioGetMaxTeams(void);
void scenarioHighlightRoom(s16 room, s32 *arg1, s32 *arg2, s32 *arg3);
void scenarioHighlightRoom(RoomNum room, s32 *arg1, s32 *arg2, s32 *arg3);
#endif
+2 -2
View File
@@ -81,11 +81,11 @@ Gfx *htbRenderHud(Gfx *gdl);
void ctcInitProps(void);
bool ctcHighlightProp(struct prop *prop, s32 *colour);
void ctcAddPad(s32 *cmd);
void ctcHighlightRoom(s16 roomnum, s32 *arg1, s32 *arg2, s32 *arg3);
void ctcHighlightRoom(RoomNum roomnum, s32 *arg1, s32 *arg2, s32 *arg3);
void kohTick(void);
Gfx *kohRenderHud(Gfx *gdl);
void kohAddHill(s32 *cmd);
void kohHighlightRoom(s16 roomnum, s32 *arg1, s32 *arg2, s32 *arg3);
void kohHighlightRoom(RoomNum roomnum, s32 *arg1, s32 *arg2, s32 *arg3);
void htmAddPad(s16 padnum);
void htmReset(void);
void htbCreateUplink(void);
+1 -1
View File
@@ -27,7 +27,7 @@ void objectivesDisableChecking(void);
void objectivesShowHudmsg(char *buffer, s32 hudmsgtype);
void objectivesCheckAll(void);
void objectiveCheckRoomEntered(s32 currentroom);
void objectiveCheckThrowInRoom(s32 arg0, s16 *requiredrooms);
void objectiveCheckThrowInRoom(s32 arg0, RoomNum *requiredrooms);
void objectiveCheckHolograph(f32 sqdist);
struct prop *chopperGetTargetProp(struct chopperobj *heli);
struct defaultobj *objFindByTagId(s32 tag_id);
+1 -1
View File
@@ -5,7 +5,7 @@
#include "types.h"
void navSetSeed(u32 upper, u32 lower);
struct waypoint *waypointFindClosestToPos(struct coord *pos, s16 *rooms);
struct waypoint *waypointFindClosestToPos(struct coord *pos, RoomNum *rooms);
struct waygroup *waygroupChooseNeighbour(s32 *groupnums, s32 step, u32 ignoremask);
void waygroupSetStepIfUndiscovered(s32 *groupnums, s32 step, u32 ignoremask);
bool waygroupDiscoverOneStep(struct waygroup *group, s32 step, u32 ignoremask);
+12 -12
View File
@@ -9,29 +9,29 @@ u32 pakAlign(s8 device, u32 size);
s32 pakGetAlignedFileLenByBodyLen(s8 device, u32 bodylen);
u32 pakGetBodyLenByFileLen(u32 filelen);
u32 pakGenerateSerial(s8 device);
bool pakIsMemoryPak(s8 device);
bool mempakIsOkay(s8 device);
s32 pakGetFileIdsByType(s8 device, u32 filetype, u32 *fileids);
s32 pak0f1167d8(s8 device);
s32 pakReadBodyAtGuid(s8 device, s32 fileid, u8 *body, s32 arg3);
s32 pakSaveAtGuid(s8 device, s32 fileid, s32 filetype, u8 *body, s32 *outfileid, u8 *olddata);
bool pakDeleteFile(s8 device, s32 fileid);
s32 pakDeleteGameNote(s8 device, u16 company_code, u32 game_code, char *game_name, char *ext_name);
s32 pak0f1168c4(s8 device, struct pakdata **arg1);
PakErr1 pakDeleteGameNote(s8 device, u16 company_code, u32 game_code, char *game_name, char *ext_name);
PakErr1 pak0f1168c4(s8 device, struct pakdata **arg1);
s32 pakGetType(s8 device);
s32 pakGetSerial(s8 device);
void pak0f11698c(s8 device);
void pak0f116994(void);
void pak0f1169c8(s8 device, s32 arg1);
bool pak0f116aec(s8 device);
bool pak0f116b5c(s8 device);
void pak0f1169c8(s8 device, bool tick);
bool mempakIsReady(s8 device);
bool mempakIsReadyOrFull(s8 device);
void pak0f116bdc(s8 device, u8 *arg1, u8 *arg2);
u16 _pakGetSerial(s8 device);
u32 _pakGetType(s8 device);
void pakSetUnk010(s8 device, s32 value);
void pakSetState(s8 device, s32 value);
s32 pak0f116df0(s8 device, struct pakdata **arg1);
s32 _pakDeleteGameNote(s8 device, u16 company_code, u32 game_code, char *game_name, char *ext_name);
s32 _pakDeleteFile(s8 device, s32 fileid);
s32 pakGetUnk264(s8 device);
s32 pakGetPlugCount(s8 device);
u32 pakGetMaxFileSize(s8 device);
s32 pakGetBodyLenByType(s8 device, u32 filetype);
void pak0f117150(s8 device, u8 *ptr);
@@ -91,8 +91,8 @@ void pakCreateInitialFiles(s8 device);
s32 pakFindMaxFileId(s8 device);
void pakMergeBlanks(s8 device);
void paksReset(void);
void pak0f11a32c(s8 device, u8 arg1, u32 line, char *file);
void pakInit(s8 arg0);
void pakSetFeatures(s8 device, u8 features, u32 line, char *file);
void pakSetDefaults(s8 arg0);
PakErr1 pakReadWriteBlock(s8 device, OSPfs *pfs, s32 file_no, u8 flag, u32 address, u32 len, u8 *buffer);
bool pakQueryTotalUsage(s8 device);
void pakQueryPdSize(s8 device);
@@ -111,7 +111,7 @@ bool pakHandleResult(s32 err1, s8 device, bool arg2, u32 line);
void paksTick(void);
void pak0f11c6d0(void);
void pakExecuteDebugOperations(void);
void pak0f11ca30(void);
void pakCheckPlugged(void);
void gbpakHandleError(u32 arg0);
bool gbpakRead(s8 device, u16 address, u8 *buffer, u16 size);
bool gbpakWrite(s8 device, u16 address, u8 *buffer, u16 size);
@@ -140,7 +140,7 @@ void pakEnableRumbleForPlayer(s8 playernum);
void pakDisableRumbleForAllPlayers(void);
void pakEnableRumbleForAllPlayers(void);
void pakDumpPak(void);
void pak0f11df94(s8 device);
void pakTickState(s8 device);
void pak0f11e3bc(s8 device);
void pakProbeEeprom(void);
PakErr1 pakReadEeprom(u8 address, u8 *buffer, u32 len);
+3 -3
View File
@@ -4,8 +4,8 @@
#include "data.h"
#include "types.h"
f32 playerChooseSpawnLocation(f32 chrradius, struct coord *dstpos, s16 *dstrooms, struct prop *prop, s16 *spawnpads, s32 numspawnpads);
f32 playerChooseGeneralSpawnLocation(f32 chrradius, struct coord *pos, s16 *rooms, struct prop *prop);
f32 playerChooseSpawnLocation(f32 chrradius, struct coord *dstpos, RoomNum *dstrooms, struct prop *prop, s16 *spawnpads, s32 numspawnpads);
f32 playerChooseGeneralSpawnLocation(f32 chrradius, struct coord *pos, RoomNum *rooms, struct prop *prop);
void playerStartNewLife(void);
void playerLoadDefaults(void);
bool playerSpawnAnti(struct chrdata *chr, s32 param_2);
@@ -63,7 +63,7 @@ void playerDie(bool force);
void playerDieByShooter(u32 shooter, bool force);
void playerCheckIfShotInBack(s32 attackerplayernum, f32 x, f32 z);
f32 playerGetHealthBarHeightFrac(void);
void player0f0c1840(struct coord *pos, struct coord *up, struct coord *look, struct coord *pos2, s16 *rooms);
void player0f0c1840(struct coord *pos, struct coord *up, struct coord *look, struct coord *pos2, RoomNum *rooms);
void player0f0c1ba4(struct coord *pos, struct coord *up, struct coord *look, struct coord *memcampos, s32 memcamroom);
void player0f0c1bd8(struct coord *pos, struct coord *up, struct coord *look);
void playersClearMemCamRoom(void);
+12 -12
View File
@@ -21,7 +21,7 @@ void propDelist(struct prop *prop);
void propReparent(struct prop *mover, struct prop *adopter);
void propDetach(struct prop *prop);
Gfx *propRender(Gfx *gdl, struct prop *prop, bool xlupass);
Gfx *propsRender(Gfx *gdl, s16 renderroomnum, s32 renderpass, s16 *roomnumsbyprop);
Gfx *propsRender(Gfx *gdl, RoomNum renderroomnum, s32 renderpass, RoomNum *roomnumsbyprop);
void weaponPlayWhooshSound(s32 weaponnum, struct prop *prop);
void func0f060bac(s32 weaponnum, struct prop *prop);
struct prop *shotCalculateHits(s32 handnum, bool arg1, struct coord *arg2, struct coord *arg3, struct coord *gunpos, struct coord *dir, u32 arg6, f32 arg7, bool arg8);
@@ -46,21 +46,21 @@ void farsightChooseTarget(void);
void autoaimTick(void);
u32 propDoorGetCdTypes(struct prop *prop);
bool propIsOfCdType(struct prop *prop, u32 types);
void roomsCopy(s16 *srcrooms, s16 *dstrooms);
void roomsAppend(s16 *newrooms, s16 *dstrooms, s32 maxlen);
bool arrayIntersects(s16 *a, s16 *b);
void roomsCopy(RoomNum *srcrooms, RoomNum *dstrooms);
void roomsAppend(RoomNum *newrooms, RoomNum *dstrooms, s32 maxlen);
bool arrayIntersects(RoomNum *a, RoomNum *b);
bool propTryAddToChunk(s16 propnum, s32 chunkindex);
s32 roomAllocatePropListChunk(s32 room, s32 arg1);
void propRegisterRoom(struct prop *prop, s16 room);
void propDeregisterRoom(struct prop *prop, s16 room);
void propRegisterRoom(struct prop *prop, RoomNum room);
void propDeregisterRoom(struct prop *prop, RoomNum room);
void propDeregisterRooms(struct prop *prop);
void propRegisterRooms(struct prop *prop);
void func0f065d1c(struct coord *pos, s16 *rooms, struct coord *newpos, s16 *newrooms, s16 *morerooms, u32 arg5);
void func0f065dd8(struct coord *pos, s16 *rooms, struct coord *newpos, s16 *newrooms);
void func0f065dfc(struct coord *pos, s16 *rooms, struct coord *newpos, s16 *newrooms, s16 *morerooms, u32 arg5);
void func0f065e74(struct coord *pos, s16 *rooms, struct coord *newpos, s16 *newrooms);
void func0f065e98(struct coord *pos, s16 *rooms, struct coord *pos2, s16 *rooms2);
void roomGetProps(s16 *room, s16 *propnums, s32 len);
void func0f065d1c(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5);
void func0f065dd8(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms);
void func0f065dfc(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms, RoomNum *morerooms, u32 arg5);
void func0f065e74(struct coord *pos, RoomNum *rooms, struct coord *newpos, RoomNum *newrooms);
void func0f065e98(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *rooms2);
void roomGetProps(RoomNum *room, s16 *propnums, s32 len);
void propsDefragRoomProps(void);
void propGetBbox(struct prop *prop, f32 *radius, f32 *ymax, f32 *ymin);
bool propUpdateGeometry(struct prop *prop, u8 **start, u8 **end);
+11 -11
View File
@@ -63,7 +63,7 @@ bool modelGetScreenCoords2(struct model *model, f32 *x2, f32 *x1, f32 *y2, f32 *
bool modelGetScreenCoords(struct model *model, f32 *x2, f32 *x1, f32 *y2, f32 *y1);
void func0f06803c(struct coord *arg0, f32 *arg1, f32 *arg2, f32 *arg3, f32 *arg4);
struct defaultobj *objFindByPadNum(s32 padnum);
struct defaultobj *objFindByPos(struct coord *pos, s16 *rooms);
struct defaultobj *objFindByPos(struct coord *pos, RoomNum *rooms);
void projectileFree(struct projectile *projectile);
void projectilesUnrefOwner(struct prop *owner);
void projectileReset(struct projectile *projectile);
@@ -81,7 +81,7 @@ struct modelnode *modelFindBboxNode(struct model *model);
struct modelrodata_bbox *modelFindBboxRodata(struct model *model);
struct modelnode *objFindBboxNode(struct defaultobj *obj);
struct modelrodata_bbox *objFindBboxRodata(struct defaultobj *obj);
s32 objGetAverageBrightnessInRooms(s16 *rooms, s32 arg1);
s32 objGetAverageBrightnessInRooms(RoomNum *rooms, s32 arg1);
s32 door0f068c04(struct prop *prop, s32 *arg1, s32 *arg2);
s32 func0f068fc8(struct prop *prop, bool arg1);
void propCalculateShadeColour(struct prop *prop, u8 *nextcol, u16 floorcol);
@@ -98,10 +98,10 @@ void objCreateDebris(struct defaultobj *obj, struct prop *prop);
struct prop *objInit(struct defaultobj *obj, struct modeldef *modeldef, struct prop *prop, struct model *model);
struct prop *objInitWithModelDef(struct defaultobj *obj, struct modeldef *modeldef);
struct prop *objInitWithAutoModel(struct defaultobj *obj);
void func0f06a580(struct defaultobj *obj, struct coord *pos, Mtxf *matrix, s16 *rooms);
void func0f06a580(struct defaultobj *obj, struct coord *pos, Mtxf *matrix, RoomNum *rooms);
f32 func0f06a620(struct defaultobj *obj);
void func0f06a730(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, s16 *rooms, struct coord *arg4);
void func0f06ab60(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, s16 *rooms, struct coord *arg4);
void func0f06a730(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void func0f06ab60(struct defaultobj *obj, struct coord *arg1, Mtxf *matrix, RoomNum *rooms, struct coord *arg4);
void objFreeProjectile(struct defaultobj *obj);
void objFreeEmbedmentOrProjectile(struct prop *prop);
void objFree(struct defaultobj *obj, bool freeprop, bool canregen);
@@ -112,7 +112,7 @@ bool func0f06b488(struct prop *prop, struct coord *arg1, struct coord *arg2, str
bool func0f06b610(struct defaultobj *obj, struct coord *arg1, struct coord *arg2, struct coord *arg3, f32 arg4, struct coord *arg5, struct coord *arg6, struct coord *arg7, struct coord *arg8, f32 *arg9);
bool func0f06bea0(struct model *model, struct modelnode *arg1, struct modelnode *arg2, struct coord *arg3, struct coord *arg4, void *arg5, f32 *arg6, struct modelnode **arg7, s32 *hitpart, s32 *arg9, struct modelnode **arg10);
bool func0f06c28c(struct chrdata *chr, struct coord *arg1, struct coord *arg2, struct coord *arg3, f32 arg4, struct coord *arg5, struct coord *arg6, struct coord *arg7, struct coord *arg8, f32 *arg9);
bool projectileFindCollidingProp(struct prop *prop, struct coord *pos, struct coord *arg2, u32 cdtypes, struct coord *arg4, struct coord *arg5, s16 *arg6);
bool projectileFindCollidingProp(struct prop *prop, struct coord *pos, struct coord *arg2, u32 cdtypes, struct coord *arg4, struct coord *arg5, RoomNum *rooms);
s32 func0f06cd00(struct defaultobj *obj, struct coord *pos, struct coord *arg2, struct coord *arg3);
bool func0f06d37c(struct defaultobj *obj, struct coord *arg1, struct coord *arg2, struct coord *arg3);
void applySpeed(f32 *distdone, f32 maxdist, f32 *speed, f32 accel, f32 decel, f32 maxspeed);
@@ -141,8 +141,8 @@ struct prop *liftFindByPad(s16 padnum);
f32 liftGetY(struct liftobj *lift);
void liftUpdateTiles(struct liftobj *lift, bool stationary);
void liftGoToStop(struct liftobj *lift, s32 stopnum);
f32 objGetHov04(struct defaultobj *obj);
void hovUpdateGround(struct defaultobj *obj, struct hov *hov, struct coord *pos, s16 *rooms, f32 matrix[3][3]);
f32 objGetHovBobOffsetY(struct defaultobj *obj);
void hovUpdateGround(struct defaultobj *obj, struct hov *hov, struct coord *pos, RoomNum *rooms, f32 matrix[3][3]);
void hovTick(struct defaultobj *obj, struct hov *hov);
s32 objIsHoverpropOrBike(struct defaultobj *obj);
f32 hoverpropGetTurnAngle(struct defaultobj *obj);
@@ -289,7 +289,7 @@ void weaponDeleteFromChr(struct chrdata *chr, s32 hand);
struct prop *weaponCreateForChr(struct chrdata *chr, s32 modelnum, s32 weaponnum, u32 flags, struct weaponobj *obj, struct modeldef *modeldef);
struct prop *chrGiveWeapon(struct chrdata *chr, s32 model, s32 weaponnum, u32 flags);
s32 weaponTestForPickup(struct prop *prop);
void weaponSetGunfireVisible(struct prop *prop, bool visible, s16 room);
void weaponSetGunfireVisible(struct prop *prop, bool visible, RoomNum room);
bool weaponIsGunfireVisible(struct prop *prop);
s32 hatGetType(struct prop *prop);
bool doorIsUnlocked(struct prop *playerprop, struct prop *doorprop);
@@ -306,7 +306,7 @@ void func0f08d3dc(struct doorobj *door);
void func0f08d460(struct doorobj *door);
void doorActivatePortal(struct doorobj *door);
void doorDeactivatePortal(struct doorobj *door);
struct prop *doorInit(struct doorobj *door, struct coord *pos, Mtxf *mtx, s16 *rooms, struct coord *coord, struct coord *centre);
struct prop *doorInit(struct doorobj *door, struct coord *pos, Mtxf *mtx, RoomNum *rooms, struct coord *coord, struct coord *centre);
void doorPlayOpeningSound(s32 soundtype, struct prop *prop);
void doorPlayClosingSound(s32 soundtype, struct prop *prop);
void doorPlayOpenedSound(s32 soundtype, struct prop *prop);
@@ -320,7 +320,7 @@ void doorSetMode(struct doorobj *door, s32 newmode);
void doorsRequestMode(struct doorobj *door, s32 newmode);
s32 doorIsClosed(struct doorobj *door);
s32 doorIsOpen(struct doorobj *door);
s32 func0f08e5a8(s16 *rooms, struct screenbox *box);
s32 func0f08e5a8(RoomNum *rooms, struct screenbox *box);
f32 objCalculateFadeDistOpacityFrac(struct prop *prop, f32 modelscale);
bool posIsInObjFadeDistance(struct coord *coord, f32 modelscale);
bool func0f08e8ac(struct prop *prop, struct coord *pos, f32 arg2, bool arg3);
+4 -4
View File
@@ -21,17 +21,17 @@ void psTick(void);
void psSetPitch(struct prop *prop, f32 targetpitch, s32 changespeed);
void psSetVolume(struct prop *prop, s32 vol);
void psStopOneShootChannel(struct prop *prop);
s16 psCreate(struct pschannel *channel, struct prop *prop, s16 soundnum, s16 padnum, s32 vol, u16 flags, u16 flags2, s32 type, struct coord *pos, f32 pitch, s16 *rooms, s32 room, f32 dist1, f32 dist2, f32 dist3);
s16 psCreate(struct pschannel *channel, struct prop *prop, s16 soundnum, s16 padnum, s32 vol, u16 flags, u16 flags2, s32 type, struct coord *pos, f32 pitch, RoomNum *rooms, s32 room, f32 dist1, f32 dist2, f32 dist3);
s32 psPlayFromProp(s32 channelnum, s16 soundnum, s32 vol, struct prop *prop, s16 type, u16 flags);
void psMuteChannel(s32 channelnum);
bool psIsChannelFree(s32 channelnum);
void psModify(s32 channelnum, s32 arg1, s16 padnum, struct prop *prop, s32 volchangetimer60, s32 dist2, s32 dist3, u16 flags);
s32 psCalculateVol(struct coord *pos, f32 arg1, f32 arg2, f32 arg3, s16 *rooms, s16 soundnum, s32 arg6, f32 *arg7);
s32 psCalculateVol(struct coord *pos, f32 arg1, f32 arg2, f32 arg3, RoomNum *rooms, s16 soundnum, s32 arg6, f32 *arg7);
s32 psCalculatePan3(s32 degrees, f32 arg1, struct pschannel *channel);
s32 psCalculatePan2(struct coord *pos, s32 arg1, f32 arg2, struct pschannel *channel);
s32 psCalculatePan(struct coord *pos, f32 dist1, f32 dist2, f32 dist3, f32 playerdist, bool arg5, struct pschannel *channel);
void psGetTheoreticalVolPan(struct coord *pos, s16 *rooms, s16 soundnum, s32 *vol, s32 *pan);
void psApplyVolPan(struct sndstate *handle, struct coord *pos, f32 dist1, f32 dist2, f32 dist3, s16 *rooms, s16 soundnum, s32 arg7, f32 *distanceptr);
void psGetTheoreticalVolPan(struct coord *pos, RoomNum *rooms, s16 soundnum, s32 *vol, s32 *pan);
void psApplyVolPan(struct sndstate *handle, struct coord *pos, f32 dist1, f32 dist2, f32 dist3, RoomNum *rooms, s16 soundnum, s32 arg7, f32 *distanceptr);
s32 psGetRandomSparkSound(void);
s32 psGetDuration60(s32 channelnum);
+1 -1
View File
@@ -11,7 +11,7 @@ u32 setupGetCmdIndexByProp(struct prop *prop);
bool setupLoadModeldef(s32 modelnum);
bool setupGetObjBbox(struct defaultobj *obj, struct coord *pos, f32 realrot[3][3], struct coord *arg3, struct coord *arg4);
bool setup0f092304(struct defaultobj *obj, struct coord *arg1, struct coord *arg2);
void setup0f09233c(struct defaultobj *obj, struct coord *pos, f32 realrot[3][3], s16 *rooms);
void setup0f09233c(struct defaultobj *obj, struct coord *pos, f32 realrot[3][3], RoomNum *rooms);
void setup0f0923d4(struct defaultobj *obj);
struct defaultobj *setupGetObjByCmdIndex(u32 cmdindex);
struct defaultobj *setupFindObjForReuse(s32 type, struct defaultobj **arg1, struct defaultobj **arg2, bool musthaveprop, bool musthavemodel, struct modeldef *modeldef);
+5 -5
View File
@@ -11,13 +11,13 @@ void smokeReset(void);
void smokeStop(void);
Gfx *smokeRenderPart(struct smoke *smoke, struct smokepart *part, Gfx *gdl, struct coord *coord, f32 size);
struct smoke *smokeCreate(struct coord *pos, s16 *rooms, s16 type);
bool smokeCreateForHand(struct coord *pos, s16 *rooms, s16 type, s32 handnum);
bool smokeCreateWithSource(void *source, struct coord *pos, s16 *rooms, s16 type, bool srcispadeffect);
struct smoke *smokeCreate(struct coord *pos, RoomNum *rooms, s16 type);
bool smokeCreateForHand(struct coord *pos, RoomNum *rooms, s16 type, s32 handnum);
bool smokeCreateWithSource(void *source, struct coord *pos, RoomNum *rooms, s16 type, bool srcispadeffect);
void smokeCreateAtProp(struct prop *prop, s16 type);
void smokeCreateAtPadEffect(struct padeffectobj *effect, struct coord *pos, s16 *rooms, s16 type);
void smokeCreateAtPadEffect(struct padeffectobj *effect, struct coord *pos, RoomNum *rooms, s16 type);
void smokeClearForProp(struct prop *prop);
struct smoke *smokeCreateSimple(struct coord *pos, s16 *rooms, s16 type);
struct smoke *smokeCreateSimple(struct coord *pos, RoomNum *rooms, s16 type);
u32 smokeTick(struct prop *prop);
u32 smokeTickPlayer(struct prop *prop);
Gfx *smokeRender(struct prop *prop, Gfx *gdl, bool xlupass);
+2
View File
@@ -4,6 +4,8 @@
#include "data.h"
#include "types.h"
#define TITLE_ALLOCSIZE 1024 * 286
extern u32 var800624d4;
extern u32 var800624d8;
extern u32 var800624dc;
+2 -2
View File
@@ -17,11 +17,11 @@ void wallhitRemoveOne(void);
void wallhitsTick(void);
void wallhitCreate(struct coord *relpos, struct coord *arg1, struct coord *arg2, s16 arg3[3],
s16 arg4[3], s16 texnum, s16 room, struct prop *objprop,
s16 arg4[3], s16 texnum, RoomNum room, struct prop *objprop,
s8 mtxindex, s8 arg9, struct chrdata *chr, bool xlu);
void wallhitCreateWith20Args(struct coord *relpos, struct coord *arg1, struct coord *arg2, s16 arg3[3],
s16 arg4[3], s16 texnum, s16 room, struct prop *objprop,
s16 arg4[3], s16 texnum, RoomNum room, struct prop *objprop,
struct prop *chrprop, s8 mtxindex, s8 arg10, struct chrdata *chr,
f32 width, f32 height, u8 minalpha, u8 maxalpha,
s32 rotdeg, u32 timermax, u32 timerspeed, bool xlu);
+35 -35
View File
@@ -25,47 +25,47 @@ bool cd000266a4(f32 x, f32 z, struct geo *tile);
void cdGetPropsOnPlatform(struct prop *platform, s16 *propnums, s32 len);
s32 cd000274e0Block(struct geoblock *tile, f32 x, f32 z, f32 width, struct prop *prop, struct collision *collision);
bool cd000276c8Cyl(struct geocyl *tile, f32 x, f32 z, f32 width, struct prop *prop, struct collision *collision);
bool cdFindLadder(struct coord *pos, f32 width, f32 ymax, f32 ymin, s16 *rooms, u16 geoflags, struct coord *laddernormal);
bool cd0002a13c(struct coord *pos, f32 radius, f32 arg2, f32 arg3, s16 *rooms, u16 geoflags);
f32 cdFindGroundInfoAtCyl(struct coord *pos, f32 radius, s16 *rooms, u16 *floorcol, u8 *floortype, u16 *floorflags, s16 *floorroom, s32 *inlift, struct prop **lift);
bool cdFindLadder(struct coord *pos, f32 width, f32 ymax, f32 ymin, RoomNum *rooms, u16 geoflags, struct coord *laddernormal);
bool cd0002a13c(struct coord *pos, f32 radius, f32 arg2, f32 arg3, RoomNum *rooms, u16 geoflags);
f32 cdFindGroundInfoAtCyl(struct coord *pos, f32 radius, RoomNum *rooms, u16 *floorcol, u8 *floortype, u16 *floorflags, RoomNum *floorroom, s32 *inlift, struct prop **lift);
f32 cdReturnZero(void);
f32 cdFindGroundAtCyl(struct coord *pos, f32 radius, s16 *rooms, u16 *floorcol, u8 *floortype);
f32 cdFindFloorYColourTypeAtPos(struct coord *pos, s16 *rooms, u16 *floorcol, u8 *floortype);
s32 cdFindFloorRoomAtPos(struct coord *pos, s16 *nearrooms);
f32 cdFindGroundAtCyl(struct coord *pos, f32 radius, RoomNum *rooms, u16 *floorcol, u8 *floortype);
f32 cdFindFloorYColourTypeAtPos(struct coord *pos, RoomNum *rooms, u16 *floorcol, u8 *floortype);
s32 cdFindFloorRoomAtPos(struct coord *pos, RoomNum *nearrooms);
#if VERSION >= VERSION_NTSC_1_0
s16 cdFindFloorRoomYColourFlagsAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcolptr, u16 *flagsptr);
s16 cdFindCeilingRoomYColourFlagsAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcolptr, u16 *flagsptr);
RoomNum cdFindFloorRoomYColourFlagsAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcolptr, u16 *flagsptr);
RoomNum cdFindCeilingRoomYColourFlagsAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcolptr, u16 *flagsptr);
#else
s16 cdFindFloorRoomYColourFlagsAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcolptr);
s16 cdFindCeilingRoomYColourFlagsAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcolptr);
RoomNum cdFindFloorRoomYColourFlagsAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcolptr);
RoomNum cdFindCeilingRoomYColourFlagsAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcolptr);
#endif
s16 cdFindFloorRoomYColourNormalPropAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcol, struct coord *normal, struct prop **propptr);
s16 cdFindCeilingRoomYColourFlagsNormalAtPos(struct coord *pos, s16 *rooms, f32 *arg2, u16 *floorcol, u16 *geoflags, struct coord *normal);
s32 cdTestVolume(struct coord *pos, f32 radius, s16 *rooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
s32 cdExamCylMove01(struct coord *pos, struct coord *pos2, f32 radius, s16 *rooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
s32 cdExamCylMove02(struct coord *origpos, struct coord *dstpos, f32 width, s16 *dstrooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
bool cdTestCylMove01(struct coord *pos, s16 *rooms, struct coord *targetpos, u32 types, u32 arg4, f32 ymax, f32 ymin);
s32 cdTestCylMove02(struct coord *pos, s16 *rooms, struct coord *coord2, s16 *rooms2, u32 types, bool arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove03(struct coord *pos, s16 *rooms, struct coord *arg2, u32 types, u32 arg4, f32 ymax, f32 ymin);
s32 cdTestCylMove04(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, u32 types, s32 arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove05(struct coord *pos, s16 *rooms, struct coord *pos2, s16 *rooms2, s32 types, bool arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove06(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, f32 arg4, s32 types, s32 arg6, f32 ymax, f32 ymin);
s32 cdExamCylMove07(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, u32 types, s32 arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove08(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, f32 width, u32 types, s32 arg6, f32 ymax, f32 ymin);
bool cdTestLos03(struct coord *viewpos, s16 *rooms, struct coord *targetpos, u32 types, u16 geoflags);
bool cdTestLos04(struct coord *coord, s16 *rooms, struct coord *coord2, s32 arg3);
bool cdTestLos05(struct coord *coord, s16 *rooms, struct coord *coord2, s16 *rooms2, s32 cdtypes, u16 geoflags);
bool cdTestLos06(struct coord *arg0, s16 *rooms1, struct coord *arg2, s16 *rooms2, u32 types);
bool cdTestLos07(struct coord *pos, s16 *rooms, struct coord *pos2, s16 *rooms2, s16 *rooms3, u32 types, u16 geoflags);
s32 cdExamLos08(struct coord *pos, s16 *rooms, struct coord *pos2, u32 types, u16 geoflags);
s32 cdExamLos09(struct coord *pos, s16 *rooms, struct coord *pos2, u32 types);
s32 cdTestLos10(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, u32 types, u16 geoflags);
s32 cdTestLos11(struct coord *arg0, s16 *arg1, struct coord *arg2, s16 *arg3, u32 types);
RoomNum cdFindFloorRoomYColourNormalPropAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcol, struct coord *normal, struct prop **propptr);
RoomNum cdFindCeilingRoomYColourFlagsNormalAtPos(struct coord *pos, RoomNum *rooms, f32 *arg2, u16 *floorcol, u16 *geoflags, struct coord *normal);
s32 cdTestVolume(struct coord *pos, f32 radius, RoomNum *rooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
s32 cdExamCylMove01(struct coord *pos, struct coord *pos2, f32 radius, RoomNum *rooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
s32 cdExamCylMove02(struct coord *origpos, struct coord *dstpos, f32 width, RoomNum *dstrooms, s32 types, bool checkvertical, f32 ymax, f32 ymin);
bool cdTestCylMove01(struct coord *pos, RoomNum *rooms, struct coord *targetpos, u32 types, u32 arg4, f32 ymax, f32 ymin);
s32 cdTestCylMove02(struct coord *pos, RoomNum *rooms, struct coord *coord2, RoomNum *rooms2, u32 types, bool arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove03(struct coord *pos, RoomNum *rooms, struct coord *arg2, u32 types, u32 arg4, f32 ymax, f32 ymin);
s32 cdTestCylMove04(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, u32 types, s32 arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove05(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *rooms2, s32 types, bool arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove06(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, f32 arg4, s32 types, s32 arg6, f32 ymax, f32 ymin);
s32 cdExamCylMove07(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, u32 types, s32 arg5, f32 ymax, f32 ymin);
s32 cdExamCylMove08(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, f32 width, u32 types, s32 arg6, f32 ymax, f32 ymin);
bool cdTestLos03(struct coord *viewpos, RoomNum *rooms, struct coord *targetpos, u32 types, u16 geoflags);
bool cdTestLos04(struct coord *coord, RoomNum *rooms, struct coord *coord2, s32 arg3);
bool cdTestLos05(struct coord *coord, RoomNum *rooms, struct coord *coord2, RoomNum *rooms2, s32 cdtypes, u16 geoflags);
bool cdTestLos06(struct coord *arg0, RoomNum *rooms1, struct coord *arg2, RoomNum *rooms2, u32 types);
bool cdTestLos07(struct coord *pos, RoomNum *rooms, struct coord *pos2, RoomNum *rooms2, RoomNum *rooms3, u32 types, u16 geoflags);
s32 cdExamLos08(struct coord *pos, RoomNum *rooms, struct coord *pos2, u32 types, u16 geoflags);
s32 cdExamLos09(struct coord *pos, RoomNum *rooms, struct coord *pos2, u32 types);
s32 cdTestLos10(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, u32 types, u16 geoflags);
s32 cdTestLos11(struct coord *arg0, RoomNum *arg1, struct coord *arg2, RoomNum *arg3, u32 types);
bool cd0002ded8(struct coord *arg0, struct coord *arg1, struct prop *prop);
s32 cdTestBlockOverlapsAnyProp(struct geoblock *geo, s16 *rooms, u32 types);
s32 cd0002f02c(struct geoblock *block, s16 *rooms, s32 types);
bool cdIsNearlyInSight(struct coord *viewpos, s16 *rooms, struct coord *targetpos, f32 distance, s32 arg4);
s32 cdTestBlockOverlapsAnyProp(struct geoblock *geo, RoomNum *rooms, u32 types);
s32 cd0002f02c(struct geoblock *block, RoomNum *rooms, s32 types);
bool cdIsNearlyInSight(struct coord *viewpos, RoomNum *rooms, struct coord *targetpos, f32 distance, s32 arg4);
#endif
+9 -9
View File
@@ -4,15 +4,15 @@
#include "data.h"
#include "types.h"
void joy00013900(void);
void joy00013938(void);
void joy00013974(u32 value);
u32 joy00013980(void);
void joy0001398c(s32 value);
void joy000139c8(void);
void joyLockCyclicPolling(void);
void joyUnlockCyclicPolling(void);
void joySetPfsPollEnabled(bool enabled);
bool joyIsPfsPollEnabled(void);
void joySetPfsPollInterval(s32 value);
void joySetDefaultPfsPollInterval(void);
s32 joyShiftPfsStates(void);
void joyRecordPfsState(u8 pfsstate);
void joyCheckPfs(s32 arg0);
void joyPollPfs(s32 force);
void joySetPfsTemporarilyPlugged(s8 index);
void joyInit(void);
void joyDisableTemporarily(void);
@@ -49,8 +49,8 @@ void joyEnableCyclicPolling(s32 line, char *file);
void joyDestroy(void);
void joyGetContpadNumsForPlayer(s8 playernum, s32 *pad1, s32 *pad2);
void joyStopRumble(s8 device, bool disablepolling);
s32 joy000155b4(s8 device);
s32 joy000155f4(s8 device);
s32 joyGetPakState(s8 device);
s32 joyGetPakState2(s8 device);
void joysTickRumble(void);
#endif
+2 -2
View File
@@ -9,8 +9,8 @@
#define PORTALINTERSECTION_FRONTTOBEHIND 2
void portalGetAvgVertexPos(s32 portalnum, struct coord *avg);
void portal00017dc4(s16 *rooms, s16 roomnum);
void portal00017dc4(RoomNum *rooms, RoomNum roomnum);
s32 portalCalculateIntersection(s32 portalnum, struct coord *pos1, struct coord *pos2);
void portal00018148(struct coord *pos, struct coord *pos2, s16 *rooms, s16 *arg3, s16 *arg4, s32 arg5);
void portal00018148(struct coord *pos, struct coord *pos2, RoomNum *rooms, RoomNum *arg3, RoomNum *arg4, s32 arg5);
#endif
+2 -2
View File
@@ -186,14 +186,14 @@
#define hoverbike(scale, model, pad, flags, flags2, flags3, maxdamage) \
_generic_object(0x33, scale, model, pad, flags, flags2, flags3, maxdamage), \
_mkword(_mkshort(HOVTYPE_BIKE, TRUE), 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
_mkword(_mkshort(HOVTYPE_BIKE, HOVFLAG_FIRSTTICK), 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
#define endprops \
0x34,
#define hover_prop(scale, model, pad, flags, flags2, flags3, maxdamage, hovtype) \
_generic_object(0x35, scale, model, pad, flags, flags2, flags3, maxdamage), \
_mkword(_mkshort(hovtype, TRUE), 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
_mkword(_mkshort(hovtype, HOVFLAG_FIRSTTICK), 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
#define fan(scale, model, pad, flags, flags2, flags3, maxdamage, maxspeed, accel, on) \
_generic_object(0x36, scale, model, pad, flags, flags2, flags3, maxdamage), \
+63 -80
View File
@@ -28,6 +28,7 @@ typedef s32 PakErr1;
typedef s32 PakErr2;
typedef s32 MenuDialogHandlerResult;
typedef intptr_t MenuItemHandlerResult;
typedef s16 RoomNum;
// Float version of a graphics matrix, which has higher precision than an Mtx.
// Matrices are stored as Mtxfs then converted to an Mtx when passed to the GPU.
@@ -231,8 +232,8 @@ struct g_vars {
/*0x4b8*/ struct prop *aibuddies[4];
/*0x4c8*/ u32 dontplaynrg; // allow X music to be played (NRG = energy track)
/*0x4cc*/ s32 in_cutscene;
/*0x4d0*/ u8 paksconnected;
/*0x4d1*/ u8 paksconnected2;
/*0x4d0*/ u8 paksneededformenu;
/*0x4d1*/ u8 paksneededforgame;
/*0x4d2*/ s8 autocutnum; // cutscene scene number (0, 1 or 2), set to -1 while loading cutscene
/*0x4d3*/ s8 autocutplaying; // true if playing a cutscene via the menu, false when a button is pressed
/*0x4d4*/ s8 autocutgroupcur; // index into g_Cutscenes
@@ -247,9 +248,9 @@ struct g_vars {
/*0x4e3*/ u8 langfilteron;
// 000f = Counter: if 10-15 then ticks down 1 per 7 frames, if under 10 then 1 per frame.
// 00f0 = One bit per pak. Does something with the pak if counter expired.
// 0f00 = One bit per pak. Does something with the pak if counter expired (likely opposite of the above).
/*0x4e4*/ u16 unk0004e4;
// 00f0 = One bit per pak. These paks are checked and ticked.
// 0f00 = One bit per pak. These paks are checked but not ticked.
/*0x4e4*/ u16 pakstocheck;
/*0x4e8*/ u32 unk0004e8;
/*0x4ec*/ u32 unk0004ec;
@@ -301,7 +302,7 @@ struct prop {
/*0x1c*/ struct prop *child;
/*0x20*/ struct prop *next;
/*0x24*/ struct prop *prev;
/*0x28*/ s16 rooms[8];
/*0x28*/ RoomNum rooms[8];
/*0x38*/ u16 lastupdateframe;
/*0x3a*/ u16 propupdate240;
/*0x3c*/ u8 propupdate60err;
@@ -753,7 +754,7 @@ struct aibot {
/*0x076*/ s16 lastkilledbyplayernum;
/*0x078*/ u8 forceslowupdates;
/*0x079*/ u8 command;
/*0x07a*/ s16 defendholdrooms[1];
/*0x07a*/ RoomNum defendholdrooms[1];
/*0x07c*/ u32 unk07c; // unused
/*0x080*/ u32 unk080; // unused
/*0x084*/ u32 unk084; // unused
@@ -785,7 +786,7 @@ struct aibot {
/*0x0e0*/ s16 reaperspeed[2];
/*0x0e4*/ f32 maulercharge[2];
/*0x0ec*/ struct coord gotopos;
/*0x0f8*/ s16 gotorooms[8];
/*0x0f8*/ RoomNum gotorooms[8];
/*0x108*/ struct coord shotspeed; // "boost" when aibot is shot
/*0x114*/ s32 feudplayernum;
/*0x118*/ s32 commandtimer60;
@@ -798,7 +799,7 @@ struct aibot {
/*0x13c*/ f32 chrdistances[MAX_MPCHRS];
/*0x16c*/ u8 chrsinsight[MAX_MPCHRS];
/*0x178*/ s32 chrslastseen60[MAX_MPCHRS];
/*0x1a8*/ s16 chrrooms[MAX_MPCHRS];
/*0x1a8*/ RoomNum chrrooms[MAX_MPCHRS];
/*0x1c0*/ f32 extraangle;
/*0x1c4*/ f32 extraanglerate;
/*0x1c8*/ f32 extraanglebase;
@@ -1055,7 +1056,7 @@ struct act_patrol {
struct act_gopos {
/*0x02c*/ struct coord endpos;
/*0x038*/ s16 endrooms[8];
/*0x038*/ RoomNum endrooms[8];
/*0x048*/ struct waypoint *target; // Target/final waypoint
// Array of pointers to the next couple of waypoints. Recalculated each time
@@ -1258,9 +1259,9 @@ struct chrdata {
/*0x2ae*/ u16 unk2ae;
/*0x2b0*/ u8 tude;
/*0x2b1*/ u8 voicebox;
/*0x2b2*/ s16 floorroom;
/*0x2b2*/ RoomNum floorroom;
/*0x2b4*/ u32 unk2b4;
/*0x2b8*/ s16 oldrooms[8];
/*0x2b8*/ RoomNum oldrooms[8];
/*0x2c8*/ struct coord runfrompos;
/*0x2d4*/ struct aibot *aibot;
/*0x2d8*/ s16 blurdrugamount;
@@ -1433,21 +1434,21 @@ struct tvscreen {
struct hov {
/*0x00*/ u8 type;
/*0x01*/ u8 flags;
/*0x04*/ f32 unk04;
/*0x08*/ f32 unk08;
/*0x0c*/ f32 unk0c;
/*0x10*/ f32 unk10;
/*0x14*/ f32 unk14;
/*0x18*/ f32 unk18;
/*0x1c*/ f32 unk1c;
/*0x20*/ f32 unk20;
/*0x24*/ f32 unk24;
/*0x28*/ f32 unk28;
/*0x2c*/ f32 unk2c;
/*0x30*/ f32 unk30;
/*0x04*/ f32 bobycur;
/*0x08*/ f32 bobytarget;
/*0x0c*/ f32 bobyspeed;
/*0x10*/ f32 yrot;
/*0x14*/ f32 bobpitchcur;
/*0x18*/ f32 bobpitchtarget;
/*0x1c*/ f32 bobpitchspeed;
/*0x20*/ f32 bobrollcur;
/*0x24*/ f32 bobrolltarget;
/*0x28*/ f32 bobrollspeed;
/*0x2c*/ f32 groundpitch;
/*0x30*/ f32 y;
/*0x34*/ f32 ground;
/*0x38*/ s32 nexttick60; // framenum of when next tick should occur
/*0x3c*/ s32 prevtick60; // framenum of when hov was last ticked
/*0x38*/ s32 prevframe60;
/*0x3c*/ s32 prevgroundframe60;
};
struct defaultobj {
@@ -2478,7 +2479,7 @@ struct player {
/*0x0278*/ f32 shieldshowrot;
/*0x027c*/ u32 shieldshowrnd;
/*0x0280*/ f32 shieldshowtime;
/*0x0284*/ s16 bondprevrooms[8];
/*0x0284*/ RoomNum bondprevrooms[8];
/*0x0294*/ f32 liftground;
/*0x0298*/ struct prop *lift;
/*0x029c*/ f32 ladderupdown;
@@ -2674,7 +2675,7 @@ struct player {
/*0x19a4*/ f32 speedgo;
/*0x19a8*/ s32 sighttimer240;
/*0x19ac*/ s32 crouchoffsetreal;
/*0x19b0*/ s16 floorroom;
/*0x19b0*/ RoomNum floorroom;
/*0x19b2*/ u8 unk19b2;
/*0x19b3*/ u8 dostartnewlife;
/*0x19b4*/ f32 crouchoffsetsmall;
@@ -2820,7 +2821,7 @@ struct coverdefinition {
struct cover {
/*0x00*/ struct coord *pos;
/*0x04*/ struct coord *look;
/*0x08*/ s16 rooms[2];
/*0x08*/ RoomNum rooms[2];
/*0x0c*/ u16 flags;
};
@@ -4450,7 +4451,7 @@ struct scenariodata_koh {
/*0x800ac118*/ s16 movehill;
/*0x800ac11a*/ s16 hillindex;
/*0x800ac11c*/ s16 hillcount;
/*0x800ac11e*/ s16 hillrooms[2];
/*0x800ac11e*/ RoomNum hillrooms[2];
/*0x800ac122*/ s16 hillpads[9];
/*0x800ac134*/ struct coord hillpos;
/*0x800ac140*/ f32 colourfracr;
@@ -4467,7 +4468,7 @@ struct ctcspawnpadsperteam {
struct scenariodata_ctc {
/*0x00*/ s16 playercountsperteam[4];
/*0x08*/ s16 teamindexes[4];
/*0x10*/ s16 baserooms[4];
/*0x10*/ RoomNum baserooms[4];
/*0x18*/ struct ctcspawnpadsperteam spawnpadsperteam[4];
/*0x58*/ struct prop *tokens[4];
};
@@ -4616,8 +4617,8 @@ struct explosionpart {
struct explosionbb {
struct coord bbmin;
struct coord bbmax;
s16 room;
s16 room2;
RoomNum room;
RoomNum room2;
};
struct explosion {
@@ -4625,7 +4626,7 @@ struct explosion {
struct prop *source; // Prop of the thing that created the explosion
struct explosionpart parts[40];
/*0x3c8*/ s16 age;
/*0x3ca*/ s16 room;
/*0x3ca*/ RoomNum room;
/*0x3cc*/ s8 type;
/*0x3cd*/ s8 makescorch;
/*0x3ce*/ s8 owner;
@@ -4714,12 +4715,12 @@ struct pak {
/*0x004*/ u32 rumblestate;
/*0x008*/ u32 unk008;
/*0x00c*/ u32 unk00c;
/*0x010*/ s32 unk010;
/*0x014*/ u8 unk014;
/*0x010*/ s32 state;
/*0x014*/ u8 features;
/*0x018*/ struct pakdata pakdata;
/*0x25c*/ u32 maxfileid;
/*0x260*/ u32 serial;
/*0x264*/ u32 unk264;
/*0x264*/ u32 plugcount;
/*0x268*/ u32 unk268;
/*0x26c*/ u32 unk26c;
/*0x270*/ u32 unk270;
@@ -4746,7 +4747,7 @@ struct pak {
/*0x2b8*/ u8 isgbpd : 1;
/*0x2b8*/ u8 unk2b8_05 : 1;
/*0x2b8*/ u8 unk2b8_06 : 1;
/*0x2b8*/ u8 unk2b8_07 : 1;
/*0x2b8*/ u8 showdatalost : 1;
/*0x2b9*/ u8 unk2b9;
/*0x2ba*/ u8 unk2ba;
/*0x2bb*/ u8 unk2bb;
@@ -4836,13 +4837,13 @@ struct animtable {
s32 injuryanimcount;
};
struct var80075c00 {
struct headanim {
s16 animnum;
f32 loopframe;
f32 endframe;
f32 unk0c;
f32 unk10;
f32 unk14;
f32 translateperframe;
f32 minspeed;
f32 maxspeed;
};
struct vimode {
@@ -5161,7 +5162,7 @@ struct bgcmd {
};
struct drawslot {
s16 roomnum;
RoomNum roomnum;
u8 unk02;
u8 draworder;
struct screenbox box;
@@ -5178,8 +5179,8 @@ struct zrange {
};
struct bgsnakeitem {
/*0x00*/ s16 roomnum;
/*0x02*/ s16 fromroomnums[5];
/*0x00*/ RoomNum roomnum;
/*0x02*/ RoomNum fromroomnums[5];
/*0x0c*/ u8 depth;
/*0x0d*/ u8 numportals;
/*0x0e*/ s16 roomportallistoffset;
@@ -5625,7 +5626,7 @@ struct var80067e6c {
};
struct shard {
/*0x00*/ s16 room;
/*0x00*/ RoomNum room;
/*0x04*/ s32 age60;
/*0x08*/ struct coord pos;
/*0x14*/ struct coord rot;
@@ -5670,7 +5671,7 @@ struct pschannel {
/*0x50*/ struct prop *prop;
/*0x54*/ struct coord *posptr;
/*0x58*/ struct coord pos;
/*0x64*/ s16 rooms[8];
/*0x64*/ RoomNum rooms[8];
#if VERSION >= VERSION_NTSC_1_0
/*0x74*/ u32 uuid;
#endif
@@ -5708,7 +5709,7 @@ struct wallhit {
/*0x5c*/ struct prop *chrprop;
/*0x60*/ struct prop *objprop;
/*0x64*/ Vtx *vertices2; // overridden vertices for when blood is expanding
/*0x68*/ s16 roomnum;
/*0x68*/ RoomNum roomnum;
/*0x6a*/ u8 texturenum;
/*0x6b*/ u8 unk6b;
/*0x6c*/ u8 mtxindex;
@@ -5818,7 +5819,6 @@ typedef struct AudioInfo_s {
short *data; /* Output data pointer */
short frameSamples; /* # of samples synthesized in this frame */
OSScTask task; /* scheduler structure */
AudioMsg msg; /* completion message */
} AudioInfo;
typedef struct {
@@ -5926,12 +5926,7 @@ struct mp3vars {
/*0x38*/ struct mp3thing *var8009c3c8;
/*0x3c*/ s32 var8009c3cc;
/*0x40*/ s32 var8009c3d0;
union {
/*0x44*/ u32 *var8009c3d4;
/*0x44*/ u32 *var8009c3d4_arr[1];
};
/*0x44*/ u32 *var8009c3d4[1];
/*0x48*/ u32 var8009c3d8;
/*0x4c*/ void *var8009c3dc;
/*0x50*/ u32 var8009c3e0;
@@ -5943,18 +5938,6 @@ struct mp3vars {
/*0x61*/ u8 var8009c3f1;
};
struct sndcache {
/*0x0000*/ u16 *indexes; // indexed by sfxnum, value is cache index (0-44) or 0xffff
/*0x0004*/ u8 refcounts[45];
/*0x0032*/ u16 ages[45];
/*0x008c*/ ALEnvelope envelopes[45];
/*0x035c*/ ALKeyMap keymaps[45];
/*0x046c*/ ALWaveTable wavetables[45];
/*0x07f0*/ ALADPCMBook books[45];
/*0x3658*/ ALADPCMloop loops[45];
/*0x3e14*/ ALSound sounds[45];
};
struct rdptask {
OSScTask sctask;
u16 *framebuffer;
@@ -6313,19 +6296,19 @@ struct skyvtx2d {
};
struct hovtype {
/*0x00*/ f32 unk00;
/*0x04*/ f32 unk04;
/*0x08*/ f32 unk08;
/*0x0c*/ f32 unk0c;
/*0x10*/ f32 unk10;
/*0x14*/ f32 unk14;
/*0x18*/ f32 unk18;
/*0x1c*/ f32 unk1c;
/*0x20*/ f32 unk20;
/*0x24*/ f32 unk24;
/*0x28*/ f32 unk28;
/*0x2c*/ f32 unk2c;
/*0x30*/ f32 unk30;
/*0x00*/ f32 bobymid;
/*0x04*/ f32 bobyminradius;
/*0x08*/ f32 bobyrandradius;
/*0x0c*/ f32 bobyaccel;
/*0x10*/ f32 bobymaxspeed;
/*0x14*/ f32 bobpitchminangle;
/*0x18*/ f32 bobpitchrandangle;
/*0x1c*/ f32 bobpitchaccel;
/*0x20*/ f32 bobpitchmaxspeed;
/*0x24*/ f32 bobrollminangle;
/*0x28*/ f32 bobrollrandangle;
/*0x2c*/ f32 bobrollaccel;
/*0x30*/ f32 bobrollmaxspeed;
};
struct modelrwdatabinding {