diff --git a/include/functions.h b/include/functions.h index 4fb6f535..d974be43 100644 --- a/include/functions.h +++ b/include/functions.h @@ -22,10 +22,10 @@ void func_8000FFCC(void); u8* func_8001C3EC(void); void func_80016A50(void); void func_800182F4(s32); -void func_80019218(u32, Vec3f*, u8, f32*, f32*, s8*); +void Audio_PlaySfx(u32, Vec3f*, u8, f32*, f32*, s8*); void func_80019290(s32, Vec3f**); void func_8001A38C(u8, Vec3f*); -void func_8001A500(Vec3f* sfxPos); +void Audio_KillSfx(Vec3f*); void func_8001A55C(Vec3f*, u32); void func_8001A838(u32); void func_8001ACDC(s32); @@ -37,7 +37,7 @@ void func_8001C8B8(u8); void func_8001CA24(u8); void func_8001CB80(u8, u8); void func_8001CCDC(u8, Vec3f *); -void func_8001D1C8(s32, s32); +void func_8001D1C8(u8, s32); void func_8001D2FC(Vec3f *, u16); void func_8001D3A0(Vec3f *, u16); void func_8001D400(s8); @@ -110,7 +110,7 @@ void func_80035448(Object_2F4*); //sf_36930 void PlayerShot_Initialize(PlayerShot *); void func_800365E4(f32, f32, f32, f32, f32, f32, f32, f32, f32, s32, s32); -void func_8003D9B8(); +void func_8003D9B8(void); void func_8003DA0C(void); void func_8003DAF0(void); void func_8003DE68(s32, s32); @@ -155,7 +155,7 @@ void func_800596C0(void); void func_800596B0(Object_2F4*); // fox_edisplay -void func_8005980C(f32); +void Graphics_SetScaleMtx(f32); void func_80059850(Object_4C*); void func_800598E8(Object_2F4*); void func_80059A24(Object_2F4*); @@ -199,7 +199,7 @@ void func_80060D94(s32); void func_80060F30(Vec3f* , u32 , s32 ); void Object_Kill(Object*, Vec3f*); s32 func_80060FE4(Vec3f*, f32); -void Object_SetInfo(ObjectInfo* info, u32 objId); +void Object_SetInfo(ObjectInfo*, u32); void Object_80_Initialize(Object_80*); void Object_4C_Initialize(Object_4C*); void Object_2F4_Initialize(Object_2F4*); @@ -210,7 +210,7 @@ void func_80061B68(void); void func_80061CD0(void); void func_80061E48(Object_2F4* , f32 , f32 , f32 ); void func_80061F0C(Object_2F4* , ObjectInit* , s32 ); -void Object_Spawn(ObjectInit* , f32 , f32 , f32 , f32 ); +void Object_Load(ObjectInit* , f32 , f32 , f32 , f32 ); void func_80062568(void); void func_80062C38(f32, f32); s32 func_800631A8(Vec3f*, f32*, Vec3f*); @@ -327,7 +327,7 @@ void func_8007A28C(Object_8C* ); void func_8007A3C0(Object_8C* ); void func_8007A568(f32 xPos, f32 yPos, f32 zPos, f32 ); void func_8007A5F8(Object_8C* , Vec3f* , u32 ); -void func_8007A6F0(Vec3f *, u32); +void func_8007A6F0(Vec3f *, s32); void func_8007A748(Object_8C*); s32 func_8007A774(Player*, Object_8C*, f32); void func_8007A818(Object_8C*, f32 posX, f32 posY, f32 posZ, f32, u8, u8, u16); @@ -490,7 +490,7 @@ void func_800A5FA0(Vec3f* , u32 , s32 ); void func_800A6070(Vec3f* arg0, u32 arg1); void func_800A6148(void); void func_800A69F8(s32 , f32 , f32 , f32 ); -void func_800A6CD0(Player *, s32, s32); +void Player_ApplyDamage(Player *, s32, s32); bool func_800A73E4(f32* , s32* , f32 posX, f32 posY, f32 posZ); s32 func_800A78C4(Hitbox* hitbox, f32 , f32 , f32 , f32 , f32 , f32 ); void func_800A8BA4(Player* player); @@ -544,6 +544,23 @@ void func_DF4260_80198310(Object_408 *); void func_DF4260_801988E0(void); void func_DF4260_8018ED78(Object_408*); +void func_E9F1D0_80189214(void); +void func_E9F1D0_8018BDD8(void); +void func_E9F1D0_8018C390(Player*); +void func_DF4260_80198C50(void); +void func_DF4260_8019949C(void); +void func_E16C50_8019E8B8(f32, f32, f32, f32); +void func_E9F1D0_801A5AD4(Player*); +void func_E9F1D0_801A5FC0(Player*); +void func_E16C50_801AA8E8(Player*); +void func_E16C50_801AACF8(Player*); +void func_E16C50_801AC274(Player*); +void func_E16C50_801ACE50(Player*); +void func_E6A810_801ACFBC(ObjectInit*); +void func_E6A810_801AD080(void); +void func_E16C50_801AD328(Player*); +void func_E16C50_801BEC80(Player*); + void func_E08400_80187B08(Object_2F4 *); void func_E08400_80188A40(Object_408 *); void func_E08400_8018CCF8(Object_2F4 *); diff --git a/include/hud.h b/include/hud.h index 77d658d5..cff9db5d 100644 --- a/include/hud.h +++ b/include/hud.h @@ -67,7 +67,7 @@ extern s32 D_801617FC; extern s32 gHitCount; extern s32 D_80177838; extern s32 D_80177854; -extern s32 gAllRangeMode; +extern s32 gLevelMode; extern s32 gTeamShields[]; extern s32 D_801778BC; extern s32 gVersusMode; diff --git a/include/sf64level.h b/include/sf64level.h index f1f48b97..5fcf611e 100644 --- a/include/sf64level.h +++ b/include/sf64level.h @@ -8,10 +8,10 @@ #define SAVE_SLOT_VENOM_2 15 typedef enum { - LEVELTYPE_GROUND, - LEVELTYPE_SPACE, - LEVELTYPE_UNK2, - LEVELTYPE_UNK3, + /* 0 */ LEVELTYPE_PLANET, + /* 1 */ LEVELTYPE_SPACE, + /* 2 */ LEVELTYPE_UNK2, + /* 3 */ LEVELTYPE_UNK3, } LevelType; typedef struct { @@ -31,49 +31,49 @@ typedef struct { /* 0x38 */ s32 ambR; /* 0x3C */ s32 ambG; /* 0x40 */ s32 ambB; -} EnvSettings; // size = 0x44? +} EnvSettings; // size = 0x44 typedef enum { - OVL_SETUP_TITLE, - OVL_SETUP_MENU, - OVL_SETUP_MAP, - OVL_SETUP_STATE_5, - OVL_SETUP_CREDITS, - OVL_SETUP_CORNERIA, - OVL_SETUP_METEO, - OVL_SETUP_TITANIA, - OVL_SETUP_SECTOR_X, - OVL_SETUP_AQUAS, - OVL_SETUP_AREA_6, - OVL_SETUP_FORTUNA, - OVL_SETUP_UNK_4, - OVL_SETUP_SECTOR_Y, - OVL_SETUP_SOLAR, - OVL_SETUP_ZONESS, - OVL_SETUP_VENOM_2, - OVL_SETUP_TRAINING, - OVL_SETUP_VENOM_1, - OVL_SETUP_KATINA, - OVL_SETUP_20, - OVL_SETUP_MACBETH, - OVL_SETUP_BOLSE, - OVL_SETUP_SECTOR_Z, - OVL_SETUP_VENOM_SW, - OVL_SETUP_VERSUS = 50, - OVL_SETUP_LOGO = 99, + /* 0 */ OVL_SETUP_TITLE, + /* 1 */ OVL_SETUP_MENU, + /* 2 */ OVL_SETUP_MAP, + /* 3 */ OVL_SETUP_STATE_5, + /* 4 */ OVL_SETUP_CREDITS, + /* 5 */ OVL_SETUP_CORNERIA, + /* 6 */ OVL_SETUP_METEO, + /* 7 */ OVL_SETUP_TITANIA, + /* 8 */ OVL_SETUP_SECTOR_X, + /* 9 */ OVL_SETUP_AQUAS, + /* 10 */ OVL_SETUP_AREA_6, + /* 11 */ OVL_SETUP_FORTUNA, + /* 12 */ OVL_SETUP_UNK_4, + /* 13 */ OVL_SETUP_SECTOR_Y, + /* 14 */ OVL_SETUP_SOLAR, + /* 15 */ OVL_SETUP_ZONESS, + /* 16 */ OVL_SETUP_VENOM_ANDROSS, + /* 17 */ OVL_SETUP_TRAINING, + /* 18 */ OVL_SETUP_VENOM_1, + /* 19 */ OVL_SETUP_KATINA, + /* 10 */ OVL_SETUP_20, + /* 11 */ OVL_SETUP_MACBETH, + /* 12 */ OVL_SETUP_BOLSE, + /* 13 */ OVL_SETUP_SECTOR_Z, + /* 14 */ OVL_SETUP_VENOM_2, + /* 50 */ OVL_SETUP_VERSUS = 50, + /* 99 */ OVL_SETUP_LOGO = 99, } OverlaySetups; typedef enum LevelId { - /* 0 */ LEVEL_CORNERIA, - /* 1 */ LEVEL_METEO, - /* 2 */ LEVEL_SECTOR_X, - /* 3 */ LEVEL_AREA_6, - /* 4 */ LEVEL_UNK_4, - /* 5 */ LEVEL_SECTOR_Y, - /* 6 */ LEVEL_VENOM_1, - /* 7 */ LEVEL_SOLAR, - /* 8 */ LEVEL_ZONESS, - /* 9 */ LEVEL_VENOM_2, + /* 0 */ LEVEL_CORNERIA, + /* 1 */ LEVEL_METEO, + /* 2 */ LEVEL_SECTOR_X, + /* 3 */ LEVEL_AREA_6, + /* 4 */ LEVEL_UNK_4, + /* 5 */ LEVEL_SECTOR_Y, + /* 6 */ LEVEL_VENOM_1, + /* 7 */ LEVEL_SOLAR, + /* 8 */ LEVEL_ZONESS, + /* 9 */ LEVEL_VENOM_ANDROSS, /* 10 */ LEVEL_TRAINING, /* 11 */ LEVEL_MACBETH, /* 12 */ LEVEL_TITANIA, @@ -83,14 +83,14 @@ typedef enum LevelId { /* 16 */ LEVEL_KATINA, /* 17 */ LEVEL_BOLSE, /* 18 */ LEVEL_SECTOR_Z, - /* 19 */ LEVEL_VENOM_SW, - /* 80 */ LEVEL_VERSUS, + /* 19 */ LEVEL_VENOM_2, + /* 20 */ LEVEL_VERSUS, } LevelId; typedef enum { - VSTAGE_CORNERIA, - VSTAGE_KATINA, - VSTAGE_SECTOR_Z, + /* 0 */ VS_STAGE_CORNERIA, + /* 1 */ VS_STAGE_KATINA, + /* 2 */ VS_STAGE_SECTOR_Z, } VsStage; #endif diff --git a/include/sf64object.h b/include/sf64object.h index 86a8566f..cbe3164d 100644 --- a/include/sf64object.h +++ b/include/sf64object.h @@ -4,6 +4,10 @@ #include "libultra/ultra64.h" #include "sf64math.h" +#define HITBOX_UNK_2 200000.0f +#define HITBOX_UNK_3 300000.0f +#define HITBOX_UNK_4 400000.0f + typedef struct { /* 0x00 */ f32 zPos1; /* 0x04 */ s16 zPos2; @@ -69,7 +73,7 @@ typedef struct { /* 0x40 */ s32 index; /* 0x44 */ s32 unk_44; /* 0x48 */ s32 unk_48; - /* 0x4C */ s32 unk_4C; + /* 0x4C */ s32 timer_4C; /* 0x50 */ u8 unk_50; /* 0x51 */ char pad51[3]; /* 0x54 */ s32 unk_54; @@ -96,15 +100,15 @@ typedef struct { /* 0x40 */ s32 index; /* 0x44 */ s16 unk_44; /* 0x46 */ u8 unk_46; - /* 0x48 */ u16 unk_48; - /* 0x4A */ u16 unk_4A; + /* 0x48 */ u16 timer_48; + /* 0x4A */ u16 timer_4A; /* 0x4C */ s8 unk_4C; /* 0x4E */ s16 unk_4E; /* 0x50 */ f32 unk_50; /* 0x54 */ f32 unk_54; /* 0x58 */ f32 unk_58; /* 0x5C */ Vec3f sfxPos; - /* 0x68 */ f32 unk_68; + /* 0x68 */ f32 scale; } Item; // size 0x6C typedef struct { @@ -117,12 +121,12 @@ typedef struct { /* 0x4A */ s16 unk_4A; /* 0x4C */ u8 unk_4C; /* 0x4E */ s16 unk_4E; - /* 0x50 */ u16 unk_50; + /* 0x50 */ u16 timer_50; /* 0x52 */ char pad52[0x2]; /* 0x54 */ Vec3f unk_54; /* 0x60 */ Vec3f unk_60; - /* 0x6C */ f32 unk_6C; - /* 0x70 */ f32 unk_70; + /* 0x6C */ f32 scale1; + /* 0x70 */ f32 scale2; /* 0x74 */ Gfx* unk_74; /* 0x78 */ s16 unk_78; /* 0x7A */ s16 unk_7A; @@ -136,13 +140,13 @@ typedef struct { /* 0x040 */ s32 index; /* 0x044 */ char unk_44[0xA]; /* 0x04E */ s16 unk_04E; - /* 0x050 */ s16 unk_050; - /* 0x052 */ s16 unk_052; - /* 0x054 */ s16 unk_054; - /* 0x056 */ s16 unk_056; - /* 0x058 */ s16 unk_058; - /* 0x05A */ s16 unk_05A; - /* 0x05C */ s16 unk_05C; + /* 0x050 */ s16 timer_050; + /* 0x052 */ s16 timer_052; + /* 0x054 */ s16 timer_054; + /* 0x056 */ s16 timer_056; + /* 0x058 */ s16 timer_058; + /* 0x05A */ s16 timer_05A; + /* 0x05C */ s16 timer_05C; /* 0x05E */ u8 unk_05E; /* 0x05F */ char pad5F[3]; /* 0x062 */ s8 unk_062; @@ -202,7 +206,7 @@ typedef struct { /* 0x046 */ s16 unk_046; /* 0x048 */ s16 unk_048; /* 0x04A */ s16 unk_04A; - /* 0x04C */ s16 unk_04C; + /* 0x04C */ s16 timer_04C; /* 0x04E */ s16 unk_04E; /* 0x050 */ bool unk_050; /* 0x054 */ bool unk_054; @@ -230,15 +234,15 @@ typedef struct { /* 0x0B6 */ s16 unk_0B6; /* 0x0B8 */ s16 unk_0B8; /* 0x0BA */ char pad0BA[0x2]; - /* 0x0BC */ u16 unk_0BC; - /* 0x0BC */ u16 unk_0BE; - /* 0x0C0 */ u16 unk_0C0; - /* 0x0C2 */ u16 unk_0C2; - /* 0x0C4 */ u16 unk_0C4; - /* 0x0C6 */ u16 unk_0C6; + /* 0x0BC */ u16 timer_0BC; + /* 0x0BC */ u16 timer_0BE; + /* 0x0C0 */ u16 timer_0C0; + /* 0x0C2 */ u16 timer_0C2; + /* 0x0C4 */ u16 timer_0C4; + /* 0x0C6 */ u16 timer_0C6; /* 0x0C8 */ u8 unk_0C8; /* 0x0C9 */ u8 unk_0C9; - /* 0x0C9 */ u8 unk_0CA[4]; + /* 0x0C9 */ u8 timer_0CA[4]; /* 0x0CE */ s16 unk_0CE; /* 0x0D0 */ s8 unk_0D0; /* 0x0D1 */ s16 unk_0D2; @@ -251,7 +255,7 @@ typedef struct { /* 0x0F4 */ Vec3f unk_0F4; /* 0x100 */ Vec3f sfxPos; /* 0x10C */ f32 unk_10C; - /* 0x110 */ f32 unk_110; + /* 0x110 */ f32 scale; /* 0x114 */ f32 unk_114; /* 0x118 */ f32 unk_118; /* 0x11C */ f32 unk_11C; @@ -621,7 +625,7 @@ typedef enum{ /* 331 */ OBJ_ITEM_331, /* 332 */ OBJ_ITEM_332, /* 333 */ OBJ_ITEM_333, - /* 334 */ OBJ_ITEM_CORN_ARCH, + /* 334 */ OBJ_ITEM_334, /* 335 */ OBJ_ITEM_1UP, /* 336 */ OBJ_ITEM_GOLD_RING, /* 337 */ OBJ_ITEM_WING_REPAIR, diff --git a/include/sf64player.h b/include/sf64player.h index f8153a9f..9fe68ac3 100644 --- a/include/sf64player.h +++ b/include/sf64player.h @@ -4,12 +4,55 @@ #include "sf64math.h" #include "sf64object.h" -typedef enum { - WINGSTATE_NONE, - WINGSTATE_BROKEN, - WINGSTATE_INTACT, +typedef enum WingState { + /* 0 */ WINGSTATE_NONE, + /* 1 */ WINGSTATE_BROKEN, + /* 2 */ WINGSTATE_INTACT, } WingState; +typedef enum PlayerForm { + /* 0 */ FORM_ARWING, + /* 1 */ FORM_LANDMASTER, + /* 2 */ FORM_BLUE_MARINE, + /* 3 */ FORM_ON_FOOT, + /* 4 */ FORM_UNK_4, +} PlayerForm; + +typedef enum DrawMode { + /* 0 */ DRAWMODE_0, + /* 1 */ DRAWMODE_1, + /* 2 */ DRAWMODE_2, + /* 3 */ DRAWMODE_3, + /* 4 */ DRAWMODE_4, + /* 5 */ DRAWMODE_5, + /* 6 */ DRAWMODE_6, + /* 7 */ DRAWMODE_7, + /* 8 */ DRAWMODE_8, +} DrawMode; + +typedef enum LevelMode { + /* 0 */ LEVELMODE_ON_RAILS, + /* 1 */ LEVELMODE_ALL_RANGE, + /* 2 */ LEVELMODE_UNK_2, +} LevelMode; + +typedef enum PlayerState1C8 { + /* 0 */ PLAYERSTATE_1C8_0, + /* 1 */ PLAYERSTATE_1C8_1, + /* 2 */ PLAYERSTATE_1C8_2, + /* 3 */ PLAYERSTATE_1C8_3, + /* 4 */ PLAYERSTATE_1C8_4, + /* 5 */ PLAYERSTATE_1C8_5, + /* 6 */ PLAYERSTATE_1C8_6, + /* 7 */ PLAYERSTATE_1C8_7, + /* 8 */ PLAYERSTATE_1C8_8, + /* 9 */ PLAYERSTATE_1C8_9, + /* 10 */ PLAYERSTATE_1C8_10, + /* 11 */ PLAYERSTATE_1C8_11, + /* 12 */ PLAYERSTATE_1C8_12, + /* 13 */ PLAYERSTATE_1C8_13, +} PlayerState1C8; + typedef struct { /* 0x00 */ u8 rightState; /* 0x01 */ u8 leftState; @@ -30,16 +73,16 @@ typedef struct { } WingInfo; // size = 0x3C typedef enum { - PLAYERSHOT_0, - PLAYERSHOT_1, - PLAYERSHOT_2, - PLAYERSHOT_3, - PLAYERSHOT_4, - PLAYERSHOT_5, - PLAYERSHOT_6, - PLAYERSHOT_7, - PLAYERSHOT_8, - PLAYERSHOT_9, + /* 0 */ PLAYERSHOT_0, + /* 1 */ PLAYERSHOT_1, + /* 2 */ PLAYERSHOT_2, + /* 3 */ PLAYERSHOT_3, + /* 4 */ PLAYERSHOT_4, + /* 5 */ PLAYERSHOT_5, + /* 6 */ PLAYERSHOT_6, + /* 7 */ PLAYERSHOT_7, + /* 8 */ PLAYERSHOT_8, + /* 9 */ PLAYERSHOT_9, } PlayerShotId; typedef struct { @@ -59,7 +102,7 @@ typedef struct { /* 0x5C */ s32 unk_5C; /* 0x60 */ s32 unk_60; /* 0x64 */ s32 unk_64; - /* 0x68 */ s32 unk_68; + /* 0x68 */ s32 playerNum; /* 0x6C */ char pad6C[4]; } PlayerShot; // size = 0x70 @@ -75,11 +118,11 @@ typedef struct Player { /* 0x020 */ char pad20[8]; /* 0x028 */ f32 unk_028; /* 0x02C */ f32 unk_02C; - /* 0x030 */ char pad30[4]; + /* 0x030 */ f32 unk_030; /* 0x034 */ f32 unk_034; /* 0x038 */ char pad38[8]; - /* 0x040 */ Vec3f unk_040; - /* 0x04C */ Vec3f unk_04C; + /* 0x040 */ Vec3f camEye; + /* 0x04C */ Vec3f camAt; /* 0x058 */ f32 unk_058; /* 0x05C */ f32 unk_05C; /* 0x05C */ f32 unk_060; @@ -87,14 +130,12 @@ typedef struct Player { /* 0x068 */ f32 unk_068; /* 0x06C */ f32 unk_06C; /* 0x070 */ f32 unk_070; - /* 0x074 */ f32 unk_074; - /* 0x078 */ f32 unk_078; - /* 0x07C */ f32 unk_07C; + /* 0x074 */ Vec3f pos; /* 0x080 */ f32 unk_080; /* 0x084 */ f32 unk_084; /* 0x088 */ f32 unk_088; - /* 0x08C */ Vec3f unk_08C; - /* 0x098 */ f32 unk_098; + /* 0x08C */ f32 unk_08C; + /* 0x090 */ Vec3f unk_090; /* 0x09C */ f32 unk_09C; /* 0x0A0 */ f32 unk_0A0; /* 0x0A4 */ f32 unk_0A4; @@ -104,7 +145,7 @@ typedef struct Player { /* 0x0B4 */ f32 unk_0B4; /* 0x0B8 */ f32 unk_0B8; /* 0x0BC */ f32 unk_0BC; - /* 0x0C0 */ Vec3f unk_0C0; + /* 0x0C0 */ Vec3f vel; /* 0x0CC */ f32 unk_0CC; /* 0x0D0 */ f32 unk_0D0; /* 0x0D4 */ f32 unk_0D4; @@ -159,31 +200,31 @@ typedef struct Player { /* 0x1A0 */ s32 unk_1A0; /* 0x1A4 */ s32 unk_1A4; /* 0x1A8 */ char pad1A8[0x1C]; - /* 0x1C4 */ s32 unk_1C4; - /* 0x1C8 */ s32 unk_1C8; - /* 0x1CC */ s32 unk_1CC; + /* 0x1C4 */ s32 num; + /* 0x1C8 */ s32 state_1C8; + /* 0x1CC */ s32 form; /* 0x1D0 */ s32 unk_1D0; /* 0x1D4 */ s32 unk_1D4; /* 0x1D8 */ char pad1D8[4]; /* 0x1DC */ s32 unk_1DC; - /* 0x1E0 */ s32 unk_1E0; - /* 0x1E4 */ s32 unk_1E4; - /* 0x1E8 */ s32 unk_1E8; + /* 0x1E0 */ s32 timer_1E0; + /* 0x1E4 */ s32 timer_1E4; + /* 0x1E8 */ s32 timer_1E8; /* 0x1EC */ s32 unk_1EC; /* 0x1F0 */ s32 unk_1F0; /* 0x1F4 */ s32 unk_1F4; - /* 0x1F8 */ s32 unk_1F8; - /* 0x1FC */ s32 unk_1FC; + /* 0x1F8 */ s32 timer_1F8; + /* 0x1FC */ s32 timer_1FC; /* 0x200 */ s32 unk_200; /* 0x204 */ s32 unk_204; /* 0x208 */ char pad208[4]; /* 0x20C */ s32 unk_20C; - /* 0x210 */ s32 unk_210; - /* 0x214 */ s32 unk_214; - /* 0x218 */ s32 unk_218; + /* 0x210 */ s32 timer_210; + /* 0x214 */ s32 timer_214; + /* 0x218 */ s32 timer_218; /* 0x21C */ s32 unk_21C; - /* 0x220 */ s32 unk_220; - /* 0x224 */ s32 unk_224; + /* 0x220 */ s32 timer_220; + /* 0x224 */ s32 timer_224; /* 0x228 */ s32 unk_228; /* 0x22C */ s32 unk_22C; /* 0x230 */ char pad230[4]; @@ -191,7 +232,7 @@ typedef struct Player { /* 0x238 */ s32 unk_238; /* 0x23C */ s32 unk_23C; /* 0x240 */ s32 unk_240; - /* 0x244 */ s32 unk_244; + /* 0x244 */ s32 timer_244; /* 0x248 */ f32 unk_248; /* 0x24C */ f32 unk_24C; /* 0x250 */ f32 unk_250; @@ -204,8 +245,8 @@ typedef struct Player { /* 0x26C */ s32 heal; /* 0x270 */ s32 unk_270; /* 0x274 */ char pad274[4]; - /* 0x278 */ s32 unk_278; - /* 0x27C */ s32 unk_27C; + /* 0x278 */ s32 timer_278; + /* 0x27C */ s32 timer_27C; /* 0x280 */ s32 unk_280; /* 0x284 */ s32 unk_284; /* 0x288 */ s32 unk_288; @@ -215,10 +256,10 @@ typedef struct Player { /* 0x2BC */ f32 unk_2BC; /* 0x2C0 */ f32 unk_2C0; /* 0x2C4 */ s32 unk_2C4; - /* 0x2C8 */ Vec3f unk_2C8; - /* 0x2D4 */ Vec3f unk_2D4; - /* 0x2E0 */ Vec3f unk_2E0; - /* 0x2EC */ Vec3f unk_2EC; + /* 0x2C8 */ Vec3f hit2; + /* 0x2D4 */ Vec3f hit1; + /* 0x2E0 */ Vec3f hit4; + /* 0x2EC */ Vec3f hit3; /* 0x2F8 */ Vec3f jointTable[30]; /* 0x460 */ union { Vec3f unk_460; @@ -235,7 +276,7 @@ typedef struct Player { /* 0x48C */ u8 unk_48C; /* 0x490 */ f32 unk_490; /* 0x494 */ u8 unk_494; - /* 0x498 */ s32 unk_498; + /* 0x498 */ s32 timer_498; /* 0x49C */ WingInfo wings; /* 0x4D8 */ f32 unk_4D8; /* 0x4DC */ s32 unk_4DC; diff --git a/include/sf64thread.h b/include/sf64thread.h index 1dc257d8..0a276961 100644 --- a/include/sf64thread.h +++ b/include/sf64thread.h @@ -5,21 +5,21 @@ #include "gfx.h" typedef enum { - GSTATE_NONE, - GSTATE_INIT, - GSTATE_TITLE, - GSTATE_MENU, - GSTATE_MAP, - GSTATE_STATE_5, - GSTATE_VS_INIT, - GSTATE_PLAY, - GSTATE_CREDITS, - GSTATE_BOOT = 100, - GSTATE_BOOT_WAIT, - GSTATE_SHOW_LOGO, - GSTATE_CHECK_SAVE, - GSTATE_LOGO_WAIT, - GSTATE_START, + /* 0 */ GSTATE_NONE, + /* 1 */ GSTATE_INIT, + /* 2 */ GSTATE_TITLE, + /* 3 */ GSTATE_MENU, + /* 4 */ GSTATE_MAP, + /* 5 */ GSTATE_GAME_OVER, + /* 6 */ GSTATE_VS_INIT, + /* 7 */ GSTATE_PLAY, + /* 8 */ GSTATE_CREDITS, + /* 100 */ GSTATE_BOOT = 100, + /* 101 */ GSTATE_BOOT_WAIT, + /* 102 */ GSTATE_SHOW_LOGO, + /* 103 */ GSTATE_CHECK_SAVE, + /* 104 */ GSTATE_LOGO_WAIT, + /* 105 */ GSTATE_START, } GameStates; typedef void (*TimerAction)(s32*, s32); @@ -43,11 +43,11 @@ typedef struct { } FaultMgr; // size = 0x9D8, 0x8 aligned typedef enum { - SPTASK_STATE_NOT_STARTED, - SPTASK_STATE_RUNNING, - SPTASK_STATE_INTERRUPTED, - SPTASK_STATE_FINISHED, - SPTASK_STATE_FINISHED_DP + /* 0 */ SPTASK_STATE_NOT_STARTED, + /* 1 */ SPTASK_STATE_RUNNING, + /* 2 */ SPTASK_STATE_INTERRUPTED, + /* 3 */ SPTASK_STATE_FINISHED, + /* 4 */ SPTASK_STATE_FINISHED_DP } SpTaskState; typedef struct { @@ -88,13 +88,13 @@ void func_80007FE4(FrameBuffer*, u16, u16); void Fault_Init(void); typedef enum { - SI_READ_CONTROLLER = 10, - SI_READ_SAVE, - SI_WRITE_SAVE, - SI_RUMBLE, - SI_SAVE_FAILED, - SI_SAVE_SUCCESS, - SI_CONT_READ_DONE, + /* 10 */ SI_READ_CONTROLLER = 10, + /* 11 */ SI_READ_SAVE, + /* 12 */ SI_WRITE_SAVE, + /* 13 */ SI_RUMBLE, + /* 14 */ SI_SAVE_FAILED, + /* 15 */ SI_SAVE_SUCCESS, + /* 16 */ SI_CONT_READ_DONE, } SerialMesg; #define MSG_QUEUE_EMPTY -1 @@ -111,15 +111,15 @@ typedef enum { #define EVENT_MESG_PRENMI 4 typedef enum { - THREAD_ID_SYSTEM, - THREAD_ID_IDLE, - THREAD_ID_FAULT, - THREAD_ID_MAIN, - THREAD_ID_4, - THREAD_ID_AUDIO, - THREAD_ID_GRAPHICS, - THREAD_ID_7, - THREAD_ID_SERIAL, + /* 0 */ THREAD_ID_SYSTEM, + /* 1 */ THREAD_ID_IDLE, + /* 2 */ THREAD_ID_FAULT, + /* 3 */ THREAD_ID_MAIN, + /* 4 */ THREAD_ID_4, + /* 5 */ THREAD_ID_AUDIO, + /* 6 */ THREAD_ID_GRAPHICS, + /* 7 */ THREAD_ID_TIMER, + /* 8 */ THREAD_ID_SERIAL, } ThreadID; #endif diff --git a/include/structs.h b/include/structs.h index 807a12e7..cb3846d1 100644 --- a/include/structs.h +++ b/include/structs.h @@ -7,46 +7,46 @@ #define UNK_TYPE s32 typedef struct { - f32 offset; - f32 size; -} HitboxDim; + /* 0x0 */ f32 offset; + /* 0x4 */ f32 size; +} HitboxDim; // size = 0x8 typedef struct { - HitboxDim z; - HitboxDim y; - HitboxDim x; -} Hitbox; + /* 0x00 */ HitboxDim z; + /* 0x08 */ HitboxDim y; + /* 0x10 */ HitboxDim x; +} Hitbox; // size = 0x18 typedef struct { - s16 vtx[3]; - s16 unk_06; - Vec3s normal; - s32 dist; -} CollisionPoly; + /* 0x00 */ s16 vtx[3]; + /* 0x06 */ s16 unk_06; + /* 0x08 */ Vec3s normal; + /* 0x10 */ s32 dist; +} CollisionPoly; // size = 0x14 typedef struct { - Vec3f min; - Vec3f max; - s32 polyCount; - CollisionPoly* polys; - Vec3s* mesh; + /* 0x00 */ Vec3f min; + /* 0x0C */ Vec3f max; + /* 0x18 */ s32 polyCount; + /* 0x1C */ CollisionPoly* polys; + /* 0x20 */ Vec3s* mesh; } CollisionHeader; // size = 0x24 typedef struct { - Vec3f min; - Vec3f max; - s32 polyCount; - s16 (*polys)[3]; - Vec3f* mesh; + /* 0x00 */ Vec3f min; + /* 0x0C */ Vec3f max; + /* 0x18 */ s32 polyCount; + /* 0x1C */ s16 (*polys)[3]; + /* 0x20 */ Vec3f* mesh; } CollisionHeader2; // size = 0x24 typedef struct { /* bit 0 */ u8 unk_0 : 3; - /* bit 3 */ u8 unk_3 : 1; - /* bit 4 */ u8 unk_4 : 1; - /* bit 5 */ u8 unk_5 : 1; - /* bit 6 */ u8 unk_6 : 1; - /* bit 7 */ u8 unk_7 : 1; + /* bit 3 */ u8 expertMedal : 1; + /* bit 4 */ u8 expertClear : 1; + /* bit 5 */ u8 played : 1; + /* bit 6 */ u8 normalMedal : 1; + /* bit 7 */ u8 normalClear : 1; } PlanetData; // size = 0x1 typedef struct { @@ -88,12 +88,6 @@ typedef struct { /* 0x100 */ Save backup; } SaveFile; // size = 0x200 -typedef struct { - /* 0x0 */ u16 unk_0; - /* 0x2 */ s8 unk_2; - /* 0x3 */ s8 unk_3; -} UnkStruct_gInputPress; // size = 0x4 - typedef struct { /* 0x00 */ u8 unk_00; /* 0x01 */ char pad01[0x1]; diff --git a/include/variables.h b/include/variables.h index 2cb4dcc2..10c73874 100644 --- a/include/variables.h +++ b/include/variables.h @@ -15,7 +15,9 @@ extern u64 __rspboot_end[]; extern u64 __aspmain_start[]; extern u64 __aspmain_end[]; extern u64 __f3dex_start[]; +extern u64 __f3dex_end[]; extern u8 gF3dexData[SP_UCODE_DATA_SIZE]; +extern u8 gAspMainData[]; extern Mtx gIdentityMtx; // 800C4620 extern Matrix gIdentityMatrix; //800C4660 @@ -130,11 +132,11 @@ extern OSMesg D_8015661C[1]; extern s32 D_800C9B4C; extern u16 D_800C9C3C[16]; -extern Vec3f D_800C9F2C; // could be f32[4]? +extern Vec3f D_800C9F2C; extern s32 D_800CA220; extern f32 D_800CA230; extern Object_2F4* D_800CA234; -extern s32 D_800CA238; +extern s32 D_Timer_800CA238; extern f32 D_800CBE70[]; extern f32 D_800CBE8C[]; extern f32 D_800CBEA8[]; @@ -177,15 +179,7 @@ extern Gfx* D_800CFC64[]; extern Gfx* D_800CFC7C[]; extern f32* D_800CF964[]; extern f32 D_800CFCA0[]; -extern Vec3f D_800CFCC0; // initializer in sf_5A240 extern f32 D_800CFCCC[]; -extern Vec3f D_800CFCEC; -extern Vec3f D_800CFCF8; -extern Vec3f D_800CFD04; -extern Vec3f D_800CFD10; -extern Vec3f D_800CFD1C; -extern Vec3f D_800CFD28; -extern Vec3f D_800CFD34; extern Gfx D_800CFD80[]; extern ObjectInit* D_800CFDA0[]; extern s32 D_800CFDF4[]; @@ -283,7 +277,7 @@ extern f32 D_801615B8[4]; extern Vec3f D_801615D0; // fox_enmy -extern s32 D_80161670[4]; +extern s32 D_Timer_80161670[4]; extern s32 D_80161680; extern u8 D_80161684; @@ -326,7 +320,7 @@ extern s32 D_80161910[0x10]; // could be in fox_97F80 // fox_game extern f32 D_80161A10; extern f32 D_80161A14; -extern s32 D_80161A18[4]; +extern s32 gPlayerInactive[4]; extern s32 D_80161A28; extern u8 D_80161A2C; extern u16 D_80161A2E; @@ -345,7 +339,7 @@ extern u8 D_80161A50; extern f32 D_80161A54; // extern s32 D_80161A5C; -extern u16 D_80161A60; +extern u16 D_Timer_80161A60; extern u16 D_80161A62; extern s32 D_80161A64; extern EnvSettings* sEnvSettings; @@ -359,7 +353,7 @@ extern s32 D_80161A84; extern s32 D_80161A88; extern s32 D_80161A8C; extern u8 gGoldRingCount[4]; -extern u8 D_80161A94; +extern u8 D_80161A94[4]; extern s32 gHitCount; extern s32 gSavedHitCount; extern s16 gLifeCount[4]; @@ -394,7 +388,7 @@ extern s32 D_8017782C; extern u8 D_80177830; extern s32 gGameState; extern s32 D_80177838; -extern s32 D_8017783C; +extern s32 D_Timer_8017783C; extern s32 D_80177840; extern s32 D_80177848; extern s32 D_80177844; @@ -405,12 +399,12 @@ extern s32 D_80177858[4]; extern s32 D_80177868; // extern s32 D_80177870[4]; -extern s32 gAllRangeMode; +extern s32 gLevelMode; // -extern s32 D_80177888[4]; -extern s32 D_80177898; +extern s32 gHandicap[4]; +extern s32 gDrawMode; extern s32 gVersusStage; -extern s32 D_801778A0; +extern s32 gPlayerNum; extern s32 D_801778A4; extern s32 gCamCount; extern s32 D_801778AC; @@ -421,15 +415,15 @@ extern s32 gSavedTeamShields[6]; extern bool gVersusMode; // extern UNK_TYPE D_801778F0[6]; -extern u16 D_80177908[4]; -extern s32 D_80177910[6]; -extern u16 D_80177928[4]; +extern u16 gBoostButton[4]; +extern s32 gTeamDamage[6]; +extern u16 gBrakeButton[4]; extern u8 D_80177930; // -extern u16 D_80177938[4]; +extern u16 gShootButton[4]; extern f32 D_80177940; // -extern u16 D_80177948[4]; +extern u16 gBombButton[4]; extern f32 D_80177950; // extern f32 D_80177958[4]; @@ -451,21 +445,21 @@ extern f32 D_801779B8; extern u8 D_801779BC; extern f32 D_801779C0; // -extern s32 D_801779C8[4]; +extern s32 gChargeTimers[4]; extern Vec3f D_801779D8; extern f32 D_801779E4; extern Vec3f D_801779E8; extern f32 D_801779F4; extern bool gExpertMode; // -extern UNK_TYPE D_80177A00[4]; +extern s32 D_Timer_80177A00[4]; extern s32 D_80177A10[10]; -extern UNK_TYPE D_80177A38[4]; +extern s32 D_Timer_80177A38[4]; extern f32 D_80177A48[10]; -extern s32 D_80177A70[4]; +extern s32 D_Timer_80177A70[4]; extern s32 D_80177A80; // -extern s32 D_80177A88[4]; +extern s32 D_Timer_80177A88[4]; extern u8 D_80177A98; // extern f32 D_80177AA0[4]; @@ -478,11 +472,11 @@ extern s32 D_80177AD0[4]; extern s32 D_80177AE0; // extern s32 D_80177AE8[4]; -extern s32 D_80177AF8; +extern s32 gMainController; // extern s32 D_80177B00[4][4]; extern s32 D_80177B40; -extern u8 D_80177B44; +extern u8 D_Timer_80177B44; extern s32 D_80177B48; extern u8 D_80177B4C; extern s32 D_80177B50[7]; @@ -493,9 +487,9 @@ extern s32 D_80177B90[7]; extern s8 D_80177BAC; extern s32 D_80177BB0[7]; // -extern s16 D_80177BD0[4]; // up to [48] -extern s32 D_80177BD8[]; -// 0x58 +extern u16 D_Timer_80177BD0[4]; +extern s32 D_80177BD8[24]; // overruns D_80177C30? +// -0x8?? extern u16 D_80177C30[4]; extern UNK_TYPE D_80177C38[6]; extern s32 D_80177C50; @@ -581,13 +575,13 @@ extern s32 D_8017828C; extern f32* D_80178290; extern s32 D_80178294; extern u32* D_80178298; -extern s32 D_8017829C; +extern s32 gRadioState; // extern s32 D_801782A4; extern Object_58 *gObjects58; -extern s32 D_801782AC; +extern s32 D_Timer_801782AC; // -extern s32 D_801782B4; +extern s32 D_Timer_801782B4; extern s32 D_801782B8; extern s32 D_801782BC; extern s32 D_801782C0; @@ -631,7 +625,7 @@ extern s32 D_80178360; // 2 lights second color extern s32 D_80178364; extern s32 D_80178368; extern f32 D_8017836C; // 2 lights second color brightness -extern f32 D_80178370; +extern f32 D_80178370; // Vec3f? extern f32 D_80178374; extern f32 D_80178378; extern s32 D_8017837C; @@ -667,7 +661,7 @@ extern f32 D_80178470[3]; extern f32 D_8017847C; extern s32 D_80178480; extern s32 D_80178484; -extern s32 D_80178488; +extern bool D_80178488; // 0x8 extern s32 D_80178494; extern f32 D_80178498; diff --git a/linker_scripts/us/symbol_addrs.txt b/linker_scripts/us/symbol_addrs.txt index 59c59f5f..1d644b18 100644 --- a/linker_scripts/us/symbol_addrs.txt +++ b/linker_scripts/us/symbol_addrs.txt @@ -22,10 +22,6 @@ D_8000000F = 0x8000000F;//ignore:true D_800C45E0 = 0x800C45E0; -D_800C57EC = 0x800C57EC; -D_800C7380 = 0x800C7380; -D_800C5FF4 = 0x800C5FF4; //type:u16 size:5000 - D_80151650 = 0x80151650; //ignore:true D_801615D0 = 0x801615D0;//size:0xC diff --git a/linker_scripts/us/symbol_addrs_audio.txt b/linker_scripts/us/symbol_addrs_audio.txt new file mode 100644 index 00000000..fd90ffb8 --- /dev/null +++ b/linker_scripts/us/symbol_addrs_audio.txt @@ -0,0 +1,305 @@ +D_800C57EC = 0x800C57EC; +D_800C7380 = 0x800C7380; +D_800C5FF4 = 0x800C5FF4; //type:u16 size:5000 + +func_800080C0 = 0x800080C0; +func_80008364 = 0x80008364; +func_80008780 = 0x80008780; +func_80009124 = 0x80009124; +func_80009504 = 0x80009504; +func_8000967C = 0x8000967C; +func_800097A8 = 0x800097A8; +func_800098DC = 0x800098DC; +func_80009984 = 0x80009984; +func_80009A2C = 0x80009A2C; +func_80009AAC = 0x80009AAC; +func_80009B64 = 0x80009B64; +func_80009D78 = 0x80009D78; +func_8000A128 = 0x8000A128; +func_8000A25C = 0x8000A25C; +func_8000A700 = 0x8000A700; +func_8000B3F0 = 0x8000B3F0; +func_8000B480 = 0x8000B480; +func_8000B51C = 0x8000B51C; +func_8000B98C = 0x8000B98C; + + + +func_8000BC70 = 0x8000BC70; +func_8000BD38 = 0x8000BD38; +func_8000BE24 = 0x8000BE24; +func_8000BE94 = 0x8000BE94; +func_8000BF14 = 0x8000BF14; +func_8000BF6C = 0x8000BF6C; +func_8000BF94 = 0x8000BF94; +func_8000BFA8 = 0x8000BFA8; +func_8000BFD8 = 0x8000BFD8; +func_8000BFE8 = 0x8000BFE8; +func_8000C044 = 0x8000C044; +func_8000C0C0 = 0x8000C0C0; +func_8000C13C = 0x8000C13C; +func_8000C1F8 = 0x8000C1F8; +func_8000C2B4 = 0x8000C2B4; +func_8000C990 = 0x8000C990; +func_8000C9E8 = 0x8000C9E8; +func_8000CAF4 = 0x8000CAF4; +func_8000CEC8 = 0x8000CEC8; +func_8000D08C = 0x8000D08C; +func_8000D104 = 0x8000D104; +func_8000D4A8 = 0x8000D4A8; +func_8000DB0C = 0x8000DB0C; +func_8000DB64 = 0x8000DB64; +func_8000DBE4 = 0x8000DBE4; +func_8000DC34 = 0x8000DC34; +func_8000DC84 = 0x8000DC84; +func_8000DCD4 = 0x8000DCD4; +func_8000DD68 = 0x8000DD68; +func_8000DFFC = 0x8000DFFC; +func_8000E1C4 = 0x8000E1C4; +func_8000E208 = 0x8000E208; +func_8000E290 = 0x8000E290; + + + +func_8000E4A0 = 0x8000E4A0; +func_8000E5A8 = 0x8000E5A8; +func_8000E8E0 = 0x8000E8E0; +func_8000EBB4 = 0x8000EBB4; +func_8000EC14 = 0x8000EC14; +func_8000ECC0 = 0x8000ECC0; +func_8000ED28 = 0x8000ED28; +func_8000EE14 = 0x8000EE14; +func_8000EEE4 = 0x8000EEE4; +func_8000EF48 = 0x8000EF48; +func_8000F010 = 0x8000F010; +func_8000F078 = 0x8000F078; +func_8000F158 = 0x8000F158; +func_8000F200 = 0x8000F200; +func_8000F220 = 0x8000F220; +func_8000F354 = 0x8000F354; +func_8000F388 = 0x8000F388; +func_8000F478 = 0x8000F478; +func_8000F554 = 0x8000F554; +func_8000F790 = 0x8000F790; +func_8000F7CC = 0x8000F7CC; +func_8000F820 = 0x8000F820; +func_8000F864 = 0x8000F864; +func_8000FA28 = 0x8000FA28; +func_8000FB50 = 0x8000FB50; +func_8000FBA8 = 0x8000FBA8; +func_8000FC7C = 0x8000FC7C; +func_8000FC8C = 0x8000FC8C; +func_8000FCA0 = 0x8000FCA0; +func_8000FCC0 = 0x8000FCC0; +func_8000FF9C = 0x8000FF9C; +func_8000FFCC = 0x8000FFCC; +func_800105EC = 0x800105EC; +func_8001079C = 0x8001079C; +func_80010808 = 0x80010808; +func_80010870 = 0x80010870; +func_800109FC = 0x800109FC; +func_80010A80 = 0x80010A80; +func_80010AD8 = 0x80010AD8; +func_80010BF0 = 0x80010BF0; +func_80010C60 = 0x80010C60; +func_80010EFC = 0x80010EFC; +func_80010F8C = 0x80010F8C; +func_80010FE4 = 0x80010FE4; +func_80011120 = 0x80011120; +func_8001154C = 0x8001154C; +func_80011710 = 0x80011710; +func_80011758 = 0x80011758; + + + +func_80011890 = 0x80011890; +func_80011C58 = 0x80011C58; +func_80011D10 = 0x80011D10; +func_80011D4C = 0x80011D4C; +func_80011DFC = 0x80011DFC; +func_80011EB8 = 0x80011EB8; +func_80011F4C = 0x80011F4C; +func_80011FA8 = 0x80011FA8; +func_80012438 = 0x80012438; +func_8001266C = 0x8001266C; +func_8001268C = 0x8001268C; +func_800126AC = 0x800126AC; +func_800127B0 = 0x800127B0; +func_80012854 = 0x80012854; +func_80012864 = 0x80012864; +func_800128B4 = 0x800128B4; +func_80012964 = 0x80012964; +func_80012AC4 = 0x80012AC4; +func_80012C00 = 0x80012C00; +func_80012C40 = 0x80012C40; +func_80012C6C = 0x80012C6C; +func_80012CEC = 0x80012CEC; +func_80012E28 = 0x80012E28; +func_80012E5C = 0x80012E5C; +func_80012E88 = 0x80012E88; +func_80012ED4 = 0x80012ED4; +func_80012F24 = 0x80012F24; +func_8001301C = 0x8001301C; +func_800132E8 = 0x800132E8; +func_80013400 = 0x80013400; +func_800135A8 = 0x800135A8; +func_80013708 = 0x80013708; +func_800137DC = 0x800137DC; +func_80013820 = 0x80013820; +func_80013A18 = 0x80013A18; +func_80013A84 = 0x80013A84; +func_80013B6C = 0x80013B6C; +func_80013B90 = 0x80013B90; + + + +func_80013EA0 = 0x80013EA0; +func_80013FC4 = 0x80013FC4; +func_800140D0 = 0x800140D0; +func_8001410C = 0x8001410C; +func_8001415C = 0x8001415C; +func_800141C8 = 0x800141C8; +func_80014244 = 0x80014244; +func_80014370 = 0x80014370; +func_80014440 = 0x80014440; +func_800144E4 = 0x800144E4; +func_800145BC = 0x800145BC; +func_800145FC = 0x800145FC; +func_8001463C = 0x8001463C; +func_800146C0 = 0x800146C0; +func_800146D4 = 0x800146D4; +func_80014704 = 0x80014704; +func_80014748 = 0x80014748; +func_800152C0 = 0x800152C0; +func_80015330 = 0x80015330; +func_800153C4 = 0x800153C4; +func_800153E8 = 0x800153E8; +func_80015FD4 = 0x80015FD4; +func_8001678C = 0x8001678C; +func_80016804 = 0x80016804; +func_800168BC = 0x800168BC; + + + +func_80016A50 = 0x80016A50; +func_80016A58 = 0x80016A58; +func_80016BC0 = 0x80016BC0; +func_80016CDC = 0x80016CDC; +func_80016EE4 = 0x80016EE4; +func_80016FF0 = 0x80016FF0; +func_80017360 = 0x80017360; +func_80017494 = 0x80017494; +func_80017550 = 0x80017550; +func_80017588 = 0x80017588; +func_80017600 = 0x80017600; +func_80017760 = 0x80017760; +func_800177C8 = 0x800177C8; +func_800182F4 = 0x800182F4; +func_8001831C = 0x8001831C; +func_8001839C = 0x8001839C; +func_80018410 = 0x80018410; +func_80018470 = 0x80018470; +func_800184D4 = 0x800184D4; +func_800184EC = 0x800184EC; +func_800185A0 = 0x800185A0; +func_800185F8 = 0x800185F8; +func_80018E9C = 0x80018E9C; +func_80018EE0 = 0x80018EE0; +func_80018FA4 = 0x80018FA4; +func_80019068 = 0x80019068; +func_800190E4 = 0x800190E4; +func_80019158 = 0x80019158; +func_800191BC = 0x800191BC; +Audio_PlaySfx = 0x80019218; +func_80019290 = 0x80019290; +func_80019434 = 0x80019434; +func_800197AC = 0x800197AC; +func_800198C0 = 0x800198C0; +func_8001A01C = 0x8001A01C; +func_8001A290 = 0x8001A290; +func_8001A38C = 0x8001A38C; +func_8001A4B8 = 0x8001A4B8; +Audio_KillSfx = 0x8001A500; +func_8001A55C = 0x8001A55C; +func_8001A6C4 = 0x8001A6C4; +func_8001A838 = 0x8001A838; +func_8001A988 = 0x8001A988; +func_8001A9EC = 0x8001A9EC; +func_8001AA90 = 0x8001AA90; +func_8001AAE4 = 0x8001AAE4; +func_8001AB50 = 0x8001AB50; +func_8001ACDC = 0x8001ACDC; +func_8001AD00 = 0x8001AD00; +func_8001AD44 = 0x8001AD44; +func_8001AE58 = 0x8001AE58; +func_8001AE78 = 0x8001AE78; +func_8001AED4 = 0x8001AED4; +func_8001AF40 = 0x8001AF40; +func_8001AF50 = 0x8001AF50; +func_8001AF9C = 0x8001AF9C; +func_8001B014 = 0x8001B014; +func_8001B454 = 0x8001B454; +func_8001B774 = 0x8001B774; +func_8001BA40 = 0x8001BA40; +func_8001BB74 = 0x8001BB74; +func_8001BC20 = 0x8001BC20; +func_8001BC48 = 0x8001BC48; +func_8001BD0C = 0x8001BD0C; +func_8001BFC0 = 0x8001BFC0; +func_8001C3EC = 0x8001C3EC; +func_8001C8B8 = 0x8001C8B8; +func_8001CA24 = 0x8001CA24; +func_8001CB80 = 0x8001CB80; +func_8001CCDC = 0x8001CCDC; +func_8001CE28 = 0x8001CE28; +func_8001CEFC = 0x8001CEFC; +func_8001CF60 = 0x8001CF60; +func_8001CFA8 = 0x8001CFA8; +func_8001D034 = 0x8001D034; +func_8001D0B4 = 0x8001D0B4; +func_8001D10C = 0x8001D10C; +func_8001D15C = 0x8001D15C; +func_8001D1C8 = 0x8001D1C8; +func_8001D2FC = 0x8001D2FC; +func_8001D3A0 = 0x8001D3A0; +func_8001D400 = 0x8001D400; +func_8001D410 = 0x8001D410; +func_8001D444 = 0x8001D444; +func_8001D4AC = 0x8001D4AC; +func_8001D520 = 0x8001D520; +func_8001D638 = 0x8001D638; +func_8001D6DC = 0x8001D6DC; +func_8001D780 = 0x8001D780; +func_8001D8A8 = 0x8001D8A8; +func_8001D8F4 = 0x8001D8F4; +func_8001D9E0 = 0x8001D9E0; +func_8001DA90 = 0x8001DA90; +func_8001DBD0 = 0x8001DBD0; +func_8001DC2C = 0x8001DC2C; +func_8001DC6C = 0x8001DC6C; +func_8001DCB4 = 0x8001DCB4; +func_8001DCE0 = 0x8001DCE0; +func_8001DD40 = 0x8001DD40; +func_8001DE1C = 0x8001DE1C; +func_8001DECC = 0x8001DECC; + + + +func_8001DF50 = 0x8001DF50; +func_8001E444 = 0x8001E444; +func_8001E720 = 0x8001E720; +func_8001E778 = 0x8001E778; +func_8001E7C8 = 0x8001E7C8; +func_8001E850 = 0x8001E850; +func_8001E8A8 = 0x8001E8A8; +func_8001E8CC = 0x8001E8CC; +func_8001E8F0 = 0x8001E8F0; +func_8001E920 = 0x8001E920; +func_8001E998 = 0x8001E998; +func_8001E9AC = 0x8001E9AC; +func_8001ECAC = 0x8001ECAC; +func_8001ED14 = 0x8001ED14; +func_8001ED34 = 0x8001ED34; +func_8001ED8C = 0x8001ED8C; +func_8001EE00 = 0x8001EE00; +func_8001EE3C = 0x8001EE3C; diff --git a/linker_scripts/us/symbol_addrs_engine.txt b/linker_scripts/us/symbol_addrs_engine.txt index 1ad9407d..423b0650 100644 --- a/linker_scripts/us/symbol_addrs_engine.txt +++ b/linker_scripts/us/symbol_addrs_engine.txt @@ -1,3 +1,6 @@ +//fox_display +D_Timer_800CA238 = 0x800CA238; + //fox_std_lib Graphics_ClearPrintBuffer = 0x80099980; Graphics_Printf = 0x800999D8; @@ -146,7 +149,7 @@ gSaveFile = 0x80178870; //size:0x200 // fox_edisplay func_800596C0 = 0x800596C0; func_800597C0 = 0x800597C0; -func_8005980C = 0x8005980C; +Graphics_SetScaleMtx = 0x8005980C; func_80059850 = 0x80059850; func_800598DC = 0x800598DC; func_800598E8 = 0x800598E8; @@ -223,18 +226,18 @@ Object_2F4_Initialize = 0x800613C4; Object_408_Initialize = 0x80061404; Item_Initialize = 0x80061444; Object_8C_Initialize = 0x80061474; -Object_80_Spawn = 0x800614B4; -Object_4C_Spawn = 0x800615A0; -Object_2F4_Spawn = 0x8006168C; -Object_408_Spawn = 0x80061778; -Item_Spawn = 0x80061864; +Object_80_Load = 0x800614B4; +Object_4C_Load = 0x800615A0; +Object_2F4_Load = 0x8006168C; +Object_408_Load = 0x80061778; +Item_Load = 0x80061864; func_80061958 = 0x80061958; func_80061A4C = 0x80061A4C; func_80061B68 = 0x80061B68; func_80061CD0 = 0x80061CD0; func_80061E48 = 0x80061E48; func_80061F0C = 0x80061F0C; -Object_Spawn = 0x80062180; +Object_Load = 0x80062180; func_80062568 = 0x80062568; func_80062664 = 0x80062664; func_80062B60 = 0x80062B60; @@ -310,7 +313,7 @@ Object_UpdateAll = 0x8006A3E8; // fox_game D_80161A10 = 0x80161A10; D_80161A14 = 0x80161A14; -D_80161A18 = 0x80161A18; //size:0x10 +gPlayerInactive = 0x80161A18; //size:0x10 D_80161A28 = 0x80161A28; D_80161A2C = 0x80161A2C; D_80161A2E = 0x80161A2E; @@ -351,7 +354,7 @@ gMedalStatus = 0x801617B4; D_80161A50 = 0x80161A50; D_80161A54 = 0x80161A54; D_80161A5C = 0x80161A5C; -D_80161A60 = 0x80161A60; +D_Timer_80161A60 = 0x80161A60; D_80161A62 = 0x80161A62; D_80161A64 = 0x80161A64; sEnvSettings = 0x80161A68; @@ -394,7 +397,7 @@ D_8017782C = 0x8017782C; D_80177830 = 0x80177830; gGameState = 0x80177834; D_80177838 = 0x80177838; -D_8017783C = 0x8017783C; +D_Timer_8017783C = 0x8017783C; D_80177840 = 0x80177840; D_80177848 = 0x80177848; D_8017784C = 0x8017784C; @@ -403,11 +406,11 @@ D_80177854 = 0x80177854; D_80177858 = 0x80177858; D_80177868 = 0x80177868; D_80177870 = 0x80177870; -gAllRangeMode = 0x80177880; -D_80177888 = 0x80177888; -D_80177898 = 0x80177898; +gLevelMode = 0x80177880; +gHandicap = 0x80177888; +gDrawMode = 0x80177898; gVersusStage = 0x8017789C; -D_801778A0 = 0x801778A0; +gPlayerNum = 0x801778A0; D_801778A4 = 0x801778A4; gCamCount = 0x801778A8; D_801778AB = 0x801778AB; @@ -416,13 +419,14 @@ gTeamShields = 0x801778B0; //size:0x18 D_801778C8 = 0x801778C8; gSavedTeamShields = 0x801778D0; //size:0x18 gVersusMode = 0x801778E8; -D_80177908 = 0x80177908; -D_80177910 = 0x80177910; -D_80177928 = 0x80177928; +D_801778F0 = 0x801778F0;//size=0x18 +gBoostButton = 0x80177908; +gTeamDamage = 0x80177910; +gBrakeButton = 0x80177928; D_80177930 = 0x80177930; -D_80177938 = 0x80177938; +gShootButton = 0x80177938; D_80177940 = 0x80177940; -D_80177948 = 0x80177948; +gBombButton = 0x80177948; D_80177950 = 0x80177950; D_80177958 = 0x80177958; gInputHold = 0x80177974; @@ -435,15 +439,17 @@ D_801779A0 = 0x801779A0; D_801779A8 = 0x801779A8; D_801779B8 = 0x801779B8; D_801779C0 = 0x801779C0; -D_801779C8 = 0x801779C8; +gChargeTimers = 0x801779C8; D_801779D8 = 0x801779D8; D_801779E8 = 0x801779E8; gExpertMode = 0x801779F8; +D_Timer_80177A00 = 0x80177A00; D_80177A10 = 0x80177A10;//size:0x28 +D_Timer_80177A38 = 0x80177A38; D_80177A48 = 0x80177A48;//size:0x28 -D_80177A70 = 0x80177A70;//size:0x10 +D_Timer_80177A70 = 0x80177A70;//size:0x10 D_80177A80 = 0x80177A80; -D_80177A88 = 0x80177A88;//size:0x10 +D_Timer_80177A88 = 0x80177A88;//size:0x10 D_80177A98 = 0x80177A98; D_80177AA0 = 0x80177AA0; D_80177AB0 = 0x80177AB0; @@ -452,15 +458,17 @@ D_80177AC8 = 0x80177AC8; D_80177AD0 = 0x80177AD0; D_80177AE0 = 0x80177AE0; D_80177AE8 = 0x80177AE8; -D_80177AF8 = 0x80177AF8; +gMainController = 0x80177AF8; D_80177B00 = 0x80177B00; D_80177B40 = 0x80177B40; +D_Timer_80177B44 = 0x80177B44; D_80177B48 = 0x80177B48; D_80177B50 = 0x80177B50; D_80177B70 = 0x80177B70; D_80177B8C = 0x80177B8C; D_80177B90 = 0x80177B90; D_80177BB0 = 0x80177BB0; +D_Timer_80177BD0 = 0x80177BD0; D_80177C30 = 0x80177C30; D_80177C50 = 0x80177C50; gSoundMode = 0x80177C74; @@ -508,11 +516,11 @@ D_8017828C = 0x8017828C; D_80178290 = 0x80178290; D_80178294 = 0x80178294; D_80178298 = 0x80178298; -D_8017829C = 0x8017829C; +gRadioState = 0x8017829C; D_801782A4 = 0x801782A4; gObjects58 = 0x801782A8; -D_801782AC = 0x801782AC; -D_801782B4 = 0x801782B4; +D_Timer_801782AC = 0x801782AC; +D_Timer_801782B4 = 0x801782B4; D_801782B8 = 0x801782B8; D_801782BC = 0x801782BC; D_801782C0 = 0x801782C0; @@ -540,8 +548,6 @@ D_80178364 = 0x80178364; D_80178368 = 0x80178368; D_8017836C = 0x8017836C; D_80178370 = 0x80178370; -D_80178374 = 0x80178374; -D_80178378 = 0x80178378; D_80178380 = 0x80178380; D_80178390 = 0x80178390; D_801783A0 = 0x801783A0; @@ -607,4 +613,103 @@ D_80178574 = 0x80178574; D_80178578 = 0x80178578; Play_GetMaxShields = 0x800A3FC4; +func_800A3FB0 = 0x800A3FB0; Play_CheckMedalStatus = 0x800A3F50; +func_800A3FEC = 0x800A3FEC; +func_800A4460 = 0x800A4460; +func_800A46A0 = 0x800A46A0; +func_800A4C40 = 0x800A4C40; +func_800A4F4C = 0x800A4F4C; +func_800A4F7C = 0x800A4F7C; +func_800A5330 = 0x800A5330; +func_800A5338 = 0x800A5338; +func_800A55B0 = 0x800A55B0; +func_800A57E0 = 0x800A57E0; +func_800A5844 = 0x800A5844; +func_800A594C = 0x800A594C; +func_800A5D6C = 0x800A5D6C; +func_800A5EBC = 0x800A5EBC; +func_800A5FA0 = 0x800A5FA0; +func_800A6028 = 0x800A6028; +func_800A6070 = 0x800A6070; +func_800A60B8 = 0x800A60B8; +func_800A60E8 = 0x800A60E8; +func_800A6118 = 0x800A6118; +func_800A6148 = 0x800A6148; +func_800A6590 = 0x800A6590; +func_800A668C = 0x800A668C; +func_800A670C = 0x800A670C; +func_800A69F8 = 0x800A69F8; +func_800A6A74 = 0x800A6A74; +Player_DamageWings = 0x800A6AC0; +Player_ApplyDamage = 0x800A6CD0; +func_800A729C = 0x800A729C; +func_800A73E4 = 0x800A73E4; +func_800A78C4 = 0x800A78C4; +func_800A7974 = 0x800A7974; +func_800A8054 = 0x800A8054; +func_800A8304 = 0x800A8304; +func_800A86E4 = 0x800A86E4; +func_800A8804 = 0x800A8804; +func_800A887C = 0x800A887C; +func_800A8BA4 = 0x800A8BA4; +func_800AA800 = 0x800AA800; +func_800AB2AC = 0x800AB2AC; +func_800AB304 = 0x800AB304; +func_800AB334 = 0x800AB334; +func_800AB964 = 0x800AB964; +func_800ABA08 = 0x800ABA08; +func_800ABAB4 = 0x800ABAB4; +func_800AC290 = 0x800AC290; +func_800AC650 = 0x800AC650; +func_800ACA40 = 0x800ACA40; +func_800ACABC = 0x800ACABC; +func_800ACC7C = 0x800ACC7C; +func_800ACDC0 = 0x800ACDC0; +func_800AD094 = 0x800AD094; +func_800AD118 = 0x800AD118; +func_800AD1F4 = 0x800AD1F4; +func_800AD7F0 = 0x800AD7F0; +func_800ADA28 = 0x800ADA28; +func_800ADD98 = 0x800ADD98; +func_800ADF58 = 0x800ADF58; +func_800AE278 = 0x800AE278; +func_800AE4A4 = 0x800AE4A4; +func_800AECAC = 0x800AECAC; +func_800AF07C = 0x800AF07C; +func_800AF928 = 0x800AF928; +func_800B00C0 = 0x800B00C0; +func_800B0194 = 0x800B0194; +func_800B0F50 = 0x800B0F50; +func_800B2130 = 0x800B2130; +func_800B22C0 = 0x800B22C0; +func_800B2574 = 0x800B2574; +func_800B2BE0 = 0x800B2BE0; +func_800B2C00 = 0x800B2C00; +func_800B3010 = 0x800B3010; +func_800B3314 = 0x800B3314; +func_800B39E0 = 0x800B39E0; +func_800B40AC = 0x800B40AC; +func_800B415C = 0x800B415C; +func_800B41E0 = 0x800B41E0; +func_800B41EC = 0x800B41EC; +func_800B42B0 = 0x800B42B0; +func_800B44C4 = 0x800B44C4; +func_800B46F8 = 0x800B46F8; +func_800B48BC = 0x800B48BC; +func_800B56BC = 0x800B56BC; +func_800B5D30 = 0x800B5D30; +func_800B5FBC = 0x800B5FBC; +func_800B63BC = 0x800B63BC; +func_800B6848 = 0x800B6848; +func_800B6BFC = 0x800B6BFC; +func_800B6F50 = 0x800B6F50; +func_800B7184 = 0x800B7184; +func_800B71E4 = 0x800B71E4; +func_800B73E0 = 0x800B73E0; +func_800B79B0 = 0x800B79B0; +func_800B832C = 0x800B832C; +func_800B852C = 0x800B852C; +func_800B86A4 = 0x800B86A4; +func_800B86CC = 0x800B86CC; + diff --git a/linker_scripts/us/symbol_addr_mesg.txt b/linker_scripts/us/symbol_addrs_mesg.txt similarity index 100% rename from linker_scripts/us/symbol_addr_mesg.txt rename to linker_scripts/us/symbol_addrs_mesg.txt diff --git a/linker_scripts/us/symbol_addrs_nlib_vars.txt b/linker_scripts/us/symbol_addrs_nlib_vars.txt index 54b2289a..8894d8d5 100644 --- a/linker_scripts/us/symbol_addrs_nlib_vars.txt +++ b/linker_scripts/us/symbol_addrs_nlib_vars.txt @@ -1,8 +1,9 @@ // rsp __rspboot_start = 0x80000450;//name_end:__rspboot_end __aspmain_start = 0x80000520;//name_end:__aspmain_end -__f3dex_start = 0x80001410; -gF3dexData = 0x800C3DD0; +__f3dex_start = 0x80001410;//name_end:__f3dex_end +gF3dexData = 0x800C3DD0; //name_end:gF3dexData_end +gAspMainData = 0x800C32E0; //name_end:gAspMainData_end // sys_joybus gControllerHold = 0x800DD880; // size:0x18 diff --git a/src/main/fox_43AC0.c b/src/main/fox_43AC0.c index 52de7b0e..a32259da 100644 --- a/src/main/fox_43AC0.c +++ b/src/main/fox_43AC0.c @@ -70,11 +70,11 @@ void func_80042FF4(Object_2F4* obj2F4, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f obj2F4->unk_0E8.x = arg7; obj2F4->unk_0E8.y = arg8; obj2F4->unk_0E8.z = arg9; - obj2F4->unk_110 = argA; - obj2F4->unk_0BC = argC; - obj2F4->unk_0BE = 20; + obj2F4->scale = argA; + obj2F4->timer_0BC = argC; + obj2F4->timer_0BE = 20; Object_SetInfo(&obj2F4->info, obj2F4->obj.id); - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { obj2F4->unk_10C = 0.5f; } } @@ -104,14 +104,14 @@ void func_8004319C(Player* player, f32 arg1, f32 arg2, f32 arg3) { D_80178440 = arg1; D_80178444 = arg2; - player->unk_1C8 = 7; + player->state_1C8 = PLAYERSTATE_1C8_7; player->unk_1D0 = 10; - player->unk_1F8 = 50; - player->unk_1FC = 50; + player->timer_1F8 = 50; + player->timer_1FC = 50; player->unk_000 = 0.0f; player->unk_004 = 1.0f; - if (player->unk_074 < player->unk_0AC) { + if (player->pos.x < player->unk_0AC) { player->unk_004 = -1.0f; } - gPlayer[0].unk_0C0.x = 0.0f; + gPlayer[0].vel.x = 0.0f; } diff --git a/src/main/fox_6B3B0.c b/src/main/fox_6B3B0.c index 405825c0..69a34228 100644 --- a/src/main/fox_6B3B0.c +++ b/src/main/fox_6B3B0.c @@ -9,7 +9,7 @@ void func_80187530(Object_2F4*); // figure out which one later void func_8006A7B0(u16* msg, s32 character) { (void) "Enm->obj.pos.y + tmp_xyz.y=<%10.3f>\n"; - if ((D_8017829C == 0) || (D_80177D68 != character)) { + if ((gRadioState == 0) || (D_80177D68 != character)) { func_800BA808(msg, character); } } @@ -26,10 +26,10 @@ void func_8006A800(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->unk_48 = -obj8C->unk_48; } obj8C->unk_4A = 100; - obj8C->unk_70 = arg4 * 0.25f; - obj8C->unk_6C = 0.3f; + obj8C->scale2 = arg4 * 0.25f; + obj8C->scale1 = 0.3f; if (arg4 < 10.0f) { - obj8C->unk_6C = 0.1f; + obj8C->scale1 = 0.1f; } obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); @@ -60,8 +60,8 @@ void func_8006A984(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->unk_44 = 40; - obj8C->unk_70 = 5.0f; - obj8C->unk_6C = 2.0f * (Rand_ZeroOne() - 0.5f); + obj8C->scale2 = 5.0f; + obj8C->scale1 = 2.0f * (Rand_ZeroOne() - 0.5f); obj8C->unk_54.y = 10.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); @@ -94,8 +94,8 @@ void func_8006AA98(Object_80* obj80) { } s32 func_8006ABA4(Object_2F4* obj2F4) { - if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].unk_074) < 700.0f) && - (fabsf(obj2F4->obj.pos.y - gPlayer[0].unk_078) < 700.0f)) { + if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].pos.x) < 700.0f) && + (fabsf(obj2F4->obj.pos.y - gPlayer[0].pos.y) < 700.0f)) { return 1; } return 0; @@ -105,15 +105,15 @@ s32 func_8006ABA4(Object_2F4* obj2F4) { void func_8006AC08(Object_2F4* obj2F4) { f32 sp2C; - if ((func_8006ABA4(obj2F4) != 0) && (obj2F4->unk_0BC == 0)) { + if ((func_8006ABA4(obj2F4) != 0) && (obj2F4->timer_0BC == 0)) { func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); - obj2F4->unk_0BC = 20; + obj2F4->timer_0BC = 20; } sp2C = obj2F4->obj.pos.z + D_80177D20; - obj2F4->obj.rot.y = Math_RadToDeg(Math_Atan2F(gPlayer->unk_040.x - obj2F4->obj.pos.x, gPlayer->unk_040.z - sp2C)); + obj2F4->obj.rot.y = Math_RadToDeg(Math_Atan2F(gPlayer->camEye.x - obj2F4->obj.pos.x, gPlayer->camEye.z - sp2C)); obj2F4->obj.rot.x = - -Math_RadToDeg(Math_Atan2F(gPlayer->unk_040.y - obj2F4->obj.pos.y, - sqrtf(SQ(gPlayer->unk_040.x - obj2F4->obj.pos.x) + SQ(gPlayer->unk_040.z - sp2C)))); + -Math_RadToDeg(Math_Atan2F(gPlayer->camEye.y - obj2F4->obj.pos.y, + sqrtf(SQ(gPlayer->camEye.x - obj2F4->obj.pos.x) + SQ(gPlayer->camEye.z - sp2C)))); } void func_8006AD18(Object_2F4* obj2F4) { @@ -122,7 +122,7 @@ void func_8006AD18(Object_2F4* obj2F4) { obj2F4->unk_10C = 1.5f; sp34 = false; obj2F4->obj.rot.y = Math_RadToDeg( - Math_Atan2F(gPlayer[D_801778A0].unk_074 - obj2F4->obj.pos.x, gPlayer[D_801778A0].unk_138 - obj2F4->obj.pos.z)); + Math_Atan2F(gPlayer[gPlayerNum].pos.x - obj2F4->obj.pos.x, gPlayer[gPlayerNum].unk_138 - obj2F4->obj.pos.z)); if (obj2F4->obj.pos.y < -500.0f) { obj2F4->obj.pos.y = -500.0f; obj2F4->unk_0E8.y = 0.0f; @@ -186,8 +186,8 @@ void func_8006AD18(Object_2F4* obj2F4) { D_80177850 = 15; } else { obj2F4->unk_0D0 = 0; - obj2F4->unk_0C6 = 20; - func_80019218(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + obj2F4->timer_0C6 = 20; + Audio_PlaySfx(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_8007D1E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 180.0f, obj2F4->obj.pos.z, 5.0f); } } @@ -226,7 +226,7 @@ void func_8006B0A0(Object_2F4* obj2F4) { obj2F4->unk_0E8.x = sp34.x; obj2F4->unk_0E8.y = sp34.y; obj2F4->unk_0E8.z = sp34.z; - if ((obj2F4->unk_0BC == 0) && !(gFrameCount & 3)) { + if ((obj2F4->timer_0BC == 0) && !(gFrameCount & 3)) { temp_hi = (D_800CFF94[obj2F4->unk_04A] + obj2F4->unk_04E) % 100; if (obj2F4->unk_04A == 0) { func_8007D2C8(D_80176558[obj2F4->unk_046][temp_hi], D_80176878[obj2F4->unk_046][temp_hi], @@ -235,7 +235,7 @@ void func_8006B0A0(Object_2F4* obj2F4) { func_8007D2C8(D_80176558[obj2F4->unk_046][temp_hi], D_80176878[obj2F4->unk_046][temp_hi], D_80176B98[obj2F4->unk_046][temp_hi], 4.0f); } - func_80019218(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); obj2F4->unk_04A++; if (obj2F4->unk_04A > 15) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); @@ -261,11 +261,11 @@ void func_8006B46C(Object_2F4* obj2F4, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f Matrix_SetGfxMtx(&gMasterDisp); if (arg7 != 1) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); - if ((arg7 == 0) && (obj2F4->unk_0CA[0] != 0)) { + if ((arg7 == 0) && (obj2F4->timer_0CA[0] != 0)) { sp34.y += obj2F4->info.unk_1C; Matrix_MultVec3f(gGfxMatrix, &sp34, D_80161578); if (D_80161578->z > -500.0f) { - obj2F4->unk_0CA[0] = 0; + obj2F4->timer_0CA[0] = 0; } } } else { @@ -289,7 +289,7 @@ void func_8006B74C(Object_2F4* obj2F4) { func_8006B46C(obj2F4, D_80176558[obj2F4->unk_046][temp_hi], D_80176878[obj2F4->unk_046][temp_hi], D_80176B98[obj2F4->unk_046][temp_hi], D_80176EB8[obj2F4->unk_046][temp_hi], D_801771D8[obj2F4->unk_046][temp_hi], D_80177500[obj2F4->unk_046][temp_hi], D_800CFFB4[var_s0], - D_800CFFC4[var_s0], obj2F4->unk_0C6 & 1); + D_800CFFC4[var_s0], obj2F4->timer_0C6 & 1); } } @@ -302,7 +302,7 @@ void func_8006B95C(Object_80* obj80) { obj80->unk_64.y -= 1.0f; if (obj80->obj.pos.y < D_80177940 + 40.0f) { obj80->obj.pos.y = D_80177940 + 40.0f; - func_80019218(0x19130003, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19130003, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); obj80->unk_48 = 2; obj80->unk_64.y = 0.0f; } @@ -322,8 +322,8 @@ void func_8006BA64(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - obj8C->unk_70 = 0.0f; - obj8C->unk_6C = 0.12f; + obj8C->scale2 = 0.0f; + obj8C->scale1 = 0.12f; obj8C->obj.rot.y = Rand_ZeroOne() * 360.0f; obj8C->unk_60.y = (Rand_ZeroOne() - 0.5f) * 3.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); @@ -369,23 +369,23 @@ void func_8006BB78(Object_2F4* obj2F4) { obj2F4->unk_0E8.z = sp44.z; if (fabsf((obj2F4->obj.pos.z + obj2F4->unk_13C) - gPlayer[0].unk_138) < 3000.0f) { obj2F4->unk_0B8 = 2; - obj2F4->unk_0BC = 20; + obj2F4->timer_0BC = 20; obj2F4->unk_0E8.z = 0.0f; obj2F4->unk_0E8.x = 0.0f; } break; case 2: - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { obj2F4->unk_0B8 = 3; obj2F4->unk_0B6 = 1; obj2F4->obj.pos.y += 30.0f; - obj2F4->unk_0BC = 30; + obj2F4->timer_0BC = 30; obj2F4->unk_0E8.y = 30.0f; obj2F4->unk_10C = 1.0f; } break; case 3: - if (obj2F4->unk_0BC == 1) { + if (obj2F4->timer_0BC == 1) { func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); } if (obj2F4->unk_0E8.y < 12.0f) { @@ -401,7 +401,7 @@ void func_8006BB78(Object_2F4* obj2F4) { } break; case 4: - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { obj2F4->unk_0B8 = 0; obj2F4->obj.rot.y = Rand_ZeroOne() * 360.0f; } @@ -443,14 +443,14 @@ void func_8006C008(Object_2F4* obj2F4) { switch (obj2F4->unk_0B8) { case 0x28: if (obj2F4->unk_04A & 4) { - obj2F4->obj.pos.x = obj2F4->unk_120 + gPlayer->unk_074; + obj2F4->obj.pos.x = obj2F4->unk_120 + gPlayer->pos.x; obj2F4->obj.pos.z = obj2F4->unk_124.x + gPlayer->unk_138; } obj2F4->obj.rot.x += obj2F4->unk_114; obj2F4->obj.rot.y += obj2F4->unk_118; obj2F4->obj.rot.z += obj2F4->unk_11C; - if (((obj2F4->unk_04A & 1) == 1) && !(obj2F4->unk_0BC & 3)) { - func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_110); + if (((obj2F4->unk_04A & 1) == 1) && !(obj2F4->timer_0BC & 3)) { + func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->scale); } if ((obj2F4->unk_124.y + obj2F4->obj.pos.y) < 0.0f) { if (obj2F4->unk_050 >= 2) { @@ -465,10 +465,10 @@ void func_8006C008(Object_2F4* obj2F4) { if (obj2F4->unk_04A & 4) { switch (obj2F4->unk_046) { case 2: - func_80019218(0x19000024, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19000024, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 25: - func_80019218(0x29003031, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29003031, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; } } @@ -547,20 +547,20 @@ void func_8006C008(Object_2F4* obj2F4) { case 0x34: case 0x35: case 0x37: - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->timer_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { - func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->unk_110 * 10.0f); + (obj2F4->timer_0BE == 0)) { + func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->scale * 10.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } break; case 0x38: - Math_SmoothStepToF(&obj2F4->unk_110, 0.0f, 0.1f, 2.0f, 0.0001f); - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + Math_SmoothStepToF(&obj2F4->scale, 0.0f, 0.1f, 2.0f, 0.0001f); + if (((obj2F4->timer_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { - func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->unk_110 * 10.0f); + (obj2F4->timer_0BE == 0)) { + func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->scale * 10.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } @@ -575,28 +575,28 @@ void func_8006C008(Object_2F4* obj2F4) { obj2F4->obj.rot.x += obj2F4->unk_114; obj2F4->obj.rot.y += obj2F4->unk_118; obj2F4->obj.rot.z += obj2F4->unk_11C; - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->timer_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { - func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->unk_110 * 10.0f); + (obj2F4->timer_0BE == 0)) { + func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 50.0f, obj2F4->scale * 10.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } break; case 0x36: - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->timer_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { - func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 70.0f, obj2F4->unk_110 * 20.0f); - func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 70.0f, obj2F4->unk_110 * 20.0f); + (obj2F4->timer_0BE == 0)) { + func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 70.0f, obj2F4->scale * 20.0f); + func_8007B8F8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z + 70.0f, obj2F4->scale * 20.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } break; case 0x32: - if ((obj2F4->unk_050 == 2) && (obj2F4->unk_0BC == 0)) { + if ((obj2F4->unk_050 == 2) && (obj2F4->timer_0BC == 0)) { func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 5.0f); - obj2F4->unk_0BC = 4; + obj2F4->timer_0BC = 4; } obj2F4->obj.rot.x += obj2F4->unk_114; obj2F4->obj.rot.y += obj2F4->unk_118; @@ -643,22 +643,24 @@ void func_8006C008(Object_2F4* obj2F4) { obj2F4->obj.rot.y += obj2F4->unk_140; obj2F4->obj.rot.z += obj2F4->unk_144; if (obj2F4->unk_0B8 == 0x46) { - if ((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if ((obj2F4->timer_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } else if (obj2F4->unk_0B8 == 0x27) { - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->timer_0BC == 0) || + (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { + (obj2F4->timer_0BE == 0)) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 10.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } } else if (((obj2F4->unk_0B8 >= 0x29) && (obj2F4->unk_0B8 < 0x2D)) || (obj2F4->unk_0B8 == 0x3B)) { - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0)) && - (obj2F4->unk_0BE == 0)) { - func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 2.0f * obj2F4->unk_110); + if (((obj2F4->timer_0BC == 0) || + (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0)) && + (obj2F4->timer_0BE == 0)) { + func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 2.0f * obj2F4->scale); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } @@ -667,19 +669,20 @@ void func_8006C008(Object_2F4* obj2F4) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } else if (obj2F4->unk_0B8 >= 0xA) { - if (!(obj2F4->unk_0BC & 3)) { - func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_110); + if (!(obj2F4->timer_0BC & 3)) { + func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->scale); } - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->timer_0BC == 0) || + (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) && - (obj2F4->unk_0BE == 0)) { + (obj2F4->timer_0BE == 0)) { func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, - obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->unk_110 * 1.5f, 4); + obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->scale * 1.5f, 4); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } } else { - if ((obj2F4->unk_0B8 == 3) && !(obj2F4->unk_0BC & 7)) { + if ((obj2F4->unk_0B8 == 3) && !(obj2F4->timer_0BC & 7)) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.5f); } if ((func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || @@ -708,14 +711,14 @@ void func_8006C008(Object_2F4* obj2F4) { } } if (obj2F4->unk_0B8 == 4) { - if ((gCurrentLevel == LEVEL_KATINA) && (obj2F4->unk_0BC == 0)) { + if ((gCurrentLevel == LEVEL_KATINA) && (obj2F4->timer_0BC == 0)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } else { - if (obj2F4->unk_0BC & 1) { + if (obj2F4->timer_0BC & 1) { func_8007D24C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.0f); } - if ((gLevelType == LEVELTYPE_SPACE) && (obj2F4->unk_0BC == 0)) { + if ((gLevelType == LEVELTYPE_SPACE) && (obj2F4->timer_0BC == 0)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } @@ -900,7 +903,7 @@ void func_8006D36C(Object_2F4* obj2F4) { s32 j; switch (gCurrentLevel) { - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: var_v1 = SEGMENTED_TO_VIRTUAL(D_C037E3C); break; case LEVEL_CORNERIA: @@ -956,12 +959,12 @@ void func_8006D36C(Object_2F4* obj2F4) { } break; case 0xD000: - func_8001A500(&obj2F4->sfxPos); + Audio_KillSfx(&obj2F4->sfxPos); obj2F4->unk_0B4 = temp_s1[obj2F4->unk_0E6 + 1]; if (obj2F4->unk_0B4 == 40) { - obj2F4->unk_0C2 = 10000; + obj2F4->timer_0C2 = 10000; } else { - obj2F4->unk_0C2 = 0; + obj2F4->timer_0C2 = 0; } obj2F4->unk_140 = 0.0f; obj2F4->unk_144 = 0.0f; @@ -986,7 +989,7 @@ void func_8006D36C(Object_2F4* obj2F4) { D_80176B98[i][j] = obj2F4->obj.pos.z; } if (obj2F4->unk_0B4 == 200) { - func_80019218(0x11032049, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11032049, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } break; } @@ -1003,7 +1006,7 @@ void func_8006D36C(Object_2F4* obj2F4) { if (obj2F4->unk_0B4 == 81) { obj2F4->unk_0C9 = 1; } - if (gPlayer[0].unk_1C8 == 3) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) { if (obj2F4->unk_0B4 == 86) { func_8001D4AC(0x36, 0x14, 0xA, 0xA); } @@ -1019,7 +1022,7 @@ void func_8006D36C(Object_2F4* obj2F4) { } if (obj2F4->unk_0B4 < 200) { obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_800D003C[obj2F4->unk_0B4].unk_04); - obj2F4->unk_110 = D_800D003C[obj2F4->unk_0B4].unk_08; + obj2F4->scale = D_800D003C[obj2F4->unk_0B4].unk_08; obj2F4->info.unk_16 = D_800D003C[obj2F4->unk_0B4].unk_14; obj2F4->info.unk_14 = D_800D003C[obj2F4->unk_0B4].unk_15; obj2F4->info.unk_19 = D_800D003C[obj2F4->unk_0B4].unk_17; @@ -1034,26 +1037,26 @@ void func_8006D36C(Object_2F4* obj2F4) { case 1: if ((gCurrentLevel != LEVEL_SOLAR) && (obj2F4->unk_0B4 != 6) && ((gCurrentLevel != LEVEL_CORNERIA) || (obj2F4->unk_0B4 != 8))) { - func_80019218(0x31000011, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31000011, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } break; case 2: - func_80019218(0x3100000C, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x3100000C, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 3: - func_80019218(0x11030010, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 4: - func_80019218(0x31012039, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31012039, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 5: - func_80019218(0x1900302B, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1900302B, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 6: - func_80019218(0x31000014, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31000014, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 7: - func_80019218(0x31000015, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31000015, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; } if (gPlayer[0].unk_138 < obj2F4->obj.pos.z) { @@ -1108,10 +1111,10 @@ void func_8006D36C(Object_2F4* obj2F4) { } obj2F4->unk_048 = temp_s1[obj2F4->unk_0E6 + 1]; if (obj2F4->unk_048 == 3) { - obj2F4->unk_04C = 4; + obj2F4->timer_04C = 4; } if (obj2F4->unk_048 == 0xD) { - obj2F4->unk_0BE = 0x32; + obj2F4->timer_0BE = 0x32; } obj2F4->unk_0E6 += 2; func_8006D36C(obj2F4); @@ -1128,7 +1131,7 @@ void func_8006D36C(Object_2F4* obj2F4) { break; case 0xF000: temp_v0_4 = Message_PtrFromId(temp_s1[obj2F4->unk_0E6 + 1]); - if ((temp_v0_4 != NULL) && (gPlayer[0].unk_1C8 == 3)) { + if ((temp_v0_4 != NULL) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3)) { func_800BA808(temp_v0_4, temp_s1[obj2F4->unk_0E6] & 0x1FF); } obj2F4->unk_0E6 += 2; @@ -1176,7 +1179,7 @@ void func_8006D36C(Object_2F4* obj2F4) { obj2F4->unk_0D6 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0D4 = 100; } else { - D_80177910[temp_s1[obj2F4->unk_0E6 + 1]] = temp_s1[obj2F4->unk_0E6] & 0x1FF; + gTeamDamage[temp_s1[obj2F4->unk_0E6 + 1]] = temp_s1[obj2F4->unk_0E6] & 0x1FF; } obj2F4->unk_0E6 += 2; func_8006D36C(obj2F4); @@ -1208,25 +1211,25 @@ void func_8006D36C(Object_2F4* obj2F4) { break; case 0x5000: obj2F4->unk_0B8 = 6; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; case 0x5200: obj2F4->unk_0B8 = 7; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; case 0x5400: obj2F4->unk_0B8 = 8; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; case 0x5600: obj2F4->unk_0B8 = 9; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; @@ -1234,24 +1237,24 @@ void func_8006D36C(Object_2F4* obj2F4) { obj2F4->unk_0B8 = 1; obj2F4->unk_054 = D_800CFF80[temp_s1[obj2F4->unk_0E6] & 0x1FF]; obj2F4->unk_158 = temp_s1[obj2F4->unk_0E6 + 1]; - obj2F4->unk_0BC = 0; + obj2F4->timer_0BC = 0; obj2F4->unk_0E6 += 2; break; case 0x5800: obj2F4->unk_0B8 = 0xD; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; case 0x5C00: obj2F4->unk_0B8 = 0xE; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; case 0x5E00: obj2F4->unk_0B8 = 0xF; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_174 = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; break; @@ -1277,14 +1280,14 @@ void func_8006D36C(Object_2F4* obj2F4) { break; case 0x6000: obj2F4->unk_0B8 = 1; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_0E6 += 2; break; case 0x0000: obj2F4->unk_114 = temp_s1[obj2F4->unk_0E6] & 0x7F; obj2F4->unk_118 = obj2F4->unk_114; obj2F4->unk_064 = temp_s1[obj2F4->unk_0E6] & 0x180; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_0B8 = 1; obj2F4->unk_0E6 += 2; break; @@ -1296,12 +1299,12 @@ void func_8006D36C(Object_2F4* obj2F4) { case 0x0200: obj2F4->unk_118 = temp_s1[obj2F4->unk_0E6] & 0x7F; obj2F4->unk_064 = temp_s1[obj2F4->unk_0E6] & 0x180; - obj2F4->unk_0BC = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0BC = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_0B8 = 1; obj2F4->unk_0E6 += 2; break; case 0x0800: - obj2F4->unk_0C0 = temp_s1[obj2F4->unk_0E6 + 1]; + obj2F4->timer_0C0 = temp_s1[obj2F4->unk_0E6 + 1]; obj2F4->unk_084 = 1; obj2F4->unk_0E6 += 2; func_8006D36C(obj2F4); @@ -1405,9 +1408,9 @@ void func_8006EAC4(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - obj8C->unk_50 = 20; + obj8C->timer_50 = 20; Object_SetInfo(&obj8C->info, obj8C->obj.id); - func_80019218(0x2900201D, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2900201D, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_8006EB64(f32 xPos, f32 yPos, f32 zPos) { @@ -1430,7 +1433,7 @@ void func_8006EBC0(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos) { obj2F4->obj.pos.z = zPos; Object_SetInfo(&obj2F4->info, obj2F4->obj.id); obj2F4->info.unk_16 = 2; - func_80019218(0x2900201D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2900201D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_8006EC60(f32 xPos, f32 yPos, f32 zPos) { @@ -1465,21 +1468,21 @@ void func_8006ECBC(s32 objId, PlayerShot* shot, s32 arg2, f32 xPos, f32 yPos, f3 } else { shot->unk_64 = 30; } - shot->unk_68 = arg2 + 100; + shot->playerNum = arg2 + 100; - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { if (arg2 + 100 < 104) { - func_80019218(0x2900000D, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2900000D, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } else if ((arg2 < 60) && (gObjects2F4[arg2].obj.id == OBJ_2F4_200) && (gObjects2F4[arg2].unk_080 > 0)) { - func_80019218(0x2900000D, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2900000D, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else if (arg2 + 100 == 200) { - shot->unk_68 = 100; - func_80019218(0x19030037, &shot->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + shot->playerNum = 100; + Audio_PlaySfx(0x19030037, &shot->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } @@ -1514,7 +1517,7 @@ void func_8006F044(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; obj8C->unk_44 = 100; Object_SetInfo(&obj8C->info, obj8C->obj.id); func_8007A6F0(&obj8C->obj.pos, 0x2903B009); @@ -1538,7 +1541,7 @@ void func_8006F140(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; obj8C->unk_44 = 100; obj8C->unk_78 = 102; obj8C->unk_7A = 18; @@ -1582,7 +1585,7 @@ void func_8006F40C(Object_2F4* obj2F4) { Vec3f sp6C; Object_4C* obj4C; - if ((gPlayer[0].unk_1C8 == 3) && (obj2F4->unk_0B4 != 0x34) && (obj2F4->unk_0B4 != 0x67) && + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (obj2F4->unk_0B4 != 0x34) && (obj2F4->unk_0B4 != 0x67) && (obj2F4->unk_0B4 != 0x68) && (obj2F4->unk_0B4 != 0x30) && (obj2F4->unk_0B4 != 0x31) && (obj2F4->unk_0B4 != 0x32)) { switch (obj2F4->unk_048) { @@ -1599,8 +1602,8 @@ void func_8006F40C(Object_2F4* obj2F4) { obj2F4->unk_048 = 0; break; case 3: - if (obj2F4->unk_0BE == 0) { - obj2F4->unk_0BE = 6; + if (obj2F4->timer_0BE == 0) { + obj2F4->timer_0BE = 6; sp78.x = 0.0f; sp78.y = 0.0f; sp78.z = 100.0f; @@ -1608,9 +1611,9 @@ void func_8006F40C(Object_2F4* obj2F4) { func_8006EEFC(obj2F4->index, obj2F4->obj.pos.x + (sp6C.x * 1.5), obj2F4->obj.pos.y + (sp6C.y * 1.5), obj2F4->obj.pos.z + (sp6C.z * 1.5), sp6C.x, sp6C.y, sp6C.z, obj2F4->unk_0F4.x, obj2F4->unk_0F4.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z); - obj2F4->unk_0C2 = 2; - obj2F4->unk_04C--; - if (obj2F4->unk_04C <= 0) { + obj2F4->timer_0C2 = 2; + obj2F4->timer_04C--; + if (obj2F4->timer_04C <= 0) { obj2F4->unk_048 = 0; } } @@ -1648,13 +1651,13 @@ void func_8006F40C(Object_2F4* obj2F4) { obj2F4->unk_048 = 0; break; case 8: - sp6C.x = gPlayer[0].unk_074; - sp6C.y = gPlayer[0].unk_078; - gPlayer[0].unk_074 += (Rand_ZeroOne() - 0.5f) * 300.0f; - gPlayer[0].unk_078 += (Rand_ZeroOne() - 0.5f) * 300.0f; + sp6C.x = gPlayer[0].pos.x; + sp6C.y = gPlayer[0].pos.y; + gPlayer[0].pos.x += (Rand_ZeroOne() - 0.5f) * 300.0f; + gPlayer[0].pos.y += (Rand_ZeroOne() - 0.5f) * 300.0f; func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); - gPlayer[0].unk_074 = sp6C.x; - gPlayer[0].unk_078 = sp6C.y; + gPlayer[0].pos.x = sp6C.x; + gPlayer[0].pos.y = sp6C.y; obj2F4->unk_048 = 0; break; case 9: @@ -1675,7 +1678,7 @@ void func_8006F40C(Object_2F4* obj2F4) { break; case 11: func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, - obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->unk_110 * 3.0f, 15); + obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->scale * 3.0f, 15); func_80066254(obj2F4); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903B009); @@ -1685,16 +1688,16 @@ void func_8006F40C(Object_2F4* obj2F4) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); break; case 13: - if (obj2F4->unk_0BE > 25) { + if (obj2F4->timer_0BE > 25) { Math_SmoothStepToF(&obj2F4->unk_150, 90.0f, 0.2f, 8.0f, 0.01f); } - if (obj2F4->unk_0BE < 25) { + if (obj2F4->timer_0BE < 25) { Math_SmoothStepToF(&obj2F4->unk_150, 0.0f, 0.2f, 8.0f, 0.01f); } - if (obj2F4->unk_0BE == 30) { + if (obj2F4->timer_0BE == 30) { func_8006EC60(obj2F4->obj.pos.x, obj2F4->obj.pos.y - 50.0f, obj2F4->obj.pos.z); } - if (obj2F4->unk_0BE == 0) { + if (obj2F4->timer_0BE == 0) { obj2F4->unk_048 = 0; } break; @@ -1706,7 +1709,7 @@ void func_8006F40C(Object_2F4* obj2F4) { obj2F4->unk_048 = 0; break; case 17: - if (obj2F4->obj.pos.z < (gPlayer[0].unk_040.z - 600.0f)) { + if (obj2F4->obj.pos.z < (gPlayer[0].camEye.z - 600.0f)) { func_8007F20C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); } obj2F4->unk_048 = 0; @@ -1752,8 +1755,8 @@ void func_8006F40C(Object_2F4* obj2F4) { } void func_8006FE28(Object_2F4* obj2F4) { - if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].unk_074) < 100.0f) && - (fabsf(obj2F4->obj.pos.y - gPlayer[0].unk_078) < 100.0f) && + if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].pos.x) < 100.0f) && + (fabsf(obj2F4->obj.pos.y - gPlayer[0].pos.y) < 100.0f) && (fabsf(obj2F4->obj.pos.z - gPlayer[0].unk_138) < 50.0f)) { func_80067A40(); func_8001A55C(&obj2F4->sfxPos, 0x1900302B); @@ -1766,12 +1769,12 @@ void func_8006FEEC(Object_2F4* obj2F4) { if ((obj2F4->unk_0D0 != 0) && (obj2F4->unk_0CE != 0)) { obj2F4->unk_0D0 = 0; - obj2F4->unk_0C6 = 0xF; + obj2F4->timer_0C6 = 0xF; obj2F4->unk_0CE = obj2F4->unk_0CE - obj2F4->unk_0D6; if (obj2F4->unk_0CE <= 0) { for (i = 3; i < 11; i++) { func_E16C50_801900FC(&obj2F4->unk_18C[i], &obj2F4->unk_18C[i + 11], (Rand_ZeroOne() - 0.5f) * 20.0f, - Rand_ZeroOne() * -10.0f, Rand_ZeroOne() * 10.0f, 41, obj2F4->unk_110, 200, i); + Rand_ZeroOne() * -10.0f, Rand_ZeroOne() * 10.0f, 41, obj2F4->scale, 200, i); } obj2F4->unk_044 = 0; func_80066254(obj2F4); @@ -1779,7 +1782,7 @@ void func_8006FEEC(Object_2F4* obj2F4) { func_8007A6F0(&obj2F4->obj.pos, 0x29018036); func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 4.0f); } else { - func_80019218(0x29033037, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29033037, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } } @@ -1804,8 +1807,8 @@ bool func_800700A4(Object_2F4* obj2F4) { break; } gTeamShields[obj2F4->unk_080] = -1; - D_80177910[obj2F4->unk_080] = 0; - obj2F4->unk_0C2 = 5000; + gTeamDamage[obj2F4->unk_080] = 0; + obj2F4->timer_0C2 = 5000; obj2F4->unk_0D0 = 0; return true; } @@ -1821,7 +1824,7 @@ void func_800701E0(Object_2F4* obj2F4) { if ((obj2F4->unk_0D0 != 0) && (obj2F4->unk_0B4 == 0x43) && (obj2F4->unk_0D2 == 0)) { obj2F4->unk_0D0 = 0; } - if ((obj2F4->unk_0D0 != 0) && (obj2F4->unk_0B4 == 0x53) && (obj2F4->unk_0C2 >= 2)) { + if ((obj2F4->unk_0D0 != 0) && (obj2F4->unk_0B4 == 0x53) && (obj2F4->timer_0C2 >= 2)) { obj2F4->unk_0D0 = 0; } if ((obj2F4->unk_0D0 != 0) && @@ -1844,9 +1847,9 @@ void func_800701E0(Object_2F4* obj2F4) { } if (obj2F4->unk_0B4 != 0x53) { if ((obj2F4->unk_0B4 == 6) && (gCurrentLevel == LEVEL_SOLAR)) { - func_80019218(0x29018036, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29018036, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x2903700B, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903700B, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } obj2F4->obj.status = 3; var_fv1 = 0.7f; @@ -1857,18 +1860,18 @@ void func_800701E0(Object_2F4* obj2F4) { (obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0xE) && (obj2F4->unk_0B4 != 0x3D) && ((s32) obj2F4->unk_0D6 < 0x1F) && (obj2F4->unk_0B4 != 0x3E) && (obj2F4->unk_0B4 != 0x40) && (obj2F4->unk_0B4 != 0x48) && (obj2F4->unk_0B4 != 0x44)) { - func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_110 * 4.0f); + func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->scale * 4.0f); obj2F4->unk_0D0 = 0; } - obj2F4->unk_0C2 = 0xA; - obj2F4->unk_0BE = 0; + obj2F4->timer_0C2 = 10; + obj2F4->timer_0BE = 0; obj2F4->unk_046 = 0xFF; - obj2F4->unk_048 = 0x384; + obj2F4->unk_048 = 900; obj2F4->unk_0C9 = 1; - if (gLevelType == LEVELTYPE_GROUND) { - obj2F4->unk_04C = (s16) (s32) (Rand_ZeroOne() * 2.9f); + if (gLevelType == LEVELTYPE_PLANET) { + obj2F4->timer_04C = (s16) (s32) (Rand_ZeroOne() * 2.9f); if (obj2F4->unk_0B4 == 2) { - obj2F4->unk_04C = 1; + obj2F4->timer_04C = 1; if (obj2F4->obj.pos.x < obj2F4->unk_0D8.x) { func_800A69F8(1, obj2F4->obj.pos.x + 20.0f, obj2F4->obj.pos.y, obj2F4->obj.pos.z); obj2F4->unk_158 = 777.0f; @@ -1877,8 +1880,8 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->unk_15C = 777.0f; } } - obj2F4->unk_0BC = 0x12C; - if (gAllRangeMode != 1) { + obj2F4->timer_0BC = 300; + if (gLevelMode != LEVELMODE_ALL_RANGE) { obj2F4->unk_0E8.x *= 0.5f; obj2F4->unk_0E8.y = Rand_ZeroOne() * 5.0f; if (obj2F4->unk_0E8.z < 0.0f) { @@ -1890,8 +1893,8 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->unk_0E8.z = Rand_ZeroOne() * -10.0f; } } - if (obj2F4->unk_0B4 == 0x5A) { - obj2F4->unk_04C = 0x3E7; + if (obj2F4->unk_0B4 == 90) { + obj2F4->timer_04C = 999; } } else { switch (obj2F4->unk_0B4) { @@ -1905,16 +1908,16 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->obj.pos.y -= obj2F4->unk_0E8.y; obj2F4->obj.status = 2; func_8007D0E0(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y + 30.0f, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 5.0f); + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->scale * 5.0f); obj2F4->unk_0D0 = 0; - obj2F4->unk_0C2 = 0x2710; + obj2F4->timer_0C2 = 0x2710; obj2F4->info.unk_1C = 0.0f; gHitCount += obj2F4->info.bonus; D_80177850 = 0xF; break; default: - obj2F4->unk_0BC = 0x23; - obj2F4->unk_04C = 2; + obj2F4->timer_0BC = 0x23; + obj2F4->timer_04C = 2; obj2F4->unk_0E8.y = (Rand_ZeroOne() - 0.5f) * 20.0f; obj2F4->unk_0E8.x = (Rand_ZeroOne() - 0.5f) * 20.0f; obj2F4->unk_0E8.z = 0.0f; @@ -1923,24 +1926,24 @@ void func_800701E0(Object_2F4* obj2F4) { } } if (obj2F4->unk_0B4 == 0x52) { - func_80019218(0x11000055, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11000055, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); obj2F4->unk_0D0 = 1; func_8007C688(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 3.0f, 0x3C); } } else { - obj2F4->unk_0C6 = 0x14; + obj2F4->timer_0C6 = 20; if ((obj2F4->unk_0B4 == 6) && (gCurrentLevel == LEVEL_SOLAR)) { - func_80019218(0x29033037, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - } else if (obj2F4->unk_0CE < 0x14) { - func_80019218(0x2943500F, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29033037, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } else if (obj2F4->unk_0CE < 20) { + Audio_PlaySfx(0x2943500F, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } if ((obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0x3D) && (obj2F4->unk_0B4 != 0x53)) { - func_8007D10C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_110 * 1.5f); + func_8007D10C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->scale * 1.5f); } - if (((gAllRangeMode == 1) || (gAllRangeMode == 2)) && (obj2F4->unk_0B4 != 0x15) && - (obj2F4->unk_0B4 != 0x17)) { + if (((gLevelMode == LEVELMODE_ALL_RANGE) || (gLevelMode == LEVELMODE_UNK_2)) && + (obj2F4->unk_0B4 != 0x15) && (obj2F4->unk_0B4 != 0x17)) { obj2F4->unk_148 = 20.0f; if (obj2F4->obj.pos.x < obj2F4->unk_0D8.x) { obj2F4->unk_148 *= -1.0f; @@ -2007,18 +2010,18 @@ void func_80070BA8(Object_2F4* obj2F4) { if (obj2F4->unk_0D0 != 0) { obj2F4->unk_0D0 = 0; if ((obj2F4->unk_0B4 != 0x11) || ((obj2F4->unk_0B4 == 0x11) && (obj2F4->unk_0D2 == 0))) { - obj2F4->unk_0C6 = 10; + obj2F4->timer_0C6 = 10; func_8007C120(obj2F4->unk_0D8.x, obj2F4->unk_0D8.y, obj2F4->unk_0D8.z, obj2F4->unk_0E8.x, obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 0.2f, 10); obj2F4->unk_0CE -= obj2F4->unk_0D6; - func_80019218(0x29033064, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29033064, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (obj2F4->unk_0CE <= 0) { func_80077240(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->info.bonus); gHitCount += obj2F4->info.bonus + 1; D_80177850 = 15; } } else { - func_80019218(0x29121007, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29121007, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } } @@ -2100,98 +2103,98 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x9: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 100.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 100.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xA: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 400.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 400.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xB: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 700.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 700.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xC: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 200.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 200.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xD: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= -100.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= -100.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xE: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= -400.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= -400.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0xF: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= -700.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= -700.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x10: - if (((obj2F4->obj.pos.x - gPlayer[0].unk_074) >= -200.0f) && - ((obj2F4->obj.pos.x - gPlayer[0].unk_074) <= 0.0f)) { + if (((obj2F4->obj.pos.x - gPlayer[0].pos.x) >= -200.0f) && + ((obj2F4->obj.pos.x - gPlayer[0].pos.x) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x11: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 100.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 100.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x12: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 400.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 400.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x13: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 700.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 700.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x14: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 200.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 200.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x15: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= -100.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= -100.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x16: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= -400.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= -400.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x17: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= -700.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= -700.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 0.0f)) { func_80070CEC(obj2F4); } break; case 0x18: - if (((obj2F4->obj.pos.y - gPlayer[0].unk_078) >= -200.0f) && - ((obj2F4->obj.pos.y - gPlayer[0].unk_078) <= 0.0f)) { + if (((obj2F4->obj.pos.y - gPlayer[0].pos.y) >= -200.0f) && + ((obj2F4->obj.pos.y - gPlayer[0].pos.y) <= 0.0f)) { func_80070CEC(obj2F4); } break; @@ -2289,7 +2292,7 @@ void func_80070D44(Object_2F4* obj2F4) { break; case 0x29: if ((gObjects2F4[obj2F4->unk_074].obj.status != 2) || - ((gObjects2F4[obj2F4->unk_074].unk_110 < 0.0f) && (obj2F4->unk_0CE <= 0))) { + ((gObjects2F4[obj2F4->unk_074].scale < 0.0f) && (obj2F4->unk_0CE <= 0))) { func_80070CEC(obj2F4); } break; @@ -2343,7 +2346,7 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x2F: - if (gControllerPress[D_80177AF8].button & R_CBUTTONS) { + if (gControllerPress[gMainController].button & R_CBUTTONS) { func_8001AF40(0); D_800CFF90 = 0; D_80161690 = 0; @@ -2421,12 +2424,12 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x3E: - if (D_80161670[obj2F4->unk_080] == 0) { + if (D_Timer_80161670[obj2F4->unk_080] == 0) { func_80070CEC(obj2F4); } break; case 0x3F: - if (D_80161670[obj2F4->unk_080] != 0) { + if (D_Timer_80161670[obj2F4->unk_080] != 0) { func_80070CEC(obj2F4); } break; @@ -2522,14 +2525,14 @@ void func_80071DC0(Object_2F4* obj2F4) { obj2F4->unk_0E8.x, obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 10.0f, 9); } if (!(gFrameCount & 0xF)) { - func_80019218(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } obj2F4->unk_0E8.y -= 0.1f; obj2F4->unk_0E8.z = 0.0f; obj2F4->obj.rot.x += 0.2f; obj2F4->obj.rot.z += 0.3f; if (!(gFrameCount & 7) && (Rand_ZeroOne() < 0.5f)) { - obj2F4->unk_0C6 = 4; + obj2F4->timer_0C6 = 4; } } @@ -2545,16 +2548,16 @@ void func_800720E8(Object_2F4* obj2F4) { } obj2F4->unk_0CE -= obj2F4->unk_0D6; obj2F4->unk_154 += 0.2f; - obj2F4->unk_0BC = 5; - if (obj2F4->unk_0BE < 20) { - obj2F4->unk_0BE += 5; + obj2F4->timer_0BC = 5; + if (obj2F4->timer_0BE < 20) { + obj2F4->timer_0BE += 5; } if (obj2F4->unk_0CE <= 0) { obj2F4->unk_046 = 1; obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6032408); - func_80019218(0x1900000D, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1900000D, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x2903300E, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903300E, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } obj2F4->unk_0D0 = 0; } @@ -2586,8 +2589,8 @@ void func_800722EC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 yRot) { obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->unk_44 = 250; - obj8C->unk_70 = 2.0f; - obj8C->unk_6C = (Rand_ZeroOne() - 0.5f) * 200.0f; + obj8C->scale2 = 2.0f; + obj8C->scale1 = (Rand_ZeroOne() - 0.5f) * 200.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->unk_4C = obj8C->unk_4E = 1; Object_SetInfo(&obj8C->info, obj8C->obj.id); @@ -2625,7 +2628,7 @@ void func_80072474(Object_2F4* obj2F4) { } if (obj2F4->unk_08C != 0) { var_fv1 = - Math_RadToDeg(Math_Atan2F(gPlayer[0].unk_074 - obj2F4->obj.pos.x, gPlayer[0].unk_138 - obj2F4->obj.pos.z)); + Math_RadToDeg(Math_Atan2F(gPlayer[0].pos.x - obj2F4->obj.pos.x, gPlayer[0].unk_138 - obj2F4->obj.pos.z)); } else if (obj2F4->unk_068 != 0) { var_fv1 = obj2F4->unk_0F4.y; } else { @@ -2659,7 +2662,7 @@ void func_80072594(Object_2F4* obj2F4) { spDC = 0.0f; spD8 = 0.0f; spD4 = 0.0f; - if ((gPlayer->unk_1C8 == 7) || (D_8017828C != 0)) { + if ((gPlayer->state_1C8 == PLAYERSTATE_1C8_7) || (D_8017828C != 0)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); return; } @@ -2678,7 +2681,7 @@ void func_80072594(Object_2F4* obj2F4) { } if (obj2F4->unk_0B4 == 300) { gPlayer->unk_1A4 = obj2F4->index; - obj2F4->unk_0C2 = 100; + obj2F4->timer_0C2 = 100; } else if (obj2F4->unk_0B4 >= 200) { obj2F4->unk_04E++; if (obj2F4->unk_04E >= 100) { @@ -2692,20 +2695,20 @@ void func_80072594(Object_2F4* obj2F4) { D_80177500[obj2F4->unk_046][obj2F4->unk_04E] = obj2F4->obj.rot.z; if (obj2F4->unk_0D0 != 0) { obj2F4->unk_0D0 = 0; - obj2F4->unk_0C6 = 20; + obj2F4->timer_0C6 = 20; obj2F4->unk_0CE -= obj2F4->unk_0D6; - func_80019218(0x29034041, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29034041, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (obj2F4->unk_0CE <= 0) { - obj2F4->unk_0C6 = 200; + obj2F4->timer_0C6 = 200; obj2F4->obj.status = 3; func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 8.0f); obj2F4->obj.status = 3; - obj2F4->unk_0BC = 20; + obj2F4->timer_0BC = 20; obj2F4->obj.id = OBJ_2F4_194; } } } - if ((obj2F4->unk_0B4 == 27) && (obj2F4->unk_0C2 != 0)) { + if ((obj2F4->unk_0B4 == 27) && (obj2F4->timer_0C2 != 0)) { obj2F4->unk_0B8 = 0; } @@ -2714,7 +2717,7 @@ void func_80072594(Object_2F4* obj2F4) { func_8006D36C(obj2F4); break; case 0x1: - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { func_8006D36C(obj2F4); } break; @@ -2730,13 +2733,13 @@ void func_80072594(Object_2F4* obj2F4) { Matrix_RotateX(gCalcMatrix, -obj2F4->unk_2E8.x * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -obj2F4->unk_2E8.y * M_DTOR, 1); if ((obj2F4->unk_0B8 == 0xE) || (obj2F4->unk_0B8 == 0xF)) { - spB8.x = gPlayer->unk_040.x - spF0; - spB8.y = gPlayer->unk_040.y - (spEC + 25.0f); - spB8.z = (gPlayer->unk_040.z * 15.0f) - spE8; + spB8.x = gPlayer->camEye.x - spF0; + spB8.y = gPlayer->camEye.y - (spEC + 25.0f); + spB8.z = (gPlayer->camEye.z * 15.0f) - spE8; } else { - spB8.x = gPlayer->unk_074 - spF0; - spB8.y = gPlayer->unk_078 - (spEC + 25.0f); - spB8.z = (gPlayer->unk_0C0.z * 15.0f) + gPlayer->unk_07C - spE8; + spB8.x = gPlayer->pos.x - spF0; + spB8.y = gPlayer->pos.y - (spEC + 25.0f); + spB8.z = (gPlayer->vel.z * 15.0f) + gPlayer->pos.z - spE8; } Matrix_MultVec3fNoTranslate(gCalcMatrix, &spB8, &spAC); spE0 = Math_RadToDeg(Math_Atan2F(spAC.x, spAC.z)); @@ -2753,7 +2756,7 @@ void func_80072594(Object_2F4* obj2F4) { obj2F4->obj.rot.x = 0.0f; Math_SmoothStepToAngle(&obj2F4->obj.rot.y, spE0, 0.2f, obj2F4->unk_174, 0.001f); Math_SmoothStepToAngle(&obj2F4->unk_150, spE4, 0.2f, obj2F4->unk_174, 0.001f); - if (!(obj2F4->unk_0BC & 0x1F) && (spFC == 0)) { + if (!(obj2F4->timer_0BC & 0x1F) && (spFC == 0)) { Matrix_RotateY(gCalcMatrix, obj2F4->unk_2E8.y * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, obj2F4->unk_2E8.x * M_DTOR, 1); Matrix_RotateZ(gCalcMatrix, (obj2F4->unk_2E8.z + obj2F4->unk_0F4.z) * M_DTOR, 1); @@ -2781,13 +2784,13 @@ void func_80072594(Object_2F4* obj2F4) { } } else { if ((obj2F4->unk_0B8 == 0xE) || (obj2F4->unk_0B8 == 0xF)) { - spCC = gPlayer->unk_040.x; - spC8 = gPlayer->unk_040.y; - spC4 = gPlayer->unk_040.z; + spCC = gPlayer->camEye.x; + spC8 = gPlayer->camEye.y; + spC4 = gPlayer->camEye.z; } else { - spCC = gPlayer->unk_074; - spC8 = gPlayer->unk_078; - spC4 = gPlayer->unk_07C; + spCC = gPlayer->pos.x; + spC8 = gPlayer->pos.y; + spC4 = gPlayer->pos.z; } Math_SmoothStepToAngle(&obj2F4->unk_2E8.z, 0.0f, 0.1f, 5.0f, 0.0001f); Math_SmoothStepToAngle(&obj2F4->unk_0F4.z, 0.0f, 0.1f, 5.0f, 0.0001f); @@ -2809,7 +2812,7 @@ void func_80072594(Object_2F4* obj2F4) { Math_SmoothStepToAngle(&obj2F4->unk_170, var_fv0, 0.1f, 5.0f, 0.01f); } } - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { func_8006D36C(obj2F4); } break; @@ -2818,7 +2821,7 @@ void func_80072594(Object_2F4* obj2F4) { spD8 = __cosf(((obj2F4->index * 0x2D) + (gFrameCount * 2)) * M_DTOR) * obj2F4[0].unk_158; pad = obj2F4->unk_054; pad = gObjects2F4[pad].unk_080; - D_80161670[pad] = 5; + D_Timer_80161670[pad] = 5; /* fallthrough */ case 0x8: case 0x9: @@ -2845,7 +2848,7 @@ void func_80072594(Object_2F4* obj2F4) { } Math_SmoothStepToAngle(&obj2F4->unk_170, var_fv0, 0.1f, 5.0f, 0.01f); } - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { func_8006D36C(obj2F4); } break; @@ -2901,7 +2904,7 @@ void func_80072594(Object_2F4* obj2F4) { case 0xC: Math_SmoothStepToAngle(&obj2F4->unk_0F4.x, 270.0f, 0.1f, 2.0f, 0.0f); gTeamShields[obj2F4->unk_080] = -1; - D_80177910[obj2F4->unk_080] = 0; + gTeamDamage[obj2F4->unk_080] = 0; break; case 200: break; @@ -2920,7 +2923,7 @@ void func_80072594(Object_2F4* obj2F4) { obj2F4->unk_2E8.x = gObjects2F4[obj2F4->unk_074].obj.rot.x; obj2F4->unk_2E8.y = gObjects2F4[obj2F4->unk_074].obj.rot.y; obj2F4->unk_2E8.z = gObjects2F4[obj2F4->unk_074].obj.rot.z; - if (obj2F4->unk_0C0 == 0) { + if (obj2F4->timer_0C0 == 0) { obj2F4->unk_084 = 0; } } @@ -2939,7 +2942,7 @@ void func_80072594(Object_2F4* obj2F4) { obj2F4->unk_0F4.y += 360.0f; } if (obj2F4->unk_068 != 0) { - if ((gAllRangeMode == 2) && (obj2F4->unk_0B4 == 0xC8)) { + if ((gLevelMode == LEVELMODE_UNK_2) && (obj2F4->unk_0B4 == 0xC8)) { Math_SmoothStepToAngle(&obj2F4->obj.rot.x, obj2F4->unk_0F4.x, 0.1f, 10.0f, 0.00001f); Math_SmoothStepToAngle(&obj2F4->obj.rot.y, obj2F4->unk_0F4.y, 0.1f, 10.0f, 0.00001f); } else { @@ -3007,7 +3010,7 @@ void func_80072594(Object_2F4* obj2F4) { if (obj2F4->unk_064 == 0x100) { obj2F4->unk_0E8.z -= D_80177D08; } - if (gPlayer->unk_1C8 == 8) { + if (gPlayer->state_1C8 == PLAYERSTATE_1C8_8) { obj2F4->unk_0E8.z = 100.0f; } func_80070D44(obj2F4); @@ -3016,19 +3019,19 @@ void func_80072594(Object_2F4* obj2F4) { if (obj2F4->unk_0B4 == 0x26) { func_800720E8(obj2F4); } else { - if (obj2F4->unk_110 <= -1.999f) { + if (obj2F4->scale <= -1.999f) { func_80070BA8(obj2F4); } else { - if ((obj2F4->unk_0D0 == 1) && (obj2F4->unk_110 < 0.5f) && (obj2F4->unk_0B4 != 0x30) && + if ((obj2F4->unk_0D0 == 1) && (obj2F4->scale < 0.5f) && (obj2F4->unk_0B4 != 0x30) && (obj2F4->unk_0B4 != 0x31) && (obj2F4->unk_0B4 != 0x32)) { obj2F4->unk_0D0 = 0; if (gCurrentLevel == LEVEL_METEO) { - func_80019218(0x2902107D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2902107D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x29121007, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x29121007, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } - if ((obj2F4->unk_0B4 < 0xC8) && (obj2F4->unk_0B4 != 0x4E) && (obj2F4->unk_110 >= 0.5f)) { + if ((obj2F4->unk_0B4 < 0xC8) && (obj2F4->unk_0B4 != 0x4E) && (obj2F4->scale >= 0.5f)) { switch (obj2F4->unk_0B4) { case 0x47: func_8006FE28(obj2F4); @@ -3065,7 +3068,7 @@ void func_80072594(Object_2F4* obj2F4) { spF0 = 350.0f; if (!(gFrameCount & 3)) { func_8007240C(obj2F4->obj.pos.x, spEC, obj2F4->obj.pos.z, obj2F4->obj.rot.y); - func_80019218(0x19800017, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19800017, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } Math_SmoothStepToAngle(&obj2F4->obj.rot.x, spF0, 0.1f, 1.0f, 0.0f); @@ -3125,7 +3128,7 @@ void func_80072594(Object_2F4* obj2F4) { func_8006753C(obj2F4); break; case 0x4F: - if (obj2F4->unk_0C4 == 0) { + if (obj2F4->timer_0C4 == 0) { obj2F4->unk_0B6 += 1; if (Animation_GetFrameCount(&D_600E5EC) < obj2F4->unk_0B6) { obj2F4->unk_0B6 = 0; @@ -3161,7 +3164,7 @@ void func_80072594(Object_2F4* obj2F4) { sp84.y = (Rand_ZeroOne() * 25.0f) + 20.0f; sp84.z = 0.0f; obj8C->unk_44 = 10; - obj8C->unk_70 = 1.0f; + obj8C->scale2 = 1.0f; Matrix_RotateY(gCalcMatrix, ((Rand_ZeroOne() * 180.0f) + 180.0f) * M_DTOR, 0); Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp84, &sp78); obj8C->unk_54.x = sp78.x; @@ -3186,7 +3189,7 @@ void func_80072594(Object_2F4* obj2F4) { obj8C->obj.pos.x = ((Rand_ZeroOne() - 0.5f) * 3.0f) + obj2F4->obj.pos.x + sp90.x; obj8C->obj.pos.y = ((Rand_ZeroOne() - 0.5f) * 3.0f) + obj2F4->obj.pos.y + sp90.y; obj8C->obj.pos.z = ((Rand_ZeroOne() - 0.5f) * 3.0f) + obj2F4->obj.pos.z + 180.0f; - obj8C->unk_70 = 9.0f; + obj8C->scale2 = 9.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 5.0f; obj8C->unk_54.y = (Rand_ZeroOne() - 0.5f) * 3.0f + 30.0f; @@ -3208,7 +3211,7 @@ void func_80072594(Object_2F4* obj2F4) { obj8C->obj.pos.x = ((Rand_ZeroOne() - 0.5f) * 3.0f) + obj2F4->obj.pos.x; obj8C->obj.pos.y = ((Rand_ZeroOne() - 0.5f) * 5.0f) + obj2F4->obj.pos.y + 50.0f; obj8C->obj.pos.z = ((Rand_ZeroOne() - 0.5f) * 3.0f) + obj2F4->obj.pos.z + 200.0f; - obj8C->unk_70 = 9.0f; + obj8C->scale2 = 9.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 5.0f; obj8C->unk_54.y = (Rand_ZeroOne() - 0.5f) * 3.0f + 10.0f; @@ -3270,7 +3273,7 @@ void func_80072594(Object_2F4* obj2F4) { ((Rand_ZeroOne() - 0.5f) * 100.0f) + obj2F4->obj.pos.z, 1.0f, 0); } } - obj2F4->unk_0C2 = 10000; + obj2F4->timer_0C2 = 10000; } break; case 0x58: @@ -3299,7 +3302,7 @@ void func_80072594(Object_2F4* obj2F4) { } break; } - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { D_80177F24[obj2F4->index] = obj2F4->obj.pos.x; D_8017802C[obj2F4->index] = obj2F4->obj.pos.z; D_80178134[obj2F4->index] = Math_ModF(obj2F4->unk_0F4.y, 360.0f) + 180.0f; @@ -3356,8 +3359,8 @@ void func_80074E3C(Object_2F4* obj2F4) { Animation_GetFrameData(&D_6013820, 0, sp30); sp30[6].y += obj2F4->unk_150; - sp30[5].z += obj2F4->unk_154 + ((obj2F4->unk_0BE >> 2) & 1); - sp30[4].z -= obj2F4->unk_154 + ((obj2F4->unk_0BE >> 2) & 1); + sp30[5].z += obj2F4->unk_154 + ((obj2F4->timer_0BE >> 2) & 1); + sp30[4].z -= obj2F4->unk_154 + ((obj2F4->timer_0BE >> 2) & 1); Animation_DrawSkeleton(1, D_601390C, sp30, func_80074C44, NULL, obj2F4, &gIdentityMatrix); } @@ -3384,25 +3387,25 @@ void func_80074FF0(Object_2F4* obj2F4) { s16 temp_s0; s32 pad; - if (obj2F4->unk_0C6 && (obj2F4->unk_0B4 != 0x5A) && (obj2F4->unk_0B4 != 0x44) && (obj2F4->unk_0B4 != 0x48)) { + if (obj2F4->timer_0C6 && (obj2F4->unk_0B4 != 0x5A) && (obj2F4->unk_0B4 != 0x44) && (obj2F4->unk_0B4 != 0x48)) { if ((obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0xE) && (obj2F4->unk_0B4 != 0x3D) && (obj2F4->unk_0B4 != 0x3E) && (obj2F4->unk_0B4 != 0x53) && (obj2F4->unk_0B4 != 0x62) && - (obj2F4->unk_110 > 0.5f) && (obj2F4->unk_0C6 >= 9) && !(obj2F4->unk_0C6 & 3) && (D_80177854 != 0x64)) { + (obj2F4->scale > 0.5f) && (obj2F4->timer_0C6 >= 9) && !(obj2F4->timer_0C6 & 3) && (D_80177854 != 0x64)) { func_8007C120(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, obj2F4->unk_0E8.y, - obj2F4->unk_0E8.z, obj2F4->unk_110 * 0.07f, 3); + obj2F4->unk_0E8.z, obj2F4->scale * 0.07f, 3); } if ((obj2F4->unk_0B4 != 0x15) && (obj2F4->unk_0B4 != 0x17) && (obj2F4->unk_0B4 != 0x4F) && (obj2F4->unk_0B4 != 0x53) && (obj2F4->unk_0B4 != 0x1B) && (obj2F4->unk_0B4 != 0x33) && (obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0x48) && (obj2F4->unk_0B4 != 0x1C) && - (obj2F4->unk_110 > 0.5f)) { - sp40 = __sinf(obj2F4->unk_0C6 * 400.0f * M_DTOR) * obj2F4->unk_0C6; + (obj2F4->scale > 0.5f)) { + sp40 = __sinf(obj2F4->timer_0C6 * 400.0f * M_DTOR) * obj2F4->timer_0C6; Matrix_RotateY(gGfxMatrix, M_DTOR * sp40, 1); Matrix_RotateX(gGfxMatrix, M_DTOR * sp40, 1); Matrix_RotateZ(gGfxMatrix, M_DTOR * sp40, 1); Matrix_SetGfxMtx(&gMasterDisp); } } - if ((obj2F4->obj.status == 3) && (obj2F4->unk_0BE != 0)) { + if ((obj2F4->obj.status == 3) && (obj2F4->timer_0BE != 0)) { RCP_SetupDL_27(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); } @@ -3410,7 +3413,7 @@ void func_80074FF0(Object_2F4* obj2F4) { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else if ((obj2F4->unk_0B4 == 0x52) || (obj2F4->unk_0B4 == 0x5A) || ((obj2F4->unk_0B4 == 6) && (gCurrentLevel == LEVEL_SOLAR))) { - if (!(obj2F4->unk_0C6 & 1)) { + if (!(obj2F4->timer_0C6 & 1)) { RCP_SetupDL(&gMasterDisp, 0x39); } else { RCP_SetupDL(&gMasterDisp, 0x3D); @@ -3458,7 +3461,7 @@ void func_80074FF0(Object_2F4* obj2F4) { func_8005B388(obj2F4); break; case 0x2B: - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { gSPDisplayList(gMasterDisp++, D_40018A0); } else { gSPDisplayList(gMasterDisp++, D_4007870); @@ -3526,8 +3529,8 @@ void func_80074FF0(Object_2F4* obj2F4) { func_8005B1E8(obj2F4, 2); break; case 0x1B: - if (obj2F4->unk_0C2 != 0) { - if (!(obj2F4->unk_0C2 & 3) && (D_80177854 != 0x64)) { + if (obj2F4->timer_0C2 != 0) { + if (!(obj2F4->timer_0C2 & 3) && (D_80177854 != 0x64)) { func_8007D0E0(((Rand_ZeroOne() - 0.5f) * 200.0f) + obj2F4->obj.pos.x, ((Rand_ZeroOne() - 0.5f) * 200.0f) + obj2F4->obj.pos.y, ((Rand_ZeroOne() - 0.5f) * 200.0f) + obj2F4->obj.pos.z, @@ -3657,7 +3660,7 @@ void func_80074FF0(Object_2F4* obj2F4) { Animation_DrawSkeleton(1, D_400014C, sp114, NULL, NULL, obj2F4, &gIdentityMatrix); break; case 0xFFF: - obj2F4->unk_0C2 = 10; + obj2F4->timer_0C2 = 10; break; } if ((D_80161410 > 0) && ((obj2F4->unk_080 > 0) && (obj2F4->unk_080 < 6))) { @@ -3682,22 +3685,22 @@ void func_800763A4(Object_2F4* obj2F4) { Vec3f sp4C; s32 pad; - if (obj2F4->unk_0B4 == 0x1B) { + if (obj2F4->unk_0B4 == 27) { obj2F4->obj.pos.y -= obj2F4->unk_0E8.y; obj2F4->obj.status = 2; func_8007D0E0(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y + 30.0f, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 5.0f); - obj2F4->unk_0C2 = 10000; + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->scale * 5.0f); + obj2F4->timer_0C2 = 10000; return; } - if (obj2F4->unk_0BE != 0) { + if (obj2F4->timer_0BE != 0) { obj2F4->unk_0E8.z = 0.0f; obj2F4->unk_0E8.x = 0.0f; obj2F4->unk_0E8.y = 0.0f; - if (obj2F4->unk_0BE == 1) { + if (obj2F4->timer_0BE == 1) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_80066254(obj2F4); - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { D_80177F24[obj2F4->index] = obj2F4->obj.pos.x; D_8017802C[obj2F4->index] = obj2F4->obj.pos.z; D_80178134[obj2F4->index] = 1001.0f; @@ -3705,10 +3708,10 @@ void func_800763A4(Object_2F4* obj2F4) { return; } } else { - if ((gLevelType == LEVELTYPE_GROUND) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) { obj2F4->unk_10C = 0.4f; } - switch (obj2F4->unk_04C) { + switch (obj2F4->timer_04C) { case 0: case 1: if (obj2F4->index & 1) { @@ -3730,26 +3733,26 @@ void func_800763A4(Object_2F4* obj2F4) { obj2F4->obj.rot.x += (-90.0f - obj2F4->obj.rot.x) * 0.1f; break; } - if (((obj2F4->unk_0BC & 3) == 1) && (obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0x3D)) { + if (((obj2F4->timer_0BC & 3) == 1) && (obj2F4->unk_0B4 != 13) && (obj2F4->unk_0B4 != 61)) { func_8007D24C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 2.2f); } if ((D_80178294 != 0) && (func_800A73E4(&sp58, &sp5C, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z) != 0)) { - func_8007BFFC(obj2F4->obj.pos.x, sp58 + 20.0f, obj2F4->obj.pos.z, 0.0f, 0.0f, 0.0f, obj2F4->unk_110 * 3.0f, + func_8007BFFC(obj2F4->obj.pos.x, sp58 + 20.0f, obj2F4->obj.pos.z, 0.0f, 0.0f, 0.0f, obj2F4->scale * 3.0f, 5); func_8007B228(obj2F4->obj.pos.x, sp58, obj2F4->obj.pos.z, 2.0f); - obj2F4->unk_0BE = 2; + obj2F4->timer_0BE = 2; func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); return; } if (D_801784AC == 4) { if (func_E6A810_801B6AEC(obj2F4->obj.pos.x, obj2F4->obj.pos.y - 10.0f, obj2F4->obj.pos.z + D_80177D20) != 0) { - func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 20.0f, obj2F4->obj.pos.z, obj2F4->unk_110 * 6.0f); + func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 20.0f, obj2F4->obj.pos.z, obj2F4->scale * 6.0f); func_8007BFFC(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y + 30.0f, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, 0.0f, 0.0f, 0.0f, obj2F4->unk_110 * 4.0f, 20); + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, 0.0f, 0.0f, 0.0f, obj2F4->scale * 4.0f, 20); func_80062C38(obj2F4->obj.pos.x, obj2F4->obj.pos.z); - obj2F4->unk_0BE = 2; + obj2F4->timer_0BE = 2; func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); return; } @@ -3759,7 +3762,7 @@ void func_800763A4(Object_2F4* obj2F4) { sp4C.z = obj2F4->unk_0E8.z; sp60 = func_8006351C(obj2F4->index, &obj2F4->obj.pos, &sp4C, 0); if ((sp60 != 0) || (obj2F4->obj.pos.y < (D_80177940 + 30.0f))) { - if ((Rand_ZeroOne() < 0.5f) && (obj2F4->unk_04C < 3) && (gLevelType == LEVELTYPE_GROUND) && + if ((Rand_ZeroOne() < 0.5f) && (obj2F4->timer_04C < 3) && (gLevelType == LEVELTYPE_PLANET) && (sp60 != 999) && (D_80161A88 != 2) && ((obj2F4->unk_0E8.z < -20.0f) || (obj2F4->unk_0E8.z > 0.0f))) { if (gCurrentLevel == LEVEL_FORTUNA) { @@ -3768,19 +3771,19 @@ void func_800763A4(Object_2F4* obj2F4) { } obj2F4->obj.pos.y -= obj2F4->unk_0E8.y; obj2F4->unk_0E8.y = Rand_ZeroOne() * 10.0f; - obj2F4->unk_04C = 3; - if (gAllRangeMode == 1) { + obj2F4->timer_04C = 3; + if (gLevelMode == LEVELMODE_ALL_RANGE) { func_8007D2C8(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 3.0f); + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->scale * 3.0f); } func_8007D2C8(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 3.0f); - if ((obj2F4->obj.id == 0xC5) && (obj2F4->unk_0E4 < 8)) { + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->scale * 3.0f); + if ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 < 8)) { func_8007A6F0(&obj2F4->obj.pos, 0x2903B009); } else { func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } - if ((obj2F4->obj.id == 0xC8) && (obj2F4->unk_0B4 == 2)) { + if ((obj2F4->obj.id == OBJ_2F4_200) && (obj2F4->unk_0B4 == 2)) { if (obj2F4->unk_158 < 360.0f) { func_800A69F8(1, obj2F4->obj.pos.x + 20.0f, obj2F4->obj.pos.y, obj2F4->obj.pos.z); obj2F4->unk_158 = 777.0f; @@ -3791,21 +3794,21 @@ void func_800763A4(Object_2F4* obj2F4) { } } } else { - if ((obj2F4->obj.pos.y < (D_80177940 + 30.0f)) && (gLevelType == LEVELTYPE_GROUND)) { + if ((obj2F4->obj.pos.y < (D_80177940 + 30.0f)) && (gLevelType == LEVELTYPE_PLANET)) { obj2F4->unk_0E8.z = 0.0f; if (D_80161A88 == 2) { func_8007D9DC(obj2F4->obj.pos.x, D_80177940 + 2.0f, obj2F4->obj.pos.z, 3.0f, 20.0f, 0); - func_8007D9DC(obj2F4->obj.pos.x, D_80177940 + 2.0f, obj2F4->obj.pos.z, 3.0f, 20.0f, 0xA); - func_8007D9DC(obj2F4->obj.pos.x, D_80177940 + 2.0f, obj2F4->obj.pos.z, 3.0f, 20.0f, 0x14); + func_8007D9DC(obj2F4->obj.pos.x, D_80177940 + 2.0f, obj2F4->obj.pos.z, 3.0f, 20.0f, 10); + func_8007D9DC(obj2F4->obj.pos.x, D_80177940 + 2.0f, obj2F4->obj.pos.z, 3.0f, 20.0f, 20); func_8007ADF4(obj2F4->obj.pos.x, D_80177940, obj2F4->obj.pos.z, 0.1f, 3.0f); } else { func_800365E4(obj2F4->obj.pos.x, 3.0f, obj2F4->obj.pos.z, obj2F4->obj.pos.x, obj2F4->obj.pos.z, 0.0f, 0.0f, 90.0f, 6.5f, 0, 0); } func_8007C120(obj2F4->obj.pos.x, 20.0f, obj2F4->obj.pos.z, 0.0f, 0.0f, 0.0f, - obj2F4->unk_110 * 0.05f, 0x1E); - if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_SW)) { - func_8007C688(obj2F4->obj.pos.x, D_80177940 + 30.0f, obj2F4->obj.pos.z, 3.0f, 0x3C); + obj2F4->scale * 0.05f, 0x1E); + if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_2)) { + func_8007C688(obj2F4->obj.pos.x, D_80177940 + 30.0f, obj2F4->obj.pos.z, 3.0f, 60); if (gCurrentLevel == LEVEL_FORTUNA) { func_80062C38(obj2F4->obj.pos.x, obj2F4->obj.pos.z); } @@ -3813,13 +3816,13 @@ void func_800763A4(Object_2F4* obj2F4) { } obj2F4->obj.pos.y -= obj2F4->unk_0E8.y; func_8007D0E0(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y + 30.0f, - obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 5.0f); - if (gAllRangeMode == 1) { + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->scale * 5.0f); + if (gLevelMode == LEVELMODE_ALL_RANGE) { func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 30.0f, obj2F4->obj.pos.z, - obj2F4->unk_0E8.x, 10.0f, obj2F4->unk_0E8.z, obj2F4->unk_110 * 3.0f, 0x14); - if (sp60 == 0x3E7) { - func_8007C688(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, - obj2F4->unk_110 * 3.0f, 0x46); + obj2F4->unk_0E8.x, 10.0f, obj2F4->unk_0E8.z, obj2F4->scale * 3.0f, 20); + if (sp60 == 999) { + func_8007C688(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->scale * 3.0f, + 70); } for (var_s0 = 0; var_s0 < 4; var_s0++) { if (Rand_ZeroOne() < 0.7f) { @@ -3833,10 +3836,10 @@ void func_800763A4(Object_2F4* obj2F4) { } else { func_8007BFFC(obj2F4->obj.pos.x - obj2F4->unk_0E8.x, obj2F4->obj.pos.y + 30.0f, (obj2F4->obj.pos.z - obj2F4->unk_0E8.z) + 48.0f, 0.0f, 0.0f, 0.0f, - obj2F4->unk_110 * 3.0f, 5); + obj2F4->scale * 3.0f, 5); } - obj2F4->unk_0BE = 2; - if ((obj2F4->obj.id == 0xC5) && (obj2F4->unk_0E4 < 8)) { + obj2F4->timer_0BE = 2; + if ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 < 8)) { func_8007A6F0(&obj2F4->obj.pos, 0x2903B009); } else { func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); @@ -3844,8 +3847,9 @@ void func_800763A4(Object_2F4* obj2F4) { } } } - if ((obj2F4->unk_0D0 != 0) || (obj2F4->unk_0BC == 0) || ((obj2F4->unk_044 != 0) && (obj2F4->obj.id != 0xC5))) { - if (gAllRangeMode == 1) { + if ((obj2F4->unk_0D0 != 0) || (obj2F4->timer_0BC == 0) || + ((obj2F4->unk_044 != 0) && (obj2F4->obj.id != OBJ_2F4_197))) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { for (var_s0 = 0; var_s0 < 4; var_s0++) { if (Rand_ZeroOne() < 0.7f) { if (gCurrentLevel == LEVEL_FORTUNA) { @@ -3856,32 +3860,32 @@ void func_800763A4(Object_2F4* obj2F4) { } } func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, - obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 5.0f, 0xF); + obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 5.0f, 15); func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z - obj2F4->unk_0E8.z, 8.0f); } else { - if ((obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 0x3D)) { + if ((obj2F4->unk_0B4 != 0xD) && (obj2F4->unk_0B4 != 61)) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z - obj2F4->unk_0E8.z, - obj2F4->unk_110 * 5.0f); + obj2F4->scale * 5.0f); } if (obj2F4->unk_0B4 == 0x24) { func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 5.0f, 0xF); } } - obj2F4->unk_0BE = 2; - if ((obj2F4->obj.id == 0xC5) && (obj2F4->unk_0E4 < 8)) { + obj2F4->timer_0BE = 2; + if ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 < 8)) { func_8007A6F0(&obj2F4->obj.pos, 0x2903B009); } else { func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } } } - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { D_80177F24[obj2F4->index] = obj2F4->obj.pos.x; D_8017802C[obj2F4->index] = obj2F4->obj.pos.z; D_80178134[obj2F4->index] = obj2F4->unk_0F4.y + 180.0f; } - if (obj2F4->obj.id == 0xC5) { + if (obj2F4->obj.id == OBJ_2F4_197) { func_8002EE64(obj2F4); } } diff --git a/src/main/fox_A48A0.c b/src/main/fox_A48A0.c index d895690e..0587b104 100644 --- a/src/main/fox_A48A0.c +++ b/src/main/fox_A48A0.c @@ -5,8 +5,8 @@ void func_800A3CA0(void) { Matrix_LookAt(gGfxMatrix, D_80177978, D_80177980, D_80177988, D_801779A0, D_801779B8, D_801779C0, 0.0f, 1.0f, 0.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -200.0f, 1); - Matrix_RotateY(gGfxMatrix, gControllerPress[D_801778A0].stick_x * M_DTOR, 1); - Matrix_RotateX(gGfxMatrix, gControllerPress[D_801778A0].stick_y * M_DTOR, 1); + Matrix_RotateY(gGfxMatrix, gControllerPress[gPlayerNum].stick_x * M_DTOR, 1); + Matrix_RotateX(gGfxMatrix, gControllerPress[gPlayerNum].stick_y * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL_23(); Matrix_Pop(&gGfxMatrix); @@ -15,13 +15,13 @@ void func_800A3CA0(void) { void func_800A3E00(void) { switch (D_80177868) { case 0: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { D_80177868 = 1; } break; case 1: D_80177868 = 2; - D_80177898 = 7; + gDrawMode = DRAWMODE_7; D_801779B8 = 0.0f; D_801779A0 = D_801779B8; D_80177988 = D_801779A0; @@ -33,13 +33,13 @@ void func_800A3E00(void) { if ((gControllerPress[0].button & START_BUTTON) || (gControllerPress[1].button & START_BUTTON)) { func_8001D638(0); D_80177868 = 3; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_800A5844(); - D_8017783C = 0; + D_Timer_8017783C = 0; } break; case 3: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { D_80177854 = 2; } break; diff --git a/src/main/fox_display.c b/src/main/fox_display.c index 770b562a..0a81f9a8 100644 --- a/src/main/fox_display.c +++ b/src/main/fox_display.c @@ -17,7 +17,7 @@ s32 D_800CA228 = 0; s32 D_800CA22C = 0; f32 D_800CA230 = 0.0f; Object_2F4* D_800CA234 = NULL; -s32 D_800CA238 = 0; +s32 D_Timer_800CA238 = 0; f32 D_800CA23C[3] = { 0.5f, 0.25f, 0.25f }; f32 D_800CA248[3] = { 2.0f, 1.0f, 0.5f }; @@ -31,24 +31,24 @@ void func_80051B30(void) { if ((D_80177854 == 0x64) || (D_800CA234 == NULL)) { return; } - if ((D_800CA234->obj.status != 2) || (gPlayer[0].unk_1C8 != 3)) { + if ((D_800CA234->obj.status != 2) || (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_3)) { D_800CA234 = NULL; - D_800CA238 = 0; + D_Timer_800CA238 = 0; return; } - if (D_800CA238 != 0) { - D_800CA238--; - if (D_800CA238 == 0) { + if (D_Timer_800CA238 != 0) { + D_Timer_800CA238--; + if (D_Timer_800CA238 == 0) { D_800CA234 = NULL; return; } } - if (!(D_800CA238 & 4)) { + if (!(D_Timer_800CA238 & 4)) { Matrix_RotateY(gCalcMatrix, gPlayer[0].unk_058, 0); Matrix_RotateX(gCalcMatrix, gPlayer[0].unk_05C, 1); - sp68.x = D_800CA234->obj.pos.x - gPlayer[0].unk_040.x; - sp68.y = D_800CA234->obj.pos.y - gPlayer[0].unk_040.y; - sp68.z = D_800CA234->obj.pos.z + D_80177D20 - gPlayer[0].unk_040.z; + sp68.x = D_800CA234->obj.pos.x - gPlayer[0].camEye.x; + sp68.y = D_800CA234->obj.pos.y - gPlayer[0].camEye.y; + sp68.z = D_800CA234->obj.pos.z + D_80177D20 - gPlayer[0].camEye.z; Matrix_MultVec3f(gCalcMatrix, &sp68, &sp5C); sp7C = 0; if ((sp5C.z < 0.0f) && (sp5C.z > -12000.0f) && (fabsf(sp5C.x) < fabsf(sp5C.z * 0.4f))) { @@ -125,7 +125,7 @@ s32 func_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* dat Player* player = (Player*) data; gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); - if (player->unk_1C4 == 1) { + if (player->num == 1) { if (limbIndex == 0x10) { rot->y += player->unk_154; rot->y -= player->unk_180; @@ -152,14 +152,14 @@ s32 func_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* dat } } else { if (limbIndex == 0xB) { - if (player->unk_1C4 == 0) { + if (player->num == 0) { rot->y += -player->unk_154 * 0.8f; } - if (player->unk_1C4 == 2) { + if (player->num == 2) { rot->y += player->unk_154; rot->y -= player->unk_180; } - if (player->unk_1C4 == 3) { + if (player->num == 3) { rot->y += player->unk_154 * 0.8f; } } @@ -167,7 +167,7 @@ s32 func_800520FC(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* dat rot->y += -player->unk_158 * 0.8f; rot->x -= player->unk_15C; } - if ((limbIndex == 0x11) && (player->unk_1C4 != 2)) { + if ((limbIndex == 0x11) && (player->num != 2)) { rot->y += player->unk_180; rot->x -= player->unk_180; rot->y += -player->unk_158 * 0.2f; @@ -185,7 +185,7 @@ void func_800523A8(s32 limbIndex, Vec3f* rot, void* data) { sp1C.x = 3.0f; sp1C.y = 1.0f; sp1C.z = -28.0f; - Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->num]); } } @@ -197,7 +197,7 @@ void func_80052420(s32 limbIndex, Vec3f* rot, void* data) { sp1C.x = 13.0f; sp1C.y = 2.0f; sp1C.z = 28.0f; - Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->num]); } } @@ -209,7 +209,7 @@ void func_80052498(s32 limbIndex, Vec3f* rot, void* data) { sp1C.x = 0.0f; sp1C.y = 2.0f; sp1C.z = 29.0f; - Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->num]); } } @@ -221,18 +221,18 @@ void func_8005250C(s32 limbIndex, Vec3f* rot, void* data) { sp1C.x = 19.0f; sp1C.y = 1.0f; sp1C.z = 32.0f; - Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp1C, &D_801613B0[player->num]); } } void func_80052584(Player* player) { Matrix_Push(&gGfxMatrix); Matrix_Copy(gGfxMatrix, &gIdentityMatrix); - if ((player->unk_1C8 == 3) && (player->unk_1F8 != 0)) { - Matrix_Translate(gGfxMatrix, D_801613B0[player->unk_1C4].x, D_801613B0[player->unk_1C4].y, - D_801613B0[player->unk_1C4].z, 1); - Matrix_Scale(gGfxMatrix, D_800CA23C[player->unk_1F8 - 1], D_800CA23C[player->unk_1F8 - 1], - D_800CA23C[player->unk_1F8 - 1], 1); + if ((player->state_1C8 == PLAYERSTATE_1C8_3) && (player->timer_1F8 != 0)) { + Matrix_Translate(gGfxMatrix, D_801613B0[player->num].x, D_801613B0[player->num].y, D_801613B0[player->num].z, + 1); + Matrix_Scale(gGfxMatrix, D_800CA23C[player->timer_1F8 - 1], D_800CA23C[player->timer_1F8 - 1], + D_800CA23C[player->timer_1F8 - 1], 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL_40(); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); @@ -245,7 +245,7 @@ void func_800526B8(Player* player) { Matrix_Push(&gGfxMatrix); Matrix_Scale(gCalcMatrix, 0.5f, 0.5f, 0.5f, 1); Matrix_Translate(gCalcMatrix, 0.0f, 35.0f, 0.0f, 1); - switch (player->unk_1C4) { + switch (player->num) { case 0: Animation_DrawSkeleton(5, D_301D258, player->jointTable, func_800520FC, func_800523A8, player, gCalcMatrix); break; @@ -277,13 +277,13 @@ void func_80052884(Player* player) { } else { gSPDisplayList(gMasterDisp++, D_300FB80); } - Matrix_MultVec3f(gGfxMatrix, &sp40, &D_80161518[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp40, &D_80161518[player->num]); Matrix_Translate(gGfxMatrix, 0.0f, 51.0f, -10.0f, 1); Matrix_RotateY(gGfxMatrix, -player->unk_180 * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, player->unk_17C * M_DTOR, 1); - if (D_801778A0 == player->unk_1C4) { + if (gPlayerNum == player->num) { sp64 = 0.0f; - if (D_801779C8[player->unk_1C4] >= 20) { + if (gChargeTimers[player->num] >= 20) { sp64 = (f32) (gFrameCount & 7) * 80.0f; } sp58.x = 0.0f; @@ -303,7 +303,7 @@ void func_80052884(Player* player) { } else { gSPDisplayList(gMasterDisp++, D_301F140); } - Matrix_MultVec3f(gGfxMatrix, &sp4C, &D_80161548[player->unk_1C4]); + Matrix_MultVec3f(gGfxMatrix, &sp4C, &D_80161548[player->num]); Matrix_Pop(&gGfxMatrix); } @@ -317,9 +317,9 @@ f32 D_800CA2A8 = 0.0f; void func_80052B80(Player* player) { Matrix_Push(&gGfxMatrix); - if ((player->unk_1C8 == 3) && (player->unk_1A0 != 0)) { - Matrix_Translate(gGfxMatrix, D_80161548[player->unk_1C4].x, D_80161548[player->unk_1C4].y, - D_80161548[player->unk_1C4].z, 1); + if ((player->state_1C8 == PLAYERSTATE_1C8_3) && (player->unk_1A0 != 0)) { + Matrix_Translate(gGfxMatrix, D_80161548[player->num].x, D_80161548[player->num].y, D_80161548[player->num].z, + 1); Matrix_Scale(gGfxMatrix, D_800CA248[player->unk_1A0 - 1], D_800CA248[player->unk_1A0 - 1], D_800CA248[player->unk_1A0 - 1], 1); Matrix_SetGfxMtx(&gMasterDisp); @@ -343,7 +343,7 @@ void func_80052D48(Player* player) { f32 sp2C; Matrix_Push(&gGfxMatrix); - Matrix_Copy(gGfxMatrix, &D_80161418[player->unk_1C4]); + Matrix_Copy(gGfxMatrix, &D_80161418[player->num]); if (gVersusMode) { RCP_SetupDL_64(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); @@ -363,7 +363,7 @@ void func_80052D48(Player* player) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, 20.0f, 30.0f, -10.0f, 1); if (!gVersusMode) { - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); } Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); @@ -386,7 +386,7 @@ void func_80052D48(Player* player) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, -20.0f, 30.0f, -10.0f, 1); if (!gVersusMode) { - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); } Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); @@ -557,7 +557,8 @@ void func_80053658(WingInfo* wings) { Matrix_RotateX(gGfxMatrix, wings->unk_38 * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL_64_2(); - if ((gGameState == GSTATE_PLAY) && (gPlayer[0].unk_1C8 == 2) && (gCurrentLevel == LEVEL_CORNERIA)) { + if ((gGameState == GSTATE_PLAY) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) && + (gCurrentLevel == LEVEL_CORNERIA)) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 120); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); gSPDisplayList(gMasterDisp++, D_30194E0); @@ -595,9 +596,9 @@ void func_80053C38(Player* player, s32 arg1) { Vec3f sp4C; f32 sp48; - if ((D_801778A0 == player->unk_1C4) && (arg1 == 0)) { + if ((gPlayerNum == player->num) && (arg1 == 0)) { sp48 = 0.0f; - if (D_801779C8[player->unk_1C4] >= 20) { + if (gChargeTimers[player->num] >= 20) { sp48 = (f32) (gFrameCount & 7) * 80.0f; } sp4C.x = 0.0f; @@ -607,8 +608,8 @@ void func_80053C38(Player* player, s32 arg1) { sp4C.z = 2400.0f + sp48; Matrix_MultVec3f(gGfxMatrix, &sp4C, &D_801613E0[1]); } - if ((player->unk_238 != 0) && (gAllRangeMode == 0) && - (fabsf((player->unk_138 + D_80177D20) - player->unk_040.z) < 10.0f)) { + if ((player->unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS) && + (fabsf((player->unk_138 + D_80177D20) - player->camEye.z) < 10.0f)) { if (arg1 == 0) { D_800CA228 = 1; Matrix_Push(&gGfxMatrix); @@ -647,19 +648,19 @@ void func_80053F7C(Player* player) { Vec3f* pad; s32 i; - if ((D_801778A0 == player->unk_1C4) && ((player->unk_1CC == 0) || (player->unk_1CC == 1)) && + if ((gPlayerNum == player->num) && ((player->form == FORM_ARWING) || (player->form == FORM_LANDMASTER)) && (player->unk_234 != 0) && - (((gGameState == GSTATE_PLAY) && (player->unk_1C8 == 3)) || (gGameState == GSTATE_MENU))) { + (((gGameState == GSTATE_PLAY) && (player->state_1C8 == PLAYERSTATE_1C8_3)) || (gGameState == GSTATE_MENU))) { for (i = 0; i < 2; i++) { pad = &D_801613E0[i]; Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, pad->x, pad->y, pad->z, 1); - if (D_801779C8[player->unk_1C4] >= 20) { + if (gChargeTimers[player->num] >= 20) { RCP_SetupDL(&gMasterDisp, 0x3F); if (i == 1) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 255, 0, 0, 255); - Math_SmoothStepToF(&D_800CA298[player->unk_1C4], 2.0f, 1.0f, 0.4f, 0.0f); + Math_SmoothStepToF(&D_800CA298[player->num], 2.0f, 1.0f, 0.4f, 0.0f); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); gDPSetEnvColor(gMasterDisp++, 255, 255, 0, 255); @@ -668,8 +669,8 @@ void func_80053F7C(Player* player) { RCP_SetupDL_36(); } if (i == 1) { - Matrix_Scale(gGfxMatrix, D_800CA298[player->unk_1C4], D_800CA298[player->unk_1C4], 1.0f, 1); - Math_SmoothStepToF(&D_800CA298[player->unk_1C4], 1.0f, 1.0f, 0.2f, 0.0f); + Matrix_Scale(gGfxMatrix, D_800CA298[player->num], D_800CA298[player->num], 1.0f, 1); + Math_SmoothStepToF(&D_800CA298[player->num], 1.0f, 1.0f, 0.2f, 0.0f); } Matrix_Scale(gGfxMatrix, 4.0f, 4.0f, 4.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); @@ -680,17 +681,17 @@ void func_80053F7C(Player* player) { } void func_80054280(Player* player, s32 arg1) { - switch (player->unk_1CC) { - case 0: + switch (player->form) { + case FORM_ARWING: func_80053C38(player, arg1); return; - case 1: + case FORM_LANDMASTER: func_80052884(player); return; - case 2: + case FORM_BLUE_MARINE: func_E16C50_801ACBB4(); return; - case 3: + case FORM_ON_FOOT: func_800526B8(player); return; } @@ -708,15 +709,15 @@ void func_80054300(Player* player) { } else { player->unk_23C = 180; } - switch (player->unk_1CC) { - case 0: + switch (player->form) { + case FORM_ARWING: fake_label: Matrix_Scale(gGfxMatrix, 2.5049999f, 1.5f, 2.5049999f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 30.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1032780); break; - case 1: + case FORM_LANDMASTER: Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.17f, 1.17f, 1.17f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, 20.0f, 1); @@ -731,9 +732,9 @@ void func_80054300(Player* player) { } Matrix_Pop(&gGfxMatrix); break; - case 2: + case FORM_BLUE_MARINE: break; - case 3: + case FORM_ON_FOOT: Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 0.5f, 1); Matrix_RotateX(gGfxMatrix, M_PI / 2.0f, 1); @@ -751,7 +752,7 @@ void func_8005465C(s32 levelType) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 255); switch (levelType) { - case LEVELTYPE_GROUND: + case LEVELTYPE_PLANET: gDPSetEnvColor(gMasterDisp++, 255, 0, 0, 255); break; case LEVELTYPE_SPACE: @@ -772,7 +773,7 @@ void func_8005478C(Player* player) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 100); Matrix_Push(&gGfxMatrix); Matrix_RotateZ(gGfxMatrix, player->unk_0F8 * M_DTOR, 1); - if (player->unk_1CC == 1) { + if (player->form == FORM_LANDMASTER) { if (player->unk_194 <= 0.0f) { Matrix_Pop(&gGfxMatrix); return; @@ -811,12 +812,12 @@ void func_80054914(Player* player) { sp4C = -1.0f; } Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, player->unk_074 + sp34.x, player->unk_078 + sp34.y, + Matrix_Translate(gGfxMatrix, player->pos.x + sp34.x, player->pos.y + sp34.y, player->unk_138 + player->unk_144 + sp34.z, 1); - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); - Matrix_RotateX(gGfxMatrix, gPlayer[D_801778A0].unk_05C, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); + Matrix_RotateX(gGfxMatrix, gPlayer[gPlayerNum].unk_05C, 1); Matrix_RotateZ(gGfxMatrix, gFrameCount * 20.0f * sp4C * M_DTOR, 1); - if (player->unk_1CC == 0) { + if (player->form == FORM_ARWING) { Matrix_Scale(gGfxMatrix, 2.0f, 2.0f, 2.0f, 1); } else { Matrix_Scale(gGfxMatrix, 1.2f, 1.2f, 1.2f, 1); @@ -834,15 +835,15 @@ void func_80054914(Player* player) { } void func_80054CA4(Player* player) { - if (D_80177AB8[player->unk_1C4] > 1.0f) { + if (D_80177AB8[player->num] > 1.0f) { Matrix_Push(&gGfxMatrix); - Matrix_Copy(gGfxMatrix, &D_80161418[player->unk_1C4]); + Matrix_Copy(gGfxMatrix, &D_80161418[player->num]); Matrix_Translate(gGfxMatrix, 0.0f, -5.0f, 10.0f, 1); Matrix_Scale(gGfxMatrix, 2.5f, 1.6f, 2.5f, 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL(&gMasterDisp, 0x44); - gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 255, 255, (s32) D_80177AB8[player->unk_1C4]); - gDPSetEnvColor(gMasterDisp++, 255, 0, 255, (s32) D_80177AB8[player->unk_1C4]); + gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 255, 255, (s32) D_80177AB8[player->num]); + gDPSetEnvColor(gMasterDisp++, 255, 0, 255, (s32) D_80177AB8[player->num]); gSPDisplayList(gMasterDisp++, D_101CD70); Matrix_Pop(&gGfxMatrix); Texture_Scroll(D_101D070, 0x20, 0x20, 3); @@ -864,20 +865,20 @@ void func_80054E80(Player* player) { u8 var_v1; f32 sp80; - if (D_801779C8[player->unk_1C4] > 10) { + if (gChargeTimers[player->num] > 10) { RCP_SetupDL(&gMasterDisp, 0x43); - Matrix_Copy(gCalcMatrix, &D_80161418[player->unk_1C4]); - if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { + Matrix_Copy(gCalcMatrix, &D_80161418[player->num]); + if ((player->unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94); } else { Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); } Matrix_Push(&gGfxMatrix); - sp80 = D_801779C8[player->unk_1C4] / 20.0f; + sp80 = gChargeTimers[player->num] / 20.0f; Matrix_Translate(gGfxMatrix, sp94.x, sp94.y, sp94.z, 0); Matrix_Scale(gGfxMatrix, sp80, sp80, 1.0f, 1); Matrix_Push(&gGfxMatrix); - if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { + if ((player->unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { Matrix_Scale(gGfxMatrix, 3.0f, 3.0f, 3.0f, 1); } else { Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); @@ -885,7 +886,7 @@ void func_80054E80(Player* player) { RCP_SetupDL(&gMasterDisp, 0x31); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); if (gVersusMode) { - switch (player->unk_1C4) { + switch (player->num) { case 0: gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); break; @@ -909,7 +910,7 @@ void func_80054E80(Player* player) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_101C2E0); Matrix_Pop(&gGfxMatrix); - if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { + if ((player->unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { Matrix_Scale(gGfxMatrix, 0.3f, 0.3f, 0.3f, 1); } Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 1.0f, 1); @@ -922,11 +923,11 @@ void func_80054E80(Player* player) { gSPDisplayList(gMasterDisp++, D_1024AC0); Matrix_Pop(&gGfxMatrix); } - if (D_80177AA0[player->unk_1C4] > 0.1f) { + if (D_80177AA0[player->num] > 0.1f) { Matrix_Push(&gGfxMatrix); RCP_SetupDL(&gMasterDisp, 0x43); - Matrix_Copy(gCalcMatrix, &D_80161418[player->unk_1C4]); - var_v1 = gLaserStrength[player->unk_1C4]; + Matrix_Copy(gCalcMatrix, &D_80161418[player->num]); + var_v1 = gLaserStrength[player->num]; if (player->wings.unk_14 > -8.0f) { var_v1 = 0; } @@ -934,14 +935,14 @@ void func_80054E80(Player* player) { case 0: gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 192, 255, 192, 128); gDPSetEnvColor(gMasterDisp++, 64, 255, 64, 128); - if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { + if ((player->unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94); } else { Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); } Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, sp94.x, sp94.y, sp94.z, 0); - Matrix_Scale(gGfxMatrix, D_80177AA0[player->unk_1C4], D_80177AA0[player->unk_1C4], 1.0f, 1); + Matrix_Scale(gGfxMatrix, D_80177AA0[player->num], D_80177AA0[player->num], 1.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); Matrix_Pop(&gGfxMatrix); @@ -959,13 +960,13 @@ void func_80054E80(Player* player) { Matrix_MultVec3f(gCalcMatrix, &spA0, &sp88); Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, sp94.x, sp94.y, sp94.z, 0); - Matrix_Scale(gGfxMatrix, D_80177AA0[player->unk_1C4], D_80177AA0[player->unk_1C4], 1.0f, 1); + Matrix_Scale(gGfxMatrix, D_80177AA0[player->num], D_80177AA0[player->num], 1.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); Matrix_Pop(&gGfxMatrix); Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, sp88.x, sp88.y, sp88.z, 0); - Matrix_Scale(gGfxMatrix, D_80177AA0[player->unk_1C4], D_80177AA0[player->unk_1C4], 1.0f, 1); + Matrix_Scale(gGfxMatrix, D_80177AA0[player->num], D_80177AA0[player->num], 1.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); Matrix_Pop(&gGfxMatrix); @@ -978,19 +979,19 @@ void func_80054E80(Player* player) { void func_80055788(Player* player) { f32 sp54; - if (D_801779C8[player->unk_1C4] >= 0xB) { + if (gChargeTimers[player->num] >= 0xB) { RCP_SetupDL(&gMasterDisp, 0x43); Matrix_Push(&gGfxMatrix); - sp54 = D_801779C8[player->unk_1C4] / 20.0f; - Matrix_Translate(gGfxMatrix, D_80161548[player->unk_1C4].x, D_80161548[player->unk_1C4].y, - D_80161548[player->unk_1C4].z, 0); + sp54 = gChargeTimers[player->num] / 20.0f; + Matrix_Translate(gGfxMatrix, D_80161548[player->num].x, D_80161548[player->num].y, D_80161548[player->num].z, + 0); Matrix_Scale(gGfxMatrix, sp54, sp54, 1.0f, 1); Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); RCP_SetupDL(&gMasterDisp, 0x31); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); if (gVersusMode) { - switch (player->unk_1C4) { + switch (player->num) { case 0: gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); break; @@ -1032,10 +1033,9 @@ void func_80055B58(Player* player) { f32 var_fv0; s32 pad[3]; - if ((player->unk_234 != 0) && (player->unk_1C8 != 4)) { - switch (player->unk_1CC) { - case 0: - + if ((player->unk_234 != 0) && (player->state_1C8 != PLAYERSTATE_1C8_4)) { + switch (player->form) { + case FORM_ARWING: Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_134 + player->unk_4D8) * M_DTOR), 1); @@ -1052,10 +1052,10 @@ void func_80055B58(Player* player) { Matrix_MultVec3f(gCalcMatrix, &sp4C, &sp40); Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, player->unk_074 + sp40.x, player->unk_078 + sp40.y, + Matrix_Translate(gGfxMatrix, player->pos.x + sp40.x, player->pos.y + sp40.y, player->unk_138 + player->unk_144 + sp40.z, 1); - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); - Matrix_RotateX(gGfxMatrix, gPlayer[D_801778A0].unk_05C, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); + Matrix_RotateX(gGfxMatrix, gPlayer[gPlayerNum].unk_05C, 1); Matrix_SetGfxMtx(&gMasterDisp); func_8005478C(player); Matrix_Pop(&gGfxMatrix); @@ -1063,17 +1063,17 @@ void func_80055B58(Player* player) { func_80054CA4(player); func_80054E80(player); break; - case 1: + case FORM_LANDMASTER: func_80052D48(player); Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, D_80161518[player->unk_1C4].x, D_80161518[player->unk_1C4].y, - D_80161518[player->unk_1C4].z, 0); + Matrix_Translate(gGfxMatrix, D_80161518[player->num].x, D_80161518[player->num].y, + D_80161518[player->num].z, 0); Matrix_SetGfxMtx(&gMasterDisp); func_8005478C(player); Matrix_Pop(&gGfxMatrix); func_80055788(player); break; - case 2: + case FORM_BLUE_MARINE: func_80054914(player); break; } @@ -1104,7 +1104,7 @@ void func_80055E98(Player* player) { } var_fs0 = var_fs0 * 0.25f; sp50 = player->unk_0E4 * 0.25f; - if (player->unk_1C8 == 7) { + if (player->state_1C8 == PLAYERSTATE_1C8_7) { var_fs0 = 0.0f; sp50 = 0.0f; } @@ -1140,10 +1140,10 @@ void func_80055E98(Player* player) { } void func_80056230(Player* player) { - if ((player->unk_234 != 0) && (player->unk_1CC == 0) && (gCurrentLevel != LEVEL_VENOM_2) && - (gCurrentLevel != LEVEL_TRAINING) && (gLevelType == LEVELTYPE_GROUND)) { + if ((player->unk_234 != 0) && (player->form == FORM_ARWING) && (gCurrentLevel != LEVEL_VENOM_ANDROSS) && + (gCurrentLevel != LEVEL_TRAINING) && (gLevelType == LEVELTYPE_PLANET)) { Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); + Matrix_Translate(gGfxMatrix, player->pos.x, player->pos.y, player->unk_138 + player->unk_144, 1); Matrix_RotateY(gGfxMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); Matrix_RotateZ(gGfxMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * M_DTOR), 1); @@ -1183,27 +1183,27 @@ void func_800564C0(Player* player, s32 arg1) { if (player->unk_234 != 0) { Matrix_Push(&gGfxMatrix); - if (player->unk_1CC == 1) { + if (player->form == FORM_LANDMASTER) { if (player->unk_1D4 != 0) { Matrix_Translate(gGfxMatrix, 0.0f, D_8017847C, 0.0f, 1); } - Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078 + player->unk_18C + 30.0f, + Matrix_Translate(gGfxMatrix, player->pos.x, player->pos.y + player->unk_18C + 30.0f, player->unk_138 + player->unk_144, 1); if (gVersusMode) { for (i = 0; i < gCamCount; i++) { - if (D_80177B00[player->unk_1C4][i] != 0) { + if (D_80177B00[player->num][i] != 0) { Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); - if ((i == D_801778A0) && + if ((i == gPlayerNum) && ((D_80161578[i].z > 300.0f) || (D_80161578[i].z < -8000.0f) || (fabsf(D_80161578[i].x) > (fabsf(D_80161578[i].z * 0.5f) + 100.0f)) || (fabsf(D_80161578[i].y)) > (fabsf(D_80161578[i].z * 0.5f) + 100.0f))) { - D_80177B00[player->unk_1C4][i] = 0; + D_80177B00[player->num][i] = 0; } } } } - if (func_800563B4(player->unk_1C4, arg1) == 0) { + if (func_800563B4(player->num, arg1) == 0) { Matrix_Pop(&gGfxMatrix); return; } @@ -1216,38 +1216,38 @@ void func_800564C0(Player* player, s32 arg1) { Matrix_RotateZ(gGfxMatrix, (-player->unk_12C - player->unk_130) * M_DTOR, 1); Matrix_Translate(gGfxMatrix, player->unk_084, player->unk_080 - 30.0f, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); - } else if (player->unk_1CC == 3) { + } else if (player->form == FORM_ON_FOOT) { Matrix_Push(&gGfxMatrix); - Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); - if (func_800563B4(player->unk_1C4, arg1) == 0) { + Matrix_Translate(gGfxMatrix, player->pos.x, player->pos.y, player->unk_138 + player->unk_144, 1); + if (func_800563B4(player->num, arg1) == 0) { Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix); return; } Matrix_Pop(&gGfxMatrix); - Matrix_Translate(gCalcMatrix, player->unk_074, player->unk_078 + D_8017847C, - player->unk_138 + player->unk_144, 0); + Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y + D_8017847C, player->unk_138 + player->unk_144, + 0); Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * M_DTOR, 1); Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_134) * M_DTOR), 1); Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * M_DTOR), 1); Matrix_Translate(gCalcMatrix, player->unk_084, player->unk_080, 0.0f, 1); } else { - Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); + Matrix_Translate(gGfxMatrix, player->pos.x, player->pos.y, player->unk_138 + player->unk_144, 1); if (gVersusMode) { for (i = 0; i < gCamCount; i++) { - if (D_80177B00[player->unk_1C4][i] != 0) { + if (D_80177B00[player->num][i] != 0) { Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); - if ((i == D_801778A0) && + if ((i == gPlayerNum) && ((D_80161578[i].z > 300.0f) || (D_80161578[i].z < -8000.0f) || (fabsf(D_80161578[i].x) > (fabsf(D_80161578[i].z * 0.5f) + 100.0f)) || (fabsf(D_80161578[i].y) > (fabsf(D_80161578[i].z * 0.5f) + 100.0f)))) { - D_80177B00[player->unk_1C4][i] = 0; + D_80177B00[player->num][i] = 0; } } } } - if (func_800563B4(player->unk_1C4, arg1) == 0) { + if (func_800563B4(player->num, arg1) == 0) { Matrix_Pop(&gGfxMatrix); return; } @@ -1283,7 +1283,7 @@ void func_800564C0(Player* player, s32 arg1) { if (arg1 != 0) { func_800596C0(); } else { - Matrix_Copy(&D_80161418[player->unk_1C4], gGfxMatrix); + Matrix_Copy(&D_80161418[player->num], gGfxMatrix); } func_80054280(player, arg1); Matrix_Pop(&gGfxMatrix); @@ -1319,8 +1319,8 @@ void func_80056E2C(Player* player) { sp34 = sp30 = 0.0f; } Matrix_Push(&gGfxMatrix); - if (gAllRangeMode == 1) { - if (player->unk_1CC == 3) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { + if (player->form == FORM_ON_FOOT) { Matrix_Translate(gGfxMatrix, player->unk_064, player->unk_068 + 2.0f, player->unk_06C, 1); } else { Matrix_Translate(gGfxMatrix, player->unk_064, player->unk_068 + 2.0f, player->unk_06C, 1); @@ -1332,7 +1332,7 @@ void func_80056E2C(Player* player) { Matrix_RotateX(gGfxMatrix, player->unk_248, 1); Matrix_RotateZ(gGfxMatrix, player->unk_24C, 1); Matrix_Scale(gGfxMatrix, 0.8f + sp34, 0.0f, 0.8f + sp30, 1); - if ((player->unk_1CC == 0) || (player->unk_1CC == 2) || (player->unk_1CC == 3)) { + if ((player->form == FORM_ARWING) || (player->form == FORM_BLUE_MARINE) || (player->form == FORM_ON_FOOT)) { sp2C = player->unk_0F8 + player->unk_0F0 + player->unk_134; if (((sp2C > 70.0f) && (sp2C < 110.0f)) || ((sp2C < -70.0f) && (sp2C > -110.0f))) { sp2C = 70.0f; @@ -1409,7 +1409,7 @@ void func_80057504(void) { } Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, D_80161578[i].x, D_80161578[i].y, D_80161578[i].z, 1); - if ((D_80177854 != 0x64) && (i == D_801778A0)) { + if ((D_80177854 != 0x64) && (i == gPlayerNum)) { Math_SmoothStepToF(&D_801615A8[i], 0.0f, 0.5f, 20.0f, 0); Math_SmoothStepToF(&D_801615B8[i], 1.0, 0.5f, 0.2f, 0); } @@ -1436,8 +1436,8 @@ void func_80057814(Player* player) { Vec3f sp2C; Vec3f sp20; - sp20.x = player->unk_074; - sp20.y = player->unk_078; + sp20.x = player->pos.x; + sp20.y = player->pos.y; sp20.z = player->unk_138; sp2C.x = player->unk_460.x; sp2C.y = player->unk_460.y; @@ -1448,7 +1448,7 @@ void func_80057814(Player* player) { player->unk_46C.z = player->unk_460.z - sp2C.z; player->unk_480 = &player->unk_46C; player->unk_47C = &player->unk_460; - player->unk_488 = player->unk_0C0.y; + player->unk_488 = player->vel.y; player->unk_490 = player->unk_0F8; } @@ -1463,12 +1463,12 @@ void func_800578C4(Player* player) { case 0: Math_SmoothStepToAngle(&player->wings.unk_30, 0.0f, 0.2f, 3.0f, 0.0f); Math_SmoothStepToAngle(&player->wings.unk_34, 0.0f, 0.2f, 3.0f, 0.0f); - D_801779D8.x = player->unk_040.x; - D_801779D8.y = player->unk_040.y; - D_801779D8.z = player->unk_040.z; - D_801779E8.x = player->unk_04C.x; - D_801779E8.y = player->unk_04C.y; - D_801779E8.z = player->unk_04C.z; + D_801779D8.x = player->camEye.x; + D_801779D8.y = player->camEye.y; + D_801779D8.z = player->camEye.z; + D_801779E8.x = player->camAt.x; + D_801779E8.y = player->camAt.y; + D_801779E8.z = player->camAt.z; break; case 1: case 2: @@ -1497,11 +1497,11 @@ void func_800578C4(Player* player) { Matrix_RotateX(gCalcMatrix, (player->unk_0E8 + D_800CA380) * M_DTOR, 0); Matrix_RotateY(gCalcMatrix, (player->unk_0E4 + D_800CA384) * M_DTOR, 1); Matrix_MultVec3f(gCalcMatrix, &sp4C, &sp40); - D_801779D8.x = player->unk_074 + sp40.x; - D_801779D8.y = player->unk_078 + sp40.y + 20.0f; + D_801779D8.x = player->pos.x + sp40.x; + D_801779D8.y = player->pos.y + sp40.y + 20.0f; D_801779D8.z = player->unk_138 + sp40.z; - D_801779E8.x = (__sinf(gFrameCount * 3.0f * M_DTOR) * 3.0f) + player->unk_074; - D_801779E8.y = (__cosf(gFrameCount * 4.0f * M_DTOR) * 3.0f) + player->unk_078; + D_801779E8.x = (__sinf(gFrameCount * 3.0f * M_DTOR) * 3.0f) + player->pos.x; + D_801779E8.y = (__cosf(gFrameCount * 4.0f * M_DTOR) * 3.0f) + player->pos.y; D_801779E8.z = (__sinf(gFrameCount * 3.5f * M_DTOR) * 3.0f) + player->unk_138; break; } @@ -1514,15 +1514,15 @@ void func_80057D00(void) { Vec3f sp60; s32 pad; Player* opponent; - Player* player = &gPlayer[D_801778A0]; + Player* player = &gPlayer[gPlayerNum]; D_800CA228 = 0; - if (gHitCount > 0x1FF) { - gHitCount = 0x1FF; + if (gHitCount > 511) { + gHitCount = 511; } Matrix_Push(&gGfxMatrix); - if ((gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].unk_1C8 == 3)) { + if ((gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3)) { Math_SmoothStepToF(&D_800CA230, 0.01f, 0.2f, 0.002f, 0.0f); } else { Math_SmoothStepToF(&D_800CA230, 0.0f, 0.2f, 0.002f, 0.0f); @@ -1535,35 +1535,38 @@ void func_80057D00(void) { func_800B73E0(player); Lights_SetOneLight(&gMasterDisp, gLight1x, gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG, gAmbientB); - if (gAllRangeMode == 0) { + if (gLevelMode == LEVELMODE_ON_RAILS) { Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, player->unk_120 * M_DTOR, 1); - sp78.x = player->unk_040.x - player->unk_074; - sp78.y = player->unk_040.y - player->unk_078; - sp78.z = player->unk_040.z - (player->unk_138 + player->unk_144); + + sp78.x = player->camEye.x - player->pos.x; + sp78.y = player->camEye.y - player->pos.y; + sp78.z = player->camEye.z - (player->unk_138 + player->unk_144); Matrix_MultVec3f(gCalcMatrix, &sp78, &D_801779D8); - D_801779D8.x += player->unk_074; - D_801779D8.y += player->unk_078; + D_801779D8.x += player->pos.x; + D_801779D8.y += player->pos.y; D_801779D8.z += player->unk_138 + player->unk_144; - sp78.x = player->unk_04C.x - player->unk_074; - sp78.y = player->unk_04C.y - player->unk_078; - sp78.z = player->unk_04C.z - (player->unk_138 + player->unk_144); + + sp78.x = player->camAt.x - player->pos.x; + sp78.y = player->camAt.y - player->pos.y; + sp78.z = player->camAt.z - (player->unk_138 + player->unk_144); Matrix_MultVec3f(gCalcMatrix, &sp78, &D_801779E8); - D_801779E8.x += player->unk_074; - D_801779E8.y += player->unk_078; + D_801779E8.x += player->pos.x; + D_801779E8.y += player->pos.y; D_801779E8.z += player->unk_138 + player->unk_144; + if ((player->unk_238 != 0) && (player->unk_110 > 5.0f)) { D_801779E8.x += __sinf((f32) gFrameCount * 150.0f * M_DTOR) * player->unk_110 * 0.2f; } - } else if (player->unk_1C8 == 7) { + } else if (player->state_1C8 == PLAYERSTATE_1C8_7) { func_800578C4(player); } else { - D_801779D8.x = player->unk_040.x; - D_801779D8.y = player->unk_040.y; - D_801779D8.z = player->unk_040.z; - D_801779E8.x = player->unk_04C.x; - D_801779E8.y = player->unk_04C.y; - D_801779E8.z = player->unk_04C.z; + D_801779D8.x = player->camEye.x; + D_801779D8.y = player->camEye.y; + D_801779D8.z = player->camEye.z; + D_801779E8.x = player->camAt.x; + D_801779E8.y = player->camAt.y; + D_801779E8.z = player->camAt.z; } player->unk_058 = -Math_Atan2F(D_801779D8.x - D_801779E8.x, D_801779D8.z - D_801779E8.z); player->unk_05C = -Math_Atan2F(D_801779D8.y - D_801779E8.y, @@ -1585,8 +1588,9 @@ void func_80057D00(void) { Matrix_Push(&gGfxMatrix); Matrix_LookAt(gGfxMatrix, D_801779D8.x, D_801779D8.y, D_801779D8.z, D_801779E8.x, D_801779E8.y, D_801779E8.z, sp6C.x, sp6C.y, sp6C.z, 1); - if ((gLevelType == LEVELTYPE_GROUND) || (gCurrentLevel == LEVEL_BOLSE)) { - if ((gCurrentLevel == LEVEL_TITANIA) && ((gPlayer[0].unk_1C8 != 2) || (gPlayer[0].unk_19C != 0))) { + if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gCurrentLevel == LEVEL_TITANIA) && + ((gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2) || (gPlayer[0].unk_19C != 0))) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, 0.0f, D_8017847C, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); @@ -1601,21 +1605,21 @@ void func_80057D00(void) { Lights_SetOneLight(&gMasterDisp, gLight2x, gLight2y, gLight2z, gLight2R, gLight2G, gLight2B, gAmbientR, gAmbientG, gAmbientB); for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { - sp60.x = opponent->unk_074; - sp60.y = opponent->unk_078; + sp60.x = opponent->pos.x; + sp60.y = opponent->pos.y; sp60.z = opponent->unk_138; func_8005F670(&sp60); func_800564C0(opponent, 0); func_80057814(opponent); } - if ((D_80161A88 == 2) && (gPlayer[0].unk_1C8 != 2)) { + if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { Lights_SetOneLight(&gMasterDisp, gLight2x, -1 * gLight2y, gLight2z, gLight2R, gLight2G, gLight2B, gAmbientR, gAmbientG, gAmbientB); Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1); for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { - sp60.x = opponent->unk_074; - sp60.y = opponent->unk_078; + sp60.x = opponent->pos.x; + sp60.y = opponent->pos.y; sp60.z = opponent->unk_138; func_800564C0(opponent, 1); } @@ -1627,7 +1631,7 @@ void func_80057D00(void) { func_80060968(); D_80161410 = 1; func_8003DA0C(); - if ((D_80161A88 == 2) && (gPlayer[0].unk_1C8 != 2)) { + if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1); D_80161410 = -1; @@ -1635,7 +1639,7 @@ void func_80057D00(void) { Matrix_Pop(&gGfxMatrix); } D_80161410 = -1; - if ((D_80161A88 == 2) && (gPlayer[0].unk_1C8 != 2)) { + if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1); for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { @@ -1654,8 +1658,9 @@ void func_80057D00(void) { func_8006089C(1); func_80040CE4(); } - if ((gCurrentLevel != LEVEL_AQUAS) && (((gCurrentLevel != LEVEL_CORNERIA) && (gCurrentLevel != LEVEL_VENOM_2)) || - ((gPlayer[0].unk_1C8 != 7) && (gPlayer[0].unk_1C8 != 2)))) { + if ((gCurrentLevel != LEVEL_AQUAS) && + (((gCurrentLevel != LEVEL_CORNERIA) && (gCurrentLevel != LEVEL_VENOM_ANDROSS)) || + ((gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)))) { func_8006089C(0); } D_80161410 = 1; @@ -1666,11 +1671,11 @@ void func_80057D00(void) { func_80056230(opponent); } } - if ((gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].unk_1C8 == 3)) { + if ((gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3)) { func_E16C50_801AA20C(); } - if (((gCurrentLevel == LEVEL_CORNERIA) || (gCurrentLevel == LEVEL_VENOM_2)) && - ((gPlayer[0].unk_1C8 == 7) || (gPlayer[0].unk_1C8 == 2))) { + if (((gCurrentLevel == LEVEL_CORNERIA) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) && + ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2))) { func_8006089C(0); } func_80077790(); @@ -1682,26 +1687,26 @@ void func_80057D00(void) { } for (i = 0, opponent = gPlayer; i < gCamCount; i++, opponent++) { if (D_800CA224[i] != 0) { - if (D_800D2860[i] != 0) { + if (D_800D2860[i]) { func_80053F7C(opponent); } - if (opponent->unk_1CC == 1) { + if (opponent->form == FORM_LANDMASTER) { func_80052B80(opponent); - } else if (opponent->unk_1CC == 3) { + } else if (opponent->form == FORM_ON_FOOT) { func_80052584(opponent); } } } - if ((gAllRangeMode == 2) && (gPlayer[0].unk_1C8 == 3)) { + if ((gLevelMode == LEVELMODE_UNK_2) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3)) { func_E9F1D0_801A6164(gPlayer); } func_80040954(); - if ((gCamCount != 1) && ((player->unk_1C8 == 3) || (player->unk_1C8 == 5))) { + if ((gCamCount != 1) && ((player->state_1C8 == PLAYERSTATE_1C8_3) || (player->state_1C8 == PLAYERSTATE_1C8_5))) { func_8008FA84(); func_8008CA44(); } Matrix_Pop(&gGfxMatrix); func_80051B30(); - D_800CA224[D_801778A0] = 0; + D_800CA224[gPlayerNum] = 0; Matrix_Pop(&gGfxMatrix); } diff --git a/src/main/fox_edata_1C.c b/src/main/fox_edata_1C.c index 16c21e9e..ea1ae184 100644 --- a/src/main/fox_edata_1C.c +++ b/src/main/fox_edata_1C.c @@ -927,7 +927,7 @@ ObjectInfo D_800CC124[0x190] = { /* OBJ_ITEM_331 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, /* OBJ_ITEM_332 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, /* OBJ_ITEM_333 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJ_ITEM_CORN_ARCH */ {(void*) NULL, 1, (ObjectFunc) func_80068C48, D_800CBF18, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_334 */ {(void*) NULL, 1, (ObjectFunc) func_80068C48, D_800CBF18, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, /* OBJ_ITEM_1UP */ {(void*) D_1022120, 0, (ObjectFunc) func_80067B1C, D_800CBE8C, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, /* OBJ_ITEM_GOLD_RING */ {(void*) func_8005CA80, 1, (ObjectFunc) func_800685F8, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, /* OBJ_ITEM_WING_REPAIR */ {(void*) D_3007650, 0, (ObjectFunc) func_80068618, D_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, diff --git a/src/main/fox_edisplay.c b/src/main/fox_edisplay.c index 0c7a1ced..b56423ac 100644 --- a/src/main/fox_edisplay.c +++ b/src/main/fox_edisplay.c @@ -23,7 +23,7 @@ void func_800597C0(s32 arg0) { } } -void func_8005980C(f32 scale) { +void Graphics_SetScaleMtx(f32 scale) { Matrix_Scale(gGfxMatrix, scale, scale, scale, 1); Matrix_SetGfxMtx(&gMasterDisp); } @@ -84,7 +84,7 @@ void func_80059B20(Object_80* obj80) { if (obj80->obj.id == OBJ_80_29) { gSPDisplayList(gMasterDisp++, D_7007350); } else { - func_8005980C(D_800CF9B0[obj80->obj.id + 2]); + Graphics_SetScaleMtx(D_800CF9B0[obj80->obj.id + 2]); gSPDisplayList(gMasterDisp++, D_700BB10); } } @@ -247,14 +247,14 @@ void func_8005A094(Object_2F4* obj2F4) { gSPDisplayList(gMasterDisp++, D_3015D80); break; case 2: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_30155E0); break; case 3: gSPDisplayList(gMasterDisp++, D_3011720); break; case 4: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); if (obj2F4->index & 1) { gSPDisplayList(gMasterDisp++, D_10194C0); } else { @@ -294,24 +294,24 @@ void func_8005A094(Object_2F4* obj2F4) { gDPSetFogColor(gMasterDisp++, 0x10, 0x10, 0x10, gFogAlpha); gSPFogPosition(gMasterDisp++, gFogNear, gFogFar); } - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB40[obj2F4->unk_046]); } break; case 41: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFADC[obj2F4->unk_048]); break; case 42: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB08[obj2F4->unk_048]); break; case 43: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB14[obj2F4->unk_048]); break; case 44: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB28[obj2F4->unk_048]); break; case 45: @@ -328,22 +328,22 @@ void func_8005A094(Object_2F4* obj2F4) { gSPDisplayList(gMasterDisp++, D_E6A810_801B7608[obj2F4->unk_048]); break; case 48: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB64[obj2F4->unk_048]); break; case 49: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFB88[obj2F4->unk_048]); break; case 50: - func_8005980C(0.7f); + Graphics_SetScaleMtx(0.7f); if (obj2F4->unk_054 == 1) { RCP_SetupDL(&gMasterDisp, 0x1E); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); } else if (obj2F4->unk_054 == 2) { RCP_SetupDL(&gMasterDisp, 0x1E); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); - func_8005980C(0.7f); + Graphics_SetScaleMtx(0.7f); } switch (obj2F4->unk_050) { case 0: @@ -361,43 +361,43 @@ void func_8005A094(Object_2F4* obj2F4) { } if (obj2F4->unk_054 != 0) { RCP_SetupDL(&gMasterDisp, 0x1D); - func_8005980C(0.7f); + Graphics_SetScaleMtx(0.7f); } break; case 51: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFBA8[obj2F4->unk_048]); break; case 52: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFBE4[obj2F4->unk_048]); break; case 53: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFC0C[obj2F4->unk_048]); break; case 54: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFC40[obj2F4->unk_048]); break; case 55: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); gSPDisplayList(gMasterDisp++, D_800CFC50[obj2F4->unk_048]); break; case 56: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); RCP_SetupDL(&gMasterDisp, 0x29); Matrix_SetGfxMtx(&gMasterDisp); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 191, 255, 223, 255); gSPDisplayList(gMasterDisp++, D_800CFC64[obj2F4->unk_048]); break; case 58: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_60148B0); break; case 59: - func_8005980C(obj2F4->unk_110); + Graphics_SetScaleMtx(obj2F4->scale); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_800CFC7C[obj2F4->unk_048]); break; @@ -440,14 +440,14 @@ void func_8005ADAC(Object_2F4* obj2F4) { Matrix_RotateZ(gGfxMatrix, -obj2F4->obj.rot.z * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, -obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, -obj2F4->obj.rot.y * M_DTOR, 1); - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); - Matrix_RotateX(gGfxMatrix, gPlayer[D_801778A0].unk_05C, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); + Matrix_RotateX(gGfxMatrix, gPlayer[gPlayerNum].unk_05C, 1); Matrix_SetGfxMtx(&gMasterDisp); func_8005465C(gLevelType); Matrix_Pop(&gGfxMatrix); } sp5C = obj2F4->unk_168; - if ((sp5C != 0.0f) && (gLevelType == LEVELTYPE_GROUND)) { + if ((sp5C != 0.0f) && (gLevelType == LEVELTYPE_PLANET)) { sp54 = 0.0f; if (gFrameCount & 1) { sp54 = 180.0f; @@ -495,7 +495,7 @@ void func_8005B1E8(Object_2F4* obj2F4, s32 levelType) { Matrix_RotateZ(gGfxMatrix, -obj2F4->obj.rot.z * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, -obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, -obj2F4->obj.rot.y * M_DTOR, 1); - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); Matrix_SetGfxMtx(&gMasterDisp); func_8005465C(levelType); Matrix_Pop(&gGfxMatrix); @@ -507,14 +507,17 @@ void func_8005B388(Object_2F4* obj2F4) { Vec3f sp30; Matrix_MultVec3f(gGfxMatrix, &sp3C, &sp30); - if ((((fabsf(sp30.z) < 3000.0f) && (fabsf(sp30.x) < 3000.0f) && (D_80178284 == 0)) || (gPlayer[0].unk_1C8 == 0) || - (gCurrentLevel == LEVEL_VENOM_2) || (gCurrentLevel == LEVEL_VENOM_SW) || (gPlayer[0].unk_1C8 == 7)) && + if ((((fabsf(sp30.z) < 3000.0f) && (fabsf(sp30.x) < 3000.0f) && (D_80178284 == 0)) || + (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0) || (gCurrentLevel == LEVEL_VENOM_ANDROSS) || + (gCurrentLevel == LEVEL_VENOM_2) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7)) && (gCurrentLevel != LEVEL_MACBETH) && (gCurrentLevel != LEVEL_TITANIA)) { if (obj2F4->obj.id == OBJ_2F4_195) { - if (((gCurrentLevel == LEVEL_VENOM_SW) && (gPlayer[0].unk_1C8 == 7) && (obj2F4->index == 10)) || - ((gPlayer[0].unk_1C8 == 7) && (gPlayer[0].unk_1D0 >= 100) && (gCurrentLevel == LEVEL_KATINA) && - (obj2F4->index == 1)) || - ((gCurrentLevel == LEVEL_SECTOR_Y) && (gPlayer[0].unk_1C8 == 0) && (obj2F4->unk_0B8 == 5))) { + if (((gCurrentLevel == LEVEL_VENOM_2) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) && + (obj2F4->index == 10)) || + ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) && (gPlayer[0].unk_1D0 >= 100) && + (gCurrentLevel == LEVEL_KATINA) && (obj2F4->index == 1)) || + ((gCurrentLevel == LEVEL_SECTOR_Y) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0) && + (obj2F4->unk_0B8 == 5))) { D_80161630.rightState = gPlayer[0].wings.rightState; D_80161630.leftState = gPlayer[0].wings.leftState; } else { @@ -537,7 +540,7 @@ void func_8005B388(Object_2F4* obj2F4) { D_80161630.unk_04 = D_80161630.unk_08 = D_80161630.unk_0C = D_80161630.unk_10 = 0.0f; } func_80053658(&D_80161630); - } else if (gLevelType == LEVELTYPE_GROUND) { + } else if (gLevelType == LEVELTYPE_PLANET) { gSPDisplayList(gMasterDisp++, D_40018A0); } else if (gPlayer[0].unk_204 == 2) { gSPDisplayList(gMasterDisp++, D_4003BD0); @@ -597,7 +600,7 @@ void func_8005B9A4(Object_2F4* obj2F4) { } void func_8005BA30(Object_2F4* obj2F4) { - if (obj2F4->unk_0BC != 0) { + if (obj2F4->timer_0BC != 0) { RCP_SetupDL_27(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); } @@ -662,12 +665,12 @@ void func_8005BAB4(s32 objId, s32 index) { gSPDisplayList(gMasterDisp++, D_6034B90); break; case OBJ_408_316: - if (gPlayer[0].unk_1C8 == 0) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0) { RCP_SetupDL(&gMasterDisp, 0x40); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 200); } Matrix_RotateX(gGfxMatrix, M_PI / 2.0f, 1); - func_8005980C(150.0f); + Graphics_SetScaleMtx(150.0f); gSPDisplayList(gMasterDisp++, D_102A8A0); break; case OBJ_408_293: @@ -695,7 +698,7 @@ void func_8005BAB4(s32 objId, s32 index) { break; case OBJ_2F4_192: gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); - Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, gObjects2F4[index].unk_110, 1); + Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, gObjects2F4[index].scale, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_6034B90); break; @@ -707,7 +710,7 @@ void func_8005BAB4(s32 objId, s32 index) { gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 0); Matrix_RotateX(gGfxMatrix, gObjects2F4[index].unk_114, 1); Matrix_RotateZ(gGfxMatrix, gObjects2F4[index].unk_11C, 1); - Matrix_Scale(gGfxMatrix, gObjects2F4[index].unk_110, 1.0f, gObjects2F4[index].unk_110, 1); + Matrix_Scale(gGfxMatrix, gObjects2F4[index].scale, 1.0f, gObjects2F4[index].scale, 1); Matrix_RotateX(gGfxMatrix, -M_PI / 2.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); @@ -774,9 +777,9 @@ void func_8005C5F0(Item* item) { for (i = 0; i < 8; i++) { Matrix_Push(&gGfxMatrix); Matrix_RotateZ(gGfxMatrix, i * 45.0f * M_DTOR, 1); - Matrix_Translate(gGfxMatrix, 2.0f * item->unk_68, 0.0f, 0.0f, 1); + Matrix_Translate(gGfxMatrix, 2.0f * item->scale, 0.0f, 0.0f, 1); Matrix_RotateZ(gGfxMatrix, (gFrameCount + (i * 110.0f)) * M_DTOR * 7.2f * item->unk_54, 1); - func_8005980C(2.0f * item->unk_50); + Graphics_SetScaleMtx(2.0f * item->unk_50); gSPDisplayList(gMasterDisp++, D_101CAE0); Matrix_Pop(&gGfxMatrix); } @@ -787,7 +790,7 @@ void func_8005C900(Item* item) { RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); - func_8005980C(item->unk_68); + Graphics_SetScaleMtx(item->scale); gSPDisplayList(gMasterDisp++, D_101A570); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } @@ -796,7 +799,7 @@ void func_8005C9C0(Item* item) { RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); - func_8005980C(item->unk_68); + Graphics_SetScaleMtx(item->scale); gSPDisplayList(gMasterDisp++, D_1019CA0); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } @@ -805,17 +808,17 @@ void func_8005CA80(Item* item) { RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 1900, 1700, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); - func_8005980C(item->unk_68); + Graphics_SetScaleMtx(item->scale); gSPDisplayList(gMasterDisp++, D_1016870); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } void func_8005CB44(Item* item) { if (gCurrentLevel == LEVEL_AQUAS) { - func_8005980C(item->unk_68); + Graphics_SetScaleMtx(item->scale); gSPDisplayList(gMasterDisp++, D_3005980); } else { - func_8005980C(item->unk_68 * 0.1f); + Graphics_SetScaleMtx(item->scale * 0.1f); RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); @@ -828,7 +831,7 @@ void func_8005CB44(Item* item) { } void func_8005CC9C(Item* item) { - func_8005980C(item->unk_68 * 0.1f); + Graphics_SetScaleMtx(item->scale * 0.1f); RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); @@ -842,8 +845,8 @@ void func_8005CC9C(Item* item) { void func_8005CDA8(Item* item) { s32 i; - item->obj.rot.y = (Math_Atan2F(gPlayer[D_801778A0].unk_040.x - item->obj.pos.x, - gPlayer[D_801778A0].unk_040.z - (item->obj.pos.z + D_80177D20)) * + item->obj.rot.y = (Math_Atan2F(gPlayer[gPlayerNum].camEye.x - item->obj.pos.x, + gPlayer[gPlayerNum].camEye.z - (item->obj.pos.z + D_80177D20)) * 180.0f) / M_PI; if (item->unk_46 != 0) { @@ -856,7 +859,7 @@ void func_8005CDA8(Item* item) { for (i = 0; i < 7; i++) { Matrix_Push(&gGfxMatrix); Matrix_RotateZ(gGfxMatrix, (i * 360.0f / 7.0f) * M_DTOR, 1); - Matrix_Translate(gGfxMatrix, 0.0f, item->unk_68, 0.0f, 1); + Matrix_Translate(gGfxMatrix, 0.0f, item->scale, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_102FE80); Matrix_Pop(&gGfxMatrix); @@ -1017,11 +1020,11 @@ void Object_2F4_Draw2(Object_2F4* obj2F4) { Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80177E98[obj2F4->unk_0E4]); } } - if ((obj2F4->unk_0CA[0] != 0) && (D_80161410 > 0)) { + if ((obj2F4->timer_0CA[0] != 0) && (D_80161410 > 0)) { sp34.y += obj2F4->info.unk_1C; Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80161578[0]); if (D_80161578[0].z > -200.0f) { - obj2F4->unk_0CA[0] = 0; + obj2F4->timer_0CA[0] = 0; } } } @@ -1058,7 +1061,8 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { Matrix_RotateZ(gCalcMatrix, obj2F4->obj.rot.z * M_DTOR, 1); obj2F4->info.draw(&obj2F4->obj); D_801615EC = 1; - if ((gPlayer[0].unk_1C8 == 3) && (obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 == 200)) { + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (obj2F4->obj.id == OBJ_2F4_197) && + (obj2F4->unk_0E4 == 200)) { D_80177E98[0] = D_801615E0; } } @@ -1067,7 +1071,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { } else { Matrix_Translate(gGfxMatrix, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1); Matrix_MultVec3f(gGfxMatrix, &sp50, &D_801615E0); - if ((gPlayer[0].unk_1C8 == 2) || (gPlayer[0].unk_1C8 == 0) || + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0) || ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 >= 100)) || ((obj2F4->obj.id == OBJ_2F4_195) && (obj2F4->info.bonus != 0))) { var_ft5 = var_fv0 = 3000.0f; @@ -1089,7 +1093,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { Matrix_SetGfxMtx(&gMasterDisp); obj2F4->info.draw(&obj2F4->obj); D_801615EC = 1; - if ((gPlayer[0].unk_1C8 == 3) && + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (((obj2F4->obj.id == OBJ_2F4_197) && ((obj2F4->unk_0E4 < 4) || (obj2F4->unk_0E4 == 8) || (obj2F4->unk_0E4 == 9))) || (obj2F4->obj.id == OBJ_2F4_198))) { @@ -1101,17 +1105,17 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { } } if (D_801615EC == 0) { - obj2F4->unk_0CA[D_801778A0] = 0; + obj2F4->timer_0CA[gPlayerNum] = 0; if ((obj2F4->obj.id == OBJ_2F4_189) || (obj2F4->obj.id == OBJ_2F4_286)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } for (var_v1 = 0; var_v1 < gCamCount; var_v1++) { - if (obj2F4->unk_0CA[var_v1] != 0) { + if (obj2F4->timer_0CA[var_v1] != 0) { D_80161578[var_v1] = D_801615E0; D_80161578[var_v1].y += obj2F4->info.unk_1C; - if ((var_v1 == D_801778A0) && (D_80161578[var_v1].z > -300.0f)) { - obj2F4->unk_0CA[var_v1] = 0; + if ((var_v1 == gPlayerNum) && (D_80161578[var_v1].z > -300.0f)) { + obj2F4->timer_0CA[var_v1] = 0; } } } @@ -1263,8 +1267,8 @@ void Item_Draw(Item* item, s32 arg1) { } } func_8005F290(&item->sfxPos, &sp38); - if ((var_v0 == 0) && (gAllRangeMode == 1) && (gCamCount == 1) && (item->obj.id < 336) && - (gCurrentLevel != LEVEL_VENOM_2)) { + if ((var_v0 == 0) && (gLevelMode == LEVELMODE_ALL_RANGE) && (gCamCount == 1) && (item->obj.id < 336) && + (gCurrentLevel != LEVEL_VENOM_ANDROSS)) { Object_Kill(&item->obj, &item->sfxPos); } } @@ -1421,7 +1425,7 @@ void Object_58_Draw(Object_58* obj58) { sp44 = 4000.0f; sp40 = -13000.0f; sp3C = 4500.0f; - } else if (gCurrentLevel == LEVEL_VENOM_2) { + } else if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { sp40 = -20000.0f; sp38 = 0.4f; } else if (obj58->obj.id == OBJ_80_143) { @@ -1430,7 +1434,7 @@ void Object_58_Draw(Object_58* obj58) { sp3C = 6000.0f; sp38 = 0.9f; } - if ((gLevelType == LEVELTYPE_GROUND) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) { Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y + D_8017847C, obj58->obj.pos.z, 1); } else { Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y, obj58->obj.pos.z, 1); @@ -1476,7 +1480,7 @@ void func_8005F670(Vec3f* arg0) { sp9C.y = arg0->y - D_80178374; sp9C.z = arg0->z - D_80178378; temp_fv0 = sqrtf(VEC3F_SQ(sp9C)); - if (gPlayer[0].unk_1C8 == 2) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) { var_fs0 = 700.0f / temp_fv0; } else { var_fs0 = 200.0f / temp_fv0; @@ -1490,9 +1494,9 @@ void func_8005F670(Vec3f* arg0) { sp94 = Math_Atan2F(sp9C.x, sp9C.z); sp98 = -Math_Atan2F(sp9C.y, sqrtf(SQ(sp9C.x) + SQ(sp9C.z))); Matrix_Push(&gCalcMatrix); - Matrix_RotateZ(gCalcMatrix, gPlayer[D_801778A0].unk_034 * D_80177950 * M_DTOR, 0); - Matrix_RotateX(gCalcMatrix, -gPlayer[D_801778A0].unk_05C, 1); - Matrix_RotateY(gCalcMatrix, gPlayer[D_801778A0].unk_058 + sp94, 1); + Matrix_RotateZ(gCalcMatrix, gPlayer[gPlayerNum].unk_034 * D_80177950 * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -gPlayer[gPlayerNum].unk_05C, 1); + Matrix_RotateY(gCalcMatrix, gPlayer[gPlayerNum].unk_058 + sp94, 1); Matrix_RotateX(gCalcMatrix, sp98, 1); sp6C.x = 0.0f; sp6C.y = 0.0f; @@ -1511,11 +1515,11 @@ bool func_8005F9DC(Vec3f* arg0) { Vec3f sp2C; Vec3f sp20; - Matrix_RotateY(gCalcMatrix, gPlayer[D_801778A0].unk_058, 0); - Matrix_RotateX(gCalcMatrix, gPlayer[D_801778A0].unk_05C, 1); - sp2C.x = arg0->x - gPlayer[D_801778A0].unk_040.x; - sp2C.y = arg0->y - gPlayer[D_801778A0].unk_040.y; - sp2C.z = arg0->z - gPlayer[D_801778A0].unk_040.z; + Matrix_RotateY(gCalcMatrix, gPlayer[gPlayerNum].unk_058, 0); + Matrix_RotateX(gCalcMatrix, gPlayer[gPlayerNum].unk_05C, 1); + sp2C.x = arg0->x - gPlayer[gPlayerNum].camEye.x; + sp2C.y = arg0->y - gPlayer[gPlayerNum].camEye.y; + sp2C.z = arg0->z - gPlayer[gPlayerNum].camEye.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp2C, &sp20); if ((sp20.z < 1000.0f) && (sp20.z > -13000.0f)) { if (fabsf(sp20.x) < (fabsf(sp20.z * 0.4f) + 2000.0f)) { @@ -1538,7 +1542,7 @@ void Object_DrawAll(s32 arg0) { Item* item; Object_80* obj80; - if ((gAllRangeMode == 1) && (gCurrentLevel != LEVEL_KATINA)) { + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (gCurrentLevel != LEVEL_KATINA)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); if (D_80177AB0 == 5) { gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); @@ -1573,7 +1577,7 @@ void Object_DrawAll(s32 arg0) { } for (i = 0, obj408 = gObjects408; i < ARRAY_COUNT(gObjects408); i++, obj408++) { if ((obj408->obj.status >= 2) && (obj408->obj.id != OBJ_408_310)) { - if (!(obj408->unk_05C & 1)) { + if (!(obj408->timer_05C & 1)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { RCP_SetupDL_27(); @@ -1606,7 +1610,7 @@ void Object_DrawAll(s32 arg0) { } for (i = 0, obj2F4 = gObjects2F4; i < ARRAY_COUNT(gObjects2F4); i++, obj2F4++) { if (obj2F4->obj.status >= 2) { - if (!(obj2F4->unk_0C6 & 1)) { + if (!(obj2F4->timer_0C6 & 1)) { if (gCurrentLevel == LEVEL_UNK_15) { RCP_SetupDL_23(); } else { @@ -1614,17 +1618,18 @@ void Object_DrawAll(s32 arg0) { } } else { RCP_SetupDL_27(); - if (obj2F4->unk_110 >= 0.0f) { + if (obj2F4->scale >= 0.0f) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 0, 0, 255); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 64, 64, 255, 255); } } - switch (gAllRangeMode) { - case 0: - case 2: + switch (gLevelMode) { + case LEVELMODE_ON_RAILS: + case LEVELMODE_UNK_2: Matrix_Push(&gGfxMatrix); - if ((gPlayer[0].unk_1C8 == 2) || (gPlayer[0].unk_1C8 == 7) || (gCurrentLevel == LEVEL_AQUAS)) { + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) || + (gCurrentLevel == LEVEL_AQUAS)) { func_8005F670(&obj2F4->obj.pos); } func_800597C0(arg0); @@ -1636,7 +1641,7 @@ void Object_DrawAll(s32 arg0) { Matrix_Pop(&gGfxMatrix); } break; - case 1: + case LEVELMODE_ALL_RANGE: Matrix_Push(&gGfxMatrix); Object_2F4_Draw1(obj2F4); Matrix_Pop(&gGfxMatrix); @@ -1652,7 +1657,7 @@ void Object_DrawAll(s32 arg0) { } gDPSetFogColor(gMasterDisp++, gFogRed, gFogGreen, gFogBlue, gFogAlpha); gSPFogPosition(gMasterDisp++, gFogNear, gFogFar); - Lights_SetOneLight(&gMasterDisp, -0x3C, -0x3C, 0x3C, 0x96, 0x96, 0x96, 0x14, 0x14, 0x14); + Lights_SetOneLight(&gMasterDisp, -60, -60, 60, 150, 150, 150, 20, 20, 20); for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) { if (item->obj.status >= 2) { Matrix_Push(&gGfxMatrix); @@ -1675,10 +1680,10 @@ void func_8006046C(s32 arg0) { for (i = 0, obj8C = gObjects8C; i < ARRAY_COUNT(gObjects8C); i++, obj8C++) { if (obj8C->obj.status >= 2) { if (obj8C->info.unk_14 == 1) { - obj8C->obj.rot.y = (-gPlayer[D_801778A0].unk_058 * 180.0f) / M_PI; - obj8C->obj.rot.x = (gPlayer[D_801778A0].unk_05C * 180.0f) / M_PI; + obj8C->obj.rot.y = (-gPlayer[gPlayerNum].unk_058 * 180.0f) / M_PI; + obj8C->obj.rot.x = (gPlayer[gPlayerNum].unk_05C * 180.0f) / M_PI; } - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { Matrix_Push(&gGfxMatrix); Object_8C_Draw2(obj8C); Matrix_Pop(&gGfxMatrix); @@ -1697,7 +1702,7 @@ void func_8006046C(s32 arg0) { } for (i = 0, obj408 = gObjects408; i < ARRAY_COUNT(gObjects408); i++, obj408++) { if ((obj408->obj.status >= 2) && (obj408->obj.id == OBJ_408_310)) { - if (!(obj408->unk_05C & 1)) { + if (!(obj408->timer_05C & 1)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { RCP_SetupDL_27(); @@ -1713,7 +1718,7 @@ void func_8006046C(s32 arg0) { void func_80060714(s32 arg0) { D_80161410 = 1; Object_DrawAll(1); - if ((D_80161A88 == 2) && (gPlayer[0].unk_1C8 != 2)) { + if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { D_80161410 = -1; Lights_SetOneLight(&gMasterDisp, gLight1x, -1 * gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG, gAmbientB); @@ -1730,7 +1735,7 @@ void func_8006089C(u8 arg0) { if (arg0 == 0) { D_80161410 = 1; func_8006046C(1); - } else if ((D_80161A88 == 2) && (gPlayer[0].unk_1C8 != 2)) { + } else if ((D_80161A88 == 2) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { D_80161410 = -1; Matrix_Push(&gGfxMatrix); Matrix_Scale(gGfxMatrix, 1.0f, -1.0f, 1.0f, 1); @@ -1758,7 +1763,7 @@ void func_80060968(void) { if (gCurrentLevel == LEVEL_MACBETH) { RCP_SetupDL(&gMasterDisp, 0x21); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); - } else if ((gCurrentLevel == LEVEL_AQUAS) || (gCurrentLevel == LEVEL_VENOM_2)) { + } else if ((gCurrentLevel == LEVEL_AQUAS) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) { RCP_SetupDL(&gMasterDisp, 0x29); } else { RCP_SetupDL_14(); @@ -1774,7 +1779,7 @@ void func_80060968(void) { Matrix_RotateZ(gGfxMatrix, ent30->unk_20, 1); Matrix_Scale(gGfxMatrix, ent30->unk_28, ent30->unk_28, ent30->unk_24, 1); - if ((gCurrentLevel == LEVEL_AQUAS) || (gCurrentLevel == LEVEL_VENOM_2)) { + if ((gCurrentLevel == LEVEL_AQUAS) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) { s32 alpha = (gFrameCount & 1) ? 180 : 50; gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, alpha); @@ -1784,7 +1789,7 @@ void func_80060968(void) { Matrix_RotateZ(gGfxMatrix, gFrameCount * 5.0f * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_60119A0); - } else if (gCurrentLevel == LEVEL_VENOM_2) { + } else if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { Matrix_Scale(gGfxMatrix, 1.0f, 1.0f, 0.0025f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -200.0f, 1); Matrix_RotateZ(gGfxMatrix, gFrameCount * 25.0f * M_DTOR, 1); diff --git a/src/main/fox_enmy.c b/src/main/fox_enmy.c index 23311898..ea399bec 100644 --- a/src/main/fox_enmy.c +++ b/src/main/fox_enmy.c @@ -1,6 +1,6 @@ #include "global.h" -s32 D_80161670[4]; +s32 D_Timer_80161670[4]; s32 D_80161680; u8 D_80161684; @@ -60,28 +60,28 @@ void func_80060F30(Vec3f* pos, u32 sfxId, s32 arg2) { (void) "center_X %f\n"; (void) "Enm->obj.pos.x %f\n"; if (!gVersusMode) { - func_80019218(sfxId, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(sfxId, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(sfxId, pos, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(sfxId, pos, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } void Object_Kill(Object* obj, Vec3f* arg1) { obj->status = 0; - func_8001A500(arg1); + Audio_KillSfx(arg1); } s32 func_80060FE4(Vec3f* arg0, f32 arg1) { Vec3f sp2C; Vec3f sp20; - if ((gAllRangeMode != 1) && (gPlayer[0].unk_1C8 != 2)) { + if ((gLevelMode != LEVELMODE_ALL_RANGE) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { return true; } - Matrix_RotateY(gCalcMatrix, gPlayer[D_801778A0].unk_058, 0); - sp2C.x = arg0->x - gPlayer[D_801778A0].unk_040.x; + Matrix_RotateY(gCalcMatrix, gPlayer[gPlayerNum].unk_058, 0); + sp2C.x = arg0->x - gPlayer[gPlayerNum].camEye.x; sp2C.y = 0.0f; - sp2C.z = arg0->z - gPlayer[D_801778A0].unk_040.z; + sp2C.z = arg0->z - gPlayer[gPlayerNum].camEye.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp2C, &sp20); if ((sp20.z < 1000.0f) && (arg1 < sp20.z) && (fabsf(sp20.x) < (fabsf(sp20.z * 0.5f) + 2000.0f))) { @@ -94,16 +94,16 @@ s32 func_80061148(Vec3f* arg0, f32 arg1) { Vec3f sp2C; Vec3f sp20; - if (gAllRangeMode != 1) { + if (gLevelMode != LEVELMODE_ALL_RANGE) { return true; } - if (gPlayer[0].unk_1C8 == 7) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) { return func_80060FE4(arg0, arg1); } - Matrix_RotateY(gCalcMatrix, gPlayer[D_801778A0].unk_058, 0); - sp2C.x = arg0->x - gPlayer[D_801778A0].unk_040.x; + Matrix_RotateY(gCalcMatrix, gPlayer[gPlayerNum].unk_058, 0); + sp2C.x = arg0->x - gPlayer[gPlayerNum].camEye.x; sp2C.y = 0.0f; - sp2C.z = arg0->z - gPlayer[D_801778A0].unk_040.z; + sp2C.z = arg0->z - gPlayer[gPlayerNum].camEye.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp2C, &sp20); if ((sp20.z < 0.0f) && (arg1 < sp20.z) && (fabsf(sp20.x) < (fabsf(sp20.z * 0.5f) + 500.0f))) { @@ -115,7 +115,7 @@ s32 func_80061148(Vec3f* arg0, f32 arg1) { void Object_SetInfo(ObjectInfo* info, u32 objId) { *info = D_800CC124[objId]; info->hitbox = SEGMENTED_TO_VIRTUAL(D_800CC124[objId].hitbox); - if (gAllRangeMode == 2) { + if (gLevelMode == LEVELMODE_UNK_2) { info->unk_10 += 200.0f; } } @@ -145,7 +145,7 @@ void Object_2F4_Initialize(Object_2F4* obj2F4) { for (i = 0; i < sizeof(Object_2F4); i++, ptr++) { *ptr = 0; } - obj2F4->unk_110 = 1.0f; + obj2F4->scale = 1.0f; } void Object_408_Initialize(Object_408* obj408) { @@ -174,10 +174,10 @@ void Object_8C_Initialize(Object_8C* obj8C) { for (i = 0; i < sizeof(Object_8C); i++, ptr++) { *ptr = 0; } - obj8C->unk_70 = 1.0f; + obj8C->scale2 = 1.0f; } -void Object_80_Spawn(Object_80* obj80, ObjectInit* objInit) { +void Object_80_Load(Object_80* obj80, ObjectInit* objInit) { Object_80_Initialize(obj80); obj80->obj.status = 1; obj80->obj.pos.z = -objInit->zPos1; @@ -191,7 +191,7 @@ void Object_80_Spawn(Object_80* obj80, ObjectInit* objInit) { Object_SetInfo(&obj80->info, obj80->obj.id); } -void Object_4C_Spawn(Object_4C* obj4C, ObjectInit* objInit) { +void Object_4C_Load(Object_4C* obj4C, ObjectInit* objInit) { Object_4C_Initialize(obj4C); obj4C->obj.status = 1; obj4C->obj.pos.z = -objInit->zPos1; @@ -205,7 +205,7 @@ void Object_4C_Spawn(Object_4C* obj4C, ObjectInit* objInit) { Object_SetInfo(&obj4C->info, obj4C->obj.id); } -void Object_2F4_Spawn(Object_2F4* obj2F4, ObjectInit* objInit) { +void Object_2F4_Load(Object_2F4* obj2F4, ObjectInit* objInit) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; obj2F4->obj.pos.z = -objInit->zPos1; @@ -219,7 +219,7 @@ void Object_2F4_Spawn(Object_2F4* obj2F4, ObjectInit* objInit) { Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } -void Object_408_Spawn(Object_408* obj408, ObjectInit* objInit) { +void Object_408_Load(Object_408* obj408, ObjectInit* objInit) { Object_408_Initialize(obj408); obj408->obj.status = 1; obj408->obj.pos.z = -objInit->zPos1; @@ -233,7 +233,7 @@ void Object_408_Spawn(Object_408* obj408, ObjectInit* objInit) { Object_SetInfo(&obj408->info, obj408->obj.id); } -void Item_Spawn(Item* item, ObjectInit* objInit) { +void Item_Load(Item* item, ObjectInit* objInit) { Item_Initialize(item); item->obj.status = 1; item->obj.pos.z = -objInit->zPos1; @@ -244,7 +244,7 @@ void Item_Spawn(Item* item, ObjectInit* objInit) { item->obj.rot.x = objInit->unk_A; item->obj.rot.z = objInit->unk_E; item->obj.id = objInit->id; - item->unk_68 = 1.0f; + item->scale = 1.0f; Object_SetInfo(&item->info, item->obj.id); } @@ -252,19 +252,19 @@ void func_80061958(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; obj8C->obj.id = OBJ_8C_346; - obj8C->unk_50 = 50; - obj8C->unk_70 = 0.2f; + obj8C->timer_50 = 50; + obj8C->scale2 = 0.2f; if (gCurrentLevel == LEVEL_AQUAS) { - obj8C->unk_50 = 200; - obj8C->unk_70 = 0.3f; - obj8C->unk_6C = Rand_ZeroOne() * 255.0f; + obj8C->timer_50 = 200; + obj8C->scale2 = 0.3f; + obj8C->scale1 = Rand_ZeroOne() * 255.0f; } obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { obj8C->info.unk_10 = 100.0f; } } @@ -279,9 +279,9 @@ void func_80061A4C(void) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { sp1C = (Rand_ZeroOne() - 0.5f); - x = gPlayer[0].unk_074 + (sp1C * 400.0f) + (5.0f * gPlayer[0].unk_0C0.x); + x = gPlayer[0].pos.x + (sp1C * 400.0f) + (5.0f * gPlayer[0].vel.x); sp1C = (Rand_ZeroOne() - 0.5f); - y = gPlayer[0].unk_078 + (sp1C * 400.0f) + (5.0f * gPlayer[0].unk_0C0.y); + y = gPlayer[0].pos.y + (sp1C * 400.0f) + (5.0f * gPlayer[0].vel.y); z = -D_80177D20 - 500.0f; if (D_80177D08 < 0.0f) { z = -D_80177D20 + 500.0f; @@ -303,11 +303,11 @@ void func_80061B68(void) { if (gObjects8C[i].obj.status == 0) { sp1C = (Rand_ZeroOne() - 0.5f); - x = gPlayer[0].unk_074 + (sp1C * 2000.0f) + (5.0f * gPlayer[0].unk_0C0.x); + x = gPlayer[0].pos.x + (sp1C * 2000.0f) + (5.0f * gPlayer[0].vel.x); y = 0; while (y <= D_80177940) { sp1C = (Rand_ZeroOne() - 0.5f); - y = gPlayer[0].unk_078 + (sp1C * 2000.0f) + (5.0f * gPlayer[0].unk_0C0.y); + y = gPlayer[0].pos.y + (sp1C * 2000.0f) + (5.0f * gPlayer[0].vel.y); } z = -D_80177D20 - 3000.0f; if (D_80177D08 < 0.0f) { @@ -329,9 +329,9 @@ void func_80061CD0(void) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { sp1C = (Rand_ZeroOne() - 0.5f); - x = gPlayer[D_801778A0].unk_074 + (sp1C * 3000.0f) + (5.0f * gPlayer[D_801778A0].unk_0C0.x); + x = gPlayer[gPlayerNum].pos.x + (sp1C * 3000.0f) + (5.0f * gPlayer[gPlayerNum].vel.x); sp1C = (Rand_ZeroOne() - 0.5f); - y = gPlayer[D_801778A0].unk_078 + 1000.0f + (sp1C * 500.0f) + (5.0f * gPlayer[D_801778A0].unk_0C0.y); + y = gPlayer[gPlayerNum].pos.y + 1000.0f + (sp1C * 500.0f) + (5.0f * gPlayer[gPlayerNum].vel.y); z = -D_80177D20 - 2000.0f * Rand_ZeroOne(); if (D_80177D08 < 0.0f) { z = -D_80177D20 + 1000.0f; @@ -373,7 +373,7 @@ void func_80061F0C(Object_2F4* obj2F4, ObjectInit* objInit, s32 arg2) { obj2F4->obj.rot.x = obj2F4->unk_0F4.x = objInit->unk_A; obj2F4->unk_0F4.z = objInit->unk_E; obj2F4->obj.id = OBJ_2F4_200; - obj2F4->unk_0C2 = 10; + obj2F4->timer_0C2 = 10; obj2F4->unk_0B4 = 4095; obj2F4->unk_0E4 = objInit->id - OBJ_UNK_1000; @@ -395,7 +395,7 @@ void func_80061F0C(Object_2F4* obj2F4, ObjectInit* objInit, s32 arg2) { Object_2F4_Update(obj2F4); } -void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { +void Object_Load(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { s32 i; if ((arg1 > objInit->xPos - gPlayer[0].unk_0AC) && (objInit->xPos - gPlayer[0].unk_0AC > arg2) && @@ -403,7 +403,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if (objInit->id < OBJ_4C_161) { for (i = 0; i < ARRAY_COUNT(gObjects80); i++) { if (gObjects80[i].obj.status == 0) { - Object_80_Spawn(&gObjects80[i], objInit); + Object_80_Load(&gObjects80[i], objInit); break; } } @@ -411,7 +411,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if ((objInit->id >= OBJ_4C_161) && (objInit->id < OBJ_2F4_176)) { for (i = 0; i < ARRAY_COUNT(gObjects4C); i++) { if (gObjects4C[i].obj.status == 0) { - Object_4C_Spawn(&gObjects4C[i], objInit); + Object_4C_Load(&gObjects4C[i], objInit); break; } } @@ -420,21 +420,21 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if ((objInit->id == OBJ_2F4_267) || (objInit->id == OBJ_2F4_254)) { for (i = ARRAY_COUNT(gObjects2F4) - 1; i >= 0; i--) { if (gObjects2F4[i].obj.status == 0) { - Object_2F4_Spawn(&gObjects2F4[i], objInit); + Object_2F4_Load(&gObjects2F4[i], objInit); break; } } } else if (objInit->id == OBJ_2F4_198) { for (i = 0; i < 3; i++) { if (gObjects2F4[i].obj.status == 0) { - Object_2F4_Spawn(&gObjects2F4[i], objInit); + Object_2F4_Load(&gObjects2F4[i], objInit); break; } } } else { for (i = 4; i < ARRAY_COUNT(gObjects2F4); i++) { if (gObjects2F4[i].obj.status == 0) { - Object_2F4_Spawn(&gObjects2F4[i], objInit); + Object_2F4_Load(&gObjects2F4[i], objInit); break; } } @@ -443,7 +443,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if ((objInit->id >= OBJ_408_292) && (objInit->id < OBJ_ITEM_LASERS)) { for (i = 0; i < ARRAY_COUNT(gObjects408); i++) { if (gObjects408[i].obj.status == 0) { - Object_408_Spawn(&gObjects408[i], objInit); + Object_408_Load(&gObjects408[i], objInit); break; } } @@ -451,7 +451,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if ((objInit->id >= OBJ_ITEM_LASERS) && (objInit->id < OBJ_8C_339)) { for (i = 0; i < ARRAY_COUNT(gItems); i++) { if (gItems[i].obj.status == 0) { - Item_Spawn(&gItems[i], objInit); + Item_Load(&gItems[i], objInit); break; } } @@ -503,7 +503,7 @@ void func_80062568(void) { var_s1 = &D_80178310[var_s0]; for (; var_s0 < D_80177CA0; var_s0++, var_s1++) { - Object_Spawn(var_s1, 4000.0f, -4000.0f, 4000.0f, -4000.0f); + Object_Load(var_s1, 4000.0f, -4000.0f, 4000.0f, -4000.0f); } } @@ -520,7 +520,7 @@ void func_80062664(void) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_602B148); } else if ((gCurrentLevel == LEVEL_SECTOR_X) && (D_8017827C == 1)) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_602F18C); - } else if ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 1)) { + } else if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_8017827C == 1)) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_C0356A4); } else if ((gCurrentLevel == LEVEL_VENOM_1) && (D_8017827C == 1)) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_6010088); @@ -550,10 +550,10 @@ void func_80062664(void) { var_fs4 = var_fs2 = -4000.0f; } - if ((gPlayer[0].unk_210 != 0) && (gPlayer[0].unk_118 < 0.0f)) { + if ((gPlayer[0].timer_210 != 0) && (gPlayer[0].unk_118 < 0.0f)) { var_fs1 = 10000.0f; } - if ((gPlayer[0].unk_210 != 0) && (gPlayer[0].unk_118 > 0.0f)) { + if ((gPlayer[0].timer_210 != 0) && (gPlayer[0].unk_118 > 0.0f)) { var_fs2 = -10000.0f; } D_80161680 = 0; @@ -563,10 +563,10 @@ void func_80062664(void) { if ((gCurrentLevel == LEVEL_VENOM_1) && (objInit->id >= OBJ_UNK_1000)) { if (((objInit->unk_C < 180.0f) && (objInit->xPos < gPlayer[0].unk_0AC)) || ((objInit->unk_C > 180.0f) && (gPlayer[0].unk_0AC < objInit->xPos))) { - Object_Spawn(objInit, var_fs1, var_fs2, var_fs3, var_fs4); + Object_Load(objInit, var_fs1, var_fs2, var_fs3, var_fs4); } } else { - Object_Spawn(objInit, var_fs1, var_fs2, var_fs3, var_fs4); + Object_Load(objInit, var_fs1, var_fs2, var_fs3, var_fs4); } } else { break; @@ -577,7 +577,7 @@ void func_80062664(void) { void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { s32 i; - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { Object_8C_Initialize(&gObjects8C[i]); @@ -586,8 +586,8 @@ void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { gObjects8C[i].obj.pos.x = xPos; gObjects8C[i].obj.pos.y = D_80177940 + 3.0f; gObjects8C[i].obj.pos.z = zPos; - gObjects8C[i].unk_70 = 10.0f; - gObjects8C[i].unk_6C = arg3; + gObjects8C[i].scale2 = 10.0f; + gObjects8C[i].scale1 = arg3; gObjects8C[i].unk_44 = 80; gObjects8C[i].unk_4E = arg2; Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); @@ -600,7 +600,7 @@ void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { void func_80062C38(f32 xPos, f32 yPos) { s32 i; - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { Object_8C_Initialize(&gObjects8C[i]); @@ -609,8 +609,8 @@ void func_80062C38(f32 xPos, f32 yPos) { gObjects8C[i].obj.pos.x = xPos; gObjects8C[i].obj.pos.y = D_80177940 + 3.0f; gObjects8C[i].obj.pos.z = yPos; - gObjects8C[i].unk_70 = 1.0f; - gObjects8C[i].unk_6C = 1.3f; + gObjects8C[i].scale2 = 1.0f; + gObjects8C[i].scale1 = 1.3f; gObjects8C[i].unk_44 = 120; Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); break; @@ -630,8 +630,8 @@ void func_80062D04(f32 xPos, f32 yPos) { gObjects8C[i].obj.pos.x = xPos; gObjects8C[i].obj.pos.y = D_80177940 + 3.0f; gObjects8C[i].obj.pos.z = yPos; - gObjects8C[i].unk_70 = 3.0f; - gObjects8C[i].unk_6C = 2.0f; + gObjects8C[i].scale2 = 3.0f; + gObjects8C[i].scale1 = 2.0f; gObjects8C[i].unk_44 = 120; Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); break; @@ -655,10 +655,10 @@ s32 func_80062DBC(Vec3f* pos, f32* hitboxData, Object* obj, f32 xRot, f32 yRot, for (i = 0; i < count; i++, hitboxData += 6) { rotate = 0.0f; hitRot.x = hitRot.y = hitRot.z = 0.0f; - if (*hitboxData >= 300000.0f) { + if (*hitboxData >= HITBOX_UNK_3) { return 0; } - if (*hitboxData == 200000.0f) { + if (*hitboxData == HITBOX_UNK_2) { rotate = 1.0f; hitRot.x = hitboxData[1]; hitRot.y = hitboxData[2]; @@ -792,7 +792,7 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { Vec3f temp; s32 i; - if ((gAllRangeMode == 1) && (gCurrentLevel != LEVEL_KATINA)) { + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (gCurrentLevel != LEVEL_KATINA)) { obj58 = gObjects58; for (i = 0; i < 200; i++, obj58++) { if (obj58->obj.status == 2) { @@ -812,7 +812,7 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { } } obj80 = gObjects80; - for (i = 0; i < ARRAY_COUNT(gObjects80) && gAllRangeMode == 0; i++, obj80++) { + for (i = 0; (i < ARRAY_COUNT(gObjects80)) && (gLevelMode == LEVELMODE_ON_RAILS); i++, obj80++) { if (obj80->obj.status == 2) { if ((obj80->obj.id == OBJ_80_1) || (obj80->obj.id == OBJ_80_4) || (obj80->obj.id == OBJ_80_5) || (obj80->obj.id == OBJ_80_2) || (obj80->obj.id == OBJ_80_39) || (obj80->obj.id == OBJ_80_3)) { @@ -877,12 +877,12 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++, obj2F4++) { if ((obj2F4->obj.status >= 2) && (fabsf(pos->x - obj2F4->obj.pos.x) < 1000.0f) && (fabsf(pos->z - obj2F4->obj.pos.z) < 1500.0f) && (index != i) && (obj2F4->info.unk_16 != 2) && - ((obj2F4->obj.id != OBJ_2F4_197) || (obj2F4->unk_0E4 >= 4)) && (obj2F4->unk_0C2 == 0)) { + ((obj2F4->obj.id != OBJ_2F4_197) || (obj2F4->unk_0E4 >= 4)) && (obj2F4->timer_0C2 == 0)) { if (obj2F4->obj.id == OBJ_2F4_180) { if (func_8006326C(pos, arg2, obj2F4->obj.id, &obj2F4->obj) != 0) { return 2; } - } else if (obj2F4->unk_110 < 0.0f) { + } else if (obj2F4->scale < 0.0f) { if (func_80062DBC(pos, obj2F4->info.hitbox, &obj2F4->obj, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z)) { obj2F4->unk_0D0 = 1; @@ -966,7 +966,7 @@ void func_80063E5C(Object_80* obj80, f32* hitboxData) { if (item->obj.status == 0) { Item_Initialize(&gItems[i]); item->obj.status = 1; - item->obj.id = OBJ_ITEM_CORN_ARCH; + item->obj.id = OBJ_ITEM_334; item->obj.pos.x = obj80->obj.pos.x; item->obj.pos.y = obj80->obj.pos.y; item->obj.pos.z = obj80->obj.pos.z; @@ -982,11 +982,11 @@ void func_80063F4C(s32 arg0) { } void func_80063F58(Item* item) { - item->unk_68 = item->obj.rot.z * 100.0f; + item->scale = item->obj.rot.z * 100.0f; } void func_80063F74(Item* item) { - item->unk_68 = item->obj.rot.z * 100.0f; + item->scale = item->obj.rot.z * 100.0f; } void Object_Init(s32 index, s32 objId) { @@ -1002,10 +1002,10 @@ void Object_Init(s32 index, s32 objId) { func_8007A6F0(&gObjects4C[index].obj.pos, 0x11000055); break; case OBJ_2F4_234: - func_80019218(0x11030010, &gObjects2F4[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &gObjects2F4[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case OBJ_80_54: - func_80019218(0x11000000, &gObjects80[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11000000, &gObjects80[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case OBJ_2F4_198: func_80092D48(&gObjects2F4[index]); @@ -1117,7 +1117,7 @@ void Object_Init(s32 index, s32 objId) { gObjects2F4[index].unk_0CE = 30; break; case OBJ_2F4_252: - if (gPlayer[0].unk_07C < gObjects2F4[index].obj.pos.z) { + if (gPlayer[0].pos.z < gObjects2F4[index].obj.pos.z) { Object_Kill(&gObjects2F4[index].obj, &gObjects2F4[index].sfxPos); } break; @@ -1160,7 +1160,7 @@ void Object_Init(s32 index, s32 objId) { break; case OBJ_2F4_190: case OBJ_2F4_191: - func_80019218(0x31000012, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31000012, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case OBJ_2F4_192: gObjects2F4[index].unk_0C9 = 1; @@ -1212,7 +1212,7 @@ void Object_Init(s32 index, s32 objId) { /* fallthrough */ case OBJ_2F4_176: gObjects2F4[index].unk_0CE = 24; - func_80019218(0x31000016, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31000016, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case OBJ_408_297: func_E08400_80188A40(&gObjects408[index]); @@ -1341,8 +1341,8 @@ void func_80065380(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; obj2F4->obj.id = OBJ_2F4_182; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; - obj2F4->unk_0C2 = 30; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; + obj2F4->timer_0C2 = 30; obj2F4->unk_0E8.x = arg4; obj2F4->unk_0E8.y = arg5; obj2F4->unk_0E8.z = arg6; @@ -1387,9 +1387,9 @@ void func_800655C8(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, s32 arg4) { obj2F4->obj.pos.y = yPos; obj2F4->obj.pos.z = zPos; obj2F4->unk_0B4 = arg4; - obj2F4->unk_0BE = 50; + obj2F4->timer_0BE = 50; if (obj2F4->unk_0B4 == 1) { - obj2F4->unk_0BE = 30; + obj2F4->timer_0BE = 30; } obj2F4->unk_124.y = 15.0f; Object_SetInfo(&obj2F4->info, obj2F4->obj.id); @@ -1430,7 +1430,7 @@ void func_800656D4(Object_2F4* obj2F4) { s32 i; s32 j; - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { var_ra = 2; } else { var_ra = 0; @@ -1467,7 +1467,7 @@ void func_800656D4(Object_2F4* obj2F4) { break; } - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { if (gTeamShields[spC4 - 1] > 0) { obj2F4->unk_054 = spC4; goto label; @@ -1495,16 +1495,16 @@ void func_800656D4(Object_2F4* obj2F4) { if ((fabsf(obj2F4->obj.pos.x - gObjects2F4[spC4].obj.pos.x) < 400.0f) && (fabsf(obj2F4->obj.pos.z - gObjects2F4[spC4].obj.pos.z) < 400.0f)) { if ((Rand_ZeroOne() * (spC4 - 1)) < 0.6f) { - gObjects2F4[spC4].unk_078 = 1; + gObjects2F4[spC4].unk_074 = 1; } } } else { obj2F4->unk_188 = gPlayer[0].unk_138; - obj2F4->unk_184 = gPlayer[0].unk_078; - obj2F4->unk_180 = gPlayer[0].unk_074; + obj2F4->unk_184 = gPlayer[0].pos.y; + obj2F4->unk_180 = gPlayer[0].pos.x; } - if (obj2F4->unk_0BC != 0) { + if (obj2F4->timer_0BC != 0) { Math_SmoothStepToAngle(&obj2F4->obj.rot.x, 0.0f, 0.3f, 4.0f, 0.001f); } else { if ((obj2F4->unk_078 == 0) && ((fabsf(obj2F4->unk_180 - obj2F4->obj.pos.x) > 300.0f) || @@ -1546,8 +1546,8 @@ void func_800656D4(Object_2F4* obj2F4) { obj2F4->obj.rot.z += 5.0f; } if (obj2F4->unk_0B4 == 1) { - if (obj2F4->unk_0BE == 0) { - obj2F4->unk_0BE = 30; + if (obj2F4->timer_0BE == 0) { + obj2F4->timer_0BE = 30; Math_Vec3fFromAngles(&sp98, obj2F4->obj.rot.x, obj2F4->obj.rot.y, 120.0f); func_8007F04C(0x161, obj2F4->obj.pos.x + sp98.x, obj2F4->obj.pos.y + sp98.y, obj2F4->obj.pos.z + sp98.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z, 0.0f, 0.0f, 0.0f, sp98.x, sp98.y, @@ -1568,13 +1568,13 @@ void func_800656D4(Object_2F4* obj2F4) { sp8C.y = obj2F4->unk_0E8.y; sp8C.z = obj2F4->unk_0E8.z; if ((func_8006351C(obj2F4->index, &obj2F4->obj.pos, &sp8C, 1) != 0) || (obj2F4->unk_0D0 != 0) || - (obj2F4->obj.pos.y < (D_80177940 + 10.0f)) || (gPlayer[0].unk_1C8 == 7)) { + (obj2F4->obj.pos.y < (D_80177940 + 10.0f)) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7)) { func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 3.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); if (obj2F4->unk_0D0 != 0) { obj2F4->unk_044 = 2; if ((gCurrentLevel == LEVEL_CORNERIA)) { - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { obj2F4->unk_044 = 2; } else { obj2F4->unk_044 = 4; @@ -1587,11 +1587,11 @@ void func_800656D4(Object_2F4* obj2F4) { } func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } - if (gAllRangeMode == 0) { + if (gLevelMode == LEVELMODE_ON_RAILS) { if (fabsf(obj2F4->obj.pos.z - gPlayer[0].unk_138) < 100.0f) { obj2F4->unk_078 = 1; } - if (gPlayer[0].unk_040.z < (obj2F4->obj.pos.z + D_80177D20)) { + if (gPlayer[0].camEye.z < (obj2F4->obj.pos.z + D_80177D20)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } @@ -1612,7 +1612,7 @@ void func_800660F0(Object_2F4* obj2F4) { item->obj.pos.x = obj2F4->obj.pos.x; item->obj.pos.y = obj2F4->obj.pos.y; item->obj.pos.z = obj2F4->obj.pos.z; - item->unk_4A = 8; + item->timer_4A = 8; Object_SetInfo(&item->info, item->obj.id); if ((item->obj.id == OBJ_ITEM_SILVER_RING) || (item->obj.id == OBJ_ITEM_BOMB) || (item->obj.id == OBJ_ITEM_LASERS)) { @@ -1620,10 +1620,10 @@ void func_800660F0(Object_2F4* obj2F4) { } if ((item->obj.id >= OBJ_ITEM_GOLD_RING) || (item->obj.id == OBJ_ITEM_1UP)) { item->unk_50 = 90.0f; - func_80019218(0x4900000C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - item->unk_48 = 1000; + Audio_PlaySfx(0x4900000C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + item->timer_48 = 1000; if (item->obj.id == OBJ_ITEM_WING_REPAIR) { - func_80019218(0x1900302B, &item->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1900302B, &item->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } break; @@ -1644,7 +1644,7 @@ void func_80066254(Object_2F4* obj2F4) { if ((obj2F4->unk_0D4 == 1) && (obj2F4->info.bonus != 0)) { gHitCount += obj2F4->info.bonus; D_80177850 = 0xF; - if ((gAllRangeMode == 1) && (D_80161A62 != 0)) { + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (D_80161A62 != 0)) { switch (D_80161A62) { case 9: if (gCurrentLevel == LEVEL_KATINA) { @@ -1678,7 +1678,7 @@ void func_80066254(Object_2F4* obj2F4) { } } func_800660F0(obj2F4); - func_80019218(0x4900000C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900000C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else if (obj2F4->unk_044 == 24) { if (gTeamShields[3] > 0) { func_800BA808(gMsg_ID_20261, RCID_PEPPY); @@ -1719,7 +1719,7 @@ void func_8006654C(Object_2F4* obj2F4) { } if ((obj2F4->unk_0B6 == 0x14) || (obj2F4->unk_0B6 == 0x28)) { obj2F4->unk_0B8++; - obj2F4->unk_0BC = 0x14; + obj2F4->timer_0BC = 0x14; } break; case 1: @@ -1732,12 +1732,12 @@ void func_8006654C(Object_2F4* obj2F4) { if (obj2F4->unk_114 > 0.0f) { obj2F4->unk_114 -= 0.3f; } - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { obj2F4->unk_0B8 = 0; } break; } - obj2F4->unk_110 = 0.8f; + obj2F4->scale = 0.8f; if (obj2F4->unk_0D0 != 0) { obj2F4->obj.status = 3; obj2F4->unk_0E8.y = (Rand_ZeroOne() * 5.0f) + 6.0f; @@ -1747,22 +1747,22 @@ void func_8006654C(Object_2F4* obj2F4) { obj2F4->unk_0E8.z = -15.0f; obj2F4->unk_10C = 0.5f; func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 30.0f, obj2F4->obj.pos.z, 13.0f); - func_80019218(0x2903A008, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903A008, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } void func_8006684C(Object_2F4* obj2F4) { s32 pad; - if (obj2F4->unk_0BE != 0) { + if (obj2F4->timer_0BE != 0) { obj2F4->unk_0E8.z = 0.0f; obj2F4->unk_0E8.x = 0.0f; obj2F4->unk_0E8.y = 0.0f; - if (obj2F4->unk_0BE == 1) { + if (obj2F4->timer_0BE == 1) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); obj2F4->unk_044 = 1; func_80066254(obj2F4); - func_80019218(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903B009, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80077240(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 250.0f, obj2F4->obj.pos.z, 3); gHitCount += 3; D_80177850 = 0xF; @@ -1772,14 +1772,14 @@ void func_8006684C(Object_2F4* obj2F4) { obj2F4->obj.rot.y += 7.0f; if (obj2F4->unk_0E8.y < -3.0f) { func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 30.0f, obj2F4->obj.pos.z, 0.0f, 0.0f, 0.0f, 7.0f, 5); - obj2F4->unk_0BE = 3; + obj2F4->timer_0BE = 3; } } } void func_800669A0(Object_2F4* obj2F4) { - if (obj2F4->unk_0BC != 0) { - if (obj2F4->unk_0BC == 1) { + if (obj2F4->timer_0BC != 0) { + if (obj2F4->timer_0BC == 1) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } else { @@ -1787,7 +1787,7 @@ void func_800669A0(Object_2F4* obj2F4) { if (obj2F4->unk_0D0 != 0) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 130.0f, obj2F4->obj.pos.z, 8.0f); func_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 130.0f, obj2F4->obj.pos.z, 0.0f, 0.0f, 0.0f, 4.0f, 5); - obj2F4->unk_0BC = 4; + obj2F4->timer_0BC = 4; func_8007A6F0(&obj2F4->obj.pos, 0x1903400F); } } @@ -1840,7 +1840,7 @@ void func_80066D5C(Object_80* obj80) { case 1: func_80066C00(obj80); obj80->unk_48++; - func_80019218(0x2900300F, &obj80->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2900300F, &obj80->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; case 2: obj80->unk_64.x += 0.05f; @@ -1851,7 +1851,7 @@ void func_80066D5C(Object_80* obj80) { func_80066A8C(obj80); obj80->unk_48 = 0; D_80178480 = 25; - func_80019218(0x19130003, &obj80->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19130003, &obj80->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } break; case 0: @@ -1868,7 +1868,7 @@ void func_80066E8C(Object_4C* obj4C) { void func_80066EA8(Object_80* obj80) { obj80->obj.rot.y = 0.0f; - if (gPlayer[0].unk_040.x < obj80->obj.pos.x) { + if (gPlayer[0].camEye.x < obj80->obj.pos.x) { obj80->obj.rot.y = 271.0f; } } @@ -1879,12 +1879,12 @@ void func_80066EE4(Object_4C* obj4C) { void func_80066EF0(Item* item) { f32 var_fa1; - if ((gPlayer[0].unk_1C8 == 7) || (gPlayer[0].unk_1C8 == 0)) { + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_0)) { Object_Kill(&item->obj, &item->sfxPos); } - if ((gAllRangeMode == 0) && (D_80161680 == 0)) { + if ((gLevelMode == LEVELMODE_ON_RAILS) && (D_80161680 == 0)) { var_fa1 = 900.0f; - if (gPlayer[0].unk_1CC != 0) { + if (gPlayer[0].form != FORM_ARWING) { var_fa1 = 600.0f; } if (gPlayer[0].unk_0AC + var_fa1 < item->obj.pos.x) { @@ -1897,7 +1897,7 @@ void func_80066EF0(Item* item) { if (item->obj.pos.y > 650.0f) { Math_SmoothStepToF(&item->obj.pos.y, 650.0f, 0.1f, 10.0f, 0.01f); } - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { if (item->obj.pos.y < D_80177940 + 70.0f) { Math_SmoothStepToF(&item->obj.pos.y, D_80177940 + 70.0f, 0.1f, 5.0f, 0.01f); } @@ -1957,7 +1957,7 @@ void func_80067348(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 xRot, f obj2F4->unk_0E8.x = arg6; obj2F4->unk_0E8.y = arg7; obj2F4->unk_0E8.z = arg8; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 15.0f) + 25.0f; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 15.0f) + 25.0f; obj2F4->unk_10C = 0.5f; Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } @@ -1978,7 +1978,7 @@ void func_8006753C(Object_2F4* obj2F4) { s32 i; obj2F4->obj.rot.y += 1.0f; - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { if (gCurrentLevel == LEVEL_SECTOR_Z) { Math_SmoothStepToF(&obj2F4->obj.pos.x, -2000.0f, 0.05f, 60.0f, 0.01f); Math_SmoothStepToF(&obj2F4->obj.pos.y, -200.0f, 0.05f, 3.0f, 0.01f); @@ -1994,11 +1994,11 @@ void func_8006753C(Object_2F4* obj2F4) { func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 5.0f); if (((player[0].wings.rightState <= WINGSTATE_BROKEN) || (player[0].wings.leftState <= WINGSTATE_BROKEN)) && - (player[0].unk_1CC != 1)) { + (player[0].form != FORM_LANDMASTER)) { obj2F4->unk_044 = 23; } else if (gPlayer[0].shields < 0x80) { obj2F4->unk_044 = 25; - } else if ((gLaserStrength[0] == 0) && (player[0].unk_1CC != 1)) { + } else if ((gLaserStrength[0] == 0) && (player[0].form != FORM_LANDMASTER)) { obj2F4->unk_044 = 9; } else { obj2F4->unk_044 = 5; @@ -2040,7 +2040,7 @@ void func_80067874(Object_2F4* obj2F4) { } void func_80067A40(void) { - func_80019218(0x09008023, &gPlayer[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x09008023, &gPlayer[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (gPlayer[0].wings.rightState <= WINGSTATE_BROKEN) { D_80177D40[0] = 1050; gPlayer[0].wings.rightState = WINGSTATE_INTACT; @@ -2069,7 +2069,7 @@ void func_80067B1C(Item* item) { gLifeCount[item->unk_4E]++; } } - if (item->unk_48 == 1) { + if (item->timer_48 == 1) { Object_Kill(&item->obj, &item->sfxPos); } } @@ -2080,11 +2080,11 @@ void func_80067BEC(Item* item) { if (item->unk_46 == 0) { switch (item->obj.id) { case OBJ_ITEM_BOMB: - item->unk_68 = 18.0f; + item->scale = 18.0f; if (item->unk_4C != 0) { - item->unk_4A = 50; + item->timer_4A = 50; item->unk_46 = 1; - item->unk_48 = 20; + item->timer_48 = 20; item->unk_50 = 60.0f; gBombCount[item->unk_4E]++; func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49002005, item->unk_4E); @@ -2092,11 +2092,11 @@ void func_80067BEC(Item* item) { } break; case OBJ_ITEM_LASERS: - item->unk_68 = 18.0f; + item->scale = 18.0f; if (item->unk_4C != 0) { - item->unk_4A = 50; + item->timer_4A = 50; item->unk_46 = 1; - item->unk_48 = 20; + item->timer_48 = 20; item->unk_50 = 60.0f; gLaserStrength[item->unk_4E]++; if (gLaserStrength[item->unk_4E] > 2) { @@ -2114,15 +2114,15 @@ void func_80067BEC(Item* item) { break; } } else { - Math_SmoothStepToF(&item->unk_68, 2.5f, 1.0f, 0.5f, 0.0f); - item->obj.pos.x += (gPlayer[item->unk_4E].unk_074 - item->obj.pos.x) * 0.5f; - if (gPlayer[item->unk_4E].unk_1CC == 1) { - item->obj.pos.y += ((gPlayer[item->unk_4E].unk_078 + 50.0f) - item->obj.pos.y) * 0.5f; + Math_SmoothStepToF(&item->scale, 2.5f, 1.0f, 0.5f, 0.0f); + item->obj.pos.x += (gPlayer[item->unk_4E].pos.x - item->obj.pos.x) * 0.5f; + if (gPlayer[item->unk_4E].form == FORM_LANDMASTER) { + item->obj.pos.y += ((gPlayer[item->unk_4E].pos.y + 50.0f) - item->obj.pos.y) * 0.5f; } else { - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.5f; + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y - item->obj.pos.y) * 0.5f; } item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - item->obj.pos.z) * 0.5f; - if (item->unk_48 == 0) { + if (item->timer_48 == 0) { Object_Kill(&item->obj, &item->sfxPos); } } @@ -2133,8 +2133,8 @@ void func_80067F6C(Item* item) { ((gPlayer[0].wings.leftState <= WINGSTATE_BROKEN) || (gPlayer[0].wings.rightState <= WINGSTATE_BROKEN))) { item->obj.id = OBJ_ITEM_WING_REPAIR; Object_SetInfo(&item->info, item->obj.id); - item->unk_48 = 2000; - func_80019218(0x1900302B, &item->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + item->timer_48 = 2000; + Audio_PlaySfx(0x1900302B, &item->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { func_80067BEC(item); } @@ -2146,12 +2146,12 @@ void func_80068020(Item* item) { switch (item->unk_46) { case 0: - Math_SmoothStepToF(&item->unk_68, 0.4f, 1.0f, 0.05f, 0.0f); + Math_SmoothStepToF(&item->scale, 0.4f, 1.0f, 0.05f, 0.0f); func_80066EF0(item); func_800671D0(item); if (item->unk_4C != 0) { item->unk_46 = 1; - item->unk_48 = 50; + item->timer_48 = 50; if (item->obj.id == OBJ_ITEM_SILVER_RING) { gPlayer[item->unk_4E].heal += 0x20; func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x4900200E, item->unk_4E); @@ -2165,7 +2165,7 @@ void func_80068020(Item* item) { gLifeCount[item->unk_4E]++; } gPlayer[item->unk_4E].heal += 0x20; - func_80077240(gPlayer[item->unk_4E].unk_074, gPlayer[item->unk_4E].unk_078, + func_80077240(gPlayer[item->unk_4E].pos.x, gPlayer[item->unk_4E].pos.y, gPlayer[item->unk_4E].unk_138, 101); } else { gPlayer[item->unk_4E].heal += 0x20; @@ -2176,37 +2176,37 @@ void func_80068020(Item* item) { func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x4900200D, item->unk_4E); } } - if ((item->obj.id == OBJ_ITEM_GOLD_RING) && (item->unk_48 == 1)) { + if ((item->obj.id == OBJ_ITEM_GOLD_RING) && (item->timer_48 == 1)) { Object_Kill(&item->obj, &item->sfxPos); } break; case 1: - if (item->unk_48 > 30) { - Math_SmoothStepToF(&item->unk_68, 1.0f, 1.0f, 0.06f, 0.0f); + if (item->timer_48 > 30) { + Math_SmoothStepToF(&item->scale, 1.0f, 1.0f, 0.06f, 0.0f); } else { - Math_SmoothStepToF(&item->unk_68, 0.0f, 1.0f, 0.06f, 0.0f); + Math_SmoothStepToF(&item->scale, 0.0f, 1.0f, 0.06f, 0.0f); } - item->obj.pos.x += (gPlayer[item->unk_4E].unk_074 - item->obj.pos.x) * 0.5f; - if (gPlayer[item->unk_4E].unk_1CC == 1) { - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 + 50.0f - item->obj.pos.y) * 0.5f; + item->obj.pos.x += (gPlayer[item->unk_4E].pos.x - item->obj.pos.x) * 0.5f; + if (gPlayer[item->unk_4E].form == FORM_LANDMASTER) { + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y + 50.0f - item->obj.pos.y) * 0.5f; } else { - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.5f; + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y - item->obj.pos.y) * 0.5f; } - if ((gPlayer[0].unk_238 != 0) && (gAllRangeMode == 0)) { + if ((gPlayer[0].unk_238 != 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 300.0f - item->obj.pos.z) * 0.3f; } else { item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - item->obj.pos.z) * 0.5f; } item->obj.rot.z += 22.0f; Math_SmoothStepToAngle(&item->obj.rot.y, Math_RadToDeg(-gPlayer[item->unk_4E].unk_058), 0.2f, 10.0f, 0.0f); - if (item->unk_48 == 0) { + if (item->timer_48 == 0) { Object_Kill(&item->obj, &item->sfxPos); } - if (item->unk_68 > 0.3f) { + if (item->scale > 0.3f) { Matrix_RotateY(gCalcMatrix, item->obj.rot.y * M_DTOR, 0); Matrix_RotateZ(gCalcMatrix, gFrameCount * 37.0f * M_DTOR, 1); sp4C.x = 0.0f; - sp4C.y = item->unk_68 * 100.0f; + sp4C.y = item->scale * 100.0f; sp4C.z = 0.0f; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp4C, &sp40); func_80078E50(item->obj.pos.x + sp40.x, item->obj.pos.y + sp40.y, item->obj.pos.z + sp40.z, 3.5f); @@ -2230,7 +2230,7 @@ void func_80068618(Item* item) { func_80067A40(); Object_Kill(&item->obj, &item->sfxPos); } - if (item->unk_48 == 1) { + if (item->timer_48 == 1) { Object_Kill(&item->obj, &item->sfxPos); } } @@ -2240,12 +2240,12 @@ void func_80068688(Item* item) { if (item->unk_46 > 0) { if (item->unk_46 == 1) { item->obj.rot.z -= 10.0f; - item->obj.pos.x += (gPlayer[item->unk_4E].unk_074 - item->obj.pos.x) * 0.3f; - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.3f; + item->obj.pos.x += (gPlayer[item->unk_4E].pos.x - item->obj.pos.x) * 0.3f; + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y - item->obj.pos.y) * 0.3f; item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - item->obj.pos.z) * 0.3f; - item->unk_68 -= 5.0f; - if (item->unk_68 < 0.0f) { - item->unk_68 = 0.0f; + item->scale -= 5.0f; + if (item->scale < 0.0f) { + item->scale = 0.0f; } } item->unk_44 -= 10; @@ -2253,23 +2253,23 @@ void func_80068688(Item* item) { Object_Kill(&item->obj, &item->sfxPos); } } else { - item->unk_68 = 100.0f; + item->scale = 100.0f; if (D_80177E80 < 0) { item->unk_46 = 2; item->unk_44 = 0xFF; } else if (item->unk_4C != 0) { item->unk_46 = 1; item->unk_44 = 0xFF; - gPlayer[item->unk_4E].unk_27C = 100; - func_80019218(D_800CFF54[D_80177E80], &gPlayer[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + gPlayer[item->unk_4E].timer_27C = 100; + Audio_PlaySfx(D_800CFF54[D_80177E80], &gPlayer[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_80177E80 == 0) { gPlayer[0].unk_110 = 0.0f; } D_80177E80++; if (D_80177E80 >= 7) { - gPlayer[0].unk_1C8 = 8; + gPlayer[0].state_1C8 = PLAYERSTATE_1C8_8; gPlayer[0].unk_1D0 = 0; - func_80019218(0x1900602A, &D_800C5D28, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1900602A, &D_800C5D28, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_80177930 = 2; D_800D3180[gCurrentLevel] = 1; } @@ -2284,34 +2284,34 @@ void func_80068914(Item* item) { item->unk_58 -= item->unk_44; if (item->unk_46 > 0) { item->unk_44++; - item->obj.pos.x += (gPlayer[item->unk_4E].unk_074 - item->obj.pos.x) * 0.3f; - if (gPlayer[item->unk_4E].unk_1CC == 1) { - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 + 50.0f - item->obj.pos.y) * 0.3f; + item->obj.pos.x += (gPlayer[item->unk_4E].pos.x - item->obj.pos.x) * 0.3f; + if (gPlayer[item->unk_4E].form == FORM_LANDMASTER) { + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y + 50.0f - item->obj.pos.y) * 0.3f; } else { - item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.3f; + item->obj.pos.y += (gPlayer[item->unk_4E].pos.y - item->obj.pos.y) * 0.3f; } if (gPlayer[0].unk_238 != 0) { item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 200.0f - item->obj.pos.z) * 0.3f; } else { item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 100.0f - item->obj.pos.z) * 0.3f; } - if (item->unk_48 == 0) { - Math_SmoothStepToF(&item->unk_68, 5.0f, 0.2f, 15.0f, 0.01f); + if (item->timer_48 == 0) { + Math_SmoothStepToF(&item->scale, 5.0f, 0.2f, 15.0f, 0.01f); Math_SmoothStepToF(&item->unk_50, 0.0f, 0.1f, 0.03f, 0.0f); Math_SmoothStepToF(&item->unk_54, 4.0f, 0.1f, 0.2f, 0.01f); } - if (item->unk_68 <= 6.5f) { + if (item->scale <= 6.5f) { Object_Kill(&item->obj, &item->sfxPos); } } else { item->unk_44 = 2; item->unk_50 = 1.0f; item->unk_54 = 1.0f; - item->unk_68 = 100.0f; + item->scale = 100.0f; if (item->unk_4C != 0) { gPlayer[item->unk_4E].heal = 0x80; item->unk_46++; - item->unk_48 = 15; + item->timer_48 = 15; D_80161A8C = D_80161A88; D_80177CB0 = -item->obj.pos.z; D_80177CB0 -= 250.0f; @@ -2321,7 +2321,7 @@ void func_80068914(Item* item) { for (i = 1; i < 4; i++) { gSavedTeamShields[i] = gTeamShields[i]; } - func_80019218(0x4900400F, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900400F, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } } @@ -2335,18 +2335,18 @@ void func_80068C48(Item* item) { void func_80068C88(Item* item) { D_80161680 = item->obj.id; - if (gPlayer[0].unk_1C8 != 3) { + if (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_3) { Object_Kill(&item->obj, &item->sfxPos); } else if (((gCurrentLevel == LEVEL_METEO) || (gCurrentLevel == LEVEL_SECTOR_X)) && (D_8017827C == 1)) { - gPlayer[0].unk_1C8 = 7; + gPlayer[0].state_1C8 = PLAYERSTATE_1C8_7; gPlayer[0].unk_1D0 = 0; Object_Kill(&item->obj, &item->sfxPos); } else if (gCurrentLevel == LEVEL_TRAINING) { - gPlayer[0].unk_1C8 = 9; + gPlayer[0].state_1C8 = PLAYERSTATE_1C8_9; gPlayer[0].unk_1D0 = 0; Object_Kill(&item->obj, &item->sfxPos); } else if (item->unk_46 == 0) { - if (((item->obj.pos.z + D_80177D20) > -2700.0f) && (fabsf(item->obj.pos.x - gPlayer[0].unk_074) < 1000.0f)) { + if (((item->obj.pos.z + D_80177D20) > -2700.0f) && (fabsf(item->obj.pos.x - gPlayer[0].pos.x) < 1000.0f)) { switch (item->obj.id) { case OBJ_ITEM_331: case OBJ_ITEM_332: @@ -2366,41 +2366,41 @@ void func_80068C88(Item* item) { if (item->unk_4C != 0) { Object_Kill(&item->obj, &item->sfxPos); gPlayer[0].unk_0B4 = 0.0f; - gPlayer[0].unk_210 = item->unk_68 * 0.05f; + gPlayer[0].timer_210 = item->scale * 0.05f; switch (item->obj.id) { case OBJ_ITEM_328: - if (item->obj.pos.x < gPlayer[0].unk_074) { + if (item->obj.pos.x < gPlayer[0].pos.x) { gPlayer[0].unk_118 = -30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->scale; } else { gPlayer[0].unk_118 = 30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->scale; } break; case OBJ_ITEM_329: gPlayer[0].unk_118 = 30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->scale; break; case OBJ_ITEM_330: gPlayer[0].unk_118 = -30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->scale; break; case OBJ_ITEM_331: - if (item->obj.pos.y < gPlayer[0].unk_078) { + if (item->obj.pos.y < gPlayer[0].pos.y) { gPlayer[0].unk_124 = 30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->scale; } else { gPlayer[0].unk_124 = -30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->scale; } break; case OBJ_ITEM_332: gPlayer[0].unk_124 = 30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->scale; break; case OBJ_ITEM_333: gPlayer[0].unk_124 = -30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->scale; break; } } @@ -2409,7 +2409,7 @@ void func_80068C88(Item* item) { void func_80068FE0(Object_4C* obj4C) { obj4C->obj.rot.y = - (Math_Atan2F(gPlayer[0].unk_040.x - obj4C->obj.pos.x, gPlayer[0].unk_040.z - (obj4C->obj.pos.z + D_80177D20)) * + (Math_Atan2F(gPlayer[0].camEye.x - obj4C->obj.pos.x, gPlayer[0].camEye.z - (obj4C->obj.pos.z + D_80177D20)) * 180.0f) / M_PI; if (obj4C->unk_46 != 0) { @@ -2433,7 +2433,7 @@ void func_800690D0(s32 index, s32 objId) { func_8007717C(&gObjects2F4[index]); break; case OBJ_2F4_197: - if (gCurrentLevel == LEVEL_VENOM_2) { + if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { func_E9F1D0_801888F4(&gObjects2F4[index]); } else { func_800763A4(&gObjects2F4[index]); @@ -2487,10 +2487,10 @@ void func_800693E8(Object_2F4* obj2F4) { if ((obj2F4->obj.id == OBJ_2F4_236) || (gCurrentLevel == LEVEL_MACBETH) || ((obj2F4->obj.id == OBJ_2F4_200) && (obj2F4->unk_0B4 == 56))) { var_fv0 = 8000.0f; - } else if (gPlayer[0].unk_1C8 == 8) { + } else if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_8) { var_fv0 = 100000.0f; } - if (((gPlayer[0].unk_040.z + obj2F4->info.unk_10) < (obj2F4->obj.pos.z + D_80177D20)) || + if (((gPlayer[0].camEye.z + obj2F4->info.unk_10) < (obj2F4->obj.pos.z + D_80177D20)) || ((obj2F4->obj.pos.z + D_80177D20) < -15000.0f) || (obj2F4->obj.pos.y < (gPlayer[0].unk_0B0 - var_fv0)) || ((gPlayer[0].unk_0B0 + var_fv0) < obj2F4->obj.pos.y) || ((gPlayer[0].unk_0AC + var_fv0) < obj2F4->obj.pos.x) || @@ -2526,20 +2526,20 @@ void func_80069658(Object_408* obj408) { obj408->obj.pos.y += obj408->unk_06C.y; obj408->obj.pos.z += obj408->unk_06C.z; obj408->unk_06C.y -= obj408->unk_084; - if ((D_80161AB8 != 0) && ((obj408->obj.pos.z + D_80177D20) > (obj408->info.unk_10 - gPlayer[0].unk_040.z))) { - if (gPlayer[0].unk_040.z) {} // fake + if ((D_80161AB8 != 0) && ((obj408->obj.pos.z + D_80177D20) > (obj408->info.unk_10 - gPlayer[0].camEye.z))) { + if (gPlayer[0].camEye.z) {} // fake Object_Kill(&obj408->obj, &obj408->sfxPos); } } void func_800696F8(Object_80* obj80) { - if (gPlayer[0].unk_1C8 == 2) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) { obj80->obj.pos.z += obj80->unk_60; if (obj80->info.unk_10 < obj80->obj.pos.z) { Object_Kill(&obj80->obj, &obj80->sfxPos); } - } else if ((gAllRangeMode == 0) && (D_80178284 != 2)) { - f32 temp_fv0 = fabsf(obj80->obj.pos.x - gPlayer[0].unk_040.x); + } else if ((gLevelMode == LEVELMODE_ON_RAILS) && (D_80178284 != 2)) { + f32 temp_fv0 = fabsf(obj80->obj.pos.x - gPlayer[0].camEye.x); f32 var_fa0 = 500.0f; if ((obj80->obj.id == OBJ_80_6) || (obj80->obj.id == OBJ_80_7)) { @@ -2549,7 +2549,7 @@ void func_800696F8(Object_80* obj80) { if ((fabsf(gPlayer[0].unk_114) > 1.0f) || (gCurrentLevel == LEVEL_MACBETH)) { temp_fv0 = 0.0f; } - temp_fv0 -= gPlayer[0].unk_040.z; + temp_fv0 -= gPlayer[0].camEye.z; if ((obj80->info.unk_10 - temp_fv0) < (obj80->obj.pos.z + D_80177D20)) { Object_Kill(&obj80->obj, &obj80->sfxPos); } @@ -2558,7 +2558,7 @@ void func_800696F8(Object_80* obj80) { void func_80069858(Object_4C* obj4C) { if (D_80161AB8 != 0) { - f32 temp_fv0 = fabsf(obj4C->obj.pos.x - gPlayer[0].unk_040.x); + f32 temp_fv0 = fabsf(obj4C->obj.pos.x - gPlayer[0].camEye.x); f32 var_fa0 = 500.0f; if (((obj4C->obj.id == OBJ_4C_164) && ((obj4C->unk_45 == 6) || (obj4C->unk_45 == 7))) || @@ -2566,7 +2566,7 @@ void func_80069858(Object_4C* obj4C) { var_fa0 = 1000.0f; } temp_fv0 = ((var_fa0 > temp_fv0) ? 0.0f : (temp_fv0 - var_fa0) * 1.7f); - temp_fv0 -= gPlayer[0].unk_040.z; + temp_fv0 -= gPlayer[0].camEye.z; if ((obj4C->info.unk_10 - temp_fv0) < (obj4C->obj.pos.z + D_80177D20)) { obj4C->obj.status = 0; } @@ -2578,10 +2578,10 @@ void func_80069924(Object_8C* obj8C) { obj8C->obj.pos.y += obj8C->unk_54.y; obj8C->obj.pos.z += obj8C->unk_54.z; if (D_80161AB8 != 0) { - if ((gPlayer[0].unk_040.z + obj8C->info.unk_10) < (obj8C->obj.pos.z + D_80177D20)) { + if ((gPlayer[0].camEye.z + obj8C->info.unk_10) < (obj8C->obj.pos.z + D_80177D20)) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); - } else if ((fabsf(obj8C->obj.pos.y - gPlayer[0].unk_040.y) > 25000.0f) || - (fabsf(obj8C->obj.pos.x - gPlayer[0].unk_040.x) > 25000.0f)) { + } else if ((fabsf(obj8C->obj.pos.y - gPlayer[0].camEye.y) > 25000.0f) || + (fabsf(obj8C->obj.pos.x - gPlayer[0].camEye.x) > 25000.0f)) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } @@ -2589,7 +2589,7 @@ void func_80069924(Object_8C* obj8C) { void func_80069A10(Item* item) { if (D_80161AB8 != 0) { - f32 temp = (0.0f - gPlayer[0].unk_040.z); + f32 temp = (0.0f - gPlayer[0].camEye.z); if ((item->info.unk_10 - temp) < (item->obj.pos.z + D_80177D20)) { Object_Kill(&item->obj, &item->sfxPos); @@ -2603,38 +2603,38 @@ void func_80069A10(Item* item) { void Object_2F4_Update(Object_2F4* obj2F4) { s32 i; - if (obj2F4->unk_0BC != 0) { - obj2F4->unk_0BC--; + if (obj2F4->timer_0BC != 0) { + obj2F4->timer_0BC--; } - if (obj2F4->unk_0BE != 0) { - obj2F4->unk_0BE--; + if (obj2F4->timer_0BE != 0) { + obj2F4->timer_0BE--; } - if (obj2F4->unk_0C0 != 0) { - obj2F4->unk_0C0--; + if (obj2F4->timer_0C0 != 0) { + obj2F4->timer_0C0--; } - if (obj2F4->unk_0C2 != 0) { - obj2F4->unk_0C2--; + if (obj2F4->timer_0C2 != 0) { + obj2F4->timer_0C2--; } - if (obj2F4->unk_0C6 != 0) { - obj2F4->unk_0C6--; + if (obj2F4->timer_0C6 != 0) { + obj2F4->timer_0C6--; } if (gVersusMode) { for (i = 0; i < gCamCount; i++) { - if (obj2F4->unk_0CA[i] != 0) { + if (obj2F4->timer_0CA[i] != 0) { if (!(gControllerHold[i].button & A_BUTTON)) { - obj2F4->unk_0CA[i]--; + obj2F4->timer_0CA[i]--; } - D_801779C8[i] = 0; + gChargeTimers[i] = 0; } } - } else if (obj2F4->unk_0CA[0] != 0) { - if (!(gControllerHold[D_80177AF8].button & A_BUTTON)) { - obj2F4->unk_0CA[0]--; + } else if (obj2F4->timer_0CA[0] != 0) { + if (!(gControllerHold[gMainController].button & A_BUTTON)) { + obj2F4->timer_0CA[0]--; } - D_801779C8[0] = 0; + gChargeTimers[0] = 0; } - if (obj2F4->unk_0C4 != 0) { - obj2F4->unk_0C4--; + if (obj2F4->timer_0C4 != 0) { + obj2F4->timer_0C4--; } switch (obj2F4->obj.status) { case 1: @@ -2660,26 +2660,26 @@ void Object_2F4_Update(Object_2F4* obj2F4) { } void Object_408_Update(Object_408* obj408) { - if (obj408->unk_050 != 0) { - obj408->unk_050--; + if (obj408->timer_050 != 0) { + obj408->timer_050--; } - if (obj408->unk_052 != 0) { - obj408->unk_052--; + if (obj408->timer_052 != 0) { + obj408->timer_052--; } - if (obj408->unk_054 != 0) { - obj408->unk_054--; + if (obj408->timer_054 != 0) { + obj408->timer_054--; } - if (obj408->unk_056 != 0) { - obj408->unk_056--; + if (obj408->timer_056 != 0) { + obj408->timer_056--; } - if (obj408->unk_058 != 0) { - obj408->unk_058--; + if (obj408->timer_058 != 0) { + obj408->timer_058--; } - if (obj408->unk_05A != 0) { - obj408->unk_05A--; + if (obj408->timer_05A != 0) { + obj408->timer_05A--; } - if (obj408->unk_05C != 0) { - obj408->unk_05C--; + if (obj408->timer_05C != 0) { + obj408->timer_05C--; } switch (obj408->obj.status) { case 1: @@ -2703,8 +2703,8 @@ void Object_408_Update(Object_408* obj408) { } void Object_80_Update(Object_80* obj80) { - if (obj80->unk_4C != 0) { - obj80->unk_4C--; + if (obj80->timer_4C != 0) { + obj80->timer_4C--; } switch (obj80->obj.status) { case 1: @@ -2742,11 +2742,11 @@ void Object_4C_Update(Object_4C* obj4C) { } void Item_Update(Item* item) { - if (item->unk_48 != 0) { - item->unk_48--; + if (item->timer_48 != 0) { + item->timer_48--; } - if (item->unk_4A != 0) { - item->unk_4A--; + if (item->timer_4A != 0) { + item->timer_4A--; } switch (item->obj.status) { case 1: @@ -2764,8 +2764,8 @@ void Item_Update(Item* item) { } void Object_8C_Update(Object_8C* obj8C) { - if (obj8C->unk_50 != 0) { - obj8C->unk_50--; + if (obj8C->timer_50 != 0) { + obj8C->timer_50--; } switch (obj8C->obj.status) { case 1: @@ -2801,12 +2801,12 @@ void func_8006A06C(UnkEntity30* unkEnt30) { } if (gGameState == GSTATE_PLAY) { if (((unkEnt30->mode == 1) || (unkEnt30->mode == 0x65) || (unkEnt30->mode == 0x32)) && - (gPlayer[0].unk_1C8 == 3) && (gPlayer[0].unk_1F4 == 0)) { + (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (gPlayer[0].unk_1F4 == 0)) { Matrix_RotateX(gCalcMatrix, -unkEnt30->unk_1C, 0); Matrix_RotateY(gCalcMatrix, -unkEnt30->unk_20, 1); - sp44.x = gPlayer[D_801778A0].unk_074 - unkEnt30->unk_04.x; - sp44.y = gPlayer[D_801778A0].unk_078 - unkEnt30->unk_04.y; - sp44.z = gPlayer[D_801778A0].unk_138 - unkEnt30->unk_04.z; + sp44.x = gPlayer[gPlayerNum].pos.x - unkEnt30->unk_04.x; + sp44.y = gPlayer[gPlayerNum].pos.y - unkEnt30->unk_04.y; + sp44.z = gPlayer[gPlayerNum].unk_138 - unkEnt30->unk_04.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); sp38.x += unkEnt30->unk_04.x; sp38.y += unkEnt30->unk_04.y; @@ -2814,16 +2814,16 @@ void func_8006A06C(UnkEntity30* unkEnt30) { if ((fabsf(sp38.x - unkEnt30->unk_04.x) < 30.0f) && (fabsf(sp38.y - unkEnt30->unk_04.y) < 30.0f) && (sp38.z < unkEnt30->unk_04.z) && ((unkEnt30->unk_04.z - unkEnt30->unk_24) < sp38.z)) { if (gCurrentLevel == LEVEL_AQUAS) { - func_800A6CD0(&gPlayer[0], 0, 30); + Player_ApplyDamage(&gPlayer[0], 0, 30); } else { - func_800A6CD0(&gPlayer[0], 0, 20); + Player_ApplyDamage(&gPlayer[0], 0, 20); } if (unkEnt30->mode < 100) { unkEnt30->mode = 0; } } } - if (((unkEnt30->unk_04.z + D_80177D20) > 1000.0f) && (gAllRangeMode != 1)) { + if (((unkEnt30->unk_04.z + D_80177D20) > 1000.0f) && (gLevelMode != LEVELMODE_ALL_RANGE)) { unkEnt30->mode = 0; } if (((unkEnt30->mode == 3) || (unkEnt30->mode == 50)) && (unkEnt30->timer == 0)) { @@ -2855,12 +2855,14 @@ void Object_UpdateAll(void) { Object_8C* obj8C; D_80161AB8 = 0; - if ((gAllRangeMode == 0) && ((gPlayer[0].unk_1C8 == 1) || (gPlayer[0].unk_1C8 == 3) || (gPlayer[0].unk_1C8 == 4) || - (gPlayer[0].unk_1C8 == 8) || (gPlayer[0].unk_1C8 == 9) || (gPlayer[0].unk_1C8 == 6))) { + if ((gLevelMode == LEVELMODE_ON_RAILS) && + ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_1) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) || + (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_4) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_8) || + (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_9) || (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_6))) { D_80161AB8 = 1; } - if (gAllRangeMode != 1) { - if ((D_80178488 != 0) && (gPlayer[0].unk_1C8 != 2)) { + if (gLevelMode != LEVELMODE_ALL_RANGE) { + if ((D_80178488 != 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_2)) { func_80062664(); } for (i = 0, obj80 = gObjects80; i < ARRAY_COUNT(gObjects80); i++, obj80++) { @@ -2911,9 +2913,9 @@ void Object_UpdateAll(void) { } } func_8006A38C(); - for (i = 0; i < ARRAY_COUNT(D_80161670); i++) { - if (D_80161670[i] != 0) { - D_80161670[i]--; + for (i = 0; i < ARRAY_COUNT(D_Timer_80161670); i++) { + if (D_Timer_80161670[i] != 0) { + D_Timer_80161670[i]--; } } } diff --git a/src/main/fox_game.c b/src/main/fox_game.c index 602956b1..2ea76093 100644 --- a/src/main/fox_game.c +++ b/src/main/fox_game.c @@ -5,7 +5,7 @@ extern void func_80187520(s32, void*); f32 D_80161A10; f32 D_80161A14; -s32 D_80161A18[4]; +s32 gPlayerInactive[4]; s32 D_80161A28; u8 D_80161A2C; u16 D_80161A2E; @@ -19,7 +19,7 @@ f32 D_80161A3C; f32 D_80161A40; f32 D_80161A44; -s32 D_800D2860[4] = { 1, 1, 1, 1 }; +s32 D_800D2860[4] = { true, true, true, true }; s32 D_800D2870 = 0; s32 D_800D2874[] = { 0, 160, 0, 160 }; s32 D_800D2884[] = { 159, 319, 159, 319 }; @@ -35,7 +35,7 @@ s32 sOverlaySetups[] = { /* LEVEL_VENOM_1 */ OVL_SETUP_VENOM_1, /* LEVEL_SOLAR */ OVL_SETUP_SOLAR, /* LEVEL_ZONESS */ OVL_SETUP_ZONESS, - /* LEVEL_VENOM_2 */ OVL_SETUP_VENOM_2, + /* LEVEL_VENOM_ANDROSS */ OVL_SETUP_VENOM_ANDROSS, /* LEVEL_TRAINING */ OVL_SETUP_TRAINING, /* LEVEL_MACBETH */ OVL_SETUP_MACBETH, /* LEVEL_TITANIA */ OVL_SETUP_TITANIA, @@ -45,7 +45,7 @@ s32 sOverlaySetups[] = { /* LEVEL_KATINA */ OVL_SETUP_KATINA, /* LEVEL_BOLSE */ OVL_SETUP_BOLSE, /* LEVEL_SECTOR_Z */ OVL_SETUP_SECTOR_Z, - /* LEVEL_VENOM_SW */ OVL_SETUP_VENOM_SW, + /* LEVEL_VENOM_2 */ OVL_SETUP_VENOM_2, /* LEVEL_VERSUS */ OVL_SETUP_VERSUS, }; @@ -54,7 +54,7 @@ void Game_Initialize(void) { Rand_Init(); Rand_SetSeed(1, 29000, 9876); gGameState = GSTATE_BOOT; - D_8017783C = 0; + D_Timer_8017783C = 0; gBgColor = 0; gBlurAlpha = 0xFF; D_80161A3C = 45.0f; @@ -81,27 +81,27 @@ void Game_SetGameState(void) { D_80177854 = 0; D_8017827C = D_80161A2E; D_80161A2E = 0; - if ((D_8017827C != 0) && (gCurrentLevel != LEVEL_VENOM_2)) { + if ((D_8017827C != 0) && (gCurrentLevel != LEVEL_VENOM_ANDROSS)) { D_8017782C = 0; } break; case GSTATE_MAP: D_80177B40 = 0; break; - case GSTATE_STATE_5: + case GSTATE_GAME_OVER: D_80177868 = 0; break; } Memory_FreeAll(); func_800A6148(); gGameState = gNextGameState; - D_8017783C = 3; + D_Timer_8017783C = 3; D_8015F924 = 0; gNextGameState = GSTATE_NONE; gOverlayStage = 0; gFillScreenColor = gBgColor = 0; D_80177D20 = 0.0f; - if ((gCurrentLevel == LEVEL_VENOM_SW) && (D_8017827C == 2)) { + if ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 2)) { gFillScreenColor = gBgColor = 0xFFFF; D_80178348 = D_80178350 = D_80178354 = 255; } else { @@ -110,10 +110,10 @@ void Game_SetGameState(void) { } D_80178340 = 255; D_80178380[0] = 0; - D_8017829C = 0; + gRadioState = 0; D_80178428 = 0.0f; gBlurAlpha = 255; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_8001AE58(); func_8001D400(0); } @@ -242,39 +242,39 @@ void func_800A1FB0(Gfx** arg0, u8 arg1, u8 arg2) { } void func_800A24DC(s32 arg0) { - switch (D_80177898) { - case 0: + switch (gDrawMode) { + case DRAWMODE_0: break; - case 1: + case DRAWMODE_1: func_8003DAF0(); func_80187520(0x68, NULL); break; - case 2: + case DRAWMODE_2: func_8003DAF0(); func_80187520(0x6C, NULL); break; - case 3: + case DRAWMODE_3: func_8003DAF0(); func_80187520(0x6A, NULL); break; - case 4: - D_801778A0 = arg0; + case DRAWMODE_4: + gPlayerNum = arg0; func_80057D00(); break; - case 5: + case DRAWMODE_5: func_8003DAF0(); func_80187520(0x6E, NULL); break; - case 6: + case DRAWMODE_6: func_800C2190(); break; - case 7: - D_801778A0 = arg0; + case DRAWMODE_7: + gPlayerNum = arg0; func_800A3CA0(); break; - case 8: + case DRAWMODE_8: func_8003DAF0(); - D_801778A0 = arg0; + gPlayerNum = arg0; func_EF0260_8018AAC4(); break; } @@ -330,16 +330,16 @@ void func_800A26C0(void) { if (func_800A1B6C() != true) { Lib_Perspective(&gUnkDisp1); func_800A1FB0(&gUnkDisp1, gCamCount, 0); - if (D_8017783C != 0) { - D_8017783C--; + if (D_Timer_8017783C != 0) { + D_Timer_8017783C--; } switch (gGameState) { case GSTATE_BOOT: - D_8017783C = 2; + D_Timer_8017783C = 2; gGameState++; break; case GSTATE_BOOT_WAIT: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { gGameState++; } break; @@ -385,21 +385,21 @@ void func_800A26C0(void) { gLifeCount[0] = 2; D_80177D20 = 0.0f; D_8016170C = D_80177A80 = D_80177830 = D_80177838 = D_80177840 = D_80178754 = gVersusMode = D_80177AE0 = - D_80178410 = D_80177B40 = D_80177854 = D_8017784C = D_80177898 = D_80161734 = D_80161A2C = - gBgColor = D_80178340 = 0; + D_80178410 = D_80177B40 = D_80177854 = D_8017784C = gDrawMode = D_80161734 = D_80161A2C = gBgColor = + D_80178340 = 0; gNextGameState = D_80177C94 = D_80177CAC = D_80177CB4 = D_80177CBC = D_80177CC4 = D_80177C9C = D_80177CA4 = D_80161A5C = D_80161A34 = 0; for (i = 0; i < 4; i++) { - D_80177908[i] = L_CBUTTONS; - D_80177928[i] = D_CBUTTONS; - D_80177938[i] = A_BUTTON; - D_80177948[i] = B_BUTTON; + gBoostButton[i] = L_CBUTTONS; + gBrakeButton[i] = D_CBUTTONS; + gShootButton[i] = A_BUTTON; + gBombButton[i] = B_BUTTON; D_80177958[i] = 1.0f; D_80177858[i] = 3; D_80177870[i] = 0; - D_800D2860[i] = R_CBUTTONS; + D_800D2860[i] = true; D_80178380[i] = 0; } gVersusStage = 0; @@ -442,26 +442,26 @@ void func_800A26C0(void) { func_8001D8A8(1, gVolumeSettings[1]); func_8001D8A8(2, gVolumeSettings[2]); break; - case GSTATE_TITLE: // title screen + case GSTATE_TITLE: func_80187520(0x67, NULL); break; - case GSTATE_MENU: // main menu + case GSTATE_MENU: func_80187520(0x6B, NULL); break; - case GSTATE_MAP: // world map + case GSTATE_MAP: func_EBFBE0_8019E8D0(); break; - case GSTATE_VS_INIT: // vs mode + case GSTATE_VS_INIT: func_800C20B0(); break; - case GSTATE_PLAY: // play + case GSTATE_PLAY: func_800B86CC(); break; - case GSTATE_STATE_5: // world map + case GSTATE_GAME_OVER: func_80187520(0x6D, NULL); break; - case GSTATE_CREDITS: // credits - D_80177898 = 8; + case GSTATE_CREDITS: + gDrawMode = DRAWMODE_8; func_EF0260_8018A96C(); break; default: @@ -473,7 +473,7 @@ void func_800A26C0(void) { func_800A24DC(1); gDPPipeSync(gMasterDisp++); gDPSetScissor(gMasterDisp++, G_SC_NON_INTERLACE, 8, 8, SCREEN_WIDTH - 8, SCREEN_HEIGHT - 8); - } else if ((gCamCount == 4) && (D_80177898 != 0)) { + } else if ((gCamCount == 4) && (gDrawMode != DRAWMODE_0)) { func_800A1FB0(&gMasterDisp, gCamCount, 3); func_800A24DC(3); func_800A1FB0(&gMasterDisp, gCamCount, 2); @@ -491,7 +491,7 @@ void func_800A26C0(void) { gDPFillRectangle(gMasterDisp++, SCREEN_WIDTH / 2 - 3, 8, SCREEN_WIDTH / 2 + 2, SCREEN_HEIGHT - 8); gDPFillRectangle(gMasterDisp++, 8, SCREEN_HEIGHT / 2 - 3, SCREEN_WIDTH - 8, SCREEN_HEIGHT / 2 + 2); - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 0, 0, 0, 255); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 100, 100, 255, 255); @@ -505,7 +505,7 @@ void func_800A26C0(void) { if (gCamCount == 1) { Graphics_FillRectangle(&gMasterDisp, 0, 0, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1, D_80178390[0], D_801783A0[0], D_801783B0[0], D_80178380[0]); - if ((D_80177898 == 4) || (D_80177898 == 8)) { + if ((gDrawMode == DRAWMODE_4) || (gDrawMode == DRAWMODE_8)) { func_800BB5D0(); if (D_80161A2C != 0) { func_8008FA84(); @@ -515,7 +515,7 @@ void func_800A26C0(void) { } } else { for (i = 0; i < gCamCount; i++) { - if (gPlayer[i].unk_224 != 0) { + if (gPlayer[i].timer_224 != 0) { Graphics_FillRectangle(&gMasterDisp, D_800D2874[i], D_800D2894[i], D_800D2884[i], D_800D28A4[i], D_80178348, D_80178350, D_80178354, D_80178340); diff --git a/src/main/fox_load.c b/src/main/fox_load.c index 8482224c..5d56a082 100644 --- a/src/main/fox_load.c +++ b/src/main/fox_load.c @@ -3,7 +3,7 @@ #define SEGMENT_SIZE(segment) ((ptrdiff_t) ((uintptr_t) (segment).end - (uintptr_t) (segment).start)) -u8 D_800CA3B0 = 3; +u8 sFillTimer = 3; #include "fox_load_inits.c" @@ -35,7 +35,7 @@ void Overlay_LoadSegment(void* vRomAddress, void* dest, ptrdiff_t size) { Lib_DmaRead(gDmaTable[i].pRom.start, dest, size); } else { Lib_FillScreen(true); - D_800CA3B0 = 3; + sFillTimer = 3; D_80161A39 = true; Lib_DmaRead(gDmaTable[i].pRom.start, gFrameBuffers, SEGMENT_SIZE(gDmaTable[i].pRom)); Mio0_Decompress(gFrameBuffers, dest); @@ -85,8 +85,8 @@ u8 Overlay_Init(OverlayInit* ovlInit) { } } - if (D_800CA3B0 != 0) { - D_800CA3B0--; + if (sFillTimer != 0) { + sFillTimer--; } else if (gStartNMI == 0) { Lib_FillScreen(false); } @@ -148,7 +148,7 @@ u8 Overlay_Load(u8 ovlSetup, u8 ovlStage) { case OVL_SETUP_ZONESS: changeOvl = Overlay_Init(&sOvlE16C50_Zoness[ovlStage]); break; - case OVL_SETUP_VENOM_2: + case OVL_SETUP_VENOM_ANDROSS: changeOvl = Overlay_Init(&sOvlE9F1D0_Venom2[ovlStage]); break; case OVL_SETUP_TRAINING: @@ -157,7 +157,7 @@ u8 Overlay_Load(u8 ovlSetup, u8 ovlStage) { case OVL_SETUP_VENOM_1: changeOvl = Overlay_Init(&sOvlDF4260_Venom1[ovlStage]); break; - case OVL_SETUP_VENOM_SW: + case OVL_SETUP_VENOM_2: changeOvl = Overlay_Init(&sOvlE9F1D0_VenomSW[ovlStage]); break; case OVL_SETUP_20: diff --git a/src/main/fox_message.c b/src/main/fox_message.c index 4e8079e4..9168a04c 100644 --- a/src/main/fox_message.c +++ b/src/main/fox_message.c @@ -115,7 +115,6 @@ void Message_DisplayScrollingText(Gfx** gfxPtr, u16* msgPtr, s32 xPos, s32 yPos, s32 var_s2 = xPos; s32 var_s4 = yPos; s32 i; - // s32 var_v1; gDPSetTextureLUT((*gfxPtr)++, G_TT_RGBA16); gDPLoadTLUT((*gfxPtr)++, 64, 0x100, D_Tex_800DBA20); diff --git a/src/main/fox_play.c b/src/main/fox_play.c index be5b5fe1..448e63b0 100644 --- a/src/main/fox_play.c +++ b/src/main/fox_play.c @@ -3,7 +3,9 @@ extern UNK_TYPE D_800D2F50; // type unclear. unused? extern s32 D_800D2F54; // only gets set to 0. unused? extern f32 D_800D2F58; -extern f32 D_800D2F5C[3]; // holds float versions of gVolumeSettings. Unused? +extern f32 D_800D2F5C; // holds float versions of gVolumeSettings. Unused? +extern f32 D_800D2F60; +extern f32 D_800D2F64; extern u8 D_800D2F68; extern u8 D_800D2F6C[20]; extern Vec3f D_800D2F80; @@ -25,6 +27,8 @@ extern u8 D_800D317C; extern u8 D_800D3180[30]; extern s32 D_800D31A0[4]; +#define MEM_ARRAY_ALLOCATE(arr, count) ((arr) = Memory_Allocate((count) * sizeof(*(arr)))) + s32 Play_CheckMedalStatus(u16 hitCount) { if ((gTeamShields[2] > 0) && (gTeamShields[3] > 0) && (gTeamShields[1] > 0) && (gHitCount >= hitCount)) { return true; @@ -33,7 +37,7 @@ s32 Play_CheckMedalStatus(u16 hitCount) { } void func_800A3FB0(void) { - D_800D2F5C[2] = 0.0f; + D_800D2F64 = 0.0f; } s32 Play_GetMaxShields(void) { @@ -119,7 +123,7 @@ void func_800A3FEC(void) { } void func_800A4460(Player* player) { - if ((gCurrentLevel == LEVEL_VENOM_2) && (gObjects408[0].obj.status == 2) && (gObjects408[0].unk_04E == 17)) { + if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (gObjects408[0].obj.status == 2) && (gObjects408[0].unk_04E == 17)) { player->unk_060 = __sinf(player->unk_0F4 * 0.7f * M_DTOR) * 0.5f; player->unk_088 += 13.0f; player->unk_0F4 += 20.0f; @@ -130,7 +134,7 @@ void func_800A4460(Player* player) { player->unk_060 = __sinf(player->unk_0F4 * 0.7f * M_DTOR) * 0.5f; player->unk_088 += 10.0f; player->unk_0F4 += 8.0f; - if ((gLevelType == LEVELTYPE_GROUND) || ((player->unk_238 == 1) && (gAllRangeMode == 0))) { + if ((gLevelType == LEVELTYPE_PLANET) || ((player->unk_238 == 1) && (gLevelMode == LEVELMODE_ON_RAILS))) { player->unk_080 = -__sinf(player->unk_088 * M_DTOR) * 0.5f; if ((player->wings.rightState <= WINGSTATE_BROKEN) || (player->wings.leftState <= WINGSTATE_BROKEN)) { player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR) * 5.0f; @@ -145,29 +149,27 @@ void func_800A46A0(Player* player) { s32 var_v1; f32 sp40; - if ((player->unk_238 == 0) || (gAllRangeMode == 1)) { + if ((player->unk_238 == 0) || (gLevelMode == LEVELMODE_ALL_RANGE)) { if (player->wings.rightState <= WINGSTATE_BROKEN) { - if (!(gFrameCount & 1) && (D_80177D70[player->unk_1C4] != 0)) { - func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_2D4.x, - (Rand_ZeroOne() * 5.0f) + player->unk_2D4.y, player->unk_2D4.z, 1.0f); + if (!(gFrameCount & 1) && (D_80177D70[player->num] != 0)) { + func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->hit1.x, + (Rand_ZeroOne() * 5.0f) + player->hit1.y, player->hit1.z, 1.0f); } if (!(gFrameCount & 1) && (Rand_ZeroOne() < 0.5f) && (!gVersusMode)) { - func_8007C484(((Rand_ZeroOne() - 0.5f) * 5.0f) + player->unk_2D4.x, - (Rand_ZeroOne() * 5.0f) + player->unk_2D4.y, player->unk_2D4.z, player->unk_0C0.x, - player->unk_0C0.y, player->unk_0C0.z, (Rand_ZeroOne() * 0.02f) + 0.02f, - player->unk_1C4 + 1); + func_8007C484(((Rand_ZeroOne() - 0.5f) * 5.0f) + player->hit1.x, + (Rand_ZeroOne() * 5.0f) + player->hit1.y, player->hit1.z, player->vel.x, player->vel.y, + player->vel.z, (Rand_ZeroOne() * 0.02f) + 0.02f, player->num + 1); } } if (player->wings.leftState <= WINGSTATE_BROKEN) { - if (!(gFrameCount & 1) && (D_80177D88[player->unk_1C4] != 0)) { - func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_2C8.x, - (Rand_ZeroOne() * 5.0f) + player->unk_2C8.y, player->unk_2C8.z, 1.0f); + if (!(gFrameCount & 1) && (D_80177D88[player->num] != 0)) { + func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->hit2.x, + (Rand_ZeroOne() * 5.0f) + player->hit2.y, player->hit2.z, 1.0f); } if (!(gFrameCount & 1) && (Rand_ZeroOne() < 0.5f) && (!gVersusMode)) { - func_8007C484(((Rand_ZeroOne() - 0.5f) * 5.0f) + player->unk_2C8.x, - (Rand_ZeroOne() * 5.0f) + player->unk_2C8.y, player->unk_2C8.z, player->unk_0C0.x, - player->unk_0C0.y, player->unk_0C0.z, (Rand_ZeroOne() * 0.02f) + 0.02f, - player->unk_1C4 + 1); + func_8007C484(((Rand_ZeroOne() - 0.5f) * 5.0f) + player->hit2.x, + (Rand_ZeroOne() * 5.0f) + player->hit2.y, player->hit2.z, player->vel.x, player->vel.y, + player->vel.z, (Rand_ZeroOne() * 0.02f) + 0.02f, player->num + 1); } } } @@ -182,27 +184,27 @@ void func_800A46A0(Player* player) { if (player->shields > 0x30) { var_v1 = 0x3F; } - if ((player->unk_238 == 0) || (gAllRangeMode == 1)) { + if ((player->unk_238 == 0) || (gLevelMode == LEVELMODE_ALL_RANGE)) { sp40 = 0.0f; - if (player->unk_1CC == 1) { + if (player->form == FORM_LANDMASTER) { sp40 = 30.0f; } if (!(gFrameCount & var_v1)) { - func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_074, - (Rand_ZeroOne() * 10.0f) + (player->unk_078 + sp40), + func_8007D10C(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->pos.x, + (Rand_ZeroOne() * 10.0f) + (player->pos.y + sp40), ((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_138, 2.2f); } if (!((var_v1 >> 2) & gFrameCount) && (Rand_ZeroOne() < 0.5f)) { - func_8007C484(((Rand_ZeroOne() - 0.5f) * 30.0f) + player->unk_074, - (Rand_ZeroOne() * 10.0f) + (player->unk_078 + sp40), - ((Rand_ZeroOne() - 0.5f) * 30.0f) + player->unk_138, player->unk_0C0.x, player->unk_0C0.y, - player->unk_0C0.z, (Rand_ZeroOne() * 0.03f) + 0.04f, player->unk_1C4 + 1); - if (player->unk_224 == 0) { - player->unk_224 = 2; + func_8007C484(((Rand_ZeroOne() - 0.5f) * 30.0f) + player->pos.x, + (Rand_ZeroOne() * 10.0f) + (player->pos.y + sp40), + ((Rand_ZeroOne() - 0.5f) * 30.0f) + player->unk_138, player->vel.x, player->vel.y, + player->vel.z, (Rand_ZeroOne() * 0.03f) + 0.04f, player->num + 1); + if (player->timer_224 == 0) { + player->timer_224 = 2; } } - } else if (!((var_v1 >> 2) & gFrameCount) && (Rand_ZeroOne() < 0.5f) && (player->unk_224 == 0)) { - player->unk_224 = 2; + } else if (!((var_v1 >> 2) & gFrameCount) && (Rand_ZeroOne() < 0.5f) && (player->timer_224 == 0)) { + player->timer_224 = 2; } } } @@ -214,13 +216,13 @@ void func_800A4C40(Player* player) { Vec3f sp30; if (D_80161A88 == 2) { - Matrix_Translate(gCalcMatrix, player->unk_074, player->unk_078, player->unk_138, 0); + Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y, player->unk_138, 0); Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); Matrix_RotateZ(gCalcMatrix, -(player->unk_0F8 * M_DTOR), 1); Matrix_MultVec3f(gCalcMatrix, &sp54, &sp3C); Matrix_MultVec3f(gCalcMatrix, &sp48, &sp30); - if (player->unk_078 < (D_80177940 + 100.0f)) { + if (player->pos.y < (D_80177940 + 100.0f)) { if ((sp3C.y < D_80177940 + 80.0f) && !(gFrameCount & 1)) { if (D_80161A64) {} func_8007ACE0(sp3C.x, D_80177940, sp3C.z, 0.1f, 2.0f, player->unk_0E8 + player->unk_114 + 20.0f); @@ -232,7 +234,7 @@ void func_800A4C40(Player* player) { if ((sp30.y < D_80177940 + 80.0f) || (sp3C.y < D_80177940 + 80.0f)) { if (D_80161A64 == 0) { D_80161A64 = 1; - func_80019218(0x1100000B, &player->unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1100000B, &player->unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } else { D_80161A64 = 0; @@ -434,9 +436,9 @@ void func_800A5844(void) { gOverlayStage = 0; D_8015F924 = D_80177CA0 = 0; D_80177CB0 = 0.0f; - gSavedHitCount = D_80177A80 = D_80177838 = D_80177840 = D_8017829C = 0; + gSavedHitCount = D_80177A80 = D_80177838 = D_80177840 = gRadioState = 0; D_8017782C = 1; - if (((gCurrentLevel == LEVEL_VENOM_SW) && (D_80161A2E == 2)) || (gCurrentLevel == LEVEL_VENOM_2)) { + if (((gCurrentLevel == LEVEL_VENOM_2) && (D_80161A2E == 2)) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) { return; } for (i = 1; i < 4; i++) { @@ -469,7 +471,7 @@ void func_800A594C(void) { if (D_8017782C == 0) { if (gCurrentLevel == LEVEL_SOLAR) { func_8001D1C8(0xFF, 1); - func_80019218(0x4100C023, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4100C023, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_8001A55C(&gPlayer[0].unk_460, 0x3140807E); } } else if (gCurrentLevel == LEVEL_AQUAS) { @@ -499,14 +501,12 @@ void func_800A594C(void) { D_80161A3C = 45.0f; } -// #define ARRAY_ALLOCATE(arr, count) (arr) = Memory_Allocate((count) * sizeof(*array)) - void func_800A5D6C(void) { u32 i; - D_80178288 = Memory_Allocate(1000 * sizeof(f32)); - D_80178290 = Memory_Allocate(1000 * sizeof(f32)); - D_80178298 = Memory_Allocate(1000 * sizeof(u32)); + MEM_ARRAY_ALLOCATE(D_80178288, 1000); + MEM_ARRAY_ALLOCATE(D_80178290, 1000); + MEM_ARRAY_ALLOCATE(D_80178298, 1000); Rand_SetSeed(1, 29000, 9876); for (i = 0; i < 1000; i++) { D_80178288[i] = (Rand_ZeroOneSeeded() * 480.0f) - 80.0f; @@ -546,18 +546,18 @@ void func_800A5EBC(void) { void func_800A5FA0(Vec3f* arg0, u32 arg1, s32 arg2) { if (!gVersusMode) { - func_80019218(arg1, arg0, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg1, arg0, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(arg1, arg0, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg1, arg0, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } void func_800A6028(Vec3f* arg0, u32 arg1) { - func_80019218(arg1, arg0, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg1, arg0, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_800A6070(Vec3f* arg0, u32 arg1) { - func_80019218(arg1, arg0, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg1, arg0, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_800A60B8(UnkEntity1C* unkEnt1C) { @@ -655,11 +655,11 @@ void func_800A6590(void) { } } } - D_8017835C = 0x10; + D_8017835C = 16; Math_SmoothStepToF(&D_8017836C, 0.0f, 1.0f, 0.04f, 0.001f); - if (D_80161A60 != 0) { - D_80161A60--; - if (D_80161A60 & 2) { + if (D_Timer_80161A60 != 0) { + D_Timer_80161A60--; + if (D_Timer_80161A60 & 2) { D_80178348 = 255; D_80178350 = 255; D_80178354 = 255; @@ -702,28 +702,28 @@ void func_800A670C(Object_2F4* obj2F4, s32 arg1, f32 arg2, f32 arg3, f32 arg4) { if (arg1 == 0) { obj2F4->unk_0E8.x = -10.0f; } - obj2F4->unk_0BC = 15; + obj2F4->timer_0BC = 15; } else { - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { obj2F4->unk_0E8.y = (Rand_ZeroOne() * 7.0f) + 7.0f; obj2F4->unk_0E8.x = (Rand_ZeroOne() - 0.5f) * 10.0f; obj2F4->unk_0E8.z = (Rand_ZeroOne() * 5.0f) + 5.0f; - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { obj2F4->unk_0E8.z = (Rand_ZeroOne() - 0.5f) * 10.0f; } - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; } else { obj2F4->unk_0E8.x = (Rand_ZeroOne() - 0.5f) * 10.0f; obj2F4->unk_0E8.y = (Rand_ZeroOne() - 0.5f) * 10.0f; obj2F4->unk_0E8.z = (Rand_ZeroOne() - 0.5f) * 10.0f; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 25.0f) + 25; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 25.0f) + 25; obj2F4->unk_10C = 0.0f; } if (arg1 == 2) { - obj2F4->unk_110 = (Rand_ZeroOne() * 1.5f) + 0.75f; + obj2F4->scale = (Rand_ZeroOne() * 1.5f) + 0.75f; } else if (arg1 == 4) { - obj2F4->unk_110 = (Rand_ZeroOne() * 0.8f) + 0.3f; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 50.0f) + 70; + obj2F4->scale = (Rand_ZeroOne() * 0.8f) + 0.3f; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 50.0f) + 70; } obj2F4->obj.rot.x = Rand_ZeroOne() * 360.0f; } @@ -748,33 +748,33 @@ int func_800A6A74(void) { return gGoldRingCount[0] && gGoldRingCount[1] && gGoldRingCount[2] && gGoldRingCount[3]; } -void func_800A6AC0(Player* player, s32 side, s32 damage) { - if ((player->unk_1CC == 0) && (D_80177AB8[player->unk_1C4] < 1.0f)) { +void Player_DamageWings(Player* player, s32 side, s32 damage) { + if ((player->form == FORM_ARWING) && (D_80177AB8[player->num] < 1.0f)) { if (side == 1) { - D_80177D40[player->unk_1C4] = 30; + D_80177D40[player->num] = 30; if (player->wings.rightState == WINGSTATE_INTACT) { - gRightWingHealth[player->unk_1C4] -= damage; - if (gRightWingHealth[player->unk_1C4] <= 0) { - func_800A69F8(1, player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z); + gRightWingHealth[player->num] -= damage; + if (gRightWingHealth[player->num] <= 0) { + func_800A69F8(1, player->hit1.x, player->hit1.y, player->hit1.z); player->wings.rightState = WINGSTATE_BROKEN; - func_8007D0E0(player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z, 2.0f); - D_80177D70[player->unk_1C4] = 50; - func_800A5FA0(&player->unk_460, 0x0900A02C, player->unk_1C4); + func_8007D0E0(player->hit1.x, player->hit1.y, player->hit1.z, 2.0f); + D_80177D70[player->num] = 50; + func_800A5FA0(&player->unk_460, 0x0900A02C, player->num); if (D_8015F90C == 0) { D_8015F90C = 1000; } } } } else if (side == 2) { - D_80177D58[player->unk_1C4] = 30; + D_80177D58[player->num] = 30; if (player->wings.leftState == WINGSTATE_INTACT) { - gLeftWingHealth[player->unk_1C4] -= damage; - if (gLeftWingHealth[player->unk_1C4] <= 0) { - func_800A69F8(0, player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z); + gLeftWingHealth[player->num] -= damage; + if (gLeftWingHealth[player->num] <= 0) { + func_800A69F8(0, player->hit2.x, player->hit2.y, player->hit2.z); player->wings.leftState = WINGSTATE_BROKEN; - func_8007D0E0(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 2.0f); - D_80177D88[player->unk_1C4] = 50; - func_800A5FA0(&player->unk_460, 0x0900A02C, player->unk_1C4); + func_8007D0E0(player->hit2.x, player->hit2.y, player->hit2.z, 2.0f); + D_80177D88[player->num] = 50; + func_800A5FA0(&player->unk_460, 0x0900A02C, player->num); if (D_8015F90C == 0) { D_8015F90C = 1000; } @@ -784,13 +784,13 @@ void func_800A6AC0(Player* player, s32 side, s32 damage) { } } -void func_800A6CD0(Player* player, s32 arg1, s32 damage) { +void Player_ApplyDamage(Player* player, s32 direction, s32 damage) { Vec3f sp44; Vec3f sp38; f32 sp34 = 20.0f; player->unk_1A4 = damage; - player->unk_21C = arg1; + player->unk_21C = direction; if ((damage == 39) || (damage == 41) || (damage == 42) || (damage == 43)) { damage = 40; } @@ -800,37 +800,37 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { player->damage = damage; } if (player->damage != 0) { - player->unk_220 = 4; + player->timer_220 = 4; } player->unk_284 = 0; player->unk_1F4 = 20; if (player->unk_1A4 > 40) { sp34 = (player->unk_110 * 0.3f) + 20.0f; - player->unk_498 = 5; - } else if ((gCurrentLevel == LEVEL_VENOM_2) && (D_80178284 == 0)) { - player->unk_498 = 3; + player->timer_498 = 5; + } else if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_80178284 == 0)) { + player->timer_498 = 3; } else if ((gCurrentLevel == LEVEL_VENOM_1) || (gCurrentLevel == LEVEL_AQUAS)) { - player->unk_498 = 5; + player->timer_498 = 5; } else { - player->unk_498 = 20; + player->timer_498 = 20; } - if (D_80177AD0[player->unk_1C4] != 0) { - func_800A5FA0(&player->unk_460, 0x0903900E, player->unk_1C4); - D_80177AE8[player->unk_1C4] = 5; - D_80177AB8[player->unk_1C4] = 2.0f; + if (D_80177AD0[player->num] != 0) { + func_800A5FA0(&player->unk_460, 0x0903900E, player->num); + D_80177AE8[player->num] = 5; + D_80177AB8[player->num] = 2.0f; player->damage = 0; } else { if (player->shields != 0) { if (player->shields < 50) { - func_80019218(0x49008011, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49008011, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else if (player->shields < 100) { - func_80019218(0x49008010, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49008010, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } if (damage < 25) { - func_800A5FA0(&player->unk_460, 0x0903900E, player->unk_1C4); + func_800A5FA0(&player->unk_460, 0x0903900E, player->num); } else { - func_800A5FA0(&player->unk_460, 0x0903A00F, player->unk_1C4); + func_800A5FA0(&player->unk_460, 0x0903A00F, player->num); } } Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 0); @@ -838,7 +838,7 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { sp44.z = 0.0f; switch (player->unk_21C) { case 0: - player->unk_224 = 20; + player->timer_224 = 20; player->unk_0D8.x = 0.f; player->unk_0D8.y = 0.f; player->unk_0D8.z = 0.f; @@ -851,9 +851,8 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { player->unk_0D8.x = sp38.x; player->unk_0D8.y = sp38.y; player->unk_0D8.z = sp38.z; - func_800A668C(player->unk_2D4.x - player->unk_0C0.x, player->unk_2D4.y, - player->unk_2D4.z - player->unk_0C0.z); - func_800A6AC0(player, 1, 20); + func_800A668C(player->hit1.x - player->vel.x, player->hit1.y, player->hit1.z - player->vel.z); + Player_DamageWings(player, 1, 20); break; case 2: sp44.x = sp34; @@ -863,15 +862,13 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { player->unk_0D8.x = sp38.x; player->unk_0D8.y = sp38.y; player->unk_0D8.z = sp38.z; - func_800A668C(player->unk_2C8.x - player->unk_0C0.x, player->unk_2C8.y, - player->unk_2C8.z - player->unk_0C0.z); - func_800A6AC0(player, 2, 20); + func_800A668C(player->hit2.x - player->vel.x, player->hit2.y, player->hit2.z - player->vel.z); + Player_DamageWings(player, 2, 20); break; case 3: - player->unk_224 = 20; - func_800A668C(player->unk_2EC.x - player->unk_0C0.x, player->unk_2EC.y, - player->unk_2EC.z - player->unk_0C0.z); - if (player->unk_1CC != 1) { + player->timer_224 = 20; + func_800A668C(player->hit3.x - player->vel.x, player->hit3.y, player->hit3.z - player->vel.z); + if (player->form != FORM_LANDMASTER) { sp44.x = 0.0f; sp44.y = -sp34; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); @@ -880,15 +877,14 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { player->unk_0D8.z = sp38.z; } if (Rand_ZeroOne() < 0.5f) { - func_800A6AC0(player, 1, 15); + Player_DamageWings(player, 1, 15); } else { - func_800A6AC0(player, 2, 15); + Player_DamageWings(player, 2, 15); } break; case 4: - player->unk_224 = 20; - func_800A668C(player->unk_2E0.x - player->unk_0C0.x, player->unk_2E0.y, - player->unk_2E0.z - player->unk_0C0.z); + player->timer_224 = 20; + func_800A668C(player->hit4.x - player->vel.x, player->hit4.y, player->hit4.z - player->vel.z); sp44.x = 0.0f; sp44.y = sp34; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); @@ -896,19 +892,19 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { player->unk_0D8.y = sp38.y; player->unk_0D8.z = sp38.z; if (Rand_ZeroOne() < 0.5f) { - func_800A6AC0(player, 1, 15); + Player_DamageWings(player, 1, 15); } else { - func_800A6AC0(player, 2, 15); + Player_DamageWings(player, 2, 15); } break; } if ((gCurrentLevel == LEVEL_VENOM_1) && (player->unk_1A4 == 42)) { - if (player->unk_074 > 0.0f) { + if (player->pos.x > 0.0f) { player->unk_0D8.x = -30.0f; } else { player->unk_0D8.x = 30.0f; } - player->unk_498 = 10; + player->timer_498 = 10; } } @@ -917,23 +913,23 @@ void func_800A729C(Player* player, u32 arg1, f32 arg2, f32 arg3) { switch (arg1) { case 1: case 2: - player->unk_074 = player->unk_08C.y; + player->pos.x = player->unk_090.x; player->unk_0D8.x = 0.0f; - player->unk_074 += D_800D2FEC[player->unk_21C]; - if (player->unk_1CC == 1) { - player->unk_074 -= D_800D2FEC[player->unk_21C]; + player->pos.x += D_800D2FEC[player->unk_21C]; + if (player->form == FORM_LANDMASTER) { + player->pos.x -= D_800D2FEC[player->unk_21C]; } Math_SmoothStepToF(&player->unk_0D0, 2.0f, 1.0f, 2.0f, 0.00001f); break; case 3: case 4: - player->unk_07C = player->unk_098; + player->pos.z = player->unk_090.z; player->unk_0D8.z = 0.0f; - player->unk_07C += D_800D2FEC[player->unk_21C]; - if (player->unk_1CC == 1) { - player->unk_07C += D_800D2FEC[player->unk_21C]; + player->pos.z += D_800D2FEC[player->unk_21C]; + if (player->form == FORM_LANDMASTER) { + player->pos.z += D_800D2FEC[player->unk_21C]; } - player->unk_138 = player->unk_07C; + player->unk_138 = player->pos.z; Math_SmoothStepToF(&player->unk_0D0, 2.0f, 1.0f, 2.0f, 0.00001f); break; case 0: @@ -1057,7 +1053,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo hitboxData++; for (i = 0; i < count; i++, hitboxData += 6) { spA0 = 0; - if (*hitboxData == 200000.0f) { + if (*hitboxData == HITBOX_UNK_2) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -1067,7 +1063,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo hitboxData += 4; spA0 = 1; } else { - if (*hitboxData >= 300000.0f) { + if (*hitboxData >= HITBOX_UNK_3) { hitboxData++; } Matrix_RotateZ(gCalcMatrix, -zRot * M_DTOR, 0); @@ -1080,13 +1076,13 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo Matrix_RotateY(gCalcMatrix, -argA * M_DTOR, 1); } if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { - var_fv0 = player->unk_2E0.x; - var_fv1 = player->unk_2E0.y; - var_fa0 = player->unk_2E0.z; + var_fv0 = player->hit4.x; + var_fv1 = player->hit4.y; + var_fa0 = player->hit4.z; } else { - sp94.x = player->unk_2E0.x - xPos; - sp94.y = player->unk_2E0.y - yPos; - sp94.z = player->unk_2E0.z - zPos; + sp94.x = player->hit4.x - xPos; + sp94.y = player->hit4.y - yPos; + sp94.z = player->hit4.z - zPos; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp94, &sp88); var_fv0 = sp88.x + xPos; var_fv1 = sp88.y + yPos; @@ -1094,23 +1090,23 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo } if (func_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; - if (hitboxData[-1] == 300000.0f) { + if (hitboxData[-1] == HITBOX_UNK_3) { return -1; } - if (hitboxData[-1] == 400000.0f) { + if (hitboxData[-1] == HITBOX_UNK_4) { return -2; } return 3; } - if (hitboxData[-1] < 300000.0f) { + if (hitboxData[-1] < HITBOX_UNK_3) { if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { - var_fv0 = player->unk_2EC.x; - var_fv1 = player->unk_2EC.y; - var_fa0 = player->unk_2EC.z; + var_fv0 = player->hit3.x; + var_fv1 = player->hit3.y; + var_fa0 = player->hit3.z; } else { - sp94.x = player->unk_2EC.x - xPos; - sp94.y = player->unk_2EC.y - yPos; - sp94.z = player->unk_2EC.z - zPos; + sp94.x = player->hit3.x - xPos; + sp94.y = player->hit3.y - yPos; + sp94.z = player->hit3.z - zPos; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp94, &sp88); var_fv0 = sp88.x + xPos; var_fv1 = sp88.y + yPos; @@ -1121,13 +1117,13 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo return 4; } if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { - var_fv0 = player->unk_2D4.x; - var_fv1 = player->unk_2D4.y; - var_fa0 = player->unk_2D4.z; + var_fv0 = player->hit1.x; + var_fv1 = player->hit1.y; + var_fa0 = player->hit1.z; } else { - sp94.x = player->unk_2D4.x - xPos; - sp94.y = player->unk_2D4.y - yPos; - sp94.z = player->unk_2D4.z - zPos; + sp94.x = player->hit1.x - xPos; + sp94.y = player->hit1.y - yPos; + sp94.z = player->hit1.z - zPos; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp94, &sp88); var_fv0 = sp88.x + xPos; var_fv1 = sp88.y + yPos; @@ -1138,13 +1134,13 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo return 1; } if ((yRot == 0.0f) && (zRot == 0.0f) && (xRot == 0.0f) && (spA0 == 0)) { - var_fv0 = player->unk_2C8.x; - var_fv1 = player->unk_2C8.y; - var_fa0 = player->unk_2C8.z; + var_fv0 = player->hit2.x; + var_fv1 = player->hit2.y; + var_fa0 = player->hit2.z; } else { - sp94.x = player->unk_2C8.x - xPos; - sp94.y = player->unk_2C8.y - yPos; - sp94.z = player->unk_2C8.z - zPos; + sp94.x = player->hit2.x - xPos; + sp94.y = player->hit2.y - yPos; + sp94.z = player->hit2.z - zPos; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp94, &sp88); var_fv0 = sp88.x + xPos; var_fv1 = sp88.y + yPos; @@ -1357,53 +1353,53 @@ s32 func_800A8304(Player* player, s32 objId, f32 arg2, f32 arg3, f32 arg4, f32 a sp84.y = arg3; sp84.z = arg4; Matrix_RotateY(gCalcMatrix, -arg6 * M_DTOR, 0); - sp78.x = player->unk_0C0.x; - sp78.y = player->unk_0C0.y; - sp78.z = player->unk_0C0.z; + sp78.x = player->vel.x; + sp78.y = player->vel.y; + sp78.z = player->vel.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp54); - if ((player->unk_1CC == 1) || (player->unk_1CC == 3)) { - sp78.x = player->unk_074 - sp84.x; - sp78.y = player->unk_078 - sp84.y; + if ((player->form == FORM_LANDMASTER) || (player->form == FORM_ON_FOOT)) { + sp78.x = player->pos.x - sp84.x; + sp78.y = player->pos.y - sp84.y; sp78.z = player->unk_138 - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); if (func_800A8054(objId, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { - player->unk_078 = sp60.y; + player->pos.y = sp60.y; player->unk_104 = Math_RadToDeg(sp60.x); player->unk_10C = Math_RadToDeg(sp60.z); - player->unk_0C0.y = 0.0f; - if (player->unk_1CC == 3) { - player->unk_0C0.y = -5.0f; + player->vel.y = 0.0f; + if (player->form == FORM_ON_FOOT) { + player->vel.y = -5.0f; } player->unk_1D4 = 1; return 5; } return 0; } - sp78.x = player->unk_2E0.x - sp84.x; - sp78.y = player->unk_2E0.y - sp84.y; - sp78.z = player->unk_2E0.z - sp84.z; + sp78.x = player->hit4.x - sp84.x; + sp78.y = player->hit4.y - sp84.y; + sp78.z = player->hit4.z - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); if (func_800A8054(objId, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { return 3; } - sp78.x = player->unk_2EC.x - sp84.x; - sp78.y = player->unk_2EC.y - sp84.y; - sp78.z = player->unk_2EC.z - sp84.z; + sp78.x = player->hit3.x - sp84.x; + sp78.y = player->hit3.y - sp84.y; + sp78.z = player->hit3.z - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); if (func_800A8054(objId, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { return 4; } - sp78.x = player->unk_2D4.x - sp84.x; - sp78.y = player->unk_2D4.y - sp84.y; - sp78.z = player->unk_2D4.z - sp84.z; + sp78.x = player->hit1.x - sp84.x; + sp78.y = player->hit1.y - sp84.y; + sp78.z = player->hit1.z - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); if (func_800A8054(objId, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { return 1; } - sp78.x = player->unk_2C8.x - sp84.x; - sp78.y = player->unk_2C8.y - sp84.y; - sp78.z = player->unk_2C8.z - sp84.z; + sp78.x = player->hit2.x - sp84.x; + sp78.y = player->hit2.y - sp84.y; + sp78.z = player->hit2.z - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); if (func_800A8054(objId, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { return 2; @@ -1417,57 +1413,59 @@ void func_800A86E4(Player* player) { s32 sp6C; for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) { - if ((item->obj.status == 2) && ((player->unk_1C8 == 3) || (player->unk_1C8 == 5)) && (item->unk_4A == 0) && + if ((item->obj.status == 2) && + ((player->state_1C8 == PLAYERSTATE_1C8_3) || (player->state_1C8 == PLAYERSTATE_1C8_5)) && + (item->timer_4A == 0) && func_800A7974(player, item->info.hitbox, &sp6C, item->obj.pos.x, item->obj.pos.y, item->obj.pos.z, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)) { item->unk_4C = 1; - item->unk_4E = D_801778A0; + item->unk_4E = gPlayerNum; } } } void func_800A8804(Player* playerA, Player* playerB) { - if (playerA->unk_498 == 0) { - func_800A6CD0(playerA, 0, D_800D3000[playerA->unk_1CC][playerB->unk_1CC]); - playerA->unk_288 = playerB->unk_1C4 + 1; - playerB->unk_288 = playerA->unk_1C4 + 1; + if (playerA->timer_498 == 0) { + Player_ApplyDamage(playerA, 0, D_800D3000[playerA->form][playerB->form]); + playerA->unk_288 = playerB->num + 1; + playerB->unk_288 = playerA->num + 1; } } void func_800A887C(Player* player) { Vec3f sp3C; - Matrix_Translate(gCalcMatrix, player->unk_074, player->unk_078, player->unk_138, 0); - if (player->unk_1CC == 1) { + Matrix_Translate(gCalcMatrix, player->pos.x, player->pos.y, player->unk_138, 0); + if (player->form == FORM_LANDMASTER) { player->unk_10C = 0.0f; player->unk_104 = 0.0f; sp3C.x = -40.0f; sp3C.y = 40.0f; sp3C.z = 0.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2C8); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit2); sp3C.x = 40.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2D4); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit1); sp3C.x = 0.0f; sp3C.z = -40.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2E0); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit4); sp3C.z = 40.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2EC); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit3); } - if ((player->unk_1CC == 3) || (player->unk_1CC == 4)) { + if ((player->form == FORM_ON_FOOT) || (player->form == FORM_UNK_4)) { sp3C.x = 20.0f; sp3C.y = 20.0f; sp3C.z = 0.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2C8); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit2); sp3C.x = -20.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2D4); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit1); sp3C.x = 0.0f; sp3C.z = -20.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2E0); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit4); sp3C.z = 20.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2EC); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit3); } - if ((player->unk_1CC == 0) || (player->unk_1CC == 2)) { + if ((player->form == FORM_ARWING) || (player->form == FORM_BLUE_MARINE)) { Matrix_RotateY(gCalcMatrix, (player->unk_114 + 180.0f) * M_DTOR, 1); Matrix_RotateZ(gCalcMatrix, -(player->unk_0F8 * M_DTOR), 1); sp3C.y = 0.0f; @@ -1478,28 +1476,29 @@ void func_800A887C(Player* player) { sp3C.y = -10.0f; sp3C.x = 30.0f; } - if (player->unk_1CC == 2) { + if (player->form == FORM_BLUE_MARINE) { sp3C.x = 24.0f; } - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2C8); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit2); + if (player->wings.rightState == WINGSTATE_INTACT) { sp3C.x = -40.0f; } else { sp3C.x = -30.0f; } - if (player->unk_1CC == 2) { + if (player->form == FORM_BLUE_MARINE) { sp3C.x = -24.0f; } - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2D4); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit1); + sp3C.x = 0.0f; sp3C.y = 24.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2E0); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit4); sp3C.y = -24.0f; - Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2EC); + Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->hit3); } } -#ifdef NON_MATCHING void func_800A8BA4(Player* player) { s32 i; s32 j; @@ -1515,7 +1514,7 @@ void func_800A8BA4(Player* player) { f32 padB0; // B0 Object_408* obj408; // AC Object_4C* obj4C; // A8 - Object_58* obj58; // A4 + s32 pad; // A4 Object_80* obj80; // A0 Player* opponent; // 9C s32 sp98; @@ -1525,58 +1524,60 @@ void func_800A8BA4(Player* player) { func_800A887C(player); if (D_801784AC == 4) { - switch (player->unk_1CC) { - case 1: + switch (player->form) { + case FORM_LANDMASTER: func_800444BC(player); break; - case 2: - if (func_E6A810_801B6AEC(player->unk_074, player->unk_078 - 12.0f, player->unk_138 + player->unk_144) != + case FORM_BLUE_MARINE: + if (func_E6A810_801B6AEC(player->pos.x, player->pos.y - 12.0f, player->unk_138 + player->unk_144) != 0) { - func_E6A810_801B6E20(player->unk_074, player->unk_138 + player->unk_144, &spE8, &spE0, &spE4); - player->unk_078 = spE0 + 10.0f; + func_E6A810_801B6E20(player->pos.x, player->unk_138 + player->unk_144, &spE8, &spE0, &spE4); + player->pos.y = spE0 + 10.0f; } break; } - } else if (player->unk_1CC == 0) { - if ((player->unk_2D4.y < (D_80177940 + 13.0f)) && (player->unk_1C8 != 4)) { + } else if (player->form == FORM_ARWING) { + if ((player->hit1.y < (D_80177940 + 13.0f)) && (player->state_1C8 != PLAYERSTATE_1C8_4)) { if (D_80161A88 == 2) { player->unk_1F4 = 7; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f; } else { - func_800A6CD0(player, 1, 21); + Player_ApplyDamage(player, 1, 21); } if (gCurrentLevel == LEVEL_FORTUNA) { - func_8007BC7C(player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z, 6.0f); - func_8007BC7C(player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z, 6.0f); - func_8007BC7C(player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z, 6.0f); + func_8007BC7C(player->hit1.x, player->hit1.y, player->hit1.z, 6.0f); + func_8007BC7C(player->hit1.x, player->hit1.y, player->hit1.z, 6.0f); + func_8007BC7C(player->hit1.x, player->hit1.y, player->hit1.z, 6.0f); } } - if ((player->unk_2C8.y < (D_80177940 + 13.0f)) && (player->unk_1C8 != 4)) { + if ((player->hit2.y < (D_80177940 + 13.0f)) && (player->state_1C8 != PLAYERSTATE_1C8_4)) { if (D_80161A88 == 2) { player->unk_1F4 = 7; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f; } else { - func_800A6CD0(player, 2, 21); + Player_ApplyDamage(player, 2, 21); } if (gCurrentLevel == LEVEL_FORTUNA) { - func_8007BC7C(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 6.0f); - func_8007BC7C(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 6.0f); - func_8007BC7C(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 6.0f); + func_8007BC7C(player->hit2.x, player->hit2.y, player->hit2.z, 6.0f); + func_8007BC7C(player->hit2.x, player->hit2.y, player->hit2.z, 6.0f); + func_8007BC7C(player->hit2.x, player->hit2.y, player->hit2.z, 6.0f); } } - } else if ((player->unk_1CC == 1) && (!gVersusMode)) { + } else if ((player->form == FORM_LANDMASTER) && (!gVersusMode)) { func_800444BC(player); } - if ((player->unk_498 == 0) || ((gCamCount != 1) && (player->unk_1CC != 0))) { - if (gAllRangeMode == 1) { + if ((player->timer_498 == 0) || ((gCamCount != 1) && (player->form != FORM_ARWING))) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { + Object_58* obj58; + sp8C = 1100.0f; - if ((gCurrentLevel == LEVEL_SECTOR_Y) || (gCurrentLevel == LEVEL_VENOM_2)) { + if ((gCurrentLevel == LEVEL_SECTOR_Y) || (gCurrentLevel == LEVEL_VENOM_ANDROSS)) { sp8C = 4000.0f; } for (i = 0, obj58 = gObjects58; i < 200; i++, obj58++) { if (obj58->obj.status == 2) { - spC8.x = obj58->obj.pos.x - player->unk_074; + spC8.x = obj58->obj.pos.x - player->pos.x; spC8.z = obj58->obj.pos.z - player->unk_138; if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < sp8C) { if ((obj58->obj.id == OBJ_80_117) || (obj58->obj.id == OBJ_80_143) || @@ -1588,13 +1589,13 @@ void func_800A8BA4(Player* player) { func_800A8304(player, obj58->obj.id, obj58->obj.pos.x, obj58->obj.pos.y, obj58->obj.pos.z, obj58->obj.rot.x, obj58->obj.rot.y, obj58->obj.rot.z); if (temp_v0 != 0) { - if ((player->unk_1CC == 1) || (player->unk_1CC == 3)) { + if ((player->form == FORM_LANDMASTER) || (player->form == FORM_ON_FOOT)) { func_800A729C(player, temp_v0, obj58->obj.pos.x, obj58->obj.pos.z); } else { - func_800A6CD0(player, temp_v0, obj58->info.damage); + Player_ApplyDamage(player, temp_v0, obj58->info.damage); } } - if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_SW)) { + if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_2)) { temp_v0 = func_800A7974(player, obj58->info.hitbox, &sp98, obj58->obj.pos.x, obj58->obj.pos.y, obj58->obj.pos.z, obj58->obj.rot.x, obj58->obj.rot.y, obj58->obj.rot.z, 0.0f, 0.0f, 0.0f); @@ -1621,10 +1622,10 @@ void func_800A8BA4(Player* player) { if (player->unk_22C >= 4) { player->unk_22C = 4; } - } else if ((player->unk_1CC == 1) || (player->unk_1CC == 3)) { + } else if ((player->form == FORM_LANDMASTER) || (player->form == FORM_ON_FOOT)) { func_800A729C(player, temp_v0, obj58->obj.pos.x, obj58->obj.pos.z); } else { - func_800A6CD0(player, temp_v0, obj58->info.damage); + Player_ApplyDamage(player, temp_v0, obj58->info.damage); if (obj58->obj.id == OBJ_80_131) { Matrix_RotateY(gCalcMatrix, (obj58->obj.rot.y + 180.0f) * M_DTOR, 0); Matrix_MultVec3f(gCalcMatrix, &D_800D3040[sp98 - 1], &spBC); @@ -1633,11 +1634,11 @@ void func_800A8BA4(Player* player) { player->unk_0D8.z = spBC.z; player->unk_0E8 = player->unk_0E4 = 0.0f; - player->unk_074 = player->unk_08C.y; - player->unk_078 = player->unk_08C.z; - player->unk_07C = player->unk_098; + player->pos.x = player->unk_090.x; + player->pos.y = player->unk_090.y; + player->pos.z = player->unk_090.z; player->unk_114 = obj58->obj.rot.y + 180.0f; - player->unk_498 = 5; + player->timer_498 = 5; } if ((obj58->obj.id == OBJ_80_135) || (obj58->obj.id == OBJ_80_136)) { if (obj58->obj.id == OBJ_80_135) { @@ -1652,15 +1653,15 @@ void func_800A8BA4(Player* player) { player->unk_0D8.z = spBC.z; player->unk_0E8 = 0.0f; player->unk_0E4 = 0.0f; - player->unk_074 = player->unk_08C.y; - player->unk_078 = player->unk_08C.z; - player->unk_07C = player->unk_098; + player->pos.x = player->unk_090.x; + player->pos.y = player->unk_090.y; + player->pos.z = player->unk_090.z; if (obj58->obj.id == OBJ_80_135) { player->unk_114 = obj58->obj.rot.y + 180.0f; } else { player->unk_114 = obj58->obj.rot.y; } - player->unk_498 = 5; + player->timer_498 = 5; } } } @@ -1670,29 +1671,29 @@ void func_800A8BA4(Player* player) { } } else { for (i = 0, obj80 = gObjects80; i < ARRAY_COUNT(gObjects80); i++, obj80++) { - if ((obj80->obj.status == 2) && (obj80->obj.id != 0x3A) && (obj80->obj.id != 0x69) && - (obj80->obj.id != 0x3B) && (obj80->obj.id != 0x3C) && (obj80->obj.id != 0x3D) && - (obj80->obj.id != 0x42) && (obj80->obj.id != 0x43) && (obj80->obj.id != 0x46) && - (obj80->obj.id != 0x48) && (obj80->obj.id != 0x47) && (obj80->obj.id != 0x49) && - (obj80->obj.id != 0x4A) && (obj80->obj.id != 0x45) && + if ((obj80->obj.status == 2) && (obj80->obj.id != OBJ_80_58) && (obj80->obj.id != OBJ_80_105) && + (obj80->obj.id != OBJ_80_59) && (obj80->obj.id != OBJ_80_60) && (obj80->obj.id != OBJ_80_61) && + (obj80->obj.id != OBJ_80_66) && (obj80->obj.id != OBJ_80_67) && (obj80->obj.id != OBJ_80_70) && + (obj80->obj.id != OBJ_80_72) && (obj80->obj.id != OBJ_80_71) && (obj80->obj.id != OBJ_80_73) && + (obj80->obj.id != OBJ_80_74) && (obj80->obj.id != OBJ_80_69) && ((player->unk_138 - 2000.0f) < obj80->obj.pos.z)) { if ((obj80->obj.id == OBJ_80_1) || (obj80->obj.id == OBJ_80_4) || (obj80->obj.id == OBJ_80_5) || (obj80->obj.id == OBJ_80_47) || (obj80->obj.id == OBJ_80_117) || (obj80->obj.id == OBJ_80_120) || (obj80->obj.id == OBJ_80_124) || (obj80->obj.id == OBJ_80_126) || (obj80->obj.id == OBJ_80_2) || (obj80->obj.id == OBJ_80_3)) { - spC8.x = obj80->obj.pos.x - player->unk_074; + spC8.x = obj80->obj.pos.x - player->pos.x; spC8.z = obj80->obj.pos.z - player->unk_138; - if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < 100.0f) { + if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < 1100.0f) { temp_v0 = func_800A8304(player, obj80->obj.id, obj80->obj.pos.x, obj80->obj.pos.y, obj80->obj.pos.z, obj80->obj.rot.x, obj80->obj.rot.y, obj80->obj.rot.z); if (temp_v0 != 0) { - func_800A6CD0(player, temp_v0, obj80->info.damage); + Player_ApplyDamage(player, temp_v0, obj80->info.damage); } } } else { padB0 = obj80->obj.rot.y; - if ((ObjectFunc) func_80066EA8 == obj80->info.action) { + if (obj80->info.action == (ObjectFunc) func_80066EA8) { padB0 = 0.0f; } temp_v0 = func_800A7974(player, obj80->info.hitbox, &sp98, obj80->obj.pos.x, obj80->obj.pos.y, @@ -1708,7 +1709,7 @@ void func_800A8BA4(Player* player) { player->unk_23C = 0x50; } if (player->unk_22C == 0) { - func_80019218(0x19000001, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19000001, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } player->unk_22C += 2; if (player->unk_22C >= 4) { @@ -1716,14 +1717,14 @@ void func_800A8BA4(Player* player) { } } else if (obj80->obj.id == OBJ_80_54) { if (player->unk_22C == 0) { - func_80019218(0x19832019, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19832019, &obj80->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } player->unk_22C += 2; if (player->unk_22C >= 4) { player->unk_22C = 4; } } else { - func_800A6CD0(player, temp_v0, obj80->info.damage); + Player_ApplyDamage(player, temp_v0, obj80->info.damage); if ((obj80->obj.id == OBJ_80_48) || (obj80->obj.id == OBJ_80_55) || (obj80->obj.id == OBJ_80_49)) { Matrix_RotateY(gCalcMatrix, obj80->obj.rot.y * M_DTOR, 0); @@ -1734,10 +1735,10 @@ void func_800A8BA4(Player* player) { Matrix_MultVec3f(gCalcMatrix, &spC8, &spBC); player->unk_0D8.x = spBC.x; player->unk_0D8.y = spBC.y; - player->unk_074 = player->unk_08C.y; - player->unk_498 = 5; + player->pos.x = player->unk_090.x; + player->timer_498 = 5; } else if (obj80->obj.id == OBJ_80_50) { - if (player->unk_074 < obj80->obj.pos.x) { + if (player->pos.x < obj80->obj.pos.x) { player->unk_0D8.x = -30.0f; player->unk_0E8 = 45.0f; } else { @@ -1745,8 +1746,8 @@ void func_800A8BA4(Player* player) { player->unk_0E8 = -45.0f; } player->unk_0D8.y = 0.0f; - player->unk_074 = player->unk_08C.y; - player->unk_498 = 5; + player->pos.x = player->unk_090.x; + player->timer_498 = 5; } else if (obj80->obj.id == OBJ_80_131) { Matrix_RotateY(gCalcMatrix, (obj80->obj.rot.y + 180.0f) * M_DTOR, 0); Matrix_RotateZ(gCalcMatrix, -obj80->obj.rot.z * M_DTOR, 1); @@ -1755,9 +1756,9 @@ void func_800A8BA4(Player* player) { player->unk_0D8.y = spBC.y; player->unk_0E8 = 0.0f; player->unk_0E4 = 0.0f; - player->unk_498 = 5; - player->unk_074 = player->unk_08C.y; - player->unk_078 = player->unk_08C.z; + player->timer_498 = 5; + player->pos.x = player->unk_090.x; + player->pos.y = player->unk_090.y; } } } @@ -1772,37 +1773,39 @@ void func_800A8BA4(Player* player) { temp_v0 = func_800A8304(player, obj408->obj.id, obj408->obj.pos.x, obj408->obj.pos.y, obj408->obj.pos.z, obj408->obj.rot.x, obj408->obj.rot.y, obj408->obj.rot.z); if (temp_v0 != 0) { - func_800A6CD0(player, temp_v0, obj408->info.damage); + Player_ApplyDamage(player, temp_v0, obj408->info.damage); break; } - } else if (obj408->obj.id == OBJ_408_310) { - spfD4.x = fabsf(obj408->obj.pos.x - player->unk_074) * (5.0f / 6.0f); - spfD4.y = fabsf(obj408->obj.pos.y - player->unk_078) * 2.0f; - spfD4.z = fabsf(obj408->obj.pos.z - player->unk_138) * (5.0f / 6.0f); + } + if (obj408->obj.id == OBJ_408_310) { + spfD4.x = fabsf(obj408->obj.pos.x - player->pos.x) * .8333333f; + spfD4.y = fabsf(obj408->obj.pos.y - player->pos.y) * 2; + spfD4.z = fabsf(obj408->obj.pos.z - player->unk_138) * 0.8333333f; if (sqrtf(VEC3F_SQ(spfD4)) < 1500.0f) { - func_800A6CD0(player, 0, obj408->info.damage); + Player_ApplyDamage(player, 0, obj408->info.damage); player->unk_110 = 0.0f; - player->unk_498 = 5; + player->timer_498 = 5; player->unk_0D8.y = 30.0f; obj408->unk_062 = 1; - func_8007BFFC(((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_074, - (Rand_ZeroOne() * 10.0f) + player->unk_078, - ((Rand_ZeroOne() - 0.5f) * 10.0f) + player->unk_138, 0.0f, 15.0f, 0.0f, 2.0f, 5); + func_8007BFFC(player->pos.x + (10.0f * (Rand_ZeroOne() - 0.5f)), + player->pos.y + (10.0f * Rand_ZeroOne()), + player->unk_138 + (10.0f * (Rand_ZeroOne() - 0.5f)), 0.0f, 15.0f, 0.0f, 2.0f, 5); for (j = 0; j < 10; j++) { - func_8007C484(((Rand_ZeroOne() - 0.5f) * 30.0f) + player->unk_074, - (Rand_ZeroOne() * 10.0f) + player->unk_078, - ((Rand_ZeroOne() - 0.5f) * 30.0f) + player->unk_138, player->unk_0C0.x, - player->unk_0C0.y + 20.0f, player->unk_0C0.z, (Rand_ZeroOne() * 0.1f) + 0.1f, - player->unk_1C4 + 11); + func_8007C484(player->pos.x + (30.0f * (Rand_ZeroOne() - 0.5f)), + player->pos.y + (10.0f * Rand_ZeroOne()), + player->unk_138 + (30.0f * (Rand_ZeroOne() - 0.5f)), player->vel.x, + 20.0f + player->vel.y, player->vel.z, (Rand_ZeroOne() * 0.1f) + 0.1f, + player->num + 11); } + break; } } else { if (obj408->obj.id == OBJ_408_316) { - spfD4.x = fabsf(obj408->obj.pos.x - player->unk_074); - spfD4.y = fabsf((obj408->obj.pos.y - 300.0f) - player->unk_078) * 7.42f; + spfD4.x = fabsf(obj408->obj.pos.x - player->pos.x); + spfD4.y = fabsf(obj408->obj.pos.y - 300.0f - player->pos.y) * 7.42f; spfD4.z = fabsf(obj408->obj.pos.z - player->unk_138); if (sqrtf(VEC3F_SQ(spfD4)) < 2700.0f) { - func_800A6CD0(player, 3, obj408->info.damage); + Player_ApplyDamage(player, 3, obj408->info.damage); } } temp_v0 = func_800A7974(player, obj408->info.hitbox, &sp98, obj408->obj.pos.x, obj408->obj.pos.y, @@ -1811,17 +1814,17 @@ void func_800A8BA4(Player* player) { if (temp_v0 != 0) { if (temp_v0 < 0) { if (player->unk_22C == 0) { - func_80019218(0x19000001, &obj408->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19000001, &obj408->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } player->unk_22C += 2; if (player->unk_22C >= 4) { player->unk_22C = 4; } } else { - if ((obj408->obj.id == OBJ_408_320) && (obj408->unk_056 != 0) && (sp98 == 5)) { + if ((obj408->obj.id == OBJ_408_320) && (obj408->timer_056 != 0) && (sp98 == 5)) { break; } - func_800A6CD0(player, obj408->obj.id, obj408->info.damage); + Player_ApplyDamage(player, temp_v0, obj408->info.damage); if ((obj408->obj.id == OBJ_408_303) && ((obj408->unk_04E == 2) || (obj408->unk_04E == 3)) && (sp98 >= 9)) { player->unk_0D8.y = -100.0f; @@ -1836,12 +1839,12 @@ void func_800A8BA4(Player* player) { } } for (i = 0, obj2F4 = gObjects2F4; i < ARRAY_COUNT(gObjects2F4); i++, obj2F4++) { - if ((obj2F4->obj.status == 2) && (obj2F4->unk_0C2 == 0)) { + if ((obj2F4->obj.status == 2) && (obj2F4->timer_0C2 == 0)) { if (obj2F4->obj.id == OBJ_2F4_180) { temp_v0 = func_800A8304(player, obj2F4->obj.id, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z); if (temp_v0 != 0) { - func_800A6CD0(player, temp_v0, obj2F4->info.damage); + Player_ApplyDamage(player, temp_v0, obj2F4->info.damage); } } else if (obj2F4->obj.id == OBJ_2F4_200) { if (obj2F4->unk_0B4 == 42) { @@ -1849,14 +1852,14 @@ void func_800A8BA4(Player* player) { func_800A8304(player, OBJ_UNK_1000, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z); if (temp_v0 != 0) { - func_800A6CD0(player, temp_v0, obj2F4->info.damage); + Player_ApplyDamage(player, temp_v0, obj2F4->info.damage); } } else if (obj2F4->unk_0B4 == 63) { - spfD4.x = fabsf(obj2F4->obj.pos.x - player->unk_074); - spfD4.y = fabsf(obj2F4->obj.pos.y - player->unk_078); + spfD4.x = fabsf(obj2F4->obj.pos.x - player->pos.x); + spfD4.y = fabsf(obj2F4->obj.pos.y - player->pos.y); spfD4.z = fabsf(obj2F4->obj.pos.z - player->unk_138); if (sqrtf(VEC3F_SQ(spfD4)) < 900.0f) { - func_800A6CD0(player, 0, obj2F4->info.damage); + Player_ApplyDamage(player, 0, obj2F4->info.damage); obj2F4->unk_0D0 = 3; } } else { @@ -1873,13 +1876,13 @@ void func_800A8BA4(Player* player) { if (D_80177E80 == 3) { func_800BA808(gMsg_ID_5504, RCID_FALCO); } - func_80019218(D_800CFF54[D_80177E80], &gPlayer->unk_460, 0, &D_800C5D34, + Audio_PlaySfx(D_800CFF54[D_80177E80], &gPlayer->unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - func_80019218(0x49008025, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49008025, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } else if (temp_v0 < 0) { if (player->unk_22C == 0) { - func_80019218(0x19000001, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, + Audio_PlaySfx(0x19000001, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } player->unk_22C += 2; @@ -1887,20 +1890,20 @@ void func_800A8BA4(Player* player) { player->unk_22C = 4; } } else { - func_800A6CD0(player, temp_v0, obj2F4->info.damage); + Player_ApplyDamage(player, temp_v0, obj2F4->info.damage); obj2F4->unk_0D0 = 3; - obj2F4->unk_0D4 = player->unk_1C4 + 1; + obj2F4->unk_0D4 = player->num + 1; } } } - } else if ((obj2F4->obj.id >= 0xCD) && (obj2F4->obj.id < 0xD6)) { + } else if ((obj2F4->obj.id >= OBJ_2F4_205) && (obj2F4->obj.id < OBJ_2F4_214)) { temp_v0 = func_800A7974(player, obj2F4->info.hitbox, &sp98, obj2F4->unk_178 + obj2F4->obj.pos.x, obj2F4->unk_134 + obj2F4->obj.pos.y + 25.0f, obj2F4->obj.pos.z, obj2F4->unk_188, obj2F4->unk_17C, obj2F4->obj.rot.z, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { obj2F4->unk_0D0 = 3; - if (obj2F4->info.damage != 0) { - func_800A6CD0(player, temp_v0, obj2F4->info.damage); + if (obj2F4->info.damage) { + Player_ApplyDamage(player, temp_v0, obj2F4->info.damage); } else { obj2F4->unk_0D0 = -1; } @@ -1912,7 +1915,7 @@ void func_800A8BA4(Player* player) { if (temp_v0 != 0) { if (temp_v0 < 0) { if (player->unk_22C == 0) { - func_80019218(0x19000001, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x19000001, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } player->unk_22C += 2; if (player->unk_22C >= 4) { @@ -1923,8 +1926,8 @@ void func_800A8BA4(Player* player) { if (obj2F4->obj.id == OBJ_2F4_190) { obj2F4->unk_0D0 = -1; } - if (obj2F4->info.damage != 0) { - func_800A6CD0(player, temp_v0, obj2F4->info.damage); + if (obj2F4->info.damage) { + Player_ApplyDamage(player, temp_v0, obj2F4->info.damage); if (obj2F4->obj.id == OBJ_2F4_225) { player->unk_0D8.y = 0.0f; } @@ -1948,7 +1951,7 @@ void func_800A8BA4(Player* player) { player->unk_1F4 = 6; player->unk_21C = 0; } else { - func_800A6CD0(player, temp_v0, obj4C->info.damage); + Player_ApplyDamage(player, temp_v0, obj4C->info.damage); } } } @@ -1957,37 +1960,37 @@ void func_800A8BA4(Player* player) { } func_800A86E4(player); if (gCamCount == 4) { - for (i = 3, opponent = &gPlayer[3]; i >= 0; i--, opponent--) { - if ((i != D_801778A0) && (opponent->unk_1C8 == 3)) { + for (opponent = &gPlayer[3], i = 3; i >= 0; i--, opponent--) { + if ((i != gPlayerNum) && (opponent->state_1C8 == PLAYERSTATE_1C8_3)) { spC8.x = 25.0f; - if (player->unk_1CC == 3) { + if (player->form == FORM_ON_FOOT) { spC8.x = 4.0f; } spC8.y = 25.0f; - if (opponent->unk_1CC == 3) { + if (opponent->form == FORM_ON_FOOT) { spC8.y = 4.0f; } spBC.x = spBC.z = spC8.x + spC8.y; spC8.x = 23.0f; - if (player->unk_1CC == 3) { + if (player->form == FORM_ON_FOOT) { spC8.x = 7.0f; } spC8.y = 23.0f; - if (opponent->unk_1CC == 3) { + if (opponent->form == FORM_ON_FOOT) { spC8.y = 7.0f; } spBC.y = spC8.x + spC8.y; if ((fabsf(opponent->unk_138 - player->unk_138) <= spBC.z) && - (fabsf(opponent->unk_078 - player->unk_078) <= spBC.y) && - (fabsf(opponent->unk_074 - player->unk_074) <= spBC.x)) { - if ((player->unk_1CC == 3) && (opponent->unk_1CC == 3)) { - player->unk_074 = player->unk_08C.y; - player->unk_078 = player->unk_08C.z; - player->unk_07C = player->unk_138 = player->unk_098; - opponent->unk_074 = opponent->unk_08C.y; - opponent->unk_078 = opponent->unk_08C.z; - opponent->unk_07C = opponent->unk_138 = opponent->unk_098; - player->unk_0D8.x = (player->unk_074 - opponent->unk_08C.y) * 0.5f; + (fabsf(opponent->pos.y - player->pos.y) <= spBC.y) && + (fabsf(opponent->pos.x - player->pos.x) <= spBC.x)) { + if ((player->form == FORM_ON_FOOT) && (opponent->form == FORM_ON_FOOT)) { + player->pos.x = player->unk_090.x; + player->pos.y = player->unk_090.y; + player->pos.z = player->unk_138 = player->unk_090.z; + opponent->pos.x = opponent->unk_090.x; + opponent->pos.y = opponent->unk_090.y; + opponent->pos.z = opponent->unk_138 = opponent->unk_090.z; + player->unk_0D8.x = (player->pos.x - opponent->unk_090.x) * 0.5f; player->unk_0D8.z = (player->unk_138 - opponent->unk_138) * 0.5f; opponent->unk_0D8.x = -player->unk_0D8.x; opponent->unk_0D8.z = -player->unk_0D8.z; @@ -2001,54 +2004,48 @@ void func_800A8BA4(Player* player) { } } if (D_80178294 != 0) { - if (func_800A73E4(&sp94, &sp90, player->unk_2EC.x, player->unk_2EC.y, player->unk_2EC.z)) { + if (func_800A73E4(&sp94, &sp90, player->hit3.x, player->hit3.y, player->hit3.z)) { if (gCurrentLevel == LEVEL_ZONESS) { + player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.8f; player->unk_1F4 = 15; - player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.8f; - func_8007B228(player->unk_2EC.x, sp94, player->unk_2EC.z, 1.0f); + func_8007B228(player->hit3.x, sp94, player->hit3.z, 1.0f); } else { if (player->unk_1F4 == 0) { - func_800A6CD0(player, 4, 10); + Player_ApplyDamage(player, 4, 10); } player->unk_0D8.y = 30.0f; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.8f; } - if (player->unk_1C8 == 4) { - player->unk_220 = 2; - func_8007AFD0(player->unk_074, player->unk_138, 30.0f, 0.0f, 5.0f); - func_8007AFD0(player->unk_074, player->unk_138, -30.0f, 0.0f, 5.0f); + if (player->state_1C8 == PLAYERSTATE_1C8_4) { + player->timer_220 = 2; + func_8007AFD0(player->pos.x, player->unk_138, 30.0f, 0.0f, 5.0f); + func_8007AFD0(player->pos.x, player->unk_138, -30.0f, 0.0f, 5.0f); } } - if (func_800A73E4(&sp94, &sp90, player->unk_074 + ((player->unk_2D4.x - player->unk_074) * 1.5f), - player->unk_078 + (player->unk_2D4.y - player->unk_078) * 1.5f, player->unk_2D4.z)) { + if (func_800A73E4(&sp94, &sp90, player->pos.x + ((player->hit1.x - player->pos.x) * 1.5f), + player->pos.y + (player->hit1.y - player->pos.y) * 1.5f, player->hit1.z)) { if (gCurrentLevel == LEVEL_ZONESS) { - func_8007B228(player->unk_074 + (player->unk_2D4.x - player->unk_074) * 1.5f, sp94, player->unk_2D4.z, - 1.0f); + func_8007B228(player->pos.x + (player->hit1.x - player->pos.x) * 1.5f, sp94, player->hit1.z, 1.0f); } else { if (player->unk_1F4 == 0) { - func_800A6CD0(player, 1, 10); + Player_ApplyDamage(player, 1, 10); } player->unk_0D8.y = 30.0f; } } - if (func_800A73E4(&sp94, &sp90, player->unk_074 + ((player->unk_2C8.x - player->unk_074) * 1.5f), - player->unk_078 + (player->unk_2C8.y - player->unk_078) * 1.5f, player->unk_2C8.z)) { + if (func_800A73E4(&sp94, &sp90, player->pos.x + ((player->hit2.x - player->pos.x) * 1.5f), + player->pos.y + (player->hit2.y - player->pos.y) * 1.5f, player->hit2.z)) { if (gCurrentLevel == LEVEL_ZONESS) { - func_8007B228(player->unk_074 + (player->unk_2C8.x - player->unk_074) * 1.5f, sp94, player->unk_2C8.z, - 1.0f); + func_8007B228(player->pos.x + (player->hit2.x - player->pos.x) * 1.5f, sp94, player->hit2.z, 1.0f); } else { if (player->unk_1F4 == 0) { - func_800A6CD0(player, 2, 40); + Player_ApplyDamage(player, 2, 40); } player->unk_0D8.y = 30.0f; } } } } -#else -void func_800A8BA4(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800A8BA4.s") -#endif void func_800AA800(Player* player) { s32 sp144; @@ -2084,14 +2081,14 @@ void func_800AA800(Player* player) { s32 pad4; if (player->unk_240 == 0) { - player->unk_064 = player->unk_074; - player->unk_06C = player->unk_138 - player->unk_078; + player->unk_064 = player->pos.x; + player->unk_06C = player->unk_138 - player->pos.y; if (D_801784AC != 4) { if (gCamCount == 1) { player->unk_068 = D_80177940 + 3.0f; } else { player->unk_068 = D_80177940; - if (player->unk_1CC == 3) { + if (player->form == FORM_ON_FOOT) { player->unk_06C = player->unk_138; } } @@ -2101,18 +2098,18 @@ void func_800AA800(Player* player) { spFC = 0.0f; spF8 = 0.0f; if (gCamCount != 1) { - if (player->unk_1CC == 3) { + if (player->form == FORM_ON_FOOT) { for (sp144 = 0; sp144 < 200; sp144++) { obj58 = &gObjects58[sp144]; if ((obj58->obj.status == 2) && ((obj58->obj.id == OBJ_80_143) || (obj58->obj.id == OBJ_80_140) || (obj58->obj.id == OBJ_80_141)) && - (fabsf(obj58->obj.pos.x - player->unk_074) < 2000.0f) && + (fabsf(obj58->obj.pos.x - player->pos.x) < 2000.0f) && (fabsf(obj58->obj.pos.z - player->unk_138) < 2000.0f)) { spC8.x = obj58->obj.pos.x; spC8.y = obj58->obj.pos.y; spC8.z = obj58->obj.pos.z; - spD4.x = player->unk_074; + spD4.x = player->pos.x; spD4.y = D_80177940; spD4.z = player->unk_138; var_s0 = 4; @@ -2131,21 +2128,21 @@ void func_800AA800(Player* player) { } } } else { - if ((gAllRangeMode == 1) && (gLevelType == LEVELTYPE_GROUND)) { - player->unk_064 = player->unk_074; + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (gLevelType == LEVELTYPE_PLANET)) { + player->unk_064 = player->pos.x; player->unk_06C = player->unk_138; for (sp144 = 0, obj58 = gObjects58; sp144 < 200; sp144++, obj58++) { if ((obj58->obj.status == 2) && ((obj58->obj.id == OBJ_80_150) || (obj58->obj.id == OBJ_80_149) || (obj58->obj.id == OBJ_80_148) || (obj58->obj.id == OBJ_80_1) || (obj58->obj.id == OBJ_80_3)) && - (fabsf(obj58->obj.pos.x - player->unk_074) < 2500.0f) && + (fabsf(obj58->obj.pos.x - player->pos.x) < 2500.0f) && (fabsf(obj58->obj.pos.z - player->unk_138) < 2500.0f)) { tempx = obj58->obj.pos.x; tempy = obj58->obj.pos.y; tempz = obj58->obj.pos.z; sp120 = obj58->obj.rot.y; Matrix_RotateY(gCalcMatrix, -sp120 * M_DTOR, 0); - spEC.x = player->unk_074 - tempx; + spEC.x = player->pos.x - tempx; spEC.y = 0.0f; spEC.z = player->unk_138 - tempz; Matrix_MultVec3fNoTranslate(gCalcMatrix, &spEC, &spE0); @@ -2184,9 +2181,10 @@ void func_800AA800(Player* player) { } } for (sp144 = 0, obj80 = gObjects80; - (sp144 < 50) && (gAllRangeMode == 0) && (gCurrentLevel != LEVEL_VENOM_1); sp144++, obj80++) { + (sp144 < 50) && (gLevelMode == LEVELMODE_ON_RAILS) && (gCurrentLevel != LEVEL_VENOM_1); + sp144++, obj80++) { if ((obj80->obj.status == 2) && ((player->unk_138 - 3000.0f) < obj80->obj.pos.z) && - (obj80->obj.id != 0) && (obj80->obj.id != 8)) { + (obj80->obj.id != OBJ_80_0) && (obj80->obj.id != OBJ_80_8)) { tempx = obj80->obj.pos.x; tempy = obj80->obj.pos.y; tempz = obj80->obj.pos.z; @@ -2195,11 +2193,11 @@ void func_800AA800(Player* player) { (obj80->obj.id == OBJ_80_4) || (obj80->obj.id == OBJ_80_5)) { Matrix_RotateY(gCalcMatrix, -sp120 * M_DTOR, 0); for (var_fs1 = var_fs0 = -50.0f; var_fs0 > -500.0f; var_fs0 -= 5.0f, var_fs1 -= 5.0f) { - spEC.x = player->unk_074 - tempx; - spEC.y = player->unk_078 + var_fs0 - tempy; + spEC.x = player->pos.x - tempx; + spEC.y = player->pos.y + var_fs0 - tempy; spEC.z = player->unk_138 + var_fs1 - tempz; Matrix_MultVec3fNoTranslate(gCalcMatrix, &spEC, &spE0); - if ((player->unk_078 + var_fs0) <= D_80177940) { + if ((player->pos.y + var_fs0) <= D_80177940) { break; } spD4.x = spE0.x + tempx; @@ -2239,11 +2237,11 @@ void func_800AA800(Player* player) { } hitboxData++; for (i = 0; i < count; i++, hitboxData += 6) { - if (*hitboxData >= 300000.0f) { + if (*hitboxData >= HITBOX_UNK_3) { break; } - if (*hitboxData == 200000.0f) { + if (*hitboxData == HITBOX_UNK_2) { sp100 = hitboxData[1]; spFC = hitboxData[2]; spF8 = hitboxData[3]; @@ -2257,8 +2255,8 @@ void func_800AA800(Player* player) { } hitbox = (Hitbox*) hitboxData; for (var_fs0 = var_fs1 = -50.0f; var_fs0 > -500.0f; var_fs0 -= 5.0f, var_fs1 -= 5.0f) { - spEC.x = player->unk_074 - tempx; - spEC.y = player->unk_078 + var_fs0 - tempy; + spEC.x = player->pos.x - tempx; + spEC.y = player->pos.y + var_fs0 - tempy; spEC.z = player->unk_138 + var_fs1 - tempz; Matrix_MultVec3fNoTranslate(gCalcMatrix, &spEC, &spE0); tempx2 = spE0.x + tempx; @@ -2319,10 +2317,10 @@ void func_800AB334(void) { case LEVEL_VENOM_1: func_8001DC6C(0, 6); break; - case LEVEL_VENOM_SW: + case LEVEL_VENOM_2: func_8001DC6C(0, 6); break; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: func_8001DC6C(0, 15); func_8001D400(0); D_8017796C = -1; @@ -2347,7 +2345,7 @@ void func_800AB334(void) { gAmbientB = 100; } break; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: D_80177A98 = 0; D_80177AB0 = 6; D_E9F1D0_801A7F78 = 0.0f; @@ -2370,7 +2368,7 @@ void func_800AB334(void) { func_E6A810_80199920(); break; case LEVEL_ZONESS: - D_801782C4 = Memory_Allocate(200 * sizeof(PosRot)); + MEM_ARRAY_ALLOCATE(D_801782C4, 200); ptr = (u8*) D_801782C4; for (i = 0; i < 200 * sizeof(PosRot); i++, ptr++) { *ptr = 0; @@ -2380,23 +2378,23 @@ void func_800AB334(void) { case LEVEL_SOLAR: D_80178294 = 1; D_80177940 = -20000.0f; - fptr = D_801782CC = Memory_Allocate(17 * 17 * sizeof(f32)); + fptr = MEM_ARRAY_ALLOCATE(D_801782CC, 17 * 17); for (i = 0; i < 17 * 17; i++, fptr++) { *fptr = 0.0f; } - fptr = D_801782D4 = Memory_Allocate(17 * 17 * sizeof(f32)); + fptr = MEM_ARRAY_ALLOCATE(D_801782D4, 17 * 17); for (i = 0; i < 17 * 17; i++, fptr++) { *fptr = 0.0f; } - fptr = D_801782DC = Memory_Allocate(17 * 17 * sizeof(f32)); + fptr = MEM_ARRAY_ALLOCATE(D_801782DC, 17 * 17); for (i = 0; i < 17 * 17; i++, fptr++) { *fptr = 0.0f; } - fptr = D_801782E4 = Memory_Allocate(17 * 17 * sizeof(f32)); + fptr = MEM_ARRAY_ALLOCATE(D_801782E4, 17 * 17); for (i = 0; i < 17 * 17; i++, fptr++) { *fptr = 0.0f; } - fptr = D_801782EC = Memory_Allocate(17 * 17 * sizeof(f32)); + fptr = MEM_ARRAY_ALLOCATE(D_801782EC, 17 * 17); for (i = 0; i < 17 * 17; i++, fptr++) { *fptr = 0.0f; } @@ -2465,7 +2463,7 @@ void func_800ABA08(void) { func_800AB964(); for (i = 0; i < 4; i++) { - D_801778A0 = i; + gPlayerNum = i; func_800AB304(&gPlayer[i]); func_800B0F50(&gPlayer[i]); func_800B44C4(&gPlayer[i]); @@ -2491,9 +2489,9 @@ void func_800ABAB4(void) { D_80137E78 = 2; D_80177C70 = 0; D_800CA234 = NULL; - D_800CA238 = 0; - func_8001A838(0x11403076U); - func_8001A838(0x49000014U); + D_Timer_800CA238 = 0; + func_8001A838(0x11403076); + func_8001A838(0x49000014); Memory_FreeAll(); D_80177C78 = D_80177C8C = D_80161734 = D_8015F908 = D_8015F90C = D_8015F910 = 0; D_800CA220 = 0; @@ -2505,22 +2503,22 @@ void func_800ABAB4(void) { D_80177A98 = D_80177AB0 = 1; D_80177AC8 = D_800D2F54 = 0; D_800CA230 = D_800D2F58 = 0.0f; - gAllRangeMode = 0; + gLevelMode = LEVELMODE_ON_RAILS; D_80177CE8 = D_8015F968 = 0.0f; D_800D1970 = gVersusMode = D_80178300 = D_80177E84 = 0; if (gCurrentLevel >= LEVEL_FORTUNA) { - gAllRangeMode = 1; + gLevelMode = LEVELMODE_ALL_RANGE; if (gCurrentLevel == LEVEL_VERSUS) { - gVersusMode = 1; + gVersusMode = true; func_800AB964(); } } - if ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 1)) { - gAllRangeMode = 1; + if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_8017827C == 1)) { + gLevelMode = LEVELMODE_ALL_RANGE; } D_80177E7C = 0; func_800A594C(); - D_80161A62 = D_8017796C = D_80177B44 = D_80177B4C = D_8015F928 = D_8015F940 = D_80178284 = gFrameCount = + D_80161A62 = D_8017796C = D_Timer_80177B44 = D_80177B4C = D_8015F928 = D_8015F940 = D_80178284 = gFrameCount = D_80178480 = D_801782FC = D_801613A0 = D_80161690 = D_8015F900 = D_80177930 = 0; if (gCurrentLevel == LEVEL_SECTOR_X) { @@ -2528,13 +2526,13 @@ void func_800ABAB4(void) { } D_80177CC0 = -25000.0f; D_80177950 = 1.0f; - if ((gCurrentLevel == LEVEL_VENOM_SW) && (D_8017827C == 2)) { + if ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 2)) { D_80178348 = D_80178350 = D_80178354 = 255; } else { D_80178348 = D_80178350 = D_80178354 = 0; } - D_80161A60 = D_80178360 = D_80178364 = D_80178368 = D_80161704 = D_80161708 = D_80178340 = D_80177C50 = D_8015F93C = - D_80177B6C = 0; + D_Timer_80161A60 = D_80178360 = D_80178364 = D_80178368 = D_80161704 = D_80161708 = D_80178340 = D_80177C50 = + D_8015F93C = D_80177B6C = 0; D_80177A80 = 0; D_80178340 = D_80178358 = 255; @@ -2565,7 +2563,7 @@ void func_800ABAB4(void) { if (gCurrentLevel == LEVEL_AQUAS) { D_80177CC0 = 1000.0f; } - D_80178488 = 0; + D_80178488 = false; gCamCount = 1; if (gCurrentLevel == LEVEL_VERSUS) { gCamCount = 4; @@ -2573,16 +2571,16 @@ void func_800ABAB4(void) { for (i = 1; i < 6; i++) { gTeamShields[i] = gSavedTeamShields[i]; } - gPlayer = Memory_Allocate(gCamCount * sizeof(Player)); + MEM_ARRAY_ALLOCATE(gPlayer, gCamCount); func_800AB2AC(); for (i = 0; i < gCamCount; i++) { - gPlayer[i].unk_1C8 = 1; + gPlayer[i].state_1C8 = PLAYERSTATE_1C8_1; D_80178380[i] = D_801783C0[i] = 0; - D_80177BD0[i] = 0; + D_Timer_80177BD0[i] = 0; D_80177C30[i] = 0; } - if (gAllRangeMode == 1) { - gObjects58 = Memory_Allocate(200 * sizeof(Object_58)); + if (gLevelMode == LEVELMODE_ALL_RANGE) { + MEM_ARRAY_ALLOCATE(gObjects58, 200); for (i = 0; i < 200; i++) { gObjects58[i].obj.status = 0; } @@ -2609,13 +2607,13 @@ void func_800ABAB4(void) { func_8002F180(); } break; - case LEVEL_VENOM_SW: + case LEVEL_VENOM_2: func_E9F1D0_80196968(&gObjects58); if (D_8017827C == 0) { func_8002F180(); } break; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: if (D_8017827C == 1) { if (D_8015F924 == 0) { func_E9F1D0_801878A8(&gObjects58); @@ -2639,9 +2637,9 @@ void func_800AC290(Player* player, PlayerShot* shot, f32 arg2, f32 arg3, s32 obj Vec3f sp2C; PlayerShot_Initialize(shot); - Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * 0.017453292f, 0); - Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_4D8) * 0.017453292f), 1); - Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0) * 0.017453292f), 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); + Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0) * M_DTOR), 1); Matrix_Translate(gCalcMatrix, player->unk_084, player->unk_080, 0.0f, 1); if ((gVersusMode) && (objId <= PLAYERSHOT_1)) { arg5 *= 0.5f; @@ -2667,13 +2665,13 @@ void func_800AC290(Player* player, PlayerShot* shot, f32 arg2, f32 arg3, s32 obj shot->unk_64 = 37; } if (shot->obj.id == PLAYERSHOT_4) { - shot->obj.pos.x = player->unk_074 + sp2C.x; - shot->obj.pos.y = player->unk_078 + sp2C.y; + shot->obj.pos.x = player->pos.x + sp2C.x; + shot->obj.pos.y = player->pos.y + sp2C.y; shot->obj.pos.z = player->unk_138 + sp2C.z; shot->unk_64 = 38; } else { - shot->obj.pos.x = player->unk_074 + sp2C.x + (sp38.x * 1.2); - shot->obj.pos.y = player->unk_078 + sp2C.y + (sp38.y * 1.2); + shot->obj.pos.x = player->pos.x + sp2C.x + (sp38.x * 1.2); + shot->obj.pos.y = player->pos.y + sp2C.y + (sp38.y * 1.2); shot->obj.pos.z = player->unk_138 + sp2C.z + (sp38.z * 1.2f); } shot->obj.rot.x = player->unk_120 + player->unk_0E4 + player->unk_4D8; @@ -2696,7 +2694,7 @@ void func_800AC290(Player* player, PlayerShot* shot, f32 arg2, f32 arg3, s32 obj shot->unk_64 = 30; } } - shot->unk_68 = player->unk_1C4; + shot->playerNum = player->num; } void func_800AC650(Player* player, PlayerShot* shot, s32 objId, f32 arg3) { @@ -2705,28 +2703,28 @@ void func_800AC650(Player* player, PlayerShot* shot, s32 objId, f32 arg3) { Vec3f sp3C; PlayerShot_Initialize(shot); - Matrix_RotateX(gCalcMatrix, player->unk_0E4 * 0.017453292f, 0); - Matrix_RotateZ(gCalcMatrix, (player->unk_0EC + player->unk_0F0) * 0.017453292f, 1); - Matrix_RotateY(gCalcMatrix, player->unk_114 * 0.017453292f, 1); - Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * 0.017453292f, 1); - Matrix_RotateZ(gCalcMatrix, (-player->unk_12C - player->unk_130) * 0.017453292f, 1); - Matrix_RotateY(gCalcMatrix, -player->unk_180 * 0.017453292f, 1); - Matrix_RotateX(gCalcMatrix, player->unk_17C * 0.017453292f, 1); + Matrix_RotateX(gCalcMatrix, player->unk_0E4 * M_DTOR, 0); + Matrix_RotateZ(gCalcMatrix, (player->unk_0EC + player->unk_0F0) * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * M_DTOR, 1); + Matrix_RotateZ(gCalcMatrix, (-player->unk_12C - player->unk_130) * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, -player->unk_180 * M_DTOR, 1); + Matrix_RotateX(gCalcMatrix, player->unk_17C * M_DTOR, 1); sp54.x = 0; sp54.y = 0; sp54.z = arg3; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp54, &sp48); Matrix_Translate(gCalcMatrix, 0.0f, player->unk_18C + 30.0f, 0, 0); - Matrix_RotateX(gCalcMatrix, player->unk_0E4 * 0.017453292f, 1); - Matrix_RotateZ(gCalcMatrix, (player->unk_0EC + player->unk_0F0) * 0.017453292f, 1); - Matrix_RotateY(gCalcMatrix, player->unk_114 * 0.017453292f, 1); - Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * 0.017453292f, 1); - Matrix_RotateZ(gCalcMatrix, (-player->unk_12C - player->unk_130) * 0.017453292f, 1); + Matrix_RotateX(gCalcMatrix, player->unk_0E4 * M_DTOR, 1); + Matrix_RotateZ(gCalcMatrix, (player->unk_0EC + player->unk_0F0) * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * M_DTOR, 1); + Matrix_RotateZ(gCalcMatrix, (-player->unk_12C - player->unk_130) * M_DTOR, 1); Matrix_Translate(gCalcMatrix, 0.0f, -30.0f, 0, 1); Matrix_Translate(gCalcMatrix, player->unk_084, player->unk_080, 0.0f, 1); Matrix_Translate(gCalcMatrix, 0.0f, 51.0f, -4.0f, 1); - Matrix_RotateY(gCalcMatrix, -player->unk_180 * 0.017453292f, 1); - Matrix_RotateX(gCalcMatrix, player->unk_17C * 0.017453292f, 1); + Matrix_RotateY(gCalcMatrix, -player->unk_180 * M_DTOR, 1); + Matrix_RotateX(gCalcMatrix, player->unk_17C * M_DTOR, 1); sp54.x = 0; sp54.y = 7; sp54.z = 0; @@ -2734,8 +2732,8 @@ void func_800AC650(Player* player, PlayerShot* shot, s32 objId, f32 arg3) { shot->unk_20.x = sp48.x; shot->unk_20.y = sp48.y; shot->unk_20.z = sp48.z; - shot->obj.pos.x = player->unk_074 + sp3C.x; - shot->obj.pos.y = player->unk_078 + sp3C.y; + shot->obj.pos.x = player->pos.x + sp3C.x; + shot->obj.pos.y = player->pos.y + sp3C.y; shot->obj.pos.z = player->unk_138 + sp3C.z; shot->obj.status = 1; shot->unk_2C = -player->unk_17C; @@ -2747,7 +2745,7 @@ void func_800AC650(Player* player, PlayerShot* shot, s32 objId, f32 arg3) { shot->unk_64 = 40; shot->obj.id = objId; - shot->unk_68 = player->unk_1C4; + shot->playerNum = player->num; if (objId == PLAYERSHOT_8) { if (arg3 <= 65.0f) { shot->unk_5C = 1; @@ -2763,7 +2761,7 @@ void func_800ACA40(Player* player) { for (i = 0; i < ARRAY_COUNT(gPlayerShots) - 1; i++) { if (gPlayerShots[i].obj.status == 0) { func_800AC650(player, &gPlayerShots[i], PLAYERSHOT_5, 100.0f); - func_800A5FA0(&player->unk_460, 0x09000014, player->unk_1C4); + func_800A5FA0(&player->unk_460, 0x09000014, player->num); player->unk_1A0 = 2; break; } @@ -2772,7 +2770,7 @@ void func_800ACA40(Player* player) { void func_800ACABC(Player* player) { s32 i; - s32 laser = gLaserStrength[D_801778A0]; + s32 laser = gLaserStrength[gPlayerNum]; if (player->wings.unk_14 > -8.0f) { laser = 0; @@ -2782,8 +2780,8 @@ void func_800ACABC(Player* player) { for (i = 0; i < ARRAY_COUNT(gPlayerShots) - 1; i++) { if (gPlayerShots[i].obj.status == 0) { func_800AC290(player, &gPlayerShots[i], 0.0f, 0.0f, PLAYERSHOT_0, 400.0f / 3.0f); - func_800A5FA0(&player->unk_460, 0x09400000, player->unk_1C4); - D_80177AA0[player->unk_1C4] = 0.5f; + func_800A5FA0(&player->unk_460, 0x09400000, player->num); + D_80177AA0[player->num] = 0.5f; break; } } @@ -2794,11 +2792,11 @@ void func_800ACABC(Player* player) { if (gPlayerShots[i].obj.status == 0) { func_800AC290(player, &gPlayerShots[i], 0.0f, -10.0f, PLAYERSHOT_1, 400.0f / 3.0f); if (laser == 1) { - func_800A5FA0(&player->unk_460, 0x0940800C, player->unk_1C4); - D_80177AA0[player->unk_1C4] = 0.5f; + func_800A5FA0(&player->unk_460, 0x0940800C, player->num); + D_80177AA0[player->num] = 0.5f; } else { - func_800A5FA0(&player->unk_460, 0x0940802B, player->unk_1C4); - D_80177AA0[player->unk_1C4] = 0.75f; + func_800A5FA0(&player->unk_460, 0x0940802B, player->num); + D_80177AA0[player->num] = 0.75f; } break; } @@ -2808,24 +2806,24 @@ void func_800ACABC(Player* player) { } void func_800ACC7C(Player* player) { - if ((gBombCount[player->unk_1C4] != 0) && (D_80177948[player->unk_1C4] & gInputPress->button) && + if ((gBombCount[player->num] != 0) && (gBombButton[player->num] & gInputPress->button) && (gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].obj.status == 0)) { if (gVersusMode) { - gBombCount[player->unk_1C4] = 0; + gBombCount[player->num] = 0; } else { - gBombCount[player->unk_1C4]--; + gBombCount[player->num]--; } - if (player->unk_1CC == 0) { + if (player->form == FORM_ARWING) { func_800AC290(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], 0.0f, 0.0f, PLAYERSHOT_3, 180.0f); - } else if (player->unk_1CC == 1) { + } else if (player->form == FORM_LANDMASTER) { func_800AC650(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], PLAYERSHOT_3, 180.0f); } else { func_800ACDC0(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], PLAYERSHOT_3); } gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_48 = 30.0f; gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_60 = 0; - func_8001CB80(player->unk_1C4, 1); - func_8001CCDC(player->unk_1C4, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); + func_8001CB80(player->num, 1); + func_8001CCDC(player->num, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); } } @@ -2835,10 +2833,10 @@ void func_800ACDC0(Player* player, PlayerShot* shot, s32 objId) { Vec3f sp44; PlayerShot_Initialize(shot); - Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * 0.017453292f, 0); - Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_134) * 0.017453292f), 1); - Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * 0.017453292f), 1); - Matrix_RotateX(gCalcMatrix, player->unk_154 * 0.017453292f, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_134) * M_DTOR), 1); + Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * M_DTOR), 1); + Matrix_RotateX(gCalcMatrix, player->unk_154 * M_DTOR, 1); sp5C.x = 0.0f; sp5C.y = 0.0f; if (objId == PLAYERSHOT_3) { @@ -2847,12 +2845,12 @@ void func_800ACDC0(Player* player, PlayerShot* shot, s32 objId) { sp5C.z = 150.0f; } Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp5C, &sp50); - Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * 0.017453292f, 0); - Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_134) * 0.017453292f), 1); - Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * 0.017453292f), 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + player->unk_134 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_134) * M_DTOR), 1); + Matrix_RotateZ(gCalcMatrix, -((player->unk_0F8 + player->unk_0F0 + player->unk_134) * M_DTOR), 1); Matrix_Translate(gCalcMatrix, 0.0f, player->unk_080, 0, 1); Matrix_Translate(gCalcMatrix, -10.0f, 25.0f, 0.0f, 1); - Matrix_RotateX(gCalcMatrix, player->unk_154 * 0.017453292f, 1); + Matrix_RotateX(gCalcMatrix, player->unk_154 * M_DTOR, 1); sp5C.x = 0.0f; sp5C.y = 0.0f; sp5C.z = 0; @@ -2860,8 +2858,8 @@ void func_800ACDC0(Player* player, PlayerShot* shot, s32 objId) { shot->unk_20.x = sp50.x; shot->unk_20.y = sp50.y; shot->unk_20.z = sp50.z; - shot->obj.pos.x = player->unk_074 + sp44.x; - shot->obj.pos.y = player->unk_078 + sp44.y; + shot->obj.pos.x = player->pos.x + sp44.x; + shot->obj.pos.y = player->pos.y + sp44.y; shot->obj.pos.z = player->unk_138 + sp44.z; shot->unk_44 = 1.0f; @@ -2871,7 +2869,7 @@ void func_800ACDC0(Player* player, PlayerShot* shot, s32 objId) { shot->unk_64 = 30; shot->unk_58 = 1; - shot->unk_68 = player->unk_1C4; + shot->playerNum = player->num; } void func_800AD094(Player* player) { @@ -2880,31 +2878,33 @@ void func_800AD094(Player* player) { for (i = 0; i < ARRAY_COUNT(gPlayerShots); i++) { if (gPlayerShots[i].obj.status == 0) { func_800ACDC0(player, &gPlayerShots[i], PLAYERSHOT_6); - func_800A5FA0(&player->unk_460, 0x09000014, player->unk_1C4); - player->unk_1F8 = 2; + func_800A5FA0(&player->unk_460, 0x09000014, player->num); + player->timer_1F8 = 2; player->unk_180 = 10.0f; break; } } } -s32 func_800AD118(s32 arg0) { +s32 func_800AD118(s32 playerNum) { Object_2F4* obj2F4; s32 i; for (i = 0, obj2F4 = gObjects2F4; i < ARRAY_COUNT(gObjects2F4); i++, obj2F4++) { - if ((obj2F4->obj.status == 2) && (obj2F4->unk_0CA[arg0] != 0)) { - return 0; + if ((obj2F4->obj.status == 2) && (obj2F4->timer_0CA[playerNum] != 0)) { + return false; } } if (gVersusMode) { for (i = 0; i < gCamCount; i++) { - if (((gPlayer[arg0].unk_1C8 == 3) || (gPlayer[arg0].unk_1C8 == 5)) && (D_80177B00[i][arg0] != 0)) { - return 0; + if (((gPlayer[playerNum].state_1C8 == PLAYERSTATE_1C8_3) || + (gPlayer[playerNum].state_1C8 == PLAYERSTATE_1C8_5)) && + (D_80177B00[i][playerNum] != 0)) { + return false; } } } - return 1; + return true; } bool func_800AD1F4(Player* player) { @@ -2912,20 +2912,20 @@ bool func_800AD1F4(Player* player) { s32 i; if (gInputHold->button & A_BUTTON) { - D_801779C8[player->unk_1C4]++; - if (D_801779C8[player->unk_1C4] > 21) { - D_801779C8[player->unk_1C4] = 21; + gChargeTimers[player->num]++; + if (gChargeTimers[player->num] > 21) { + gChargeTimers[player->num] = 21; } - if (D_801779C8[player->unk_1C4] == 20) { - func_80060F30(&player->unk_460, 0x0900302D, player->unk_1C4); + if (gChargeTimers[player->num] == 20) { + func_80060F30(&player->unk_460, 0x0900302D, player->num); } - if ((!(gInputHold->button & R_TRIG) || !(gInputHold->button & Z_TRIG) || (player->unk_1CC != 0) || - (player->unk_1C8 != 3)) && - !(gFrameCount & 3) && (func_800AD118(player->unk_1C4) != 0)) { - if (D_801779C8[player->unk_1C4] >= 21) { + if ((!(gInputHold->button & R_TRIG) || !(gInputHold->button & Z_TRIG) || (player->form != FORM_ARWING) || + (player->state_1C8 != PLAYERSTATE_1C8_3)) && + !(gFrameCount & 3) && (func_800AD118(player->num) != 0)) { + if (gChargeTimers[player->num] >= 21) { for (i = 0; i < 13; i++) { if (gPlayerShots[i].obj.status == 0) { - if (player->unk_1CC == 0) { + if (player->form == FORM_ARWING) { func_800AC290(player, &gPlayerShots[i], 0.0f, 0.0f, PLAYERSHOT_4, 400.0f); } else { func_800AC650(player, &gPlayerShots[i], PLAYERSHOT_4, 400.0f); @@ -2936,66 +2936,66 @@ bool func_800AD1F4(Player* player) { } } } else { - if (D_801779C8[player->unk_1C4] != 0) { - D_801779C8[player->unk_1C4]--; + if (gChargeTimers[player->num] != 0) { + gChargeTimers[player->num]--; } } if (gInputPress->button & A_BUTTON) { for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++) { - if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].unk_0CA[player->unk_1C4] != 0)) { - if ((gPlayerShots[14 - player->unk_1C4].obj.status == 0) || - (gPlayerShots[14 - player->unk_1C4].obj.id != 8) || - ((gPlayerShots[14 - player->unk_1C4].obj.id == 8) && - (gPlayerShots[14 - player->unk_1C4].unk_60 != 0))) { - if (player->unk_1CC == 0) { - func_800AC290(player, &gPlayerShots[14 - player->unk_1C4], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); + if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].timer_0CA[player->num] != 0)) { + if ((gPlayerShots[14 - player->num].obj.status == 0) || + (gPlayerShots[14 - player->num].obj.id != PLAYERSHOT_8) || + ((gPlayerShots[14 - player->num].obj.id == PLAYERSHOT_8) && + (gPlayerShots[14 - player->num].unk_60 != 0))) { + if (player->form == FORM_ARWING) { + func_800AC290(player, &gPlayerShots[14 - player->num], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); } else { - func_800AC650(player, &gPlayerShots[14 - player->unk_1C4], PLAYERSHOT_8, 70.0f); + func_800AC650(player, &gPlayerShots[14 - player->num], PLAYERSHOT_8, 70.0f); } - func_80060F30(&player->unk_460, 0x09007029, player->unk_1C4); - D_80177BD0[player->unk_1C4] = 5; + func_80060F30(&player->unk_460, 0x09007029, player->num); + D_Timer_80177BD0[player->num] = 5; return true; } break; } } - if (D_801779C8[player->unk_1C4] > 10) { - if ((gPlayerShots[14 - player->unk_1C4].obj.status == 0) || - (gPlayerShots[14 - player->unk_1C4].obj.id != 8) || - ((gPlayerShots[14 - player->unk_1C4].obj.id == 8) && - (gPlayerShots[14 - player->unk_1C4].unk_44 > 1.0f))) { - if (player->unk_1CC == 0) { - func_800AC290(player, &gPlayerShots[14 - player->unk_1C4], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); + if (gChargeTimers[player->num] > 10) { + if ((gPlayerShots[14 - player->num].obj.status == 0) || + (gPlayerShots[14 - player->num].obj.id != PLAYERSHOT_8) || + ((gPlayerShots[14 - player->num].obj.id == PLAYERSHOT_8) && + (gPlayerShots[14 - player->num].unk_44 > 1.0f))) { + if (player->form == FORM_ARWING) { + func_800AC290(player, &gPlayerShots[14 - player->num], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); } else { - func_800AC650(player, &gPlayerShots[14 - player->unk_1C4], PLAYERSHOT_8, 70.0f); + func_800AC650(player, &gPlayerShots[14 - player->num], PLAYERSHOT_8, 70.0f); } - func_80060F30(&player->unk_460, 0x09007029, player->unk_1C4); - D_801779C8[player->unk_1C4] = 0; - D_80177BD0[player->unk_1C4] = 5; + func_80060F30(&player->unk_460, 0x09007029, player->num); + gChargeTimers[player->num] = 0; + D_Timer_80177BD0[player->num] = 5; return true; } } - D_801779C8[player->unk_1C4] = 0; + gChargeTimers[player->num] = 0; } if (gInputPress->button & B_BUTTON) { var_a2 = false; for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++) { - if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].unk_0CA[player->unk_1C4] != 0)) { + if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].timer_0CA[player->num] != 0)) { var_a2 = true; break; } } for (i = 0; i < gCamCount; i++) { - if (D_80177B00[i][player->unk_1C4] != 0) { + if (D_80177B00[i][player->num] != 0) { var_a2 = true; break; } } if (var_a2 != 0) { - if ((gBombCount[player->unk_1C4] != 0) && (gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].obj.status == 0)) { - gBombCount[player->unk_1C4]--; - if (player->unk_1CC == 0) { + if ((gBombCount[player->num] != 0) && (gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].obj.status == 0)) { + gBombCount[player->num]--; + if (player->form == FORM_ARWING) { func_800AC290(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], 0.0f, 0.0f, PLAYERSHOT_8, 60.0f); } else { @@ -3003,8 +3003,8 @@ bool func_800AD1F4(Player* player) { } gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_48 = 30.0f; gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_60 = 0; - func_8001CB80(player->unk_1C4, 1); - func_8001CCDC(player->unk_1C4, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); + func_8001CB80(player->num, 1); + func_8001CCDC(player->num, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); return true; } } @@ -3013,49 +3013,49 @@ bool func_800AD1F4(Player* player) { } void func_800AD7F0(Player* player) { - switch (player->unk_1CC) { /* irregular */ - case 0: + switch (player->form) { + case FORM_ARWING: if ((player->wings.rightState <= WINGSTATE_BROKEN) || (player->wings.leftState <= WINGSTATE_BROKEN)) { - gLaserStrength[player->unk_1C4] = 0; + gLaserStrength[player->num] = 0; } if (func_800AD1F4(player) == 0) { - if (gLaserStrength[D_801778A0] > 0) { + if (gLaserStrength[gPlayerNum] > 0) { Math_SmoothStepToF(&player->wings.unk_14, -10.0f, 1.0f, 0.5f, 0.0f); } else { Math_SmoothStepToF(&player->wings.unk_14, 0.0f, 1.0f, 0.5f, 0.0f); } - if (D_80177938[player->unk_1C4] & gInputPress->button) { + if (gShootButton[player->num] & gInputPress->button) { func_800ACABC(player); - player->unk_244 = 8; + player->timer_244 = 8; } - if (player->unk_244 != 0) { - player->unk_244--; - if ((D_80177938[player->unk_1C4] & gInputHold->button) && !(player->unk_244 & 3)) { + if (player->timer_244 != 0) { + player->timer_244--; + if ((gShootButton[player->num] & gInputHold->button) && !(player->timer_244 & 3)) { func_800ACABC(player); } } func_800ACC7C(player); } break; - case 1: + case FORM_LANDMASTER: if (func_800AD1F4(player) == 0) { - if (D_80177938[player->unk_1C4] & gInputPress->button) { + if (gShootButton[player->num] & gInputPress->button) { func_800ACA40(player); } func_800ACC7C(player); } break; - case 3: + case FORM_ON_FOOT: if (gInputPress->button & A_BUTTON) { - player->unk_244 = 0; + player->timer_244 = 0; } if (gInputHold->button & A_BUTTON) { - if (player->unk_244 == 0) { + if (player->timer_244 == 0) { func_800AD094(player); } - player->unk_244++; - if (player->unk_244 > 4) { - player->unk_244 = 0; + player->timer_244++; + if (player->timer_244 > 4) { + player->timer_244 = 0; } } func_800ACC7C(player); @@ -3082,8 +3082,8 @@ void func_800ADA28(Player* player) { Math_SmoothStepToF(&player->wings.unk_08, -70.0f, 0.3f, 100.0f, 0.f); Math_SmoothStepToF(&player->wings.unk_0C, 70.0f, 0.3f, 100.0f, 0.f); Math_SmoothStepToF(&player->wings.unk_10, 70.0f, 0.3f, 100.0f, 0.f); - if (player->unk_078 < (D_80177940 + 70.0f)) { - player->unk_078 += 6.0f; + if (player->pos.y < (D_80177940 + 70.0f)) { + player->pos.y += 6.0f; } } } @@ -3096,32 +3096,32 @@ void func_800ADA28(Player* player) { Math_SmoothStepToF(&player->wings.unk_08, 70.0f, 0.3f, 100.0f, 0.0f); Math_SmoothStepToF(&player->wings.unk_0C, -70.0f, 0.3f, 100.0f, 0.0f); Math_SmoothStepToF(&player->wings.unk_10, -70.0f, 0.3f, 100.0f, 0.0f); - if (player->unk_078 < (D_80177940 + 70.0f)) { - player->unk_078 += 6.0f; + if (player->pos.y < (D_80177940 + 70.0f)) { + player->pos.y += 6.0f; } } } Math_SmoothStepToF(&player->unk_12C, sp3C, sp38, 10.0f, 0.f); if (gInputPress->button & Z_TRIG) { player->unk_48C = 1; - if (player->unk_1E0 != 0) { + if (player->timer_1E0 != 0) { player->unk_1DC = 1; - player->unk_1E8 = 10; + player->timer_1E8 = 10; player->unk_1EC = player->unk_1F0 = 30; player->unk_494 = 1; } else { - player->unk_1E0 = 10; + player->timer_1E0 = 10; } } if (gInputPress->button & R_TRIG) { player->unk_48C = 1; - if (player->unk_1E4 != 0) { + if (player->timer_1E4 != 0) { player->unk_1DC = 1; - player->unk_1E8 = 10; + player->timer_1E8 = 10; player->unk_1EC = player->unk_1F0 = -30; player->unk_494 = 1; } else { - player->unk_1E4 = 10; + player->timer_1E4 = 10; } } } @@ -3130,25 +3130,25 @@ void func_800ADD98(Player* player) { Math_SmoothStepToF(&player->unk_170, 0.0f, 1.0f, 0.2f, 0.0f); Math_SmoothStepToF(&player->unk_16C, 0.0f, 1.0f, 0.2f, 0.0f); if (gInputPress->button & Z_TRIG) { - if ((player->unk_1E0 != 0) && (player->unk_12C > 0.0f) && (player->unk_2BC < 10.0f)) { + if ((player->timer_1E0 != 0) && (player->unk_12C > 0.0f) && (player->unk_2BC < 10.0f)) { player->unk_1DC = 1; - player->unk_1E8 = 15; + player->timer_1E8 = 15; player->unk_1EC = player->unk_1F0 = 20; } else { - player->unk_1E0 = 10; + player->timer_1E0 = 10; } } if (gInputPress->button & R_TRIG) { - if ((player->unk_1E4 != 0) && (player->unk_12C < 0.0f) && (player->unk_2BC < 10.0f)) { + if ((player->timer_1E4 != 0) && (player->unk_12C < 0.0f) && (player->unk_2BC < 10.0f)) { player->unk_1DC = 1; - player->unk_1E8 = 15; + player->timer_1E8 = 15; player->unk_1EC = player->unk_1F0 = -20; } else { - player->unk_1E4 = 10; + player->timer_1E4 = 10; } } - player->unk_18C = fabsf(__sinf(player->unk_12C * 0.017453292f) * 25.0f); - player->unk_18C += fabsf(__sinf(player->unk_130 * 0.017453292f) * 20.0f); + player->unk_18C = fabsf(__sinf(player->unk_12C * M_DTOR) * 25.0f); + player->unk_18C += fabsf(__sinf(player->unk_130 * M_DTOR) * 20.0f); } void func_800ADF58(Player* player) { @@ -3156,9 +3156,9 @@ void func_800ADF58(Player* player) { f32 temp_fv0_2; s32 temp_v0; - player->unk_140 = -player->unk_0C0.z; - player->unk_144 += -player->unk_0C0.z; - D_80177D08 = -player->unk_0C0.z; + player->unk_140 = -player->vel.z; + player->unk_144 += -player->vel.z; + D_80177D08 = -player->vel.z; D_80177D20 = player->unk_144; D_80177CE8 += player->unk_140; if (D_801784AC == 4) { @@ -3166,11 +3166,11 @@ void func_800ADF58(Player* player) { } if ((D_80178284 == 0) && (player->unk_144 > 500000.0f)) { player->unk_144 = 0.0f; - player->unk_07C = 0.0f; + player->pos.z = 0.0f; D_80177DC8 = 0; func_800A6148(); } - player->unk_138 = player->unk_07C + player->unk_08C.x; + player->unk_138 = player->pos.z + player->unk_08C; player->unk_0F8 = player->unk_0EC + player->unk_12C + player->unk_130; while (1) { @@ -3189,15 +3189,15 @@ void func_800ADF58(Player* player) { } if (gCurrentLevel == LEVEL_UNK_15) { Math_SmoothStepToF(&player->unk_0B4, 10.0f, 0.1f, 0.5f, 0.0001f); - player->unk_074 += Math_SmoothStepToF(&player->unk_0AC, player->unk_0B8, 0.1f, player->unk_0B4, 0.0001f); - player->unk_078 += Math_SmoothStepToF(&player->unk_0B0, player->unk_0BC, 0.1f, player->unk_0B4, 0.0001f); + player->pos.x += Math_SmoothStepToF(&player->unk_0AC, player->unk_0B8, 0.1f, player->unk_0B4, 0.0001f); + player->pos.y += Math_SmoothStepToF(&player->unk_0B0, player->unk_0BC, 0.1f, player->unk_0B4, 0.0001f); } else { Math_SmoothStepToF(&player->unk_0B4, D_80177D08 * 0.54f, 0.1f, 2.0f, 0.0001f); D_801779E4 = Math_SmoothStepToF(&player->unk_0AC, player->unk_0B8, 0.1f, player->unk_0B4, 0.0001f); D_801779F4 = Math_SmoothStepToF(&player->unk_0B0, player->unk_0BC, 0.1f, player->unk_0B4, 0.0001f); } - if (player->unk_210 != 0) { - player->unk_210--; + if (player->timer_210 != 0) { + player->timer_210--; Math_SmoothStepToF(&player->unk_114, player->unk_118, 0.03f, 0.5f, 0.0001f); Math_SmoothStepToF(&player->unk_120, player->unk_124, 0.03f, 0.5f, 0.0001f); } else { @@ -3211,34 +3211,34 @@ void func_800AE278(Player* player) { bool var_v0 = false; if (gCamCount != 1) { - if (player->unk_074 > 12000.0f) { + if (player->pos.x > 12000.0f) { var_v0 = true; - player->unk_074 -= 24000.0f; - player->unk_040.x -= 24000.0f; - player->unk_04C.x -= 24000.0f; + player->pos.x -= 24000.0f; + player->camEye.x -= 24000.0f; + player->camAt.x -= 24000.0f; } - if (player->unk_074 < -12000.0f) { + if (player->pos.x < -12000.0f) { var_v0 = true; - player->unk_074 += 24000.0f; - player->unk_040.x += 24000.0f; - player->unk_04C.x += 24000.0f; + player->pos.x += 24000.0f; + player->camEye.x += 24000.0f; + player->camAt.x += 24000.0f; } - if (player->unk_07C > 12000.0f) { + if (player->pos.z > 12000.0f) { var_v0 = true; - player->unk_07C -= 24000.0f; - player->unk_040.z -= 24000.0f; - player->unk_04C.z -= 24000.0f; + player->pos.z -= 24000.0f; + player->camEye.z -= 24000.0f; + player->camAt.z -= 24000.0f; } - if (player->unk_07C < -12000.0f) { + if (player->pos.z < -12000.0f) { var_v0 = true; - player->unk_07C += 24000.0f; - player->unk_040.z += 24000.0f; - player->unk_04C.z += 24000.0f; + player->pos.z += 24000.0f; + player->camEye.z += 24000.0f; + player->camAt.z += 24000.0f; } if (var_v0) { - D_80177B00[player->unk_1C4][0] = D_80177B00[player->unk_1C4][1] = D_80177B00[player->unk_1C4][2] = - D_80177B00[player->unk_1C4][3] = 0; + D_80177B00[player->num][0] = D_80177B00[player->num][1] = D_80177B00[player->num][2] = + D_80177B00[player->num][3] = 0; } } else { var_fv1 = 12500.0f; @@ -3248,11 +3248,11 @@ void func_800AE278(Player* player) { var_fv1 = 10000.0f; } else if (gCurrentLevel == LEVEL_SECTOR_Z) { var_fv1 = 20000.0f; - } else if ((gCurrentLevel == LEVEL_VENOM_2) && (D_80177AB0 >= 4)) { + } else if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_80177AB0 >= 4)) { var_fv1 = 100000.0f; } - if ((var_fv1 < fabsf(player->unk_074)) || (var_fv1 < fabsf(player->unk_07C))) { - player->unk_1C8 = 5; + if ((var_fv1 < fabsf(player->pos.x)) || (var_fv1 < fabsf(player->pos.z))) { + player->state_1C8 = PLAYERSTATE_1C8_5; player->unk_19C = 0; player->unk_1D0 = 0; player->unk_000 = 0.0f; @@ -3261,118 +3261,3126 @@ void func_800AE278(Player* player) { } } -void func_800AE4A4(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800AE4A4.s") +void func_800AE4A4(Player* player) { + f32 sp7C; + f32 sp78; + f32 var_fa0; + f32 var_fa1; + f32 var_fv0; + f32 var_fv1; + f32 temp; + f32 sp60; + f32 sp5C; + f32 sp58; + Vec3f sp4C; + Vec3f sp40; -void func_800AECAC(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800AECAC.s") + D_80177968 = 2.3f; + D_80177970 = 0.68f; + sp7C = -gInputPress->stick_x; + sp78 = gInputPress->stick_y; + Math_SmoothStepToAngle(&player->unk_4D8, 0.0f, 0.1f, 5.0f, 0.01f); + Matrix_RotateZ(gCalcMatrix, -player->unk_12C * M_DTOR, 0); + sp4C.x = sp7C * 0.75f; + sp4C.y = sp78 * 0.75f; + sp4C.z = 0.0f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp4C, &sp40); + sp60 = sp40.y; + sp5C = sp58 = 0.0f; + if (sp40.x < -5.0f) { + sp5C = -sp40.x; + } + if (sp40.x > 5.0f) { + sp58 = sp40.x; + } + Math_SmoothStepToF(&player->wings.unk_28, 0.0f, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_04, -sp60 + sp5C, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_08, -sp60 - sp5C, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_0C, -sp60 + sp58, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_10, -sp60 - sp58, 0.1f, 100.0f, 0.0f); + var_fa0 = 0.1f; + if ((player->unk_12C > 10.0f) && (sp7C > 0)) { + D_80177968 *= 2.0f; + var_fa0 = 0.2f; + } + if ((player->unk_12C < -10.0f) && (sp7C < 0)) { + D_80177968 *= 2.0f; + var_fa0 = 0.2f; + } + Math_SmoothStepToF(&player->unk_0E8, sp7C * D_80177970, var_fa0, D_80177968, 0.03f); + var_fa0 = 0.03f; + if ((player->unk_12C > 10.0f) && (sp7C > 0)) { + var_fa0 = 0.05f; + } + if ((player->unk_12C < -10.0f) && (sp7C < 0)) { + var_fa0 = 0.05f; + } + Math_SmoothStepToF(&player->unk_11C, player->unk_0E8 * var_fa0, 0.1f, 0.8f, 0.05f); + player->unk_114 += player->unk_11C; + if (player->unk_114 >= 360.0f) { + player->unk_114 -= 360.0f; + } + if (player->unk_114 < 0.0f) { + player->unk_114 += 360.0f; + } + D_80177968 = 2.3f; + var_fa1 = 0.1f; + temp = -sp78 * D_80177970; + if ((temp <= 0.0f) && (player->pos.y < (D_80177940 + 50.0f))) { + D_80177968 *= 2.0f; + temp = 0.0f; + var_fa1 = 0.2f; + } + Math_SmoothStepToF(&player->unk_0E4, temp, var_fa1, D_80177968, 0.03f); + var_fv1 = 1.5f; + if (player->pos.y < (D_80177940 + 70.0f)) { + var_fv1 = 0.8f; + } + if (!(((gInputHold->button & R_TRIG) && (gInputHold->button & Z_TRIG)) || + (!(gInputHold->button & R_TRIG) && !(gInputHold->button & Z_TRIG)))) { + var_fv1 = 0.1f; + } + var_fv0 = 4.0f; + if (sp7C == 0) { + var_fv0 = 1.0f; + } + Math_SmoothStepToF(&player->unk_0EC, sp7C * 0.6f * var_fv1, 0.1f, var_fv0, 0.03f); + player->unk_0F8 = player->unk_0EC + player->unk_12C + player->unk_130; + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); + sp4C.x = 0.0f; + sp4C.y = 0.0f; + if (player->wings.rightState <= WINGSTATE_BROKEN) { + sp4C.x -= 2.5f; + sp4C.y -= 2.5f; + } + if (player->wings.leftState <= WINGSTATE_BROKEN) { + sp4C.x += 2.5f; + sp4C.y -= 2.5f; + } + sp4C.z = player->unk_0D0 + player->unk_110; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp4C, &sp40); + player->vel.x = sp40.x; + player->vel.z = sp40.z; + player->vel.y = sp40.y; + player->pos.x += player->vel.x; + player->pos.y += player->vel.y; + if ((player->unk_0A0 < player->pos.y) && (player->vel.y >= 0.0f)) { + Math_SmoothStepToF(&player->pos.y, player->unk_0A0, 0.1f, fabsf(player->vel.y * 1.5f) + 5.0f, 0.0f); + } + if ((player->pos.y < player->unk_0A4) && (player->vel.y <= 0.0f)) { + if (player->unk_0A4 >= 0.0f) { + player->pos.y = player->unk_0A4; + } else { + Math_SmoothStepToF(&player->pos.y, player->unk_0A4, 0.1f, fabsf(player->vel.y * 1.5f) + 5.0f, 0.0f); + } + } + player->pos.z += player->vel.z; + if (player->unk_0A0 - 100.0f < player->pos.y) { + player->unk_228 = 8; + } + if (player->pos.y < -(player->unk_0A0 - 100.0f)) { + player->unk_228 = 4; + } + func_800AE278(player); + player->unk_138 = player->pos.z; + func_800A4460(player); + func_800A46A0(player); +} + +void func_800AECAC(Player* player) { + f32 temp; + f32 sp58; + Vec3f sp4C; + Vec3f sp40; + + sp58 = 60.0f; + if (gVersusMode) { + D_80177B00[player->num][0] = D_80177B00[player->num][1] = D_80177B00[player->num][2] = + D_80177B00[player->num][3] = 0; + } + if (player->unk_4D8 > 240.0f) { + sp58 = -50.0f; + } + Math_SmoothStepToF(&player->wings.unk_04, sp58, 0.3f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_08, sp58, 0.3f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_0C, sp58, 0.3f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_10, sp58, 0.3f, 100.0f, 0.0f); + if (player->unk_4D8 < 180.0f) { + player->pos.y += 2.0f; + } + player->unk_2B4 = 1; + if (gLevelMode == LEVELMODE_ON_RAILS) { + player->unk_2BC += 2.0f; + } else { + player->unk_2BC += 1.0f; + } + if (player->unk_2BC > 90.0f) { + player->unk_2BC = 90.0f; + } + player->unk_190 = 2; + Math_SmoothStepToF(&player->unk_4D8, 360.0f, 0.1f, 5.0f, 0.001f); + if (player->unk_4D8 > 350.0f) { + player->unk_4DC = 0; + if (gLevelMode != LEVELMODE_ON_RAILS) { + player->unk_018 = 0.05f; + player->unk_014 = 0.05f; + } else { + player->unk_238 = player->unk_198; + if (player->unk_238 != 0) { + player->unk_014 = 0.0f; + } + } + } + Math_SmoothStepToF(&player->unk_0EC, 0.0f, 0.1f, 5.0f, 0.0f); + Math_SmoothStepToF(&player->unk_0E4, 0.0f, 0.1f, 5.0f, 0.0f); + temp = -gInputPress->stick_x * 0.68f; + Math_SmoothStepToF(&player->unk_0E8, temp, 0.1f, 2.0f, 0.0f); + player->unk_0F8 = player->unk_0EC + player->unk_12C + player->unk_130; + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_120 + player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); + sp4C.x = 0.0f; + sp4C.y = 0.0f; + sp4C.z = player->unk_0D0; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp4C, &sp40); + player->vel.x = sp40.x; + player->vel.z = sp40.z; + player->vel.y = sp40.y; + player->pos.x += player->vel.x; + player->pos.y += player->vel.y; + if (player->pos.y < player->unk_0A4 + player->unk_0B0) { + player->pos.y = player->unk_0A4 + player->unk_0B0; + player->vel.y = 0.0f; + } + player->pos.z += player->vel.z; + player->unk_138 = player->pos.z; + func_800A46A0(player); +} + +#ifdef NON_MATCHING +// baffling control flow +// https://decomp.me/scratch/5Iel8 +void func_800AF07C(Player* player) { + f32 sp9C; + f32 sp98; + f32 var_fa0; + f32 var_fa1; + f32 var_fv0; + f32 var_fv1; + f32 sp84; + s32 temp; + f32 sp7C; + f32 sp78; + f32 sp74; + Vec3f sp68; + Vec3f sp5C; + Vec3f sp50; + Vec3f sp44; + + D_80177968 = 2.3f; + D_80177970 = 0.68f; + + if ((gInputPress->stick_x == 0) && (gInputPress->stick_y == 0)) { + // wut + } else { + } + sp9C = -gInputPress->stick_x; + sp98 = gInputPress->stick_y; + Math_SmoothStepToAngle(&player->unk_4D8, 0.0f, 0.1f, 5.0f, 0.01f); + if (player->unk_238 != 0) { + Matrix_RotateZ(gCalcMatrix, player->unk_12C * M_DTOR, 0); + sp68.z = 0.0f; + sp68.x = sp9C; + sp68.y = sp98; + Matrix_MultVec3f(gCalcMatrix, &sp68, &sp5C); + sp9C = sp5C.x; + sp98 = sp5C.y; + } else { + Matrix_RotateZ(gCalcMatrix, -player->unk_12C * M_DTOR, 0); + sp68.z = 0.0f; + sp68.x = sp9C * 0.75f; + sp68.y = sp98 * 0.75f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp68, &sp5C); + sp7C = sp5C.y; + sp78 = sp74 = 0.0f; + + if (sp5C.x < -5.0f) { + sp78 = -sp5C.x; + } + if (sp5C.x > 5.0f) { + sp74 = sp5C.x; + } + + Math_SmoothStepToF(&player->wings.unk_28, 0.0f, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_04, -sp7C + sp78, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_08, -sp7C - sp78, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_0C, -sp7C + sp74, 0.1f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_10, -sp7C - sp74, 0.1f, 100.0f, 0.0f); + } + sp84 = 0.1f; + if ((player->unk_12C > 10.0f) && (sp9C > 0)) { + sp84 = 0.2f; + D_80177968 *= 2.0f; + } + if ((player->unk_12C < -10.0f) && (sp9C < 0)) { + sp84 = 0.2f; + D_80177968 *= 2.0f; + } + if (player->unk_1DC != 0) { + sp84 = 0.2f; + D_80177968 = 6.8999996f; + } + Math_SmoothStepToF(&player->unk_0E8, sp9C * D_80177970, sp84, D_80177968, 0.03f); + D_80177968 = 2.3f; + sp84 = 0.1f; + var_fa1 = -sp98 * D_80177970; + if ((var_fa1 <= 0.0f) && (player->pos.y < (D_80177940 + 50.0f))) { + var_fa1 = 0.0f; + sp84 = 0.2f; + D_80177968 *= 2.0f; + } + Math_SmoothStepToF(&player->unk_0E4, var_fa1, sp84, D_80177968, 0.03f); + var_fv1 = 1.0f; + if (player->pos.y < (D_80177940 + 70.0f)) { + var_fv1 = 0.8f; + } + if (!(((gInputHold->button & R_TRIG) && (gInputHold->button & Z_TRIG)) || + (!(gInputHold->button & R_TRIG) && !(gInputHold->button & Z_TRIG)))) { + var_fv1 = 0.1f; + } + var_fv0 = 4.0f; + if (sp9C == 0) { + var_fv0 = 1.0f; + } + Math_SmoothStepToF(&player->unk_0EC, sp9C * 0.6f * var_fv1, 0.1f, var_fv0, 0.03f); + Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + 180.0f) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, -((player->unk_0E4 + player->unk_4D8) * M_DTOR), 1); + sp68.x = 0.0f; + sp68.y = 0.0f; + sp68.z = player->unk_0D0; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp68, &sp44); + sp44.x *= 1.4f; + sp44.y *= 1.4f; + Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, player->unk_120 * M_DTOR, 1); + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp5C); + sp68.x = 0.0f; + sp68.y = 0.0f; + sp68.z = -player->unk_110; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp68, &sp50); + player->vel.x = (sp5C.x + sp50.x) * player->unk_150; + player->vel.y = (sp5C.y + sp50.y) * player->unk_150; + player->vel.z = sp5C.z + sp50.z; + if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { + player->vel.z += D_E9F1D0_801A7F58; + } + sp68.x = 0.0f; + sp68.y = 0.0f; + sp68.z = -player->unk_110; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp68, &sp50); + if (player->wings.rightState <= WINGSTATE_BROKEN) { + player->vel.x += 2.5f; + player->vel.y -= 2.5f; + } + if (player->wings.leftState <= WINGSTATE_BROKEN) { + player->vel.x -= 2.5f; + player->vel.y -= 2.5f; + } + if (player->pos.x > (player->unk_0AC + (player->unk_09C - 100.0f))) { + player->unk_228 = 1; + } + if (player->pos.x < (player->unk_0AC - (player->unk_09C - 100.0f))) { + player->unk_228 = 2; + } + if (player->pos.y > (player->unk_0B0 + (player->unk_0A0 - 100.0f))) { + player->unk_228 = 8; + } + if (player->pos.y < (player->unk_0B0 - (player->unk_0A0 - 100.0f))) { + player->unk_228 = 4; + } + player->pos.x += player->vel.x; + if (player->pos.x > (player->unk_09C + player->unk_0AC)) { + player->pos.x = player->unk_09C + player->unk_0AC; + player->vel.x = 0.0f; + player->unk_0D8.x = 0.0f; + } + if (player->pos.x < (player->unk_0AC - player->unk_09C)) { + player->pos.x = player->unk_0AC - player->unk_09C; + player->vel.x = 0.0f; + player->unk_0D8.x = 0.0f; + } + player->pos.y += player->vel.y; + if (player->pos.y > (player->unk_0A0 + player->unk_0B0)) { + player->pos.y = player->unk_0A0 + player->unk_0B0; + player->vel.y = 0.0f; + player->unk_0D8.y = 0.0f; + } + if (player->pos.y < (player->unk_0A4 + player->unk_0B0)) { + player->pos.y = player->unk_0A4 + player->unk_0B0; + player->vel.y = 0.0f; + player->unk_0D8.y = 0.0f; + } + player->pos.z += player->vel.z; + func_800A4460(player); +} +#else void func_800AF07C(Player* player); #pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800AF07C.s") +#endif -void func_800AF928(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800AF928.s") +void func_800AF928(Player* player) { + f32 sp5C; + f32 var_fa0; + f32 var_fa1; + f32 var_fv1; + Vec3f sp44; + Vec3f sp38; -void func_800B00C0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B00C0.s") + var_fv1 = (gInputPress->stick_y * 0.7f) - 8.0f; + if (var_fv1 < -40.0f) { + var_fv1 = -40.0f; + } + if (var_fv1 > 0) { + var_fv1 = 0; + } + if (var_fv1 > player->unk_17C) { + player->unk_17C += 3.0f; + } + if (var_fv1 < player->unk_17C) { + player->unk_17C -= 3.0f; + } + if (player->unk_180 < 0) { + player->unk_180 += 3.0f; + } + if (player->unk_180 > 0) { + player->unk_180 -= 3.0f; + } + D_80177968 = 3.0f; + D_80177970 = 0.6666f; + sp5C = gInputPress->stick_x; + if (sp5C == 0) { + Math_SmoothStepToF(&player->unk_0E8, -sp5C * D_80177970, 0.1f, D_80177968 * 0.5f, 0.1f); + } else { + Math_SmoothStepToF(&player->unk_0E8, -sp5C * D_80177970, 0.1f, D_80177968, 0.1f); + } + player->unk_108 = player->unk_0E8; + var_fa0 = 0.03f; + var_fa1 = 1.5f; + if ((player->unk_12C > 10.0f) && (sp5C < 0.0f)) { + var_fa0 = 0.1f; + var_fa1 = 4.0f; + } + if ((player->unk_12C < -10.0f) && (sp5C > 0.0f)) { + var_fa0 = 0.1f; + var_fa1 = 4.0f; + } + if (player->unk_1DC != 0) { + if ((player->unk_1EC > 0) && (sp5C < 0.0f)) { + var_fa0 = 0.2f; + var_fa1 = 20.0f; + } + if ((player->unk_1EC < 0) && (sp5C > 0.0f)) { + var_fa0 = 0.2f; + var_fa1 = 20.0f; + } + } + Math_SmoothStepToF(&player->unk_11C, player->unk_0E8 * var_fa0, 0.1f, var_fa1, 0.05f); + player->unk_114 += player->unk_11C; + player->unk_114 = Math_ModF(player->unk_114, 360.0f); + Matrix_RotateX(gCalcMatrix, player->unk_104 * M_DTOR, 0); + Matrix_RotateZ(gCalcMatrix, player->unk_10C * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); + sp44.x = 0.0f; + sp44.y = 0.0f; + sp44.z = player->unk_0D0; + sp44.z -= fabsf((player->unk_184 * 0.4f * player->unk_0D0) / 15.0f); + sp44.z += __sinf(player->unk_000 * M_DTOR) * player->unk_110; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); + player->vel.x = sp38.x; + player->vel.z = sp38.z; + if (player->unk_16C > 0.2f) { + Math_SmoothStepToF(&player->unk_184, player->unk_0D0 * 0.5f, 1.0f, 1.0f, 0); + } + if (player->unk_170 > 0.2f) { + Math_SmoothStepToF(&player->unk_184, -player->unk_0D0 * 0.5f, 1.0f, 1.0f, 0); + } + if (!(player->unk_170 > 0.2f) && !(player->unk_16C > 0.2f) && (player->unk_1D4 != 0)) { + Math_SmoothStepToF(&player->unk_184, 0.0f, 1.0f, 0.75f, 0.0f); + } + if (player->unk_1DC != 0) { + if (player->unk_1EC < 0) { + player->unk_184 = 15.0f; + } + if (player->unk_1EC > 0) { + player->unk_184 = -15.0f; + } + } + sp44.x = -player->unk_184; + sp44.y = 0; + sp44.z = 0; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); + player->pos.x += sp38.x; + player->pos.z += sp38.z; + player->pos.x += player->vel.x; + player->vel.y -= player->unk_0D4; + player->pos.y += player->vel.y; + if (player->unk_1D4 != 0) { + Math_SmoothStepToAngle(&player->unk_0E4, player->unk_104, 0.2f, 5.0f, 0.005f); + Math_SmoothStepToAngle(&player->unk_0EC, player->unk_10C, 0.2f, 5.0f, 0.005f); + Math_SmoothStepToF(&player->unk_000, 0.0f, 0.1f, 5.0f, 0.00001f); + } + player->unk_1D4 = 0; + if (player->pos.y <= D_80177940 - 5.0f) { + player->pos.y = D_80177940 - 5.0f; + if (player->vel.y < -20.0f) { + player->unk_1F4 = 20; + } + player->vel.y = 0.0f; + player->unk_1D4 = 1; + } + if (player->vel.y < -80.0f) { + player->vel.y = -80.0f; + } + if (player->vel.y > 20.0f) { + player->vel.y = 20.0f; + } + player->pos.z += player->vel.z; + func_800AE278(player); + player->unk_138 = player->pos.z; + player->unk_0F8 = player->unk_0EC + player->unk_12C + player->unk_130; + if (player->unk_1D4 != 0) { + player->unk_0F4 += player->unk_0D0 * 5.0f; + player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR) * 0.7f; + } + func_800A46A0(player); +} -void func_800B0194(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B0194.s") +void func_800B00C0(Player* player) { + f32 sp2C = 0.0f; + f32 sp28 = 0.7f; + f32 sp24 = 0.1f; -void func_800B0F50(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B0F50.s") + if (gInputHold->button & R_TRIG) { + sp2C = 16.0f; + sp28 = D_800D30F4[gPlayerNum]; + sp24 = D_800D3104[gPlayerNum]; + } + Math_SmoothStepToF(&player->unk_0D0, sp2C, 1.0f, 1.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_008, sp28, 0.1f, sp24, 0.00001f); +} -void func_800B2130(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B2130.s") +void func_800B0194(Player* player) { + Vec3f sp78[30]; + f32 sp74; + f32 sp70; + f32 var_fv0; + f32 var_fa0; + f32 sp64; + Vec3f sp58; + Vec3f sp4C; + Vec3f* sp48; + s32 sp44; + s32 pad; -void func_800B22C0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B22C0.s") + player->unk_034 = 0.0f; + var_fa0 = 0.0f; + if (player->pos.y > 10.0f) { + var_fa0 = 20.0f; + } + if (player->pos.y > 300.0f) { + var_fa0 = 40.0f; + } + sp74 = gInputPress->stick_y * 0.8f; + if (sp74 < -40.0f) { + sp74 = -40.0f; + } + if (var_fa0 < sp74) { + sp74 = var_fa0; + } + Math_SmoothStepToF(&player->unk_154, sp74, 0.1f, 3.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_180, 0.0f, 0.15f, 5.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_158, sp74, 0.2f, 5.0f, 0.00001f); + D_80177968 = 3.0f; + D_80177970 = 0.666f; + sp74 = gInputPress->stick_x; + sp70 = gInputPress->stick_y; + Math_SmoothStepToF(&player->unk_0E8, -sp74 * D_80177970 * 0.6f, 0.5f, D_80177968, 0.001f); + Math_SmoothStepToF(&player->unk_0EC, -sp74 * D_80177970 * 0.2f * player->unk_0D0 / 15.0f, 0.2f, 5.0f, 0.001f); + player->unk_0F8 = player->unk_0EC; + if ((sp74 != 0.0f) || (sp70 != 0.0f)) { + Math_SmoothStepToF(&player->unk_15C, sp74 * D_80177970, 0.9f, 2.0f * D_80177968, 0.1f); + Math_SmoothStepToF(&player->unk_164, sp74 * 0.3f, 0.1f, 10.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_168, -sp74 * 0.3f, 0.1f, 10.0f, 0.00001f); + } else { + if (((gFrameCount & 0xF) == 0) && (Rand_ZeroOne() < 0.5f)) { + player->unk_17C = (Rand_ZeroOne() - 0.5f) * 100.0f; + } + if (((gFrameCount & 0xF) == 3) && (Rand_ZeroOne() < 0.5f)) { + player->unk_174 = (Rand_ZeroOne() - 0.2f) * 50.0f; + } + if (((gFrameCount & 0xF) == 10) && (Rand_ZeroOne() < 0.5f)) { + player->unk_178 = (Rand_ZeroOne() - 0.2f) * 50.0f; + } + Math_SmoothStepToF(&player->unk_15C, player->unk_17C, 0.15f, 10.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_164, player->unk_174, 0.1f, 10.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_168, player->unk_178, 0.1f, 10.0f, 0.00001f); + } + player->unk_108 = player->unk_0E8; + if (player->unk_0D0 < 1.5f) { + var_fv0 = 0.12f; + var_fa0 = 3.0f; + } else { + var_fv0 = 0.08f; + var_fa0 = 1.5f; + } + Math_SmoothStepToF(&player->unk_11C, -sp74 * D_80177970 * var_fv0, 0.2f, var_fa0, 0.0f); + player->unk_114 += player->unk_11C; + player->unk_114 = Math_ModF(player->unk_114, 360.0f); + Matrix_RotateX(gCalcMatrix, player->unk_104 * M_DTOR, 0); + Matrix_RotateZ(gCalcMatrix, player->unk_10C * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); + sp58.x = 0.0f; + sp58.y = 0.0f; + sp58.z = player->unk_0D0; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp58, &sp4C); + player->vel.x = sp4C.x; + player->vel.z = sp4C.z; + player->pos.x += player->vel.x; + if ((player->pos.y < 40.0f) || (player->pos.y > 670.0f)) { + player->unk_10C = 0.0f; + player->unk_104 = 0.0f; + } + Math_SmoothStepToAngle(&player->unk_0FC, player->unk_104, 0.15f, 15.0f, 0.005f); + Math_SmoothStepToAngle(&player->unk_100, player->unk_10C, 0.15f, 15.0f, 0.005f); + if (player->unk_1D4 != 0) { + if (player->unk_0D0 > 1.0f) { + player->unk_00C += player->unk_008; + if ((s32) player->unk_00C >= Animation_GetFrameCount(&D_301CFEC)) { + player->unk_00C = 0.0f; + } + player->unk_080 = 2.0f * __sinf((player->unk_20C + 7) * 24.0f * M_DTOR); + if (player->unk_080 < -0.5f) { + player->unk_080 = -0.5f; + } + player->unk_080 -= 3.0f; + player->unk_20C = player->unk_00C; + switch (gPlayerNum) { + case 0: + sp44 = Animation_GetFrameData(&D_301CFEC, player->unk_20C, sp78); + break; + case 1: + sp44 = Animation_GetFrameData(&D_301D888, player->unk_20C, sp78); + break; + case 2: + sp44 = Animation_GetFrameData(&D_301E19C, player->unk_20C, sp78); + break; + case 3: + sp44 = Animation_GetFrameData(&D_301C3A8, player->unk_20C, sp78); + break; + } + Math_SmoothStepToVec3fArray(sp78, player->jointTable, 1, sp44, 1.0f, player->unk_010, 0.01f); + if (player->unk_010 < 50.0f) { + player->unk_010 += 2.0f; + } + sp64 = player->unk_0D0; + if (gFrameCount & 4) { + sp64 = 2.0f * player->unk_0D0; + } + Math_SmoothStepToF(&player->unk_164, sp64, 0.5f, 20.0f, 0.0001f); + Math_SmoothStepToF(&player->unk_168, sp64, 0.5f, 20.0f, 0.0001f); + } else { + if (player->unk_010 > 0.0f) { + player->unk_010 -= 5.0f; + if (player->unk_010 <= 0.0f) { + player->unk_010 = 0.0f; + } + } + switch (gPlayerNum) { + case 0: + sp48 = SEGMENTED_TO_VIRTUAL(D_302E56C); + break; + case 1: + sp48 = SEGMENTED_TO_VIRTUAL(D_302E830); + break; + case 2: + sp48 = SEGMENTED_TO_VIRTUAL(D_302E74C); + break; + case 3: + sp48 = SEGMENTED_TO_VIRTUAL(D_302E65C); + break; + } + Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 0x18, 0.2f, 10.0f, 0.01f); + Math_SmoothStepToF(&player->unk_080, -3.0f, 0.1f, 2.0f, 0.1f); + Math_SmoothStepToF(&player->unk_164, 0.0f, 0.03f, 1.0f, 0.0001f); + Math_SmoothStepToF(&player->unk_168, 0.0f, 0.03f, 1.0f, 0.0001f); + player->unk_20C = 0; + player->unk_00C = 0.0f; + } + } + if (player->unk_1D4 == 0) { + switch (gPlayerNum) { + case 0: + sp48 = SEGMENTED_TO_VIRTUAL(D_302E95C); + break; + case 1: + sp48 = SEGMENTED_TO_VIRTUAL(D_302EC20); + break; + case 2: + sp48 = SEGMENTED_TO_VIRTUAL(D_302EB3C); + break; + case 3: + sp48 = SEGMENTED_TO_VIRTUAL(D_302EA4C); + break; + } + Math_SmoothStepToVec3fArray(sp48, player->jointTable, 1, 0x18, 0.2f, 10.0f, 0.01f); + } + player->unk_0D4 = 2.0f; + if ((gInputPress->button & Z_TRIG) && (player->unk_1D4 != 0)) { + player->vel.y = 12.0f; + } + if ((gInputHold->button & Z_TRIG) && (player->vel.y > 0.0f)) { + player->unk_0D4 = 1.5f; + } + player->unk_1D4 = 0; + player->vel.y -= player->unk_0D4; + player->pos.y += player->vel.y; + if (player->pos.y <= D_80177940) { + player->unk_1D4 = 1; + player->pos.y = 0.0f; + player->vel.y = 0.0f; + player->unk_0E4 += (player->pos.y - player->unk_0E4) * 0.05f; + } + if (player->vel.y < -50.0f) { + player->vel.y = -50.0f; + } + if (player->vel.y > 20.0f) { + player->vel.y = 20.0f; + } + player->pos.z += player->vel.z; + func_800AE278(player); + player->unk_138 = player->pos.z; +} -void func_800B2574(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B2574.s") +void func_800B0F50(Player* playerx) { + s32 j; + Vec3f* sp38; + ObjectInit* sp34; + s32 i; + s16 sp2E; + Player* player = playerx; // fake? -void func_800B2BE0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B2BE0.s") + D_80177BAC = 0; + player->shields = 0xFF; + if (gVersusMode) { + switch (gHandicap[gPlayerNum]) { + case 1: + player->shields = 0xBF; + break; + case 2: + player->shields = 0x7F; + break; + } + } + player->wings.rightState = WINGSTATE_INTACT; + player->wings.leftState = WINGSTATE_INTACT; + if (gExpertMode) { + gLeftWingHealth[gPlayerNum] = 10; + gRightWingHealth[gPlayerNum] = 10; + } else { + gLeftWingHealth[gPlayerNum] = 60; + gRightWingHealth[gPlayerNum] = 60; + } + D_Timer_80177A00[gPlayerNum] = D_Timer_80177A38[gPlayerNum] = D_Timer_80177A70[gPlayerNum] = + D_Timer_80177A88[gPlayerNum] = D_80177AE8[gPlayerNum] = D_80177AD0[gPlayerNum] = gChargeTimers[gPlayerNum] = + D_80177B00[gPlayerNum][0] = D_80177B00[gPlayerNum][1] = D_80177B00[gPlayerNum][2] = + D_80177B00[gPlayerNum][3] = 0; + D_80177D40[gPlayerNum] = D_80177D58[gPlayerNum] = D_80177D70[gPlayerNum] = D_80177D88[gPlayerNum] = + D_80177990[gPlayerNum] = D_801779A8[gPlayerNum] = D_80177AA0[gPlayerNum] = 0.0f; + D_80177AB8[gPlayerNum] = 0.0f; + player->unk_190 = 1.0f; + player->unk_194 = 1.0f; + gRadioState = D_80177D68 = D_801782A4 = 0; + D_8017853C = D_80177D50 = 0.0f; + player->camEye.z = 400.0f; + player->unk_148 = 0.77699995f; + player->unk_14C = 0.77699995f; + player->unk_01C = 1.0f; + player->unk_068 = -1000.0f; + player->camAt.z = player->camEye.z - 1000.0f; + D_80177950 = 1.0f; + if ((gLevelType == LEVELTYPE_SPACE) && (gCurrentLevel != LEVEL_BOLSE)) { + player->unk_240 = 1; + player->unk_0A8 = 3000.0f; + player->unk_09C = 700.0f; + player->unk_0A0 = 612.0f; + player->unk_0A4 = -544.0f; + if (gCurrentLevel == LEVEL_UNK_15) { + player->unk_0A0 = 3000.0f; + player->unk_0A4 = -3000.0f; + } + } else { + player->unk_09C = 700.0f; + player->unk_0A0 = 680.0f; + player->unk_0A4 = D_80177940 + 40.0f; + player->unk_0A8 = 3000.0f; + } + player->unk_0D0 = D_80161A54; + player->pos.y = 350.0f; + switch (gCurrentLevel) { + case LEVEL_MACBETH: + case LEVEL_TITANIA: + player->form = FORM_LANDMASTER; + player->unk_014 = 1.0f; + player->unk_14C = 0.67f; + player->unk_148 = 0.67f; + player->unk_0D0 = 15.0f; + player->unk_0D4 = 3.0f; + player->unk_09C = 500.0f; + player->unk_0A0 = 500.0f; + player->unk_0A4 = -500.0f; + if (gCurrentLevel == LEVEL_TITANIA) { + player->pos.y = 150.0f; + } else { + player->pos.y = 0.0f; + } + break; + case LEVEL_AQUAS: + player->form = FORM_BLUE_MARINE; + player->unk_0D4 = 0.0f; + player->unk_09C = 700.0f; + player->unk_0D0 = 20.0f; + player->unk_0A0 = 720.0f; + player->unk_0A4 = D_80177940 + 30.0f; + break; + case LEVEL_SOLAR: + case LEVEL_ZONESS: + player->unk_0A4 = -450.0f; + break; + } + if (gCurrentLevel != LEVEL_CORNERIA) { + D_80161A8C = 0; + } + gGoldRingCount[0] = D_80161A94[0]; + do { + if (gGoldRingCount[0] > 3) { + gGoldRingCount[0] -= 3; + } + } while (gGoldRingCount[0] > 3); -void func_800B2C00(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B2C00.s") + if (gGoldRingCount[0] == 3) { + gGoldRingCount[0] = 0; + } + gHitCount = gSavedHitCount; + if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) || ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 2))) { + if (D_80177C9C != 0) { + player->shields = D_80177C9C - 1; + gGoldRingCount[0] = D_80177C94; + player->wings.rightState = D_80177CAC; + player->wings.leftState = D_80177CB4; + gRightWingHealth[0] = D_80177CBC; + gLeftWingHealth[0] = D_80177CC4; + if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { + D_80177C94 = D_80177CAC = D_80177CB4 = D_80177CBC = D_80177CC4 = D_80177C9C = 0; + } + } + gHitCount = gSavedHitCount = D_80177CA4; + } + D_80161720 = 0.0f; + D_80161724 = 0.0f; + D_80161728 = 0.0f; + D_8016172C = gHitCount; + D_80161730 = 0; + D_80161684 = D_80161A50; + D_80177DC8 = D_80177CA0; + D_80161A88 = D_80161A8C; + player->unk_144 = D_80177CB0; + D_80177D20 = player->unk_144; + player->unk_138 = -player->unk_144; + player->pos.z = -player->unk_144; + if ((D_80177CA0 > 0) && (gLevelMode == LEVELMODE_ON_RAILS)) { + if (gCurrentLevel == LEVEL_MACBETH) { + sp2E = D_80177DC8; + func_E6A810_801AD080(); + D_80177DC8 = sp2E; + } + func_80062568(); + } + if (player->form == FORM_LANDMASTER) { + player->pos.z -= 200.0f; + player->unk_138 -= 200.0f; + } + player->camEye.y = (player->pos.y * player->unk_148) + 10.0f; + player->camEye.x = player->pos.x * player->unk_148; -void func_800B3010(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B3010.s") + D_801779E8.x = D_801779E8.y = D_801779E8.z = D_801779D8.x = D_801779D8.y = D_801779D8.z = 0.0f; -void func_800B3314(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B3314.s") + if (gVersusMode) { + gLaserStrength[gPlayerNum] = 0; + player->pos.y = 500.0f; + player->pos.x = D_800D3114[gPlayerNum]; + player->pos.z = D_800D3124[gPlayerNum]; + player->unk_114 = D_800D3154[gPlayerNum]; + player->form = D_80177870[gPlayerNum]; + switch (player->form) { + case FORM_ARWING: + break; + case FORM_LANDMASTER: + player->pos.y = 0.0f; + player->unk_0D0 = 15.0f; + player->unk_0D4 = 3.0f; + break; + case FORM_ON_FOOT: + player->pos.y = 0.0f; + player->unk_0D0 = 15.0f; + player->unk_068 = 0; + switch (gPlayerNum) { + case 0: + sp38 = SEGMENTED_TO_VIRTUAL(D_302E56C); + break; + case 1: + sp38 = SEGMENTED_TO_VIRTUAL(D_302E830); + break; + case 2: + sp38 = SEGMENTED_TO_VIRTUAL(D_302E74C); + break; + case 3: + sp38 = SEGMENTED_TO_VIRTUAL(D_302E65C); + break; + } + for (j = 0; j < 30; j++, sp38++) { + player->jointTable[j] = *sp38; + } + break; + } + func_800B7184(player, 1); + } + player->state_1C8 = PLAYERSTATE_1C8_3; + player->unk_204 = gLevelType; + if ((gLevelMode == LEVELMODE_ALL_RANGE) && !gVersusMode) { + player->pos.z = 8000.0f; + player->pos.y = 670.0f; + player->unk_0A0 = 730.0f; + player->unk_204 = 2; + if ((gCurrentLevel == LEVEL_VENOM_ANDROSS) && (D_8017827C == 1)) { + player->pos.x = -7910.0f; + player->pos.y = 300.0f; -void func_800B39E0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B39E0.s") + player->pos.z = -11808.0f; + player->unk_114 = 188.0f; + player->unk_240 = 1; + } + func_800B63BC(player, 1); + } else { + player->unk_014 = 1.0f; + player->unk_018 = 1.0f; + } + if ((D_8017782C != 0) && (D_80177CA0 == 0)) { + D_800D3180[gCurrentLevel] = 0; + for (j = 0; j < 10; j++) { + D_80177A10[j] = 0; + D_80177A48[j] = 0.0f; + } + D_8017782C = 0; + D_8015F924 = 0; + switch (gCurrentLevel) { + case LEVEL_CORNERIA: + player->state_1C8 = PLAYERSTATE_1C8_2; + player->unk_204 = 1; + D_80161A88 = D_80161A8C = 2; + func_800A3FB0(); + break; + case LEVEL_BOLSE: + player->unk_204 = 1; + D_E51970_801A03DC = 6; + /* fallthrough */ + case LEVEL_SECTOR_X: + case LEVEL_AREA_6: + case LEVEL_SECTOR_Y: + case LEVEL_VENOM_1: + case LEVEL_SOLAR: + case LEVEL_ZONESS: + case LEVEL_MACBETH: + case LEVEL_TITANIA: + case LEVEL_AQUAS: + case LEVEL_FORTUNA: + case LEVEL_KATINA: + case LEVEL_SECTOR_Z: + case LEVEL_VENOM_2: + player->state_1C8 = PLAYERSTATE_1C8_2; + break; + case LEVEL_METEO: + player->state_1C8 = PLAYERSTATE_1C8_2; + break; + } + } else { + if (!gVersusMode && !((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 2))) { + D_80177838 = 80; + } -void func_800B40AC(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B40AC.s") + if (gCurrentLevel == LEVEL_BOLSE) { + D_80177A98 = 1; + } -void func_800B415C(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B415C.s") + if ((gCurrentLevel == LEVEL_MACBETH) && (D_80177CA0 == 0)) { + player->pos.z = -4115.0f; + D_80177D20 = player->unk_144 = 3932.0f; -void func_800B41E0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B41E0.s") + D_80177DC8 = 40; + D_80178310 = SEGMENTED_TO_VIRTUAL(D_800CFDA0[gCurrentLevel]); + for (sp34 = D_80178310, i = 0; i < D_80177DC8; i++, sp34++) { + Object_Load(sp34, 4000.0f, -4000.0f, 4000.0f, -4000.0f); + } + func_E6A810_801ACFBC(sp34); + } + } + if (player->state_1C8 == PLAYERSTATE_1C8_2) { + player->unk_234 = 1; + switch (gCurrentLevel) { + case LEVEL_CORNERIA: + func_8001D444(0, 0x25, 0, 0xFF); + break; + case LEVEL_METEO: + func_8001D444(0, 0x32, 0, 0xFF); + break; + case LEVEL_FORTUNA: + case LEVEL_BOLSE: + case LEVEL_VENOM_2: + func_8001D444(0, 0x33, 0, 0xFF); + break; + case LEVEL_VENOM_1: + func_8001D444(0, 0x8008, 0, 0xFF); + break; + case LEVEL_KATINA: + func_8001D444(0, 0x33, 0, 0xFF); + break; + case LEVEL_TITANIA: + func_8001D444(0, 0x2D, 0, 0xFF); + break; + case LEVEL_ZONESS: + case LEVEL_SECTOR_X: + case LEVEL_VENOM_ANDROSS: + case LEVEL_TRAINING: + case LEVEL_MACBETH: + default: + func_8001D444(0, 0x2C, 0, 0xFF); + break; + case LEVEL_AREA_6: + case LEVEL_SECTOR_Y: + case LEVEL_AQUAS: + case LEVEL_SECTOR_Z: + case LEVEL_SOLAR: + break; + } + } else if (!gVersusMode && (D_80177C90 != 0xFFFF) && ((gLevelMode != LEVELMODE_ALL_RANGE) || (D_8015F924 == 0))) { + func_8001D444(0, D_80177C90, 0, 0xFF); + } + D_80177840 = D_80177848 = D_80177850 = 0; -void func_800B41EC(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B41EC.s") + if ((gCurrentLevel == LEVEL_TRAINING)) { + D_80177824 = 1; + } + if (D_80177824 && !gVersusMode) { + for (j = 1; j < 6; j++) { + gTeamShields[j] = gSavedTeamShields[j] = D_80177C38[j] = D_801778F0[j] = 0xFF; + } + for (j = 0; j < 6; j++) { + D_80177CD0[j] = D_80177CF0[j] = 1; + } + gLaserStrength[gPlayerNum] = 0; + gGoldRingCount[0] = D_80161A94[0] = D_80161714 = 0; + gLifeCount[gPlayerNum] = 2; + gBombCount[gPlayerNum] = 3; + D_80177B8C = 1; + if (gCamCount == (gPlayerNum + 1)) { + D_80161720 = 0.0f; + D_80161724 = 0.0f; + D_80161728 = 0.0f; + D_8016172C = 0; + gHitCount = 0; + D_80177824 = 0; + } + } + if ((gCurrentLevel == LEVEL_TRAINING)) { + D_80177824 = 1; + } + player->unk_478 = gLevelType; + player->unk_479 = player->form; + func_80057814(player); + if (!gVersusMode && (((gCurrentLevel != LEVEL_TITANIA) && (gCurrentLevel != LEVEL_SOLAR)) || gVersusMode || + (player->state_1C8 != PLAYERSTATE_1C8_2))) { + func_8001C8B8(gPlayerNum); + } + if ((player->form == FORM_ARWING) && !gVersusMode) { + switch (player->unk_204) { + case 0: + Animation_GetFrameData(&D_3015AF4, 0, player->jointTable); + break; + case 1: + Animation_GetFrameData(&D_3015C28, 0, player->jointTable); + break; + case 2: + Animation_GetFrameData(&D_30163C4, 0, player->jointTable); + break; + } + } + if (gLaserStrength[gPlayerNum] > 0) { + player->wings.unk_14 = -10.0f; + } + D_801779BC = 0; +} -void func_800B42B0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B42B0.s") +void func_800B2130(Player* player) { + s32 temp_t6; + s32 temp_t7; + s32 temp_t8; + s32 temp_t9; + s32 temp_v0; + s32 temp_v0_2; + s32 temp_v0_3; + s32 temp_v0_4; + s32 temp_v0_5; + s32 temp_v0_6; + s32 temp_v0_7; + s32 var_v0; -void func_800B44C4(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B44C4.s") + Math_SmoothStepToF(&player->unk_150, 1.0f, 0.05f, 10.0f, 0.0001f); + player->unk_130 = Math_ModF(player->unk_130, 360.0f); + if (player->unk_280 > 0) { + player->unk_280 -= 30; + if (player->unk_280 <= 0) { + player->unk_280 = 0; + } + } + if (player->timer_27C == 0) { + if (player->unk_1DC == 0) { + Math_SmoothStepToF(&player->unk_130, 0.0f, 0.1f, 10.0f, 0.00001f); + } + if (player->timer_1E0 != 0) { + player->timer_1E0--; + } + if (player->timer_1E4 != 0) { + player->timer_1E4--; + } + if (player->timer_214 != 0) { + player->timer_214--; + } + if (player->timer_218 != 0) { + player->timer_218--; + } + if (player->timer_1E8 != 0) { + player->timer_1E8--; + } + if (player->unk_1DC != 0) { + player->timer_1E4 = 0; + player->timer_1E0 = 0; + player->unk_150 = 1.5f; + player->unk_130 += player->unk_1EC; + if (player->timer_1E8 == 0) { + if (player->unk_1EC > 0) { + player->unk_1EC -= 5; + } + if (player->unk_1EC < 0) { + player->unk_1EC += 5; + } + if (player->unk_1EC == 0) { + player->unk_1DC = 0; + } + } else if (player->unk_280 < 180) { + player->unk_280 += 100; + if (player->unk_280 > 180) { + player->unk_280 = 180; + } + } + } + } +} -void func_800B46F8(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B46F8.s") +void func_800B22C0(Player* player) { + f32 temp_fv0; + f32 temp_fv0_2; + s32* temp_v1; + s32 temp_t3; + s32 temp_t4; + s32 temp_v0; + s32 temp_v0_2; + s32 temp_v0_3; + s32 temp_v0_4; + s32 var_v0; -void func_800B48BC(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B48BC.s") + player->unk_130 = Math_ModF(player->unk_130, 360.0f); + if (player->unk_1DC == 0) { + temp_fv0 = player->unk_130; + if (player->unk_130 > 0.0f) { + player->unk_130 -= (player->unk_130 * 0.1f); + if (player->unk_130 < 0.1f) { + player->unk_130 = 0.0f; + } + } + if (player->unk_130 < 0.0f) { + player->unk_130 -= player->unk_130 * 0.1f; + if (player->unk_130 > -0.1f) { + player->unk_130 = 0.0f; + } + } + } + temp_v0 = player->timer_1E0; + if (player->timer_1E0 != 0) { + player->timer_1E0--; + } + if (player->timer_1E4 != 0) { + player->timer_1E4--; + } + if (player->timer_1E8 != 0) { + player->timer_1E8--; + } + if (player->unk_1DC != 0) { + player->timer_1E4 = 0; + player->timer_1E0 = 0; + player->unk_130 += player->unk_1EC; + if (player->unk_12C > 0.0f) { + player->unk_12C -= 8.0f; + if (player->unk_12C < 0.0f) { + player->unk_12C = 0.0f; + } + } + if (player->unk_12C < 0.0f) { + player->unk_12C += 8.0f; + if (player->unk_12C > 0.0f) { + player->unk_12C = 0.0f; + } + } + if (player->timer_1E8 == 0) { + if (player->unk_1EC > 0) { + player->unk_1EC -= 2; + } + if (player->unk_1EC < 0) { + player->unk_1EC += 2; + } + if (player->unk_1EC == 0) { + player->unk_1DC = 0; + } + } else { + Math_SmoothStepToF(&D_801779A8[player->num], 30.0f, 1.0f, 30.0f, 0.0f); + } + if ((player->timer_1E8 >= 5) && (player->timer_498 == 0)) { + if (player->unk_1EC > 0) { + player->unk_170 = 1.3f; + } + if (player->unk_1EC < 0) { + player->unk_16C = 1.3f; + } + } + if (gVersusMode) { + D_80177B00[player->num][0] = D_80177B00[player->num][1] = D_80177B00[player->num][2] = + D_80177B00[player->num][3] = 0; + } + } +} -void func_800B56BC(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B56BC.s") +void func_800B2574(Player* player) { + f32 sp2C; + f32 sp28; + s32 var; -void func_800B5D30(Player* player, s32); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B5D30.s") + if ((player->unk_2BC != 0.0f) && (gInputHold->button & gBrakeButton[player->num]) && + (gInputHold->button & gBoostButton[player->num])) { + player->unk_2B4 = 1; + } + if (gLevelMode == LEVELMODE_ON_RAILS) { + sp28 = 3.0f; + sp2C = 0.5f; -void func_800B5FBC(Player* player, s32 arg1, s32 arg2); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B5FBC.s") + } else { + sp28 = 1.5f; + sp2C = 0.35f; + } + player->unk_484 = 0; + var = gInputPress->stick_y; // fake? + if (D_Timer_80177A70[gPlayerNum] != 0) { + D_Timer_80177A70[gPlayerNum]--; + } -void func_800B63BC(Player* player, s32); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B63BC.s") + if (D_Timer_80177A88[gPlayerNum] != 0) { + D_Timer_80177A88[gPlayerNum]--; + } + if ((player->unk_4DC == 0) && (D_80177AB0 < 5)) { + if (var >= -50) { + D_Timer_80177A70[gPlayerNum] = 5; + } + if ((D_Timer_80177A70[gPlayerNum] > 0) && (D_Timer_80177A70[gPlayerNum] < 5) && + (D_Timer_80177A88[gPlayerNum] != 0)) { + player->unk_4DC = 1; + if (gLevelMode == LEVELMODE_ON_RAILS) { + player->unk_198 = player->unk_238; + player->unk_238 = 0; + } + player->unk_014 = player->unk_018 = 0.0f; + if (player->unk_4D8 > 340.0f) { + player->unk_4D8 -= 360.0f; + } + return; + } + } + if (player->timer_27C != 0) { + player->timer_27C--; + player->unk_2B4 = 1; + if (D_80177E80 > 0) { + Math_SmoothStepToF(&D_801779A8[player->num], D_80177E80 * 10.0f, 1.0f, 5.0f, 0.0f); + } + player->unk_110 += 0.3f; + Math_SmoothStepToF(&player->unk_08C, -130.0f, 0.2f, 10.0f, 0.0f); + player->unk_130 -= player->unk_258; + player->unk_258 = player->unk_258 + 0.2f; + if (player->unk_258 > 50.0f) { + player->unk_258 = 50.0f; + } + if (!(gFrameCount & 1) && (gBlurAlpha > 64)) { + if (1) {} + gBlurAlpha--; + } + } else { + player->unk_258 = 0.0f; + if (gBlurAlpha < 255) { + gBlurAlpha += 4; + if (gBlurAlpha >= 252) { + gBlurAlpha = 255; + } + } + if (!(gInputHold->button & gBrakeButton[player->num]) && !(gInputHold->button & gBoostButton[player->num])) { + player->unk_2B4 = 1; + if (player->unk_2BC == 0.0f) { + player->unk_2B4 = 0; + } + } + if ((gInputHold->button & gBoostButton[player->num]) && !(gInputHold->button & gBrakeButton[player->num]) && + (player->state_1C8 != PLAYERSTATE_1C8_5) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + func_800A5FA0(&player->unk_460, 0x09000002, player->num); + player->unk_194 = 5.0f; + player->unk_190 = 5.0f; + if (gBoostButton[player->num] & gInputPress->button) { + D_Timer_80177A88[gPlayerNum] = 5; + } + } + if (gLevelType == LEVELTYPE_PLANET) { + player->wings.unk_28 += (35.0f - player->wings.unk_28) * 0.1f; + Math_SmoothStepToF(&player->wings.unk_04, 0.0f, 0.5f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_08, 0.0f, 0.5f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_0C, 0.0f, 0.5f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_10, 0.0f, 0.5f, 100.0f, 0.0f); + } + player->unk_2BC += sp28; + if (player->unk_2BC > 90.0f) { + player->unk_2BC = 90.0f; + player->unk_2B4 = 1; + } + player->unk_25C += 0.04f; + if (player->unk_25C > 0.6f) { + player->unk_25C = 0.6f; + } + player->unk_190 = 2.0f; + player->unk_110 += 2.0f; + if (player->unk_110 > 30.0f) { + player->unk_110 = 30.0f; + } + Math_SmoothStepToF(&player->unk_08C, -400.0f, 0.1f, 30.0f, 0.0f); + player->unk_484 = 1; + Math_SmoothStepToF(&D_801779A8[player->num], 50.0f, 1.0f, 10.0f, 0.0f); + } else { + if (player->unk_2BC > 0.0f) { + player->unk_2BC -= sp2C; + if (player->unk_2BC <= 0.0f) { + player->unk_2BC = 0.0f; + player->unk_2B4 = 0; + } + } + if (player->unk_110 > 0.0f) { + player->unk_110 -= 1.0f; + if (player->unk_110 < 0.0f) { + player->unk_110 = 0.0f; + } + } + } + } +} -void func_800B6848(Player* player, s32 arg1); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B6848.s") +void func_800B2BE0(Player* player) { + func_800B2574(player); +} -void func_800B6BFC(Player* player, s32 arg1); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B6BFC.s") +void func_800B2C00(Player* player) { + f32 sp34; + f32 sp30; + s32 var; -void func_800B6F50(f32, f32, f32, f32, f32, f32); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B6F50.s") + if (gLevelMode == LEVELMODE_ON_RAILS) { + sp30 = 3.0f; + sp34 = 0.5f; + } else { + sp30 = 1.5f; + sp34 = 0.35f; + } + player->unk_485 = 0; + var = gInputPress->stick_y; // fake? + if (D_Timer_80177A00[gPlayerNum] != 0) { + D_Timer_80177A00[gPlayerNum]--; + } + if (D_Timer_80177A38[gPlayerNum] != 0) { + D_Timer_80177A38[gPlayerNum]--; + } + if (var >= -50) { + D_Timer_80177A00[gPlayerNum] = 5; + } + if ((D_Timer_80177A00[gPlayerNum] > 0) && (D_Timer_80177A00[gPlayerNum] < 5) && (D_80177AB0 < 5) && + (D_Timer_80177A38[gPlayerNum] != 0)) { + D_Timer_80177A00[gPlayerNum] = 0; + D_Timer_80177A38[gPlayerNum] = 0; + player->state_1C8 = PLAYERSTATE_1C8_5; + player->unk_1D0 = 0; + player->unk_19C = 1; + player->unk_000 = 0.0f; + player->unk_004 = 0.0f; + player->unk_194 = 5.0f; + player->unk_190 = 5.0f; + if (gCurrentLevel == LEVEL_CORNERIA) { + D_80177B6C++; + } + } + if ((gInputHold->button & gBrakeButton[player->num]) && !(gInputHold->button & gBoostButton[player->num]) && + (player->state_1C8 != PLAYERSTATE_1C8_5) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + func_800A5FA0(&player->unk_460, 0x09000003, player->num); + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (gInputPress->button & gBrakeButton[player->num])) { + D_Timer_80177A38[gPlayerNum] = 5; + } + } + if (gLevelType == LEVELTYPE_PLANET) { + Math_SmoothStepToF(&player->wings.unk_04, 90.0f, 0.2f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_08, -90.0f, 0.2f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_0C, 90.0f, 0.2f, 100.0f, 0.0f); + Math_SmoothStepToF(&player->wings.unk_10, -90.0f, 0.2f, 100.0f, 0.0f); + } + player->unk_2BC += sp30; + if (player->unk_2BC > 90.0f) { + player->unk_2B4 = 1; + player->unk_2BC = 90.0f; + } + player->unk_190 = 0.3f; + player->unk_110 -= 1.0f; + if (player->unk_110 < -20.0f) { + player->unk_110 = -20.0f; + } + Math_SmoothStepToF(&player->unk_08C, 180.0f, 0.1f, 10.0f, 0.0f); + player->unk_485 = 1; + Math_SmoothStepToF(&D_801779A8[player->num], 25.0f, 1.0f, 5.0f, 0.0f); + } else if (player->unk_2BC > 0.0f) { + player->unk_2BC -= sp34; + if (player->unk_2BC <= 0.0f) { + player->unk_2BC = 0.0f; + player->unk_2B4 = 0; + } + if (player->unk_110 < 0.0f) { + player->unk_110 += 0.5f; + if (player->unk_110 > 0.0f) { + player->unk_110 = 0.0f; + } + } + } + Math_SmoothStepToF(&player->unk_08C, 0.0f, 0.1f, 5.0f, 0.0f); +} -void func_800B7184(Player* player, s32); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B7184.s") +void func_800B3010(Player* player) { + f32 sp2C; -void func_800B71E4(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B71E4.s") + if (player->unk_2B8 == 0) { + Math_SmoothStepToF(&player->unk_2BC, 0.0f, 1.0f, 1.0f, 0.0f); + } + player->unk_2B8 = 0; + if (player->unk_2BC == 0.0f) { + player->unk_2B4 = 0; + } else if (!(gInputHold->button & Z_TRIG) && !(gInputHold->button & R_TRIG) && + !(gInputHold->button & gBoostButton[player->num]) && !(gInputHold->button & gBrakeButton[player->num])) { + player->unk_2B4 = 1; + } + sp2C = 20.0f; + if ((gInputHold->button & gBoostButton[player->num]) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + player->unk_194 = 4.0f; + player->unk_190 = 4.0f; + func_800A5FA0(&player->unk_460, 0x09000002, player->num); + } + Math_SmoothStepToF(&D_801779A8[player->num], 30.0f, 1.0f, 10.0f, 0.0f); + player->unk_190 = 2.0f; + sp2C = 35.0f; + player->unk_2B8 = 1; + Math_SmoothStepToF(&player->unk_2BC, 90.0f, 1.0f, 1.0f, 0.0f); + if (player->unk_2BC >= 90.0f) { + player->unk_2B4 = 1; + } + } + if ((gInputHold->button & gBrakeButton[player->num]) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + func_800A5FA0(&player->unk_460, 0x09000003, player->num); + } + Math_SmoothStepToF(&D_801779A8[player->num], 20.0f, 1.0f, 10.0f, 0.0f); + sp2C = 5.0f; + player->unk_2B8 = 1; + Math_SmoothStepToF(&player->unk_2BC, 90.0f, 1.0f, 1.0f, 0.0f); + if (player->unk_2BC >= 90.0f) { + player->unk_2B4 = 1; + } + } + Math_SmoothStepToF(&player->unk_0D0, sp2C, 0.1f, 2.0f, 0.001f); +} -void func_800B73E0(Player* player); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B73E0.s") +void func_800B3314(Player* player) { + f32 temp; + f32 temp2; -void func_800B79B0(void); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B79B0.s") + player->unk_0D4 = 3.0f; + if ((gInputHold->button & Z_TRIG) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + func_800A5FA0(&player->unk_460, 0x09000002, player->num); + } + player->unk_188 = 0.0f; + player->unk_12C += 4.0f; + if (player->unk_12C > 50.0f) { + player->unk_12C = 50.0f; + } + Math_SmoothStepToF(&player->unk_170, 1.0f, 1.0f, 0.4f, 0.0f); + player->unk_2B8 = 1; + Math_SmoothStepToF(&player->unk_2BC, 90.0f, 1.0f, 0.7f, 0.0f); + if (player->unk_2BC >= 90.0f) { + player->unk_2B4 = 1; + } + } else { + if (player->unk_12C > 0.0f) { + player->unk_188 += 1.5f; + player->unk_12C -= player->unk_188; + if (player->unk_12C <= 0.0f) { + player->unk_12C = 0.0f; + if (player->unk_188 > 3.0f) { + player->unk_188 *= -0.4f; + player->unk_12C -= player->unk_188; + } + } + } + } + if ((gInputHold->button & R_TRIG) && (player->unk_2B4 == 0)) { + if (player->unk_2BC == 0.0f) { + func_800A5FA0(&player->unk_460, 0x09000002, player->num); + } + player->unk_188 = 0.0f; + player->unk_12C -= 4.0f; + if (player->unk_12C < -50.0f) { + player->unk_12C = -50.0f; + } + Math_SmoothStepToF(&player->unk_16C, 1.0f, 1.0f, 0.4f, 0.0f); + player->unk_2B8 = 1; + Math_SmoothStepToF(&player->unk_2BC, 90.0f, 1.0f, 0.7f, 0.0f); + if (player->unk_2BC >= 90.0f) { + player->unk_2B4 = 1; + } + } else if (player->unk_12C < 0.0f) { + player->unk_188 += 1.5f; + player->unk_12C += player->unk_188; + if (player->unk_12C >= 0.0f) { + player->unk_12C = 0.0f; + if (player->unk_188 > 3.0f) { + player->unk_188 *= -0.4f; + player->unk_12C += player->unk_188; + } + } + } + if ((player->unk_16C > 0.2f) && (player->unk_170 > 0.2f) && (player->timer_220 == 0)) { + player->unk_12C += (((__cosf((f32) gFrameCount * M_DTOR * 8.0f) * 10.0f) - player->unk_12C) * 0.1f); + Math_SmoothStepToAngle(&player->unk_0E4, 0.0f, 0.05f, 5.0f, 0.00001f); + Math_SmoothStepToAngle(&player->unk_0EC, 0.0f, 0.05f, 5.0f, 0.00001f); + temp = gInputPress->stick_y; + Math_SmoothStepToF(&player->unk_000, temp * 0.5f, 0.05f, 5.0f, 0.00001f); + Math_SmoothStepToF(&player->unk_110, 30.0f, 0.5f, 5.0f, 0.0f); + player->unk_0D4 = -0.4f; + Math_SmoothStepToF(&D_801779A8[player->num], 30.0f, 1.0f, 10.0f, 0.0f); + if ((gCamCount == 1) && !(gFrameCount & 1)) { + func_8007BC7C(((Rand_ZeroOne() - 0.5f) * 20.0f) + player->pos.x, player->unk_068 + 10.0f, + player->unk_138 - 10.0f, (2.0f * Rand_ZeroOne()) + 4.0f); + } + } else if ((gCamCount == 1) && !(gFrameCount & 3) && (player->unk_1DC == 0)) { + if ((player->unk_16C > 0.2f) && (player->timer_220 == 0)) { + func_8007BC7C(((Rand_ZeroOne() - 0.5f) * 10.0f) + (player->pos.x - 57.0f), player->unk_068 + 10.0f, + player->unk_138 - 10.0f, (2.0f * Rand_ZeroOne()) + 3.0f); + } + if ((player->unk_170 > 0.2f) && (player->timer_220 == 0)) { + func_8007BC7C(((Rand_ZeroOne() - 0.5f) * 10.0f) + (player->pos.x + 57.0f), player->unk_068 + 10.0f, + player->unk_138 - 10.0f, (2.0f * Rand_ZeroOne()) + 3.0f); + } + } +} -void func_800B832C(void); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B832C.s") +void func_800B39E0(Player* player) { + s32 i; -void func_800B852C(s32 arg0, Item* item); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B852C.s") + player->unk_084 = 0.0f; + player->unk_090.x = player->pos.x; + player->unk_090.y = player->pos.y; + player->unk_090.z = player->pos.z; + if (player->timer_1F8 != 0) { + player->timer_1F8--; + } + if (player->timer_1FC != 0) { + player->timer_1FC--; + } + if (player->timer_220 != 0) { + player->timer_220--; + } + if (player->timer_498 != 0) { + player->timer_498--; + } + if (player->timer_224 != 0) { + player->timer_224--; + } + if (gVersusMode) { + for (i = 0; i < gCamCount; i++) { + if ((D_80177B00[player->num][i] != 0) && !(gControllerHold[i].button & A_BUTTON)) { + D_80177B00[player->num][i]--; + } + } + } + if (D_80177D40[player->num] != 0) { + D_80177D40[player->num]--; + if (D_80177D40[player->num] == 1000) { + D_80177D40[player->num] = 0; + } + } + if (D_80177D58[player->num] != 0) { + D_80177D58[player->num]--; + if (D_80177D58[player->num] == 1000) { + D_80177D58[player->num] = 0; + } + } + if (D_80177D88[player->num] != 0) { + D_80177D88[player->num]--; + } + if (D_80177D70[player->num] != 0) { + D_80177D70[player->num]--; + } + if (D_80177AE8[player->num] != 0) { + D_80177AE8[player->num]--; + Math_SmoothStepToF(&D_80177AB8[player->num], 128.0f, 1.0f, 40.0f, 0.01f); + } else { + Math_SmoothStepToF(&D_80177AB8[player->num], 0.0f, 1.0f, 10.0f, 0.01f); + } + Math_SmoothStepToF(&D_80177AA0[player->num], 0.0f, 1.0f, 0.4f, 0.01f); + if ((player->form == FORM_LANDMASTER) && (player->unk_1A0 != 0)) { + player->unk_1A0--; + } + player->unk_200 = player->timer_224 & 1; + if (player->timer_224 != 0) { + D_8017835C = 8; + } + if (player->timer_224 == 19) { + D_80178340 = 128; + D_80178348 = 255; + D_80178350 = D_80178354 = 0; + } + if (player->timer_278 != 0) { + if (!(player->timer_278 & 7)) { + if (player->timer_278 & 8) { + D_80177DB8[gPlayerNum]++; + } else { + D_80177DB8[gPlayerNum]--; + } + } + player->timer_278--; + } + if (player->unk_1F4 > 0) { + if (player->unk_1F4 > 3) { + *D_80177984 = 1; + } + player->unk_1F4--; + if (player->form == FORM_ARWING) { + player->unk_134 = + (__sinf(player->unk_1F4 * 400.0f * M_DTOR) * player->unk_1F4) * D_800D3164[player->unk_21C]; + if (player->state_1C8 == PLAYERSTATE_1C8_3) { + player->unk_084 = + (__sinf(player->unk_1F4 * 400.0f * M_DTOR) * player->unk_1F4) * D_800D3164[player->unk_21C] * 0.8f; + } + } else { + player->unk_134 = + (__sinf(player->unk_1F4 * 400.0f * M_DTOR) * player->unk_1F4) * D_800D3164[player->unk_21C] * 1.5f; + player->unk_084 = 0.0f; + } + if ((gLevelMode != LEVELMODE_UNK_2) && + ((player->unk_0D8.x != 0.f) || (player->unk_0D8.y != 0.f) || (player->unk_0D8.z != 0.f)) && + ((player->unk_1A4 >= 40) || (player->unk_1A4 == 21))) { + player->unk_2B4 = 1; + player->unk_0E4 = 0; + player->unk_0E8 = 0; + Math_SmoothStepToF(&player->unk_110, 0, 1.0f, 5.0f, 0); + } + if (player->unk_1F4 == 0) { + player->unk_134 = 0; + } + } + player->pos.x += player->unk_0D8.x; + player->pos.y += player->unk_0D8.y; + if (gLevelMode == LEVELMODE_ALL_RANGE) { + player->pos.z += player->unk_0D8.z; + Math_SmoothStepToF(&player->unk_0D8.z, 0, 0.1f, 1.0f, 0.5f); + } + Math_SmoothStepToF(&player->unk_0D8.x, 0, 0.1f, 1.0f, 0.5f); + Math_SmoothStepToF(&player->unk_0D8.y, 0, 0.1f, 1.0f, 0.5f); + player->unk_25C -= 0.02f; + if (player->unk_25C < 0.0f) { + player->unk_25C = 0.0f; + } +} -void func_800B86A4(f32* arg0); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B86A4.s") +void func_800B40AC(Player* player) { + if (player->damage > 0) { + player->damage -= 2; + if (player->damage <= 0) { + player->damage = 0; + } + player->shields -= 2; + if (player->shields <= 0) { + player->shields = 0; + player->damage = 0; + } + } + if (player->heal > 0) { + player->damage = 0; + player->heal -= 2; + if (player->heal <= 0) { + player->heal = 0; + } + player->shields += 2; + if (player->shields >= Play_GetMaxShields()) { + player->shields = Play_GetMaxShields(); + player->heal = 0; + func_8001A838(0x41007012); + } + } +} -void func_800B86CC(void); -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B86CC.s") +void func_800B415C(Player* player) { + s32 var_v0; -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/D_800D82F0.s") + func_800B40AC(player); + + if (player->shields < 0x80) { + if (player->shields > 0x50) { + var_v0 = 0x3F; + } else if (player->shields > 0x28) { + var_v0 = 0x1F; + } else { + var_v0 = 0xF; + } + if (!(gFrameCount & var_v0)) { + func_80060F30(&player->unk_460, 0x49001026, player->num); + } + } +} + +void func_800B41E0(Player* player) { +} + +void func_800B41EC(Player* player) { + player->state_1C8 = PLAYERSTATE_1C8_4; + if (!gVersusMode) { + func_800182F4(0x100100FF); + func_800182F4(0x110100FF); + func_8001D444(0, 0x27, 0, 0xFF); + } + if (gCurrentLevel == LEVEL_SOLAR) { + func_8001A838(0x4100C023); + } + func_8001CA24(player->num); + func_800A5FA0(&player->unk_460, 0x0900C010, player->num); + player->shields = 0; + player->unk_1D0 = 0; + player->unk_1F4 = 0; + player->timer_220 = 0; + player->unk_134 = 0.0f; + D_80161A2C = 0; +} + +void func_800B42B0(Player* player) { + switch (player->form) { + case FORM_ARWING: + if (player->timer_1F8 != 0) { + gInputPress->stick_x = 0; + gInputPress->stick_y = 0; + gInputPress->button = 0; + gInputHold->button = gBoostButton[player->num]; + player->unk_2BC = 1.0f; + } + func_800ADA28(player); + func_800B2574(player); + func_800B2C00(player); + func_800B41E0(player); + func_800B2130(player); + if (player->unk_4DC != 0) { + func_800AECAC(player); + } else { + func_800AF07C(player); + } + func_800ADF58(player); + func_800AD7F0(player); + func_800A8BA4(player); + func_800A46A0(player); + func_800A4C40(player); + func_800AA800(player); + func_800B415C(player); + if ((player->shields <= 0) && (player->timer_220 != 0)) { + func_800B41EC(player); + player->vel.x *= 0.2f; + player->vel.y = 5.0f; + player->unk_0E4 = player->unk_0E8 = 0.0f; + player->unk_238 = 0; + player->timer_1F8 = 20; + if (gLevelType == LEVELTYPE_SPACE) { + player->timer_1F8 = 40; + } + player->timer_1FC = 120; + } + break; + case FORM_LANDMASTER: + func_80047504(player); + break; + case FORM_BLUE_MARINE: + func_E16C50_801ACE50(player); + func_E16C50_801AD328(player); + func_800B41E0(player); + func_E16C50_801AACF8(player); + func_800ADF58(player); + func_E16C50_801AC274(player); + func_800A8BA4(player); + func_800AA800(player); + func_800B415C(player); + if ((player->shields <= 0) && (player->timer_220 != 0)) { + func_800B41EC(player); + } + break; + } +} + +void func_800B44C4(Player* player) { + switch (player->form) { + case FORM_ARWING: + func_800ADA28(player); + func_800B2574(player); + func_800B2C00(player); + func_800B41E0(player); + func_800B2130(player); + if (player->unk_4DC != 0) { + func_800AECAC(player); + } else { + func_800AE4A4(player); + } + func_800AD7F0(player); + func_800A8BA4(player); + func_800A4C40(player); + func_800AA800(player); + func_800B415C(player); + if ((player->shields <= 0) && (player->timer_220 != 0)) { + func_800B41EC(player); + player->vel.y = 5.0f; + if (gLevelType == LEVELTYPE_SPACE) { + player->vel.y = 0.0f; + } + player->timer_1F8 = 20; + player->timer_1FC = 120; + player->unk_000 = 0.0f; + player->unk_004 = 1.0f; + if (player->unk_0E8 < 0.0f) { + player->unk_004 = -1.0f; + } + player->unk_0E4 = 0.0f; + player->unk_4D8 = 0.0f; + } + break; + case FORM_LANDMASTER: + func_800ADD98(player); + func_800B3314(player); + func_800B3010(player); + func_800B41E0(player); + func_800B22C0(player); + func_800AF928(player); + func_800AD7F0(player); + func_800A8BA4(player); + func_800AA800(player); + func_800B415C(player); + if ((player->shields <= 0) && (player->timer_220 != 0)) { + func_800B41EC(player); + } + break; + case FORM_BLUE_MARINE: + func_E16C50_801BEC80(player); + return; + case FORM_ON_FOOT: + func_800B00C0(player); + func_800B0194(player); + func_800AD7F0(player); + func_800A8BA4(player); + func_800AA800(player); + func_800B415C(player); + if ((player->shields <= 0) && (player->timer_220 != 0)) { + func_800B41EC(player); + } + break; + } +} + +void func_800B46F8(Player* player) { + s32 temp_ft2; + + if ((player->state_1C8 == PLAYERSTATE_1C8_3) && (D_8017796C >= 0)) { + D_8017796C++; + if (D_8017796C > 960) { + D_8017796C = 0; + if (1) {} + if ((player->shields < 0x40) && ((gTeamShields[1] > 0) || (gTeamShields[3] > 0) || (gTeamShields[2] > 0))) { + do { + do { + temp_ft2 = (s32) (Rand_ZeroOne() * 2.9f) + 1; + } while (gTeamShields[temp_ft2] <= 0); + } while (0); // macro? + switch (temp_ft2) { + case 1: + if (Rand_ZeroOne() < 0.5f) { + func_800BA808(gMsg_ID_20306, RCID_FALCO); + } else { + func_800BA808(gMsg_ID_20309, RCID_FALCO); + } + break; + case 2: + if (Rand_ZeroOne() < 0.5f) { + func_800BA808(gMsg_ID_20305, RCID_SLIPPY); + } else { + func_800BA808(gMsg_ID_20308, RCID_SLIPPY); + } + break; + case 3: + if (Rand_ZeroOne() < 0.5f) { + func_800BA808(gMsg_ID_20304, RCID_PEPPY); + } else { + func_800BA808(gMsg_ID_20307, RCID_PEPPY); + } + break; + } + } + } + } +} + +// lots of fakery +void func_800B48BC(Player* player) { + f32 sp1CC; + f32 sp1C8; + s32 sp1C4; + s32 i; + Vec3f sp58[30]; + s32 pad; + + if (gVersusMode) { + gInputHold = &gControllerHold[player->num]; + gInputPress = &gControllerPress[player->num]; + D_80177984 = &D_80137E84[player->num]; + } else { + gInputHold = &gControllerHold[gMainController]; + gInputPress = &gControllerPress[gMainController]; + D_80177984 = &D_80137E84[gMainController]; + } + + D_80177990[player->num] += (s32) D_801779A8[player->num]; + Math_SmoothStepToF(&D_801779A8[player->num], 0.0f, 1.0f, 1.5f, 0.0f); + if (D_80177990[player->num] >= 100) { + D_80177990[player->num] -= 100; + *D_80177984 = 1; + } + if (D_Timer_80177BD0[player->num] != 0) { + D_Timer_80177BD0[player->num]--; + if (!(gFrameCount & 1)) { + *D_80177984 = 1; + } + } + if (player->state_1C8 >= 2) { + func_800B39E0(player); + } + player->unk_228 = 0; + if ((player->state_1C8 >= 2) && (player->form == FORM_ARWING) && !gVersusMode) { + switch (player->unk_204) { + case 0: + sp1C4 = Animation_GetFrameData(&D_3015AF4, 0, sp58); + break; + case 1: + sp1C4 = Animation_GetFrameData(&D_3015C28, 0, sp58); + break; + case 2: + sp1C4 = Animation_GetFrameData(&D_30163C4, 0, sp58); + break; + } + Math_SmoothStepToVec3fArray(sp58, player->jointTable, 1, sp1C4, 0.1f, 1.3f, 0.0f); + } + player->unk_48C = player->unk_494 = 0; + sp1C4 = player->unk_22C; + if (sp1C4 != 0) { + player->unk_22C--; + } + switch (player->state_1C8) { + case PLAYERSTATE_1C8_0: + player->unk_234 = 0; + D_80161A2C = 0; + D_801779BC = 0; + break; + case PLAYERSTATE_1C8_1: + func_800B0F50(player); + D_80178358 = 0; + D_801779BC = 0; + break; + case PLAYERSTATE_1C8_2: + D_80161A2C = 0; + D_801779BC = 0; + player->wings.unk_2C = 1; + func_8004A52C(player); + break; + case PLAYERSTATE_1C8_3: + D_80161A2C = 1; + func_800B46F8(player); + player->wings.unk_2C = 0; + D_80161704 = 0xFF; + if ((!gVersusMode || (D_80177E7C != 0)) && (player->unk_4DC == 0) && (gInputPress->button & U_CBUTTONS) && + ((player->form == FORM_ARWING) || (gVersusMode && (player->form == FORM_LANDMASTER)))) { + if (player->unk_238 = 1 - player->unk_238) { + Audio_PlaySfx(0x4900002C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } else { + Audio_PlaySfx(0x4900002D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gLevelMode == LEVELMODE_ON_RAILS) { + player->unk_034 = 0.0f; + } + } + player->unk_014 = 0.1f; + } + switch (gLevelMode) { + case LEVELMODE_ON_RAILS: + D_80178488 = true; + func_800B42B0(player); + player->unk_234 = 1; + break; + case LEVELMODE_ALL_RANGE: + if (!gVersusMode) { + func_800B44C4(player); + player->unk_234 = 1; + } else if (D_80177E7C != 0) { + if (gPlayerInactive[player->num] == true) { + do { + sp1C4 = (s32) (Rand_ZeroOne() * 3.9f); + } while (gPlayerInactive[sp1C4]); + player->unk_288 = sp1C4 + 1; + player->state_1C8 = PLAYERSTATE_1C8_13; + player->unk_1D0 = 0; + func_800B5FBC(player, player->unk_288 - 1, 1); + } else { + if (D_80177E7C == 1) { + D_80177E7C += 1; + for (i = 0; i < 4; i++) { + func_800A5FA0(gPlayer[i].unk_460_arr, 0x09000002, gPlayer[i].num); + gPlayer[i].unk_190 = gPlayer[i].unk_194 = 5.0f; + } + } + func_800B44C4(player); + player->unk_234 = 1; + } + } else { + gInputPress->stick_x = gInputPress->stick_y = 0; + D_80177844 = 0; + D_801779BC = 0; + } + break; + case LEVELMODE_UNK_2: + D_80178488 = true; + func_E9F1D0_801A5AD4(player); + func_800A8BA4(player); + break; + } + break; + case PLAYERSTATE_1C8_4: + func_8004E3D8(player); + break; + case PLAYERSTATE_1C8_5: + if (gVersusMode) { + D_80177B00[player->num][0] = D_80177B00[player->num][1] = D_80177B00[player->num][2] = + D_80177B00[player->num][3] = 0; + } + player->wings.unk_2C = 1; + Math_SmoothStepToF(&player->wings.unk_04, 0.0f, 0.1f, 5.0f, 0); + Math_SmoothStepToF(&player->wings.unk_08, 0.0f, 0.1f, 5.0f, 0); + Math_SmoothStepToF(&player->wings.unk_0C, 0.0f, 0.1f, 5.0f, 0); + Math_SmoothStepToF(&player->wings.unk_10, 0.0f, 0.1f, 5.0f, 0); + func_800B40AC(player); + func_8004CCC0(player); + if (gCurrentLevel == LEVEL_KATINA) { + func_800A8BA4(player); + } else { + func_800A887C(player); + func_800A86E4(player); + } + break; + case PLAYERSTATE_1C8_7: + player->unk_238 = 0; + D_801779BC = 0; + func_800B40AC(player); + func_8004C930(player); + func_800A4C40(player); + D_80161A2C = gChargeTimers[player->num] = 0; + break; + case PLAYERSTATE_1C8_8: + D_801779BC = 0; + func_800B40AC(player); + func_80049C0C(player); + D_80161A2C = 0; + break; + case PLAYERSTATE_1C8_9: + D_801779BC = 0; + func_800B40AC(player); + func_8004AAF4(player); + func_800B2130(player); + gChargeTimers[player->num] = player->unk_238 = D_80161A2C = 0; + break; + case PLAYERSTATE_1C8_10: + D_801779BC = 0; + func_8002E700(player); + D_80161A2C = 0; + break; + case PLAYERSTATE_1C8_11: + func_E9F1D0_8018C390(player); + func_800B40AC(player); + break; + case PLAYERSTATE_1C8_12: + break; + case PLAYERSTATE_1C8_13: + player->unk_234 = 0; + if (gPlayerInactive[player->num] == true) { + func_800B5FBC(player, player->unk_288 - 1, 0); + } else if ((D_80177E74 == 0) && (player->unk_1D0 != 0)) { + player->unk_1D0 = 0; + func_800AB304(player); + func_800B0F50(player); + func_800B44C4(player); + func_800B7184(player, 1); + func_800A5FA0(&player->unk_460, 0x09000002, player->num); + player->unk_190 = player->unk_194 = 5.0f; + } else if (player->unk_288 >= 0) { + if (player->unk_288 == 0) { + player->unk_288 = 1; + } + func_800B5FBC(player, player->unk_288 - 1, 0); + } + break; + case PLAYERSTATE_1C8_6: + D_80161A2C = 0; + if (!gVersusMode) { + D_801779BC = 0; + } + player->unk_234 = 0; + player->vel.z = player->vel.x = player->vel.y = player->unk_0D8.x = player->unk_0D8.y = 0.0f; + + if ((gLevelMode == LEVELMODE_ALL_RANGE) && (D_8017837C == 7)) { + player->camEye.x += 1.0f; + player->camEye.z += 1.5f; + } + if ((gCurrentLevel == LEVEL_ZONESS) || (gCurrentLevel == LEVEL_SOLAR)) { + Math_SmoothStepToF(&player->camEye.y, 500.0f, 0.05f, 10.0f, 0.0f); + Math_SmoothStepToF(&player->camEye.z, player->unk_138 + D_80177D20 + 500.0f, 0.05f, 20.0f, 0.0f); + } + if (player->timer_1F8 == 0) { + if (gCamCount == 4) { + player->state_1C8 = PLAYERSTATE_1C8_13; + player->timer_1F8 = 200; + } else { + D_80178348 = D_80178350 = D_80178354 = 0; + D_80178358 = 0xFF; + } + if (D_80178340 == 0xFF) { + func_800A6148(); + D_80177D20 = gPlayer->unk_144 = 0.0f; + D_80178380[0] = 0; + D_8015F93C = gRadioState = 0; + func_8001AE58(); + func_8001D400(0); + D_80161A94[0] = gGoldRingCount[0]; + if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { + if (1) {} + if (1) {} + if (1) {} + if (1) {} + if (1) {} + D_80177C94 = gGoldRingCount[0]; + } + if (D_8017837C != 4) { + if (D_8017837C != 7) { + gDrawMode = DRAWMODE_0; + } else if (gCurrentLevel == LEVEL_TRAINING) { + gGameState = GSTATE_MENU; + D_Timer_8017783C = 2; + D_8017784C = 0; + gDrawMode = DRAWMODE_0; + D_80161A34 = 7; + D_80178410 = 0; + } else { + if ((gCurrentLevel == LEVEL_SECTOR_X) || (gCurrentLevel == LEVEL_METEO)) { + D_8017827C = 0; + } + if (gLifeCount[gPlayerNum] < 0) { + gNextGameState = GSTATE_GAME_OVER; + D_80161A94[0] = 0; + } else { + D_80177854 = 1; + } + gBombCount[gPlayerNum] = 3; + gLaserStrength[gPlayerNum] = 0; + D_80178488 = true; + gDrawMode = DRAWMODE_0; + } + } else { + gNextGameState = GSTATE_MAP; + D_80161A34 = 7; + gDrawMode = DRAWMODE_0; + } + if (1) {} + } + } + break; + default: + break; + } + if ((D_80177C70 == 0) && (player->form == FORM_ARWING)) { + sp1CC = 0.77699995f; + sp1C8 = 1100.0f; + } else if (D_80177C70 == 2) { + sp1CC = 0.77699995f; + sp1C8 = 1100.0f; + } else { + sp1CC = 0.74f; + sp1C8 = 700.0f; + } + Math_SmoothStepToF(&player->unk_148, sp1CC, 1.0f, 0.05f, 0.0f); + Math_SmoothStepToF(&player->unk_14C, sp1CC, 1.0f, 0.05f, 0.0f); + Math_SmoothStepToF(&player->unk_09C, sp1C8, 1.0f, 10.0f, 0.0f); + if (player->form == FORM_ARWING) { + Math_SmoothStepToF(&player->unk_194, player->unk_190, 0.5f, 5.0f, 0.0f); + if ((player->unk_2B4 != 0) && (gPlayer->state_1C8 == PLAYERSTATE_1C8_3)) { + player->unk_190 = 0.5f; + } else { + player->unk_190 = 1.0f; + } + + } else if (player->form == FORM_LANDMASTER) { + Math_SmoothStepToF(&player->unk_194, player->unk_190, 0.5f, 0.5f, 0.0f); + player->unk_190 = 0.0f; + } +} + +void func_800B56BC(Player* player) { + f32 var_fv1; + f32 var_fv0; + f32 temp; + + D_80177978 = (player->pos.x - player->unk_0AC) * player->unk_148; + if (((player->form == FORM_ARWING) && (player->state_1C8 == PLAYERSTATE_1C8_3)) || + (player->state_1C8 == PLAYERSTATE_1C8_5)) { + D_80177980 = (player->pos.y - player->unk_0B0) * player->unk_148; + } + var_fv1 = gInputPress->stick_x; + var_fv0 = -gInputPress->stick_y; + + if ((player->state_1C8 != PLAYERSTATE_1C8_3) || (player->unk_4DC != 0)) { + var_fv0 = 0.0f; + var_fv1 = 0; + } + Math_SmoothStepToF(&player->unk_030, var_fv1 * 1.6f, 0.1f, 3.0f, 0.05f); + if (gLevelType == 1) { + Math_SmoothStepToF(&player->unk_02C, var_fv0 * 0.8f, 0.1f, 3.0f, 0.05f); + } else if (player->pos.y < (D_80177940 + 50.0f)) { + Math_SmoothStepToF(&player->unk_02C, var_fv0 * 0.3f, 0.1f, 3.0f, 0.05f); + } else { + Math_SmoothStepToF(&player->unk_02C, 2.0f * var_fv0, 0.1f, 4.0f, 0.05f); + } + D_80177978 -= player->unk_030 * 1.5f; + D_80177980 -= player->unk_02C - 50.0f; + D_801779A0 = (player->pos.x - player->unk_0AC) * player->unk_14C; + D_801779A0 += player->unk_084 * -2.0f; + D_801779A0 -= player->unk_030 * 0.5f; + D_801779B8 = ((player->pos.y - player->unk_0B0) * player->unk_14C) + 20.0f; + D_801779B8 += player->unk_060 * 5.0f; + D_801779B8 -= player->unk_02C * 0.25f; + switch (D_800D2F54) { + case 0: + Math_SmoothStepToF(&D_800D2F58, 0.0f, 0.4f, 10.0f, 0); + break; + case 1: + Math_SmoothStepToF(&D_800D2F58, 200.0f, 0.4f, 10.0f, 0); + break; + } + D_80177978 += player->unk_0AC; + D_801779A0 += player->unk_0AC; + D_80177980 += player->unk_0B0 + D_800D2F58; + D_801779C0 = (player->unk_138 + D_80177D20) - 1.0f; + D_80177988 = 400.0f + D_800D2F58; + if (D_80177C70 == 2) { + D_80177988 -= 50.0f; + } + if (player->unk_4DC != 0) { + D_80177988 += 200.0f; + D_801779B8 = (player->pos.y - player->unk_0B0) * 0.9f; + Math_SmoothStepToF(&player->camEye.z, D_80177988, 0.1f, 8.0f, 0.0f); + Math_SmoothStepToF(&player->unk_018, 0.2f, 1.0f, 0.05f, 0.0f); + } else { + Math_SmoothStepToF(&player->camEye.z, D_80177988, 0.2f, 20.0f, 0.0f); + Math_SmoothStepToF(&player->unk_018, 1.0f, 1.0f, 0.05f, 0.0f); + } + D_801779B8 += player->unk_0B0 + (D_800D2F58 * 0.5f); + Math_SmoothStepToF(&player->camEye.x, D_80177978, player->unk_014, 1000.0f, 0.0f); + Math_SmoothStepToF(&player->camEye.y, D_80177980, player->unk_018, 1000.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.x, D_801779A0, player->unk_014, 1000.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.y, D_801779B8, player->unk_018, 1000.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.z, D_801779C0, player->unk_014, 1000.0f, 0.0f); + Math_SmoothStepToF(&player->unk_014, 1.0f, 1.0f, 0.05f, 0.0f); + temp = -player->unk_0EC; + if (gLevelType == LEVELTYPE_PLANET) { + Math_SmoothStepToF(&player->unk_034, temp * 0.3f, 0.1f, 1.5f, 0.0f); + } else if (gLevelType == LEVELTYPE_SPACE) { + Math_SmoothStepToF(&player->unk_034, temp * 0.2f, 0.1f, 1.5f, 0.0f); + } +} + +void func_800B5D30(Player* player, s32 arg1) { + Vec3f sp4C; + Vec3f sp40; + s32 pad; + s32 pad2; + s32 pad3; + + Matrix_RotateY(gCalcMatrix, (player->unk_0E8 + player->unk_134) * M_DTOR * 0.75f, 0); + Matrix_RotateX(gCalcMatrix, (player->unk_0E4 + player->unk_134) * M_DTOR * 0.75f, 1); + sp4C.x = 0; + sp4C.y = 0; + sp4C.z = -1000.0f; + Matrix_MultVec3f(gCalcMatrix, &sp4C, &sp40); + D_80177978 = player->pos.x; + D_80177980 = player->pos.y + player->unk_080; + D_80177988 = player->unk_138 + D_80177D20; + D_801779A0 = player->pos.x + sp40.x; + D_801779B8 = player->pos.y + player->unk_080 + sp40.y; + D_801779C0 = player->unk_138 + D_80177D20 + sp40.z; + Math_SmoothStepToF(&player->camEye.x, D_80177978, player->unk_014, 100.0f, 0.0f); + Math_SmoothStepToF(&player->camEye.y, D_80177980, player->unk_014, 100.0f, 0.0f); + Math_SmoothStepToF(&player->camEye.z, D_80177988, player->unk_014, 50.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.x, D_801779A0, player->unk_014, 100.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.y, D_801779B8, player->unk_014, 100.0f, 0.0f); + Math_SmoothStepToF(&player->camAt.z, D_801779C0, player->unk_014, 100.0f, 0.0f); + Math_SmoothStepToF(&player->unk_014, 1.0f, 1.0f, 0.05f, 0); + player->unk_034 = -(player->unk_0F8 + player->unk_0F0); + if (arg1 != 0) { + player->camEye.x = D_80177978; + player->camEye.y = D_80177980; + player->camEye.z = D_80177988; + player->camAt.x = D_801779A0; + player->camAt.y = D_801779B8; + player->camAt.z = D_801779C0; + } +} + +void func_800B5FBC(Player* player, s32 playerNum, bool arg2) { + u8 i; + u8 var_v0; + Vec3f sp58; + Vec3f sp4C; + + var_v0 = 0x7F; + if (gPlayer[playerNum].form == FORM_LANDMASTER) { + var_v0 = 0xFF; + } + if (((var_v0 & gFrameCount) == (gPlayerNum * 32)) || arg2) { + for (i = 0; i < 100; i++) { + playerNum = (s32) (Rand_ZeroOne() * 3.9f); + if ((gPlayer[playerNum].state_1C8 != PLAYERSTATE_1C8_13) && !gPlayerInactive[playerNum]) { + break; + } + } + if (i > 90) { + playerNum = 0; + } + player->unk_288 = playerNum + 1; + Matrix_RotateY(gCalcMatrix, gPlayer[playerNum].unk_114 * M_DTOR, 0); + switch (gPlayer[playerNum].form) { + case FORM_ARWING: + sp58.x = 300.0f; + sp58.z = -800.0f; + break; + case FORM_LANDMASTER: + sp58.x = 300.0f; + sp58.z = -400.0f; + break; + case FORM_ON_FOOT: + sp58.x = 100.0f; + sp58.z = -300.0f; + break; + } + if (Rand_ZeroOne() < 0.5f) { + sp58.x *= -1.0f; + } + sp58.y = 0.0f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp58, &sp4C); + player->camEye.x = gPlayer[playerNum].pos.x + sp4C.x; + player->camEye.y = gPlayer[playerNum].pos.y + 50.0f; + player->camEye.z = gPlayer[playerNum].unk_138 + sp4C.z; + } + player->camAt.x = gPlayer[playerNum].pos.x; + player->camAt.y = gPlayer[playerNum].pos.y; + player->camAt.z = gPlayer[playerNum].unk_138; + switch (gPlayer[playerNum].form) { + case FORM_ARWING: + player->camEye.x += gPlayer[playerNum].vel.x * 0.5f; + player->camEye.z += gPlayer[playerNum].vel.z * 0.5f; + break; + case FORM_LANDMASTER: + player->camEye.x += gPlayer[playerNum].vel.x * 0.7f; + player->camEye.z += gPlayer[playerNum].vel.z * 0.7f; + break; + case FORM_ON_FOOT: + player->camEye.x += gPlayer[playerNum].vel.x * 0.7f; + player->camEye.z += gPlayer[playerNum].vel.z * 0.7f; + player->camEye.y = gPlayer[playerNum].unk_068 + 20.0f; + player->camAt.y = gPlayer[playerNum].unk_068 + 20.0f; + break; + } + Math_SmoothStepToF(&player->unk_034, 0.0f, 0.05f, 5.0f, 0.00001f); +} + +void func_800B63BC(Player* player, s32 arg1) { + Vec3f sp74; + Vec3f sp68; + f32 temp1; + f32 temp2; + f32 temp3; + f32 var_fv0; + f32 eyeX; + f32 eyeY; + f32 eyeZ; + f32 atX; + f32 atY; + f32 atZ; + + Matrix_RotateY(gCalcMatrix, (player->unk_114 + (player->unk_134 * 0.2f)) * M_DTOR, 0); + Matrix_RotateX(gCalcMatrix, player->unk_134 * 0.2f * M_DTOR, 1); + sp74.x = 0.0f; + sp74.y = 0.0f; + if (player->unk_238 != 0) { + sp74.z = 1000.0f - player->unk_08C; + } else { + sp74.z = 300.0f - player->unk_08C; + } + if (player->unk_4DC != 0) { + sp74.z += 500.0f; + } + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp74, &sp68); + if (!gVersusMode) { + var_fv0 = -gInputPress->stick_y; + } else { + var_fv0 = -gControllerPress[player->num].stick_y; + } + Math_SmoothStepToF(&player->unk_02C, var_fv0, 0.05f, 5.0f, 0.0f); + eyeX = player->pos.x + sp68.x; + eyeY = (player->pos.y * player->unk_148) + 50.0f; + eyeY -= (player->unk_02C * 1.5f); + eyeZ = player->pos.z + sp68.z; + + atX = player->pos.x + player->unk_134; + + var_fv0 = (player->unk_4DC != 0) ? 1.0f : 0.79f; + atY = (player->pos.y * (var_fv0)) + player->unk_134 + (player->unk_060 * 5.0f); + atY += (player->unk_02C * 0.5f); + if (player->state_1C8 == PLAYERSTATE_1C8_5) { + atY = player->pos.y; + } + atZ = player->pos.z; + Math_SmoothStepToF(&player->unk_028, 2.0f * player->unk_0E8, 0.05f, 2.0f, 0.02f); + sp74.x = -player->unk_028; + sp74.y = 0.0f; + sp74.z = 0.f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp74, &sp68); + eyeX += sp68.x; + eyeZ += sp68.z; + atX += sp68.x; + atZ += sp68.z; + if (player->state_1C8 == PLAYERSTATE_1C8_3) { + Math_SmoothStepToF(&player->camEye.x, eyeX, player->unk_014, 30000.0f, 0); + Math_SmoothStepToF(&player->camEye.y, eyeY, player->unk_014, 30000.0f, 0); + Math_SmoothStepToF(&player->camEye.z, eyeZ, player->unk_014, 30000.0f, 0); + Math_SmoothStepToF(&player->unk_034, player->unk_0E8 * -0.3f, 0.1f, 1.0f, 0); + Math_SmoothStepToF(&player->unk_014, 0.2f, 0.1f, 0.005f, 0.0f); + } + Math_SmoothStepToF(&player->camAt.x, atX, player->unk_01C, 30000.0f, 0); + Math_SmoothStepToF(&player->camAt.y, atY, player->unk_018, 30000.0f, 0); + Math_SmoothStepToF(&player->camAt.z, atZ, player->unk_01C, 30000.0f, 0); + Math_SmoothStepToF(&player->unk_018, 0.2f, 0.1f, 0.005f, 0); + Math_SmoothStepToF(&player->unk_01C, 1.0f, 0.1f, 0.005f, 0); + if (arg1 != 0) { + player->camEye.x = eyeX; + player->camEye.y = eyeY; + player->camEye.z = eyeZ; + player->camAt.x = atX; + player->camAt.y = atY; + player->camAt.z = atZ; + } +} + +void func_800B6848(Player* player, s32 arg1) { + Vec3f sp54; + Vec3f sp48; + f32 sp44; + f32 sp40; + f32 sp3C; + + Matrix_RotateX(gCalcMatrix, player->unk_0E4 * M_DTOR, 0); + Matrix_RotateZ(gCalcMatrix, player->unk_0EC * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + (player->unk_134 * 0.2f)) * M_DTOR, 1); + Matrix_RotateX(gCalcMatrix, player->unk_134 * 0.2f * M_DTOR, 1); + sp54.x = 0.0f; + if (player->unk_238 != 0) { + sp54.y = 150.0f; + sp54.z = 500.0f - player->unk_08C; + } else { + sp54.y = 100.0f; + sp54.z = 250.0f - player->unk_08C; + } + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp54, &sp48); + if (player->unk_238 != 0) { + Math_SmoothStepToF(&player->unk_02C, -player->unk_17C * 3.0f + 30.0f, 0.2f, 8.0f, 0.001f); + } else { + Math_SmoothStepToF(&player->unk_02C, -player->unk_17C * 3.0f, 0.2f, 8.0f, 0.001f); + } + sp44 = player->pos.x + sp48.x; + sp40 = player->pos.y + sp48.y - (player->unk_02C * 0.6f); + sp3C = player->pos.z + sp48.z; + + player->camAt.x = player->pos.x + player->unk_134; + player->camAt.y = player->pos.y + 60.0f + player->unk_02C + player->unk_134; + player->camAt.z = player->pos.z; + Math_SmoothStepToF(&player->unk_028, 2.0f * player->unk_0E8, 0.05f, 2.0f, 0.02f); + sp54.x = -player->unk_028; + sp54.y = 0.0f; + sp54.z = 0.0f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp54, &sp48); + sp44 += sp48.x; + sp3C += sp48.z; + player->camAt.x += sp48.x; + player->camAt.z += sp48.z; + Math_SmoothStepToF(&player->camEye.x, sp44, 0.1f, 200.0f, 0.001f); + Math_SmoothStepToF(&player->camEye.y, sp40, 0.1f, 200.0f, 0.001f); + Math_SmoothStepToF(&player->camEye.z, sp3C, 0.1f, 200.0f, 0.001f); + Math_SmoothStepToF(&player->unk_034, player->unk_12C * -0.1f, 0.1f, 1.0f, 0.01f); + if (arg1 != 0) { + player->camEye.x = sp44; + player->camEye.y = sp40; + player->camEye.z = sp3C; + } +} + +void func_800B6BFC(Player* player, s32 arg1) { + Vec3f sp64; + Vec3f sp58; + f32 temp_fs1; + f32 sp50; + f32 temp_fs0; + + Matrix_RotateX(gCalcMatrix, player->unk_0FC * M_DTOR, 0); + Matrix_RotateZ(gCalcMatrix, player->unk_100 * M_DTOR, 1); + Matrix_RotateY(gCalcMatrix, (player->unk_114 + (player->unk_134 * 0.02f)) * M_DTOR, 1); + Matrix_RotateX(gCalcMatrix, player->unk_134 * 0.02f * M_DTOR, 1); + sp64.x = 0.0f; + sp64.y = 20.0f; + sp64.z = 60.0f - player->unk_08C; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp64, &sp58); + Math_SmoothStepToF(&player->unk_02C, -player->unk_158 * 0.5f, 0.07f, 3.0f, 0.001f); + + temp_fs0 = player->pos.x + sp58.x; + sp50 = (player->unk_068 + 10.0f + sp58.y) - (player->unk_02C * 0.8f); + temp_fs1 = player->pos.z + sp58.z; + + player->camAt.x = player->pos.x + player->unk_134 * 0.1f; + player->camAt.y = player->unk_068 + (player->pos.y - player->unk_068) * 0.4f + 18.0f + player->unk_02C * 1.5f + + player->unk_134 * 0.1f; + player->camAt.z = player->pos.z; + + Math_SmoothStepToF(&player->unk_028, player->unk_0E8 * (player->unk_0D0 + 5.0f) * 0.04f, 0.05f, 2.0f, 0.02f); + sp64.x = -player->unk_028; + sp64.y = 0.0f; + sp64.z = 0.0f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp64, &sp58); + temp_fs0 += sp58.x; + temp_fs1 += sp58.z; + player->camAt.x += sp58.x; + player->camAt.z += sp58.z; + + Math_SmoothStepToF(&player->camEye.x, temp_fs0, 0.3f, 65.0f, 0.001f); + Math_SmoothStepToF(&player->camEye.y, sp50, 0.3f, 65.0f, 0.001f); + Math_SmoothStepToF(&player->camEye.z, temp_fs1, 0.3f, 65.0f, 0.001f); + Math_SmoothStepToF(&player->unk_034, player->unk_12C * -0.1f, 0.1f, 1.0f, 0.01f); + if (arg1 != 0) { + player->camEye.x = temp_fs0; + player->camEye.y = sp50; + player->camEye.z = temp_fs1; + } +} + +void func_800B6F50(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5) { + f32 sp34; + f32 sp30; + f32 sp2C; + f32 sp28; + f32 var_ft5; + f32 sp20; + + sp28 = -Math_Atan2F(arg0 - arg3, arg2 - arg5); + var_ft5 = sqrtf(SQ(arg2 - arg5) + SQ(arg0 - arg3)); + sp2C = -Math_Atan2F(arg1 - arg4, var_ft5); + if (sp28 >= M_PI / 2.0f) { + sp28 -= M_PI; + } + if (sp28 <= -M_PI / 2.0f) { + sp28 += M_PI; + } + var_ft5 = 0.0f; + if (gCurrentLevel == LEVEL_UNK_15) { + var_ft5 = gPlayer->camEye.y * 0.03f; + } + sp30 = (2.0f * (-sp2C * (-8.0f / 3.0f * M_RTOD))) + 3000.0f + D_80178430 + var_ft5; + sp34 = (2.0f * (sp28 * (-8.0f / 3.0f * M_RTOD))) + 3000.0f + D_8017842C; + sp20 = D_80178420; + D_80178420 = Math_ModF(sp34, 480.0f); + D_80178424 = Math_ModF(sp30, 360.0f); + if ((gGameState == GSTATE_PLAY) && (gPlayer->state_1C8 == PLAYERSTATE_1C8_2) && (gCurrentLevel == LEVEL_METEO)) { + if (fabsf(D_80178420 - sp20) < 50.0f) { + D_8015F96C = 0.0f; + if (fabsf(D_80178420 - sp20) > 3.0f) { + D_8015F96C = fabsf(D_80178420 - sp20 - 3.0f) * 0.5f; + } + } + } +} + +void func_800B7184(Player* player, s32 arg1) { + switch (player->form) { + case FORM_ON_FOOT: + func_800B6BFC(player, arg1); + break; + case FORM_LANDMASTER: + func_800B6848(player, arg1); + break; + case FORM_ARWING: + func_800B63BC(player, arg1); + break; + } +} + +void func_800B71E4(Player* player) { + switch (player->state_1C8) { + case 3: + switch (gLevelMode) { /* switch 1; irregular */ + case 0: /* switch 1 */ + if (player->form == FORM_ARWING) { + if (player->unk_238 == 0) { + func_800B56BC(player); + } else { + func_800B5D30(player, 0); + } + } else if (player->form == FORM_LANDMASTER) { + func_80043468(player); + } else if (player->form == FORM_BLUE_MARINE) { + func_E16C50_801AA8E8(player); + } + break; + case 1: /* switch 1 */ + func_800B7184(player, 0); + break; + case 2: /* switch 1 */ + func_E9F1D0_801A5FC0(player); + break; + } + break; + case 5: + player->unk_034 -= player->unk_034 * 0.1f; + func_800B7184(player, 0); + break; + case 4: + if ((gLevelMode == LEVELMODE_ON_RAILS) && (player->form == FORM_ARWING)) { + player->camEye.x += (player->pos.x - player->camEye.x) * 0.1f; + player->camEye.y += (player->pos.y - player->camEye.y) * 0.1f; + player->camEye.z -= player->vel.z * 0.2f; + if (player->unk_1D0 != 0) { + player->camEye.z -= player->vel.z * 0.2f; + } + player->camAt.x += (player->pos.x - player->camAt.x) * 0.1f; + player->camAt.y += (player->pos.y - player->camAt.y) * 0.1f; + player->camAt.z = player->unk_138 + D_80177D20 - 1.0f; + } + break; + case 6: + case 7: + break; + } +} + +void func_800B73E0(Player* player) { + Vec3f sp44; + Vec3f sp38; + f32 pad; + + if ((gCurrentLevel == LEVEL_AQUAS) && (gPlayer->state_1C8 != PLAYERSTATE_1C8_2)) { + D_801784D4 = D_801784C8 = D_801784C8 = D_801784FC = D_801784C8 = 110.0f; + if (gFrameCount & 0x20) { + D_801784D4 = D_801784C8 = D_801784C8 = D_801784FC = D_801784C8 = 90.0f; + } + D_801784E8 = D_80178510 = D_80178538 = 1.0f; + } + Math_SmoothStepToAngle(&D_801784B8, D_801784C4, 1.0f, D_801784E8, 0.0f); + Math_SmoothStepToAngle(&D_801784BC, D_801784C8, 1.0f, D_801784E8, 0.0f); + Math_SmoothStepToAngle(&D_801784C0, D_801784CC, 1.0f, D_801784E8, 0.0f); + + if (gLight2R < D_80178570) { + gLight2R += D_80178540; + if (D_80178570 < gLight2R) { + gLight2R = D_80178570; + } + } + if (D_80178570 < gLight2R) { + gLight2R -= D_80178540; + if (gLight2R < D_80178570) { + gLight2R = D_80178570; + } + } + if (gLight2G < D_80178574) { + gLight2G += D_80178540; + if (D_80178574 < gLight2G) { + gLight2G = D_80178574; + } + } + if (D_80178574 < gLight2G) { + gLight2G -= D_80178540; + if (gLight2G < D_80178574) { + gLight2G = D_80178574; + } + } + if (gLight2B < D_80178578) { + gLight2B += D_80178540; + if (D_80178578 < gLight2B) { + gLight2B = D_80178578; + } + } + if (D_80178578 < gLight2B) { + gLight2B -= D_80178540; + if (gLight2B < D_80178578) { + gLight2B = D_80178578; + } + } + Math_SmoothStepToAngle(&D_801784EC, D_801784F8, 1.0f, D_80178510, 0.0f); + Math_SmoothStepToAngle(&D_801784F0, D_801784FC, 1.0f, D_80178510, 0.0f); + Math_SmoothStepToAngle(&D_801784F4, D_80178500, 1.0f, D_80178510, 0.0f); + D_801784F8 = D_801784C4 = D_801784D0; + D_801784FC = D_801784C8 = D_801784D4; + D_80178500 = D_801784CC = D_801784D8; + D_801784E8 = 5.0f; + D_80178570 = gLight1R; + D_80178574 = gLight1G; + D_80178578 = gLight1B; + pad = player->unk_034; + Matrix_RotateZ(gCalcMatrix, M_DTOR * pad, 0); + Matrix_RotateX(gCalcMatrix, -player->unk_05C, 1); + Matrix_RotateY(gCalcMatrix, player->unk_058, 1); + Matrix_Push(&gCalcMatrix); + Matrix_RotateX(gCalcMatrix, M_DTOR * D_801784B8, 1); + Matrix_RotateY(gCalcMatrix, M_DTOR * D_801784BC, 1); + Matrix_RotateZ(gCalcMatrix, M_DTOR * D_801784C0, 1); + sp44.x = 0.0f; + sp44.y = 0.0f; + sp44.z = 100.0f; + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); + gLight1x = sp38.x; + gLight1y = sp38.y; + gLight1z = sp38.z; + Matrix_Pop(&gCalcMatrix); + Matrix_RotateX(gCalcMatrix, M_DTOR * D_801784EC, 1); + Matrix_RotateY(gCalcMatrix, M_DTOR * D_801784F0, 1); + Matrix_RotateZ(gCalcMatrix, M_DTOR * D_801784F4, 1); + Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp44, &sp38); + gLight2x = sp38.x; + gLight2y = sp38.y; + gLight2z = sp38.z; +} + +void func_800B79B0(void) { + s32 var_v0_2; + s32 sp40; + f32 sp3C; + u8 var_a0; + u8 sp3A; + + switch (gCurrentLevel) { + case LEVEL_TRAINING: + if (gLevelMode == LEVELMODE_ALL_RANGE) { + func_DF4260_8019949C(); + } + break; + case LEVEL_VERSUS: + func_800C26C8(); + D_80177844++; + if ((D_80177844 == 200) && (gLaserStrength[0] == 0) && (gLaserStrength[1] == 0) && + (gLaserStrength[2] == 0) && (gLaserStrength[3] == 0)) { + func_800B852C(OBJ_ITEM_LASERS, &gItems[0]); + } + if ((D_80177844 == 400) && (gBombCount[0] == 0) && (gBombCount[1] == 0) && (gBombCount[2] == 0) && + (gBombCount[3] == 0)) { + func_800B852C(OBJ_ITEM_BOMB, &gItems[1]); + } + if (D_80177844 == 500) { + D_80177844 = 0; + } + break; + case LEVEL_VENOM_2: + if ((gPlayer->state_1C8 != PLAYERSTATE_1C8_7) && (D_8017827C == 2)) { + gPlayer->state_1C8 = PLAYERSTATE_1C8_7; + gPlayer->unk_1D0 = 0; + gPlayer->unk_234 = 1; + gPlayer->pos.z = 15000.0f; + func_800B7184(gPlayer, 1); + D_80178340 = 255; + D_8017835C = 255; + D_80178358 = 255; + + D_80178348 = D_80178350 = D_80178354 = 255; + } + break; + case LEVEL_VENOM_ANDROSS: + func_E9F1D0_8018BDD8(); + D_80177940 = -25000.0f; + gPlayer->unk_0A0 = 612.0f; + gPlayer->unk_0A4 = -544.0f; + if (D_Timer_80177B44 != 0) { + D_Timer_80177B44--; + if (D_Timer_80177B44 == 0) { + func_E9F1D0_80189214(); + } + } + break; + case LEVEL_METEO: + Texture_Scroll(D_102FF08, 8, 8, 1); + /* fallthrough */ + case LEVEL_SECTOR_X: + if (D_8017827C == 1) { + gBlurAlpha = 128; + if (gPlayer->state_1C8 == PLAYERSTATE_1C8_7) { + Math_SmoothStepToF(&D_8015F960, 0.0f, 1.0f, 1.0f, 0.0f); + } else { + Math_SmoothStepToF(&D_8015F960, 128.0f, 1.0f, 1.0f, 0.0f); + } + } + if ((gCurrentLevel == LEVEL_SECTOR_X) && (D_8017827C == 0) && (D_80177E80 == 4)) { + D_80177E80++; + gPlayer->state_1C8 = PLAYERSTATE_1C8_8; + gPlayer->unk_1D0 = 0; + gOverlayStage = 1; + Audio_PlaySfx(0x1900602A, &D_800C5D28, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + D_80177930 = 2; + D_800D3180[gCurrentLevel] = 1; + } + break; + case LEVEL_CORNERIA: + func_8008C104(D_603EB38, D_6028A60); + if (gFrameCount & 1) { + Texture_Scroll(D_600CBD8, 64, 32, 3); + } + break; + case LEVEL_AQUAS: + func_8008C104(D_603158C, D_602ACC0); + break; + case LEVEL_SOLAR: + func_800A3FEC(); + + for (D_80177CE8; D_80177CE8 >= 10.0f; D_80177CE8 -= 10.0f) { + Texture_Scroll(D_6005710, 32, 32, 1); + } + if (gPlayer->state_1C8 == PLAYERSTATE_1C8_6) { + Texture_Scroll(D_6005710, 32, 32, 1); + } + Texture_Mottle(D_601E1E8, D_6020F60, 3); + + if (gPlayer[0].pos.y > 600.0f) { + var_v0_2 = 7; + sp3A = 5; + } else if (gPlayer[0].pos.y > 500.0f) { + var_v0_2 = 7; + sp3A = 4; + } else if (gPlayer[0].pos.y > 400.0f) { + var_v0_2 = 3; + sp3A = 3; + } else if (gPlayer[0].pos.y > 300.0f) { + var_v0_2 = 3; + sp3A = 2; + } else if (gPlayer[0].pos.y > 200.0f) { + var_v0_2 = 1; + sp3A = 1; + } else if (gPlayer[0].pos.y > 100.0f) { + var_v0_2 = 0; + sp3A = 0; + } else { + var_v0_2 = 0; + } + + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && !(gFrameCount & var_v0_2)) { + gPlayer[0].shields--; + if (gPlayer[0].shields <= 0) { + gPlayer[0].shields = 0; + } + if (gPlayer[0].heal == 0) { + if (gPlayer[0].shields == 50) { + Audio_PlaySfx(0x49008011, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } else if (gPlayer[0].shields == 100) { + Audio_PlaySfx(0x49008010, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } + } + } + var_a0 = MIN(gPlayer[0].shields, 0xFF); + func_8001D1C8(var_a0, sp3A); + if (!(gFrameCount & 7) && (gPlayer->state_1C8 != PLAYERSTATE_1C8_7)) { + func_E16C50_8019E8B8((Rand_ZeroOne() - 0.5f) * 6000.0f, -80.0f, + (Rand_ZeroOne() * 2000.0f) + -6000.0f + gPlayer->unk_138, + (Rand_ZeroOne() * 10.0f) + 20.0f); + } + func_8008C104(D_60229A4, D_6010198); + if (gPlayer->shields == 0) { + D_80177B4C = 1; + } + break; + case LEVEL_ZONESS: + func_800A3FEC(); + for (D_80177CE8; D_80177CE8 >= 20.0f; D_80177CE8 -= 20.0f) { + Texture_Scroll(D_602C2CC, 32, 32, 1); + } + if (gPlayer->state_1C8 == PLAYERSTATE_1C8_6) { + Texture_Scroll(D_602C2CC, 32, 32, 1); + } + func_8008C104(D_602C2CC, D_600D990); + if (func_800A73E4(&sp3C, &sp40, gPlayer->camEye.x, gPlayer->camEye.y, gPlayer->camEye.z - D_80177D20)) { + gLight1R = 0; + gLight1G = 7; + gLight1B = 10; + gAmbientR = gAmbientG = gAmbientB = 0; + gFogNear = 990; + gFogFar = 994; + gBgColor = 0x43; // 0, 8, 8 + } else { + gBgColor = 0x4107; // 64, 32, 24 + gLight1R = 90; + gLight1G = 100; + gLight1B = 50; + gAmbientR = 10; + gAmbientG = 20; + gAmbientB = 0; + gFogNear = 996; + gFogFar = 1000; + } + break; + } +} + +void func_800B832C(void) { + s32 i; + + func_800A6590(); + for (i = 1; i < 4; i++) { + if (gTeamDamage[i] > 0) { + gTeamDamage[i] -= 2; + gTeamShields[i] -= 2; + if (gTeamShields[i] <= 0) { + gTeamShields[i] = -1; + } + } + } + for (i = 0; i < gCamCount; i++) { + gPlayer[i].num = gPlayerNum = i; + func_800B48BC(&gPlayer[i]); + } + Object_UpdateAll(); + func_8003D9B8(); + func_8007729C(); + for (i = 0; i < gCamCount; i++) { + gPlayer[i].num = gPlayerNum = i; + func_800B71E4(&gPlayer[i]); + } + D_8017847C = 0.0f; + if (D_80178480 != 0) { + f32 var_fv1; + + D_80178480--; + var_fv1 = D_80178480; + if (var_fv1 > 20.0f) { + var_fv1 = 20.0f; + } + D_8017847C = var_fv1 * __sinf(gFrameCount * 70.0f * M_DTOR); + } + func_800B79B0(); +} + +void func_800B852C(s32 objId, Item* item) { + u8 sp1F = Rand_ZeroOne() * 5.0f; + + if (D_800D317C == sp1F) { + D_80177844 -= 1; + } else { + D_800D317C = sp1F; + if (item->obj.status == 0) { + Item_Initialize(item); + item->obj.status = 1; + item->obj.pos.x = gObjects58[sp1F].obj.pos.x; + item->obj.pos.y = gObjects58[sp1F].obj.pos.y; + item->obj.pos.z = gObjects58[sp1F].obj.pos.z; + item->obj.id = objId; + Object_SetInfo(&item->info, item->obj.id); + } + } +} + +void func_800B86A4(f32* arg0) { + *arg0 += D_80177D20 + 15000.0f; +} + +void func_800B86CC(void) { + s32 pad1; + s32 pad2; + s32 pad3; + s32 i; + f32 sp34; + + switch (D_80177C70) { + case 0: + sp34 = 45.0f; + break; + case 1: + sp34 = 45.0f; + break; + case 2: + sp34 = 55.0f; + break; + } + Math_SmoothStepToF(&D_80161A3C, sp34, 0.1f, 5.0f, 0.0f); + if (D_80177E84 != 0) { + D_80177E84 = 0; + gLevelMode = LEVELMODE_ALL_RANGE; + if (gCurrentLevel != LEVEL_VENOM_ANDROSS) { + MEM_ARRAY_ALLOCATE(gObjects58, 200); + } + for (i = 0; i < 200; i++) { + gObjects58[i].obj.status = 0; + } + func_800A6148(); + if (gCurrentLevel == LEVEL_CORNERIA) { + func_800A5338(); + } else if (gCurrentLevel == LEVEL_SECTOR_Y) { + func_800A55B0(); + } else if (gCurrentLevel == LEVEL_VENOM_ANDROSS) { + func_800A57E0(); + } else if (gCurrentLevel == LEVEL_TRAINING) { + func_DF4260_80198C50(); + } + func_800B86A4(&gPlayer->pos.z); + func_800B86A4(&gPlayer->unk_138); + gPlayer->camEye.z += 15000.0f; + gPlayer->camAt.z += 15000.0f; + gPlayer->unk_144 = gPlayer->unk_140 = D_80177D08 = D_80177D20 = 0.0f; + } + if (D_80177854 != 100) { + (void) "play_time = %d\n"; + gFrameCount++; + } + switch (D_80177854) { + case 0: + if (D_Timer_8017783C == 0) { + D_80177854 = 1; + } + break; + case 1: + func_800ABAB4(); + D_800D2F5C = gVolumeSettings[0]; + D_800D2F60 = gVolumeSettings[1]; + D_800D2F64 = gVolumeSettings[2]; + D_80177854 = 2; + break; + case 2: + if (!((D_80177838 == 0) && (D_80177840 == 0))) { + D_801779BC = 0; + } else { + D_801779BC = 1; + } + gDrawMode = DRAWMODE_4; + func_800B832C(); + if ((gControllerPress[gMainController].button & START_BUTTON) && + (gPlayer->state_1C8 == PLAYERSTATE_1C8_2) && + gSaveFile.save.data.planet[D_800D2F6C[gCurrentLevel]].normalClear) { + func_8001AE58(); + func_8001D400(0); + func_800A6148(); + for (i = 0; i < gCamCount; i++) { + Audio_KillSfx(gPlayer[i].unk_460_arr); + func_8001CA24(i); + } + D_80177854 = 1; + gDrawMode = gVersusMode = 0; + gCamCount = 1; + gBgColor = 0; + D_80177A80 = D_80177840 = D_80177838 = gRadioState = 0; + D_8017782C = 0; + } + if (gVersusMode) { + func_800C1E9C(); + } + if ((gControllerPress[gMainController].button & START_BUTTON) && (D_801779BC != 0)) { + func_8001D638(1); + D_80177854 = 100; + D_80177868 = 4; + D_80178484 = 100000; + } + break; + case 100: + if (!gVersusMode) { + if ((gControllerPress[gMainController].button & R_TRIG) && (gPlayer[0].form != FORM_BLUE_MARINE) && + (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_0)) { + if (D_800D2860[0] = 1 - D_800D2860[0]) { + Audio_PlaySfx(0x49000019, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } else { + Audio_PlaySfx(0x4900101A, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + } + } + } else { + for (i = 0; i < 4; i++) { + if ((gControllerPress[i].button & R_TRIG) && (gPlayer[i].form != FORM_ON_FOOT)) { + if (D_800D2860[i] = 1 - D_800D2860[i]) { + func_80060F30(gPlayer[i].unk_460_arr, 0x49000019, i); + } else { + func_80060F30(gPlayer[i].unk_460_arr, 0x4900101A, i); + } + } + } + } + if ((D_80177868 == 4) && (gControllerPress[gMainController].button & START_BUTTON) && (D_801779BC != 0)) { + func_8001D638(0); + D_80177854 = 2; + gDrawMode = DRAWMODE_4; + } + D_801779BC = 1; + break; + } +} diff --git a/src/main/fox_radio.c b/src/main/fox_radio.c index 915cc576..8f5f9ddf 100644 --- a/src/main/fox_radio.c +++ b/src/main/fox_radio.c @@ -74,7 +74,7 @@ void func_800BA808(u16* msg, s32 character) { } } - if ((D_8017829C != 0) && (func_800BA7BC(msg, priority) == 1)) { + if ((gRadioState != 0) && (func_800BA7BC(msg, priority) == 1)) { return; } @@ -85,7 +85,7 @@ void func_800BA808(u16* msg, s32 character) { D_80177D68 = RCID_FOX_EXPERT; } - if (gCurrentLevel == LEVEL_VENOM_SW) { + if (gCurrentLevel == LEVEL_VENOM_2) { switch (character) { case RCID_WOLF: D_80177D68 = RCID_WOLF_2; @@ -103,7 +103,7 @@ void func_800BA808(u16* msg, s32 character) { } D_80178308 = msg; - D_8017829C = 100; + gRadioState = 100; switch (gGameState) { case GSTATE_TITLE: @@ -245,55 +245,55 @@ void func_800BAAE8(void) { case RCID_ANDREW_2_OPEN: sp44 = D_F002D60; break; - case RCID_BOSS_CORNERIA: // Corneria robot boss + case RCID_BOSS_CORNERIA: sp44 = D_6026420; break; case RCID_BOSS_CORNERIA_OPEN: sp44 = D_6027340; break; - case RCID_BOSS_CORNERIA2: // Corneria secret boss + case RCID_BOSS_CORNERIA2: sp44 = D_60245E0; break; case RCID_BOSS_CORNERIA2_OPEN: sp44 = D_6025500; break; - case RCID_BOSS_METEO: // Meteo Boss + case RCID_BOSS_METEO: sp44 = D_601C8E0; break; case RCID_BOSS_METEO_OPEN: sp44 = D_601D800; break; - case RCID_BOSS_AREA6: // Area 6 Boss + case RCID_BOSS_AREA6: sp44 = D_60047E0; break; case RCID_BOSS_AREA6_OPEN: sp44 = D_6005700; break; - case RCID_CAIMAN_AREA6: // Area 6 Caiman + case RCID_CAIMAN_AREA6: sp44 = D_60029A0; break; case RCID_CAIMAN_AREA6_OPEN: sp44 = D_60038C0; break; - case RCID_BOSS_ZONESS: // Zoness boss + case RCID_BOSS_ZONESS: sp44 = D_6014510; break; case RCID_BOSS_ZONESS_OPEN: sp44 = D_6015430; break; - case RCID_BOSS_SECTORX: // Sector X boss + case RCID_BOSS_SECTORX: sp44 = D_6020FB0; break; case RCID_BOSS_SECTORX_OPEN: sp44 = D_6021ED0; break; - case RCID_BOSS_SECTORY: // Sector Y boss + case RCID_BOSS_SECTORY: sp44 = D_6018F30; break; case RCID_BOSS_SECTORY_OPEN: sp44 = D_6019E50; break; - case RCID_BOSS_MACBETH: // Macbeth boss + case RCID_BOSS_MACBETH: sp44 = D_6010C20; break; case RCID_BOSS_MACBETH_OPEN: @@ -353,13 +353,13 @@ void func_800BAAE8(void) { case RCID_PEPPER_OPEN: sp44 = D_D008990; break; - case RCID_ROB64_TITLE: // rob title? + case RCID_ROB64_TITLE: sp44 = D_E00E100; break; case RCID_ROB64_TITLE_OPEN: sp44 = D_E00F020; break; - case RCID_PEPPER_TITLE: // pepper title? + case RCID_PEPPER_TITLE: sp44 = D_E00FF40; break; case RCID_PEPPER_TITLE_OPEN: @@ -474,30 +474,30 @@ void func_800BB5D0(void) { if ((D_80177854 == 100) && (gGameState != GSTATE_CREDITS)) { return; } - if (D_801782AC > 0) { - D_801782AC--; + if (D_Timer_801782AC > 0) { + D_Timer_801782AC--; } - if (D_801782B4 > 0) { - D_801782B4--; + if (D_Timer_801782B4 > 0) { + D_Timer_801782B4--; } - switch (D_8017829C) { + switch (gRadioState) { case 100: D_80178748 = 1; D_801782A4 = 1000; - D_8017829C = 1; + gRadioState = 1; D_801782D8 = 0; D_80177D38 = 0.0f; D_80177D50 = 0.0f; D_8017874C = 0; if (gCamCount != 1) { - D_8017829C = 0; + gRadioState = 0; } break; case 1: D_80177D38 += 0.25f; if (D_80177D38 == 1.0f) { - D_8017829C++; - D_801782AC = 10; + gRadioState++; + D_Timer_801782AC = 10; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -505,9 +505,9 @@ void func_800BB5D0(void) { } break; case 2: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 10; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 10; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -515,16 +515,16 @@ void func_800BB5D0(void) { } break; case 3: - if (D_801782AC == 0) { - D_8017829C++; + if (D_Timer_801782AC == 0) { + gRadioState++; temp_v0 = Message_GetWidth(D_80178308); if (D_80137E78 == 3) { - D_801782AC = temp_v0 + 16; + D_Timer_801782AC = temp_v0 + 16; } else { - D_801782AC = 2 * temp_v0 + 16; + D_Timer_801782AC = 2 * temp_v0 + 16; } if ((gGameState == GSTATE_TITLE) || (gGameState == GSTATE_CREDITS)) { - D_801782AC = temp_v0 * 2; + D_Timer_801782AC = temp_v0 * 2; } } D_801782A4 = (s32) D_80177D68; @@ -534,8 +534,8 @@ void func_800BB5D0(void) { } break; case 31: - D_8017829C++; - D_801782AC = 80 - D_801782AC; + gRadioState++; + D_Timer_801782AC = 80 - D_Timer_801782AC; break; case 32: if (func_8001AE78() == 0) { @@ -545,26 +545,26 @@ void func_800BB5D0(void) { D_801782D8 = 0; D_8017874C = 0; - D_801782AC = 80; - D_801782AC = Message_GetWidth(D_80178308) * 2; - D_8017829C = 4; + D_Timer_801782AC = 80; + D_Timer_801782AC = Message_GetWidth(D_80178308) * 2; + gRadioState = 4; } break; case 4: - if ((func_8001AE78() == 0) && (D_801782AC == 0)) { - D_801782AC = 10; + if ((func_8001AE78() == 0) && (D_Timer_801782AC == 0)) { + D_Timer_801782AC = 10; D_801782A4 = (s32) D_80177D68; - D_8017829C = 6; + gRadioState = 6; } D_801782A4 = (s32) D_80177D68; - if (D_801782B4 > 0) { + if (D_Timer_801782B4 > 0) { D_801782A4++; } temp_v0 = func_8001AED4(); if (D_801782D8 < 60) { if (D_80178308[D_801782D8 + 1] == 15) { if (temp_v0 == 0) { - D_8017829C = 31; + gRadioState = 31; } } else { D_801782D8++; @@ -573,33 +573,33 @@ void func_800BB5D0(void) { if (D_8017874C != 0) { if ((D_801782E8 >= 23000) && (D_801782E8 < 23033)) { if (D_801782F8 != 0) { - D_801782B4 = 2; - func_80019218(0x49000017, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + D_Timer_801782B4 = 2; + Audio_PlaySfx(0x49000017, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } else if (temp_v0 == 1) { - D_801782B4 = 2; + D_Timer_801782B4 = 2; } else { - D_801782B4 = 0; + D_Timer_801782B4 = 0; } } D_8017874C ^= 1; break; case 5: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 10; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 10; } D_801782A4 = (s32) D_80177D68; break; case 6: - if (D_801782AC == 0) { + if (D_Timer_801782AC == 0) { if (!D_801782A4) {} if (gGameState == GSTATE_CREDITS) { func_8001AE58(); } else { func_8001ACDC(0); } - D_8017829C++; + gRadioState++; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -615,7 +615,7 @@ void func_800BB5D0(void) { if (D_80177D38 == 0) { D_80178300 = 0; sCurrentMsgPri = 0; - D_8017829C = 0; + gRadioState = 0; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -630,7 +630,7 @@ void func_800BB5D0(void) { case 0: break; } - if ((D_8017829C > 0) && (D_8017829C != 100) && (D_80178300 == 0)) { + if ((gRadioState > 0) && (gRadioState != 100) && (D_80178300 == 0)) { func_800BAAE8(); func_800BB388(); temp_ft0 = (s32) D_80177D68; @@ -680,8 +680,9 @@ void func_800BB5D0(void) { var_v1 = 0; break; } - if ((gObjects2F4[var_v1].obj.status != 2) && (gFrameCount & 4) && (gPlayer[0].unk_1C8 == 3) && - (D_801782A4 != 2) && (D_801782A4 != 3) && (D_801782A4 != 1000)) { + if ((gObjects2F4[var_v1].obj.status != 2) && (gFrameCount & 4) && + (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) && (D_801782A4 != 2) && (D_801782A4 != 3) && + (D_801782A4 != 1000)) { RCP_SetupDL(&gMasterDisp, 0x4C); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); Graphics_DisplaySmallText(31, 167, 1.0f, 1.0f, "DOWN"); @@ -706,35 +707,35 @@ void func_800BB5D0(void); void func_800BC040(void) { if (D_80177854 != 100) { - if (D_801782AC > 0) { - D_801782AC--; + if (D_Timer_801782AC > 0) { + D_Timer_801782AC--; } - if (D_801782B4 > 0) { - D_801782B4--; + if (D_Timer_801782B4 > 0) { + D_Timer_801782B4--; } - switch (D_8017829C) { + switch (gRadioState) { case 100: D_801782A4 = 1000; - D_8017829C = 1; + gRadioState = 1; D_80177D38 = 0.0f; D_80177D50 = 0.0f; D_801782D8 = Message_GetWidth(D_80178308); if (gCamCount != 1) { - D_8017829C = 0; + gRadioState = 0; } break; case 1: D_80177D38 += 0.02f; if (D_80177D38 == 0.04f) { - D_8017829C++; - D_801782AC = 5; + gRadioState++; + D_Timer_801782AC = 5; } break; case 2: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 5; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 5; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -742,11 +743,11 @@ void func_800BC040(void) { } break; case 3: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 5; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 5; if (gGameState == GSTATE_TITLE) { - D_801782AC = 30; + D_Timer_801782AC = 30; } } D_801782A4 = (s32) D_80177D68; @@ -756,22 +757,22 @@ void func_800BC040(void) { } break; case 4: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 10; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 10; } break; case 5: - if (D_801782AC == 0) { - D_8017829C++; - D_801782AC = 5; + if (D_Timer_801782AC == 0) { + gRadioState++; + D_Timer_801782AC = 5; } D_801782A4 = (s32) D_80177D68; break; case 6: - if (D_801782AC == 0) { + if (D_Timer_801782AC == 0) { func_8001ACDC(0); - D_8017829C++; + gRadioState++; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -785,8 +786,8 @@ void func_800BC040(void) { case 7: D_80177D38 -= 0.02f; if (D_80177D38 == 0) { - D_8017829C = 0; - D_801782AC = 5; + gRadioState = 0; + D_Timer_801782AC = 5; } D_801782A4 = 2; if (gFrameCount & 1) { @@ -796,7 +797,7 @@ void func_800BC040(void) { case 0: break; } - if ((D_8017829C > 0) && (D_8017829C != 100)) { + if ((gRadioState > 0) && (gRadioState != 100)) { func_800BAAE8(); func_800BB388(); if (((s32) D_80177D68 == RCID_FALCO) || ((s32) D_80177D68 == RCID_SLIPPY) || @@ -806,7 +807,7 @@ void func_800BC040(void) { Matrix_Translate(gGfxMatrix, -150.0f, -115.0f, -443.0f, 1); Matrix_Scale(gGfxMatrix, 0.068f, 0.068f, 1.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); - D_801778A0 = 0; + gPlayerNum = 0; Matrix_Pop(&gGfxMatrix); } } diff --git a/src/main/sf_2EFE0.c b/src/main/sf_2EFE0.c index 9dac47e4..4ede2cea 100644 --- a/src/main/sf_2EFE0.c +++ b/src/main/sf_2EFE0.c @@ -5,7 +5,7 @@ void func_80187520(s32, void*); void func_8002E3E0(Object_2F4* obj2F4) { s32 hits = 0; - if (gCurrentLevel == LEVEL_VENOM_SW) { + if (gCurrentLevel == LEVEL_VENOM_2) { if (D_8015F940 < 0xF00) { hits = 50; } else if (D_8015F940 < 0x1680) { @@ -34,7 +34,7 @@ void func_8002E3E0(Object_2F4* obj2F4) { } s32 func_8002E4F8(u16* arg0, s32 arg1) { - if ((D_8017829C == 0) && (gPlayer[0].unk_1C8 != 0)) { + if ((gRadioState == 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_0)) { func_800BA808(arg0, arg1); return true; } else { @@ -48,7 +48,7 @@ void func_8002E548(void) { func_8008E51C(D_8015F930, D_8015F944); if ((D_8015F930[0] == 0) && (sp24 != D_8015F930[1]) && (D_8015F930[1] < 15)) { - func_80019218(0x4900C02A, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900C02A, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } } @@ -90,7 +90,7 @@ void func_8002E6DC(Object_2F4* obj408) { #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002ED60.s") void func_8002EE34(void) { - D_8015F904 = D_8017829C = gObjects2F4[1].unk_054 = gObjects2F4[2].unk_054 = gObjects2F4[3].unk_054 = 0; + D_8015F904 = gRadioState = gObjects2F4[1].unk_054 = gObjects2F4[2].unk_054 = gObjects2F4[3].unk_054 = 0; } #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_2EFE0/func_8002EE64.s") @@ -103,7 +103,7 @@ void func_8002EE34(void) { void func_8002F64C(void) { if ((D_80177CD0[0] + D_80177CD0[1] + D_80177CD0[2] + D_80177CD0[3]) == 0) { - D_8017829C = 0; + gRadioState = 0; } func_8002F5F4(); } diff --git a/src/main/sf_3E6F0.c b/src/main/sf_3E6F0.c index 7c7f24cd..fe631268 100644 --- a/src/main/sf_3E6F0.c +++ b/src/main/sf_3E6F0.c @@ -1,4 +1,4 @@ -#include "common.h" +#include "global.h" #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_3E6F0/func_8003DAF0.s") diff --git a/src/main/sf_77E40.c b/src/main/sf_77E40.c index 97322506..9ae0b4bf 100644 --- a/src/main/sf_77E40.c +++ b/src/main/sf_77E40.c @@ -29,11 +29,11 @@ void func_8007729C(void) { if (ent1C->timer == 0) { ent1C->hits = 0; } - if (gAllRangeMode == 0) { + if (gLevelMode == LEVELMODE_ON_RAILS) { ent1C->pos.z -= D_80177D08; - } else if (gPlayer[0].unk_1C8 == 3) { - ent1C->pos.x += gPlayer[0].unk_0C0.x; - ent1C->pos.z += gPlayer[0].unk_0C0.z; + } else if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_3) { + ent1C->pos.x += gPlayer[0].vel.x; + ent1C->pos.z += gPlayer[0].vel.z; } if (ent1C->timer < 45) { Math_SmoothStepToF(&ent1C->unk_10, 300.0f, 0.1f, 20.0f, 0.0f); @@ -55,8 +55,8 @@ void func_80077404(UnkEntity1C* ent1C) { if ((fabsf(sp54.x) < 20000.0f) && (fabsf(sp54.y) < 20000.0f)) { if ((sp54.z < 0.0f) && (sp54.z > -20000.0f)) { sp50 = sqrtf(VEC3F_SQ(sp54)) * 0.0015f * 0.2f; - Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); - Matrix_RotateX(gGfxMatrix, gPlayer[D_801778A0].unk_05C, 1); + Matrix_RotateY(gGfxMatrix, -gPlayer[gPlayerNum].unk_058, 1); + Matrix_RotateX(gGfxMatrix, gPlayer[gPlayerNum].unk_05C, 1); Matrix_Scale(gGfxMatrix, sp50, sp50, 1.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, ent1C->unk_10, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); @@ -138,9 +138,9 @@ void func_800778C4(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, f32 obj8C->unk_54.x = arg4; obj8C->unk_54.y = arg5; obj8C->unk_54.z = arg6; - obj8C->unk_70 = arg7; + obj8C->scale2 = arg7; obj8C->unk_4C = 0; - obj8C->unk_6C = 0.5f; + obj8C->scale1 = 0.5f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); obj8C->unk_44 = 0xFF; @@ -158,7 +158,7 @@ void func_8007797C(f32 posX, f32 posY, f32 posZ, f32 arg3, f32 arg4, f32 arg5, f } void func_80077A00(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); gSPDisplayList(gMasterDisp++, D_3016B30); } @@ -167,7 +167,7 @@ void func_80077A7C(Object_8C* obj8C) { RCP_SetupDL_49(); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); gDPSetEnvColor(gMasterDisp++, 255, 255, 255, obj8C->unk_44); - Matrix_Scale(gGfxMatrix, obj8C->unk_6C, obj8C->unk_70, 1.0f, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale1, obj8C->scale2, 1.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 20.0f, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_6024220); @@ -178,8 +178,9 @@ void func_80077B78(Object_8C* obj8C) { } void func_80077B84(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); - if ((obj8C->unk_6C == 71.0f) || ((gPlayer[0].unk_1C8 == 7) && (gCurrentLevel == LEVEL_CORNERIA))) { + Graphics_SetScaleMtx(obj8C->scale2); + if ((obj8C->scale1 == 71.0f) || + ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) && (gCurrentLevel == LEVEL_CORNERIA))) { RCP_SetupDL(&gMasterDisp, 0x26); } else { RCP_SetupDL(&gMasterDisp, 0x43); @@ -247,7 +248,7 @@ void func_80077B84(Object_8C* obj8C) { } void func_80078038(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); RCP_SetupDL_49(); RCP_SetupDL(&gMasterDisp, 0x26); gDPSetPrimColor(gMasterDisp++, 0, 0, 64, 192, 255, obj8C->unk_44); @@ -270,7 +271,7 @@ void func_800780F8(Object_8C* obj8C) { } else { gDPSetPrimColor(gMasterDisp++, 0, 0, 96, 96, 255, 255); } - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); for (i = 0; i < 10; i++) { if ((i >= obj8C->unk_48) && (i < obj8C->unk_46)) { Matrix_Push(&gGfxMatrix); @@ -287,19 +288,19 @@ void func_800780F8(Object_8C* obj8C) { void func_800783C0(Object_8C* obj8C) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gSPDisplayList(gMasterDisp++, D_2006F50); } void func_80078438(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_4A); gSPDisplayList(gMasterDisp++, D_102A8A0); } void func_800784B4(Object_8C* obj8C) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_46); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); Matrix_RotateX(gGfxMatrix, (M_PI / 2.0f), 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_200D750); @@ -307,7 +308,7 @@ void func_800784B4(Object_8C* obj8C) { void func_80078550(Object_8C* obj8C) { RCP_SetupDL(&gMasterDisp, 0x43); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_4A); gDPSetEnvColor(gMasterDisp++, 101, 138, 153, 255); gSPDisplayList(gMasterDisp++, D_3000660); @@ -315,8 +316,8 @@ void func_80078550(Object_8C* obj8C) { } void func_80078604(Object_8C* obj8C) { - if (obj8C->unk_50 == 0) { - func_8005980C(obj8C->unk_70); + if (obj8C->timer_50 == 0) { + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); gSPDisplayList(gMasterDisp++, D_20112C0); } @@ -325,7 +326,7 @@ void func_80078604(Object_8C* obj8C) { void func_8007868C(Object_8C* obj8C) { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); - Matrix_Scale(gGfxMatrix, obj8C->unk_70, obj8C->unk_70, obj8C->unk_70, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2, obj8C->scale2, obj8C->scale2, 1); if (obj8C->unk_44 >= 2) { Matrix_RotateX(gGfxMatrix, (M_PI / 2.0f), 1); } @@ -337,7 +338,7 @@ void func_8007868C(Object_8C* obj8C) { void func_8007879C(Object_8C* obj8C) { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); - Matrix_Scale(gGfxMatrix, obj8C->unk_70 * 0.6f, 1.0f, obj8C->unk_70 * 3.5f, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2 * 0.6f, 1.0f, obj8C->scale2 * 3.5f, 1); Matrix_RotateX(gGfxMatrix, (M_PI / 2.0f), 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1029780); @@ -350,17 +351,17 @@ void func_800788B0(Object_8C* obj8C) { switch (gCurrentLevel) { case LEVEL_METEO: - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 128, 128, 128, 255); gSPDisplayList(gMasterDisp++, D_601FF80); break; case LEVEL_AQUAS: RCP_SetupDL(&gMasterDisp, 0x43); temp_ft3 = Math_ModF(obj8C->index, 4.0f); - gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, (s32) obj8C->unk_6C); + gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, (s32) obj8C->scale1); tmp = &D_800D173C[(s32) (temp_ft3 * 4.0f)]; gDPSetEnvColor(gMasterDisp++, tmp[0], tmp[1], tmp[2], 255); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gSPDisplayList(gMasterDisp++, D_1024AC0); RCP_SetupDL(&gMasterDisp, 0x40); break; @@ -368,7 +369,7 @@ void func_800788B0(Object_8C* obj8C) { } void func_80078A64(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); gSPDisplayList(gMasterDisp++, D_20112C0); } @@ -378,7 +379,7 @@ void func_80078AE0(void* obj8C) { void func_80078AEC(Object_8C* obj8C) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 180); - func_8005980C(obj8C->unk_70 * (13.0f + ((gFrameCount & 1) * 2.5f))); + Graphics_SetScaleMtx(obj8C->scale2 * (13.0f + ((gFrameCount & 1) * 2.5f))); gSPDisplayList(gMasterDisp++, D_102ED50); } @@ -396,19 +397,19 @@ void func_80078BE0(Object_8C* obj8C) { if (gFrameCount & 1) { var_fv0 *= 1.2f; } - func_8005980C(obj8C->unk_70 * var_fv0); + Graphics_SetScaleMtx(obj8C->scale2 * var_fv0); gSPDisplayList(gMasterDisp++, D_600F8A0); } void func_80078C84(Object_8C* obj8C) { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 192); gSPDisplayList(gMasterDisp++, D_6000A80); } void func_80078CE8(Object_8C* obj8C) { gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_4A); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gSPDisplayList(gMasterDisp++, D_6033000); } @@ -419,7 +420,7 @@ void func_80078D60(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; - obj8C->unk_70 = arg4; + obj8C->scale2 = arg4; if (arg4 == 3.1f) { obj8C->unk_54.x = gObjects2F4[8].unk_0E8.x; obj8C->unk_54.y = gObjects2F4[8].unk_0E8.y; @@ -431,7 +432,7 @@ void func_80078D60(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { if (arg4 == 3.5f) { obj8C->unk_4E = 2; } - obj8C->unk_50 = 0xE; + obj8C->timer_50 = 0xE; Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -448,17 +449,17 @@ void func_80078E50(f32 posX, f32 posY, f32 posZ, f32 arg3) { void func_80078EBC(Object_8C* obj8C) { if (obj8C->unk_4E == 2) { - obj8C->unk_54.x = gPlayer[0].unk_0C0.x; - obj8C->unk_54.y = gPlayer[0].unk_0C0.y; - obj8C->unk_54.z = gPlayer[0].unk_0C0.z; + obj8C->unk_54.x = gPlayer[0].vel.x; + obj8C->unk_54.y = gPlayer[0].vel.y; + obj8C->unk_54.z = gPlayer[0].vel.z; } obj8C->obj.rot.z += 35.0f; - if (obj8C->unk_50 >= 7) { - obj8C->unk_6C += 0.25f; + if (obj8C->timer_50 >= 7) { + obj8C->scale1 += 0.25f; } else { - obj8C->unk_6C -= 0.25f; + obj8C->scale1 -= 0.25f; } - if (obj8C->unk_6C <= 0.0f) { + if (obj8C->scale1 <= 0.0f) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } @@ -471,7 +472,7 @@ void func_80078F78(Object_8C* obj8C) { } gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); gDPSetEnvColor(gMasterDisp++, 255, 255, 0, 255); - func_8005980C(obj8C->unk_70 * obj8C->unk_6C); + Graphics_SetScaleMtx(obj8C->scale2 * obj8C->scale1); gSPDisplayList(gMasterDisp++, D_101C2E0); RCP_SetupDL(&gMasterDisp, 0x40); } @@ -502,9 +503,9 @@ void func_8007905C(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 10.0f; obj8C->unk_54.z = (Rand_ZeroOne() - 0.5f) * 10.0f; } else if ((gCurrentLevel == LEVEL_BOLSE) && ((arg4 == 5.11f) || (arg4 == 7.22f))) { - sp3C.x = gPlayer[0].unk_074; - sp3C.y = gPlayer[0].unk_078; - sp3C.z = gPlayer[0].unk_07C; + sp3C.x = gPlayer[0].pos.x; + sp3C.y = gPlayer[0].pos.y; + sp3C.z = gPlayer[0].pos.z; yAng = Math_Atan2F(sp3C.x - posX, sp3C.z - posZ); sp38 = sqrtf(SQ(sp3C.x - posX) + SQ(sp3C.z - posZ)); xAng = -Math_Atan2F(sp3C.y - posY, sp38); @@ -519,12 +520,12 @@ void func_8007905C(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 obj8C->unk_54.z = sp48.z; } else { obj8C->unk_54.y = - (gLevelType == LEVELTYPE_GROUND) ? (Rand_ZeroOne() * 7.0f) + 7.0f : (Rand_ZeroOne() - 0.5f) * 10.0f; + (gLevelType == LEVELTYPE_PLANET) ? (Rand_ZeroOne() * 7.0f) + 7.0f : (Rand_ZeroOne() - 0.5f) * 10.0f; obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 10.0f; obj8C->unk_54.z = (Rand_ZeroOne() - 0.5f) * 10.0f; } - obj8C->unk_70 = ((Rand_ZeroOne() * 0.8f) + 0.3f) * arg4; - obj8C->unk_50 = (s32) (Rand_ZeroOne() * 50.0f) + 0x46; + obj8C->scale2 = ((Rand_ZeroOne() * 0.8f) + 0.3f) * arg4; + obj8C->timer_50 = (s32) (Rand_ZeroOne() * 50.0f) + 0x46; obj8C->obj.rot.x = Rand_ZeroOne() * 360.0f; obj8C->unk_60.x = (Rand_ZeroOne() - 0.5f) * 30.0f; obj8C->unk_60.y = (Rand_ZeroOne() - 0.5f) * 30.0f; @@ -578,24 +579,24 @@ void func_80079618(f32 posX, f32 posY, f32 posZ, f32 arg3) { void func_8007968C(Object_8C* obj8C) { if ((gCurrentLevel != LEVEL_MACBETH) || (obj8C->unk_44 != 7)) { - if ((obj8C->unk_50 == 0) || (obj8C->obj.pos.y < D_80177940)) { + if ((obj8C->timer_50 == 0) || (obj8C->obj.pos.y < D_80177940)) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } else { if (!(gFrameCount & 3)) { func_8007D2C8(obj8C->obj.pos.x, obj8C->obj.pos.y + 550.0f, obj8C->obj.pos.z, 10.0f); } - if ((obj8C->unk_50 == 0) || (obj8C->obj.pos.y < (D_80177940 - 100.0f))) { + if ((obj8C->timer_50 == 0) || (obj8C->obj.pos.y < (D_80177940 - 100.0f))) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } obj8C->obj.rot.x += obj8C->unk_60.x; obj8C->obj.rot.y += obj8C->unk_60.y; obj8C->obj.rot.z += obj8C->unk_60.z; - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { obj8C->unk_54.y -= 0.5f; } - if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].unk_1C8 == 7) && (D_80177A80 >= 176)) { + if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) && (D_80177A80 >= 176)) { obj8C->unk_54.x *= 0.95f; obj8C->unk_54.y *= 0.95f; obj8C->unk_54.z *= 0.95f; @@ -603,10 +604,10 @@ void func_8007968C(Object_8C* obj8C) { if ((gCurrentLevel == LEVEL_MACBETH) && (obj8C->unk_44 == 10)) { obj8C->obj.rot.x = 0.0f; obj8C->obj.rot.y = 0.0f; - if (obj8C->unk_50 >= 25) { - obj8C->unk_6C = 0.5f; - } else if (obj8C->unk_6C > 0.03) { - obj8C->unk_6C -= 0.02f; + if (obj8C->timer_50 >= 25) { + obj8C->scale1 = 0.5f; + } else if (obj8C->scale1 > 0.03) { + obj8C->scale1 -= 0.02f; } } } @@ -621,14 +622,14 @@ s32 func_800798C4(s32 arg0, Gfx** arg1, Vec3f* arg2, Vec3f* arg3, void* arg4) { void func_800798F0(Object_8C* obj8C) { Vec3f frameJointTable[50]; - if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].unk_1C8 == 7)) { + if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7)) { func_8005F670(&obj8C->obj.pos); } RCP_SetupDL(&gMasterDisp, 0x1D); if (gCurrentLevel == LEVEL_KATINA) { gSPFogPosition(gMasterDisp++, gFogNear, 1005); } - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); switch (gCurrentLevel) { case LEVEL_MACBETH: switch (obj8C->unk_44) { @@ -666,7 +667,7 @@ void func_800798F0(Object_8C* obj8C) { RCP_SetupDL(&gMasterDisp, 0x43); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); gDPSetEnvColor(gMasterDisp++, 255, 80, 0, 255); - func_8005980C(obj8C->unk_6C); + Graphics_SetScaleMtx(obj8C->scale1); gSPDisplayList(gMasterDisp++, D_1024AC0); break; case 11: @@ -761,19 +762,19 @@ void func_8007A28C(Object_8C* obj8C) { Texture_Scroll(D_10190C0, 16, 32, 0); D_8017812C = 2; obj8C->obj.rot.y += 1.0f; - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.05f, 1.5f, 0.001f); - if (obj8C->unk_50 >= 0xB) { + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.05f, 1.5f, 0.001f); + if (obj8C->timer_50 >= 0xB) { D_801779A8[0] = 60.0f; } - if (obj8C->unk_50 == 48) { + if (obj8C->timer_50 == 48) { D_80178340 = 150; } - if (obj8C->unk_50 > 45) { + if (obj8C->timer_50 > 45) { D_80178358 = 0; D_80178348 = D_80178350 = D_80178354 = 255; } D_8017835C = 3; - if (obj8C->unk_50 == 0) { + if (obj8C->timer_50 == 0) { obj8C->unk_44 -= 2; if (obj8C->unk_44 < 0) { obj8C->unk_44 = 0; @@ -785,7 +786,7 @@ void func_8007A28C(Object_8C* obj8C) { void func_8007A3C0(Object_8C* obj8C) { if (D_80161410 > 0) { - Matrix_Scale(gGfxMatrix, obj8C->unk_70, obj8C->unk_70, obj8C->unk_70, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2, obj8C->scale2, obj8C->scale2, 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL_64_2(); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_44); @@ -800,13 +801,13 @@ void func_8007A4B8(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; obj8C->obj.id = OBJ_8C_383; - obj8C->unk_6C = arg4; - obj8C->unk_50 = 50; + obj8C->scale1 = arg4; + obj8C->timer_50 = 50; obj8C->unk_44 = 200; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - func_80019218(0x2940F026, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2940F026, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -829,19 +830,19 @@ void func_8007A5F8(Object_8C* obj8C, Vec3f* arg1, u32 arg2) { obj8C->obj.pos.x = arg1->x; obj8C->obj.pos.y = arg1->y; obj8C->obj.pos.z = arg1->z; - obj8C->unk_50 = 50; + obj8C->timer_50 = 50; if ((arg2 == 0x1903400F) || (arg2 == 0x11000055)) { - func_80019218(arg2, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg2, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (arg2 == 0x11000055) { - obj8C->unk_50 = 300; + obj8C->timer_50 = 300; } } else { - func_80019218(arg2, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(arg2, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } Object_SetInfo(&obj8C->info, obj8C->obj.id); } -void func_8007A6F0(Vec3f* arg0, u32 arg1) { +void func_8007A6F0(Vec3f* arg0, s32 arg1) { s32 i; for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { @@ -853,15 +854,15 @@ void func_8007A6F0(Vec3f* arg0, u32 arg1) { } void func_8007A748(Object_8C* obj8C) { - if (obj8C->unk_50 == 0) { + if (obj8C->timer_50 == 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } s32 func_8007A774(Player* player, Object_8C* obj8C, f32 arg2) { - if ((fabsf(player->unk_138 - obj8C->obj.pos.z) < arg2) && (fabsf(player->unk_074 - obj8C->obj.pos.x) < arg2) && - (fabsf(player->unk_078 - obj8C->obj.pos.y) < arg2) && (player->unk_498 == 0)) { - func_800A6CD0(player, 0, obj8C->info.damage); + if ((fabsf(player->unk_138 - obj8C->obj.pos.z) < arg2) && (fabsf(player->pos.x - obj8C->obj.pos.x) < arg2) && + (fabsf(player->pos.y - obj8C->obj.pos.y) < arg2) && (player->timer_498 == 0)) { + Player_ApplyDamage(player, 0, obj8C->info.damage); return 1; } else { return 0; @@ -875,7 +876,7 @@ void func_8007A818(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; obj8C->unk_44 = arg5; obj8C->unk_46 = arg6; obj8C->unk_60.z = (Rand_ZeroOne() - 0.5f) * 10.0f; @@ -900,7 +901,7 @@ void func_8007A900(f32 posX, f32 posY, f32 posZ, f32 arg3, u8 arg4, u8 arg5, u16 } void func_8007A994(Object_8C* obj8C) { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.1f, 10.0f, 0.01f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.1f, 10.0f, 0.01f); obj8C->obj.rot.z += obj8C->unk_60.z; obj8C->unk_54.y += obj8C->unk_60.y; if (obj8C->unk_4A & 1) { @@ -925,7 +926,7 @@ void func_8007AA60(Object_8C* obj8C) { RCP_SetupDL(&gMasterDisp, 0x44); gDPSetPrimColor(gMasterDisp++, 0, 0, 31, 10, 00, obj8C->unk_44); gDPSetEnvColor(gMasterDisp++, 141, 73, 5, 0); - Matrix_Scale(gGfxMatrix, obj8C->unk_70, obj8C->unk_70, 1.0f, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2, obj8C->scale2, 1.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_800D178C[obj8C->unk_4C]); obj8C->unk_4C = obj8C->unk_48; @@ -934,13 +935,13 @@ void func_8007AA60(Object_8C* obj8C) { void func_8007AB50(Object_8C* obj8C) { if (obj8C->unk_4E == 0) { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.1f, 10.0f, 0.0f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.1f, 10.0f, 0.0f); obj8C->unk_44 -= 20; if (obj8C->unk_44 < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } else { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.1f, 10.0f, 0.0f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.1f, 10.0f, 0.0f); obj8C->unk_44 -= 10; if (obj8C->unk_44 < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); @@ -956,11 +957,11 @@ void func_8007AC0C(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 ar obj8C->obj.pos.y = D_80177940; obj8C->obj.pos.z = posZ; obj8C->unk_44 = 0xB4; - obj8C->unk_70 = arg4; - obj8C->unk_6C = arg5; + obj8C->scale2 = arg4; + obj8C->scale1 = arg5; obj8C->obj.rot.y = arg6; - obj8C->unk_54.x = gPlayer[0].unk_0C0.x * 0.6f; - obj8C->unk_54.z = gPlayer[0].unk_0C0.z * 0.6; // Forgotten f means bad codegen + obj8C->unk_54.x = gPlayer[0].vel.x * 0.6f; + obj8C->unk_54.z = gPlayer[0].vel.z * 0.6; // Forgotten f means bad codegen Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -984,8 +985,8 @@ void func_8007AD58(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 ar obj8C->obj.pos.y = D_80177940; obj8C->obj.pos.z = posZ; obj8C->unk_44 = 0xB4; - obj8C->unk_70 = arg4; - obj8C->unk_6C = arg5; + obj8C->scale2 = arg4; + obj8C->scale1 = arg5; obj8C->obj.rot.y = arg6; Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -1018,8 +1019,8 @@ void func_8007AF30(Object_8C* obj8C, f32 posX, f32 posZ, f32 arg3, f32 arg4, f32 obj8C->obj.pos.z = posZ; obj8C->unk_54.x = arg3; obj8C->unk_54.z = arg4 - D_80177D08; - obj8C->unk_6C = arg5; - obj8C->unk_50 = 0x64; + obj8C->scale1 = arg5; + obj8C->timer_50 = 0x64; Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -1039,17 +1040,17 @@ void func_8007B040(Object_8C* obj8C) { s32 sp28; if (func_800A73E4(&sp2C, &sp28, obj8C->obj.pos.x, obj8C->obj.pos.y, obj8C->obj.pos.z)) { - D_801782EC[sp28] = obj8C->unk_6C; - D_801782EC[sp28 + 1] = obj8C->unk_6C * 0.7f; - D_801782EC[sp28 - 1] = obj8C->unk_6C * 0.7f; + D_801782EC[sp28] = obj8C->scale1; + D_801782EC[sp28 + 1] = obj8C->scale1 * 0.7f; + D_801782EC[sp28 - 1] = obj8C->scale1 * 0.7f; } - if (obj8C->unk_50 == 0) { + if (obj8C->timer_50 == 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } void func_8007B0F4(Object_8C* obj8C) { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C * 3.0f, 0.1f, 10.0f, 0.0f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1 * 3.0f, 0.1f, 10.0f, 0.0f); obj8C->unk_44 -= 13; obj8C->obj.rot.y = 180.0f - obj8C->obj.rot.y; if (obj8C->unk_44 < 0) { @@ -1065,9 +1066,9 @@ void func_8007B180(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; obj8C->unk_44 = 0xFF; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; Object_SetInfo(&obj8C->info, obj8C->obj.id); - func_80019218(0x1100000C, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1100000C, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_8007B228(f32 posX, f32 posY, f32 posZ, f32 arg3) { @@ -1088,7 +1089,7 @@ void func_8007B2BC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4, s32 obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; obj8C->unk_44 = 0xFF; obj8C->unk_4C = arg5; Object_SetInfo(&obj8C->info, obj8C->obj.id); @@ -1123,7 +1124,7 @@ void func_8007B3B8(Object_8C* obj8C) { var_fv1 = 0.1f; var_v0 = 8; } - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, var_fv1, var_fv0, 0.0f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, var_fv1, var_fv0, 0.0f); obj8C->unk_44 -= var_v0; if (obj8C->unk_44 < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); @@ -1138,7 +1139,7 @@ void func_8007B494(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, s32 obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; obj8C->obj.rot.x = 90.0f; - obj8C->unk_6C = arg4; + obj8C->scale1 = arg4; obj8C->unk_44 = arg5; if (arg5 < 60) { obj8C->unk_46 = 1; @@ -1162,7 +1163,7 @@ void func_8007B550(f32 posX, f32 posY, f32 posZ, f32 arg3, s32 arg4) { } void func_8007B5C0(Object_8C* obj8C) { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.1f, 10.0f, 0.1f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.1f, 10.0f, 0.1f); obj8C->unk_44 -= obj8C->unk_46; if (obj8C->unk_44 < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); @@ -1170,7 +1171,7 @@ void func_8007B5C0(Object_8C* obj8C) { } void func_8007B62C(Object_8C* obj8C) { - if (obj8C->unk_50 == 0) { + if (obj8C->timer_50 == 0) { obj8C->unk_46 -= 4; if (obj8C->unk_46 <= 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); @@ -1199,19 +1200,19 @@ void func_8007B67C(Object_8C* obj8C) { if (var_v1 > 10) { var_v1 -= 10; } - obj8C->unk_54.x = gPlayer[var_v1 - 1].unk_0C0.x; - obj8C->unk_54.y = gPlayer[var_v1 - 1].unk_0C0.y; - obj8C->unk_54.z = gPlayer[var_v1 - 1].unk_0C0.z; + obj8C->unk_54.x = gPlayer[var_v1 - 1].vel.x; + obj8C->unk_54.y = gPlayer[var_v1 - 1].vel.y; + obj8C->unk_54.z = gPlayer[var_v1 - 1].vel.z; } } void func_8007B758(Object_8C* obj8C) { - Math_SmoothStepToF(&obj8C->unk_70, obj8C->unk_6C, 0.1f, 10.0f, 0.1f); + Math_SmoothStepToF(&obj8C->scale2, obj8C->scale1, 0.1f, 10.0f, 0.1f); obj8C->unk_44 -= 2; if (obj8C->unk_44 < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } - func_8007A774(gPlayer, obj8C, obj8C->unk_70 * 20.0f); + func_8007A774(gPlayer, obj8C, obj8C->scale2 * 20.0f); } void func_8007B7E8(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { @@ -1229,7 +1230,7 @@ void func_8007B7E8(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { } obj8C->unk_4A = 50; obj8C->unk_46 = 1; - obj8C->unk_70 = arg4 * 0.2f; + obj8C->scale2 = arg4 * 0.2f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); } @@ -1246,7 +1247,7 @@ void func_8007B8F8(f32 posX, f32 posY, f32 posZ, f32 arg3) { } void func_8007B960(Object_8C* obj8C) { - obj8C->unk_70 += 0.07f; + obj8C->scale2 += 0.07f; obj8C->unk_4A -= obj8C->unk_46; if (obj8C->unk_4A < 0) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); @@ -1260,7 +1261,7 @@ void func_8007B9DC(Object_8C* arg0) { if (gControllerHold[3].button & Z_TRIG) { RCP_SetupDL(&gMasterDisp, 4); } - func_8005980C(arg0->unk_70); + Graphics_SetScaleMtx(arg0->scale2); if (gCurrentLevel != LEVEL_MACBETH) { gDPSetPrimColor(gMasterDisp++, 0, 0, 140, 99, 58, arg0->unk_4A); } else { @@ -1295,10 +1296,10 @@ void func_8007BB14(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 arg4) { arg0->unk_46 = 5; arg0->unk_4A = 0x50; } - arg0->unk_70 = arg4 * 0.25f; + arg0->scale2 = arg4 * 0.25f; arg0->obj.rot.z = Rand_ZeroOne() * 360.0f; if (arg4 == 6.0f) { - arg0->unk_54.z = gPlayer->unk_0C0.z * 0.6f; + arg0->unk_54.z = gPlayer->vel.z * 0.6f; } Object_SetInfo(&arg0->info, arg0->obj.id); } @@ -1315,15 +1316,15 @@ void func_8007BC7C(f32 posX, f32 posY, f32 posZ, f32 arg3) { } void func_8007BCE8(Object_8C* arg0) { - if (gPlayer->unk_1C8 == 7) { + if (gPlayer->state_1C8 == 7) { arg0->obj.rot.x = (gPlayer->unk_05C * 180.0f) / M_PI; arg0->obj.rot.y = (-gPlayer->unk_058 * 180.0f) / M_PI; } - if (gPlayer->unk_1C8 == 6) { + if (gPlayer->state_1C8 == 6) { arg0->unk_46 = 2; arg0->unk_54.y -= 0.13f; } - arg0->unk_70 += 0.07f; + arg0->scale2 += 0.07f; arg0->unk_4A -= arg0->unk_46; if (arg0->unk_4A < 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); @@ -1333,28 +1334,28 @@ void func_8007BCE8(Object_8C* arg0) { } void func_8007BDE0(Object_8C* arg0) { - arg0->unk_70 += 0.04f; + arg0->scale2 += 0.04f; arg0->unk_4A -= 2; if (arg0->unk_4A < 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); } arg0->obj.rot.z += arg0->unk_48; - arg0->unk_54.y += arg0->unk_6C; + arg0->unk_54.y += arg0->scale1; } void func_8007BE54(Object_8C* arg0) { - arg0->unk_70 += 0.02f; + arg0->scale2 += 0.02f; arg0->unk_4A -= 3; if (arg0->unk_4A < 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); } - arg0->unk_54.z = gPlayer->unk_0C0.z + 7.0f; + arg0->unk_54.z = gPlayer->vel.z + 7.0f; arg0->obj.rot.z += arg0->unk_48; arg0->unk_54.y += 0.1f; } void func_8007BEE8(Object_8C* arg0) { - func_8005980C(arg0->unk_70); + Graphics_SetScaleMtx(arg0->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, arg0->unk_4A); gSPDisplayList(gMasterDisp++, D_2010A30); } @@ -1369,8 +1370,8 @@ void func_8007BF64(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 x, f32 y, arg0->unk_54.x = x; arg0->unk_54.y = y; arg0->unk_54.z = z; - arg0->unk_70 = arg7; - arg0->unk_50 = arg8; + arg0->scale2 = arg7; + arg0->timer_50 = arg8; Object_SetInfo(&arg0->info, arg0->obj.id); } @@ -1395,8 +1396,8 @@ void func_8007C088(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 x, f32 y, arg0->unk_54.x = x; arg0->unk_54.y = y; arg0->unk_54.z = z; - arg0->unk_70 = arg7; - arg0->unk_50 = arg8; + arg0->scale2 = arg7; + arg0->timer_50 = arg8; Object_SetInfo(&arg0->info, arg0->obj.id); } @@ -1433,15 +1434,15 @@ void func_8007C250(Object_8C* arg0) { Math_SmoothStepToF(&arg0->unk_54.y, 0.0f, 0.2f, 10.0f, 0.1f); Math_SmoothStepToF(&arg0->unk_54.z, 0.0f, 0.2f, 10.0f, 0.1f); var_v0 = 3; - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { var_v0 = 1; } - if (!(arg0->unk_50 & var_v0)) { + if (!(arg0->timer_50 & var_v0)) { randX = (Rand_ZeroOne() - 0.5f) * 40.0f; randY = (Rand_ZeroOne() - 0.5f) * 40.0f; randOther = ((Rand_ZeroOne() * 0.5f) + 1.0f); - func_8007D0E0(arg0->obj.pos.x + randX, arg0->obj.pos.y + randY, arg0->obj.pos.z, arg0->unk_70 * randOther); - if (arg0->unk_50 == 0) { + func_8007D0E0(arg0->obj.pos.x + randX, arg0->obj.pos.y + randY, arg0->obj.pos.z, arg0->scale2 * randOther); + if (arg0->timer_50 == 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); } } @@ -1457,7 +1458,7 @@ void func_8007C3B4(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 x, f32 y, arg0->unk_54.x = x; arg0->unk_54.y = y; arg0->unk_54.z = z; - arg0->unk_70 = arg7; + arg0->scale2 = arg7; arg0->unk_4A = arg8; arg0->unk_4C = (s32) (Rand_ZeroOne() * 12.0f); arg0->obj.rot.z = Rand_ZeroOne() * 360.0f; @@ -1481,13 +1482,13 @@ void func_8007C50C(Object_8C* arg0) { f32 randY; f32 randOther; - if (!(arg0->unk_50 & 7)) { - randX = (Rand_ZeroOne() - 0.5f) * 40.0f * arg0->unk_70; - randY = (Rand_ZeroOne() - 0.5f) * 40.0f * arg0->unk_70; + if (!(arg0->timer_50 & 7)) { + randX = (Rand_ZeroOne() - 0.5f) * 40.0f * arg0->scale2; + randY = (Rand_ZeroOne() - 0.5f) * 40.0f * arg0->scale2; randOther = (Rand_ZeroOne() + 1.0f); func_8007C484(arg0->obj.pos.x + randX, arg0->obj.pos.y + randY, arg0->obj.pos.z, arg0->unk_54.x, arg0->unk_54.y, - arg0->unk_54.z, arg0->unk_70 * randOther, 0); - if (arg0->unk_50 == 0) { + arg0->unk_54.z, arg0->scale2 * randOther, 0); + if (arg0->timer_50 == 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); } } @@ -1500,8 +1501,8 @@ void func_8007C608(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 arg4, s32 arg0->obj.pos.x = posX; arg0->obj.pos.y = posY; arg0->obj.pos.z = posZ; - arg0->unk_70 = arg4; - arg0->unk_50 = arg5; + arg0->scale2 = arg4; + arg0->timer_50 = arg5; Object_SetInfo(&arg0->info, arg0->obj.id); } @@ -1528,20 +1529,20 @@ void func_8007C6FC(Object_8C* arg0, f32 posX, f32 posY, f32 posZ, f32 arg4) { if (Rand_ZeroOne() < 0.5f) { arg0->unk_48 = -arg0->unk_48; } - if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->unk_1C8 != 6)) { + if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != 6)) { arg0->unk_4A = 180; } else { arg0->unk_4A = 255; } - arg0->unk_70 = arg4 * 0.25f; + arg0->scale2 = arg4 * 0.25f; arg0->obj.rot.z = Rand_ZeroOne() * 360.0f; arg0->unk_44 = 0; if (Rand_ZeroOne() < 0.3f) { arg0->unk_44 = 1; arg0->unk_4A = 255; - arg0->unk_70 = arg4 * 0.3f; + arg0->scale2 = arg4 * 0.3f; } - arg0->unk_6C = Rand_ZeroOne() * 0.2f; + arg0->scale1 = Rand_ZeroOne() * 0.2f; Object_SetInfo(&arg0->info, arg0->obj.id); } @@ -1563,15 +1564,15 @@ void func_8007C8C4(Object_8C* arg0) { s32 var_v0; var_v0 = 0; - if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->unk_1C8 != 6)) { + if ((gCurrentLevel == LEVEL_FORTUNA) && (gPlayer->state_1C8 != 6)) { var_v0 = 3; } - if (!(arg0->unk_50 & var_v0) && (gLevelType == LEVELTYPE_GROUND)) { + if (!(arg0->timer_50 & var_v0) && (gLevelType == LEVELTYPE_PLANET)) { randX = (Rand_ZeroOne() - 0.5f) * 10.0f; randY = (Rand_ZeroOne() - 0.5f) * 10.0f; randOther = ((Rand_ZeroOne() * 0.5f) + 1.0f); - func_8007C85C(arg0->obj.pos.x + randX, arg0->obj.pos.y + randY, arg0->obj.pos.z, arg0->unk_70 * randOther); - if (arg0->unk_50 == 0) { + func_8007C85C(arg0->obj.pos.x + randX, arg0->obj.pos.y + randY, arg0->obj.pos.z, arg0->scale2 * randOther); + if (arg0->timer_50 == 0) { Object_Kill(&arg0->obj, &arg0->sfxPos); } } @@ -1728,14 +1729,14 @@ void func_80084194(Object_8C* obj8C) { if (gCurrentLevel != LEVEL_AQUAS) { RCP_SetupDL(&gMasterDisp, 0x31); - Matrix_Scale(gGfxMatrix, obj8C->unk_70, obj8C->unk_70, obj8C->unk_70, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2, obj8C->scale2, obj8C->scale2, 1); Matrix_SetGfxMtx(&gMasterDisp); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); tmp = obj8C->unk_44 * 4; gDPSetEnvColor(gMasterDisp++, D_800D18F0[tmp + 0], D_800D18F0[tmp + 1], D_800D18F0[tmp + 2], 255); } else { RCP_SetupDL(&gMasterDisp, 0x31); - Matrix_Scale(gGfxMatrix, obj8C->unk_70, obj8C->unk_70, obj8C->unk_70, 1); + Matrix_Scale(gGfxMatrix, obj8C->scale2, obj8C->scale2, obj8C->scale2, 1); Matrix_SetGfxMtx(&gMasterDisp); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, D_800D1950[obj8C->unk_44]); gDPSetEnvColor(gMasterDisp++, 255, 0, 0, 255); diff --git a/src/main/sf_hud.c b/src/main/sf_hud.c index ed16fb86..8e9a5695 100644 --- a/src/main/sf_hud.c +++ b/src/main/sf_hud.c @@ -23,14 +23,14 @@ void func_80084930(f32 arg0, f32 arg1, s32 arg2) { player = gPlayer; var_t0 = 0; - switch (player->unk_1CC) { - case 0: + switch (player->form) { + case FORM_ARWING: var_t0 = 0; break; - case 1: + case FORM_LANDMASTER: var_t0 = 1; break; - case 2: + case FORM_BLUE_MARINE: var_t0 = 2; break; } @@ -79,7 +79,7 @@ void func_80084B94(s32 arg0) { RCP_SetupDL(&gMasterDisp, 0x24); if (arg0 == 0) { for (i = 1; i < 4; i++) { - if (((gTeamShields[i] != 0) || (gPlayer[0].unk_1C8 != 7)) && (gTeamShields[i] <= 0) && + if (((gTeamShields[i] != 0) || (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7)) && (gTeamShields[i] <= 0) && (gTeamShields[i] != -2)) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, D_800D1A70[i - 1].x, D_800D1A70[i - 1].y, D_800D1A70[i - 1].z, 1); @@ -201,7 +201,7 @@ void func_80086110(f32 arg0, f32 arg1, s32 arg2) { if ((arg2 <= 0) && (arg2 != -2) && ((D_80177854 == 100) || (D_80177830 == 1) || (D_80177838 != 0))) { RCP_SetupDL(&gMasterDisp, 0x4C); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 0, 255); - if ((arg2 == 0) && (gPlayer[0].unk_1C8 == 7)) { + if ((arg2 == 0) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7)) { Graphics_DisplaySmallText(arg0 + (8.0f * temp) + 4.0f, arg1 + 2.0f, 1.0f, 1.0f, " OK "); } else { Graphics_DisplaySmallText(arg0 + (8.0f * temp) + 4.0f, arg1 + 2.0f, 1.0f, 1.0f, "DOWN"); @@ -222,10 +222,10 @@ s32 func_800863C8(void) { case LEVEL_TRAINING: var_v1++; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: var_v1++; - case LEVEL_VENOM_SW: + case LEVEL_VENOM_2: var_v1++; case LEVEL_VENOM_1: @@ -290,11 +290,11 @@ void func_80086444(void) { f32 D_800D1CCC[] = { 1.6f, 1.6f }; switch (gCurrentLevel) { - case LEVEL_VENOM_SW: + case LEVEL_VENOM_2: i = 1; break; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: i = 0; break; @@ -479,7 +479,7 @@ void func_80088784(s32 arg0) { Matrix_Scale(gGfxMatrix, 0.37f, 0.37f, 0.37f, 1); Matrix_SetGfxMtx(&gMasterDisp); - if (gLevelType == LEVELTYPE_GROUND) { + if (gLevelType == LEVELTYPE_PLANET) { gSPDisplayList(gMasterDisp++, D_800D1D4C[arg0]); } else { gSPDisplayList(gMasterDisp++, D_800D1D94[arg0]); @@ -612,7 +612,7 @@ void func_80089D28(void) { if ((gb == 10) || (gb == 0)) { // clang-format off //! FAKE: Probably a MACRO - if (1) {func_80019218(0x4900001c, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);} + if (1) {Audio_PlaySfx(0x4900001c, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);} // clang-format on } @@ -641,11 +641,11 @@ void func_80089E98(s32 arg0) { var_a1 = 1; } - if (gPlayer[arg0].unk_1C8 == 13) { + if (gPlayer[arg0].state_1C8 == PLAYERSTATE_1C8_13) { break; } } - if ((var_a1_2 == D_801778A0) && (gFrameCount & 2)) { + if ((var_a1_2 == gPlayerNum) && (gFrameCount & 2)) { var_a1 = (var_a1 * 2) + 1; } else { var_a1 = var_a1 * 2; @@ -794,7 +794,7 @@ void func_8008B044(void) { return; } - func_80019218(0x49002018, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49002018, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_800CFF90 != 0) { func_8001AF40(1); @@ -807,7 +807,7 @@ void func_8008B044(void) { D_80161790++; if (D_80161790 >= 7) { if (D_80161794 & 1) { - func_80019218(0x49002018, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49002018, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } D_80161790 = 0; D_80161794++; @@ -947,7 +947,7 @@ void func_8008B9E8(void) { } if ((D_80161788 == 0) && (D_8016178C == 0)) { - if ((D_8017829C >= 4) && (D_801782A4 != 2) && (D_801782A4 != 3)) { + if ((gRadioState >= 4) && (D_801782A4 != 2) && (D_801782A4 != 3)) { temp = func_8008B774(); if (temp == 1) { D_80161788 = 20; @@ -1076,8 +1076,8 @@ void func_8008CA44(void) { s32 i; s32 j; - if ((gPlayer[D_801778A0].unk228 != 0) && (gPlayer[D_801778A0].unk210 == 0) && (D_80177854 != 0x64)) { - j = gPlayer[D_801778A0].unk228; + if ((gPlayer[gPlayerNum].unk228 != 0) && (gPlayer[gPlayerNum].unk210 == 0) && (D_80177854 != 100)) { + j = gPlayer[gPlayerNum].unk228; for (i = 0; i < 12; i++) { if ((j & D_800D2048[i]) != D_800D2048[i]) { @@ -1136,7 +1136,7 @@ void func_8008D250(void) { RCP_SetupDL(&gMasterDisp, 0x4C); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); - func_8008C5C8(D_800D20C8[D_801778A0], D_800D20D8[D_801778A0], 0.54f, D_801778A0); + func_8008C5C8(D_800D20C8[gPlayerNum], D_800D20D8[gPlayerNum], 0.54f, gPlayerNum); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_8008D250.s") @@ -1147,16 +1147,16 @@ void func_8008D31C(void) { f32 D_800D20E8[] = { 60.0f, 220.0f, 60.0f, 220.0f }; f32 D_800D20F8[] = { 78.0f, 78.0f, 198.0f, 198.0f }; - Math_SmoothStepToF(&D_800D19E0[D_801778A0], gPlayer[D_801778A0].shields * (1.0f / 255.0f), 0.3f, 10.0f, 0.01f); + Math_SmoothStepToF(&D_800D19E0[gPlayerNum], gPlayer[gPlayerNum].shields * (1.0f / 255.0f), 0.3f, 10.0f, 0.01f); RCP_SetupDL(&gMasterDisp, 0x4E); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); - func_8008D0DC(D_800D20E8[D_801778A0] + 3.0f, D_800D20F8[D_801778A0] + 18.0f, 1.0f, 1.0f, D_800D19E0[D_801778A0]); + func_8008D0DC(D_800D20E8[gPlayerNum] + 3.0f, D_800D20F8[gPlayerNum] + 18.0f, 1.0f, 1.0f, D_800D19E0[gPlayerNum]); RCP_SetupDL(&gMasterDisp, 0x4C); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); - func_8008CFB8(D_800D20E8[D_801778A0], D_800D20F8[D_801778A0], 1.0f, 1.0f); + func_8008CFB8(D_800D20E8[gPlayerNum], D_800D20F8[gPlayerNum], 1.0f, 1.0f); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_8008D31C.s") @@ -1182,7 +1182,7 @@ void func_8008D4F0(f32 arg0, f32 arg1) { if (gVersusMode) { temp = 2.0f; sp60 = 1.0f; - var_v1 = D_801778A0; + var_v1 = gPlayerNum; sp68 = 24.0f; } else { temp = 2.0f; @@ -1193,12 +1193,12 @@ void func_8008D4F0(f32 arg0, f32 arg1) { D_800D211C[var_v1] = arg1; } - temp_fs0 = gPlayer[D_801778A0].unk_2BC * (1.0f / 90.0f); + temp_fs0 = gPlayer[gPlayerNum].unk_2BC * (1.0f / 90.0f); temp_fv0 = 1.0f - temp_fs0; temp2 = sp68 * temp_fs0; - if (gPlayer[D_801778A0].unk_2B4 == 0) { + if (gPlayer[gPlayerNum].unk_2B4 == 0) { Math_SmoothStepToF(&D_800D19AC[var_v1], 255.0f, 0.4f, 100.0f, 0.01f); } else { Math_SmoothStepToF(&D_800D19AC[var_v1], 100.0f, 0.4f, 100.0f, 0.01f); @@ -1233,8 +1233,8 @@ void func_8008D7F4(void) { s32 D_800D2170[] = { 12, 0, 67, 255 }; RCP_SetupDL(&gMasterDisp, 0x4E); - gDPSetPrimColor(gMasterDisp++, 0, 0, D_800D2150[D_801778A0], D_800D2160[D_801778A0], D_800D2170[D_801778A0], 255); - Graphics_DisplayHUDNumber(D_800D2130[D_801778A0], D_800D2140[D_801778A0], D_801778A0 + 1); + gDPSetPrimColor(gMasterDisp++, 0, 0, D_800D2150[gPlayerNum], D_800D2160[gPlayerNum], D_800D2170[gPlayerNum], 255); + Graphics_DisplayHUDNumber(D_800D2130[gPlayerNum], D_800D2140[gPlayerNum], gPlayerNum + 1); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_8008D7F4.s") @@ -1245,22 +1245,22 @@ void func_8008D984(void) { s32 D_800D21A8[] = { 146, 165, 146, 165 }; s32 D_800D21B8[] = { 94, 94, 137, 137 }; - if (gBombCount[D_801778A0] != D_800D2180[D_801778A0]) { - D_800D2180[D_801778A0] = gBombCount[D_801778A0]; - if (gBombCount[D_801778A0] == 0) { - D_800D2190[D_801778A0] = 0; + if (gBombCount[gPlayerNum] != D_800D2180[gPlayerNum]) { + D_800D2180[gPlayerNum] = gBombCount[gPlayerNum]; + if (gBombCount[gPlayerNum] == 0) { + D_800D2190[gPlayerNum] = 0; } else { - D_800D2190[D_801778A0] = 30; + D_800D2190[gPlayerNum] = 30; } } - if (D_800D2190[D_801778A0] != 0) { - D_800D2190[D_801778A0]--; + if (D_800D2190[gPlayerNum] != 0) { + D_800D2190[gPlayerNum]--; } - if ((D_800D2190[D_801778A0] & 2) || ((D_800D2190[D_801778A0] == 0) && (gBombCount[D_801778A0] != 0))) { + if ((D_800D2190[gPlayerNum] & 2) || ((D_800D2190[gPlayerNum] == 0) && (gBombCount[gPlayerNum] != 0))) { RCP_SetupDL_78(); - if (gBombCount[D_801778A0] >= 2) { + if (gBombCount[gPlayerNum] >= 2) { if (Math_SmoothStepToF(&D_800D21A4, D_800D21A0, 0.4f, 100.0f, 0.1f) == 0.0f) { if (D_800D21A0 == 255.0f) { D_800D21A0 = 96.0f; @@ -1272,7 +1272,7 @@ void func_8008D984(void) { D_800D21A4 = 255.0f; } gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, D_800D21A4); - func_8008D1F0(D_800D21A8[D_801778A0], D_800D21B8[D_801778A0], 1.0f, 1.0f); + func_8008D1F0(D_800D21A8[gPlayerNum], D_800D21B8[gPlayerNum], 1.0f, 1.0f); } } #else @@ -1323,7 +1323,7 @@ void func_8008DE68(void) { if ((D_80161734 == 1) && (gTeamShields[2] > 0)) { if ((D_80177848 >= 0) && (D_801616BC == -1.0f)) { - func_80019218(0x4900C028, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900C028, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_801616BC = 255.0f; } @@ -1514,8 +1514,8 @@ void func_8008E620(f32 arg0, f32 arg1) { ret = Play_CheckMedalStatus(300); break; + case LEVEL_VENOM_ANDROSS: case LEVEL_VENOM_2: - case LEVEL_VENOM_SW: ret = Play_CheckMedalStatus(200); break; @@ -1571,7 +1571,7 @@ void func_8008F96C(void) { RCP_SetupDL_36(); - if ((gAllRangeMode != 2) && (D_80161708 != 0)) { + if ((gLevelMode != LEVELMODE_UNK_2) && (D_80161708 != 0)) { func_8008D4F0(246.0f, 28.0f); func_8008EA14(250.0f, 38.0f); } @@ -1581,7 +1581,7 @@ void func_8008F96C(void) { if (D_80161708 != 0) { func_8008E9EC(24.0f, 30.0f); if (gCurrentLevel != LEVEL_TRAINING) { - func_80087530(248.0f, 11.0f, gLifeCount[D_801778A0]); + func_80087530(248.0f, 11.0f, gLifeCount[gPlayerNum]); } } @@ -1653,14 +1653,14 @@ s32 func_80090A00(Object_2F4* obj2F4) { case 0: obj2F4->unk_134 = 0.0f; obj2F4->unk_130 = 360.0f; - obj2F4->unk_0BC = 8; + obj2F4->timer_0BC = 8; obj2F4->unk_0F4.y = 100.0f; obj2F4->unk_0F4.x = 300.0f; obj2F4->unk_060 = 1; obj2F4->unk_064 = 1; case 1: - if (obj2F4->unk_0BC == 0.0f) { + if (obj2F4->timer_0BC == 0.0f) { obj2F4->unk_118 = 20.0f; obj2F4->unk_120 = 3.6f; obj2F4->unk_058 = 0; @@ -1700,8 +1700,8 @@ s32 func_80090A00(Object_2F4* obj2F4) { case 4: obj2F4->unk_124.z = gPlayer[0].unk_138; obj2F4->unk_124.y = 100.0f; - obj2F4->unk_124.x = gPlayer[0].unk_074; - if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].unk_074) < 300.0f) && + obj2F4->unk_124.x = gPlayer[0].pos.x; + if ((fabsf(obj2F4->obj.pos.x - gPlayer[0].pos.x) < 300.0f) && (fabsf(obj2F4->obj.pos.z - gPlayer[0].unk_138) < 300.0f)) { obj2F4->unk_064 = 5; obj2F4->unk_05C = 20; @@ -1712,7 +1712,7 @@ s32 func_80090A00(Object_2F4* obj2F4) { case 5: obj2F4->unk_124.z = gPlayer[0].unk_138 + 1000.0f; obj2F4->unk_124.y = 1000.0f; - obj2F4->unk_124.x = gPlayer[0].unk_074 - 1000.0f; + obj2F4->unk_124.x = gPlayer[0].pos.x - 1000.0f; obj2F4->unk_058++; if (obj2F4->unk_05C == obj2F4->unk_058) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); @@ -1751,8 +1751,8 @@ s32 func_80090CCC(Object_2F4* obj2F4) { ret = 1; } - if (obj2F4->unk_0BE == 0) { - obj2F4->unk_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; + if (obj2F4->timer_0BE == 0) { + obj2F4->timer_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; obj2F4->unk_13C = 30.0f; } @@ -1772,7 +1772,7 @@ s32 func_80090E8C(Object_2F4* obj2F4) { f32 z; f32 var_fv1_2; - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { if (gLevelType == LEVELTYPE_SPACE) { x = (Rand_ZeroOne() - 0.5f) * 20000.0f; y = (Rand_ZeroOne() - 0.5f) * 5000.0f; @@ -1787,7 +1787,7 @@ s32 func_80090E8C(Object_2F4* obj2F4) { obj2F4->unk_124.x = x; obj2F4->unk_124.y = y; obj2F4->unk_124.z = z; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 10; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 10; } } @@ -1802,8 +1802,8 @@ s32 func_80090E8C(Object_2F4* obj2F4) { obj2F4->unk_0B8 = 0; } - if (obj2F4->unk_0BE == 0) { - obj2F4->unk_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; + if (obj2F4->timer_0BE == 0) { + obj2F4->timer_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; obj2F4->unk_13C = 30.0f; } return false; @@ -1812,11 +1812,11 @@ s32 func_80090E8C(Object_2F4* obj2F4) { s32 func_800910C0(Object_2F4* obj2F4) { f32 var_fv1; - if (obj2F4->unk_0BC == 0) { + if (obj2F4->timer_0BC == 0) { obj2F4->unk_2DC.x = (Rand_ZeroOne() - 0.5f) * 2000.0f; obj2F4->unk_2DC.y = (Rand_ZeroOne() * 1000.0f) + 200.0f; obj2F4->unk_2DC.z = (Rand_ZeroOne() - 0.5f) * 2000.0f; - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 10; + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 10; } obj2F4->unk_124.x = obj2F4->unk_2DC.x + gObjects408->obj.pos.x; @@ -1834,15 +1834,15 @@ s32 func_800910C0(Object_2F4* obj2F4) { obj2F4->unk_0B8 = 0; } - if (obj2F4->unk_0BE == 0) { - obj2F4->unk_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; + if (obj2F4->timer_0BE == 0) { + obj2F4->timer_0BE = (s32) (Rand_ZeroOne() * 200.0f) + 200; obj2F4->unk_13C = 30.0f; } return false; } void func_80091254(Object_2F4* obj2F4) { - if (gAllRangeMode == 1) { + if (gLevelMode == LEVELMODE_ALL_RANGE) { func_80090E8C(obj2F4); } else { func_800910C0(obj2F4); @@ -1852,8 +1852,8 @@ void func_80091254(Object_2F4* obj2F4) { s32 func_80091298(Object_2F4* obj2F4) { obj2F4->unk_118 = gPlayer[0].unk_0D0 + 10.0f; obj2F4->unk_120 = 3.6f; - obj2F4->unk_124.x = gPlayer[0].unk_074 + ((f32) (obj2F4->unk_0E4 - 2) * 700.0f); - obj2F4->unk_124.y = gPlayer[0].unk_078; + obj2F4->unk_124.x = gPlayer[0].pos.x + ((f32) (obj2F4->unk_0E4 - 2) * 700.0f); + obj2F4->unk_124.y = gPlayer[0].pos.y; obj2F4->unk_124.z = gPlayer[0].unk_138; if ((fabsf(obj2F4->obj.pos.x - obj2F4->unk_124.x) < 700.0f) || @@ -1893,8 +1893,8 @@ s32 func_80091368(Object_2F4* obj2F4) { obj2F4->unk_188 = 2.0f; } - if (obj2F4->unk_0BC == 0) { - obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 30; + if (obj2F4->timer_0BC == 0) { + obj2F4->timer_0BC = (s32) (Rand_ZeroOne() * 20.0f) + 30; obj2F4->unk_130 = 360.0f; obj2F4->unk_134 = 0.0f; } @@ -1935,7 +1935,7 @@ void func_800914FC(Object_2F4* obj2F4) { obj2F4->unk_0B8 = 3; } - if (gPlayer[0].unk_1C8 == 7) { + if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_7) { if ((obj2F4->unk_0B8 != 2) && (obj2F4->unk_0B8 != 3)) { obj2F4->unk_060 = 1; obj2F4->unk_0B8 = 2; @@ -1966,7 +1966,7 @@ s32 func_80091864(Object_2F4* obj2F4) { sp44 += 40.0f; if (sp44 >= 360.0f) { sp44 -= 360.0f; - } else if ((obj2F4->obj.pos.y < (D_80177940 + 50.0f)) && (gLevelType == LEVELTYPE_GROUND) && (sp44 > 180.0f)) { + } else if ((obj2F4->obj.pos.y < (D_80177940 + 50.0f)) && (gLevelType == LEVELTYPE_PLANET) && (sp44 > 180.0f)) { sp44 = 0.0f; } obj2F4->unk_050 = 0; @@ -2023,7 +2023,7 @@ s32 func_80091B90(Object_2F4* obj2F4) { obj2F4->unk_14C -= obj2F4->unk_14C * 0.1f; obj2F4->unk_144 -= obj2F4->unk_144 * 0.1f; - if ((obj2F4->obj.pos.y < D_80177940 + 40.0f) && (obj2F4->unk_0E8.y < 0.0f) && (gLevelType == LEVELTYPE_GROUND)) { + if ((obj2F4->obj.pos.y < D_80177940 + 40.0f) && (obj2F4->unk_0E8.y < 0.0f) && (gLevelType == LEVELTYPE_PLANET)) { obj2F4->obj.pos.y = D_80177940 + 40.0f; obj2F4->unk_0E8.y = 0.0f; } @@ -2036,7 +2036,7 @@ s32 func_80091CF8(Object_2F4* obj2F4) { if (obj2F4->unk_054 != 0) { if (obj2F4->unk_13C < 0.1f) { obj2F4->unk_13C = 20.0f; - func_80019218(0x09000002, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x09000002, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); obj2F4->unk_188 = 5.0f; } obj2F4->unk_054 = 0; @@ -2083,9 +2083,9 @@ s32 func_80091F00(Object_2F4* obj2F4) { if (obj2F4->unk_0CE <= 0) { obj2F4->unk_0CE = -1; } - obj2F4->unk_0C6 = 20; + obj2F4->timer_0C6 = 20; - func_80019218(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x2903300E, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_8007D10C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.5f); Matrix_RotateY(gCalcMatrix, obj2F4->unk_0F4.y * M_DTOR, 0); @@ -2106,7 +2106,7 @@ s32 func_80091F00(Object_2F4* obj2F4) { gTeamShields[obj2F4->unk_0E4] = obj2F4->unk_0CE; - if (D_8017829C != 0) { + if (gRadioState != 0) { return false; } @@ -2168,7 +2168,7 @@ void func_80092244(Object_2F4* obj2F4) { void func_800922F4(Object_2F4* obj2F4) { s32 temp; - if ((gTeamShields[obj2F4->unk_0E4] < 64) && (gPlayer[0].unk_1C8 != 7)) { + if ((gTeamShields[obj2F4->unk_0E4] < 64) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_7)) { temp = 7; if (gTeamShields[obj2F4->unk_0E4] > 16) { temp = 15; @@ -2191,7 +2191,7 @@ void func_800922F4(Object_2F4* obj2F4) { func_8007C120(obj2F4->obj.pos.x + ((Rand_ZeroOne() - 0.5f) * 30.0f), obj2F4->obj.pos.y + (Rand_ZeroOne() * 10.0f), obj2F4->obj.pos.z + ((Rand_ZeroOne() - 0.5f) * 30.0f), obj2F4->unk_0E8.x, - obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->unk_110 * 0.07f, 3); + obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, obj2F4->scale * 0.07f, 3); } } } @@ -2219,7 +2219,7 @@ void func_80093310(void) { if (1) {} this->obj.id = OBJ_2F4_195; Object_SetInfo(&this->info, this->obj.id); - func_80019218(0x11030010, &this->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &this->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { @@ -2236,8 +2236,8 @@ void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { obj8C->obj.pos.y = y; obj8C->obj.pos.z = z; - if ((player->unk_1C8 == 2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 < 2)) { - obj8C->unk_6C = 0.4f; + if ((player->state_1C8 == PLAYERSTATE_1C8_2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 < 2)) { + obj8C->scale1 = 0.4f; obj8C->unk_44 = 0; obj8C->unk_46 = 24; obj8C->unk_48 = Rand_ZeroOne() * 4.0f; @@ -2262,7 +2262,7 @@ void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { } } - obj8C->unk_70 = arg3 * 0.2f; + obj8C->scale2 = arg3 * 0.2f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; Object_SetInfo(&obj8C->info, obj8C->obj.id); break; @@ -2276,12 +2276,12 @@ void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { void func_80094954(Object_8C* obj8C) { Player* player = gPlayer; - if ((player->unk_1C8 == 2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 < 2)) { + if ((player->state_1C8 == PLAYERSTATE_1C8_2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 < 2)) { switch (obj8C->unk_4E) { case 0: obj8C->unk_44 += obj8C->unk_46; obj8C->unk_4A = obj8C->unk_44; - obj8C->unk_70 += 0.01f; + obj8C->scale2 += 0.01f; if (obj8C->unk_4A >= 200) { obj8C->unk_4E = 1; @@ -2291,7 +2291,7 @@ void func_80094954(Object_8C* obj8C) { case 1: obj8C->unk_4A -= obj8C->unk_46; - obj8C->unk_70 -= 0.1f; + obj8C->scale2 -= 0.1f; break; } @@ -2299,46 +2299,47 @@ void func_80094954(Object_8C* obj8C) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } - obj8C->unk_54.y += obj8C->unk_6C; - obj8C->unk_6C -= 0.05f; + obj8C->unk_54.y += obj8C->scale1; + obj8C->scale1 -= 0.05f; - if (obj8C->unk_6C < -1.0f) { - obj8C->unk_6C = -1.0f; + if (obj8C->scale1 < -1.0f) { + obj8C->scale1 = -1.0f; } obj8C->obj.rot.z += obj8C->unk_48; return; } - if (player->unk_1C8 == 7) { + if (player->state_1C8 == PLAYERSTATE_1C8_7) { obj8C->obj.rot.x = player->unk_05C * 180.0f / M_PI; obj8C->obj.rot.y = -player->unk_058 * 180.0f / M_PI; } - if (player->unk_1C8 == 6) { + if (player->state_1C8 == PLAYERSTATE_1C8_6) { obj8C->unk_46 = 2; if (player->unk_1D0 >= 4) { obj8C->unk_54.y -= 0.13f; } } - obj8C->unk_70 += 0.8f; + obj8C->scale2 += 0.8f; obj8C->unk_4A -= obj8C->unk_46; - if ((obj8C->unk_4A < 0) || ((player->unk_1C8 == 2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 == 5))) { + if ((obj8C->unk_4A < 0) || + ((player->state_1C8 == PLAYERSTATE_1C8_2) && (gCurrentLevel == LEVEL_AQUAS) && (player->unk_1D0 == 5))) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } obj8C->obj.rot.z += obj8C->unk_48; } void func_80094BBC(Object_8C* obj8C) { - if ((gPlayer[0].unk_1C8 == 2) && (gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].unk_1D0 < 2)) { + if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_2) && (gCurrentLevel == LEVEL_AQUAS) && (gPlayer[0].unk_1D0 < 2)) { RCP_SetupDL(&gMasterDisp, 0x44); gDPSetPrimColor(gMasterDisp++, 0, 0, 0, 21, 34, obj8C->unk_4A); gDPSetEnvColor(gMasterDisp++, 255, 255, 251, 0); - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gSPDisplayList(gMasterDisp++, D_1023750); } else { - func_8005980C(obj8C->unk_70); + Graphics_SetScaleMtx(obj8C->scale2); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, obj8C->unk_4A); gSPDisplayList(gMasterDisp++, D_1023750); } diff --git a/src/main/sys_audio_17650.c b/src/main/sys_audio_17650.c index 5fa1a00f..8ec28b39 100644 --- a/src/main/sys_audio_17650.c +++ b/src/main/sys_audio_17650.c @@ -59,7 +59,7 @@ void func_80016A50(void) { #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/func_800191BC.s") -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/func_80019218.s") +#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/Audio_PlaySfx.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/func_80019290.s") @@ -77,17 +77,7 @@ void func_80016A50(void) { #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/func_8001A4B8.s") -void func_8001A500(Vec3f* sfxPos) { - Vec3f pad[4]; - Vec3f* sp24; - u8 i; - - for (i = 0; i < 5; i++) { - func_8001A38C(i, sfxPos); - } - sp24 = sfxPos; - func_80019290(2, &sp24); -} +#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/Audio_KillSfx.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sys_audio_17650/func_8001A55C.s") diff --git a/src/main/sys_main.c b/src/main/sys_main.c index 80f31cf4..4f5455ac 100644 --- a/src/main/sys_main.c +++ b/src/main/sys_main.c @@ -350,7 +350,7 @@ void Graphics_ThreadEntry(void* arg0) { if (gFillScreen == 0) { osViSwapBuffer(&gFrameBuffers[(gFrameCounter - 1) % 3]); } - func_80007FE4(&gFrameBuffers[(gFrameCounter - 1) % 3], 320, 16); + func_80007FE4(&gFrameBuffers[(gFrameCounter - 1) % 3], SCREEN_WIDTH, 16); var_v1 = MIN(D_80137E78, 4); var_v2 = MAX(var_v1, gGfxVImsgQueue.validCount + 1); @@ -505,8 +505,8 @@ void Main_ThreadEntry(void* arg0) { osCreateThread(&gGraphicsThread, THREAD_ID_GRAPHICS, Graphics_ThreadEntry, arg0, gGraphicsThreadStack + sizeof(gGraphicsThreadStack), 40); osStartThread(&gGraphicsThread); - osCreateThread(&gTimerThread, THREAD_ID_7, Timer_ThreadEntry, arg0, gTimerThreadStack + sizeof(gTimerThreadStack), - 60); + osCreateThread(&gTimerThread, THREAD_ID_TIMER, Timer_ThreadEntry, arg0, + gTimerThreadStack + sizeof(gTimerThreadStack), 60); osStartThread(&gTimerThread); osCreateThread(&gSerialThread, THREAD_ID_SERIAL, SerialInterface_ThreadEntry, arg0, gSerialThreadStack + sizeof(gSerialThreadStack), 20); diff --git a/src/overlays/ovl_DF4260/DFEE30.c b/src/overlays/ovl_DF4260/DFEE30.c index 1a59ab7b..896b2d6c 100644 --- a/src/overlays/ovl_DF4260/DFEE30.c +++ b/src/overlays/ovl_DF4260/DFEE30.c @@ -14,7 +14,7 @@ void func_DF4260_801924A8(Object_80* arg0) { switch (arg0->unk_48) { case 0: - if (gPlayer[0].unk_07C < arg0->obj.pos.z) { + if (gPlayer[0].pos.z < arg0->obj.pos.z) { D_80177AB0 = 0; D_80177A98 = 0; diff --git a/src/overlays/ovl_E16C50/E16C50.c b/src/overlays/ovl_E16C50/E16C50.c index 2f94fbfb..88a99cf0 100644 --- a/src/overlays/ovl_E16C50/E16C50.c +++ b/src/overlays/ovl_E16C50/E16C50.c @@ -51,3 +51,5 @@ #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E16C50/E16C50/func_E16C50_8018EC38.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E16C50/E16C50/func_E16C50_8018ED78.s") + +#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E16C50/E16C50/D_E16C50_801C0900.s") diff --git a/src/overlays/ovl_E9F1D0/E9F1D0.c b/src/overlays/ovl_E9F1D0/E9F1D0.c index 9c3cee8e..d0efef83 100644 --- a/src/overlays/ovl_E9F1D0/E9F1D0.c +++ b/src/overlays/ovl_E9F1D0/E9F1D0.c @@ -123,3 +123,5 @@ #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E9F1D0/E9F1D0/func_E9F1D0_80195E44.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E9F1D0/E9F1D0/func_E9F1D0_801961AC.s") + +#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_E9F1D0/E9F1D0/D_E9F1D0_801A6B90.s") diff --git a/src/overlays/ovl_EBFBE0/ED6EC0.c b/src/overlays/ovl_EBFBE0/ED6EC0.c index 505d78f2..c31263a0 100644 --- a/src/overlays/ovl_EBFBE0/ED6EC0.c +++ b/src/overlays/ovl_EBFBE0/ED6EC0.c @@ -187,13 +187,13 @@ void func_EBFBE0_8019E800(void) { gNextGameState = 4; D_80161A34 = 5; D_80177868 = 2; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; } void func_EBFBE0_8019E85C(void) { switch (D_80177868) { case 0: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { D_80177868 = 1; } break; @@ -223,18 +223,18 @@ void func_EBFBE0_8019E8D0(void) { switch (D_80177B40) { case 0: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { D_80177B40 = 1; } break; case 1: - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_EBFBE0_8019E99C(); break; case 2: - D_80177898 = 3; + gDrawMode = DRAWMODE_3; func_EBFBE0_8019FF48(); break; } @@ -389,11 +389,11 @@ bool func_EBFBE0_8019FD1C(LevelId levelId, s32 arg1) { planetSaveSlot = SAVE_SLOT_VENOM_1; break; - case LEVEL_VENOM_SW: + case LEVEL_VENOM_2: planetSaveSlot = SAVE_SLOT_VENOM_2; break; - case LEVEL_VENOM_2: + case LEVEL_VENOM_ANDROSS: if (D_8017827C == 0) { planetSaveSlot = SAVE_SLOT_VENOM_1; } else { @@ -406,21 +406,21 @@ bool func_EBFBE0_8019FD1C(LevelId levelId, s32 arg1) { switch (arg1) { case 0: - if (!(gSaveFile.save.data.planet[planetSaveSlot].unk_5 & 1)) { - gSaveFile.save.data.planet[planetSaveSlot].unk_5 = 1; + if (!(gSaveFile.save.data.planet[planetSaveSlot].played & 1)) { + gSaveFile.save.data.planet[planetSaveSlot].played = 1; ret = true; } break; case 1: if (gExpertMode) { - if (!(gSaveFile.save.data.planet[planetSaveSlot].unk_3 & 1)) { - gSaveFile.save.data.planet[planetSaveSlot].unk_3 = 1; + if (!(gSaveFile.save.data.planet[planetSaveSlot].expertMedal & 1)) { + gSaveFile.save.data.planet[planetSaveSlot].expertMedal = 1; ret = true; } } else { - if (!(gSaveFile.save.data.planet[planetSaveSlot].unk_6 & 1)) { - gSaveFile.save.data.planet[planetSaveSlot].unk_6 = 1; + if (!(gSaveFile.save.data.planet[planetSaveSlot].normalMedal & 1)) { + gSaveFile.save.data.planet[planetSaveSlot].normalMedal = 1; ret = true; } } @@ -428,13 +428,13 @@ bool func_EBFBE0_8019FD1C(LevelId levelId, s32 arg1) { case 2: if (gExpertMode) { - if (!(gSaveFile.save.data.planet[planetSaveSlot].unk_4 & 1)) { - gSaveFile.save.data.planet[planetSaveSlot].unk_4 = 1; + if (!(gSaveFile.save.data.planet[planetSaveSlot].expertClear & 1)) { + gSaveFile.save.data.planet[planetSaveSlot].expertClear = 1; ret = true; } } else { - if (!(gSaveFile.save.data.planet[planetSaveSlot].unk_7 & 1)) { - gSaveFile.save.data.planet[planetSaveSlot].unk_7 = 1; + if (!(gSaveFile.save.data.planet[planetSaveSlot].normalClear & 1)) { + gSaveFile.save.data.planet[planetSaveSlot].normalClear = 1; ret = true; } } @@ -823,8 +823,8 @@ void func_EBFBE0_801A4F8C(void) { D_80178410 = 0; gGameState = 5; D_80177868 = 0; - D_8017783C = 2; - D_80177898 = 0; + D_Timer_8017783C = 2; + gDrawMode = DRAWMODE_0; } #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_EBFBE0/ED6EC0/func_EBFBE0_801A4FC4.s") @@ -833,7 +833,7 @@ void func_EBFBE0_801A4F8C(void) { s32 func_EBFBE0_801A5770(void) { bool ret = false; - s8 y = gControllerPress[D_80177AF8].stick_y; + s8 y = gControllerPress[gMainController].stick_y; if ((y > -40) && (y < 40)) { y = 0; @@ -849,7 +849,7 @@ s32 func_EBFBE0_801A5770(void) { } if (ret) { - func_80019218(0x49000002U, &D_800C5D28, 4U, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } return ret; @@ -949,7 +949,7 @@ bool func_EBFBE0_801A62FC(PlanetId planet) { break; } - if (gSaveFile.save.data.planet[planetSaveSlot].unk_5 & 1) { + if (gSaveFile.save.data.planet[planetSaveSlot].played & 1) { ret = false; } @@ -1079,8 +1079,8 @@ PlanetId func_EBFBE0_801A6480(LevelId level) { break; case LEVEL_VENOM_1: + case LEVEL_VENOM_ANDROSS: case LEVEL_VENOM_2: - case LEVEL_VENOM_SW: planet = PLANET_VENOM; break; @@ -1104,11 +1104,11 @@ s32 func_EBFBE0_801A655C(s32 arg0, s32 arg1) { } void func_EBFBE0_801A659C(void) { - func_8001A838(0x1100004CU); - func_8001A838(0x1100204CU); + func_8001A838(0x1100004C); + func_8001A838(0x1100204C); if (D_EBFBE0_801CD954 != 9) { - func_80019218(0x49000003U, &D_800C5D28, 4U, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } D_EBFBE0_801CEFC8 = 0; @@ -1118,9 +1118,9 @@ void func_EBFBE0_801A659C(void) { void func_EBFBE0_801A6628(void) { gGameState = 7; - D_8017783C = 2; + D_Timer_8017783C = 2; D_80177854 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; gHitCount = 0; func_800A5844(); @@ -1222,13 +1222,13 @@ s32 func_EBFBE0_801A6DAC(PlanetId planetId) { if (planetId == PLANET_VENOM) { if (gExpertMode) { - var_v0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].unk_3 & 1; - var_a0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].unk_4 & 1 | - gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].unk_4 & 1; + var_v0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].expertMedal & 1; + var_a0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].expertClear & 1 | + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].expertClear & 1; } else { - var_v0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].unk_6 & 1; - var_a0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].unk_7 & 1 | - gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].unk_7 & 1; + var_v0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].normalMedal & 1; + var_a0 = gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].normalClear & 1 | + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].normalClear & 1; } } else { planetSaveSlot = planetId; @@ -1238,11 +1238,11 @@ s32 func_EBFBE0_801A6DAC(PlanetId planetId) { } if (gExpertMode) { - var_v0 = gSaveFile.save.data.planet[planetSaveSlot].unk_3 & 1; - var_a0 = gSaveFile.save.data.planet[planetSaveSlot].unk_4 & 1; + var_v0 = gSaveFile.save.data.planet[planetSaveSlot].expertMedal & 1; + var_a0 = gSaveFile.save.data.planet[planetSaveSlot].expertClear & 1; } else { - var_v0 = gSaveFile.save.data.planet[planetSaveSlot].unk_6 & 1; - var_a0 = gSaveFile.save.data.planet[planetSaveSlot].unk_7 & 1; + var_v0 = gSaveFile.save.data.planet[planetSaveSlot].normalMedal & 1; + var_a0 = gSaveFile.save.data.planet[planetSaveSlot].normalClear & 1; } } @@ -1664,7 +1664,7 @@ void func_EBFBE0_801A9DE8(void) { } if (gFrameCount & mask) { - func_EBFBE0_801AD7EC(254, 16, gLifeCount[D_801778A0]); + func_EBFBE0_801AD7EC(254, 16, gLifeCount[gPlayerNum]); } if ((D_80161A34 == 7) || (D_80161A34 == 5)) { diff --git a/src/overlays/ovl_EBFBE0/fox_option.c b/src/overlays/ovl_EBFBE0/fox_option.c index 8f667db1..628ff404 100644 --- a/src/overlays/ovl_EBFBE0/fox_option.c +++ b/src/overlays/ovl_EBFBE0/fox_option.c @@ -356,10 +356,10 @@ void func_EBFBE0_80191B20(void) { var_a1_2 = 1; for (i = 0; i < 16; i++) { - if (i == 14) { + if (i == SAVE_SLOT_VENOM_1) { continue; } - if (!(gSaveFile.save.data.planet[i].unk_6 & 1)) { + if (!(gSaveFile.save.data.planet[i].normalMedal & 1)) { var_a1_2 = 0; break; } @@ -398,22 +398,22 @@ void func_EBFBE0_80191B20(void) { if (D_80161A34 == 8) { D_80177B90[D_80177B48] = 13; if (D_800D3180[9] == 1) { - gSaveFile.save.data.planet[14].unk_5 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].played = 1; if (var_v0_2 != 0) { - gSaveFile.save.data.planet[14].unk_4 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].expertClear = 1; } else { - gSaveFile.save.data.planet[14].unk_7 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].normalClear = 1; } Save_Write(); } else if (D_800D3180[9] == 2) { D_80177BB0[D_80177B48] = 1; - gSaveFile.save.data.planet[15].unk_5 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].played = 1; if (var_v0_2) { - gSaveFile.save.data.planet[15].unk_4 = 1; - gSaveFile.save.data.planet[15].unk_3 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].expertClear = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].expertMedal = 1; } else { - gSaveFile.save.data.planet[15].unk_7 = 1; - gSaveFile.save.data.planet[15].unk_6 = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].normalClear = 1; + gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].normalMedal = 1; } Save_Write(); } @@ -517,19 +517,19 @@ void func_EBFBE0_801920C4(void) { switch (D_8017784C) { case 0: - if (D_8017783C == 0) { + if (D_Timer_8017783C == 0) { D_8017784C = 1; func_8001DC6C(0, 23); } break; case 1: - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_EBFBE0_80191B20(); break; case 2: - D_80177898 = 2; + gDrawMode = DRAWMODE_2; func_EBFBE0_80192190(); break; } @@ -670,7 +670,7 @@ void func_EBFBE0_801924C4(void) { switch (D_EBFBE0_801B9124) { case 0: - D_80177898 = 0; + gDrawMode = DRAWMODE_0; break; case 10: @@ -753,9 +753,9 @@ void func_EBFBE0_801928BC(void) { D_80178410 = 0; D_EBFBE0_801B9124 = 100; gGameState = GSTATE_MAP; - D_8017783C = 2; + D_Timer_8017783C = 2; D_80177B40 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; gControllerLock = 3; } else { D_80178340 += 0x20; @@ -769,9 +769,9 @@ void func_EBFBE0_80192938(void) { if (D_80178340 == 0xFF) { gCurrentLevel = LEVEL_TRAINING; gGameState = GSTATE_PLAY; - D_8017783C = 2; + D_Timer_8017783C = 2; D_80177854 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_800A5844(); D_80177CA0 = 0; D_80177CB0 = 0.0f; @@ -889,15 +889,16 @@ void func_EBFBE0_80192D58(void) { break; case 1: - temp1 = func_EBFBE0_8019C418(&D_EBFBE0_801B91A4, 5, 1, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9180); + temp1 = func_EBFBE0_8019C418(&D_EBFBE0_801B91A4, 5, 1, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9180); // clang-format off - if (temp1 != 0) { func_80019218(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } + if (temp1 != 0) { Audio_PlaySfx(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } // clang-format on if ((D_EBFBE0_801B91A4 == 0) && (D_EBFBE0_801B91C8 != 0)) { - temp2 = func_EBFBE0_8019C418(&D_EBFBE0_801B91B0, 1, 0, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9190); + temp2 = + func_EBFBE0_8019C418(&D_EBFBE0_801B91B0, 1, 0, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9190); if (temp2 != 0) { - func_80019218(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B91B0) { D_EBFBE0_801AE638[0].unk_00.unk_08 = D_8004C50; D_EBFBE0_801AE638[0].unk_00.unk_10 = 80; @@ -915,9 +916,10 @@ void func_EBFBE0_80192D58(void) { } } if ((D_EBFBE0_801B91A4 == 4) && (D_EBFBE0_801B91C8 != 0)) { - temp2 = func_EBFBE0_8019C418(&D_EBFBE0_801B91AC, 1, 0, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9198); + temp2 = + func_EBFBE0_8019C418(&D_EBFBE0_801B91AC, 1, 0, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9198); if (temp2 != 0) { - func_80019218(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B91AC) { D_EBFBE0_801AE638[4].unk_00.unk_08 = D_8004C50; D_EBFBE0_801AE638[4].unk_00.unk_10 = 80; @@ -934,14 +936,14 @@ void func_EBFBE0_80192D58(void) { } } - if (gControllerPress[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { - func_80019218(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & (A_BUTTON | START_BUTTON)) { + Audio_PlaySfx(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9208 = D_EBFBE0_801AE570[D_EBFBE0_801B91A4]; D_EBFBE0_801B91BC = 0; D_EBFBE0_801B912C = 11; } - if (gControllerPress[D_80177AF8].button & B_BUTTON) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & B_BUTTON) { + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8280 = 1; D_EBFBE0_801B912C = 100; @@ -1021,10 +1023,10 @@ void func_EBFBE0_80192D58(void) { } else { D_80178410 = 0; gGameState = GSTATE_TITLE; - D_8017783C = 2; + D_Timer_8017783C = 2; D_80177AE0 = 0; D_EBFBE0_801B827C = 1; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8284 = 0; gControllerLock = 3; @@ -1160,21 +1162,21 @@ void func_EBFBE0_80193C4C(void) { case 1: // clang-format off - if (func_EBFBE0_8019C418(&D_EBFBE0_801B91A8, 2, 1, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9188) != 0) { func_80019218(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } + if (func_EBFBE0_8019C418(&D_EBFBE0_801B91A8, 2, 1, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9188) != 0) { Audio_PlaySfx(0x49000022, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } // clang-format on - if (gControllerPress[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { - func_80019218(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & (A_BUTTON | START_BUTTON)) { + Audio_PlaySfx(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9208 = D_EBFBE0_801AEF84[D_EBFBE0_801B91A8]; D_EBFBE0_801B91BC = 0; D_EBFBE0_801B912C = 11; } - if (gControllerPress[D_80177AF8].button & B_BUTTON) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & B_BUTTON) { + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 0; D_EBFBE0_801B9124 = 1000; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B9244 = 1; } break; @@ -1337,10 +1339,10 @@ void func_EBFBE0_801948A8(void) { s32 temp; sp34 = D_EBFBE0_801B9288; - temp = func_EBFBE0_8019C418(&D_EBFBE0_801B9288, 3, 1, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9250); + temp = func_EBFBE0_8019C418(&D_EBFBE0_801B9288, 3, 1, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9250); if (temp != 0) { D_EBFBE0_801B9270[sp34] = 255.0f; - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } if (D_EBFBE0_801B9288 == 0) { @@ -1350,24 +1352,24 @@ void func_EBFBE0_801948A8(void) { } // Test sound - if (gControllerPress[D_80177AF8].button & R_TRIG) { + if (gControllerPress[gMainController].button & R_TRIG) { D_EBFBE0_801B9284 ^= 1; func_8001D8F4(D_EBFBE0_801B9284); } - if (gControllerPress[D_80177AF8].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & A_BUTTON) { + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9288 = (D_EBFBE0_801B9288 + 1) & 3; } - if (gControllerPress[D_80177AF8].button & B_BUTTON) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & B_BUTTON) { + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B9284 == 1) { D_EBFBE0_801B9284 = 0; func_8001D8F4(D_EBFBE0_801B9284); } Save_Write(); - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B912C = 0; D_EBFBE0_801B9244 = 1; @@ -1378,8 +1380,8 @@ void func_EBFBE0_80194AEC(void) { s32 sp3C = gSoundMode; s32 pad; - if (func_EBFBE0_8019C418(&sp3C, 2, 0, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9260) != 0) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (func_EBFBE0_8019C418(&sp3C, 2, 0, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9260) != 0) { + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); gSoundMode = sp3C; if (gSoundMode >= 3) { gSoundMode = 0; @@ -1627,25 +1629,25 @@ void func_EBFBE0_80195944(void) { f32 sp28 = D_EBFBE0_801B931C; if (func_EBFBE0_8019C66C(&sp28, 0.0f, 49.0f, &D_EBFBE0_801B9290) != 0) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B931C = sp28; } - if (gControllerPress[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[gMainController].button & A_BUTTON) { func_8001DA90(D_EBFBE0_801B931C); D_EBFBE0_801B9320 = true; } - if (gControllerPress[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[gMainController].button & B_BUTTON) { if (!D_EBFBE0_801B9320) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_8001D444(0, 36, 0, 255); - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B912C = 0; D_EBFBE0_801B9244 = 1; } else { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_800182F4(0x100100FF); func_800182F4(0x110100FF); D_EBFBE0_801B9320 = false; @@ -1653,7 +1655,7 @@ void func_EBFBE0_80195944(void) { } // Spectrum Analizer mode selector - if (gControllerPress[D_80177AF8].button & R_CBUTTONS) { + if (gControllerPress[gMainController].button & R_CBUTTONS) { spectrumAnalizerMode++; if (spectrumAnalizerMode > 2) { spectrumAnalizerMode = 0; @@ -1795,7 +1797,7 @@ void func_EBFBE0_801962A4(void) { if (D_EBFBE0_801B9330[D_EBFBE0_801B91C0]) { break; } - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B912C = 0; D_EBFBE0_801B9244 = 1; @@ -1815,18 +1817,18 @@ void func_EBFBE0_801962A4(void) { case 1: D_EBFBE0_801B91CC = 2; - func_80019218(0x0940A00B, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - D_801779A8[D_80177AF8] = 50.0f; - D_80177990[D_80177AF8] = 0; + Audio_PlaySfx(0x0940A00B, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + D_801779A8[gMainController] = 50.0f; + D_80177990[gMainController] = 0; break; case 2: - D_80177990[D_80177AF8] += (s32) D_801779A8[D_80177AF8]; - temp_fv0 = Math_SmoothStepToF(&D_801779A8[D_80177AF8], 100.0f, 0.05f, 100.0f, 0.1f); + D_80177990[gMainController] += (s32) D_801779A8[gMainController]; + temp_fv0 = Math_SmoothStepToF(&D_801779A8[gMainController], 100.0f, 0.05f, 100.0f, 0.1f); - if (D_80177990[D_80177AF8] >= 100) { - D_80177990[D_80177AF8] -= 100; - D_80137E84[D_80177AF8] = 1; + if (D_80177990[gMainController] >= 100) { + D_80177990[gMainController] -= 100; + D_80137E84[gMainController] = 1; } if (temp_fv0 == 0.0f) { @@ -1868,36 +1870,36 @@ void func_EBFBE0_801962A4(void) { void func_EBFBE0_8019669C(void) { if ((D_EBFBE0_801B91CC == 0) || (D_EBFBE0_801B91CC == 1)) { if (func_EBFBE0_8019C5A0(&D_EBFBE0_801B91C0) != 0) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } if (1) {} } - if (gControllerPress[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[gMainController].button & A_BUTTON) { if (D_EBFBE0_801B91CC == 3) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 3; } else { D_EBFBE0_801B9330[D_EBFBE0_801B91C0] = 10; if (D_EBFBE0_801B91C0 == 0) { if (D_EBFBE0_801B91CC == 1) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 2; } else { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 3; } } else { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 4; } } - } else if (gControllerPress[D_80177AF8].button & B_BUTTON) { + } else if (gControllerPress[gMainController].button & B_BUTTON) { if (D_EBFBE0_801B91CC == 1) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 2; } else { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 3; } } @@ -2025,9 +2027,9 @@ void func_EBFBE0_80196E54(void) { void func_EBFBE0_80196EFC(void) { func_EBFBE0_80196FC4(); - if (gControllerPress[D_80177AF8].button & B_BUTTON) { - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - D_80177898 = 0; + if (gControllerPress[gMainController].button & B_BUTTON) { + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + gDrawMode = DRAWMODE_0; D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B912C = 0; D_EBFBE0_801B9244 = 1; @@ -2040,8 +2042,8 @@ void func_EBFBE0_80196F9C(void) { } void func_EBFBE0_80196FC4(void) { - if (gControllerPress[D_80177AF8].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & A_BUTTON) { + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B93E0 ^= 1; } @@ -2054,8 +2056,8 @@ void func_EBFBE0_80196FC4(void) { } void func_EBFBE0_80197074(void) { - if (func_EBFBE0_8019C418(&D_EBFBE0_801B93E4, 9, 1, 0, 20, 5, 4, D_80177AF8, &D_EBFBE0_801B9400) != 0) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (func_EBFBE0_8019C418(&D_EBFBE0_801B93E4, 9, 1, 0, 20, 5, 4, gMainController, &D_EBFBE0_801B9400) != 0) { + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91D4 = 114.0f - D_EBFBE0_801B93E4 * 130.0f; D_EBFBE0_801B91DC = 114.0f - D_EBFBE0_801B93E4 * 130.0f; D_EBFBE0_801B91D8 = -6.0f + D_EBFBE0_801B93E4 * 130.0f; @@ -2071,8 +2073,8 @@ void func_EBFBE0_8019715C(void) { s32 temp2; if (D_EBFBE0_801B91D0 != 0) { - if (func_EBFBE0_8019C418(&D_EBFBE0_801B93E4, 9, 1, 1, 20, 2, 9, D_80177AF8, &D_EBFBE0_801B9408) != 0.00f) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (func_EBFBE0_8019C418(&D_EBFBE0_801B93E4, 9, 1, 1, 20, 2, 9, gMainController, &D_EBFBE0_801B9408) != 0.00f) { + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91DC = 114.0f - D_EBFBE0_801B93E4 * 130.0f; D_EBFBE0_801B91E0 = -6.0f + D_EBFBE0_801B93E4 * 130.0f; D_EBFBE0_801B91D0 = 0; @@ -2605,9 +2607,9 @@ void func_EBFBE0_801992C4(void) { D_EBFBE0_801B93C4 = 0; for (i = 0; i < 4; i++) { - D_80161A18[i] = 0; + gPlayerInactive[i] = false; if (gControllerPlugged[i] == 0) { - D_80161A18[i] = 1; + gPlayerInactive[i] = true; D_EBFBE0_801B93C4 |= 1 << i; } D_EBFBE0_801B9358[i] = 255.0f; @@ -2640,20 +2642,20 @@ void func_EBFBE0_8019949C(void) { if (!(D_EBFBE0_801B93C4 & (1 << i))) { func_EBFBE0_8019C824(&D_EBFBE0_801B9358[i]); if (func_EBFBE0_8019C418(&D_EBFBE0_801AED3C[i], 2, 0, 0, 20, 2, 4, i, &D_EBFBE0_801B93A0[i])) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } if (gControllerPress[i].button & A_BUTTON) { if (D_EBFBE0_801B93C4 == 15) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91EC = 10; D_EBFBE0_801B912C++; break; } else { if (!(D_EBFBE0_801B93C4 & (1 << i))) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - D_80177888[i] = D_EBFBE0_801AED3C[i]; + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + gHandicap[i] = D_EBFBE0_801AED3C[i]; D_EBFBE0_801B9358[i] = 255.0f; D_EBFBE0_801B9348[i] = 10; D_EBFBE0_801B93C4 = D_EBFBE0_801B93C4 | (1 << i); @@ -2663,11 +2665,11 @@ void func_EBFBE0_8019949C(void) { if (gControllerPress[i].button & B_BUTTON) { if (D_EBFBE0_801B93C4 & (1 << i)) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B93C4 &= (1 << i) ^ 15; } else { func_8001D444(0, 36, 0, 255); - func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019B8A0(2); D_EBFBE0_801B9248 = 1; break; @@ -2959,9 +2961,9 @@ void func_EBFBE0_8019A214(void) { void func_EBFBE0_8019A298(void) { if (D_EBFBE0_801B91EC == 0.0f) { gGameState = GSTATE_VS_INIT; - D_8017783C = 2; + D_Timer_8017783C = 2; D_8017784C = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; } } @@ -2984,19 +2986,19 @@ void func_EBFBE0_8019A2E0(void) { } if (func_EBFBE0_8019C418(&D_EBFBE0_801B93D4, 4, 0, 0, 20, 2, 4, i, &D_EBFBE0_801B9380[i])) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_801778A4 = D_EBFBE0_801B93D4 + 1; } if (gControllerPress[i].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B936C = 10; break; } if (gControllerPress[i].button & B_BUTTON) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B91C4 = 0; func_EBFBE0_801924C4(); @@ -3024,20 +3026,20 @@ void func_EBFBE0_8019A4DC(void) { } if (func_EBFBE0_8019C418(&D_EBFBE0_801B93DC, 4, 0, 0, 20, 2, 4, i, &D_EBFBE0_801B9380[i])) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9340 = D_EBFBE0_801B93DC; D_801778C8 = D_EBFBE0_801B93DC; } if (gControllerPress[i].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B937C = 10; break; } if (gControllerPress[i].button & B_BUTTON) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B91C4 = 0; func_EBFBE0_801924C4(); @@ -3065,19 +3067,19 @@ void func_EBFBE0_8019A6DC(void) { continue; } if (func_EBFBE0_8019C418(&D_EBFBE0_801B93D8, 1, 0, 1, 20, 2, 4, i, &D_EBFBE0_801B9380[i])) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_80161A28 = D_EBFBE0_801B93D8; } if (gControllerPress[i].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_80161A28 == 0) { - gVersusStage = VSTAGE_CORNERIA; + gVersusStage = VS_STAGE_CORNERIA; if (D_EBFBE0_801B93D0 == 30) { - gVersusStage = VSTAGE_KATINA; + gVersusStage = VS_STAGE_KATINA; } } else { - gVersusStage = VSTAGE_SECTOR_Z; + gVersusStage = VS_STAGE_SECTOR_Z; } D_EBFBE0_801B9374 = 10; @@ -3086,7 +3088,7 @@ void func_EBFBE0_8019A6DC(void) { } if (gControllerPress[i].button & B_BUTTON) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B93D0 == 20) { D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B91C4 = 0; @@ -3121,13 +3123,13 @@ void func_EBFBE0_8019A954(void) { } if (gControllerPress[i].button & A_BUTTON) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91EC = 10; break; } if (gControllerPress[i].button & B_BUTTON) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B933C = 0; D_EBFBE0_801B91F0 = 0; @@ -3452,7 +3454,7 @@ void func_EBFBE0_8019B7D4(void) { void func_EBFBE0_8019B8A0(s32 arg0) { D_EBFBE0_801B9124 = arg0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B912C = 0; D_EBFBE0_801B91B4 = 0; } @@ -3710,8 +3712,8 @@ bool func_EBFBE0_8019C418(s32* arg0, s32 arg1, bool arg2, s32 arg3, s32 arg4, s3 s32 func_EBFBE0_8019C5A0(s32* arg0) { s32 ret = 0; s32 temp = *arg0; - s32 x = gControllerPress[D_80177AF8].stick_x; - s32 y = -gControllerPress[D_80177AF8].stick_y; + s32 x = gControllerPress[gMainController].stick_x; + s32 y = -gControllerPress[gMainController].stick_y; if ((y > 40) || (y < -40)) { return ret; @@ -3751,8 +3753,8 @@ s32 func_EBFBE0_8019C66C(f32* arg0, f32 arg1, f32 arg2, UnkStruct_D_EBFBE0_801B9 f32 temp2; s32 var_a2 = 0; f32 temp = *arg0; - s32 x = gControllerPress[D_80177AF8].stick_x; - s32 y = -gControllerPress[D_80177AF8].stick_y; + s32 x = gControllerPress[gMainController].stick_x; + s32 y = -gControllerPress[gMainController].stick_y; if ((y > 10) || (y < -10)) { return 0; @@ -3804,7 +3806,7 @@ s32 func_EBFBE0_8019C66C(f32* arg0, f32 arg1, f32 arg2, UnkStruct_D_EBFBE0_801B9 temp2 = *arg0; if ((s32) temp2 != (s32) temp) { - func_80019218(0x49004007, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49004007, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); var_a2 = 1; } @@ -3852,10 +3854,10 @@ s32 func_EBFBE0_8019C8C4(void) { break; } - if (temp[j] <= gLifeCount[D_801778A0]) { - if (temp[j] == gLifeCount[D_801778A0]) { + if (temp[j] <= gLifeCount[gPlayerNum]) { + if (temp[j] == gLifeCount[gPlayerNum]) { for (k = j; k < 10; k++) { - if ((temp[k] != gLifeCount[D_801778A0]) || (D_EBFBE0_801B8220[k] != D_80161714)) { + if ((temp[k] != gLifeCount[gPlayerNum]) || (D_EBFBE0_801B8220[k] != D_80161714)) { ret = k; break; } @@ -3906,7 +3908,7 @@ void func_EBFBE0_8019CAE0(void) { case 3: if (D_EBFBE0_801B917C == 0) { gBlurAlpha = 255; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B912C = 0; D_EBFBE0_801B9124 = 300; } @@ -3961,19 +3963,19 @@ void func_EBFBE0_8019CD54(void) { switch (D_EBFBE0_801B9128) { case 0: if (D_EBFBE0_801B9138 == 0) { - if (func_EBFBE0_8019C418(&D_EBFBE0_801B90A0[D_EBFBE0_801B9098], 36, 0, 0, 50, 5, 10, D_80177AF8, + if (func_EBFBE0_8019C418(&D_EBFBE0_801B90A0[D_EBFBE0_801B9098], 36, 0, 0, 50, 5, 10, gMainController, &D_EBFBE0_801B9160[D_EBFBE0_801B9098]) != 0) { - func_80019218(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000002, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9150[D_EBFBE0_801B9098][0] = D_EBFBE0_801AEF5C[D_EBFBE0_801B90A0[D_EBFBE0_801B9098]]; D_EBFBE0_801B90D0[D_EBFBE0_801B9098] = 0.0f; D_EBFBE0_801B9100[D_EBFBE0_801B9098] = 0.0f; } } - if (gControllerPress[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[gMainController].button & A_BUTTON) { D_EBFBE0_801B90D0[D_EBFBE0_801B9098] = 0.0f; if (D_EBFBE0_801B9138 != 0) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9140[0] = 10; D_EBFBE0_801B9140[1] = 10; D_EBFBE0_801B9140[2] = 10; @@ -3983,7 +3985,7 @@ void func_EBFBE0_8019CD54(void) { } else { if (D_EBFBE0_801B9098 < 3) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B90D0[D_EBFBE0_801B9098] = 0.0f; D_EBFBE0_801B9140[D_EBFBE0_801B9098] = 15; D_EBFBE0_801B9128 = 1; @@ -3992,8 +3994,8 @@ void func_EBFBE0_8019CD54(void) { } } - if ((gControllerPress[D_80177AF8].button & B_BUTTON) && (D_EBFBE0_801B9098 != 0)) { - func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if ((gControllerPress[gMainController].button & B_BUTTON) && (D_EBFBE0_801B9098 != 0)) { + Audio_PlaySfx(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B9138 != 0) { D_EBFBE0_801B9138 = 0; } @@ -4335,10 +4337,10 @@ void func_EBFBE0_8019DD44(void) { void func_EBFBE0_8019DE74(void) { func_EBFBE0_8019715C(); - if (gControllerPress[D_80177AF8].button & 0xD00E) { // START, A, B, C-UP, C-LEFT, C-DOWN - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & 0xD00E) { // START, A, B, C-UP, C-LEFT, C-DOWN + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B912C = 0; if (D_80161A34 == 5) { @@ -4379,10 +4381,10 @@ void func_EBFBE0_8019E030(void) { case 1: if (D_EBFBE0_801B9178 == 0) { if (((D_80161714 * 64) >= 50000) && ((D_80161714 * 64) < 70000)) { - func_80019218(0x49000032, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000032, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } if ((D_80161714 * 64) >= 70000) { - func_80019218(0x49000033, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000033, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } D_EBFBE0_801B9178 = 20; D_EBFBE0_801B912C++; @@ -4390,8 +4392,8 @@ void func_EBFBE0_8019E030(void) { break; case 2: - if ((D_EBFBE0_801B9178 == 0) && (gControllerPress[D_80177AF8].button & 0xD00E)) { - func_80019218(0x19031083, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if ((D_EBFBE0_801B9178 == 0) && (gControllerPress[gMainController].button & 0xD00E)) { + Audio_PlaySfx(0x19031083, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9090 = 1; D_EBFBE0_801B9178 = 60; D_EBFBE0_801B912C++; @@ -4402,7 +4404,7 @@ void func_EBFBE0_8019E030(void) { if (D_EBFBE0_801B9178 == 0) { D_80178410 = 0; gGameState = GSTATE_INIT; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; *gLifeCount = 2; D_80161714 = 0; } diff --git a/src/overlays/ovl_EBFBE0/fox_title.c b/src/overlays/ovl_EBFBE0/fox_title.c index c7125b78..07e899a7 100644 --- a/src/overlays/ovl_EBFBE0/fox_title.c +++ b/src/overlays/ovl_EBFBE0/fox_title.c @@ -39,7 +39,7 @@ void func_EBFBE0_801875E0(void) { D_80161A34 = 0; D_800D2870 = 0; - D_80177AF8 = func_EBFBE0_80187ABC(); + gMainController = func_EBFBE0_80187ABC(); D_80178348 = 0; D_80178350 = 0; @@ -72,7 +72,7 @@ void func_EBFBE0_801875E0(void) { func_EBFBE0_80188010(); - if ((D_80177AF8 == -1) || (D_EBFBE0_801B827C != 0)) { + if ((gMainController == -1) || (D_EBFBE0_801B827C != 0)) { func_8001DC6C(0, 0x17); D_EBFBE0_801B82C4 = 0; D_EBFBE0_801B827C = 0; @@ -86,19 +86,19 @@ void func_EBFBE0_801875E0(void) { void func_EBFBE0_80187754(void) { switch (D_80177AE0) { case 0: - if (D_8017783C == 0) { - D_80177898 = 0; + if (D_Timer_8017783C == 0) { + gDrawMode = DRAWMODE_0; D_80177AE0 = 1; } break; case 1: - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_EBFBE0_801875E0(); break; case 2: - D_80177898 = 1; + gDrawMode = DRAWMODE_1; func_EBFBE0_801877F0(); break; } @@ -244,9 +244,9 @@ void func_EBFBE0_80187B00(void) { } } else { D_80178410 = 0; - D_8017829C = 0; + gRadioState = 0; D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; func_8001DC6C(0, 0x16); D_EBFBE0_801B82C4 = 1; } @@ -333,7 +333,7 @@ s32 func_EBFBE0_80188010(void) { D_EBFBE0_801B8248[i][0] = gSaveFile.save.data.unk_18[i][0] & 0xFF; D_EBFBE0_801B8248[i][1] = gSaveFile.save.data.unk_18[i][1] & 0xFF; D_EBFBE0_801B8248[i][2] = gSaveFile.save.data.unk_18[i][2] & 0xFF; - D_EBFBE0_801B8248[i][3] = 0; + D_EBFBE0_801B8248[i][3] = '\0'; temp3 = gSaveFile.save.data.unk_36[i]; @@ -365,7 +365,7 @@ void func_EBFBE0_801881FC(void) { s32 i; for (i = 0; i < 16; i++) { - if ((i != 14) && (!(gSaveFile.save.data.planet[i].unk_3 & 1))) { + if ((i != 14) && (!(gSaveFile.save.data.planet[i].expertMedal & 1))) { var_a1 = false; break; } @@ -373,7 +373,7 @@ void func_EBFBE0_801881FC(void) { D_EBFBE0_801B82BC = 900; - D_8017829C = 0; + gRadioState = 0; D_EBFBE0_801B869C = 255; @@ -700,7 +700,7 @@ void func_EBFBE0_801888E8(void) { D_EBFBE0_801B86A4 = 0; } - if ((gControllerPress[D_80177AF8].stick_x != 0) || (gControllerPress[D_80177AF8].stick_y != 0)) { + if ((gControllerPress[gMainController].stick_x != 0) || (gControllerPress[gMainController].stick_y != 0)) { D_EBFBE0_801B82D0 = 0.08f; } } @@ -730,7 +730,7 @@ void func_EBFBE0_801888E8(void) { D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C4 = 7; } @@ -878,7 +878,7 @@ void func_EBFBE0_8018994C(void) { D_EBFBE0_801B82C0 = 100; D_EBFBE0_801B82B8 = 0; - D_8017829C = 0; + gRadioState = 0; D_80178300 = 0; sCurrentMsgPri = 0; break; @@ -976,8 +976,8 @@ void func_EBFBE0_8018994C(void) { } if (D_EBFBE0_801B82B8 == 638) { - func_80019218(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - func_80019218(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_800BA808(gMsg_ID_60, RCID_ROB64_TITLE); } @@ -1053,7 +1053,7 @@ void func_EBFBE0_8018994C(void) { D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C4 = 2; } @@ -1202,8 +1202,8 @@ void func_EBFBE0_8018A644(void) { switch (D_EBFBE0_801B82C0) { case 0: func_EBFBE0_8018A338(); - func_80019218(0x49000014, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - func_80019218(0x0140001C, (Vec3f*) &D_EBFBE0_801B84D8, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000014, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x0140001C, (Vec3f*) &D_EBFBE0_801B84D8, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B82B4 = 0; D_EBFBE0_801B82C8 = 0.0f; @@ -1253,7 +1253,7 @@ void func_EBFBE0_8018A644(void) { D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C4 = 3; } @@ -1367,8 +1367,8 @@ void func_EBFBE0_8018ACEC(void) { switch (D_EBFBE0_801B82C0) { case 0: func_EBFBE0_8018ABC0(); - func_80019218(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - func_80019218(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B82CC = 0.01f; D_EBFBE0_801B82B4 = 0; @@ -1391,7 +1391,7 @@ void func_EBFBE0_8018ACEC(void) { func_8001A55C(&D_EBFBE0_801B867C, 0x11030010); func_8001A55C(&D_EBFBE0_801B867C, 0x31024059); - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C0 = 0; D_EBFBE0_801B82C4 = 4; @@ -1545,7 +1545,7 @@ void func_EBFBE0_8018B5C4(void) { case 10: if (D_EBFBE0_801B82A8 == 0) { - func_80019218(0x0100001D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x0100001D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B82B4 = 0; D_EBFBE0_801B82C0 = 1; } @@ -1560,7 +1560,7 @@ void func_EBFBE0_8018B5C4(void) { D_EBFBE0_801B9048 -= 0.41f; if (D_EBFBE0_801B9048 < 0.0f) { D_EBFBE0_801B9048 = 0.0f; - func_80019218(0x09002013, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x09002013, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } @@ -1574,7 +1574,7 @@ void func_EBFBE0_8018B5C4(void) { } if (D_EBFBE0_801B84E8[i].unk_38 == 1) { - func_80019218(0x1950107A, &D_EBFBE0_801B84E8[i].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x1950107A, &D_EBFBE0_801B84E8[i].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); }; if (D_EBFBE0_801B84E8[i].unk_38 == 0) { @@ -1609,7 +1609,7 @@ void func_EBFBE0_8018B5C4(void) { if (D_EBFBE0_801B82B4 == 226) { D_EBFBE0_801B7BF0 = 0; - func_80019218(0x0100001E, &D_EBFBE0_801B84E8[3].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x0100001E, &D_EBFBE0_801B84E8[3].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B86BC = 105.0f; D_EBFBE0_801B86C0 = 0.0f; @@ -1703,7 +1703,7 @@ void func_EBFBE0_8018B5C4(void) { case 3: if (D_EBFBE0_801B82A8 == 0) { func_8001A55C(&D_EBFBE0_801B84E8[3].unk_50, 0x0100001E); - func_80019218(0x09000002, &D_EBFBE0_801B84E8[3].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x09000002, &D_EBFBE0_801B84E8[3].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B82A8 = 4; @@ -1892,8 +1892,8 @@ void func_EBFBE0_8018C644(void) { switch (D_EBFBE0_801B82C0) { case 0: - func_80019218(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - func_80019218(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x11030010, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x31024059, &D_EBFBE0_801B867C, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8018C1C0(); @@ -1920,7 +1920,7 @@ void func_EBFBE0_8018C644(void) { D_EBFBE0_801B84E8[i].unk_38--; } else { if (D_EBFBE0_801B84E8[i].unk_38 == 0) { - func_80019218(0x19000001, &D_EBFBE0_801B84E8[i].unk_50, 0, &D_800C5D34, &D_800C5D34, + Audio_PlaySfx(0x19000001, &D_EBFBE0_801B84E8[i].unk_50, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B84E8[i].unk_38 = -1; D_EBFBE0_801B84E8[i].unk_4C = 1; @@ -1947,7 +1947,6 @@ void func_EBFBE0_8018C644(void) { y = D_EBFBE0_801AE444[i] - D_EBFBE0_801B84E8[i].unk_00.y; z = D_EBFBE0_801AE454[i] + 10.0f - D_EBFBE0_801B84E8[i].unk_00.z; - // M_RTOD doesn't seem to work here for some reason D_EBFBE0_801B84E8[i].unk_18 = -Math_Atan2F(y, sqrtf(SQ(x) + SQ(z))) * 180.0f / M_PI; D_EBFBE0_801B84E8[i].unk_1C = Math_Atan2F(x, z) * 180.0f / M_PI; } @@ -1979,7 +1978,7 @@ void func_EBFBE0_8018C644(void) { break; } D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C4 = 0; func_8001DC6C(0, 23); break; @@ -2746,7 +2745,7 @@ void func_EBFBE0_8018F8E4(void) { } } - if (D_80177AF8 < 0) { + if (gMainController < 0) { RCP_SetupDL(&gMasterDisp, 0x55); gDPSetPrimColor(gMasterDisp++, 0, 0, 60, 60, 255, 200); @@ -3081,8 +3080,8 @@ void func_EBFBE0_80190E64(void) { void func_EBFBE0_80190EA4(void) { switch (D_EBFBE0_801B8280) { case 0: - if (gControllerPress[D_80177AF8].button & 0xD00F) { // START, A, B, C-left, C-Down, C-Up, C-Right - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + if (gControllerPress[gMainController].button & 0xD00F) { // START, A, B, C-left, C-Down, C-Up, C-Right + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8280 = 1; gControllerLock = 0x1E; @@ -3095,9 +3094,9 @@ void func_EBFBE0_80190EA4(void) { } else { func_8001DC6C(0, 0x17); D_80178410 = 0; - D_8017829C = 0; + gRadioState = 0; D_EBFBE0_801B82C0 = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_EBFBE0_801B82C4 = 0; gControllerLock = 30; D_EBFBE0_801B8284 = 0; @@ -3111,10 +3110,10 @@ void func_EBFBE0_80190FD0(void) { if (gControllerLock == 0) { switch (D_EBFBE0_801B8280) { case 0: - if (((gControllerPress[D_80177AF8].button & START_BUTTON) || - (gControllerPress[D_80177AF8].button & A_BUTTON)) && + if (((gControllerPress[gMainController].button & START_BUTTON) || + (gControllerPress[gMainController].button & A_BUTTON)) && (D_EBFBE0_801B8280 == 0)) { - func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + Audio_PlaySfx(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_800182F4(0x101E00FF); func_800182F4(0x111E00FF); D_EBFBE0_801B8284 = 0; @@ -3127,9 +3126,9 @@ void func_EBFBE0_80190FD0(void) { D_EBFBE0_801B8284 += 18; } else { gGameState = GSTATE_MENU; - D_8017783C = 2; + D_Timer_8017783C = 2; D_8017784C = 0; - D_80177898 = 0; + gDrawMode = DRAWMODE_0; D_80178410 = 0; D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8284 = 0; @@ -3145,13 +3144,13 @@ void func_EBFBE0_8019111C(void) { f32 y; if ((D_EBFBE0_801B82B0 == 0) && (D_EBFBE0_801B9040 == 0) && - ((gControllerPress[D_80177AF8].stick_x != 0) || (gControllerPress[D_80177AF8].stick_y != 0))) { + ((gControllerPress[gMainController].stick_x != 0) || (gControllerPress[gMainController].stick_y != 0))) { D_EBFBE0_801B9040 = 1; D_EBFBE0_801B86A4 = 0; } - x = gControllerPress[D_80177AF8].stick_x; - y = gControllerPress[D_80177AF8].stick_y; + x = gControllerPress[gMainController].stick_x; + y = gControllerPress[gMainController].stick_y; if (D_EBFBE0_801B9040 != 0) { if (((x * 0.2f) + D_EBFBE0_801B905C > -500.0f) && ((x * 0.2f) + D_EBFBE0_801B905C < 500.0f)) { @@ -3162,8 +3161,8 @@ void func_EBFBE0_8019111C(void) { } } - if ((D_EBFBE0_801B9040 != 0) && (gControllerPress[D_80177AF8].stick_x == 0) && - (gControllerPress[D_80177AF8].stick_y == 0)) { + if ((D_EBFBE0_801B9040 != 0) && (gControllerPress[gMainController].stick_x == 0) && + (gControllerPress[gMainController].stick_y == 0)) { D_EBFBE0_801B86A4++; } else { D_EBFBE0_801B86A4 = 0; @@ -3354,7 +3353,7 @@ void func_EBFBE0_801919C4(u16** arg0, s32 arg1) { D_80178724 = 0; D_80178308 = arg0[D_80178724]; D_80177D68 = arg1; - D_8017829C = 100; + gRadioState = 100; switch (gGameState) { case GSTATE_TITLE: diff --git a/yamls/us/header.yaml b/yamls/us/header.yaml index 01910f42..08ae7a15 100644 --- a/yamls/us/header.yaml +++ b/yamls/us/header.yaml @@ -23,7 +23,8 @@ options: - linker_scripts/us/symbol_addrs_nlib_funcs.txt - linker_scripts/us/symbol_addrs_nlib_vars.txt - linker_scripts/us/symbol_addrs_assets.txt - - linker_scripts/us/symbol_addr_mesg.txt + - linker_scripts/us/symbol_addrs_mesg.txt + - linker_scripts/us/symbol_addrs_audio.txt - linker_scripts/us/symbol_addrs_overlays.txt - linker_scripts/us/symbol_addrs_EBFBE0.txt - linker_scripts/us/ignored_addresses.txt diff --git a/yamls/us/overlays.yaml b/yamls/us/overlays.yaml index 08eee4fc..0e3c25fa 100644 --- a/yamls/us/overlays.yaml +++ b/yamls/us/overlays.yaml @@ -54,7 +54,7 @@ - [0xE4EC90, data, E1F680] - [0xE4F010, data, E2DF20] - [0xE4F290, data, E38560] - - [0xE50040, .rodata, E16C50] + - [0xE50030, .rodata, E16C50] - [0xE504E0, .rodata, E1F680] - [0xE50C00, .rodata, E2DF20] - [0xE51160, .rodata, E38560] @@ -122,7 +122,7 @@ - [0xEBE560, data, EADCE0] - [0xEBE5C0, data, EAF7E0] - [0xEBE830, data, EBD210] - - [0xEBE870, .rodata, E9F1D0] + - [0xEBE840, .rodata, E9F1D0] - [0xEBF0F0, .rodata, EADECO] - [0xEBF130, .rodata, EAF7E0] - [0xEBFB80, .rodata, EBD210]