diff --git a/include/functions.h b/include/functions.h index bb7c4c5f..6c2dec96 100644 --- a/include/functions.h +++ b/include/functions.h @@ -6,6 +6,7 @@ #include "fox_option.h" #include "sf64object.h" #include "sf64thread.h" +#include "sf64player.h" s32 Lib_vsPrintf(char* dst, const char* fmt, va_list args); void Lib_Perspective(Gfx** dList); @@ -105,7 +106,7 @@ void func_800319AC(Object_2F4*); void func_80035448(Object_2F4*); //sf_36930 -void Object_70_Initialize(Object_70 *); +void PlayerShot_Initialize(PlayerShot *); void func_800365E4(f32, f32, f32, f32, f32, f32, f32, f32, f32, s32, s32); void func_8003D9B8(); void func_8003DA0C(void); @@ -162,8 +163,8 @@ void func_80059BBC(Object_80*); void func_80059BF0(Object_2F4*); void func_80059C34(Object_4C*); void func_80059C40(Object_4C*); -void func_80059F68(Object_6C*); -void func_80059FDC(Object_6C*); +void func_80059F68(Item*); +void func_80059FDC(Item*); void func_8005A094(Object_2F4*); void func_8005ADAC(Object_2F4*); void func_8005B1E8(Object_2F4*, s32); @@ -174,13 +175,13 @@ void func_8005B7CC(Object_2F4*); void func_8005B848(Object_2F4*); void func_8005B9A4(Object_2F4*); void func_8005BA30(Object_2F4*); -void func_8005C5F0(Object_6C*); -void func_8005C900(Object_6C*); -void func_8005C9C0(Object_6C*); -void func_8005CA80(Object_6C*); -void func_8005CB44(Object_6C*); -void func_8005CC9C(Object_6C*); -void func_8005CDA8(Object_6C*); +void func_8005C5F0(Item*); +void func_8005C900(Item*); +void func_8005C9C0(Item*); +void func_8005CA80(Item*); +void func_8005CB44(Item*); +void func_8005CC9C(Item*); +void func_8005CDA8(Item*); void func_8005F030(Vec3f*); void func_8005F0E8(Vec3f*, Vec3f*); void func_8005F1EC(Vec3f*); @@ -195,12 +196,12 @@ void func_80060968(void); void func_80060F30(Vec3f* , u32 , s32 ); void Object_Kill(Object*, Vec3f*); s32 func_80060FE4(Vec3f*, f32); -void Object_Set1C(ObjectStruct_1C*, u32); +void Object_SetInfo(ObjectInfo*, u32); void Object_80_Initialize(Object_80*); void Object_4C_Initialize(Object_4C*); void Object_2F4_Initialize(Object_2F4*); void Object_408_Initialize(Object_408*); -void Object_6C_Initialize(Object_6C*); +void Item_Initialize(Item*); void Object_8C_Initialize(Object_8C*); void func_80061B68(void); void func_80061CD0(void); @@ -225,23 +226,23 @@ void func_80066C00(Object_80*); void func_80066D5C(Object_80*); void func_80066E8C(Object_4C*); void func_80066EA8(Object_80*); -void func_80066EF0(Object_6C *); -void func_800671D0(Object_6C *); +void func_80066EF0(Item *); +void func_800671D0(Item *); void func_800674B4(f32, f32, f32, f32, f32, f32, f32, f32); void func_8006753C(Object_2F4*); void func_80067874(Object_2F4*); void func_80067A40(void); -void func_80067B1C(Object_6C*); -void func_80067BEC(Object_6C*); -void func_80067F6C(Object_6C*); -void func_80068020(Object_6C*); -void func_800685D8(Object_6C*); -void func_800685F8(Object_6C*); -void func_80068618(Object_6C*); -void func_80068688(Object_6C*); -void func_80068914(Object_6C*); -void func_80068C48(Object_6C*); -void func_80068C88(Object_6C*); +void func_80067B1C(Item*); +void func_80067BEC(Item*); +void func_80067F6C(Item*); +void func_80068020(Item*); +void func_800685D8(Item*); +void func_800685F8(Item*); +void func_80068618(Item*); +void func_80068688(Item*); +void func_80068914(Item*); +void func_80068C48(Item*); +void func_80068C88(Item*); void func_80068FE0(Object_4C*); void func_800690D0(s32, s32); void func_80069924(Object_8C *); @@ -249,12 +250,12 @@ void func_800693E8(Object_2F4 *); void func_80069658(Object_408 *); void func_800696F8(Object_80 *); void func_80069858(Object_4C *); -void func_80069A10(Object_6C *); +void func_80069A10(Item *); void Object_2F4_Update(Object_2F4*); void Object_408_Update(Object_408 *); void Object_80_Update(Object_80 *); void Object_4C_Update(Object_4C *); -void Object_6C_Update(Object_6C *); +void Item_Update(Item *); void Object_8C_Update(Object_8C *); void func_8006A06C(UnkEntity30*); void func_8006A38C(void); @@ -478,7 +479,7 @@ void func_800A3CA0(void); // fox_play s32 Play_CheckMedalStatus(u16); -s32 Play_GetMaxHealth(void); +s32 Play_GetMaxShields(void); void func_800A5844(void); void func_800A5D6C(void); void func_800A5FA0(Vec3f* , u32 , s32 ); @@ -486,10 +487,10 @@ void func_800A6148(void); void func_800A69F8(s32 , f32 , f32 , f32 ); void func_800A6CD0(Player *, s32, s32); bool func_800A73E4(f32* , s32* , f32 posX, f32 posY, f32 posZ); -s32 func_800A78C4(f32* hitbox, f32 , f32 , f32 , f32 , f32 , f32 ); +s32 func_800A78C4(Hitbox* hitbox, f32 , f32 , f32 , f32 , f32 , f32 ); void func_800A8BA4(Player* player); void func_800AA800(Player *player); -void func_800ACDC0(Player *, Object_70 *, s32 ); +void func_800ACDC0(Player *, PlayerShot *, s32 ); void func_800B0F50(Player *); void func_800B44C4(Player *); void func_800B5FBC(Player *, s32 , s32 ); @@ -499,7 +500,7 @@ void func_800B6BFC(Player *, s32 ); void func_800B6F50(f32, f32, f32, f32, f32, f32); void func_800B7184(Player *, s32); void func_800B73E0(Player *); -void func_800B852C(s32 , Object_6C *); +void func_800B852C(s32 , Item *); void func_800B86CC(void); // fox_radio @@ -528,6 +529,7 @@ void func_DF4260_8018753C(Object_80*); void func_DF4260_801878D8(Object_408 *); void func_DF4260_8018B0B4(Object_2F4 *); void func_DF4260_8018BE7C(Object_408 *); +void func_DF4260_801924A8(Object_80* ); void func_DF4260_8019250C(Object_2F4 *); void func_DF4260_80192CB0(Object_2F4 *); void func_DF4260_80192EA4(Object_2F4 *); @@ -535,16 +537,17 @@ void func_DF4260_801933B4(Object_2F4 *); void func_DF4260_801935CC(Object_408 *); void func_DF4260_80198310(Object_408 *); void func_DF4260_801988E0(void); +void func_DF4260_8018ED78(Object_408*); void func_E08400_80187B08(Object_2F4 *); void func_E08400_80188A40(Object_408 *); void func_E08400_8018CCF8(Object_2F4 *); -void func_E16C50_801A9824(void); -void func_E16C50_801AC8A8(f32, f32, f32, f32, s32); -void func_E16C50_8019E9F4(f32, f32, f32, f32, f32, f32, f32, s32); +void func_E16C50_80191DB0(Object_2F4*); +void func_E16C50_8018ED78(Player*); void func_E16C50_80187754(Object_408 *); void func_E16C50_801900FC(Vec3f*, Vec3f*, f32, f32, f32, s32, f32, s32, s32); +void func_E16C50_80190430(Object_2F4 *); void func_E16C50_80190F08(Object_2F4 *); void func_E16C50_801915A4(Object_2F4 *); void func_E16C50_80191BB8(Object_2F4 *); @@ -553,7 +556,10 @@ void func_E16C50_8019B1F0(Object_2F4 *); void func_E16C50_8019B810(Object_2F4 *); void func_E16C50_8019C200(Object_2F4 *); void func_E16C50_8019D060(Object_2F4 *); +void func_E16C50_8019E9F4(f32, f32, f32, f32, f32, f32, f32, s32); +void func_E16C50_801A9824(void); void func_E16C50_801AA20C(void); +void func_E16C50_801AC8A8(f32, f32, f32, f32, s32); void func_E16C50_801ACBB4(void); void func_E16C50_801AD688(Object_2F4 *); void func_E16C50_801AE3AC(Object_2F4 *); @@ -564,7 +570,6 @@ void func_E16C50_801B6E54(Object_2F4 *); void func_E16C50_801B7AF0(Object_2F4 *); void func_E16C50_801BA57C(Object_2F4 *); void func_E16C50_801BB26C(Object_2F4 *); -void func_E16C50_80190430(Object_2F4 *); void func_E51970_80193CA4(Object_408 *); void func_E51970_80198594(Object_408 *); diff --git a/include/global.h b/include/global.h index 0a9b4a08..80789acc 100644 --- a/include/global.h +++ b/include/global.h @@ -20,6 +20,7 @@ #include "sf64object.h" #include "sf64level.h" #include "sf64thread.h" +#include "sf64player.h" #include "gfx.h" #endif // GLOBAL_H diff --git a/include/hud.h b/include/hud.h index bd335a4c..9960b993 100644 --- a/include/hud.h +++ b/include/hud.h @@ -67,10 +67,10 @@ extern s32 D_801617FC; extern s32 gHitCount; extern s32 D_80177838; extern s32 D_80177854; -extern s32 D_80177880; -extern s32 gTeamHealth[]; +extern s32 gAllRangeMode; +extern s32 gTeamShields[]; extern s32 D_801778BC; -extern s32 D_801778E8; +extern s32 gVersusMode; extern s32 D_80177B48; extern s32 D_80177B50[]; extern s32 D_80177B70[]; diff --git a/include/sf64level.h b/include/sf64level.h index 7864867e..370d582d 100644 --- a/include/sf64level.h +++ b/include/sf64level.h @@ -83,4 +83,10 @@ typedef enum { LEVEL_VERSUS, } LevelId; +typedef enum { + VSTAGE_CORNERIA, + VSTAGE_KATINA, + VSTAGE_SECTOR_Z, +} VsStage; + #endif diff --git a/include/sf64object.h b/include/sf64object.h index c3a600a7..86a8566f 100644 --- a/include/sf64object.h +++ b/include/sf64object.h @@ -45,40 +45,19 @@ typedef struct { }; /* 0x00 */ u8 drawType; /* 0x08 */ ObjectFunc action; // argument must have object type. - /* 0x0C */ f32* hitbox; // some sort of script? hitboxes? + /* 0x0C */ f32* hitbox; /* 0x10 */ f32 unk_10; // z coordinate of something /* 0x14 */ s16 unk_14; // can be -1, 0, 1 /* 0x16 */ s16 unk_16; // can be 0, 1, 2 - /* 0x18 */ u8 damage; // damage? + /* 0x18 */ u8 damage; /* 0x19 */ u8 unk_19; // can be 0, 1, 2 /* 0x1C */ f32 unk_1C; // y offset of something - /* 0x20 */ u8 bonus; // increment for something -} ObjectStruct_1C; // size = 0x24 + /* 0x20 */ u8 bonus; +} ObjectInfo; // size = 0x24 typedef struct { /* 0x00 */ Object obj; - /* 0x1C */ s32 index; - /* 0x20 */ Vec3f unk_20; - /* 0x2C */ f32 unk_2C; - /* 0x30 */ f32 unk_30; - /* 0x34 */ f32 unk_34; - /* 0x38 */ Vec3f sfxPos; - /* 0x44 */ f32 unk_44; - /* 0x44 */ f32 unk_48; - /* 0x44 */ f32 unk_4C; - /* 0x44 */ f32 unk_50; - /* 0x44 */ f32 unk_54; - /* 0x58 */ s32 unk_58; - /* 0x5C */ s32 unk_5C; - /* 0x60 */ s32 unk_60; - /* 0x64 */ s32 unk_64; - /* 0x68 */ s32 unk_68; - /* 0x6C */ char pad6C[4]; -} Object_70; // size = 0x70 - -typedef struct { - /* 0x00 */ Object obj; - /* 0x1C */ ObjectStruct_1C unk_1C; + /* 0x1C */ ObjectInfo info; /* 0x40 */ char unk40[0x8]; /* 0x48 */ Vec3f sfxPos; /* 0x54 */ f32 unk_54; @@ -86,7 +65,7 @@ typedef struct { typedef struct { /* 0x00 */ Object obj; - /* 0x1C */ ObjectStruct_1C unk_1C; + /* 0x1C */ ObjectInfo info; /* 0x40 */ s32 index; /* 0x44 */ s32 unk_44; /* 0x48 */ s32 unk_48; @@ -103,17 +82,17 @@ typedef struct { typedef struct { /* 0x00 */ Object obj; - /* 0x1C */ ObjectStruct_1C unk_1C; + /* 0x1C */ ObjectInfo info; /* 0x40 */ s32 index; /* 0x44 */ char pad44[1]; - /* 0x45 */ u8 unk_45; // could be short loaded as u8 + /* 0x45 */ u8 unk_45; /* 0x46 */ s8 unk_46; /* 0x48 */ s32 unk_48; } Object_4C; // size = 0x4C typedef struct { /* 0x00 */ Object obj; - /* 0x1C */ ObjectStruct_1C unk_1C; + /* 0x1C */ ObjectInfo info; /* 0x40 */ s32 index; /* 0x44 */ s16 unk_44; /* 0x46 */ u8 unk_46; @@ -126,11 +105,11 @@ typedef struct { /* 0x58 */ f32 unk_58; /* 0x5C */ Vec3f sfxPos; /* 0x68 */ f32 unk_68; -} Object_6C; // size 0x6C +} Item; // size 0x6C typedef struct { /* 0x00 */ Object obj; - /* 0x1C */ ObjectStruct_1C unk_1C; + /* 0x1C */ ObjectInfo info; /* 0x40 */ s32 index; /* 0x44 */ s16 unk_44; /* 0x46 */ s16 unk_46; @@ -153,8 +132,8 @@ typedef struct { typedef struct { /* 0x000 */ Object obj; - /* 0x01C */ ObjectStruct_1C unk_01C; - /* 0x040 */ s32 unk_040; + /* 0x01C */ ObjectInfo info; + /* 0x040 */ s32 index; /* 0x044 */ char unk_44[0xA]; /* 0x04E */ s16 unk_04E; /* 0x050 */ s16 unk_050; @@ -217,8 +196,8 @@ typedef struct { typedef struct { /* 0x000 */ Object obj; - /* 0x01C */ ObjectStruct_1C unk_01C; - /* 0x040 */ s32 unk_040; + /* 0x01C */ ObjectInfo info; + /* 0x040 */ s32 index; /* 0x044 */ u8 unk_044; /* 0x046 */ s16 unk_046; /* 0x048 */ s16 unk_048; @@ -307,418 +286,418 @@ typedef struct { } Object_2F4; // size = 0x2F4 typedef enum{ -/* -1*/ OBJECT_INVALID=-1, - /* 0 */ OBJECT_0, - /* 1 */ OBJECT_1, - /* 2 */ OBJECT_2, - /* 3 */ OBJECT_3, - /* 4 */ OBJECT_4, - /* 5 */ OBJECT_5, - /* 6 */ OBJECT_6, - /* 7 */ OBJECT_7, - /* 8 */ OBJECT_8, - /* 9 */ OBJECT_9, - /* 10 */ OBJECT_10, - /* 11 */ OBJECT_11, - /* 12 */ OBJECT_12, - /* 13 */ OBJECT_13, - /* 14 */ OBJECT_14, - /* 15 */ OBJECT_15, - /* 16 */ OBJECT_16, - /* 17 */ OBJECT_17, - /* 18 */ OBJECT_18, - /* 19 */ OBJECT_19, - /* 20 */ OBJECT_20, - /* 21 */ OBJECT_21, - /* 22 */ OBJECT_22, - /* 23 */ OBJECT_23, - /* 24 */ OBJECT_24, - /* 25 */ OBJECT_25, - /* 26 */ OBJECT_26, - /* 27 */ OBJECT_27, - /* 28 */ OBJECT_28, - /* 29 */ OBJECT_29, - /* 30 */ OBJECT_30, - /* 31 */ OBJECT_31, - /* 32 */ OBJECT_32, - /* 33 */ OBJECT_33, - /* 34 */ OBJECT_34, - /* 35 */ OBJECT_35, - /* 36 */ OBJECT_36, - /* 37 */ OBJECT_37, - /* 38 */ OBJECT_38, - /* 39 */ OBJECT_39, - /* 40 */ OBJECT_40, - /* 41 */ OBJECT_41, - /* 42 */ OBJECT_42, - /* 43 */ OBJECT_43, - /* 44 */ OBJECT_44, - /* 45 */ OBJECT_45, - /* 46 */ OBJECT_46, - /* 47 */ OBJECT_47, - /* 48 */ OBJECT_48, - /* 49 */ OBJECT_49, - /* 50 */ OBJECT_50, - /* 51 */ OBJECT_51, - /* 52 */ OBJECT_52, - /* 53 */ OBJECT_53, - /* 54 */ OBJECT_54, - /* 55 */ OBJECT_55, - /* 56 */ OBJECT_56, - /* 57 */ OBJECT_57, - /* 58 */ OBJECT_58, - /* 59 */ OBJECT_59, - /* 60 */ OBJECT_60, - /* 61 */ OBJECT_61, - /* 62 */ OBJECT_62, - /* 63 */ OBJECT_63, - /* 64 */ OBJECT_64, - /* 65 */ OBJECT_65, - /* 66 */ OBJECT_66, - /* 67 */ OBJECT_67, - /* 68 */ OBJECT_68, - /* 69 */ OBJECT_69, - /* 70 */ OBJECT_70, - /* 71 */ OBJECT_71, - /* 72 */ OBJECT_72, - /* 73 */ OBJECT_73, - /* 74 */ OBJECT_74, - /* 75 */ OBJECT_75, - /* 76 */ OBJECT_76, - /* 77 */ OBJECT_77, - /* 78 */ OBJECT_78, - /* 79 */ OBJECT_79, - /* 80 */ OBJECT_80, - /* 81 */ OBJECT_81, - /* 82 */ OBJECT_82, - /* 83 */ OBJECT_83, - /* 84 */ OBJECT_84, - /* 85 */ OBJECT_85, - /* 86 */ OBJECT_86, - /* 87 */ OBJECT_87, - /* 88 */ OBJECT_88, - /* 89 */ OBJECT_89, - /* 90 */ OBJECT_90, - /* 91 */ OBJECT_91, - /* 92 */ OBJECT_92, - /* 93 */ OBJECT_93, - /* 94 */ OBJECT_94, - /* 95 */ OBJECT_95, - /* 96 */ OBJECT_96, - /* 97 */ OBJECT_97, - /* 98 */ OBJECT_98, - /* 99 */ OBJECT_99, - /* 100 */ OBJECT_100, - /* 101 */ OBJECT_101, - /* 102 */ OBJECT_102, - /* 103 */ OBJECT_103, - /* 104 */ OBJECT_104, - /* 105 */ OBJECT_105, - /* 106 */ OBJECT_106, - /* 107 */ OBJECT_107, - /* 108 */ OBJECT_108, - /* 109 */ OBJECT_109, - /* 110 */ OBJECT_110, - /* 111 */ OBJECT_111, - /* 112 */ OBJECT_112, - /* 113 */ OBJECT_113, - /* 114 */ OBJECT_114, - /* 115 */ OBJECT_115, - /* 116 */ OBJECT_116, - /* 117 */ OBJECT_117, - /* 118 */ OBJECT_118, - /* 119 */ OBJECT_119, - /* 120 */ OBJECT_120, - /* 121 */ OBJECT_121, - /* 122 */ OBJECT_122, - /* 123 */ OBJECT_123, - /* 124 */ OBJECT_124, - /* 125 */ OBJECT_125, - /* 126 */ OBJECT_126, - /* 127 */ OBJECT_127, - /* 128 */ OBJECT_128, - /* 129 */ OBJECT_129, - /* 130 */ OBJECT_130, - /* 131 */ OBJECT_131, - /* 132 */ OBJECT_132, - /* 133 */ OBJECT_133, - /* 134 */ OBJECT_134, - /* 135 */ OBJECT_135, - /* 136 */ OBJECT_136, - /* 137 */ OBJECT_137, - /* 138 */ OBJECT_138, - /* 139 */ OBJECT_139, - /* 140 */ OBJECT_140, - /* 141 */ OBJECT_141, - /* 142 */ OBJECT_142, - /* 143 */ OBJECT_143, - /* 144 */ OBJECT_144, - /* 145 */ OBJECT_145, - /* 146 */ OBJECT_146, - /* 147 */ OBJECT_147, - /* 148 */ OBJECT_148, - /* 149 */ OBJECT_149, - /* 150 */ OBJECT_150, - /* 151 */ OBJECT_151, - /* 152 */ OBJECT_152, - /* 153 */ OBJECT_153, - /* 154 */ OBJECT_154, - /* 155 */ OBJECT_155, - /* 156 */ OBJECT_156, - /* 157 */ OBJECT_157, - /* 158 */ OBJECT_158, - /* 159 */ OBJECT_159, - /* 160 */ OBJECT_160, - /* 161 */ OBJECT_161, // start of 4C - /* 162 */ OBJECT_162, - /* 163 */ OBJECT_163, - /* 164 */ OBJECT_164, - /* 165 */ OBJECT_165, - /* 166 */ OBJECT_166, - /* 167 */ OBJECT_167, - /* 168 */ OBJECT_168, - /* 169 */ OBJECT_169, - /* 170 */ OBJECT_170, - /* 171 */ OBJECT_171, - /* 172 */ OBJECT_172, - /* 173 */ OBJECT_173, - /* 174 */ OBJECT_174, - /* 175 */ OBJECT_175, - /* 176 */ OBJECT_176, // start of 2F4 - /* 177 */ OBJECT_177, - /* 178 */ OBJECT_178, - /* 179 */ OBJECT_179, - /* 180 */ OBJECT_180, - /* 181 */ OBJECT_181, - /* 182 */ OBJECT_182, - /* 183 */ OBJECT_183, - /* 184 */ OBJECT_184, - /* 185 */ OBJECT_185, - /* 186 */ OBJECT_186, - /* 187 */ OBJECT_187, - /* 188 */ OBJECT_188, - /* 189 */ OBJECT_189, - /* 190 */ OBJECT_190, - /* 191 */ OBJECT_191, - /* 192 */ OBJECT_192, - /* 193 */ OBJECT_193, - /* 194 */ OBJECT_194, - /* 195 */ OBJECT_195, - /* 196 */ OBJECT_196, - /* 197 */ OBJECT_197, - /* 198 */ OBJECT_198, - /* 199 */ OBJECT_199, - /* 200 */ OBJECT_200, - /* 201 */ OBJECT_201, - /* 202 */ OBJECT_202, - /* 203 */ OBJECT_203, - /* 204 */ OBJECT_204, - /* 205 */ OBJECT_205, - /* 206 */ OBJECT_206, - /* 207 */ OBJECT_207, - /* 208 */ OBJECT_208, - /* 209 */ OBJECT_209, - /* 210 */ OBJECT_210, - /* 211 */ OBJECT_211, - /* 212 */ OBJECT_212, - /* 213 */ OBJECT_213, - /* 214 */ OBJECT_214, - /* 215 */ OBJECT_215, - /* 216 */ OBJECT_216, - /* 217 */ OBJECT_217, - /* 218 */ OBJECT_218, - /* 219 */ OBJECT_219, - /* 220 */ OBJECT_220, - /* 221 */ OBJECT_221, - /* 222 */ OBJECT_222, - /* 223 */ OBJECT_223, - /* 224 */ OBJECT_224, - /* 225 */ OBJECT_225, - /* 226 */ OBJECT_226, - /* 227 */ OBJECT_227, - /* 228 */ OBJECT_228, - /* 229 */ OBJECT_229, - /* 230 */ OBJECT_230, - /* 231 */ OBJECT_231, - /* 232 */ OBJECT_232, - /* 233 */ OBJECT_233, - /* 234 */ OBJECT_234, - /* 235 */ OBJECT_235, - /* 236 */ OBJECT_236, - /* 237 */ OBJECT_237, - /* 238 */ OBJECT_238, - /* 239 */ OBJECT_239, - /* 240 */ OBJECT_240, - /* 241 */ OBJECT_241, - /* 242 */ OBJECT_242, - /* 243 */ OBJECT_243, - /* 244 */ OBJECT_244, - /* 245 */ OBJECT_245, - /* 246 */ OBJECT_246, - /* 247 */ OBJECT_247, - /* 248 */ OBJECT_248, - /* 249 */ OBJECT_249, - /* 250 */ OBJECT_250, - /* 251 */ OBJECT_251, - /* 252 */ OBJECT_252, - /* 253 */ OBJECT_253, - /* 254 */ OBJECT_254, - /* 255 */ OBJECT_255, - /* 256 */ OBJECT_256, - /* 257 */ OBJECT_257, - /* 258 */ OBJECT_258, - /* 259 */ OBJECT_259, - /* 260 */ OBJECT_260, - /* 261 */ OBJECT_261, - /* 262 */ OBJECT_262, - /* 263 */ OBJECT_263, - /* 264 */ OBJECT_264, - /* 265 */ OBJECT_265, - /* 266 */ OBJECT_266, - /* 267 */ OBJECT_267, - /* 268 */ OBJECT_268, - /* 269 */ OBJECT_269, - /* 270 */ OBJECT_270, - /* 271 */ OBJECT_271, - /* 272 */ OBJECT_272, - /* 273 */ OBJECT_273, - /* 274 */ OBJECT_274, - /* 275 */ OBJECT_275, - /* 276 */ OBJECT_276, - /* 277 */ OBJECT_277, - /* 278 */ OBJECT_278, - /* 279 */ OBJECT_279, - /* 280 */ OBJECT_280, - /* 281 */ OBJECT_281, - /* 282 */ OBJECT_282, - /* 283 */ OBJECT_283, - /* 284 */ OBJECT_284, - /* 285 */ OBJECT_285, - /* 286 */ OBJECT_286, - /* 287 */ OBJECT_287, - /* 288 */ OBJECT_288, - /* 289 */ OBJECT_289, - /* 290 */ OBJECT_290, - /* 291 */ OBJECT_291, - /* 292 */ OBJECT_292, // start of 408 - /* 293 */ OBJECT_293, - /* 294 */ OBJECT_294, - /* 295 */ OBJECT_295, - /* 296 */ OBJECT_296, - /* 297 */ OBJECT_297, - /* 298 */ OBJECT_298, - /* 299 */ OBJECT_299, - /* 300 */ OBJECT_300, - /* 301 */ OBJECT_301, - /* 302 */ OBJECT_302, - /* 303 */ OBJECT_303, - /* 304 */ OBJECT_304, - /* 305 */ OBJECT_305, - /* 306 */ OBJECT_306, - /* 307 */ OBJECT_307, - /* 308 */ OBJECT_308, - /* 309 */ OBJECT_309, - /* 310 */ OBJECT_310, - /* 311 */ OBJECT_311, - /* 312 */ OBJECT_312, - /* 313 */ OBJECT_313, - /* 314 */ OBJECT_314, - /* 315 */ OBJECT_315, - /* 316 */ OBJECT_316, - /* 317 */ OBJECT_317, - /* 318 */ OBJECT_318, - /* 319 */ OBJECT_319, - /* 320 */ OBJECT_320, - /* 321 */ OBJECT_321, - /* 322 */ OBJECT_6C_LASERS, // start of 6C - /* 323 */ OBJECT_6C_CHECKPOINT, - /* 324 */ OBJECT_6C_SILVER_RING, - /* 325 */ OBJECT_6C_STAR_RING, - /* 326 */ OBJECT_6C_METEO_WARP, - /* 327 */ OBJECT_6C_BOMB, - /* 328 */ OBJECT_328, - /* 329 */ OBJECT_329, - /* 330 */ OBJECT_330, - /* 331 */ OBJECT_331, - /* 332 */ OBJECT_332, - /* 333 */ OBJECT_333, - /* 334 */ OBJECT_6C_CORN_ARCH, - /* 335 */ OBJECT_6C_1UP, - /* 336 */ OBJECT_6C_GOLD_RING, - /* 337 */ OBJECT_6C_WING_REPAIR, - /* 338 */ OBJECT_6C_TRAINING_RING, - /* 339 */ OBJECT_339, // start of 8C - /* 340 */ OBJECT_340, - /* 341 */ OBJECT_341, - /* 342 */ OBJECT_342, - /* 343 */ OBJECT_343, - /* 344 */ OBJECT_344, - /* 345 */ OBJECT_345, - /* 346 */ OBJECT_346, - /* 347 */ OBJECT_347, - /* 348 */ OBJECT_348, - /* 349 */ OBJECT_349, - /* 350 */ OBJECT_350, - /* 351 */ OBJECT_351, - /* 352 */ OBJECT_352, - /* 353 */ OBJECT_353, - /* 354 */ OBJECT_354, - /* 355 */ OBJECT_355, - /* 356 */ OBJECT_356, - /* 357 */ OBJECT_357, - /* 358 */ OBJECT_358, - /* 359 */ OBJECT_359, - /* 360 */ OBJECT_360, - /* 361 */ OBJECT_361, - /* 362 */ OBJECT_362, - /* 363 */ OBJECT_363, - /* 364 */ OBJECT_364, - /* 365 */ OBJECT_365, - /* 366 */ OBJECT_366, - /* 367 */ OBJECT_367, - /* 368 */ OBJECT_368, - /* 369 */ OBJECT_369, - /* 370 */ OBJECT_370, - /* 371 */ OBJECT_371, - /* 372 */ OBJECT_372, - /* 373 */ OBJECT_373, - /* 374 */ OBJECT_374, - /* 375 */ OBJECT_375, - /* 376 */ OBJECT_376, - /* 377 */ OBJECT_377, - /* 378 */ OBJECT_378, - /* 379 */ OBJECT_379, - /* 380 */ OBJECT_380, - /* 381 */ OBJECT_381, - /* 382 */ OBJECT_382, - /* 383 */ OBJECT_383, - /* 384 */ OBJECT_384, - /* 385 */ OBJECT_385, - /* 386 */ OBJECT_386, - /* 387 */ OBJECT_387, - /* 388 */ OBJECT_388, - /* 389 */ OBJECT_389, - /* 390 */ OBJECT_390, - /* 391 */ OBJECT_391, - /* 392 */ OBJECT_392, - /* 393 */ OBJECT_393, - /* 394 */ OBJECT_394, - /* 395 */ OBJECT_395, - /* 396 */ OBJECT_396, - /* 397 */ OBJECT_397, - /* 398 */ OBJECT_398, - /* 399 */ OBJECT_399, - /* 400 */ OBJECT_ID_MAX, + /* -1 */ OBJ_INVALID=-1, + /* 0 */ OBJ_80_0, + /* 1 */ OBJ_80_1, + /* 2 */ OBJ_80_2, + /* 3 */ OBJ_80_3, + /* 4 */ OBJ_80_4, + /* 5 */ OBJ_80_5, + /* 6 */ OBJ_80_6, + /* 7 */ OBJ_80_7, + /* 8 */ OBJ_80_8, + /* 9 */ OBJ_80_9, + /* 10 */ OBJ_80_10, + /* 11 */ OBJ_80_11, + /* 12 */ OBJ_80_12, + /* 13 */ OBJ_80_13, + /* 14 */ OBJ_80_14, + /* 15 */ OBJ_80_15, + /* 16 */ OBJ_80_16, + /* 17 */ OBJ_80_17, + /* 18 */ OBJ_80_18, + /* 19 */ OBJ_80_19, + /* 20 */ OBJ_80_20, + /* 21 */ OBJ_80_21, + /* 22 */ OBJ_80_22, + /* 23 */ OBJ_80_23, + /* 24 */ OBJ_80_24, + /* 25 */ OBJ_80_25, + /* 26 */ OBJ_80_26, + /* 27 */ OBJ_80_27, + /* 28 */ OBJ_80_28, + /* 29 */ OBJ_80_29, + /* 30 */ OBJ_80_30, + /* 31 */ OBJ_80_31, + /* 32 */ OBJ_80_32, + /* 33 */ OBJ_80_33, + /* 34 */ OBJ_80_34, + /* 35 */ OBJ_80_35, + /* 36 */ OBJ_80_36, + /* 37 */ OBJ_80_37, + /* 38 */ OBJ_80_38, + /* 39 */ OBJ_80_39, + /* 40 */ OBJ_80_40, + /* 41 */ OBJ_80_41, + /* 42 */ OBJ_80_42, + /* 43 */ OBJ_80_43, + /* 44 */ OBJ_80_44, + /* 45 */ OBJ_80_45, + /* 46 */ OBJ_80_46, + /* 47 */ OBJ_80_47, + /* 48 */ OBJ_80_48, + /* 49 */ OBJ_80_49, + /* 50 */ OBJ_80_50, + /* 51 */ OBJ_80_51, + /* 52 */ OBJ_80_52, + /* 53 */ OBJ_80_53, + /* 54 */ OBJ_80_54, + /* 55 */ OBJ_80_55, + /* 56 */ OBJ_80_56, + /* 57 */ OBJ_80_57, + /* 58 */ OBJ_80_58, + /* 59 */ OBJ_80_59, + /* 60 */ OBJ_80_60, + /* 61 */ OBJ_80_61, + /* 62 */ OBJ_80_62, + /* 63 */ OBJ_80_63, + /* 64 */ OBJ_80_64, + /* 65 */ OBJ_80_65, + /* 66 */ OBJ_80_66, + /* 67 */ OBJ_80_67, + /* 68 */ OBJ_80_68, + /* 69 */ OBJ_80_69, + /* 70 */ OBJ_80_70, + /* 71 */ OBJ_80_71, + /* 72 */ OBJ_80_72, + /* 73 */ OBJ_80_73, + /* 74 */ OBJ_80_74, + /* 75 */ OBJ_80_75, + /* 76 */ OBJ_80_76, + /* 77 */ OBJ_80_77, + /* 78 */ OBJ_80_78, + /* 79 */ OBJ_80_79, + /* 80 */ OBJ_80_80, + /* 81 */ OBJ_80_81, + /* 82 */ OBJ_80_82, + /* 83 */ OBJ_80_83, + /* 84 */ OBJ_80_84, + /* 85 */ OBJ_80_85, + /* 86 */ OBJ_80_86, + /* 87 */ OBJ_80_87, + /* 88 */ OBJ_80_88, + /* 89 */ OBJ_80_89, + /* 90 */ OBJ_80_90, + /* 91 */ OBJ_80_91, + /* 92 */ OBJ_80_92, + /* 93 */ OBJ_80_93, + /* 94 */ OBJ_80_94, + /* 95 */ OBJ_80_95, + /* 96 */ OBJ_80_96, + /* 97 */ OBJ_80_97, + /* 98 */ OBJ_80_98, + /* 99 */ OBJ_80_99, + /* 100 */ OBJ_80_100, + /* 101 */ OBJ_80_101, + /* 102 */ OBJ_80_102, + /* 103 */ OBJ_80_103, + /* 104 */ OBJ_80_104, + /* 105 */ OBJ_80_105, + /* 106 */ OBJ_80_106, + /* 107 */ OBJ_80_107, + /* 108 */ OBJ_80_108, + /* 109 */ OBJ_80_109, + /* 110 */ OBJ_80_110, + /* 111 */ OBJ_80_111, + /* 112 */ OBJ_80_112, + /* 113 */ OBJ_80_113, + /* 114 */ OBJ_80_114, + /* 115 */ OBJ_80_115, + /* 116 */ OBJ_80_116, + /* 117 */ OBJ_80_117, + /* 118 */ OBJ_80_118, + /* 119 */ OBJ_80_119, + /* 120 */ OBJ_80_120, + /* 121 */ OBJ_80_121, + /* 122 */ OBJ_80_122, + /* 123 */ OBJ_80_123, + /* 124 */ OBJ_80_124, + /* 125 */ OBJ_80_125, + /* 126 */ OBJ_80_126, + /* 127 */ OBJ_80_127, + /* 128 */ OBJ_80_128, + /* 129 */ OBJ_80_129, + /* 130 */ OBJ_80_130, + /* 131 */ OBJ_80_131, + /* 132 */ OBJ_80_132, + /* 133 */ OBJ_80_133, + /* 134 */ OBJ_80_134, + /* 135 */ OBJ_80_135, + /* 136 */ OBJ_80_136, + /* 137 */ OBJ_80_137, + /* 138 */ OBJ_80_138, + /* 139 */ OBJ_80_139, + /* 140 */ OBJ_80_140, + /* 141 */ OBJ_80_141, + /* 142 */ OBJ_80_142, + /* 143 */ OBJ_80_143, + /* 144 */ OBJ_80_144, + /* 145 */ OBJ_80_145, + /* 146 */ OBJ_80_146, + /* 147 */ OBJ_80_147, + /* 148 */ OBJ_80_148, + /* 149 */ OBJ_80_149, + /* 150 */ OBJ_80_150, + /* 151 */ OBJ_80_151, + /* 152 */ OBJ_80_152, + /* 153 */ OBJ_80_153, + /* 154 */ OBJ_80_154, + /* 155 */ OBJ_80_155, + /* 156 */ OBJ_80_156, + /* 157 */ OBJ_80_157, + /* 158 */ OBJ_80_158, + /* 159 */ OBJ_80_159, + /* 160 */ OBJ_80_160, + /* 161 */ OBJ_4C_161, + /* 162 */ OBJ_4C_162, + /* 163 */ OBJ_4C_163, + /* 164 */ OBJ_4C_164, + /* 165 */ OBJ_4C_165, + /* 166 */ OBJ_4C_166, + /* 167 */ OBJ_4C_167, + /* 168 */ OBJ_4C_168, + /* 169 */ OBJ_4C_169, + /* 170 */ OBJ_4C_170, + /* 171 */ OBJ_4C_171, + /* 172 */ OBJ_4C_172, + /* 173 */ OBJ_4C_173, + /* 174 */ OBJ_4C_174, + /* 175 */ OBJ_4C_175, + /* 176 */ OBJ_2F4_176, + /* 177 */ OBJ_2F4_177, + /* 178 */ OBJ_2F4_178, + /* 179 */ OBJ_2F4_179, + /* 180 */ OBJ_2F4_180, + /* 181 */ OBJ_2F4_181, + /* 182 */ OBJ_2F4_182, + /* 183 */ OBJ_2F4_183, + /* 184 */ OBJ_2F4_184, + /* 185 */ OBJ_2F4_185, + /* 186 */ OBJ_2F4_186, + /* 187 */ OBJ_2F4_187, + /* 188 */ OBJ_2F4_188, + /* 189 */ OBJ_2F4_189, + /* 190 */ OBJ_2F4_190, + /* 191 */ OBJ_2F4_191, + /* 192 */ OBJ_2F4_192, + /* 193 */ OBJ_2F4_193, + /* 194 */ OBJ_2F4_194, + /* 195 */ OBJ_2F4_195, + /* 196 */ OBJ_2F4_196, + /* 197 */ OBJ_2F4_197, + /* 198 */ OBJ_2F4_198, + /* 199 */ OBJ_2F4_199, + /* 200 */ OBJ_2F4_200, + /* 201 */ OBJ_2F4_201, + /* 202 */ OBJ_2F4_202, + /* 203 */ OBJ_2F4_203, + /* 204 */ OBJ_2F4_204, + /* 205 */ OBJ_2F4_205, + /* 206 */ OBJ_2F4_206, + /* 207 */ OBJ_2F4_207, + /* 208 */ OBJ_2F4_208, + /* 209 */ OBJ_2F4_209, + /* 210 */ OBJ_2F4_210, + /* 211 */ OBJ_2F4_211, + /* 212 */ OBJ_2F4_212, + /* 213 */ OBJ_2F4_213, + /* 214 */ OBJ_2F4_214, + /* 215 */ OBJ_2F4_215, + /* 216 */ OBJ_2F4_216, + /* 217 */ OBJ_2F4_217, + /* 218 */ OBJ_2F4_218, + /* 219 */ OBJ_2F4_219, + /* 220 */ OBJ_2F4_220, + /* 221 */ OBJ_2F4_221, + /* 222 */ OBJ_2F4_222, + /* 223 */ OBJ_2F4_223, + /* 224 */ OBJ_2F4_224, + /* 225 */ OBJ_2F4_225, + /* 226 */ OBJ_2F4_226, + /* 227 */ OBJ_2F4_227, + /* 228 */ OBJ_2F4_228, + /* 229 */ OBJ_2F4_229, + /* 230 */ OBJ_2F4_230, + /* 231 */ OBJ_2F4_231, + /* 232 */ OBJ_2F4_232, + /* 233 */ OBJ_2F4_233, + /* 234 */ OBJ_2F4_234, + /* 235 */ OBJ_2F4_235, + /* 236 */ OBJ_2F4_236, + /* 237 */ OBJ_2F4_237, + /* 238 */ OBJ_2F4_238, + /* 239 */ OBJ_2F4_239, + /* 240 */ OBJ_2F4_240, + /* 241 */ OBJ_2F4_241, + /* 242 */ OBJ_2F4_242, + /* 243 */ OBJ_2F4_243, + /* 244 */ OBJ_2F4_244, + /* 245 */ OBJ_2F4_245, + /* 246 */ OBJ_2F4_246, + /* 247 */ OBJ_2F4_247, + /* 248 */ OBJ_2F4_248, + /* 249 */ OBJ_2F4_249, + /* 250 */ OBJ_2F4_250, + /* 251 */ OBJ_2F4_251, + /* 252 */ OBJ_2F4_252, + /* 253 */ OBJ_2F4_253, + /* 254 */ OBJ_2F4_254, + /* 255 */ OBJ_2F4_255, + /* 256 */ OBJ_2F4_256, + /* 257 */ OBJ_2F4_257, + /* 258 */ OBJ_2F4_258, + /* 259 */ OBJ_2F4_259, + /* 260 */ OBJ_2F4_260, + /* 261 */ OBJ_2F4_261, + /* 262 */ OBJ_2F4_262, + /* 263 */ OBJ_2F4_263, + /* 264 */ OBJ_2F4_264, + /* 265 */ OBJ_2F4_265, + /* 266 */ OBJ_2F4_266, + /* 267 */ OBJ_2F4_267, + /* 268 */ OBJ_2F4_268, + /* 269 */ OBJ_2F4_269, + /* 270 */ OBJ_2F4_270, + /* 271 */ OBJ_2F4_271, + /* 272 */ OBJ_2F4_272, + /* 273 */ OBJ_2F4_273, + /* 274 */ OBJ_2F4_274, + /* 275 */ OBJ_2F4_275, + /* 276 */ OBJ_2F4_276, + /* 277 */ OBJ_2F4_277, + /* 278 */ OBJ_2F4_278, + /* 279 */ OBJ_2F4_279, + /* 280 */ OBJ_2F4_280, + /* 281 */ OBJ_2F4_281, + /* 282 */ OBJ_2F4_282, + /* 283 */ OBJ_2F4_283, + /* 284 */ OBJ_2F4_284, + /* 285 */ OBJ_2F4_285, + /* 286 */ OBJ_2F4_286, + /* 287 */ OBJ_2F4_287, + /* 288 */ OBJ_2F4_288, + /* 289 */ OBJ_2F4_289, + /* 290 */ OBJ_2F4_290, + /* 291 */ OBJ_2F4_291, + /* 292 */ OBJ_408_292, + /* 293 */ OBJ_408_293, + /* 294 */ OBJ_408_294, + /* 295 */ OBJ_408_295, + /* 296 */ OBJ_408_296, + /* 297 */ OBJ_408_297, + /* 298 */ OBJ_408_298, + /* 299 */ OBJ_408_299, + /* 300 */ OBJ_408_300, + /* 301 */ OBJ_408_301, + /* 302 */ OBJ_408_302, + /* 303 */ OBJ_408_303, + /* 304 */ OBJ_408_304, + /* 305 */ OBJ_408_305, + /* 306 */ OBJ_408_306, + /* 307 */ OBJ_408_307, + /* 308 */ OBJ_408_308, + /* 309 */ OBJ_408_309, + /* 310 */ OBJ_408_310, + /* 311 */ OBJ_408_311, + /* 312 */ OBJ_408_312, + /* 313 */ OBJ_408_313, + /* 314 */ OBJ_408_314, + /* 315 */ OBJ_408_315, + /* 316 */ OBJ_408_316, + /* 317 */ OBJ_408_317, + /* 318 */ OBJ_408_318, + /* 319 */ OBJ_408_319, + /* 320 */ OBJ_408_320, + /* 321 */ OBJ_408_321, + /* 322 */ OBJ_ITEM_LASERS, + /* 323 */ OBJ_ITEM_CHECKPOINT, + /* 324 */ OBJ_ITEM_SILVER_RING, + /* 325 */ OBJ_ITEM_SILVER_STAR, + /* 326 */ OBJ_ITEM_METEO_WARP, + /* 327 */ OBJ_ITEM_BOMB, + /* 328 */ OBJ_ITEM_328, + /* 329 */ OBJ_ITEM_329, + /* 330 */ OBJ_ITEM_330, + /* 331 */ OBJ_ITEM_331, + /* 332 */ OBJ_ITEM_332, + /* 333 */ OBJ_ITEM_333, + /* 334 */ OBJ_ITEM_CORN_ARCH, + /* 335 */ OBJ_ITEM_1UP, + /* 336 */ OBJ_ITEM_GOLD_RING, + /* 337 */ OBJ_ITEM_WING_REPAIR, + /* 338 */ OBJ_ITEM_TRAINING_RING, + /* 339 */ OBJ_8C_339, + /* 340 */ OBJ_8C_340, + /* 341 */ OBJ_8C_341, + /* 342 */ OBJ_8C_342, + /* 343 */ OBJ_8C_343, + /* 344 */ OBJ_8C_344, + /* 345 */ OBJ_8C_345, + /* 346 */ OBJ_8C_346, + /* 347 */ OBJ_8C_347, + /* 348 */ OBJ_8C_348, + /* 349 */ OBJ_8C_349, + /* 350 */ OBJ_8C_350, + /* 351 */ OBJ_8C_351, + /* 352 */ OBJ_8C_352, + /* 353 */ OBJ_8C_353, + /* 354 */ OBJ_8C_354, + /* 355 */ OBJ_8C_355, + /* 356 */ OBJ_8C_356, + /* 357 */ OBJ_8C_357, + /* 358 */ OBJ_8C_358, + /* 359 */ OBJ_8C_359, + /* 360 */ OBJ_8C_360, + /* 361 */ OBJ_8C_361, + /* 362 */ OBJ_8C_362, + /* 363 */ OBJ_8C_363, + /* 364 */ OBJ_8C_364, + /* 365 */ OBJ_8C_365, + /* 366 */ OBJ_8C_366, + /* 367 */ OBJ_8C_367, + /* 368 */ OBJ_8C_368, + /* 369 */ OBJ_8C_369, + /* 370 */ OBJ_8C_370, + /* 371 */ OBJ_8C_371, + /* 372 */ OBJ_8C_372, + /* 373 */ OBJ_8C_373, + /* 374 */ OBJ_8C_374, + /* 375 */ OBJ_8C_375, + /* 376 */ OBJ_8C_376, + /* 377 */ OBJ_8C_377, + /* 378 */ OBJ_8C_378, + /* 379 */ OBJ_8C_379, + /* 380 */ OBJ_8C_380, + /* 381 */ OBJ_8C_381, + /* 382 */ OBJ_8C_382, + /* 383 */ OBJ_8C_383, + /* 384 */ OBJ_8C_384, + /* 385 */ OBJ_8C_385, + /* 386 */ OBJ_8C_386, + /* 387 */ OBJ_8C_387, + /* 388 */ OBJ_8C_388, + /* 389 */ OBJ_8C_389, + /* 390 */ OBJ_8C_390, + /* 391 */ OBJ_8C_391, + /* 392 */ OBJ_8C_392, + /* 393 */ OBJ_8C_393, + /* 394 */ OBJ_8C_394, + /* 395 */ OBJ_8C_395, + /* 396 */ OBJ_8C_396, + /* 397 */ OBJ_8C_397, + /* 398 */ OBJ_8C_398, + /* 399 */ OBJ_8C_399, + /* 400 */ OBJ_ID_MAX, } ObjectId; -#define OBJECT_UNK_400 400 -#define OBJECT_UNK_401 401 -#define OBJECT_UNK_402 402 -#define OBJECT_UNK_403 403 -#define OBJECT_UNK_404 404 -#define OBJECT_UNK_405 405 -#define OBJECT_UNK_406 406 +#define OBJ_UNK_400 400 +#define OBJ_UNK_401 401 +#define OBJ_UNK_402 402 +#define OBJ_UNK_403 403 +#define OBJ_UNK_404 404 +#define OBJ_UNK_405 405 +#define OBJ_UNK_406 406 -#define OBJECT_UNK_1000 1000 +#define OBJ_UNK_1000 1000 #endif diff --git a/include/sf64player.h b/include/sf64player.h new file mode 100644 index 00000000..f8153a9f --- /dev/null +++ b/include/sf64player.h @@ -0,0 +1,245 @@ +#ifndef SF64_PLAYER +#define SF64_PLAYER + +#include "sf64math.h" +#include "sf64object.h" + +typedef enum { + WINGSTATE_NONE, + WINGSTATE_BROKEN, + WINGSTATE_INTACT, +} WingState; + +typedef struct { + /* 0x00 */ u8 rightState; + /* 0x01 */ u8 leftState; + /* 0x04 */ f32 unk_04; + /* 0x08 */ f32 unk_08; + /* 0x0C */ f32 unk_0C; + /* 0x10 */ f32 unk_10; + /* 0x14 */ f32 unk_14; + /* 0x18 */ f32 unk_18; + /* 0x1C */ f32 unk_1C; + /* 0x20 */ f32 unk_20; + /* 0x24 */ f32 unk_24; + /* 0x28 */ f32 unk_28; + /* 0x2C */ u8 unk_2C; + /* 0x30 */ f32 unk_30; + /* 0x34 */ f32 unk_34; + /* 0x38 */ f32 unk_38; +} 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, +} PlayerShotId; + +typedef struct { + /* 0x00 */ Object obj; + /* 0x1C */ s32 index; + /* 0x20 */ Vec3f unk_20; + /* 0x2C */ f32 unk_2C; + /* 0x30 */ f32 unk_30; + /* 0x34 */ f32 unk_34; + /* 0x38 */ Vec3f sfxPos; + /* 0x44 */ f32 unk_44; + /* 0x44 */ f32 unk_48; + /* 0x44 */ f32 unk_4C; + /* 0x44 */ f32 unk_50; + /* 0x44 */ f32 unk_54; + /* 0x58 */ s32 unk_58; + /* 0x5C */ s32 unk_5C; + /* 0x60 */ s32 unk_60; + /* 0x64 */ s32 unk_64; + /* 0x68 */ s32 unk_68; + /* 0x6C */ char pad6C[4]; +} PlayerShot; // size = 0x70 + +typedef struct Player { + /* 0x000 */ f32 unk_000; + /* 0x004 */ f32 unk_004; + /* 0x008 */ f32 unk_008; + /* 0x00C */ f32 unk_00C; + /* 0x010 */ f32 unk_010; + /* 0x014 */ f32 unk_014; + /* 0x018 */ f32 unk_018; + /* 0x01C */ f32 unk_01C; + /* 0x020 */ char pad20[8]; + /* 0x028 */ f32 unk_028; + /* 0x02C */ f32 unk_02C; + /* 0x030 */ char pad30[4]; + /* 0x034 */ f32 unk_034; + /* 0x038 */ char pad38[8]; + /* 0x040 */ Vec3f unk_040; + /* 0x04C */ Vec3f unk_04C; + /* 0x058 */ f32 unk_058; + /* 0x05C */ f32 unk_05C; + /* 0x05C */ f32 unk_060; + /* 0x064 */ f32 unk_064; + /* 0x068 */ f32 unk_068; + /* 0x06C */ f32 unk_06C; + /* 0x070 */ f32 unk_070; + /* 0x074 */ f32 unk_074; + /* 0x078 */ f32 unk_078; + /* 0x07C */ f32 unk_07C; + /* 0x080 */ f32 unk_080; + /* 0x084 */ f32 unk_084; + /* 0x088 */ f32 unk_088; + /* 0x08C */ Vec3f unk_08C; + /* 0x098 */ f32 unk_098; + /* 0x09C */ f32 unk_09C; + /* 0x0A0 */ f32 unk_0A0; + /* 0x0A4 */ f32 unk_0A4; + /* 0x0A8 */ f32 unk_0A8; + /* 0x0AC */ f32 unk_0AC; + /* 0x0B0 */ f32 unk_0B0; + /* 0x0B4 */ f32 unk_0B4; + /* 0x0B8 */ f32 unk_0B8; + /* 0x0BC */ f32 unk_0BC; + /* 0x0C0 */ Vec3f unk_0C0; + /* 0x0CC */ f32 unk_0CC; + /* 0x0D0 */ f32 unk_0D0; + /* 0x0D4 */ f32 unk_0D4; + /* 0x0D8 */ Vec3f unk_0D8; + /* 0x0E4 */ f32 unk_0E4; + /* 0x0E8 */ f32 unk_0E8; + /* 0x0EC */ f32 unk_0EC; + /* 0x0F0 */ f32 unk_0F0; + /* 0x0F4 */ f32 unk_0F4; + /* 0x0F8 */ f32 unk_0F8; + /* 0x0FC */ f32 unk_0FC; + /* 0x100 */ f32 unk_100; + /* 0x104 */ f32 unk_104; + /* 0x108 */ f32 unk_108; + /* 0x10C */ f32 unk_10C; + /* 0x110 */ f32 unk_110; + /* 0x114 */ f32 unk_114; + /* 0x118 */ f32 unk_118; + /* 0x11C */ f32 unk_11C; + /* 0x120 */ f32 unk_120; + /* 0x124 */ f32 unk_124; + /* 0x128 */ char pad128[4]; + /* 0x12C */ f32 unk_12C; + /* 0x130 */ f32 unk_130; + /* 0x134 */ f32 unk_134; + /* 0x138 */ f32 unk_138; + /* 0x13C */ char pad13C[4]; + /* 0x140 */ f32 unk_140; + /* 0x144 */ f32 unk_144; + /* 0x148 */ f32 unk_148; + /* 0x14C */ f32 unk_14C; + /* 0x150 */ f32 unk_150; + /* 0x154 */ f32 unk_154; + /* 0x158 */ f32 unk_158; + /* 0x15C */ f32 unk_15C; + /* 0x160 */ char pad160[4]; + /* 0x164 */ f32 unk_164; + /* 0x168 */ f32 unk_168; + /* 0x16C */ f32 unk_16C; + /* 0x170 */ f32 unk_170; + /* 0x174 */ f32 unk_174; + /* 0x178 */ f32 unk_178; + /* 0x17C */ f32 unk_17C; + /* 0x180 */ f32 unk_180; + /* 0x184 */ f32 unk_184; + /* 0x188 */ f32 unk_188; + /* 0x18C */ f32 unk_18C; + /* 0x190 */ f32 unk_190; + /* 0x194 */ f32 unk_194; + /* 0x198 */ s32 unk_198; + /* 0x19C */ s32 unk_19C; + /* 0x1A0 */ s32 unk_1A0; + /* 0x1A4 */ s32 unk_1A4; + /* 0x1A8 */ char pad1A8[0x1C]; + /* 0x1C4 */ s32 unk_1C4; + /* 0x1C8 */ s32 unk_1C8; + /* 0x1CC */ s32 unk_1CC; + /* 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; + /* 0x1EC */ s32 unk_1EC; + /* 0x1F0 */ s32 unk_1F0; + /* 0x1F4 */ s32 unk_1F4; + /* 0x1F8 */ s32 unk_1F8; + /* 0x1FC */ s32 unk_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; + /* 0x21C */ s32 unk_21C; + /* 0x220 */ s32 unk_220; + /* 0x224 */ s32 unk_224; + /* 0x228 */ s32 unk_228; + /* 0x22C */ s32 unk_22C; + /* 0x230 */ char pad230[4]; + /* 0x234 */ s32 unk_234; + /* 0x238 */ s32 unk_238; + /* 0x23C */ s32 unk_23C; + /* 0x240 */ s32 unk_240; + /* 0x244 */ s32 unk_244; + /* 0x248 */ f32 unk_248; + /* 0x24C */ f32 unk_24C; + /* 0x250 */ f32 unk_250; + /* 0x250 */ char pad254[4]; + /* 0x258 */ f32 unk_258; + /* 0x25C */ f32 unk_25C; + /* 0x260 */ char pad260[4]; + /* 0x264 */ s32 shields; + /* 0x268 */ s32 damage; + /* 0x26C */ s32 heal; + /* 0x270 */ s32 unk_270; + /* 0x274 */ char pad274[4]; + /* 0x278 */ s32 unk_278; + /* 0x27C */ s32 unk_27C; + /* 0x280 */ s32 unk_280; + /* 0x284 */ s32 unk_284; + /* 0x288 */ s32 unk_288; + /* 0x28C */ char pad28C[0x28]; + /* 0x2B4 */ s32 unk_2B4; + /* 0x2B8 */ s32 unk_2B8; + /* 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; + /* 0x2F8 */ Vec3f jointTable[30]; + /* 0x460 */ union { + Vec3f unk_460; + Vec3f unk_460_arr[1]; // probably fake + }; + /* 0x460 */ Vec3f unk_46C; + /* 0x478 */ u8 unk_478; + /* 0x479 */ s8 unk_479; + /* 0x47C */ Vec3f *unk_47C; + /* 0x480 */ Vec3f *unk_480; + /* 0x484 */ s8 unk_484; + /* 0x485 */ s8 unk_485; + /* 0x488 */ f32 unk_488; + /* 0x48C */ u8 unk_48C; + /* 0x490 */ f32 unk_490; + /* 0x494 */ u8 unk_494; + /* 0x498 */ s32 unk_498; + /* 0x49C */ WingInfo wings; + /* 0x4D8 */ f32 unk_4D8; + /* 0x4DC */ s32 unk_4DC; +} Player; // size = 0x4E0 + + +#endif diff --git a/include/structs.h b/include/structs.h index b92b7e7a..28533911 100644 --- a/include/structs.h +++ b/include/structs.h @@ -92,7 +92,7 @@ typedef struct { /* 0x0 */ u16 unk_0; /* 0x2 */ s8 unk_2; /* 0x3 */ s8 unk_3; -} UnkStruct_gChngInputPtr; // size = 0x4 +} UnkStruct_gInputPress; // size = 0x4 typedef struct { /* 0x00 */ u8 unk_00; @@ -118,203 +118,6 @@ typedef struct { /* 0x2F */ u8 unk_2F; } UnkEntity30; // size = 0x30 -typedef struct { - /* 0x00 */ u8 rightState; - /* 0x01 */ u8 leftState; - /* 0x04 */ f32 unk_04; - /* 0x08 */ f32 unk_08; - /* 0x0C */ f32 unk_0C; - /* 0x10 */ f32 unk_10; - /* 0x14 */ f32 unk_14; - /* 0x18 */ f32 unk_18; - /* 0x1C */ f32 unk_1C; - /* 0x20 */ f32 unk_20; - /* 0x24 */ f32 unk_24; - /* 0x28 */ f32 unk_28; - /* 0x2C */ u8 unk_2C; - /* 0x30 */ f32 unk_30; - /* 0x34 */ f32 unk_34; - /* 0x38 */ f32 unk_38; -} WingInfo; // size = 0x3C - -typedef struct Player { - /* 0x000 */ f32 unk_000; - /* 0x004 */ f32 unk_004; - /* 0x008 */ f32 unk_008; - /* 0x00C */ f32 unk_00C; - /* 0x010 */ f32 unk_010; - /* 0x014 */ f32 unk_014; - /* 0x018 */ f32 unk_018; - /* 0x01C */ f32 unk_01C; - /* 0x020 */ char pad20[8]; - /* 0x028 */ f32 unk_028; - /* 0x02C */ f32 unk_02C; - /* 0x030 */ char pad30[4]; - /* 0x034 */ f32 unk_034; - /* 0x038 */ char pad38[8]; - /* 0x040 */ Vec3f unk_040; - /* 0x04C */ Vec3f unk_04C; - /* 0x058 */ f32 unk_058; - /* 0x05C */ f32 unk_05C; - /* 0x05C */ f32 unk_060; - /* 0x064 */ f32 unk_064; - /* 0x068 */ f32 unk_068; - /* 0x06C */ f32 unk_06C; - /* 0x070 */ f32 unk_070; - /* 0x074 */ f32 unk_074; - /* 0x078 */ f32 unk_078; - /* 0x07C */ f32 unk_07C; - /* 0x080 */ f32 unk_080; - /* 0x084 */ f32 unk_084; - /* 0x088 */ f32 unk_088; - /* 0x08C */ Vec3f unk_08C; - /* 0x098 */ f32 unk_098; - /* 0x09C */ f32 unk_09C; - /* 0x0A0 */ f32 unk_0A0; - /* 0x0A4 */ f32 unk_0A4; - /* 0x0A8 */ f32 unk_0A8; - /* 0x0AC */ f32 unk_0AC; - /* 0x0B0 */ f32 unk_0B0; - /* 0x0B4 */ f32 unk_0B4; - /* 0x0B8 */ f32 unk_0B8; - /* 0x0BC */ f32 unk_0BC; - /* 0x0C0 */ Vec3f unk_0C0; - /* 0x0CC */ f32 unk_0CC; - /* 0x0D0 */ f32 unk_0D0; - /* 0x0D4 */ f32 unk_0D4; - /* 0x0D8 */ Vec3f unk_0D8; - /* 0x0E4 */ f32 unk_0E4; - /* 0x0E8 */ f32 unk_0E8; - /* 0x0EC */ f32 unk_0EC; - /* 0x0F0 */ f32 unk_0F0; - /* 0x0F4 */ f32 unk_0F4; - /* 0x0F8 */ f32 unk_0F8; - /* 0x0FC */ f32 unk_0FC; - /* 0x100 */ f32 unk_100; - /* 0x104 */ f32 unk_104; - /* 0x108 */ f32 unk_108; - /* 0x10C */ f32 unk_10C; - /* 0x110 */ f32 unk_110; - /* 0x114 */ f32 unk_114; - /* 0x118 */ f32 unk_118; - /* 0x11C */ f32 unk_11C; - /* 0x120 */ f32 unk_120; - /* 0x124 */ f32 unk_124; - /* 0x128 */ char pad128[4]; - /* 0x12C */ f32 unk_12C; - /* 0x130 */ f32 unk_130; - /* 0x134 */ f32 unk_134; - /* 0x138 */ f32 unk_138; - /* 0x13C */ char pad13C[4]; - /* 0x140 */ f32 unk_140; - /* 0x144 */ f32 unk_144; - /* 0x148 */ f32 unk_148; - /* 0x14C */ f32 unk_14C; - /* 0x150 */ f32 unk_150; - /* 0x154 */ f32 unk_154; - /* 0x158 */ f32 unk_158; - /* 0x15C */ f32 unk_15C; - /* 0x160 */ char pad160[4]; - /* 0x164 */ f32 unk_164; - /* 0x168 */ f32 unk_168; - /* 0x16C */ f32 unk_16C; - /* 0x170 */ f32 unk_170; - /* 0x174 */ f32 unk_174; - /* 0x178 */ f32 unk_178; - /* 0x17C */ f32 unk_17C; - /* 0x180 */ f32 unk_180; - /* 0x184 */ f32 unk_184; - /* 0x188 */ f32 unk_188; - /* 0x18C */ f32 unk_18C; - /* 0x190 */ f32 unk_190; - /* 0x194 */ f32 unk_194; - /* 0x198 */ s32 unk_198; - /* 0x19C */ s32 unk_19C; - /* 0x1A0 */ s32 unk_1A0; - /* 0x1A4 */ s32 unk_1A4; - /* 0x1A8 */ char pad1A8[0x1C]; - /* 0x1C4 */ s32 unk_1C4; - /* 0x1C8 */ s32 unk_1C8; - /* 0x1CC */ s32 unk_1CC; - /* 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; - /* 0x1EC */ s32 unk_1EC; - /* 0x1F0 */ s32 unk_1F0; - /* 0x1F4 */ s32 unk_1F4; - /* 0x1F8 */ s32 unk_1F8; - /* 0x1FC */ s32 unk_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; - /* 0x21C */ s32 unk_21C; - /* 0x220 */ s32 unk_220; - /* 0x224 */ s32 unk_224; - /* 0x228 */ s32 unk_228; - /* 0x22C */ s32 unk_22C; - /* 0x230 */ char pad230[4]; - /* 0x234 */ s32 unk_234; - /* 0x238 */ s32 unk_238; - /* 0x23C */ s32 unk_23C; - /* 0x240 */ s32 unk_240; - /* 0x244 */ s32 unk_244; - /* 0x248 */ f32 unk_248; - /* 0x24C */ f32 unk_24C; - /* 0x250 */ f32 unk_250; - /* 0x250 */ char pad254[4]; - /* 0x258 */ f32 unk_258; - /* 0x25C */ f32 unk_25C; - /* 0x260 */ char pad260[4]; - /* 0x264 */ s32 health; - /* 0x268 */ s32 damage; - /* 0x26C */ s32 heal; - /* 0x270 */ s32 unk_270; - /* 0x274 */ char pad274[4]; - /* 0x278 */ s32 unk_278; - /* 0x27C */ s32 unk_27C; - /* 0x280 */ s32 unk_280; - /* 0x284 */ s32 unk_284; - /* 0x288 */ s32 unk_288; - /* 0x28C */ char pad28C[0x28]; - /* 0x2B4 */ s32 unk_2B4; - /* 0x2B8 */ s32 unk_2B8; - /* 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; - /* 0x2F8 */ Vec3f jointTable[30]; - /* 0x460 */ union { - Vec3f unk_460; - Vec3f unk_460_arr[1]; // probably fake - }; - /* 0x460 */ Vec3f unk_46C; - /* 0x478 */ u8 unk_478; - /* 0x479 */ s8 unk_479; - /* 0x47C */ Vec3f *unk_47C; - /* 0x480 */ Vec3f *unk_480; - /* 0x484 */ s8 unk_484; - /* 0x485 */ s8 unk_485; - /* 0x488 */ f32 unk_488; - /* 0x48C */ u8 unk_48C; - /* 0x490 */ f32 unk_490; - /* 0x494 */ u8 unk_494; - /* 0x498 */ s32 unk_498; - /* 0x49C */ WingInfo wings; - /* 0x4D8 */ f32 unk_4D8; - /* 0x4DC */ s32 unk_4DC; -} Player; // size = 0x4E0 - typedef struct { /* 0x00 */ u8 hits; /* 0x04 */ Vec3f pos; diff --git a/include/variables.h b/include/variables.h index ea5fa449..0a06b2a7 100644 --- a/include/variables.h +++ b/include/variables.h @@ -8,6 +8,7 @@ #include "sf64level.h" #include "sf64thread.h" #include "sf64object.h" +#include "sf64player.h" extern u64 __rspboot_start[]; extern u64 __rspboot_end[]; @@ -29,15 +30,15 @@ extern OSMesgQueue* D_800C7C5C; extern OSMesgQueue* D_800C7C60; extern OSMesgQueue* D_800C7C64; -extern OSContPad gCurrentInput[4]; -extern OSContPad gChangedInput[4]; -extern u8 gControllerStatus[4]; -extern u32 gStopInputTimer; -extern u8 gRumbleStatus[4]; -extern OSContPad sNextInput[4]; // -extern OSContPad sPrevInput[4]; // -extern OSContStatus D_800DD8F0[4]; // -extern OSPfs D_800DD900[4]; // +extern OSContPad gControllerHold[4]; +extern OSContPad gControllerPress[4]; +extern u8 gControllerPlugged[4]; +extern u32 gControllerLock; +extern u8 gControllerRumble[4]; +extern OSContPad sNextController[4]; // +extern OSContPad sPrevController[4]; // +extern OSContStatus sControllerStatus[4]; // +extern OSPfs sControllerMotor[4]; // extern u8 gAudioThreadStack[0x1000]; // 800DDAA0 extern OSThread gGraphicsThread; // 800DEAA0 @@ -156,7 +157,7 @@ extern f32 D_800CC054[]; extern f32 D_800CC070[]; extern f32 D_800CC0D4[]; extern f32 D_800CC0F0[]; -extern ObjectStruct_1C D_800CC124[]; +extern ObjectInfo D_800CC124[]; extern f32 D_800CF9B0[]; extern Gfx* D_800CFA54[]; extern Gfx* D_800CFAC4[]; @@ -371,8 +372,8 @@ extern Object_4C gObjects4C[40]; extern Object_2F4 gObjects2F4[60]; extern Object_408 gObjects408[4]; extern Object_8C gObjects8C[100]; -extern Object_6C gObjects6C[20]; -extern Object_70 gObjects70[16]; +extern Item gItems[20]; +extern PlayerShot gPlayerShots[16]; extern UnkEntity30 gUnkEntities30[100]; extern UnkEntity28 gUnkEntities28[65]; extern UnkEntity1C gUnkEntities1C[10]; @@ -404,20 +405,20 @@ extern s32 D_80177858[4]; extern s32 D_80177868; // extern s32 D_80177870[4]; -extern s32 D_80177880; +extern s32 gAllRangeMode; // extern s32 D_80177888[4]; extern s32 D_80177898; -extern s32 D_8017789C; +extern s32 gVersusStage; extern s32 D_801778A0; extern s32 D_801778A4; extern s32 gCamCount; extern s32 D_801778AC; -extern s32 gTeamHealth[6]; +extern s32 gTeamShields[6]; extern s32 D_801778C8; // -extern s32 gSavedTeamHealth[6]; -extern s32 D_801778E8; +extern s32 gSavedTeamShields[6]; +extern bool gVersusMode; // extern UNK_TYPE D_801778F0[6]; extern u16 D_80177908[4]; @@ -435,9 +436,9 @@ extern f32 D_80177958[4]; extern f32 D_80177968; extern s32 D_8017796C; extern f32 D_80177970; -extern OSContPad *gCurInputPtr; +extern OSContPad *gInputHold; extern f32 D_80177978; -extern OSContPad* gChngInputPtr; +extern OSContPad* gInputPress; extern f32 D_80177980; extern u8 *D_80177984; extern f32 D_80177988; @@ -465,7 +466,7 @@ extern s32 D_80177A70[4]; extern s32 D_80177A80; // extern s32 D_80177A88[4]; -extern s8 D_80177A98; +extern u8 D_80177A98; // extern f32 D_80177AA0[4]; extern u8 D_80177AB0; diff --git a/linker_scripts/us/symbol_addrs.txt b/linker_scripts/us/symbol_addrs.txt index f43dfb27..9b4cefd7 100644 --- a/linker_scripts/us/symbol_addrs.txt +++ b/linker_scripts/us/symbol_addrs.txt @@ -45,7 +45,7 @@ gSetupDLs = 0x800D31B0; // size:0x18C0 D_800CFCA0 = 0x800CFCA0; -D_800DD900 = 0x800DD900; // size:0x1A0 +sControllerMotor = 0x800DD900; // size:0x1A0 D_800CBDD4 = 0x800CBDD4; //size:0x98 diff --git a/linker_scripts/us/symbol_addrs_engine.txt b/linker_scripts/us/symbol_addrs_engine.txt index 026dbb82..1ad9407d 100644 --- a/linker_scripts/us/symbol_addrs_engine.txt +++ b/linker_scripts/us/symbol_addrs_engine.txt @@ -47,7 +47,7 @@ func_800A1540 = 0x800A1540; func_800A1558 = 0x800A1558; // sf_36930 -Object_70_Initialize = 0x80035E48; +PlayerShot_Initialize = 0x80035E48; // fox_rcp RCP_SetupDL = 0x800B8DD0; @@ -194,7 +194,7 @@ Object_2F4_Draw1 = 0x8005DBC0; Object_408_Draw = 0x8005E1B8; Object_8C_Draw1 = 0x8005E454; Object_8C_Draw2 = 0x8005E538; -Object_6C_Draw = 0x8005E7B8; +Item_Draw = 0x8005E7B8; func_8005EA24 = 0x8005EA24; func_8005ECD8 = 0x8005ECD8; func_8005F030 = 0x8005F030; @@ -216,18 +216,18 @@ func_80060F30 = 0x80060F30; Object_Kill = 0x80060FBC; func_80060FE4 = 0x80060FE4; func_80061148 = 0x80061148; -Object_Set1C = 0x800612B8; +Object_SetInfo = 0x800612B8; Object_80_Initialize = 0x80061364; Object_4C_Initialize = 0x80061394; Object_2F4_Initialize = 0x800613C4; Object_408_Initialize = 0x80061404; -Object_6C_Initialize = 0x80061444; +Item_Initialize = 0x80061444; Object_8C_Initialize = 0x80061474; Object_80_Spawn = 0x800614B4; Object_4C_Spawn = 0x800615A0; Object_2F4_Spawn = 0x8006168C; Object_408_Spawn = 0x80061778; -Object_6C_Spawn = 0x80061864; +Item_Spawn = 0x80061864; func_80061958 = 0x80061958; func_80061A4C = 0x80061A4C; func_80061B68 = 0x80061B68; @@ -301,7 +301,7 @@ Object_2F4_Update = 0x80069AAC; Object_408_Update = 0x80069CBC; Object_80_Update = 0x80069DF4; Object_4C_Update = 0x80069E88; -Object_6C_Update = 0x80069F30; +Item_Update = 0x80069F30; Object_8C_Update = 0x80069FD4; func_8006A06C = 0x8006A06C; func_8006A38C = 0x8006A38C; @@ -374,8 +374,8 @@ gObjects4C = 0x80163400; //size:0xBE0 gObjects2F4 = 0x80163FE0; //size:0xB130 gObjects408 = 0x8016F110; //size:0x1020 gObjects8C = 0x80170130; //size:0x36B0 -gObjects6C = 0x801737E0; //size:0x870 -gObjects70 = 0x80174050; //size:0x700 +gItems = 0x801737E0; //size:0x870 +gPlayerShots = 0x80174050; //size:0x700 gUnkEntities30 = 0x80174750; //size:0x12C0 gUnkEntities28 = 0x80175A10; //size:0xA28 gUnkEntities1C = 0x80176438; //size:0x18 @@ -403,19 +403,19 @@ D_80177854 = 0x80177854; D_80177858 = 0x80177858; D_80177868 = 0x80177868; D_80177870 = 0x80177870; -D_80177880 = 0x80177880; +gAllRangeMode = 0x80177880; D_80177888 = 0x80177888; D_80177898 = 0x80177898; -D_8017789C = 0x8017789C; +gVersusStage = 0x8017789C; D_801778A0 = 0x801778A0; D_801778A4 = 0x801778A4; gCamCount = 0x801778A8; D_801778AB = 0x801778AB; D_801778AC = 0x801778AC; -gTeamHealth = 0x801778B0; //size:0x18 +gTeamShields = 0x801778B0; //size:0x18 D_801778C8 = 0x801778C8; -gSavedTeamHealth = 0x801778D0; //size:0x18 -D_801778E8 = 0x801778E8; +gSavedTeamShields = 0x801778D0; //size:0x18 +gVersusMode = 0x801778E8; D_80177908 = 0x80177908; D_80177910 = 0x80177910; D_80177928 = 0x80177928; @@ -425,9 +425,9 @@ D_80177940 = 0x80177940; D_80177948 = 0x80177948; D_80177950 = 0x80177950; D_80177958 = 0x80177958; -gCurInputPtr = 0x80177974; +gInputHold = 0x80177974; D_80177978 = 0x80177978; -gChngInputPtr = 0x8017797C; +gInputPress = 0x8017797C; D_80177980 = 0x80177980; D_80177988 = 0x80177988; D_80177990 = 0x80177990; @@ -606,5 +606,5 @@ D_80178570 = 0x80178570; D_80178574 = 0x80178574; D_80178578 = 0x80178578; -Play_GetMaxHealth = 0x800A3FC4; +Play_GetMaxShields = 0x800A3FC4; Play_CheckMedalStatus = 0x800A3F50; diff --git a/linker_scripts/us/symbol_addrs_nlib_vars.txt b/linker_scripts/us/symbol_addrs_nlib_vars.txt index dfc223b5..54b2289a 100644 --- a/linker_scripts/us/symbol_addrs_nlib_vars.txt +++ b/linker_scripts/us/symbol_addrs_nlib_vars.txt @@ -5,15 +5,15 @@ __f3dex_start = 0x80001410; gF3dexData = 0x800C3DD0; // sys_joybus -gCurrentInput = 0x800DD880; // size:0x18 -gChangedInput = 0x800DD898; // size:0x18 -gControllerStatus = 0x800DD8B0; // size:0x4 -gStopInputTimer = 0x800DD8B4; // size:0x4 -gRumbleStatus = 0x800DD8B8; // size:0x4 +gControllerHold = 0x800DD880; // size:0x18 +gControllerPress = 0x800DD898; // size:0x18 +gControllerPlugged = 0x800DD8B0; // size:0x4 +gControllerLock = 0x800DD8B4; // size:0x4 +gControllerRumble = 0x800DD8B8; // size:0x4 D_800DD8BC = 0x800DD8BC; // ignore:true -sNextInput = 0x800DD8C0; // size:0x18 -sPrevInput = 0x800DD8D8; // size:0x18 -D_800DD8F0 = 0x800DD8F0; // size:0x10 +sNextController = 0x800DD8C0; // size:0x18 +sPrevController = 0x800DD8D8; // size:0x18 +sControllerStatus = 0x800DD8F0; // size:0x10 // main gAudioThreadStack = 0x800DDAA0; diff --git a/src/assets/ast_DE5D50.c b/src/assets/ast_DE5D50.c index 47d475b8..c360ff80 100644 --- a/src/assets/ast_DE5D50.c +++ b/src/assets/ast_DE5D50.c @@ -100,7 +100,7 @@ typedef enum { PIP, } CharCode; -u8 gTextCharTextures[][104] = { +u8 gTextCharTextures[][13 * 16 / 2] = { { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, diff --git a/src/main/fox_43AC0.c b/src/main/fox_43AC0.c index 8a4786db..52de7b0e 100644 --- a/src/main/fox_43AC0.c +++ b/src/main/fox_43AC0.c @@ -26,9 +26,9 @@ void func_80042EC0(Object_408* obj408) { } if (var_a3 != 0) { var_fv0 = 0.0f; - if (obj408->obj.id == OBJECT_292) { + if (obj408->obj.id == OBJ_408_292) { var_fv0 = 300.0f; - } else if (obj408->obj.id == OBJECT_306) { + } else if (obj408->obj.id == OBJ_408_306) { var_fv0 = 200.0f; } func_80077240(obj408->obj.pos.x, obj408->obj.pos.y + var_fv0, obj408->obj.pos.z, var_a3); @@ -59,7 +59,7 @@ void func_80042FF4(Object_2F4* obj2F4, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f f32 arg9, f32 argA, s32 argB, s32 argC) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; - obj2F4->obj.id = OBJECT_189; + obj2F4->obj.id = OBJ_2F4_189; obj2F4->unk_0B8 = argB; obj2F4->obj.pos.x = arg1; obj2F4->obj.pos.y = arg2; @@ -73,8 +73,8 @@ void func_80042FF4(Object_2F4* obj2F4, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f obj2F4->unk_110 = argA; obj2F4->unk_0BC = argC; obj2F4->unk_0BE = 20; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); - if (gLevelType == 0) { + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); + if (gLevelType == LEVELTYPE_GROUND) { obj2F4->unk_10C = 0.5f; } } @@ -92,7 +92,7 @@ void func_800430DC(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f } void func_80043188(Object_2F4* obj2F4) { - obj2F4->unk_01C.unk_10 = 30000.0f; + obj2F4->info.unk_10 = 30000.0f; } void func_8004319C(Player* player, f32 arg1, f32 arg2, f32 arg3) { diff --git a/src/main/fox_6B3B0.c b/src/main/fox_6B3B0.c index 807fb506..405825c0 100644 --- a/src/main/fox_6B3B0.c +++ b/src/main/fox_6B3B0.c @@ -17,7 +17,7 @@ void func_8006A7B0(u16* msg, s32 character) { void func_8006A800(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_361; + obj8C->obj.id = OBJ_8C_361; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; @@ -32,7 +32,7 @@ void func_8006A800(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->unk_6C = 0.1f; } obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8006A900(f32 xPos, f32 yPos, f32 zPos, f32 arg3) { @@ -55,7 +55,7 @@ void func_8006A978(Object_2F4* obj2F4) { void func_8006A984(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_365; + obj8C->obj.id = OBJ_8C_365; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; @@ -64,7 +64,7 @@ void func_8006A984(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->unk_6C = 2.0f * (Rand_ZeroOne() - 0.5f); obj8C->unk_54.y = 10.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8006AA3C(f32 xPos, f32 yPos, f32 zPos) { @@ -106,7 +106,7 @@ void func_8006AC08(Object_2F4* obj2F4) { f32 sp2C; if ((func_8006ABA4(obj2F4) != 0) && (obj2F4->unk_0BC == 0)) { - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); obj2F4->unk_0BC = 20; } sp2C = obj2F4->obj.pos.z + D_80177D20; @@ -132,7 +132,7 @@ void func_8006AD18(Object_2F4* obj2F4) { obj2F4->unk_054 = true; } if (!(gFrameCount & 0x1F)) { - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y + 180.0f, obj2F4->obj.pos.z, D_80177828); + func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y + 180.0f, obj2F4->obj.pos.z, D_80177828); } switch (obj2F4->unk_0B8) { case 0: @@ -182,7 +182,7 @@ void func_8006AD18(Object_2F4* obj2F4) { obj2F4->unk_0E8.y, obj2F4->unk_0E8.z, 8.0f, 30); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); - gHitCount += obj2F4->unk_01C.bonus; + gHitCount += obj2F4->info.bonus; D_80177850 = 15; } else { obj2F4->unk_0D0 = 0; @@ -240,7 +240,7 @@ void func_8006B0A0(Object_2F4* obj2F4) { if (obj2F4->unk_04A > 15) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); D_80176550[obj2F4->unk_046] = 0; - gHitCount += obj2F4->unk_01C.bonus; + gHitCount += obj2F4->info.bonus; D_80177850 = 15; } } @@ -262,7 +262,7 @@ void func_8006B46C(Object_2F4* obj2F4, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f if (arg7 != 1) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); if ((arg7 == 0) && (obj2F4->unk_0CA[0] != 0)) { - sp34.y += obj2F4->unk_01C.unk_1C; + sp34.y += obj2F4->info.unk_1C; Matrix_MultVec3f(gGfxMatrix, &sp34, D_80161578); if (D_80161578->z > -500.0f) { obj2F4->unk_0CA[0] = 0; @@ -318,7 +318,7 @@ void func_8006B95C(Object_80* obj80) { void func_8006BA64(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_375; + obj8C->obj.id = OBJ_8C_375; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; @@ -326,7 +326,7 @@ void func_8006BA64(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->unk_6C = 0.12f; obj8C->obj.rot.y = Rand_ZeroOne() * 360.0f; obj8C->unk_60.y = (Rand_ZeroOne() - 0.5f) * 3.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8006BB1C(f32 xPos, f32 yPos, f32 zPos) { @@ -386,7 +386,7 @@ void func_8006BB78(Object_2F4* obj2F4) { break; case 3: if (obj2F4->unk_0BC == 1) { - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + 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) { Math_SmoothStepToF(&obj2F4->obj.rot.x, 180.0f, 0.1f, 7.0f, 0.01f); @@ -547,7 +547,7 @@ void func_8006C008(Object_2F4* obj2F4) { case 0x34: case 0x35: case 0x37: - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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); @@ -557,7 +557,7 @@ void func_8006C008(Object_2F4* obj2F4) { break; case 0x38: Math_SmoothStepToF(&obj2F4->unk_110, 0.0f, 0.1f, 2.0f, 0.0001f); - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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); @@ -575,7 +575,7 @@ 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->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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); @@ -584,7 +584,7 @@ void func_8006C008(Object_2F4* obj2F4) { } break; case 0x36: - if (((obj2F4->unk_0BC == 0) || (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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); @@ -601,7 +601,7 @@ 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 (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800C9F2C, 1) != 0) { + if (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800C9F2C, 1) != 0) { obj2F4->unk_0E8.x *= -0.7f; } if (obj2F4->obj.pos.y < D_80177940) { @@ -612,7 +612,7 @@ 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 (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800C9F2C, 1) != 0) { + if (func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800C9F2C, 1) != 0) { obj2F4->unk_0E8.x *= -0.7f; } if (obj2F4->obj.pos.y < D_80177940) { @@ -643,13 +643,12 @@ 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->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if ((obj2F4->unk_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->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 10.0f); @@ -657,8 +656,7 @@ void func_8006C008(Object_2F4* obj2F4) { 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->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0)) && + 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); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); @@ -672,8 +670,7 @@ void func_8006C008(Object_2F4* obj2F4) { if (!(obj2F4->unk_0BC & 3)) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_110); } - if (((obj2F4->unk_0BC == 0) || - (func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if (((obj2F4->unk_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_8007BFFC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->unk_0E8.x, @@ -685,9 +682,9 @@ void func_8006C008(Object_2F4* obj2F4) { if ((obj2F4->unk_0B8 == 3) && !(obj2F4->unk_0BC & 7)) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.5f); } - if ((func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || + if ((func_8006351C(obj2F4->index, &obj2F4->obj.pos, &D_800D0030, 1) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 10.0f))) { - if (gLevelType == 1) { + if (gLevelType == LEVELTYPE_SPACE) { func_8007D0E0(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 2.0f); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); return; @@ -718,7 +715,7 @@ void func_8006C008(Object_2F4* obj2F4) { if (obj2F4->unk_0BC & 1) { func_8007D24C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.0f); } - if ((gLevelType == 1) && (obj2F4->unk_0BC == 0)) { + if ((gLevelType == LEVELTYPE_SPACE) && (obj2F4->unk_0BC == 0)) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); } } @@ -730,13 +727,14 @@ void func_8006C008(Object_2F4* obj2F4) { void func_8006D0F4(Object_2F4* obj2F4) { s32 i; s32 j; - f32* var_s0; + f32* hitboxData; Vec3f spA8; Vec3f sp9C; s32 temp_fs0; s32 temp_fs1; s32 temp_fs2; - s32 temp_ft4; + s32 count; + Hitbox* hitbox; D_80161A7C = 110; D_80161A80 = 110; @@ -745,26 +743,28 @@ void func_8006D0F4(Object_2F4* obj2F4) { for (i = 0; i < ARRAY_COUNT(gObjects80); i++) { if ((gObjects80[i].obj.status == 2) && ((gPlayer[0].unk_138 - 3000.0f) < gObjects80[i].obj.pos.z)) { - var_s0 = D_800CF964[gObjects80[i].obj.id]; - temp_ft4 = *var_s0; - if (temp_ft4 != 0) { + hitboxData = D_800CF964[gObjects80[i].obj.id]; + count = *hitboxData; + if (count != 0) { Matrix_RotateY(gCalcMatrix, -gObjects80[i].obj.rot.y * M_DTOR, 0); spA8.x = obj2F4->obj.pos.x - gObjects80[i].obj.pos.x; spA8.y = obj2F4->obj.pos.y - gObjects80[i].obj.pos.y; spA8.z = obj2F4->obj.pos.z - gObjects80[i].obj.pos.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &spA8, &sp9C); - var_s0++; temp_fs0 = gObjects80[i].obj.pos.x + sp9C.x; temp_fs1 = gObjects80[i].obj.pos.y + sp9C.y; temp_fs2 = gObjects80[i].obj.pos.z + sp9C.z; - for (j = 0; j < temp_ft4; j++, var_s0 += 6) { - if (func_800A78C4(var_s0, gObjects80[i].obj.pos.x, gObjects80[i].obj.pos.y, gObjects80[i].obj.pos.z, + hitboxData++; + for (j = 0; j < count; j++) { + hitbox = (Hitbox*) hitboxData; + if (func_800A78C4(hitbox, gObjects80[i].obj.pos.x, gObjects80[i].obj.pos.y, gObjects80[i].obj.pos.z, temp_fs0, temp_fs1, temp_fs2)) { D_80161A7C = 10; D_80161A80 = 10; D_80161A84 = 10; obj2F4->unk_0C8 = 5; } + hitboxData += 6; } } } @@ -951,8 +951,8 @@ void func_8006D36C(Object_2F4* obj2F4) { switch (temp_s1[obj2F4->unk_0E6] & 0xFE00) { case 0xFE00: obj2F4->unk_0B8 = 200; - if (obj2F4->unk_01C.unk_10 > 10000.0f) { - obj2F4->unk_01C.unk_10 = 100.0f; + if (obj2F4->info.unk_10 > 10000.0f) { + obj2F4->info.unk_10 = 100.0f; } break; case 0xD000: @@ -968,15 +968,15 @@ void func_8006D36C(Object_2F4* obj2F4) { if ((obj2F4->unk_0B4 == 64) || (obj2F4->unk_0B4 == 81)) { obj2F4->unk_150 = 0.0f; } else if (obj2F4->unk_0B4 == 79) { - obj2F4->unk_01C.drawType = 2; + obj2F4->info.drawType = 2; } obj2F4->unk_0CE = temp_s1[obj2F4->unk_0E6] & 0x1FF; obj2F4->unk_0E6 += 2; if ((obj2F4->unk_0B4 >= 200) && (obj2F4->unk_0B4 < 300)) { obj2F4->unk_046 = 100; - obj2F4->unk_01C.hitbox = D_800CBEC4; - obj2F4->unk_01C.unk_1C = 1.0f; + obj2F4->info.hitbox = D_800CBEC4; + obj2F4->info.unk_1C = 1.0f; for (i = 0; i < 2; i++) { if (D_80176550[i] == 0) { D_80176550[i] = 1; @@ -1018,17 +1018,17 @@ void func_8006D36C(Object_2F4* obj2F4) { obj2F4->unk_0B6 = Animation_GetFrameCount(&D_6014658) - 1; } if (obj2F4->unk_0B4 < 200) { - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_800D003C[obj2F4->unk_0B4].unk_04); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_800D003C[obj2F4->unk_0B4].unk_04); obj2F4->unk_110 = D_800D003C[obj2F4->unk_0B4].unk_08; - obj2F4->unk_01C.unk_16 = D_800D003C[obj2F4->unk_0B4].unk_14; - obj2F4->unk_01C.unk_14 = D_800D003C[obj2F4->unk_0B4].unk_15; - obj2F4->unk_01C.unk_19 = D_800D003C[obj2F4->unk_0B4].unk_17; - obj2F4->unk_01C.unk_1C = D_800D003C[obj2F4->unk_0B4].unk_18; - obj2F4->unk_01C.bonus = D_800D003C[obj2F4->unk_0B4].unk_1C; + 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; + obj2F4->info.unk_1C = D_800D003C[obj2F4->unk_0B4].unk_18; + obj2F4->info.bonus = D_800D003C[obj2F4->unk_0B4].unk_1C; if (obj2F4->unk_0B4 == 78) { - obj2F4->unk_01C.damage = 0; + obj2F4->info.damage = 0; } - obj2F4->unk_01C.unk_10 = D_800D003C[obj2F4->unk_0B4].unk_0C; + obj2F4->info.unk_10 = D_800D003C[obj2F4->unk_0B4].unk_0C; obj2F4->unk_178 = D_800D003C[obj2F4->unk_0B4].unk_10; switch (D_800D003C[obj2F4->unk_0B4].unk_16) { case 1: @@ -1057,9 +1057,9 @@ void func_8006D36C(Object_2F4* obj2F4) { break; } if (gPlayer[0].unk_138 < obj2F4->obj.pos.z) { - obj2F4->unk_01C.unk_10 = 3000.0f; + obj2F4->info.unk_10 = 3000.0f; } - if (obj2F4->unk_01C.unk_16 == 0) { + if (obj2F4->info.unk_16 == 0) { obj2F4->obj.rot.z = obj2F4->unk_170 = obj2F4->unk_0F4.z; if (obj2F4->unk_0B4 != 31) { obj2F4->unk_0F4.z = 0.0f; @@ -1071,7 +1071,7 @@ void func_8006D36C(Object_2F4* obj2F4) { case 0xD200: obj2F4->unk_080 = temp_s1[obj2F4->unk_0E6 + 1]; if (obj2F4->unk_080 < 4) { - D_800CFF80[obj2F4->unk_080] = obj2F4->unk_040; + D_800CFF80[obj2F4->unk_080] = obj2F4->index; } obj2F4->unk_0E6 += 2; func_8006D36C(obj2F4); @@ -1083,7 +1083,7 @@ void func_8006D36C(Object_2F4* obj2F4) { func_8006D36C(obj2F4); break; case 0x0600: - D_80177E78 = obj2F4->unk_040; + D_80177E78 = obj2F4->index; D_80177F10.x = obj2F4->obj.pos.x; D_80177F10.y = obj2F4->obj.pos.y; D_80177F10.z = obj2F4->obj.pos.z; @@ -1101,7 +1101,7 @@ void func_8006D36C(Object_2F4* obj2F4) { break; } if (temp_s1[obj2F4->unk_0E6 + 1] == 0xF) { - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_800CBEC4); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_800CBEC4); obj2F4->unk_0B8 = 0xB; obj2F4->unk_0E6 += 2; break; @@ -1150,7 +1150,7 @@ void func_8006D36C(Object_2F4* obj2F4) { func_8006D36C(obj2F4); break; case 0x7200: - gTeamHealth[temp_s1[obj2F4->unk_0E6 + 1]] = 0xFF; + gTeamShields[temp_s1[obj2F4->unk_0E6 + 1]] = 0xFF; obj2F4->unk_0E6 += 2; func_8006D36C(obj2F4); break; @@ -1401,12 +1401,12 @@ void func_8006EA50(Object_2F4* obj2F4) { void func_8006EAC4(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_374; + obj8C->obj.id = OBJ_8C_374; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->unk_50 = 20; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); func_80019218(0x2900201D, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } @@ -1424,12 +1424,12 @@ void func_8006EB64(f32 xPos, f32 yPos, f32 zPos) { void func_8006EBC0(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; - obj2F4->obj.id = OBJECT_225; + obj2F4->obj.id = OBJ_2F4_225; obj2F4->obj.pos.x = xPos; obj2F4->obj.pos.y = yPos; obj2F4->obj.pos.z = zPos; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); - obj2F4->unk_01C.unk_16 = 2; + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); + obj2F4->info.unk_16 = 2; func_80019218(0x2900201D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } @@ -1444,42 +1444,42 @@ void func_8006EC60(f32 xPos, f32 yPos, f32 zPos) { } } -void func_8006ECBC(s32 objId, Object_70* obj70, s32 arg2, f32 xPos, f32 yPos, f32 zPos, f32 arg6, f32 arg7, f32 arg8, +void func_8006ECBC(s32 objId, PlayerShot* shot, s32 arg2, f32 xPos, f32 yPos, f32 zPos, f32 arg6, f32 arg7, f32 arg8, f32 xRot, f32 yRot, f32 zRot) { - Object_70_Initialize(obj70); - obj70->obj.status = 1; - obj70->unk_20.z = arg8; - obj70->unk_20.x = arg6; - obj70->unk_20.y = arg7; - obj70->obj.pos.x = xPos; - obj70->obj.pos.y = yPos; - obj70->obj.pos.z = zPos; - obj70->obj.rot.x = xRot + 180.0f; - obj70->obj.rot.y = yRot; - obj70->obj.rot.z = -zRot; - obj70->obj.id = objId; - obj70->unk_58 = 1; - obj70->unk_60 = 0; - if (objId == OBJECT_9) { - obj70->unk_64 = 120; + PlayerShot_Initialize(shot); + shot->obj.status = 1; + shot->unk_20.z = arg8; + shot->unk_20.x = arg6; + shot->unk_20.y = arg7; + shot->obj.pos.x = xPos; + shot->obj.pos.y = yPos; + shot->obj.pos.z = zPos; + shot->obj.rot.x = xRot + 180.0f; + shot->obj.rot.y = yRot; + shot->obj.rot.z = -zRot; + shot->obj.id = objId; + shot->unk_58 = 1; + shot->unk_60 = 0; + if (objId == OBJ_80_9) { + shot->unk_64 = 120; } else { - obj70->unk_64 = 30; + shot->unk_64 = 30; } - obj70->unk_68 = arg2 + 100; + shot->unk_68 = arg2 + 100; - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { if (arg2 + 100 < 104) { - func_80019218(0x2900000D, &obj70->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + func_80019218(0x2900000D, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x29002002, &obj70->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + func_80019218(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } - } else if ((arg2 < 60) && (gObjects2F4[arg2].obj.id == OBJECT_200) && (gObjects2F4[arg2].unk_080 > 0)) { - func_80019218(0x2900000D, &obj70->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); } else if (arg2 + 100 == 200) { - obj70->unk_68 = 100; - func_80019218(0x19030037, &obj70->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + shot->unk_68 = 100; + func_80019218(0x19030037, &shot->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { - func_80019218(0x29002002, &obj70->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + func_80019218(0x29002002, &shot->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } @@ -1488,8 +1488,8 @@ void func_8006EEFC(s32 objId, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32 arg5, s32 i; for (i = 0; i < 10; i++) { - if (gObjects70[i].obj.status == 0) { - func_8006ECBC(1, &gObjects70[i], objId, xPos, yPos, zPos, arg4, arg5, arg6, xRot, yRot, zRot); + if (gPlayerShots[i].obj.status == 0) { + func_8006ECBC(PLAYERSHOT_1, &gPlayerShots[i], objId, xPos, yPos, zPos, arg4, arg5, arg6, xRot, yRot, zRot); break; } } @@ -1500,8 +1500,8 @@ void func_8006EFA0(s32 objId, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32 arg5, s32 i; for (i = 0; i < 10; i++) { - if (gObjects70[i].obj.status == 0) { - func_8006ECBC(9, &gObjects70[i], objId, xPos, yPos, zPos, arg4, arg5, arg6, xRot, yRot, zRot); + if (gPlayerShots[i].obj.status == 0) { + func_8006ECBC(PLAYERSHOT_9, &gPlayerShots[i], objId, xPos, yPos, zPos, arg4, arg5, arg6, xRot, yRot, zRot); break; } } @@ -1510,13 +1510,13 @@ void func_8006EFA0(s32 objId, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32 arg5, void func_8006F044(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_347; + obj8C->obj.id = OBJ_8C_347; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->unk_6C = arg4; obj8C->unk_44 = 100; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); func_8007A6F0(&obj8C->obj.pos, 0x2903B009); } @@ -1534,7 +1534,7 @@ void func_8006F0D8(f32 xPos, f32 yPos, f32 zPos, f32 arg3) { void func_8006F140(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_394; + obj8C->obj.id = OBJ_8C_394; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; @@ -1542,8 +1542,8 @@ void func_8006F140(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->unk_44 = 100; obj8C->unk_78 = 102; obj8C->unk_7A = 18; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); - obj8C->unk_1C.damage = 40; + Object_SetInfo(&obj8C->info, obj8C->obj.id); + obj8C->info.damage = 40; func_8007A6F0(&obj8C->obj.pos, 0x2903B009); } @@ -1571,7 +1571,7 @@ void func_8006F254(Object_2F4* obj2F4) { sp54.y = 0.0f; sp54.z = D_80177828; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp54, &sp48); - func_8007F04C(OBJECT_353, obj2F4->obj.pos.x + sp48.x, obj2F4->obj.pos.y + sp48.y, obj2F4->obj.pos.z + sp48.z, + func_8007F04C(OBJ_8C_353, obj2F4->obj.pos.x + sp48.x, obj2F4->obj.pos.y + sp48.y, obj2F4->obj.pos.z + sp48.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z, sp48.x, sp48.y, sp48.z, 1.0f); } @@ -1594,7 +1594,7 @@ void func_8006F40C(Object_2F4* obj2F4) { break; case 2: if (obj2F4->obj.pos.z < (gPlayer[0].unk_138 - 600.0f)) { - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); } obj2F4->unk_048 = 0; break; @@ -1605,10 +1605,9 @@ void func_8006F40C(Object_2F4* obj2F4) { sp78.y = 0.0f; sp78.z = 100.0f; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - func_8006EEFC(obj2F4->unk_040, 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); + 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) { @@ -1630,7 +1629,7 @@ void func_8006F40C(Object_2F4* obj2F4) { sp78.y = 0.0f; sp78.z = D_80177828; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - func_8007F04C(OBJECT_355, obj2F4->obj.pos.x + sp6C.x, obj2F4->obj.pos.y + sp6C.y, + func_8007F04C(OBJ_8C_355, obj2F4->obj.pos.x + sp6C.x, obj2F4->obj.pos.y + sp6C.y, obj2F4->obj.pos.z + sp6C.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z, sp6C.x, sp6C.y, sp6C.z, 1.0f); @@ -1638,13 +1637,13 @@ void func_8006F40C(Object_2F4* obj2F4) { break; case 6: if (obj2F4->obj.pos.z < (gPlayer[0].unk_138 - 600.0f)) { - func_8007F11C(OBJECT_355, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + func_8007F11C(OBJ_8C_355, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); } obj2F4->unk_048 = 0; break; case 7: if (obj2F4->obj.pos.z < (gPlayer[0].unk_138 - 600.0f)) { - func_8007F11C(OBJECT_356, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 60.0f); + func_8007F11C(OBJ_8C_356, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 60.0f); } obj2F4->unk_048 = 0; break; @@ -1653,7 +1652,7 @@ void func_8006F40C(Object_2F4* obj2F4) { 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; - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + 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; obj2F4->unk_048 = 0; @@ -1700,22 +1699,22 @@ void func_8006F40C(Object_2F4* obj2F4) { } break; case 16: - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x + 190.0f, obj2F4->obj.pos.y + 90.0f, + func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x + 190.0f, obj2F4->obj.pos.y + 90.0f, obj2F4->obj.pos.z + 220.0f, D_80177828); - func_8007F11C(OBJECT_353, obj2F4->obj.pos.x - 190.0f, obj2F4->obj.pos.y + 90.0f, + func_8007F11C(OBJ_8C_353, obj2F4->obj.pos.x - 190.0f, obj2F4->obj.pos.y + 90.0f, obj2F4->obj.pos.z + 220.0f, D_80177828); obj2F4->unk_048 = 0; break; case 17: if (obj2F4->obj.pos.z < (gPlayer[0].unk_040.z - 600.0f)) { - func_8007F20C(OBJECT_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); + func_8007F20C(OBJ_8C_353, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, D_80177828); } obj2F4->unk_048 = 0; break; case 18: for (var_v1 = 0, obj4C = gObjects4C; var_v1 < 40; var_v1++, obj4C++) { - if ((obj4C->obj.status == 2) && (obj4C->obj.id == OBJECT_175)) { + if ((obj4C->obj.status == 2) && (obj4C->obj.id == OBJ_4C_175)) { f32 sp64; f32 sp60; f32 sp5C; @@ -1787,12 +1786,12 @@ void func_8006FEEC(Object_2F4* obj2F4) { bool func_800700A4(Object_2F4* obj2F4) { if ((obj2F4->unk_0B8 != 12) && (obj2F4->unk_080 > 0) && (obj2F4->unk_080 < 4) && - (gTeamHealth[obj2F4->unk_080] <= 0)) { + (gTeamShields[obj2F4->unk_080] <= 0)) { obj2F4->unk_0B8 = 12; obj2F4->unk_058 = 0; obj2F4->unk_13C = 360.0f; obj2F4->unk_140 = 20.0f; - gTeamHealth[obj2F4->unk_080] = 1; + gTeamShields[obj2F4->unk_080] = 1; switch (obj2F4->unk_080) { case 1: func_800BA808(gMsg_ID_20220, RCID_FALCO); @@ -1804,7 +1803,7 @@ bool func_800700A4(Object_2F4* obj2F4) { func_800BA808(gMsg_ID_20221, RCID_PEPPY); break; } - gTeamHealth[obj2F4->unk_080] = -1; + gTeamShields[obj2F4->unk_080] = -1; D_80177910[obj2F4->unk_080] = 0; obj2F4->unk_0C2 = 5000; obj2F4->unk_0D0 = 0; @@ -1831,7 +1830,7 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->unk_0D6 = 0; } if ((obj2F4->unk_080 > 0) && (obj2F4->unk_080 < 4)) { - gTeamHealth[obj2F4->unk_080] -= obj2F4->unk_0D6; + gTeamShields[obj2F4->unk_080] -= obj2F4->unk_0D6; } else if ((obj2F4->unk_0B4 == 0x53) && ((obj2F4->unk_0D6 == 0x1E) || (obj2F4->unk_0D6 == 0x1F))) { obj2F4->unk_0CE = 0; } else { @@ -1851,10 +1850,10 @@ void func_800701E0(Object_2F4* obj2F4) { } obj2F4->obj.status = 3; var_fv1 = 0.7f; - if (gLevelType == 1) { + if (gLevelType == LEVELTYPE_SPACE) { var_fv1 = 0.3f; } - if (((Rand_ZeroOne() < var_fv1) || (obj2F4->unk_080 != 0)) && (obj2F4->unk_01C.unk_14 == 0) && + if (((Rand_ZeroOne() < var_fv1) || (obj2F4->unk_080 != 0)) && (obj2F4->info.unk_14 == 0) && (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)) { @@ -1866,7 +1865,7 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->unk_046 = 0xFF; obj2F4->unk_048 = 0x384; obj2F4->unk_0C9 = 1; - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { obj2F4->unk_04C = (s16) (s32) (Rand_ZeroOne() * 2.9f); if (obj2F4->unk_0B4 == 2) { obj2F4->unk_04C = 1; @@ -1879,7 +1878,7 @@ void func_800701E0(Object_2F4* obj2F4) { } } obj2F4->unk_0BC = 0x12C; - if (D_80177880 != 1) { + if (gAllRangeMode != 1) { obj2F4->unk_0E8.x *= 0.5f; obj2F4->unk_0E8.y = Rand_ZeroOne() * 5.0f; if (obj2F4->unk_0E8.z < 0.0f) { @@ -1909,8 +1908,8 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->obj.pos.z - obj2F4->unk_0E8.z, obj2F4->unk_110 * 5.0f); obj2F4->unk_0D0 = 0; obj2F4->unk_0C2 = 0x2710; - obj2F4->unk_01C.unk_1C = 0.0f; - gHitCount += obj2F4->unk_01C.bonus; + obj2F4->info.unk_1C = 0.0f; + gHitCount += obj2F4->info.bonus; D_80177850 = 0xF; break; default: @@ -1940,7 +1939,7 @@ void func_800701E0(Object_2F4* obj2F4) { 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); } - if (((D_80177880 == 1) || (D_80177880 == 2)) && (obj2F4->unk_0B4 != 0x15) && + if (((gAllRangeMode == 1) || (gAllRangeMode == 2)) && (obj2F4->unk_0B4 != 0x15) && (obj2F4->unk_0B4 != 0x17)) { obj2F4->unk_148 = 20.0f; if (obj2F4->obj.pos.x < obj2F4->unk_0D8.x) { @@ -1982,17 +1981,18 @@ void func_800701E0(Object_2F4* obj2F4) { obj2F4->unk_0D0 = 0; } } - if ((obj2F4->unk_080 == 0) && (obj2F4->unk_084 == 0) && (obj2F4->unk_01C.unk_16 != 2) && (gLevelType == 1)) { + if ((obj2F4->unk_080 == 0) && (obj2F4->unk_084 == 0) && (obj2F4->info.unk_16 != 2) && + (gLevelType == LEVELTYPE_SPACE)) { sp3C.x = obj2F4->unk_0E8.x; sp3C.y = obj2F4->unk_0E8.y; sp3C.z = obj2F4->unk_0E8.z; - if ((func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &sp3C, 0) != 0) || + if ((func_8006351C(obj2F4->index, &obj2F4->obj.pos, &sp3C, 0) != 0) || (obj2F4->obj.pos.y < (D_80177940 + 20.0f))) { obj2F4->obj.status = 3; obj2F4->obj.pos.z -= obj2F4->unk_0E8.z; obj2F4->unk_0D0 = 1; if (obj2F4->unk_0B4 == 13) { - obj2F4->obj.id = OBJECT_182; + obj2F4->obj.id = OBJ_2F4_182; func_800654E4(&obj2F4->obj); } if (obj2F4->unk_0B4 == 61) { @@ -2013,8 +2013,8 @@ void func_80070BA8(Object_2F4* obj2F4) { obj2F4->unk_0CE -= obj2F4->unk_0D6; func_80019218(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->unk_01C.bonus); - gHitCount += obj2F4->unk_01C.bonus + 1; + 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 { @@ -2045,7 +2045,7 @@ void func_80070D44(Object_2F4* obj2F4) { Object_2F4* other2F4; for (i = 1; i < 4; i++) { - if (gTeamHealth[i] > 0) { + if (gTeamShields[i] > 0) { var_v1++; } } @@ -2085,17 +2085,17 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x6: - if (gTeamHealth[1] > 0) { + if (gTeamShields[1] > 0) { func_80070CEC(obj2F4); } break; case 0x7: - if (gTeamHealth[3] > 0) { + if (gTeamShields[3] > 0) { func_80070CEC(obj2F4); } break; case 0x8: - if (gTeamHealth[2] > 0) { + if (gTeamShields[2] > 0) { func_80070CEC(obj2F4); } break; @@ -2196,27 +2196,27 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x19: - if (gPlayer[0].health >= Play_GetMaxHealth()) { + if (gPlayer[0].shields >= Play_GetMaxShields()) { func_80070CEC(obj2F4); } break; case 0x1A: - if (gPlayer[0].health >= (Play_GetMaxHealth() * 3 / 4)) { + if (gPlayer[0].shields >= (Play_GetMaxShields() * 3 / 4)) { func_80070CEC(obj2F4); } break; case 0x1B: - if (gPlayer[0].health >= (Play_GetMaxHealth() / 2)) { + if (gPlayer[0].shields >= (Play_GetMaxShields() / 2)) { func_80070CEC(obj2F4); } break; case 0x1C: - if (gPlayer[0].health >= (Play_GetMaxHealth() / 4)) { + if (gPlayer[0].shields >= (Play_GetMaxShields() / 4)) { func_80070CEC(obj2F4); } break; case 0x1D: - if (gPlayer[0].health == 0) { + if (gPlayer[0].shields == 0) { func_80070CEC(obj2F4); } break; @@ -2266,20 +2266,22 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x27: - for (i = 0; i < ARRAY_COUNT(gObjects70); i++) { - if ((gObjects70[i].obj.status == 1) && (fabsf(obj2F4->obj.pos.x - gObjects70[i].obj.pos.x) < 150.0f) && - (fabsf(obj2F4->obj.pos.y - gObjects70[i].obj.pos.y) < 150.0f) && - (fabsf(obj2F4->obj.pos.z - gObjects70[i].obj.pos.z) < 150.0f)) { + for (i = 0; i < ARRAY_COUNT(gPlayerShots); i++) { + if ((gPlayerShots[i].obj.status == 1) && + (fabsf(obj2F4->obj.pos.x - gPlayerShots[i].obj.pos.x) < 150.0f) && + (fabsf(obj2F4->obj.pos.y - gPlayerShots[i].obj.pos.y) < 150.0f) && + (fabsf(obj2F4->obj.pos.z - gPlayerShots[i].obj.pos.z) < 150.0f)) { func_80070CEC(obj2F4); break; } } break; case 0x28: - for (i = 0; i < ARRAY_COUNT(gObjects70); i++) { - if ((gObjects70[i].obj.status == 1) && (fabsf(obj2F4->obj.pos.x - gObjects70[i].obj.pos.x) < 300.0f) && - (fabsf(obj2F4->obj.pos.y - gObjects70[i].obj.pos.y) < 300.0f) && - (fabsf(obj2F4->obj.pos.z - gObjects70[i].obj.pos.z) < 300.0f)) { + for (i = 0; i < ARRAY_COUNT(gPlayerShots); i++) { + if ((gPlayerShots[i].obj.status == 1) && + (fabsf(obj2F4->obj.pos.x - gPlayerShots[i].obj.pos.x) < 300.0f) && + (fabsf(obj2F4->obj.pos.y - gPlayerShots[i].obj.pos.y) < 300.0f) && + (fabsf(obj2F4->obj.pos.z - gPlayerShots[i].obj.pos.z) < 300.0f)) { func_80070CEC(obj2F4); break; } @@ -2293,9 +2295,9 @@ void func_80070D44(Object_2F4* obj2F4) { break; case 0x2A: for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++) { - if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].obj.id == OBJECT_200) && - (gObjects2F4[i].unk_084 != 0) && (i != obj2F4->unk_040) && - (obj2F4->unk_040 == gObjects2F4[i].unk_074)) { + if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].obj.id == OBJ_2F4_200) && + (gObjects2F4[i].unk_084 != 0) && (i != obj2F4->index) && + (obj2F4->index == gObjects2F4[i].unk_074)) { return; } } @@ -2303,9 +2305,9 @@ void func_80070D44(Object_2F4* obj2F4) { break; case 0x2B: for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++) { - if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].obj.id == OBJECT_200) && - (gObjects2F4[i].unk_084 != 0) && (i != obj2F4->unk_040) && - (obj2F4->unk_040 == gObjects2F4[i].unk_074)) { + if ((gObjects2F4[i].obj.status == 2) && (gObjects2F4[i].obj.id == OBJ_2F4_200) && + (gObjects2F4[i].unk_084 != 0) && (i != obj2F4->index) && + (obj2F4->index == gObjects2F4[i].unk_074)) { func_80070CEC(obj2F4); break; } @@ -2328,7 +2330,7 @@ void func_80070D44(Object_2F4* obj2F4) { var_v1_4 = 9; break; } - if (((gCurrentLevel != LEVEL_CORNERIA) || (gTeamHealth[1] > 0)) && (D_80177E80 >= var_v1_4)) { + if (((gCurrentLevel != LEVEL_CORNERIA) || (gTeamShields[1] > 0)) && (D_80177E80 >= var_v1_4)) { func_80070CEC(obj2F4); } break; @@ -2341,7 +2343,7 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x2F: - if (gChangedInput[D_80177AF8].button & R_CBUTTONS) { + if (gControllerPress[D_80177AF8].button & R_CBUTTONS) { func_8001AF40(0); D_800CFF90 = 0; D_80161690 = 0; @@ -2349,7 +2351,7 @@ void func_80070D44(Object_2F4* obj2F4) { } break; case 0x30: - if ((gPlayer[0].wings.rightState <= 1) || (gPlayer[0].wings.leftState <= 1)) { + if ((gPlayer[0].wings.rightState <= WINGSTATE_BROKEN) || (gPlayer[0].wings.leftState <= WINGSTATE_BROKEN)) { func_80070CEC(obj2F4); } break; @@ -2549,7 +2551,7 @@ void func_800720E8(Object_2F4* obj2F4) { } if (obj2F4->unk_0CE <= 0) { obj2F4->unk_046 = 1; - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_6032408); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6032408); func_80019218(0x1900000D, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { func_80019218(0x2903300E, &obj2F4->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); @@ -2579,7 +2581,7 @@ void func_800722EC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 yRot) { Matrix_MultVec3f(gCalcMatrix, &sp2C, &sp20); obj8C->unk_54.x = sp20.x; obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_365; + obj8C->obj.id = OBJ_8C_365; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; @@ -2588,7 +2590,7 @@ void func_800722EC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 yRot) { obj8C->unk_6C = (Rand_ZeroOne() - 0.5f) * 200.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->unk_4C = obj8C->unk_4E = 1; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007240C(f32 xPos, f32 yPos, f32 zPos, f32 yRot) { @@ -2675,7 +2677,7 @@ void func_80072594(Object_2F4* obj2F4) { return; } if (obj2F4->unk_0B4 == 300) { - gPlayer->unk_1A4 = obj2F4->unk_040; + gPlayer->unk_1A4 = obj2F4->index; obj2F4->unk_0C2 = 100; } else if (obj2F4->unk_0B4 >= 200) { obj2F4->unk_04E++; @@ -2699,7 +2701,7 @@ void func_80072594(Object_2F4* obj2F4) { 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->obj.id = OBJECT_194; + obj2F4->obj.id = OBJ_2F4_194; } } } @@ -2770,7 +2772,7 @@ void func_80072594(Object_2F4* obj2F4) { } else { var_fv0 = 0.0f; } - func_8007F04C(OBJECT_353, obj2F4->obj.pos.x + spAC.x + spA0.x, + func_8007F04C(OBJ_8C_353, obj2F4->obj.pos.x + spAC.x + spA0.x, obj2F4->obj.pos.y + spAC.y + spA0.y + var_fv0, obj2F4->obj.pos.z + spAC.z + spA0.z, obj2F4->unk_150, obj2F4->obj.rot.y, obj2F4->obj.rot.z, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, @@ -2812,8 +2814,8 @@ void func_80072594(Object_2F4* obj2F4) { } break; case 0xD: - spDC = __sinf(((obj2F4->unk_040 * 0x2D) + gFrameCount) * M_DTOR) * obj2F4[0].unk_158; - spD8 = __cosf(((obj2F4->unk_040 * 0x2D) + (gFrameCount * 2)) * M_DTOR) * obj2F4[0].unk_158; + spDC = __sinf(((obj2F4->index * 0x2D) + gFrameCount) * M_DTOR) * obj2F4[0].unk_158; + 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; @@ -2887,7 +2889,7 @@ void func_80072594(Object_2F4* obj2F4) { var_s0++; } if (var_s0 == 3) { - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_602F638); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_602F638); func_8006D36C(obj2F4); } break; @@ -2898,7 +2900,7 @@ void func_80072594(Object_2F4* obj2F4) { break; case 0xC: Math_SmoothStepToAngle(&obj2F4->unk_0F4.x, 270.0f, 0.1f, 2.0f, 0.0f); - gTeamHealth[obj2F4->unk_080] = -1; + gTeamShields[obj2F4->unk_080] = -1; D_80177910[obj2F4->unk_080] = 0; break; case 200: @@ -2937,7 +2939,7 @@ void func_80072594(Object_2F4* obj2F4) { obj2F4->unk_0F4.y += 360.0f; } if (obj2F4->unk_068 != 0) { - if ((D_80177880 == 2) && (obj2F4->unk_0B4 == 0xC8)) { + if ((gAllRangeMode == 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 { @@ -2998,7 +3000,7 @@ void func_80072594(Object_2F4* obj2F4) { obj2F4->unk_14C -= obj2F4->unk_14C * 0.1f; if (obj2F4->unk_064 == 0x80) { obj2F4->unk_0E8.z -= obj2F4->unk_16C; - if ((gCurrentLevel == 5) && (D_80177D08 < 0.0f)) { + if ((gCurrentLevel == LEVEL_SECTOR_Y) && (D_80177D08 < 0.0f)) { obj2F4->unk_0E8.z -= D_80177D08; } } @@ -3020,7 +3022,7 @@ void func_80072594(Object_2F4* obj2F4) { if ((obj2F4->unk_0D0 == 1) && (obj2F4->unk_110 < 0.5f) && (obj2F4->unk_0B4 != 0x30) && (obj2F4->unk_0B4 != 0x31) && (obj2F4->unk_0B4 != 0x32)) { obj2F4->unk_0D0 = 0; - if (gCurrentLevel == 1) { + if (gCurrentLevel == LEVEL_METEO) { func_80019218(0x2902107D, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { func_80019218(0x29121007, &obj2F4->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); @@ -3090,7 +3092,7 @@ void func_80072594(Object_2F4* obj2F4) { break; case 0x6: obj2F4->unk_0B6++; - if (gCurrentLevel == 7) { + if (gCurrentLevel == LEVEL_SOLAR) { if (obj2F4->unk_0B6 >= Animation_GetFrameCount(&D_600636C)) { obj2F4->unk_0B6 = 0; } @@ -3145,7 +3147,7 @@ void func_80072594(Object_2F4* obj2F4) { Matrix_MultVec3fNoTranslate(gCalcMatrix, &D_800D1290, &sp90); if ((obj2F4->obj.pos.y + sp90.y) > -30.0f) { for (sp74 = 0; sp74 < 7; sp74++) { - obj8C = func_8007783C(OBJECT_394); + obj8C = func_8007783C(OBJ_8C_394); if (obj8C != NULL) { obj8C->unk_78 = obj8C->unk_7A = 12; obj8C->obj.status = 2; @@ -3175,7 +3177,7 @@ void func_80072594(Object_2F4* obj2F4) { break; } if ((fabsf(obj2F4->unk_114) > 10.0f) && !(gFrameCount & 1)) { - obj8C = func_8007783C(OBJECT_394); + obj8C = func_8007783C(OBJ_8C_394); if (obj8C != NULL) { Matrix_RotateZ(gCalcMatrix, obj2F4->unk_0F4.z * M_DTOR, 0); Matrix_MultVec3fNoTranslate(gCalcMatrix, &D_800D1290, &sp90); @@ -3199,7 +3201,7 @@ void func_80072594(Object_2F4* obj2F4) { } } if (!(gFrameCount & 3)) { - obj8C = func_8007783C(OBJECT_394); + obj8C = func_8007783C(OBJ_8C_394); if (obj8C != NULL) { obj8C->unk_78 = obj8C->unk_7A = 0xB; obj8C->obj.status = 2; @@ -3226,7 +3228,7 @@ void func_80072594(Object_2F4* obj2F4) { case 0x51: Math_SmoothStepToF(&obj2F4->unk_150, 1.0f, 0.1f, 0.1f, 0.001f); if (obj2F4->unk_150 > 0.5f) { - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_601B4C4); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_601B4C4); } if (obj2F4->unk_046 == 0) { obj2F4->unk_154 += 4.0f; @@ -3297,11 +3299,11 @@ void func_80072594(Object_2F4* obj2F4) { } break; } - if (D_80177880 == 1) { - D_80177F24[obj2F4->unk_040] = obj2F4->obj.pos.x; - D_8017802C[obj2F4->unk_040] = obj2F4->obj.pos.z; - D_80178134[obj2F4->unk_040] = Math_ModF(obj2F4->unk_0F4.y, 360.0f) + 180.0f; - D_80178238[obj2F4->unk_040 + 1] = 1; + if (gAllRangeMode == 1) { + 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; + D_80178238[obj2F4->index + 1] = 1; } } } @@ -3456,7 +3458,7 @@ void func_80074FF0(Object_2F4* obj2F4) { func_8005B388(obj2F4); break; case 0x2B: - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { gSPDisplayList(gMasterDisp++, D_40018A0); } else { gSPDisplayList(gMasterDisp++, D_4007870); @@ -3695,21 +3697,21 @@ void func_800763A4(Object_2F4* obj2F4) { if (obj2F4->unk_0BE == 1) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); func_80066254(obj2F4); - if (D_80177880 == 1) { - D_80177F24[obj2F4->unk_040] = obj2F4->obj.pos.x; - D_8017802C[obj2F4->unk_040] = obj2F4->obj.pos.z; - D_80178134[obj2F4->unk_040] = 1001.0f; + if (gAllRangeMode == 1) { + D_80177F24[obj2F4->index] = obj2F4->obj.pos.x; + D_8017802C[obj2F4->index] = obj2F4->obj.pos.z; + D_80178134[obj2F4->index] = 1001.0f; } return; } } else { - if ((gLevelType == 0) || (gCurrentLevel == 0x11)) { + if ((gLevelType == LEVELTYPE_GROUND) || (gCurrentLevel == LEVEL_BOLSE)) { obj2F4->unk_10C = 0.4f; } switch (obj2F4->unk_04C) { case 0: case 1: - if (obj2F4->unk_040 & 1) { + if (obj2F4->index & 1) { obj2F4->obj.rot.z -= 8.0f; } else { obj2F4->obj.rot.z += 8.0f; @@ -3745,7 +3747,7 @@ void func_800763A4(Object_2F4* obj2F4) { 0) { func_8007D2C8(obj2F4->obj.pos.x, obj2F4->obj.pos.y + 20.0f, obj2F4->obj.pos.z, obj2F4->unk_110 * 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, 0x14); + obj2F4->obj.pos.z - obj2F4->unk_0E8.z, 0.0f, 0.0f, 0.0f, obj2F4->unk_110 * 4.0f, 20); func_80062C38(obj2F4->obj.pos.x, obj2F4->obj.pos.z); obj2F4->unk_0BE = 2; func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); @@ -3755,18 +3757,19 @@ void func_800763A4(Object_2F4* obj2F4) { sp4C.x = obj2F4->unk_0E8.x; sp4C.y = obj2F4->unk_0E8.y; sp4C.z = obj2F4->unk_0E8.z; - sp60 = func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &sp4C, 0); + 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 == 0) && (sp60 != 999) && - (D_80161A88 != 2) && ((obj2F4->unk_0E8.z < -20.0f) || (obj2F4->unk_0E8.z > 0.0f))) { - if (gCurrentLevel == 0xE) { + if ((Rand_ZeroOne() < 0.5f) && (obj2F4->unk_04C < 3) && (gLevelType == LEVELTYPE_GROUND) && + (sp60 != 999) && (D_80161A88 != 2) && + ((obj2F4->unk_0E8.z < -20.0f) || (obj2F4->unk_0E8.z > 0.0f))) { + if (gCurrentLevel == LEVEL_FORTUNA) { func_8006BF7C(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z - obj2F4->unk_0E8.z); func_80062C38(obj2F4->obj.pos.x, obj2F4->obj.pos.z); } obj2F4->obj.pos.y -= obj2F4->unk_0E8.y; obj2F4->unk_0E8.y = Rand_ZeroOne() * 10.0f; obj2F4->unk_04C = 3; - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { 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); } @@ -3788,7 +3791,7 @@ void func_800763A4(Object_2F4* obj2F4) { } } } else { - if ((obj2F4->obj.pos.y < (D_80177940 + 30.0f)) && (gLevelType == 0)) { + if ((obj2F4->obj.pos.y < (D_80177940 + 30.0f)) && (gLevelType == LEVELTYPE_GROUND)) { 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); @@ -3801,9 +3804,9 @@ void func_800763A4(Object_2F4* obj2F4) { } 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 == 0xE) || (gCurrentLevel == 0x13)) { + 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); - if (gCurrentLevel == 0xE) { + if (gCurrentLevel == LEVEL_FORTUNA) { func_80062C38(obj2F4->obj.pos.x, obj2F4->obj.pos.z); } } @@ -3811,7 +3814,7 @@ 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 (D_80177880 == 1) { + if (gAllRangeMode == 1) { 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) { @@ -3820,7 +3823,7 @@ void func_800763A4(Object_2F4* obj2F4) { } for (var_s0 = 0; var_s0 < 4; var_s0++) { if (Rand_ZeroOne() < 0.7f) { - if (gCurrentLevel == 0xE) { + if (gCurrentLevel == LEVEL_FORTUNA) { func_800A69F8(4, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z); } else { func_800794CC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.0f); @@ -3842,10 +3845,10 @@ void func_800763A4(Object_2F4* obj2F4) { } } if ((obj2F4->unk_0D0 != 0) || (obj2F4->unk_0BC == 0) || ((obj2F4->unk_044 != 0) && (obj2F4->obj.id != 0xC5))) { - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { for (var_s0 = 0; var_s0 < 4; var_s0++) { if (Rand_ZeroOne() < 0.7f) { - if (gCurrentLevel == 0xE) { + if (gCurrentLevel == LEVEL_FORTUNA) { func_800A69F8(4, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z); } else { func_800794CC(obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1.0f); @@ -3873,10 +3876,10 @@ void func_800763A4(Object_2F4* obj2F4) { } } } - if (D_80177880 == 1) { - D_80177F24[obj2F4->unk_040] = obj2F4->obj.pos.x; - D_8017802C[obj2F4->unk_040] = obj2F4->obj.pos.z; - D_80178134[obj2F4->unk_040] = obj2F4->unk_0F4.y + 180.0f; + if (gAllRangeMode == 1) { + 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) { func_8002EE64(obj2F4); diff --git a/src/main/fox_A48A0.c b/src/main/fox_A48A0.c index 96e2ca63..d895690e 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, gChangedInput[D_801778A0].stick_x * M_DTOR, 1); - Matrix_RotateX(gGfxMatrix, gChangedInput[D_801778A0].stick_y * M_DTOR, 1); + Matrix_RotateY(gGfxMatrix, gControllerPress[D_801778A0].stick_x * M_DTOR, 1); + Matrix_RotateX(gGfxMatrix, gControllerPress[D_801778A0].stick_y * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); RCP_SetupDL_23(); Matrix_Pop(&gGfxMatrix); @@ -30,7 +30,7 @@ void func_800A3E00(void) { D_801779C0 = -10.0f; break; case 2: - if ((gChangedInput[0].button & START_BUTTON) || (gChangedInput[1].button & START_BUTTON)) { + if ((gControllerPress[0].button & START_BUTTON) || (gControllerPress[1].button & START_BUTTON)) { func_8001D638(0); D_80177868 = 3; D_80177898 = 0; diff --git a/src/main/fox_display.c b/src/main/fox_display.c index d2ff288a..770b562a 100644 --- a/src/main/fox_display.c +++ b/src/main/fox_display.c @@ -272,7 +272,7 @@ void func_80052884(Player* player) { Vec3f sp40 = { 0.0f, 40.0f, -70.0f }; Matrix_Push(&gGfxMatrix); - if (D_801778E8 == 0) { + if (!gVersusMode) { gSPDisplayList(gMasterDisp++, D_3000090); } else { gSPDisplayList(gMasterDisp++, D_300FB80); @@ -294,7 +294,7 @@ void func_80052884(Player* player) { Matrix_MultVec3f(gGfxMatrix, &sp58, &D_801613E0[1]); } Matrix_SetGfxMtx(&gMasterDisp); - if (D_801778E8 == 0) { + if (!gVersusMode) { if (player->unk_1A0 != 0) { RCP_SetupDL_64(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 64, 255, 64, 255); @@ -323,7 +323,7 @@ void func_80052B80(Player* player) { 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); - if (D_801778E8 != 0) { + if (gVersusMode) { RCP_SetupDL_40(); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); gSPDisplayList(gMasterDisp++, D_301FD20); @@ -344,7 +344,7 @@ void func_80052D48(Player* player) { Matrix_Push(&gGfxMatrix); Matrix_Copy(gGfxMatrix, &D_80161418[player->unk_1C4]); - if (D_801778E8 != 0) { + if (gVersusMode) { RCP_SetupDL_64(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); } else { @@ -354,7 +354,7 @@ void func_80052D48(Player* player) { } sp2C = player->unk_16C; if (sp2C > 0.2f) { - if (D_801778E8 == 0) { + if (!gVersusMode) { sp2C *= 1.1f; } if (gFrameCount & 1) { @@ -362,13 +362,13 @@ void func_80052D48(Player* player) { } Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, 20.0f, 30.0f, -10.0f, 1); - if (D_801778E8 == 0) { + if (!gVersusMode) { Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); } Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); - if (D_801778E8 == 0) { + if (!gVersusMode) { gSPDisplayList(gMasterDisp++, D_30066B0); } else { gSPDisplayList(gMasterDisp++, D_301B6E0); @@ -377,7 +377,7 @@ void func_80052D48(Player* player) { } sp2C = player->unk_170; if (sp2C > 0.2f) { - if (D_801778E8 == 0) { + if (!gVersusMode) { sp2C *= 1.1f; } if (gFrameCount & 1) { @@ -385,13 +385,13 @@ void func_80052D48(Player* player) { } Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, -20.0f, 30.0f, -10.0f, 1); - if (D_801778E8 == 0) { + if (!gVersusMode) { Matrix_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1); } Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); - if (D_801778E8 == 0) { + if (!gVersusMode) { gSPDisplayList(gMasterDisp++, D_30066B0); } else { gSPDisplayList(gMasterDisp++, D_301B6E0); @@ -417,10 +417,10 @@ bool func_800531A4(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* wi } switch (limbIndex) { case 13: - if (wings->rightState == 0) { + if (wings->rightState == WINGSTATE_NONE) { *gfxPtr = NULL; } - if (wings->rightState == 1) { + if (wings->rightState == WINGSTATE_BROKEN) { *gfxPtr = D_3015120; } if ((D_800CA22C != 0) && (D_80177D40[0] & 1)) { @@ -449,10 +449,10 @@ bool func_800531A4(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* wi } break; case 12: - if (wings->rightState == 0) { + if (wings->rightState == WINGSTATE_NONE) { // should be leftState? *gfxPtr = NULL; } - if (wings->leftState == 1) { + if (wings->leftState == WINGSTATE_BROKEN) { *gfxPtr = D_3014BF0; } if ((D_800CA22C != 0) && (D_80177D58[0] & 1)) { @@ -607,7 +607,7 @@ void func_80053C38(Player* player, s32 arg1) { sp4C.z = 2400.0f + sp48; Matrix_MultVec3f(gGfxMatrix, &sp4C, &D_801613E0[1]); } - if ((player->unk_238 != 0) && (D_80177880 == 0) && + if ((player->unk_238 != 0) && (gAllRangeMode == 0) && (fabsf((player->unk_138 + D_80177D20) - player->unk_040.z) < 10.0f)) { if (arg1 == 0) { D_800CA228 = 1; @@ -619,18 +619,20 @@ void func_80053C38(Player* player, s32 arg1) { Matrix_Pop(&gGfxMatrix); } } else { - if (D_801778E8 != 0) { - if ((player->wings.rightState == 2) && (player->wings.leftState == 2)) { + if (gVersusMode) { + if ((player->wings.rightState == WINGSTATE_INTACT) && (player->wings.leftState == WINGSTATE_INTACT)) { gSPDisplayList(gMasterDisp++, D_300EE80); - } else if ((player->wings.rightState <= 1) && (player->wings.leftState == 2)) { + } else if ((player->wings.rightState <= WINGSTATE_BROKEN) && + (player->wings.leftState == WINGSTATE_INTACT)) { gSPDisplayList(gMasterDisp++, D_3010A90); - } else if ((player->wings.rightState == 2) && (player->wings.leftState <= 1)) { + } else if ((player->wings.rightState == WINGSTATE_INTACT) && + (player->wings.leftState <= WINGSTATE_BROKEN)) { gSPDisplayList(gMasterDisp++, D_3011470); } else { gSPDisplayList(gMasterDisp++, D_300D550); } } else { - if ((gLevelType == 1) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gLevelType == LEVELTYPE_SPACE) || (gCurrentLevel == LEVEL_BOLSE)) { player->wings.unk_28 = player->wings.unk_04 = player->wings.unk_08 = player->wings.unk_0C = player->wings.unk_10 = 0.0f; } @@ -722,7 +724,7 @@ void func_80054300(Player* player) { if (gCurrentLevel == LEVEL_MACBETH) { RCP_SetupDL(&gMasterDisp, 0x41); } - if (D_801778E8 == 0) { + if (!gVersusMode) { gSPDisplayList(gMasterDisp++, D_3008100); } else { gSPDisplayList(gMasterDisp++, D_301E570); @@ -865,7 +867,7 @@ void func_80054E80(Player* player) { if (D_801779C8[player->unk_1C4] > 10) { RCP_SetupDL(&gMasterDisp, 0x43); Matrix_Copy(gCalcMatrix, &D_80161418[player->unk_1C4]); - if ((player->unk_238 != 0) && (D_80177880 == 0)) { + if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94); } else { Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); @@ -875,14 +877,14 @@ void func_80054E80(Player* player) { 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) && (D_80177880 == 0)) { + if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { Matrix_Scale(gGfxMatrix, 3.0f, 3.0f, 3.0f, 1); } else { Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); } RCP_SetupDL(&gMasterDisp, 0x31); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); - if (D_801778E8 != 0) { + if (gVersusMode) { switch (player->unk_1C4) { case 0: gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); @@ -907,7 +909,7 @@ void func_80054E80(Player* player) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_101C2E0); Matrix_Pop(&gGfxMatrix); - if ((player->unk_238 != 0) && (D_80177880 == 0)) { + if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { Matrix_Scale(gGfxMatrix, 0.3f, 0.3f, 0.3f, 1); } Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 1.0f, 1); @@ -932,7 +934,7 @@ 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) && (D_80177880 == 0)) { + if ((player->unk_238 != 0) && (gAllRangeMode == 0)) { Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94); } else { Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); @@ -987,7 +989,7 @@ void func_80055788(Player* player) { Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); RCP_SetupDL(&gMasterDisp, 0x31); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); - if (D_801778E8 != 0) { + if (gVersusMode) { switch (player->unk_1C4) { case 0: gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); @@ -1108,7 +1110,7 @@ void func_80055E98(Player* player) { } RCP_SetupDL_64(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 100); - if (player->wings.leftState == 2) { + if (player->wings.leftState == WINGSTATE_INTACT) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, sp5C, sp58, -100.0f, 1); Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1); @@ -1121,7 +1123,7 @@ void func_80055E98(Player* player) { gSPDisplayList(gMasterDisp++, D_102A8A0); Matrix_Pop(&gGfxMatrix); } - if (player->wings.rightState == 2) { + if (player->wings.rightState == WINGSTATE_INTACT) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, -sp5C, sp58, -100.0f, 1); Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1); @@ -1139,7 +1141,7 @@ 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 == 0)) { + (gCurrentLevel != LEVEL_TRAINING) && (gLevelType == LEVELTYPE_GROUND)) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); Matrix_RotateY(gGfxMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); @@ -1187,7 +1189,7 @@ void func_800564C0(Player* player, s32 arg1) { } Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078 + player->unk_18C + 30.0f, player->unk_138 + player->unk_144, 1); - if (D_801778E8 != 0) { + if (gVersusMode) { for (i = 0; i < gCamCount; i++) { if (D_80177B00[player->unk_1C4][i] != 0) { Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); @@ -1208,7 +1210,7 @@ void func_800564C0(Player* player, s32 arg1) { Matrix_RotateX(gGfxMatrix, (player->unk_0E4 + player->unk_134) * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, (player->unk_0EC + player->unk_0F0 + player->unk_134) * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, (player->unk_114 + player->unk_0E8 + 180.0f) * M_DTOR, 1); - if (D_801778E8 != 0) { + if (gVersusMode) { Matrix_RotateX(gGfxMatrix, player->unk_000 * M_DTOR, 1); } Matrix_RotateZ(gGfxMatrix, (-player->unk_12C - player->unk_130) * M_DTOR, 1); @@ -1231,7 +1233,7 @@ void func_800564C0(Player* player, s32 arg1) { 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); - if (D_801778E8 != 0) { + if (gVersusMode) { for (i = 0; i < gCamCount; i++) { if (D_80177B00[player->unk_1C4][i] != 0) { Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); @@ -1258,13 +1260,13 @@ void func_800564C0(Player* player, s32 arg1) { } switch (player->unk_200) { case 0: - if (D_801778E8 == 0) { + if (!gVersusMode) { if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_TITANIA)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, 1005); } else { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } - } else if (D_8017789C == 2) { + } else if (gVersusStage == 2) { RCP_SetupDL_29(128, 128, 255, 255, gFogNear, gFogFar); } else { RCP_SetupDL_29(0, 0, 0, 255, gFogNear, gFogFar); @@ -1317,7 +1319,7 @@ void func_80056E2C(Player* player) { sp34 = sp30 = 0.0f; } Matrix_Push(&gGfxMatrix); - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { if (player->unk_1CC == 3) { Matrix_Translate(gGfxMatrix, player->unk_064, player->unk_068 + 2.0f, player->unk_06C, 1); } else { @@ -1488,8 +1490,8 @@ void func_800578C4(Player* player) { sp3C = 360.0f - sp3C; Math_SmoothStepToAngle(&player->wings.unk_30, sp38, 0.2f, 6.0f, 0.0f); Math_SmoothStepToAngle(&player->wings.unk_34, sp3C, 0.2f, 6.0f, 0.0f); - Math_SmoothStepToF(&D_800CA380, gChangedInput->stick_y * 0.75f, 0.1f, 2.0f, 0.0f); - Math_SmoothStepToF(&D_800CA384, gChangedInput->stick_x * 3.0f, 0.1f, 5.0f, 0.0f); + Math_SmoothStepToF(&D_800CA380, gControllerPress->stick_y * 0.75f, 0.1f, 2.0f, 0.0f); + Math_SmoothStepToF(&D_800CA384, gControllerPress->stick_x * 3.0f, 0.1f, 5.0f, 0.0f); Math_SmoothStepToF(&D_800CA388, D_800CA38C[D_800CA220], 0.1f, 10.0f, 0.0f); sp4C.z = D_800CA388; Matrix_RotateX(gCalcMatrix, (player->unk_0E8 + D_800CA380) * M_DTOR, 0); @@ -1533,7 +1535,7 @@ void func_80057D00(void) { func_800B73E0(player); Lights_SetOneLight(&gMasterDisp, gLight1x, gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG, gAmbientB); - if (D_80177880 == 0) { + if (gAllRangeMode == 0) { 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; @@ -1583,7 +1585,7 @@ 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 == 0) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gLevelType == LEVELTYPE_GROUND) || (gCurrentLevel == LEVEL_BOLSE)) { if ((gCurrentLevel == LEVEL_TITANIA) && ((gPlayer[0].unk_1C8 != 2) || (gPlayer[0].unk_19C != 0))) { Matrix_Push(&gGfxMatrix); Matrix_Translate(gGfxMatrix, 0.0f, D_8017847C, 0.0f, 1); @@ -1690,7 +1692,7 @@ void func_80057D00(void) { } } } - if ((D_80177880 == 2) && (gPlayer[0].unk_1C8 == 3)) { + if ((gAllRangeMode == 2) && (gPlayer[0].unk_1C8 == 3)) { func_E9F1D0_801A6164(gPlayer); } func_80040954(); diff --git a/src/main/fox_edata_1C.c b/src/main/fox_edata_1C.c index 7bbcb9bf..16c21e9e 100644 --- a/src/main/fox_edata_1C.c +++ b/src/main/fox_edata_1C.c @@ -1,270 +1,527 @@ #include "global.h" -// these are overlay functions. They will need to be replaced with their proper overlay names +// these are overlay functions. They will need to be replaced with their proper overlay names given below them. void func_8018756C(Object*); +// func_E08400_8018756C void func_801875A4(Object*); +// func_DF4260_801875A4 void func_80187650(Object*); +// func_E08400_80187650 void func_801877C4(Object*); +// func_E08400_801877C4 void func_80187944(Object*); +// func_E16C50_80187944 void func_8018795C(Object*); +// func_E08400_8018795C void func_801880E4(Object*); +// func_E9F1D0_801880E4 void func_80188344(Object*); +// func_E08400_80188344 void func_80188448(Object*); +// func_E9F1D0_80188448 void func_80188528(Object*); +// func_E9F1D0_80188528 void func_80188660(Object*); +// func_E9F1D0_80188660 void func_801887D0(Object*); +// func_E08400_801887D0 void func_80188AD0(Object*); +// func_E51970_80188AD0 void func_80188CAC(Object*); +// func_E08400_80188CAC void func_80188F60(Object*); +// func_E6A810_80188F60 void func_80188FA8(Object*); +// func_E6A810_80188FA8 void func_80188FAC(Object*); +// func_E08400_80188FAC void func_80188FE4(Object*); +// func_E51970_80188FE4 void func_80189058(Object*); +// func_DF4260_80189058 void func_80189114(Object*); +// func_E08400_80189114 void func_80189194(Object*); +// func_E6A810_80189194 void func_8018933C(Object*); +// func_E9F1D0_8018933C void func_801893B8(Object*); +// func_E9F1D0_801893B8 void func_80189470(Object*); +// func_E9F1D0_80189470 void func_801895B8(Object*); +// func_E6A810_801895B8 void func_80189724(Object*); +// func_E9F1D0_80189724 void func_8018978C(Object*); +// func_E08400_8018978C void func_80189AFC(Object*); +// func_E6A810_80189AFC void func_80189B70(Object*); +// func_E9F1D0_80189B70 void func_80189CC8(Object*); +// func_E6A810_80189CC8 void func_8018A1C0(Object*); +// func_E6A810_8018A1C0 void func_8018A544(Object*); +// func_E6A810_8018A544 void func_8018AA74(Object*); +// func_DF4260_8018AA74 void func_8018AABC(Object*); +// func_E6A810_8018AABC void func_8018AB44(Object*); +// func_E6A810_8018AB44 void func_8018AED0(Object*); +// func_DF4260_8018AED0 void func_8018B15C(Object*); +// func_DF4260_8018B15C void func_8018B268(Object*); +// func_E6A810_8018B268 void func_8018B418(Object*); +// func_DF4260_8018B418 void func_8018B58C(Object*); +// func_DF4260_8018B58C void func_8018B6AC(Object*); +// func_E6A810_8018B6AC void func_8018B8C0(Object*); +// func_E9F1D0_8018B8C0 void func_8018B9D0(Object*); +// func_E6A810_8018B9D0 void func_8018BAAC(Object*); +// func_DF4260_8018BAAC void func_8018BACC(Object*); +// func_E08400_8018BACC void func_8018BBA4(Object*); +// func_DF4260_8018BBA4 void func_8018BBF8(Object*); +// func_DF4260_8018BBF8 void func_8018BD7C(Object*); +// func_DF4260_8018BD7C void func_8018BE84(Object*); +// func_E6A810_8018BE84 void func_8018C19C(Object*); +// func_DF4260_8018C19C void func_8018C54C(Object*); +// func_E16C50_8018C54C void func_8018C8A8(Object*); +// func_E6A810_8018C8A8 void func_8018CAD4(Object*); +// func_E9F1D0_8018CAD4 void func_8018CF98(Object*); +// func_E9F1D0_8018CF98 void func_8018D9EC(Object*); +// func_E08400_8018D9EC void func_8018DA6C(Object*); +// func_E08400_8018DA6C void func_8018DAEC(Object*); +// func_E08400_8018DAEC void func_8018DB6C(Object*); +// func_E08400_8018DB6C void func_8018DBEC(Object*); +// func_E08400_8018DBEC void func_8018DBF0(Object*); +// func_E9F1D0_8018DBF0 void func_8018DCE4(Object*); +// func_E08400_8018DCE4 void func_8018DDAC(Object*); +// func_DF4260_8018DDAC void func_8018DE14(Object*); +// func_E08400_8018DE14 void func_8018E290(Object*); +// func_DF4260_8018E290 void func_8018E2D8(Object*); +// func_E6A810_8018E2D8 void func_8018E54C(Object*); +// func_E6A810_8018E54C void func_8018E5B4(Object*); +// func_E6A810_8018E5B4 void func_8018E5F8(Object*); +// func_E6A810_8018E5F8 void func_8018E76C(Object*); +// func_DF4260_8018E76C void func_8018ECAC(Object*); +// func_DF4260_8018ECAC void func_8018ED78(Object*); +// func_DF4260_8018ED78 void func_8018EE84(Object*); +// func_DF4260_8018EE84 void func_8018EF14(Object*); +// func_E6A810_8018EF14 void func_8018EF90(Object*); +// func_DF4260_8018EF90 void func_8018F038(Object*); +// func_E6A810_8018F038 void func_8018F044(Object*); +// func_DF4260_8018F044 void func_8018F31C(Object*); +// func_DF4260_8018F31C void func_8018F330(Object*); +// func_E08400_8018F330 void func_8018F4D8(Object*); +// func_E6A810_8018F4D8 void func_8018F884(Object*); +// func_E08400_8018F884 void func_8018F8B8(Object*); +// func_E6A810_8018F8B8 void func_8018FE38(Object*); +// func_E08400_8018FE38 void func_8018FF20(Object*); +// func_E08400_8018FF20 void func_8018FF84(Object*); +// func_E08400_8018FF84 void func_80190020(Object*); +// func_E08400_80190020 void func_80190078(Object*); -void func_80190430(Object*); +// func_E08400_80190078 void func_801904CC(Object*); +// func_E16C50_801904CC void func_80190A00(Object*); -void func_80190F08(Object*); +// func_E16C50_80190A00 void func_80191010(Object*); +// func_E16C50_80191010 void func_80191054(Object*); +// func_E51970_80191054 void func_80191180(Object*); +// func_E51970_80191180 void func_801912FC(Object*); +// func_E51970_801912FC void func_801914C4(Object*); +// func_E16C50_801914C4 void func_80191680(Object*); +// func_E16C50_80191680 void func_80191AFC(Object*); +// func_E51970_80191AFC void func_80191B4C(Object*); +// func_E16C50_80191B4C void func_80191BC4(Object*); +// func_E16C50_80191BC4 void func_80191DB0(Object*); +// func_E16C50_80191DB0 void func_80191FFC(Object*); +// func_E16C50_80191FFC void func_80192094(Object*); +// func_E16C50_80192094 void func_801922DC(Object*); +// func_DF4260_801922DC void func_80192358(Object*); +// func_DF4260_80192358 void func_801923C0(Object*); +// func_DF4260_801923C0 void func_8019243C(Object*); -void func_801924A8(Object*); +// func_DF4260_8019243C void func_80192518(Object*); +// func_DF4260_80192518 void func_80192834(Object*); +// func_E16C50_80192834 void func_801928C8(Object*); +// func_E9F1D0_801928C8 void func_80192984(Object*); +// func_E51970_80192984 void func_80192A68(Object*); +// func_E51970_80192A68 void func_80192C18(Object*); +// func_E16C50_80192C18 void func_80192CD4(Object*); +// func_DF4260_80192CD4 void func_80192E2C(Object*); +// func_DF4260_80192E2C void func_80192E64(Object*); +// func_E16C50_80192E64 void func_80192E94(Object*); +// func_E9F1D0_80192E94 void func_80192EB0(Object*); +// func_DF4260_80192EB0 void func_80193240(Object*); +// func_E16C50_80193240 void func_80193244(Object*); +// func_E9F1D0_80193244 void func_80193380(Object*); +// func_E9F1D0_80193380 void func_801933DC(Object*); +// func_DF4260_801933DC void func_80193434(Object*); +// func_E08400_80193434 void func_801934D0(Object*); +// func_DF4260_801934D0 void func_8019350C(Object*); +// func_E9F1D0_8019350C void func_80193540(Object*); +// func_DF4260_80193540 void func_8019356C(Object*); +// func_E9F1D0_8019356C void func_801935D4(Object*); +// func_E9F1D0_801935D4 void func_80193718(Object*); +// func_E51970_80193718 void func_80193B1C(Object*); +// func_E51970_80193B1C void func_80194398(Object*); +// func_DF4260_80194398 void func_801946C4(Object*); +// func_E51970_801946C4 void func_801949DC(Object*); +// func_E16C50_801949DC void func_80194A84(Object*); +// func_E16C50_80194A84 void func_80196210(Object*); +// func_E9F1D0_80196210 void func_80196288(Object*); +// func_E9F1D0_80196288 void func_801968F4(Object*); +// func_E51970_801968F4 void func_80197A94(Object*); +// func_E6A810_80197A94 void func_80197C64(Object*); +// func_E9F1D0_80197C64 void func_80197CB8(Object*); +// func_E9F1D0_80197CB8 void func_801982A8(Object*); +// func_E6A810_801982A8 void func_801985E4(Object*); +// func_DF4260_801985E4 void func_80198968(Object*); +// func_DF4260_80198968 void func_8019969C(Object*); +// func_E16C50_8019969C void func_8019983C(Object*); +// func_E16C50_8019983C void func_80199A28(Object*); +// func_E16C50_80199A28 void func_80199E24(Object*); +// func_E16C50_80199E24 void func_80199F10(Object*); +// func_E16C50_80199F10 void func_8019A1FC(Object*); +// func_E16C50_8019A1FC void func_8019A5D4(Object*); +// func_E16C50_8019A5D4 void func_8019ACCC(Object*); +// func_E16C50_8019ACCC void func_8019B548(Object*); +// func_E16C50_8019B548 void func_8019B7DC(Object*); +// func_E16C50_8019B7DC void func_8019B854(Object*); +// func_E16C50_8019B854 void func_8019BDE0(Object*); +// func_E16C50_8019BDE0 void func_8019BE48(Object*); +// func_E16C50_8019BE48 void func_8019C1CC(Object*); +// func_E16C50_8019C1CC void func_8019C454(Object*); +// func_E16C50_8019C454 void func_8019C778(Object*); +// func_E6A810_8019C778 void func_8019C83C(Object*); +// func_E16C50_8019C83C void func_8019C888(Object*); +// func_E9F1D0_8019C888 void func_8019CBEC(Object*); +// func_E16C50_8019CBEC void func_8019CE58(Object*); +// func_E16C50_8019CE58 void func_8019CE88(Object*); +// func_E6A810_8019CE88 void func_8019D15C(Object*); +// func_E16C50_8019D15C void func_8019D3C4(Object*); +// func_E16C50_8019D3C4 void func_8019D700(Object*); +// func_E6A810_8019D700 void func_8019E234(Object*); +// func_E51970_8019E234 void func_8019E2C4(Object*); +// func_E9F1D0_8019E2C4 void func_8019E3A8(Object*); +// func_E51970_8019E3A8 void func_8019E410(Object*); +// func_E6A810_8019E410 void func_8019E454(Object*); +// func_E51970_8019E454 void func_8019E98C(Object*); +// func_E51970_8019E98C void func_8019EA60(Object*); +// func_E6A810_8019EA60 void func_8019EA7C(Object*); +// func_E16C50_8019EA7C void func_8019EE68(Object*); +// func_E6A810_8019EE68 void func_8019F20C(Object*); +// func_E16C50_8019F20C void func_8019F7AC(Object*); +// func_E16C50_8019F7AC void func_8019FF9C(Object*); +// func_E6A810_8019FF9C void func_801A003C(Object*); +// func_E16C50_801A003C void func_801A0120(Object*); +// func_E16C50_801A0120 void func_801A0AF0(Object*); +// func_E16C50_801A0AF0 void func_801A0BD8(Object*); +// func_E6A810_801A0BD8 void func_801A12C4(Object*); +// func_E6A810_801A12C4 void func_801A23AC(Object*); +// func_E6A810_801A23AC void func_801A2A78(Object*); +// func_E6A810_801A2A78 void func_801A2B24(Object*); +// func_E6A810_801A2B24 void func_801A2DD8(Object*); +// func_E6A810_801A2DD8 void func_801A3240(Object*); +// func_E6A810_801A3240 void func_801A3E98(Object*); +// func_E6A810_801A3E98 void func_801A43BC(Object*); +// func_E6A810_801A43BC void func_801A46A0(Object*); +// func_E6A810_801A46A0 void func_801A4A64(Object*); +// func_E6A810_801A4A64 void func_801A4B24(Object*); +// func_E6A810_801A4B24 void func_801A4E44(Object*); +// func_E9F1D0_801A4E44 void func_801A52B8(Object*); +// func_E9F1D0_801A52B8 void func_801A54E8(Object*); +// func_E6A810_801A54E8 void func_801A57D0(Object*); +// func_E6A810_801A57D0 void func_801A5AF0(Object*); +// func_E6A810_801A5AF0 void func_801A5B3C(Object*); +// func_E16C50_801A5B3C void func_801A5B4C(Object*); +// func_E6A810_801A5B4C void func_801A5D68(Object*); +// func_E6A810_801A5D68 void func_801A5E54(Object*); +// func_E6A810_801A5E54 void func_801A5F90(Object*); +// func_E6A810_801A5F90 void func_801A5FD0(Object*); +// func_E6A810_801A5FD0 void func_801A6100(Object*); +// func_E6A810_801A6100 void func_801A6144(Object*); +// func_E6A810_801A6144 void func_801A6540(Object*); +// func_E6A810_801A6540 void func_801A6608(Object*); +// func_E6A810_801A6608 void func_801A67C8(Object*); +// func_E6A810_801A67C8 void func_801A68EC(Object*); +// func_E6A810_801A68EC void func_801A71B8(Object*); +// func_E16C50_801A71B8 void func_801A7E7C(Object*); +// func_E6A810_801A7E7C void func_801AC294(Object*); +// func_E6A810_801AC294 void func_801AC438(Object*); +// func_E6A810_801AC438 void func_801AC918(Object*); +// func_E16C50_801AC918 void func_801AD6C0(Object*); +// func_E16C50_801AD6C0 void func_801AD6F0(Object*); +// func_E6A810_801AD6F0 void func_801ADAC8(Object*); +// func_E6A810_801ADAC8 void func_801ADD68(Object*); +// func_E6A810_801ADD68 void func_801AE168(Object*); +// func_E16C50_801AE168 void func_801AE2C0(Object*); +// func_E6A810_801AE2C0 void func_801AE3D8(Object*); +// func_E16C50_801AE3D8 void func_801AE87C(Object*); +// func_E6A810_801AE87C void func_801AEAA0(Object*); +// func_E6A810_801AEAA0 void func_801AEB44(Object*); +// func_E16C50_801AEB44 void func_801AEC04(Object*); +// func_E6A810_801AEC04 void func_801AEEFC(Object*); +// func_E6A810_801AEEFC void func_801AFA5C(Object*); +// func_E16C50_801AFA5C void func_801B099C(Object*); +// func_E16C50_801B099C void func_801B0B60(Object*); +// func_E16C50_801B0B60 void func_801B0EC0(Object*); +// func_E16C50_801B0EC0 void func_801B134C(Object*); +// func_E16C50_801B134C void func_801B4D84(Object*); +// func_E16C50_801B4D84 void func_801B504C(Object*); +// func_E16C50_801B504C void func_801B50E8(Object*); +// func_E16C50_801B50E8 void func_801B619C(Object*); +// func_E16C50_801B619C void func_801B638C(Object*); +// func_E16C50_801B638C void func_801B6FF8(Object*); +// func_E16C50_801B6FF8 void func_801B7A24(Object*); +// func_E16C50_801B7A24 void func_801B7C78(Object*); +// func_E16C50_801B7C78 void func_801B90DC(Object*); +// func_E16C50_801B90DC void func_801B91A4(Object*); +// func_E16C50_801B91A4 void func_801BA108(Object*); +// func_E16C50_801BA108 void func_801BA26C(Object*); +// func_E16C50_801BA26C void func_801BA4E4(Object*); +// func_E16C50_801BA4E4 void func_801BA6A4(Object*); +// func_E16C50_801BA6A4 void func_801BAD7C(Object*); +// func_E16C50_801BAD7C void func_801BADF8(Object*); +// func_E16C50_801BADF8 void func_801BB204(Object*); +// func_E16C50_801BB204 void func_801BB79C(Object*); +// func_E16C50_801BB79C void func_801BC930(Object*); +// func_E16C50_801BC930 void func_801BC9A0(Object*); +// func_E16C50_801BC9A0 void func_801BD264(Object*); +// func_E16C50_801BD264 void func_801BD54C(Object*); +// func_E16C50_801BD54C void func_801BDE6C(Object*); +// func_E16C50_801BDE6C void func_801BE1FC(Object*); +// func_E16C50_801BE1FC void func_801BE3F8(Object*); +// func_E16C50_801BE3F8 void func_801BEB1C(Object*); +// func_E16C50_801BEB1C void func_801BEC50(Object*); +// func_E16C50_801BEC50 void func_801BEC5C(Object*); +// func_E16C50_801BEC5C void func_801BEC68(Object*); +// func_E16C50_801BEC68 void func_801BEC74(Object*); +// func_E16C50_801BEC74 f32 D_800CBE70[] = { 1.0f, 0.0f, 50.0f, 0.0f, 25.0f, 0.0f, 25.0f, @@ -335,406 +592,406 @@ f32 D_800CC0F0[] = { }; // clang-format off -ObjectStruct_1C D_800CC124[0x190] = { - /* OBJECT_80_0, */ {(void*) D_6015F00, 0, (ObjectFunc) NULL, D_603E3E0, 800.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_1, */ {(void*) D_602E9E0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_2, */ {(void*) D_601BEC0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_3, */ {(void*) D_602E7A0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_4, */ {(void*) D_60244A0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_5, */ {(void*) D_602E570, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_6, */ {(void*) D_60132B0, 0, (ObjectFunc) NULL, D_603DCA4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_7, */ {(void*) D_602E080, 0, (ObjectFunc) NULL, D_603DD40, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_8, */ {(void*) D_60164F0, 0, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_9, */ {(void*) D_6014500, 0, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_10, */ {(void*) D_602D5F0, 0, (ObjectFunc) NULL, D_603DDF0, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_11, */ {(void*) D_601A7D0, 0, (ObjectFunc) NULL, D_603DE8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_12, */ {(void*) D_6014B50, 0, (ObjectFunc) NULL, D_603DEF4, 500.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_13, */ {(void*) D_6016580, 0, (ObjectFunc) NULL, D_603DF8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_14, */ {(void*) D_601B560, 0, (ObjectFunc) func_80066EA8, D_603DFDC, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_15, */ {(void*) D_60361F0, 0, (ObjectFunc) func_80066EA8, D_603E014, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_16, */ {(void*) D_6018E80, 0, (ObjectFunc) func_80066EA8, D_603E030, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_17, */ {(void*) D_6035F10, 0, (ObjectFunc) func_80066EA8, D_603E09C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_18, */ {(void*) func_DF4260_8018753C, 1, (ObjectFunc) func_DF4260_80187530, D_603E98C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_19, */ {(void*) D_60153B0, 0, (ObjectFunc) NULL, D_603E118, 100.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_20, */ {(void*) D_601F5A0, 0, (ObjectFunc) NULL, D_603E14C, 500.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_21, */ {(void*) D_60137B0, 0, (ObjectFunc) NULL, D_603E1B4, 400.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_22, */ {(void*) D_6006A80, 0, (ObjectFunc) NULL, D_603E21C, 400.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_23, */ {(void*) D_6016270, 0, (ObjectFunc) NULL, D_603E4A0, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_24, */ {(void*) D_6010E00, 0, (ObjectFunc) NULL, D_603E9EC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_25, */ {(void*) D_6014670, 0, (ObjectFunc) NULL, D_603EA08, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_26, */ {(void*) D_6010A50, 0, (ObjectFunc) NULL, D_603EA74, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_27, */ {(void*) D_60143E0, 0, (ObjectFunc) NULL, D_603EAE0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_28, */ {(void*) D_6014A20, 0, (ObjectFunc) NULL, D_603EB0C, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_29, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60064FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_30, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006518, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_31, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006564, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_32, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60065B0, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_33, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60065FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_34, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006648, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_35, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006694, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_36, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60066E0_f32, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_37, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_600672C, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_38, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006778, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_39, */ {(void*) func_80059AEC, 1, (ObjectFunc) func_8006D350, D_800CBF34, 6000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_40, */ {(void*) func_80059F68, 1, (ObjectFunc) func_80066D5C, D_603E4A4, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_41, */ {(void*) func_80059FDC, 1, (ObjectFunc) func_80066EA8, D_603E4DC, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_42, */ {(void*) func_80059BBC, 1, (ObjectFunc) func_8006B95C, D_603E514, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_43, */ {(void*) D_6024AC0, 0, (ObjectFunc) NULL, D_602B9EC, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_44, */ {(void*) D_600F560, 0, (ObjectFunc) NULL, D_602BA20, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_45, */ {(void*) D_600EC90, 0, (ObjectFunc) NULL, D_602BAE4, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_46, */ {(void*) D_600E820, 0, (ObjectFunc) NULL, D_602BBD8, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_47, */ {(void*) D_601FCB0, 0, (ObjectFunc) NULL, D_602BC54, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_48, */ {(void*) func_800594F0, 1, (ObjectFunc) NULL, D_601B4E0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_49, */ {(void*) func_800595D0, 1, (ObjectFunc) NULL, D_601B4FC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_50, */ {(void*) D_6007410, 0, (ObjectFunc) NULL, D_601B518, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_51, */ {(void*) D_6006F50, 0, (ObjectFunc) NULL, D_601B584, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_52, */ {(void*) D_6005780, 0, (ObjectFunc) func_80193540, D_601B5F4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_53, */ {(void*) D_6003610, 0, (ObjectFunc) NULL, D_601B644, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_54, */ {(void*) D_6000E00, 0, (ObjectFunc) func_8006AA98, D_603E0EC, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_55, */ {(void*) D_6013B50, 0, (ObjectFunc) NULL, D_603E88C, 1000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_56, */ {(void*) func_8018F31C, 2, (ObjectFunc) func_8018F044, D_603E8A8, 1000.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_57, */ {(void*) func_8018F8B8, 1, (ObjectFunc) func_8018F4D8, D_6006BF0, 800.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_58, */ {(void*) D_700BE00, 0, (ObjectFunc) NULL, D_6006C44, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_59, */ {(void*) D_6024010, 0, (ObjectFunc) NULL, D_603626C, 300.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_60, */ {(void*) D_6027180, 0, (ObjectFunc) NULL, D_6036288, 400.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_61, */ {(void*) func_801A2A78, 1, (ObjectFunc) NULL, D_60362A4, 200.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_62, */ {(void*) D_60270E0, 0, (ObjectFunc) NULL, D_800CBF34, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_63, */ {(void*) D_6013960, 0, (ObjectFunc) NULL, D_6036894, 500.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_64, */ {(void*) D_600AF40, 0, (ObjectFunc) NULL, D_60368E0, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_65, */ {(void*) func_801A6608, 1, (ObjectFunc) NULL, D_6036724, 400.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_66, */ {(void*) D_601F1D0, 0, (ObjectFunc) NULL, D_60362D8, 2500.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_67, */ {(void*) D_60238F0, 0, (ObjectFunc) NULL, D_6036328, 2000.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_68, */ {(void*) D_601B7C0, 0, (ObjectFunc) NULL, D_60362F4, 2500.0f, 0, 0, 5, 0, 0.0f, 0 }, - /* OBJECT_80_69, */ {(void*) D_6030500, 0, (ObjectFunc) NULL, D_6036370, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_70, */ {(void*) D_602DAE0, 0, (ObjectFunc) NULL, D_603638C, 1900.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_71, */ {(void*) D_6027900, 0, (ObjectFunc) NULL, D_60363B8, 1900.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_72, */ {(void*) D_602DB80, 0, (ObjectFunc) NULL, D_60363E4, 1100.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_73, */ {(void*) D_6030630, 0, (ObjectFunc) NULL, D_6036410, 1100.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_74, */ {(void*) D_602DC20, 0, (ObjectFunc) NULL, D_603643C, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_75, */ {(void*) D_601B0D0, 0, (ObjectFunc) NULL, D_6036760, 3000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_76, */ {(void*) D_60075D0, 0, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_77, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_6036344, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_78, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_79, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_80, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_81, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_82, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_83, */ {(void*) func_801A3240, 1, (ObjectFunc) func_801A2DD8, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_84, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_85, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_86, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_87, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_88, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_89, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_90, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_91, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_92, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_93, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_94, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_95, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_96, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_97, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_98, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_99, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_100 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_101 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_102 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_103 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_104 */ {(void*) func_801A23AC, 1, (ObjectFunc) func_801A0BD8, D_6036594, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_105 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_6036204, 1300.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_106 */ {(void*) D_60097E0, 0, (ObjectFunc) NULL, D_6034478, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_107 */ {(void*) D_601D730, 0, (ObjectFunc) NULL, D_603450C, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_108 */ {(void*) D_60102C0, 0, (ObjectFunc) NULL, D_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_109 */ {(void*) D_60036A0, 0, (ObjectFunc) func_801A4E44, D_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_110 */ {(void*) D_6005360, 0, (ObjectFunc) NULL, D_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_111 */ {(void*) func_80074F90, 1, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_112 */ {(void*) D_600F6C0, 0, (ObjectFunc) func_801A52B8, D_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_113 */ {(void*) D_601B610, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_114 */ {(void*) D_601C6A0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_115 */ {(void*) D_60188D0, 0, (ObjectFunc) NULL, D_603486C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_116 */ {(void*) D_60034D0, 0, (ObjectFunc) NULL, D_60347D4, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_117 */ {(void*) D_60231C0, 0, (ObjectFunc) NULL, D_6030C60, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_118 */ {(void*) D_6011EE0, 0, (ObjectFunc) NULL, D_6030C7C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_119 */ {(void*) D_6015730, 0, (ObjectFunc) NULL, D_6030D74, 2000.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_80_120 */ {(void*) D_601DE60, 0, (ObjectFunc) NULL, D_6030DF8, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_121 */ {(void*) D_602B4C0, 0, (ObjectFunc) NULL, D_6030E14, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_122 */ {(void*) D_600EE10, 0, (ObjectFunc) NULL, D_6030E30, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_123 */ {(void*) D_60120F0, 0, (ObjectFunc) NULL, D_6030E4C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_124 */ {(void*) D_600EEF0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_125 */ {(void*) D_600BF80, 0, (ObjectFunc) NULL, D_6030E68, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_126 */ {(void*) func_801BE1FC, 1, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_127 */ {(void*) D_9005C80, 0, (ObjectFunc) func_801924A8, D_601B678, 1000.0f, 0, 0, 42, 0, 0.0f, 0 }, - /* OBJECT_80_128 */ {(void*) D_9003F50, 0, (ObjectFunc) NULL, D_601B6C4, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, - /* OBJECT_80_129 */ {(void*) D_900F060, 0, (ObjectFunc) NULL, D_601B710, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, - /* OBJECT_80_130 */ {(void*) D_900F1D0, 0, (ObjectFunc) NULL, D_601B75C, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, - /* OBJECT_80_131 */ {(void*) func_801935D4, 1, (ObjectFunc) func_8019356C, D_C038BD8, 500.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_132 */ {(void*) func_8019350C, 1, (ObjectFunc) func_80193380, D_C038A48, 500.0f, 0, 0, 41, 0, 0.0f, 0 }, - /* OBJECT_80_133 */ {(void*) D_60030F0, 0, (ObjectFunc) NULL, D_6009CC4, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_80_134 */ {(void*) D_6003000, 0, (ObjectFunc) NULL, D_C038BA4, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, - /* OBJECT_80_135 */ {(void*) D_6006890_Gfx, 0, (ObjectFunc) NULL, D_C038B40, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, - /* OBJECT_80_136 */ {(void*) D_6002990, 0, (ObjectFunc) NULL, D_C038B40, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, - /* OBJECT_80_137 */ {(void*) D_6004170, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 0, 1, 0.0f, 0 }, - /* OBJECT_80_138 */ {(void*) D_3017600, 0, (ObjectFunc) NULL, D_302EE64, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_139 */ {(void*) D_3017600, 0, (ObjectFunc) NULL, D_302EE80, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_140 */ {(void*) D_30173C0, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_141 */ {(void*) D_30174E0, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_142 */ {(void*) D_301B080, 0, (ObjectFunc) NULL, D_302EE9C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_143 */ {(void*) D_3016B00, 0, (ObjectFunc) NULL, D_302EE00, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_144 */ {(void*) D_3013780, 0, (ObjectFunc) NULL, D_302ED4C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_145 */ {(void*) D_3013580, 0, (ObjectFunc) NULL, D_302ED98, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_146 */ {(void*) D_3012ED0, 0, (ObjectFunc) NULL, D_302EDB4, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_147 */ {(void*) NULL, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_80_148 */ {(void*) D_60079B0, 0, (ObjectFunc) NULL, D_600FF80, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_149 */ {(void*) D_6007D80, 0, (ObjectFunc) NULL, D_600FFA0, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_150 */ {(void*) D_6006310, 0, (ObjectFunc) NULL, D_600FFC0, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_151 */ {(void*) D_60066E0_Gfx, 0, (ObjectFunc) NULL, D_600FEB8, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_152 */ {(void*) D_600F4C0, 0, (ObjectFunc) NULL, D_6011C10, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_153 */ {(void*) D_600B8B0, 0, (ObjectFunc) NULL, D_6011C48, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_154 */ {(void*) D_600BAF0, 0, (ObjectFunc) NULL, D_601115C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_155 */ {(void*) NULL, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_156 */ {(void*) func_80197CB8, 1, (ObjectFunc) NULL, D_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_157 */ {(void*) D_6001DA0, 0, (ObjectFunc) NULL, D_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_158 */ {(void*) D_6001360, 0, (ObjectFunc) NULL, D_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_159 */ {(void*) D_6008370, 0, (ObjectFunc) NULL, D_601668C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_80_160 */ {(void*) D_6010960, 0, (ObjectFunc) NULL, D_6016714, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_161 */ {(void*) D_602F7C0, 0, (ObjectFunc) func_80068FE0, D_603E468, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_162 */ {(void*) D_601C9B0, 0, (ObjectFunc) func_80068FE0, D_603E484, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_163 */ {(void*) D_600A420, 0, (ObjectFunc) func_80068FE0, D_600FE9C, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_164 */ {(void*) func_80059C40, 1, (ObjectFunc) NULL, D_800CBF34, 1800.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_165 */ {(void*) D_602DCA0, 0, (ObjectFunc) NULL, D_800CBF34, -100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_166 */ {(void*) D_601F500, 0, (ObjectFunc) NULL, D_800CBF34, -100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_167 */ {(void*) func_80059C34, 1, (ObjectFunc) func_80066E8C, D_800CBF34, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_168 */ {(void*) func_80059850, 1, (ObjectFunc) NULL, D_800CBF34, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_4C_169 */ {(void*) D_60023B0, 0, (ObjectFunc) func_8018F038, D_60068BC, 100.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_170 */ {(void*) NULL, 1, (ObjectFunc) func_801875A4, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_171 */ {(void*) NULL, 1, (ObjectFunc) func_801922DC, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_172 */ {(void*) NULL, 1, (ObjectFunc) func_80192358, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_173 */ {(void*) NULL, 1, (ObjectFunc) func_801923C0, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_174 */ {(void*) NULL, 1, (ObjectFunc) func_8019243C, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_4C_175 */ {(void*) NULL, 1, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_176 */ {(void*) func_8018BAAC, 2, (ObjectFunc) func_8018AED0, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, - /* OBJECT_2F4_177 */ {(void*) func_8018BBA4, 2, (ObjectFunc) func_8018B15C, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, - /* OBJECT_2F4_178 */ {(void*) func_8018BBF8, 2, (ObjectFunc) func_8018B418, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, - /* OBJECT_2F4_179 */ {(void*) func_8018BD7C, 2, (ObjectFunc) func_8018B58C, D_603E604, 500.0f, 0, 0, 39, 1, 0.0f, 1 }, - /* OBJECT_2F4_180 */ {(void*) func_8005B6A4, 1, (ObjectFunc) func_80066A80, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_181 */ {(void*) D_6018C00, 0, (ObjectFunc) func_8018756C, D_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_182 */ {(void*) func_8005B71C, 1, (ObjectFunc) func_80187650, D_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_183 */ {(void*) func_8018DA6C, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_184 */ {(void*) func_8018DAEC, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_185 */ {(void*) func_8018DB6C, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_186 */ {(void*) func_8005B7CC, 1, (ObjectFunc) func_8018795C, D_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_187 */ {(void*) D_6018450, 0, (ObjectFunc) func_801877C4, D_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_188 */ {(void*) func_801BEC74, 1, (ObjectFunc) func_801BEC68, D_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_189 */ {(void*) func_8005A094, 1, (ObjectFunc) func_8006C008, D_800CBF34, 0.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_2F4_190 */ {(void*) func_8005B848, 1, (ObjectFunc) func_800656D4, D_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 }, - /* OBJECT_2F4_191 */ {(void*) func_8005B848, 1, (ObjectFunc) func_800656D4, D_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 }, - /* OBJECT_2F4_192 */ {(void*) func_8005B9A4, 1, (ObjectFunc) func_8006654C, D_603E54C, 200.0f, 0, 1, 39, 0, 50.0f, 1 }, - /* OBJECT_2F4_193 */ {(void*) func_8005BA30, 1, (ObjectFunc) func_800669A0, D_603E598, 100.0f, 0, 1, 39, 0, 0.0f, 0 }, - /* OBJECT_2F4_194 */ {(void*) func_8006B74C, 1, (ObjectFunc) func_8006B094, D_800CC000, 200.0f, 0, 1, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_195 */ {(void*) func_8004FEC0, 1, (ObjectFunc) func_8004F8AC, D_800CBF34, 20000.0f, 0, 1, 39, 0, 0.0f, 0 }, - /* OBJECT_2F4_196 */ {(void*) func_80059BF0, 1, (ObjectFunc) func_8006BB78, D_603E5B4, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_197 */ {(void*) func_80035448, 1, (ObjectFunc) func_800319AC, D_800CC038, 20000.0f, 0, 1, 39, 1, 1.0f, 1 }, - /* OBJECT_2F4_198 */ {(void*) func_80035448, 1, (ObjectFunc) func_80092EC0, D_800CC01C, 20000.0f, 0, 0, 39, 1, 0.0f, 0 }, - /* OBJECT_2F4_199 */ {(void*) func_80188448, 1, (ObjectFunc) func_801880E4, D_800CBF34, 20000.0f, 0, 0, 39, 1, 0.0f, 0 }, - /* OBJECT_2F4_200 */ {(void*) func_80074FF0, 1, (ObjectFunc) func_80072594, D_800CBF34, 2000.0f, 0, 1, 39, 0, 0.0f, 1 }, - /* OBJECT_2F4_201 */ {(void*) func_800598E8, 1, (ObjectFunc) func_8006AC08, D_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_202 */ {(void*) func_80059A24, 1, (ObjectFunc) func_8006AD18, D_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 }, - /* OBJECT_2F4_203 */ {(void*) func_8018F884, 1, (ObjectFunc) func_8018F330, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_2F4_204 */ {(void*) func_E9F1D0_801A4CB0, 1, (ObjectFunc) func_E9F1D0_801A3BD4, D_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_205 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019C778, D_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_206 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_801AC438, D_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_207 */ {(void*) func_801AC294, 2, (ObjectFunc) func_801A7E7C, D_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_208 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019EA60, D_6035A14, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_209 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019D700, D_6035AE0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_210 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019CE88, D_6035D9C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_211 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019E410, D_6035E04, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_212 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019FF9C, D_60360C0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_213 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019EE68, D_6036154, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_214 */ {(void*) func_801A43BC, 1, (ObjectFunc) func_801A3E98, D_6036458, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_215 */ {(void*) func_801A4A64, 1, (ObjectFunc) func_801A46A0, D_60364C0, 300.0f, 0, 1, 40, 1, 0.0f, 1 }, - /* OBJECT_2F4_216 */ {(void*) func_801A5F90, 1, (ObjectFunc) func_801A5E54, D_60366EC, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_217 */ {(void*) func_801A6100, 1, (ObjectFunc) func_801A5FD0, D_6036708, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_218 */ {(void*) func_801A6540, 1, (ObjectFunc) func_801A6144, D_6036728, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_219 */ {(void*) func_801A68EC, 1, (ObjectFunc) func_801A67C8, D_6036744, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_220 */ {(void*) func_801ADAC8, 1, (ObjectFunc) func_801AD6F0, D_6036930, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_221 */ {(void*) func_801AE2C0, 1, (ObjectFunc) func_801ADD68, D_603694C, 300.0f, 0, 0, 40, 1, 1.0f, 0 }, - /* OBJECT_2F4_222 */ {(void*) func_801AEEFC, 1, (ObjectFunc) func_801AEC04, D_6036968, 300.0f, 0, 0, 40, 1, 1.0f, 0 }, - /* OBJECT_2F4_223 */ {(void*) func_801A54E8, 1, (ObjectFunc) func_801A4B24, D_60364DC, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_224 */ {(void*) NULL, 1, (ObjectFunc) func_80189194, D_800CBF34, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, - /* OBJECT_2F4_225 */ {(void*) D_700AB70, 0, (ObjectFunc) func_8018AB44, D_60064AC, 50.0f, 0, 0, 39, 1, 1.0f, 0 }, - /* OBJECT_2F4_226 */ {(void*) func_80189AFC, 1, (ObjectFunc) func_801895B8, D_60064C8, 300.0f, 0, 0, 39, 1, 70.0f, 1 }, - /* OBJECT_2F4_227 */ {(void*) func_8018E5B4, 1, (ObjectFunc) func_8018E54C, D_60067C4, 0.0f, 0, 0, 39, 1, 0.0f, 0 }, - /* OBJECT_2F4_228 */ {(void*) func_8018EF14, 1, (ObjectFunc) func_8018E5F8, D_6006808, 0.0f, 0, 0, 39, 1, 1.0f, 1 }, - /* OBJECT_2F4_229 */ {(void*) func_8018E2D8, 1, (ObjectFunc) func_8018C8A8, D_6006A3C, 1000.0f, 0, 0, 20, 1, 0.0f, 1 }, - /* OBJECT_2F4_230 */ {(void*) func_8018AABC, 1, (ObjectFunc) func_8018A544, D_600683C, 0.0f, 0, 1, 39, 1, 0.0f, 1 }, - /* OBJECT_2F4_231 */ {(void*) func_8018BE84, 1, (ObjectFunc) func_8018B9D0, D_6006858, 0.0f, 0, 0, 39, 1, 0.0f, 1 }, - /* OBJECT_2F4_232 */ {(void*) func_8018B6AC, 1, (ObjectFunc) func_8018B268, D_6006890_f32, 0.0f, 0, 0, 39, 1, 20.0f, 1 }, - /* OBJECT_2F4_233 */ {(void*) func_8018A1C0, 1, (ObjectFunc) func_80189CC8, D_60068F0, 200.0f, 0, 0, 39, 1, 1.0f, 1 }, - /* OBJECT_2F4_234 */ {(void*) func_80077218, 1, (ObjectFunc) func_800771CC, D_800CBF34, 2000.0f, 0, 0, 39, 0, 0.0f, 5 }, - /* OBJECT_2F4_235 */ {(void*) func_80190430, 2, (ObjectFunc) func_801904CC, D_602C294, 1000.0f, 0, 1, 40, 0, 1.0f, 1 }, - /* OBJECT_2F4_236 */ {(void*) func_80190F08, 1, (ObjectFunc) func_80190A00, D_602BC58, 5000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_237 */ {(void*) func_8006A978, 1, (ObjectFunc) func_8006A96C, D_800CBF34, 200.0f, 0, 0, 40, 0, 0.0f, 2 }, - /* OBJECT_2F4_238 */ {(void*) func_801914C4, 2, (ObjectFunc) func_80191010, D_800CBE8C, 200.0f, 0, 1, 40, 0, 1.0f, 1 }, - /* OBJECT_2F4_239 */ {(void*) NULL, 1, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_240 */ {(void*) func_80191B4C, 1, (ObjectFunc) func_80191680, D_800CBE8C, 1500.0f, 0, 1, 40, 0, 20.0f, 0 }, - /* OBJECT_2F4_241 */ {(void*) func_80191DB0, 1, (ObjectFunc) func_80191BC4, D_800CBE70, 1500.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_242 */ {(void*) func_80191FFC, 2, (ObjectFunc) func_80192094, D_602BE3C, 500.0f, 0, 0, 40, 0, 1.0f, 0 }, - /* OBJECT_2F4_243 */ {(void*) func_80192C18, 2, (ObjectFunc) func_80192834, D_800CBE8C, 0.0f, 0, 1, 40, 0, 1.0f, 1 }, - /* OBJECT_2F4_244 */ {(void*) func_80193240, 2, (ObjectFunc) func_80192E64, D_602BE58, 2000.0f, 0, 0, 40, 0, 50.0f, 0 }, - /* OBJECT_2F4_245 */ {(void*) func_8019983C, 1, (ObjectFunc) func_8019969C, D_800CBE8C, 200.0f, 0, 0, 40, 0, 1.0f, 0 }, - /* OBJECT_2F4_246 */ {(void*) func_80199E24, 1, (ObjectFunc) func_80199A28, D_800CBE8C, 2000.0f, 0, 0, 40, 0, 1.0f, 0 }, - /* OBJECT_2F4_247 */ {(void*) func_8019D3C4, 1, (ObjectFunc) func_8019D15C, D_602BFC4, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_248 */ {(void*) func_8019A1FC, 1, (ObjectFunc) func_80199F10, D_800CBEA8, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_249 */ {(void*) func_8019ACCC, 1, (ObjectFunc) func_8019A5D4, D_800CBEC4, 5000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_250 */ {(void*) func_8019B7DC, 1, (ObjectFunc) func_8019B548, D_602C1D4, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_251 */ {(void*) func_8019BDE0, 2, (ObjectFunc) func_8019B854, D_602C218, 1000.0f, 0, 0, 40, 0, 1.0f, 1 }, - /* OBJECT_2F4_252 */ {(void*) func_8019C1CC, 1, (ObjectFunc) func_8019BE48, D_602C234, 200.0f, 0, 0, 40, 0, 80.0f, 1 }, - /* OBJECT_2F4_253 */ {(void*) func_8019C83C, 1, (ObjectFunc) func_8019C454, D_602C250, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_254 */ {(void*) func_8019CE58, 1, (ObjectFunc) func_8019CBEC, D_602C2B0, 300.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_255 */ {(void*) func_801AE168, 1, (ObjectFunc) func_801AD6C0, D_6030BFC, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_256 */ {(void*) func_801AEB44, 1, (ObjectFunc) func_801AE3D8, D_6030C18, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_257 */ {(void*) func_801B099C, 1, (ObjectFunc) func_801AFA5C, D_6030C44, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_258 */ {(void*) func_801B0EC0, 1, (ObjectFunc) func_801B0B60, D_800CBE8C, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_259 */ {(void*) func_801B619C, 2, (ObjectFunc) func_801B638C, D_6031398, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_260 */ {(void*) func_801B90DC, 2, (ObjectFunc) func_801B7C78, D_60313CC, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_261 */ {(void*) func_801B504C, 2, (ObjectFunc) func_801B50E8, D_6031400, 300.0f, 0, 0, 40, 0, 0.0f, 1 }, - /* OBJECT_2F4_262 */ {(void*) func_801B7A24, 2, (ObjectFunc) func_801B6FF8, D_603144C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_263 */ {(void*) func_801BA108, 2, (ObjectFunc) func_801B91A4, D_6031480, 200.0f, 0, 0, 40, 0, 0.0f, 1 }, - /* OBJECT_2F4_264 */ {(void*) func_801BA4E4, 1, (ObjectFunc) func_801BA26C, D_800CBE8C, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_265 */ {(void*) func_801BAD7C, 1, (ObjectFunc) func_801BA6A4, D_6031500, 200.0f, 0, 0, 40, 0, 0.0f, 1 }, - /* OBJECT_2F4_266 */ {(void*) func_801BB204, 2, (ObjectFunc) func_801BADF8, D_6031538, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_267 */ {(void*) func_801BC930, 2, (ObjectFunc) func_801BB79C, D_6031554, 800.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_268 */ {(void*) func_801BDE6C, 1, (ObjectFunc) func_801BD54C, D_6031570, 10000.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_2F4_269 */ {(void*) func_801BD264, 1, (ObjectFunc) func_801BC9A0, D_6030D20, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_270 */ {(void*) func_801BEB1C, 1, (ObjectFunc) func_801BE3F8, D_60314C8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_271 */ {(void*) func_8002E694, 2, (ObjectFunc) func_8002E670, D_6011B24, 0.0f, 0, 0, 39, 0, 730.0f, 1 }, - /* OBJECT_2F4_272 */ {(void*) func_8002E6DC, 1, (ObjectFunc) func_8002E6B8, D_6011BF4, 0.0f, 0, 0, 39, 0, 150.0f, 1 }, - /* OBJECT_2F4_273 */ {(void*) func_80188FE4, 2, (ObjectFunc) func_80188AD0, D_600FF30, 0.0f, 0, 0, 39, 0, 220.0f, 1 }, - /* OBJECT_2F4_274 */ {(void*) func_8019E3A8, 1, (ObjectFunc) func_8019E234, D_800CBEC4, 0.0f, 0, 0, 39, 0, 1.0f, 0 }, - /* OBJECT_2F4_275 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBE8C, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_276 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBE8C, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_277 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBEC4, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, - /* OBJECT_2F4_278 */ {(void*) NULL, 1, (ObjectFunc) func_8019EA7C, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 1 }, - /* OBJECT_2F4_279 */ {(void*) NULL, 1, (ObjectFunc) func_801A003C, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 1 }, - /* OBJECT_2F4_280 */ {(void*) D_900DD20, 0, (ObjectFunc) func_80192518, D_601B7F8, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_281 */ {(void*) func_80192E2C, 1, (ObjectFunc) func_80192CD4, D_601B830, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_282 */ {(void*) D_901DA50, 0, (ObjectFunc) func_80192CD4, D_601B868, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_283 */ {(void*) D_9023AD0, 0, (ObjectFunc) func_80192EB0, D_601B8A0, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_284 */ {(void*) func_801934D0, 1, (ObjectFunc) func_801933DC, D_601B8D8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_2F4_285 */ {(void*) func_80193244, 1, (ObjectFunc) func_80192E94, D_800CBE8C, 1000.0f, 0, 0, 20, 0, 1.0f, 1 }, - /* OBJECT_2F4_286 */ {(void*) func_80188660, 1, (ObjectFunc) func_80188528, D_800CBE8C, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_2F4_287 */ {(void*) NULL, 1, (ObjectFunc) func_80189724, D_800CBF34, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, - /* OBJECT_2F4_288 */ {(void*) NULL, 1, (ObjectFunc) func_801893B8, D_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 }, - /* OBJECT_2F4_289 */ {(void*) func_800596B0, 1, (ObjectFunc) func_80189470, D_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 }, - /* OBJECT_2F4_290 */ {(void*) NULL, 1, (ObjectFunc) func_8018933C, D_800CBF34, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_2F4_291 */ {(void*) func_80067874, 1, (ObjectFunc) func_8006753C, D_800CBEA8, 1000.0f, 0, 0, 0, 0, 1.0f, 0 }, - /* OBJECT_408_292 */ {(void*) func_8018AA74, 2, (ObjectFunc) func_80189058, D_603E620, 20000.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_293 */ {(void*) func_8018ECAC, 1, (ObjectFunc) func_8018C19C, D_603E840, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_294 */ {(void*) func_8018ED78, 1, (ObjectFunc) func_8018DDAC, D_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_295 */ {(void*) func_8018EE84, 1, (ObjectFunc) func_8018E290, D_603E748, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_296 */ {(void*) func_8018EF90, 1, (ObjectFunc) func_8018E76C, D_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_297 */ {(void*) func_8018BACC, 1, (ObjectFunc) func_8018978C, D_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_298 */ {(void*) func_801887D0, 1, (ObjectFunc) func_80188344, D_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_299 */ {(void*) func_80042FC4, 2, (ObjectFunc) func_80042FB8, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_300 */ {(void*) func_80042FE8, 1, (ObjectFunc) func_80042FDC, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_301 */ {(void*) func_801BEC5C, 1, (ObjectFunc) func_801BEC50, D_6030B10, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_302 */ {(void*) func_8018C54C, 1, (ObjectFunc) func_80187944, D_6028454, 2000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_303 */ {(void*) func_80193434, 2, (ObjectFunc) func_80190078, D_6032550, 20000.0f, 0, 0, 20, 0, 0.0f, 10 }, - /* OBJECT_408_304 */ {(void*) func_8018FF84, 2, (ObjectFunc) func_8018FE38, D_6032488, 1000.0f, 0, 0, 20, 0, 0.0f, 10 }, - /* OBJECT_408_305 */ {(void*) func_80190020, 2, (ObjectFunc) func_8018FF20, D_60324EC, 1000.0f, 0, 0, 20, 0, 0.0f, 10 }, - /* OBJECT_408_306 */ {(void*) func_801982A8, 1, (ObjectFunc) func_80197A94,D_E6A810_801B83A8, 1000.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_307 */ {(void*) func_801949DC, 2, (ObjectFunc) func_80194A84, D_602C044, 1000.0f, 0, 0, 40, 0, 1.0f, 10 }, - /* OBJECT_408_308 */ {(void*) func_8008FE78, 1, (ObjectFunc) func_800907C4, D_600FFE0, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_309 */ {(void*) func_8002E604, 1, (ObjectFunc) func_8002E5E0, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_310 */ {(void*) func_8002E64C, 1, (ObjectFunc) func_8002E628, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_311 */ {(void*) func_80191AFC, 2, (ObjectFunc) func_801912FC, D_6011C80, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_312 */ {(void*) func_80196288, 2, (ObjectFunc) func_80196210, D_60166F4, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_313 */ {(void*) func_8019E98C, 1, (ObjectFunc) func_8019E454, D_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_314 */ {(void*) func_8019E2C4, 2, (ObjectFunc) func_8019C888, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_315 */ {(void*) func_801A71B8, 2, (ObjectFunc) func_801A5B3C, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_316 */ {(void*) func_801968F4, 1, (ObjectFunc) func_801946C4, D_6011058, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_317 */ {(void*) func_80193B1C, 1, (ObjectFunc) func_80193718, D_601115C, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_318 */ {(void*) func_801B4D84, 2, (ObjectFunc) func_801B134C, D_6030F74, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_319 */ {(void*) func_801985E4, 1, (ObjectFunc) func_80194398,D_DF4260_8019A9B8, 3000.0f, 0, 0, 40, 1, 0.0f, 10 }, - /* OBJECT_408_320 */ {(void*) func_801928C8, 2, (ObjectFunc) func_8018DBF0, D_C038DC0, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_408_321 */ {(void*) func_8018B8C0, 1, (ObjectFunc) func_80189B70, D_C038F24, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, - /* OBJECT_6C_LASERS */ {(void*) func_8005CC9C, 1, (ObjectFunc) func_80067F6C, D_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_CHECKPOINT */ {(void*) func_8005C5F0, 1, (ObjectFunc) func_80068914, D_800CBF38, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_SILVER_RING */ {(void*) func_8005C900, 1, (ObjectFunc) func_80068020, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_STAR_RING */ {(void*) func_8005C9C0, 1, (ObjectFunc) func_800685D8, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_METEO_WARP */ {(void*) func_8005CDA8, 1, (ObjectFunc) func_80068688, D_800CBF70, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_BOMB */ {(void*) func_8005CB44, 1, (ObjectFunc) func_80067BEC, D_800CBFC8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_328 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_329 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_330 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_331 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_332 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_333 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_CORN_ARCH */ {(void*) NULL, 1, (ObjectFunc) func_80068C48, D_800CBF18, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_1UP */ {(void*) D_1022120, 0, (ObjectFunc) func_80067B1C, D_800CBE8C, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_GOLD_RING */ {(void*) func_8005CA80, 1, (ObjectFunc) func_800685F8, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_WING_REPAIR */ {(void*) D_3007650, 0, (ObjectFunc) func_80068618, D_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_6C_TRAINING_RING */ {(void*) D_6006140, 0, (ObjectFunc) func_80198968, D_6009CFC, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_339 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D2F4, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_340 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D748, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_341 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D8A8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_342 */ {(void*) func_8007E330, 1, (ObjectFunc) func_8007E298, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_343 */ {(void*) func_8007CAF0, 1, (ObjectFunc) func_8007C9E0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_344 */ {(void*) func_8007868C, 1, (ObjectFunc) func_8007E014, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_345 */ {(void*) func_8007879C, 1, (ObjectFunc) func_8007E258, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_346 */ {(void*) func_800788B0, 1, (ObjectFunc) func_8007F438, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_347 */ {(void*) func_800783C0, 1, (ObjectFunc) func_8007B758, NULL, 100.0f, 1, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_348 */ {(void*) func_80078A64, 1, (ObjectFunc) func_8007F6B0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_349 */ {(void*) NULL, 1, (ObjectFunc) func_8007F958, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_350 */ {(void*) NULL, 1, (ObjectFunc) func_8007FBE0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_351 */ {(void*) func_80078438, 1, (ObjectFunc) func_8007E3E4, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_352 */ {(void*) func_800784B4, 1, (ObjectFunc) func_8007B62C, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_353 */ {(void*) func_80078B8C, 1, (ObjectFunc) func_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_354 */ {(void*) func_80197C64, 1, (ObjectFunc) func_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_355 */ {(void*) func_80078AEC, 1, (ObjectFunc) func_800802B8, NULL, 100.0f, 1, 0, 20, 1, 0.0f, 0 }, - /* OBJECT_8C_356 */ {(void*) func_80078C84, 1, (ObjectFunc) func_800802F8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_357 */ {(void*) func_800798F0, 1, (ObjectFunc) func_8007968C, NULL, 100.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_358 */ {(void*) func_80192A68, 1, (ObjectFunc) func_80192984, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_359 */ {(void*) func_8007AA60, 1, (ObjectFunc) func_8007A994, NULL, -100.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_360 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BE54, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_361 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BDE0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_362 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BCE8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_363 */ {(void*) func_80094BBC, 1, (ObjectFunc) func_80094954, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_364 */ {(void*) func_8007B9DC, 1, (ObjectFunc) func_8007B960, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_365 */ {(void*) func_8007E5CC, 1, (ObjectFunc) func_8007E45C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_366 */ {(void*) func_80078550, 1, (ObjectFunc) func_801AC918, NULL, 100.0f, 1, 2, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_367 */ {(void*) func_80078604, 1, (ObjectFunc) func_8007E648, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_368 */ {(void*) func_80188FA8, 1, (ObjectFunc) func_80188F60, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_369 */ {(void*) func_8018DCE4, 1, (ObjectFunc) func_80188CAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_370 */ {(void*) func_8018DBEC, 1, (ObjectFunc) func_80188FAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_371 */ {(void*) func_8018DE14, 1, (ObjectFunc) func_80189114, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_372 */ {(void*) func_80077A00, 1, (ObjectFunc) func_8007AB50, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_373 */ {(void*) NULL, 1, (ObjectFunc) func_8007A748, NULL, 500.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_374 */ {(void*) func_8007DED4, 1, (ObjectFunc) func_8007DB70, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_375 */ {(void*) func_8007DAE4, 1, (ObjectFunc) func_8007DA58, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_376 */ {(void*) func_80078CE8, 1, (ObjectFunc) func_80080360, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_377 */ {(void*) func_80078BE0, 1, (ObjectFunc) func_800802D8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_378 */ {(void*) func_801A5AF0, 1, (ObjectFunc) func_801A57D0, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_379 */ {(void*) func_801AEAA0, 1, (ObjectFunc) func_801AE87C, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_380 */ {(void*) func_801A5D68, 1, (ObjectFunc) func_801A5B4C, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_381 */ {(void*) func_80077A7C, 1, (ObjectFunc) func_8007B0F4, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_382 */ {(void*) NULL, 1, (ObjectFunc) func_8007B040, NULL, 200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_383 */ {(void*) func_8007A3C0, 1, (ObjectFunc) func_8007A28C, NULL, 10000.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_384 */ {(void*) func_80077B84, 1, (ObjectFunc) func_8007B3B8, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_385 */ {(void*) func_80078038, 1, (ObjectFunc) func_8007B5C0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_386 */ {(void*) NULL, 1, (ObjectFunc) func_8007C250, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_387 */ {(void*) NULL, 1, (ObjectFunc) func_8007C8C4, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_388 */ {(void*) func_80077B78, 1, (ObjectFunc) func_8007B670, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_389 */ {(void*) func_800780F8, 1, (ObjectFunc) func_8007B67C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_390 */ {(void*) NULL, 1, (ObjectFunc) func_8007C50C, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_391 */ {(void*) func_80083B8C, 1, (ObjectFunc) func_800837EC, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_392 */ {(void*) func_801A0AF0, 1, (ObjectFunc) func_801A0120, NULL, 300.0f, 1, 2, 10, 0, 0.0f, 0 }, - /* OBJECT_8C_393 */ {(void*) func_80078F78, 1, (ObjectFunc) func_80078EBC, NULL, 300.0f, 1, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_394 */ {(void*) func_80080D04, 1, (ObjectFunc) func_80080ACC, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, - /* OBJECT_8C_395 */ {(void*) func_80082F78, 1, (ObjectFunc) func_80081C5C, NULL, 300.0f, 0, 1, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_396 */ {(void*) func_8018CF98, 1, (ObjectFunc) func_8018CAD4, NULL, 2000.0f, 0, 1, 40, 2, 0.0f, 0 }, - /* OBJECT_8C_397 */ {(void*) func_80191180, 1, (ObjectFunc) func_80191054, NULL, 2000.0f, 0, 1, 20, 0, 0.0f, 0 }, - /* OBJECT_8C_398 */ {(void*) func_8008092C, 1, (ObjectFunc) func_8008040C, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, - /* OBJECT_8C_399 */ {(void*) func_80084194, 1, (ObjectFunc) func_80083FA8, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, +ObjectInfo D_800CC124[0x190] = { + /* OBJ_80_0, */ {(void*) D_6015F00, 0, (ObjectFunc) NULL, D_603E3E0, 800.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_1, */ {(void*) D_602E9E0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_2, */ {(void*) D_601BEC0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_3, */ {(void*) D_602E7A0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_4, */ {(void*) D_60244A0, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_5, */ {(void*) D_602E570, 0, (ObjectFunc) NULL, D_800CBF34, 3000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_6, */ {(void*) D_60132B0, 0, (ObjectFunc) NULL, D_603DCA4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_7, */ {(void*) D_602E080, 0, (ObjectFunc) NULL, D_603DD40, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_8, */ {(void*) D_60164F0, 0, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_9, */ {(void*) D_6014500, 0, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_10, */ {(void*) D_602D5F0, 0, (ObjectFunc) NULL, D_603DDF0, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_11, */ {(void*) D_601A7D0, 0, (ObjectFunc) NULL, D_603DE8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_12, */ {(void*) D_6014B50, 0, (ObjectFunc) NULL, D_603DEF4, 500.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_13, */ {(void*) D_6016580, 0, (ObjectFunc) NULL, D_603DF8C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_14, */ {(void*) D_601B560, 0, (ObjectFunc) func_80066EA8, D_603DFDC, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_15, */ {(void*) D_60361F0, 0, (ObjectFunc) func_80066EA8, D_603E014, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_16, */ {(void*) D_6018E80, 0, (ObjectFunc) func_80066EA8, D_603E030, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_17, */ {(void*) D_6035F10, 0, (ObjectFunc) func_80066EA8, D_603E09C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_18, */ {(void*) func_DF4260_8018753C, 1, (ObjectFunc) func_DF4260_80187530, D_603E98C, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_19, */ {(void*) D_60153B0, 0, (ObjectFunc) NULL, D_603E118, 100.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_20, */ {(void*) D_601F5A0, 0, (ObjectFunc) NULL, D_603E14C, 500.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_21, */ {(void*) D_60137B0, 0, (ObjectFunc) NULL, D_603E1B4, 400.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_22, */ {(void*) D_6006A80, 0, (ObjectFunc) NULL, D_603E21C, 400.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_23, */ {(void*) D_6016270, 0, (ObjectFunc) NULL, D_603E4A0, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_24, */ {(void*) D_6010E00, 0, (ObjectFunc) NULL, D_603E9EC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_25, */ {(void*) D_6014670, 0, (ObjectFunc) NULL, D_603EA08, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_26, */ {(void*) D_6010A50, 0, (ObjectFunc) NULL, D_603EA74, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_27, */ {(void*) D_60143E0, 0, (ObjectFunc) NULL, D_603EAE0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_28, */ {(void*) D_6014A20, 0, (ObjectFunc) NULL, D_603EB0C, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_29, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60064FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_30, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006518, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_31, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006564, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_32, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60065B0, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_33, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60065FC, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_34, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006648, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_35, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006694, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_36, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_60066E0_f32, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_37, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_600672C, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_38, */ {(void*) func_80059B20, 1, (ObjectFunc) func_800652CC, D_6006778, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_39, */ {(void*) func_80059AEC, 1, (ObjectFunc) func_8006D350, D_800CBF34, 6000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_40, */ {(void*) func_80059F68, 1, (ObjectFunc) func_80066D5C, D_603E4A4, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_41, */ {(void*) func_80059FDC, 1, (ObjectFunc) func_80066EA8, D_603E4DC, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_42, */ {(void*) func_80059BBC, 1, (ObjectFunc) func_8006B95C, D_603E514, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_43, */ {(void*) D_6024AC0, 0, (ObjectFunc) NULL, D_602B9EC, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_44, */ {(void*) D_600F560, 0, (ObjectFunc) NULL, D_602BA20, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_45, */ {(void*) D_600EC90, 0, (ObjectFunc) NULL, D_602BAE4, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_46, */ {(void*) D_600E820, 0, (ObjectFunc) NULL, D_602BBD8, 1500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_47, */ {(void*) D_601FCB0, 0, (ObjectFunc) NULL, D_602BC54, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_48, */ {(void*) func_800594F0, 1, (ObjectFunc) NULL, D_601B4E0, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_49, */ {(void*) func_800595D0, 1, (ObjectFunc) NULL, D_601B4FC, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_50, */ {(void*) D_6007410, 0, (ObjectFunc) NULL, D_601B518, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_51, */ {(void*) D_6006F50, 0, (ObjectFunc) NULL, D_601B584, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_52, */ {(void*) D_6005780, 0, (ObjectFunc) func_80193540, D_601B5F4, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_53, */ {(void*) D_6003610, 0, (ObjectFunc) NULL, D_601B644, 2500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_54, */ {(void*) D_6000E00, 0, (ObjectFunc) func_8006AA98, D_603E0EC, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_55, */ {(void*) D_6013B50, 0, (ObjectFunc) NULL, D_603E88C, 1000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_56, */ {(void*) func_8018F31C, 2, (ObjectFunc) func_8018F044, D_603E8A8, 1000.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_57, */ {(void*) func_8018F8B8, 1, (ObjectFunc) func_8018F4D8, D_6006BF0, 800.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_58, */ {(void*) D_700BE00, 0, (ObjectFunc) NULL, D_6006C44, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_59, */ {(void*) D_6024010, 0, (ObjectFunc) NULL, D_603626C, 300.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_60, */ {(void*) D_6027180, 0, (ObjectFunc) NULL, D_6036288, 400.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_61, */ {(void*) func_801A2A78, 1, (ObjectFunc) NULL, D_60362A4, 200.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_62, */ {(void*) D_60270E0, 0, (ObjectFunc) NULL, D_800CBF34, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_63, */ {(void*) D_6013960, 0, (ObjectFunc) NULL, D_6036894, 500.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_64, */ {(void*) D_600AF40, 0, (ObjectFunc) NULL, D_60368E0, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_65, */ {(void*) func_801A6608, 1, (ObjectFunc) NULL, D_6036724, 400.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_66, */ {(void*) D_601F1D0, 0, (ObjectFunc) NULL, D_60362D8, 2500.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_67, */ {(void*) D_60238F0, 0, (ObjectFunc) NULL, D_6036328, 2000.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_68, */ {(void*) D_601B7C0, 0, (ObjectFunc) NULL, D_60362F4, 2500.0f, 0, 0, 5, 0, 0.0f, 0 }, + /* OBJ_80_69, */ {(void*) D_6030500, 0, (ObjectFunc) NULL, D_6036370, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_70, */ {(void*) D_602DAE0, 0, (ObjectFunc) NULL, D_603638C, 1900.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_71, */ {(void*) D_6027900, 0, (ObjectFunc) NULL, D_60363B8, 1900.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_72, */ {(void*) D_602DB80, 0, (ObjectFunc) NULL, D_60363E4, 1100.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_73, */ {(void*) D_6030630, 0, (ObjectFunc) NULL, D_6036410, 1100.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_74, */ {(void*) D_602DC20, 0, (ObjectFunc) NULL, D_603643C, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_75, */ {(void*) D_601B0D0, 0, (ObjectFunc) NULL, D_6036760, 3000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_76, */ {(void*) D_60075D0, 0, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_77, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_6036344, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_78, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_79, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_80, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_81, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_82, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_83, */ {(void*) func_801A3240, 1, (ObjectFunc) func_801A2DD8, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_84, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_85, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_86, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_87, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_88, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_89, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_90, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_91, */ {(void*) func_801A2B24, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_92, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_93, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_94, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_95, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_96, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_97, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_98, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 15000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_99, */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_100 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_101 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_102 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_103 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_800CBF34, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_104 */ {(void*) func_801A23AC, 1, (ObjectFunc) func_801A0BD8, D_6036594, 2500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_105 */ {(void*) func_801A23AC, 1, (ObjectFunc) NULL, D_6036204, 1300.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_106 */ {(void*) D_60097E0, 0, (ObjectFunc) NULL, D_6034478, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_107 */ {(void*) D_601D730, 0, (ObjectFunc) NULL, D_603450C, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_108 */ {(void*) D_60102C0, 0, (ObjectFunc) NULL, D_6034588, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_109 */ {(void*) D_60036A0, 0, (ObjectFunc) func_801A4E44, D_6034664, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_110 */ {(void*) D_6005360, 0, (ObjectFunc) NULL, D_6034770, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_111 */ {(void*) func_80074F90, 1, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_112 */ {(void*) D_600F6C0, 0, (ObjectFunc) func_801A52B8, D_60347F0, 4000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_113 */ {(void*) D_601B610, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_114 */ {(void*) D_601C6A0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_115 */ {(void*) D_60188D0, 0, (ObjectFunc) NULL, D_603486C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_116 */ {(void*) D_60034D0, 0, (ObjectFunc) NULL, D_60347D4, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_117 */ {(void*) D_60231C0, 0, (ObjectFunc) NULL, D_6030C60, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_118 */ {(void*) D_6011EE0, 0, (ObjectFunc) NULL, D_6030C7C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_119 */ {(void*) D_6015730, 0, (ObjectFunc) NULL, D_6030D74, 2000.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_80_120 */ {(void*) D_601DE60, 0, (ObjectFunc) NULL, D_6030DF8, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_121 */ {(void*) D_602B4C0, 0, (ObjectFunc) NULL, D_6030E14, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_122 */ {(void*) D_600EE10, 0, (ObjectFunc) NULL, D_6030E30, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_123 */ {(void*) D_60120F0, 0, (ObjectFunc) NULL, D_6030E4C, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_124 */ {(void*) D_600EEF0, 0, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_125 */ {(void*) D_600BF80, 0, (ObjectFunc) NULL, D_6030E68, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_126 */ {(void*) func_801BE1FC, 1, (ObjectFunc) NULL, D_800CBF34, 2000.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_127 */ {(void*) D_9005C80, 0, (ObjectFunc) func_DF4260_801924A8, D_601B678, 1000.0f, 0, 0, 42, 0, 0.0f, 0 }, + /* OBJ_80_128 */ {(void*) D_9003F50, 0, (ObjectFunc) NULL, D_601B6C4, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, + /* OBJ_80_129 */ {(void*) D_900F060, 0, (ObjectFunc) NULL, D_601B710, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, + /* OBJ_80_130 */ {(void*) D_900F1D0, 0, (ObjectFunc) NULL, D_601B75C, 3200.0f, 0, 0, 42, 0, 0.0f, 0 }, + /* OBJ_80_131 */ {(void*) func_801935D4, 1, (ObjectFunc) func_8019356C, D_C038BD8, 500.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_132 */ {(void*) func_8019350C, 1, (ObjectFunc) func_80193380, D_C038A48, 500.0f, 0, 0, 41, 0, 0.0f, 0 }, + /* OBJ_80_133 */ {(void*) D_60030F0, 0, (ObjectFunc) NULL, D_6009CC4, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_80_134 */ {(void*) D_6003000, 0, (ObjectFunc) NULL, D_C038BA4, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, + /* OBJ_80_135 */ {(void*) D_6006890_Gfx, 0, (ObjectFunc) NULL, D_C038B40, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, + /* OBJ_80_136 */ {(void*) D_6002990, 0, (ObjectFunc) NULL, D_C038B40, 0.0f, 0, 0, 41, 1, 0.0f, 0 }, + /* OBJ_80_137 */ {(void*) D_6004170, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 0, 1, 0.0f, 0 }, + /* OBJ_80_138 */ {(void*) D_3017600, 0, (ObjectFunc) NULL, D_302EE64, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_139 */ {(void*) D_3017600, 0, (ObjectFunc) NULL, D_302EE80, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_140 */ {(void*) D_30173C0, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_141 */ {(void*) D_30174E0, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_142 */ {(void*) D_301B080, 0, (ObjectFunc) NULL, D_302EE9C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_143 */ {(void*) D_3016B00, 0, (ObjectFunc) NULL, D_302EE00, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_144 */ {(void*) D_3013780, 0, (ObjectFunc) NULL, D_302ED4C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_145 */ {(void*) D_3013580, 0, (ObjectFunc) NULL, D_302ED98, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_146 */ {(void*) D_3012ED0, 0, (ObjectFunc) NULL, D_302EDB4, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_147 */ {(void*) NULL, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_80_148 */ {(void*) D_60079B0, 0, (ObjectFunc) NULL, D_600FF80, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_149 */ {(void*) D_6007D80, 0, (ObjectFunc) NULL, D_600FFA0, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_150 */ {(void*) D_6006310, 0, (ObjectFunc) NULL, D_600FFC0, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_151 */ {(void*) D_60066E0_Gfx, 0, (ObjectFunc) NULL, D_600FEB8, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_152 */ {(void*) D_600F4C0, 0, (ObjectFunc) NULL, D_6011C10, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_153 */ {(void*) D_600B8B0, 0, (ObjectFunc) NULL, D_6011C48, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_154 */ {(void*) D_600BAF0, 0, (ObjectFunc) NULL, D_601115C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_155 */ {(void*) NULL, 0, (ObjectFunc) NULL, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_156 */ {(void*) func_80197CB8, 1, (ObjectFunc) NULL, D_6034368, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_157 */ {(void*) D_6001DA0, 0, (ObjectFunc) NULL, D_600924C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_158 */ {(void*) D_6001360, 0, (ObjectFunc) NULL, D_60092E8, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_159 */ {(void*) D_6008370, 0, (ObjectFunc) NULL, D_601668C, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_80_160 */ {(void*) D_6010960, 0, (ObjectFunc) NULL, D_6016714, 0.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_161 */ {(void*) D_602F7C0, 0, (ObjectFunc) func_80068FE0, D_603E468, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_162 */ {(void*) D_601C9B0, 0, (ObjectFunc) func_80068FE0, D_603E484, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_163 */ {(void*) D_600A420, 0, (ObjectFunc) func_80068FE0, D_600FE9C, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_164 */ {(void*) func_80059C40, 1, (ObjectFunc) NULL, D_800CBF34, 1800.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_165 */ {(void*) D_602DCA0, 0, (ObjectFunc) NULL, D_800CBF34, -100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_166 */ {(void*) D_601F500, 0, (ObjectFunc) NULL, D_800CBF34, -100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_167 */ {(void*) func_80059C34, 1, (ObjectFunc) func_80066E8C, D_800CBF34, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_168 */ {(void*) func_80059850, 1, (ObjectFunc) NULL, D_800CBF34, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_4C_169 */ {(void*) D_60023B0, 0, (ObjectFunc) func_8018F038, D_60068BC, 100.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_170 */ {(void*) NULL, 1, (ObjectFunc) func_801875A4, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_171 */ {(void*) NULL, 1, (ObjectFunc) func_801922DC, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_172 */ {(void*) NULL, 1, (ObjectFunc) func_80192358, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_173 */ {(void*) NULL, 1, (ObjectFunc) func_801923C0, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_174 */ {(void*) NULL, 1, (ObjectFunc) func_8019243C, D_800CBF34, 0.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_4C_175 */ {(void*) NULL, 1, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_176 */ {(void*) func_8018BAAC, 2, (ObjectFunc) func_8018AED0, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, + /* OBJ_2F4_177 */ {(void*) func_8018BBA4, 2, (ObjectFunc) func_8018B15C, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, + /* OBJ_2F4_178 */ {(void*) func_8018BBF8, 2, (ObjectFunc) func_8018B418, D_603E5D0, 500.0f, 0, 0, 39, 1, 200.0f, 1 }, + /* OBJ_2F4_179 */ {(void*) func_8018BD7C, 2, (ObjectFunc) func_8018B58C, D_603E604, 500.0f, 0, 0, 39, 1, 0.0f, 1 }, + /* OBJ_2F4_180 */ {(void*) func_8005B6A4, 1, (ObjectFunc) func_80066A80, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_181 */ {(void*) D_6018C00, 0, (ObjectFunc) func_8018756C, D_602F6EC, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_182 */ {(void*) func_8005B71C, 1, (ObjectFunc) func_80187650, D_602F708, 100.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_183 */ {(void*) func_8018DA6C, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_184 */ {(void*) func_8018DAEC, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_185 */ {(void*) func_8018DB6C, 1, (ObjectFunc) func_8018D9EC, D_800CBF34, 100.0f, 0, 1, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_186 */ {(void*) func_8005B7CC, 1, (ObjectFunc) func_8018795C, D_602F724, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_187 */ {(void*) D_6018450, 0, (ObjectFunc) func_801877C4, D_602F740, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_188 */ {(void*) func_801BEC74, 1, (ObjectFunc) func_801BEC68, D_6030BE0, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_189 */ {(void*) func_8005A094, 1, (ObjectFunc) func_8006C008, D_800CBF34, 0.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_2F4_190 */ {(void*) func_8005B848, 1, (ObjectFunc) func_800656D4, D_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 }, + /* OBJ_2F4_191 */ {(void*) func_8005B848, 1, (ObjectFunc) func_800656D4, D_800CBFE4, 100.0f, 0, 1, 39, 0, 1.0f, 0 }, + /* OBJ_2F4_192 */ {(void*) func_8005B9A4, 1, (ObjectFunc) func_8006654C, D_603E54C, 200.0f, 0, 1, 39, 0, 50.0f, 1 }, + /* OBJ_2F4_193 */ {(void*) func_8005BA30, 1, (ObjectFunc) func_800669A0, D_603E598, 100.0f, 0, 1, 39, 0, 0.0f, 0 }, + /* OBJ_2F4_194 */ {(void*) func_8006B74C, 1, (ObjectFunc) func_8006B094, D_800CC000, 200.0f, 0, 1, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_195 */ {(void*) func_8004FEC0, 1, (ObjectFunc) func_8004F8AC, D_800CBF34, 20000.0f, 0, 1, 39, 0, 0.0f, 0 }, + /* OBJ_2F4_196 */ {(void*) func_80059BF0, 1, (ObjectFunc) func_8006BB78, D_603E5B4, 200.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_197 */ {(void*) func_80035448, 1, (ObjectFunc) func_800319AC, D_800CC038, 20000.0f, 0, 1, 39, 1, 1.0f, 1 }, + /* OBJ_2F4_198 */ {(void*) func_80035448, 1, (ObjectFunc) func_80092EC0, D_800CC01C, 20000.0f, 0, 0, 39, 1, 0.0f, 0 }, + /* OBJ_2F4_199 */ {(void*) func_80188448, 1, (ObjectFunc) func_801880E4, D_800CBF34, 20000.0f, 0, 0, 39, 1, 0.0f, 0 }, + /* OBJ_2F4_200 */ {(void*) func_80074FF0, 1, (ObjectFunc) func_80072594, D_800CBF34, 2000.0f, 0, 1, 39, 0, 0.0f, 1 }, + /* OBJ_2F4_201 */ {(void*) func_800598E8, 1, (ObjectFunc) func_8006AC08, D_602F684, 100.0f, 0, 1, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_202 */ {(void*) func_80059A24, 1, (ObjectFunc) func_8006AD18, D_602F6A0, 100.0f, 0, 1, 39, 0, 180.0f, 1 }, + /* OBJ_2F4_203 */ {(void*) func_8018F884, 1, (ObjectFunc) func_8018F330, D_800CBF34, 1000.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_2F4_204 */ {(void*) func_E9F1D0_801A4CB0, 1, (ObjectFunc) func_E9F1D0_801A3BD4, D_603405C, 1000.0f, 0, 0, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_205 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019C778, D_60359C8, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_206 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_801AC438, D_6035A48, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_207 */ {(void*) func_801AC294, 2, (ObjectFunc) func_801A7E7C, D_603677C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_208 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019EA60, D_6035A14, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_209 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019D700, D_6035AE0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_210 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019CE88, D_6035D9C, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_211 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019E410, D_6035E04, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_212 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019FF9C, D_60360C0, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_213 */ {(void*) func_801A12C4, 1, (ObjectFunc) func_8019EE68, D_6036154, 20000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_214 */ {(void*) func_801A43BC, 1, (ObjectFunc) func_801A3E98, D_6036458, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_215 */ {(void*) func_801A4A64, 1, (ObjectFunc) func_801A46A0, D_60364C0, 300.0f, 0, 1, 40, 1, 0.0f, 1 }, + /* OBJ_2F4_216 */ {(void*) func_801A5F90, 1, (ObjectFunc) func_801A5E54, D_60366EC, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_217 */ {(void*) func_801A6100, 1, (ObjectFunc) func_801A5FD0, D_6036708, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_218 */ {(void*) func_801A6540, 1, (ObjectFunc) func_801A6144, D_6036728, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_219 */ {(void*) func_801A68EC, 1, (ObjectFunc) func_801A67C8, D_6036744, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_220 */ {(void*) func_801ADAC8, 1, (ObjectFunc) func_801AD6F0, D_6036930, 200.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_221 */ {(void*) func_801AE2C0, 1, (ObjectFunc) func_801ADD68, D_603694C, 300.0f, 0, 0, 40, 1, 1.0f, 0 }, + /* OBJ_2F4_222 */ {(void*) func_801AEEFC, 1, (ObjectFunc) func_801AEC04, D_6036968, 300.0f, 0, 0, 40, 1, 1.0f, 0 }, + /* OBJ_2F4_223 */ {(void*) func_801A54E8, 1, (ObjectFunc) func_801A4B24, D_60364DC, 300.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_224 */ {(void*) NULL, 1, (ObjectFunc) func_80189194, D_800CBF34, 200.0f, 0, 0, 39, 0, 0.0f, 0 }, + /* OBJ_2F4_225 */ {(void*) D_700AB70, 0, (ObjectFunc) func_8018AB44, D_60064AC, 50.0f, 0, 0, 39, 1, 1.0f, 0 }, + /* OBJ_2F4_226 */ {(void*) func_80189AFC, 1, (ObjectFunc) func_801895B8, D_60064C8, 300.0f, 0, 0, 39, 1, 70.0f, 1 }, + /* OBJ_2F4_227 */ {(void*) func_8018E5B4, 1, (ObjectFunc) func_8018E54C, D_60067C4, 0.0f, 0, 0, 39, 1, 0.0f, 0 }, + /* OBJ_2F4_228 */ {(void*) func_8018EF14, 1, (ObjectFunc) func_8018E5F8, D_6006808, 0.0f, 0, 0, 39, 1, 1.0f, 1 }, + /* OBJ_2F4_229 */ {(void*) func_8018E2D8, 1, (ObjectFunc) func_8018C8A8, D_6006A3C, 1000.0f, 0, 0, 20, 1, 0.0f, 1 }, + /* OBJ_2F4_230 */ {(void*) func_8018AABC, 1, (ObjectFunc) func_8018A544, D_600683C, 0.0f, 0, 1, 39, 1, 0.0f, 1 }, + /* OBJ_2F4_231 */ {(void*) func_8018BE84, 1, (ObjectFunc) func_8018B9D0, D_6006858, 0.0f, 0, 0, 39, 1, 0.0f, 1 }, + /* OBJ_2F4_232 */ {(void*) func_8018B6AC, 1, (ObjectFunc) func_8018B268, D_6006890_f32, 0.0f, 0, 0, 39, 1, 20.0f, 1 }, + /* OBJ_2F4_233 */ {(void*) func_8018A1C0, 1, (ObjectFunc) func_80189CC8, D_60068F0, 200.0f, 0, 0, 39, 1, 1.0f, 1 }, + /* OBJ_2F4_234 */ {(void*) func_80077218, 1, (ObjectFunc) func_800771CC, D_800CBF34, 2000.0f, 0, 0, 39, 0, 0.0f, 5 }, + /* OBJ_2F4_235 */ {(void*) func_E16C50_80190430, 2, (ObjectFunc) func_801904CC, D_602C294, 1000.0f, 0, 1, 40, 0, 1.0f, 1 }, + /* OBJ_2F4_236 */ {(void*) func_E16C50_80190F08, 1, (ObjectFunc) func_80190A00, D_602BC58, 5000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_237 */ {(void*) func_8006A978, 1, (ObjectFunc) func_8006A96C, D_800CBF34, 200.0f, 0, 0, 40, 0, 0.0f, 2 }, + /* OBJ_2F4_238 */ {(void*) func_801914C4, 2, (ObjectFunc) func_80191010, D_800CBE8C, 200.0f, 0, 1, 40, 0, 1.0f, 1 }, + /* OBJ_2F4_239 */ {(void*) NULL, 1, (ObjectFunc) NULL, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_240 */ {(void*) func_80191B4C, 1, (ObjectFunc) func_80191680, D_800CBE8C, 1500.0f, 0, 1, 40, 0, 20.0f, 0 }, + /* OBJ_2F4_241 */ {(void*) func_80191DB0, 1, (ObjectFunc) func_80191BC4, D_800CBE70, 1500.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_242 */ {(void*) func_80191FFC, 2, (ObjectFunc) func_80192094, D_602BE3C, 500.0f, 0, 0, 40, 0, 1.0f, 0 }, + /* OBJ_2F4_243 */ {(void*) func_80192C18, 2, (ObjectFunc) func_80192834, D_800CBE8C, 0.0f, 0, 1, 40, 0, 1.0f, 1 }, + /* OBJ_2F4_244 */ {(void*) func_80193240, 2, (ObjectFunc) func_80192E64, D_602BE58, 2000.0f, 0, 0, 40, 0, 50.0f, 0 }, + /* OBJ_2F4_245 */ {(void*) func_8019983C, 1, (ObjectFunc) func_8019969C, D_800CBE8C, 200.0f, 0, 0, 40, 0, 1.0f, 0 }, + /* OBJ_2F4_246 */ {(void*) func_80199E24, 1, (ObjectFunc) func_80199A28, D_800CBE8C, 2000.0f, 0, 0, 40, 0, 1.0f, 0 }, + /* OBJ_2F4_247 */ {(void*) func_8019D3C4, 1, (ObjectFunc) func_8019D15C, D_602BFC4, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_248 */ {(void*) func_8019A1FC, 1, (ObjectFunc) func_80199F10, D_800CBEA8, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_249 */ {(void*) func_8019ACCC, 1, (ObjectFunc) func_8019A5D4, D_800CBEC4, 5000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_250 */ {(void*) func_8019B7DC, 1, (ObjectFunc) func_8019B548, D_602C1D4, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_251 */ {(void*) func_8019BDE0, 2, (ObjectFunc) func_8019B854, D_602C218, 1000.0f, 0, 0, 40, 0, 1.0f, 1 }, + /* OBJ_2F4_252 */ {(void*) func_8019C1CC, 1, (ObjectFunc) func_8019BE48, D_602C234, 200.0f, 0, 0, 40, 0, 80.0f, 1 }, + /* OBJ_2F4_253 */ {(void*) func_8019C83C, 1, (ObjectFunc) func_8019C454, D_602C250, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_254 */ {(void*) func_8019CE58, 1, (ObjectFunc) func_8019CBEC, D_602C2B0, 300.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_255 */ {(void*) func_801AE168, 1, (ObjectFunc) func_801AD6C0, D_6030BFC, 500.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_256 */ {(void*) func_801AEB44, 1, (ObjectFunc) func_801AE3D8, D_6030C18, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_257 */ {(void*) func_801B099C, 1, (ObjectFunc) func_801AFA5C, D_6030C44, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_258 */ {(void*) func_801B0EC0, 1, (ObjectFunc) func_801B0B60, D_800CBE8C, 200.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_259 */ {(void*) func_801B619C, 2, (ObjectFunc) func_801B638C, D_6031398, 10000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_260 */ {(void*) func_801B90DC, 2, (ObjectFunc) func_801B7C78, D_60313CC, 300.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_261 */ {(void*) func_801B504C, 2, (ObjectFunc) func_801B50E8, D_6031400, 300.0f, 0, 0, 40, 0, 0.0f, 1 }, + /* OBJ_2F4_262 */ {(void*) func_801B7A24, 2, (ObjectFunc) func_801B6FF8, D_603144C, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_263 */ {(void*) func_801BA108, 2, (ObjectFunc) func_801B91A4, D_6031480, 200.0f, 0, 0, 40, 0, 0.0f, 1 }, + /* OBJ_2F4_264 */ {(void*) func_801BA4E4, 1, (ObjectFunc) func_801BA26C, D_800CBE8C, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_265 */ {(void*) func_801BAD7C, 1, (ObjectFunc) func_801BA6A4, D_6031500, 200.0f, 0, 0, 40, 0, 0.0f, 1 }, + /* OBJ_2F4_266 */ {(void*) func_801BB204, 2, (ObjectFunc) func_801BADF8, D_6031538, 200.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_267 */ {(void*) func_801BC930, 2, (ObjectFunc) func_801BB79C, D_6031554, 800.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_268 */ {(void*) func_801BDE6C, 1, (ObjectFunc) func_801BD54C, D_6031570, 10000.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_2F4_269 */ {(void*) func_801BD264, 1, (ObjectFunc) func_801BC9A0, D_6030D20, 2000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_270 */ {(void*) func_801BEB1C, 1, (ObjectFunc) func_801BE3F8, D_60314C8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_271 */ {(void*) func_8002E694, 2, (ObjectFunc) func_8002E670, D_6011B24, 0.0f, 0, 0, 39, 0, 730.0f, 1 }, + /* OBJ_2F4_272 */ {(void*) func_8002E6DC, 1, (ObjectFunc) func_8002E6B8, D_6011BF4, 0.0f, 0, 0, 39, 0, 150.0f, 1 }, + /* OBJ_2F4_273 */ {(void*) func_80188FE4, 2, (ObjectFunc) func_80188AD0, D_600FF30, 0.0f, 0, 0, 39, 0, 220.0f, 1 }, + /* OBJ_2F4_274 */ {(void*) func_8019E3A8, 1, (ObjectFunc) func_8019E234, D_800CBEC4, 0.0f, 0, 0, 39, 0, 1.0f, 0 }, + /* OBJ_2F4_275 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBE8C, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_276 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBE8C, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_277 */ {(void*) func_8019F7AC, 1, (ObjectFunc) func_8019F20C, D_800CBEC4, 200.0f, 0, 0, 39, 0, 1.0f, 1 }, + /* OBJ_2F4_278 */ {(void*) NULL, 1, (ObjectFunc) func_8019EA7C, D_800CBF34, 200.0f, 0, 0, 0, 0, 0.0f, 1 }, + /* OBJ_2F4_279 */ {(void*) NULL, 1, (ObjectFunc) func_801A003C, D_800CBF34, 1000.0f, 0, 0, 0, 0, 0.0f, 1 }, + /* OBJ_2F4_280 */ {(void*) D_900DD20, 0, (ObjectFunc) func_80192518, D_601B7F8, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_281 */ {(void*) func_80192E2C, 1, (ObjectFunc) func_80192CD4, D_601B830, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_282 */ {(void*) D_901DA50, 0, (ObjectFunc) func_80192CD4, D_601B868, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_283 */ {(void*) D_9023AD0, 0, (ObjectFunc) func_80192EB0, D_601B8A0, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_284 */ {(void*) func_801934D0, 1, (ObjectFunc) func_801933DC, D_601B8D8, 1000.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_2F4_285 */ {(void*) func_80193244, 1, (ObjectFunc) func_80192E94, D_800CBE8C, 1000.0f, 0, 0, 20, 0, 1.0f, 1 }, + /* OBJ_2F4_286 */ {(void*) func_80188660, 1, (ObjectFunc) func_80188528, D_800CBE8C, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_2F4_287 */ {(void*) NULL, 1, (ObjectFunc) func_80189724, D_800CBF34, 1000.0f, 0, 0, 40, 1, 0.0f, 0 }, + /* OBJ_2F4_288 */ {(void*) NULL, 1, (ObjectFunc) func_801893B8, D_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 }, + /* OBJ_2F4_289 */ {(void*) func_800596B0, 1, (ObjectFunc) func_80189470, D_800CBF34, 1000.0f, 0, 0, 20, 1, 0.0f, 0 }, + /* OBJ_2F4_290 */ {(void*) NULL, 1, (ObjectFunc) func_8018933C, D_800CBF34, 1000.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_2F4_291 */ {(void*) func_80067874, 1, (ObjectFunc) func_8006753C, D_800CBEA8, 1000.0f, 0, 0, 0, 0, 1.0f, 0 }, + /* OBJ_408_292 */ {(void*) func_8018AA74, 2, (ObjectFunc) func_80189058, D_603E620, 20000.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_293 */ {(void*) func_8018ECAC, 1, (ObjectFunc) func_8018C19C, D_603E840, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_294 */ {(void*) func_8018ED78, 1, (ObjectFunc) func_8018DDAC, D_603E714, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_295 */ {(void*) func_8018EE84, 1, (ObjectFunc) func_8018E290, D_603E748, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_296 */ {(void*) func_8018EF90, 1, (ObjectFunc) func_8018E76C, D_603E7C4, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_297 */ {(void*) func_8018BACC, 1, (ObjectFunc) func_8018978C, D_602F75C, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_298 */ {(void*) func_801887D0, 1, (ObjectFunc) func_80188344, D_602FA50, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_299 */ {(void*) func_80042FC4, 2, (ObjectFunc) func_80042FB8, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_300 */ {(void*) func_80042FE8, 1, (ObjectFunc) func_80042FDC, D_800CBF34, 20000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_301 */ {(void*) func_801BEC5C, 1, (ObjectFunc) func_801BEC50, D_6030B10, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_302 */ {(void*) func_8018C54C, 1, (ObjectFunc) func_80187944, D_6028454, 2000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_303 */ {(void*) func_80193434, 2, (ObjectFunc) func_80190078, D_6032550, 20000.0f, 0, 0, 20, 0, 0.0f, 10 }, + /* OBJ_408_304 */ {(void*) func_8018FF84, 2, (ObjectFunc) func_8018FE38, D_6032488, 1000.0f, 0, 0, 20, 0, 0.0f, 10 }, + /* OBJ_408_305 */ {(void*) func_80190020, 2, (ObjectFunc) func_8018FF20, D_60324EC, 1000.0f, 0, 0, 20, 0, 0.0f, 10 }, + /* OBJ_408_306 */ {(void*) func_801982A8, 1, (ObjectFunc) func_80197A94,D_E6A810_801B83A8, 1000.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_307 */ {(void*) func_801949DC, 2, (ObjectFunc) func_80194A84, D_602C044, 1000.0f, 0, 0, 40, 0, 1.0f, 10 }, + /* OBJ_408_308 */ {(void*) func_8008FE78, 1, (ObjectFunc) func_800907C4, D_600FFE0, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_309 */ {(void*) func_8002E604, 1, (ObjectFunc) func_8002E5E0, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_310 */ {(void*) func_8002E64C, 1, (ObjectFunc) func_8002E628, D_800CBF34, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_311 */ {(void*) func_80191AFC, 2, (ObjectFunc) func_801912FC, D_6011C80, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_312 */ {(void*) func_80196288, 2, (ObjectFunc) func_80196210, D_60166F4, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_313 */ {(void*) func_8019E98C, 1, (ObjectFunc) func_8019E454, D_6009388, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_314 */ {(void*) func_8019E2C4, 2, (ObjectFunc) func_8019C888, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_315 */ {(void*) func_801A71B8, 2, (ObjectFunc) func_801A5B3C, D_800CBF34, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_316 */ {(void*) func_801968F4, 1, (ObjectFunc) func_801946C4, D_6011058, 0.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_317 */ {(void*) func_80193B1C, 1, (ObjectFunc) func_80193718, D_601115C, 0.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_318 */ {(void*) func_801B4D84, 2, (ObjectFunc) func_801B134C, D_6030F74, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_319 */ {(void*) func_801985E4, 1, (ObjectFunc) func_80194398,D_DF4260_8019A9B8, 3000.0f, 0, 0, 40, 1, 0.0f, 10 }, + /* OBJ_408_320 */ {(void*) func_801928C8, 2, (ObjectFunc) func_8018DBF0, D_C038DC0, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_408_321 */ {(void*) func_8018B8C0, 1, (ObjectFunc) func_80189B70, D_C038F24, 10000.0f, 0, 0, 40, 0, 0.0f, 10 }, + /* OBJ_ITEM_LASERS */ {(void*) func_8005CC9C, 1, (ObjectFunc) func_80067F6C, D_800CBFA8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_CHECKPOINT */ {(void*) func_8005C5F0, 1, (ObjectFunc) func_80068914, D_800CBF38, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_SILVER_RING */ {(void*) func_8005C900, 1, (ObjectFunc) func_80068020, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_SILVER_STAR */ {(void*) func_8005C9C0, 1, (ObjectFunc) func_800685D8, D_800CBF54, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_METEO_WARP */ {(void*) func_8005CDA8, 1, (ObjectFunc) func_80068688, D_800CBF70, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_BOMB */ {(void*) func_8005CB44, 1, (ObjectFunc) func_80067BEC, D_800CBFC8, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_328 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_329 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_ITEM_330 */ {(void*) NULL, 1, (ObjectFunc) func_80068C88, D_800CBF8C, 1500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* 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_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 }, + /* OBJ_ITEM_TRAINING_RING */ {(void*) D_6006140, 0, (ObjectFunc) func_80198968, D_6009CFC, 700.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_8C_339 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D2F4, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_340 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D748, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_341 */ {(void*) func_8007D55C, 1, (ObjectFunc) func_8007D8A8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_342 */ {(void*) func_8007E330, 1, (ObjectFunc) func_8007E298, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_343 */ {(void*) func_8007CAF0, 1, (ObjectFunc) func_8007C9E0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_344 */ {(void*) func_8007868C, 1, (ObjectFunc) func_8007E014, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_345 */ {(void*) func_8007879C, 1, (ObjectFunc) func_8007E258, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_346 */ {(void*) func_800788B0, 1, (ObjectFunc) func_8007F438, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 }, + /* OBJ_8C_347 */ {(void*) func_800783C0, 1, (ObjectFunc) func_8007B758, NULL, 100.0f, 1, 0, 40, 0, 0.0f, 0 }, + /* OBJ_8C_348 */ {(void*) func_80078A64, 1, (ObjectFunc) func_8007F6B0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_349 */ {(void*) NULL, 1, (ObjectFunc) func_8007F958, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_350 */ {(void*) NULL, 1, (ObjectFunc) func_8007FBE0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_351 */ {(void*) func_80078438, 1, (ObjectFunc) func_8007E3E4, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_352 */ {(void*) func_800784B4, 1, (ObjectFunc) func_8007B62C, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_353 */ {(void*) func_80078B8C, 1, (ObjectFunc) func_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_354 */ {(void*) func_80197C64, 1, (ObjectFunc) func_8007FE88, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_355 */ {(void*) func_80078AEC, 1, (ObjectFunc) func_800802B8, NULL, 100.0f, 1, 0, 20, 1, 0.0f, 0 }, + /* OBJ_8C_356 */ {(void*) func_80078C84, 1, (ObjectFunc) func_800802F8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_357 */ {(void*) func_800798F0, 1, (ObjectFunc) func_8007968C, NULL, 100.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_358 */ {(void*) func_80192A68, 1, (ObjectFunc) func_80192984, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_359 */ {(void*) func_8007AA60, 1, (ObjectFunc) func_8007A994, NULL, -100.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_360 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BE54, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_361 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BDE0, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_362 */ {(void*) func_8007BEE8, 1, (ObjectFunc) func_8007BCE8, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_363 */ {(void*) func_80094BBC, 1, (ObjectFunc) func_80094954, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_364 */ {(void*) func_8007B9DC, 1, (ObjectFunc) func_8007B960, NULL, -200.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_365 */ {(void*) func_8007E5CC, 1, (ObjectFunc) func_8007E45C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_366 */ {(void*) func_80078550, 1, (ObjectFunc) func_801AC918, NULL, 100.0f, 1, 2, 0, 0, 0.0f, 0 }, + /* OBJ_8C_367 */ {(void*) func_80078604, 1, (ObjectFunc) func_8007E648, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_368 */ {(void*) func_80188FA8, 1, (ObjectFunc) func_80188F60, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_369 */ {(void*) func_8018DCE4, 1, (ObjectFunc) func_80188CAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_8C_370 */ {(void*) func_8018DBEC, 1, (ObjectFunc) func_80188FAC, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_8C_371 */ {(void*) func_8018DE14, 1, (ObjectFunc) func_80189114, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_8C_372 */ {(void*) func_80077A00, 1, (ObjectFunc) func_8007AB50, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_373 */ {(void*) NULL, 1, (ObjectFunc) func_8007A748, NULL, 500.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_374 */ {(void*) func_8007DED4, 1, (ObjectFunc) func_8007DB70, NULL, 100.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_8C_375 */ {(void*) func_8007DAE4, 1, (ObjectFunc) func_8007DA58, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_376 */ {(void*) func_80078CE8, 1, (ObjectFunc) func_80080360, NULL, -200.0f, 1, 0, 0, 0, 0.0f, 0 }, + /* OBJ_8C_377 */ {(void*) func_80078BE0, 1, (ObjectFunc) func_800802D8, NULL, 100.0f, 1, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_378 */ {(void*) func_801A5AF0, 1, (ObjectFunc) func_801A57D0, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_379 */ {(void*) func_801AEAA0, 1, (ObjectFunc) func_801AE87C, NULL, 100.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_380 */ {(void*) func_801A5D68, 1, (ObjectFunc) func_801A5B4C, NULL, 100.0f, 0, 0, 20, 0, 0.0f, 0 }, + /* OBJ_8C_381 */ {(void*) func_80077A7C, 1, (ObjectFunc) func_8007B0F4, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_8C_382 */ {(void*) NULL, 1, (ObjectFunc) func_8007B040, NULL, 200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_383 */ {(void*) func_8007A3C0, 1, (ObjectFunc) func_8007A28C, NULL, 10000.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_384 */ {(void*) func_80077B84, 1, (ObjectFunc) func_8007B3B8, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_385 */ {(void*) func_80078038, 1, (ObjectFunc) func_8007B5C0, NULL, -200.0f, -1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_386 */ {(void*) NULL, 1, (ObjectFunc) func_8007C250, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_387 */ {(void*) NULL, 1, (ObjectFunc) func_8007C8C4, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_388 */ {(void*) func_80077B78, 1, (ObjectFunc) func_8007B670, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_389 */ {(void*) func_800780F8, 1, (ObjectFunc) func_8007B67C, NULL, -200.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_390 */ {(void*) NULL, 1, (ObjectFunc) func_8007C50C, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_391 */ {(void*) func_80083B8C, 1, (ObjectFunc) func_800837EC, NULL, 500.0f, 0, 0, 0, 0, 0.0f, 0 }, + /* OBJ_8C_392 */ {(void*) func_801A0AF0, 1, (ObjectFunc) func_801A0120, NULL, 300.0f, 1, 2, 10, 0, 0.0f, 0 }, + /* OBJ_8C_393 */ {(void*) func_80078F78, 1, (ObjectFunc) func_80078EBC, NULL, 300.0f, 1, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_394 */ {(void*) func_80080D04, 1, (ObjectFunc) func_80080ACC, NULL, -200.0f, 0, 1, 0, 0, 0.0f, 0 }, + /* OBJ_8C_395 */ {(void*) func_80082F78, 1, (ObjectFunc) func_80081C5C, NULL, 300.0f, 0, 1, 40, 0, 0.0f, 0 }, + /* OBJ_8C_396 */ {(void*) func_8018CF98, 1, (ObjectFunc) func_8018CAD4, NULL, 2000.0f, 0, 1, 40, 2, 0.0f, 0 }, + /* OBJ_8C_397 */ {(void*) func_80191180, 1, (ObjectFunc) func_80191054, NULL, 2000.0f, 0, 1, 20, 0, 0.0f, 0 }, + /* OBJ_8C_398 */ {(void*) func_8008092C, 1, (ObjectFunc) func_8008040C, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, + /* OBJ_8C_399 */ {(void*) func_80084194, 1, (ObjectFunc) func_80083FA8, NULL, 100.0f, 0, 0, 40, 0, 0.0f, 0 }, }; // clang-format on diff --git a/src/main/fox_edisplay.c b/src/main/fox_edisplay.c index 61e6c859..0c7a1ced 100644 --- a/src/main/fox_edisplay.c +++ b/src/main/fox_edisplay.c @@ -73,7 +73,7 @@ void func_80059A24(Object_2F4* obj2F4) { Matrix_Translate(gGfxMatrix, 0.f, -temp, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); Animation_GetFrameData(&D_601E8C4, obj2F4->unk_0B6, sp30); - Animation_DrawSkeleton(1, D_601E9D0, sp30, NULL, func_800599A4, &obj2F4->unk_040, &gIdentityMatrix); + Animation_DrawSkeleton(1, D_601E9D0, sp30, NULL, func_800599A4, &obj2F4->index, &gIdentityMatrix); } void func_80059AEC(Object_80* obj80) { @@ -81,7 +81,7 @@ void func_80059AEC(Object_80* obj80) { } void func_80059B20(Object_80* obj80) { - if (obj80->obj.id == OBJECT_29) { + if (obj80->obj.id == OBJ_80_29) { gSPDisplayList(gMasterDisp++, D_7007350); } else { func_8005980C(D_800CF9B0[obj80->obj.id + 2]); @@ -147,13 +147,13 @@ void func_80059C40(Object_4C* obj4C) { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } -void func_80059F68(Object_6C* obj6C) { +void func_80059F68(Item* item) { Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -95.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_602DA20); } -void func_80059FDC(Object_6C* obj6C) { +void func_80059FDC(Item* item) { gSPDisplayList(gMasterDisp++, D_6035DA0); } @@ -255,7 +255,7 @@ void func_8005A094(Object_2F4* obj2F4) { break; case 4: func_8005980C(obj2F4->unk_110); - if (obj2F4->unk_040 & 1) { + if (obj2F4->index & 1) { gSPDisplayList(gMasterDisp++, D_10194C0); } else { gSPDisplayList(gMasterDisp++, D_1024290); @@ -447,7 +447,7 @@ void func_8005ADAC(Object_2F4* obj2F4) { Matrix_Pop(&gGfxMatrix); } sp5C = obj2F4->unk_168; - if ((sp5C != 0.0f) && (gLevelType == 0)) { + if ((sp5C != 0.0f) && (gLevelType == LEVELTYPE_GROUND)) { sp54 = 0.0f; if (gFrameCount & 1) { sp54 = 180.0f; @@ -510,18 +510,18 @@ void func_8005B388(Object_2F4* obj2F4) { 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)) && (gCurrentLevel != LEVEL_MACBETH) && (gCurrentLevel != LEVEL_TITANIA)) { - if (obj2F4->obj.id == OBJECT_195) { - if (((gCurrentLevel == LEVEL_VENOM_SW) && (gPlayer[0].unk_1C8 == 7) && (obj2F4->unk_040 == 10)) || + 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->unk_040 == 1)) || + (obj2F4->index == 1)) || ((gCurrentLevel == LEVEL_SECTOR_Y) && (gPlayer[0].unk_1C8 == 0) && (obj2F4->unk_0B8 == 5))) { D_80161630.rightState = gPlayer[0].wings.rightState; D_80161630.leftState = gPlayer[0].wings.leftState; } else { - D_80161630.rightState = D_80161630.leftState = 2; + D_80161630.rightState = D_80161630.leftState = WINGSTATE_INTACT; } } else { - D_80161630.rightState = D_80161630.leftState = 2; + D_80161630.rightState = D_80161630.leftState = WINGSTATE_INTACT; } D_80161630.unk_04 = obj2F4->unk_150; D_80161630.unk_0C = obj2F4->unk_154; @@ -617,7 +617,7 @@ void func_8005BAB4(s32 objId, s32 index) { f32 temp2; switch (objId) { - case OBJECT_374: + case OBJ_8C_374: if (gObjects8C[index].unk_4E == 0) { Matrix_Scale(gGfxMatrix, 1.2f, 0.0f, 1.2f, 1); Matrix_RotateX(gGfxMatrix, M_PI / 2.0f, 1); @@ -626,9 +626,9 @@ void func_8005BAB4(s32 objId, s32 index) { } RCP_SetupDL(&gMasterDisp, 0x40); break; - case OBJECT_195: - case OBJECT_198: - case OBJECT_200: + case OBJ_2F4_195: + case OBJ_2F4_198: + case OBJ_2F4_200: switch (gObjects2F4[index].unk_0B4) { case 3: Matrix_Scale(gGfxMatrix, 2.3f, 0.0f, 2.3f, 1); @@ -658,10 +658,10 @@ void func_8005BAB4(s32 objId, s32 index) { break; } break; - case OBJECT_292: + case OBJ_408_292: gSPDisplayList(gMasterDisp++, D_6034B90); break; - case OBJECT_316: + case OBJ_408_316: if (gPlayer[0].unk_1C8 == 0) { RCP_SetupDL(&gMasterDisp, 0x40); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 200); @@ -670,10 +670,10 @@ void func_8005BAB4(s32 objId, s32 index) { func_8005980C(150.0f); gSPDisplayList(gMasterDisp++, D_102A8A0); break; - case OBJECT_293: - case OBJECT_294: - case OBJECT_295: - case OBJECT_296: + case OBJ_408_293: + case OBJ_408_294: + case OBJ_408_295: + case OBJ_408_296: __cosf(gObjects408[index].obj.rot.z * M_DTOR); if (D_80161A88 == 2) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 90); @@ -681,25 +681,25 @@ void func_8005BAB4(s32 objId, s32 index) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); } switch (objId) { - case OBJECT_293: + case OBJ_408_293: gSPDisplayList(gMasterDisp++, D_6036840); break; - case OBJECT_294: + case OBJ_408_294: gSPDisplayList(gMasterDisp++, D_6036CD0); break; - case OBJECT_295: - case OBJECT_296: + case OBJ_408_295: + case OBJ_408_296: gSPDisplayList(gMasterDisp++, D_60363B0); break; } break; - case OBJECT_192: + 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_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_6034B90); break; - case OBJECT_230: + case OBJ_2F4_230: RCP_SetupDL_48(); RCP_SetupDL(&gMasterDisp, 0x45); gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); @@ -712,7 +712,7 @@ void func_8005BAB4(s32 objId, s32 index) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); break; - case OBJECT_229: + case OBJ_2F4_229: RCP_SetupDL(&gMasterDisp, 0x44); gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); @@ -726,7 +726,7 @@ void func_8005BAB4(s32 objId, s32 index) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); break; - case OBJECT_231: + case OBJ_2F4_231: RCP_SetupDL(&gMasterDisp, 0x45); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 0); @@ -738,7 +738,7 @@ void func_8005BAB4(s32 objId, s32 index) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); break; - case OBJECT_215: + case OBJ_2F4_215: RCP_SetupDL_48(); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 255); @@ -746,16 +746,16 @@ void func_8005BAB4(s32 objId, s32 index) { Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_1024AC0); break; - case OBJECT_319: + case OBJ_408_319: func_DF4260_80198310(&gObjects408[index]); break; } } -void func_8005C5F0(Object_6C* obj6C) { +void func_8005C5F0(Item* item) { s32 i; - if ((gFrameCount & 0x18) && (obj6C->unk_46 == 0)) { + if ((gFrameCount & 0x18) && (item->unk_46 == 0)) { Matrix_Push(&gGfxMatrix); RCP_SetupDL(&gMasterDisp, 0x40); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); @@ -769,53 +769,53 @@ void func_8005C5F0(Object_6C* obj6C) { RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); - Matrix_RotateZ(gGfxMatrix, obj6C->unk_58 * M_DTOR, 1); + Matrix_RotateZ(gGfxMatrix, item->unk_58 * M_DTOR, 1); for (i = 0; i < 8; i++) { Matrix_Push(&gGfxMatrix); Matrix_RotateZ(gGfxMatrix, i * 45.0f * M_DTOR, 1); - Matrix_Translate(gGfxMatrix, 2.0f * obj6C->unk_68, 0.0f, 0.0f, 1); - Matrix_RotateZ(gGfxMatrix, (gFrameCount + (i * 110.0f)) * M_DTOR * 7.2f * obj6C->unk_54, 1); - func_8005980C(2.0f * obj6C->unk_50); + Matrix_Translate(gGfxMatrix, 2.0f * item->unk_68, 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); gSPDisplayList(gMasterDisp++, D_101CAE0); Matrix_Pop(&gGfxMatrix); } gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN); } -void func_8005C900(Object_6C* obj6C) { +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(obj6C->unk_68); + func_8005980C(item->unk_68); gSPDisplayList(gMasterDisp++, D_101A570); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } -void func_8005C9C0(Object_6C* obj6C) { +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(obj6C->unk_68); + func_8005980C(item->unk_68); gSPDisplayList(gMasterDisp++, D_1019CA0); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } -void func_8005CA80(Object_6C* obj6C) { +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(obj6C->unk_68); + func_8005980C(item->unk_68); gSPDisplayList(gMasterDisp++, D_1016870); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); } -void func_8005CB44(Object_6C* obj6C) { +void func_8005CB44(Item* item) { if (gCurrentLevel == LEVEL_AQUAS) { - func_8005980C(obj6C->unk_68); + func_8005980C(item->unk_68); gSPDisplayList(gMasterDisp++, D_3005980); } else { - func_8005980C(obj6C->unk_68 * 0.1f); + func_8005980C(item->unk_68 * 0.1f); RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); @@ -827,8 +827,8 @@ void func_8005CB44(Object_6C* obj6C) { } } -void func_8005CC9C(Object_6C* obj6C) { - func_8005980C(obj6C->unk_68 * 0.1f); +void func_8005CC9C(Item* item) { + func_8005980C(item->unk_68 * 0.1f); RCP_SetupDL(&gMasterDisp, 0x1D); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); @@ -839,16 +839,16 @@ void func_8005CC9C(Object_6C* obj6C) { gSPDisplayList(gMasterDisp++, D_101A8E0); } -void func_8005CDA8(Object_6C* obj6C) { +void func_8005CDA8(Item* item) { s32 i; - obj6C->obj.rot.y = (Math_Atan2F(gPlayer[D_801778A0].unk_040.x - obj6C->obj.pos.x, - gPlayer[D_801778A0].unk_040.z - (obj6C->obj.pos.z + D_80177D20)) * - 180.0f) / - M_PI; - if (obj6C->unk_46 != 0) { + 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)) * + 180.0f) / + M_PI; + if (item->unk_46 != 0) { RCP_SetupDL(&gMasterDisp, 0x29); - gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, obj6C->unk_44); + gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, item->unk_44); } else { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } @@ -856,7 +856,7 @@ void func_8005CDA8(Object_6C* obj6C) { 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, obj6C->unk_68, 0.0f, 1); + Matrix_Translate(gGfxMatrix, 0.0f, item->unk_68, 0.0f, 1); Matrix_SetGfxMtx(&gMasterDisp); gSPDisplayList(gMasterDisp++, D_102FE80); Matrix_Pop(&gGfxMatrix); @@ -934,20 +934,20 @@ void func_8005D3CC(Object* obj, f32 xRot, f32 yRot, f32 zRot, s32 drawType) { void Object_80_Draw(Object_80* obj80, s32 arg1) { obj80->obj.pos.y += D_8017847C; - func_8005D008(&obj80->obj, obj80->unk_1C.drawType); + func_8005D008(&obj80->obj, obj80->info.drawType); obj80->obj.pos.y -= D_8017847C; - if (obj80->unk_1C.drawType == 0) { - if ((obj80->obj.id == OBJECT_19) || (obj80->obj.id == OBJECT_55) || (obj80->obj.id == OBJECT_9) || - (obj80->obj.id == OBJECT_50)) { + if (obj80->info.drawType == 0) { + if ((obj80->obj.id == OBJ_80_19) || (obj80->obj.id == OBJ_80_55) || (obj80->obj.id == OBJ_80_9) || + (obj80->obj.id == OBJ_80_50)) { RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); if (arg1 < 0) { func_800596C0(); } - gSPDisplayList(gMasterDisp++, obj80->unk_1C.dList); + gSPDisplayList(gMasterDisp++, obj80->info.dList); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { - if (obj80->obj.id == OBJECT_8) { + if (obj80->obj.id == OBJ_80_8) { if (arg1 < 0) { return; // weird control flow } @@ -957,14 +957,14 @@ void Object_80_Draw(Object_80* obj80, s32 arg1) { if (arg1 < 0) { func_800596C0(); } - gSPDisplayList(gMasterDisp++, obj80->unk_1C.dList); - if (obj80->obj.id == OBJECT_8) { + gSPDisplayList(gMasterDisp++, obj80->info.dList); + if (obj80->obj.id == OBJ_80_8) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } } - } else if (obj80->unk_1C.draw != NULL) { + } else if (obj80->info.draw != NULL) { func_800597C0(arg1); - obj80->unk_1C.draw(&obj80->obj); + obj80->info.draw(&obj80->obj); } } @@ -973,10 +973,10 @@ void Object_4C_Draw(Object_4C* obj4C, s32 arg1) { obj4C->obj.pos.y += D_8017847C; func_8005D008(&obj4C->obj, 0); obj4C->obj.pos.y -= D_8017847C; - if (obj4C->unk_1C.drawType == 0) { - gSPDisplayList(gMasterDisp++, obj4C->unk_1C.dList); - } else if (obj4C->unk_1C.draw != NULL) { - obj4C->unk_1C.draw(&obj4C->obj); + if (obj4C->info.drawType == 0) { + gSPDisplayList(gMasterDisp++, obj4C->info.dList); + } else if (obj4C->info.draw != NULL) { + obj4C->info.draw(&obj4C->obj); } } } @@ -984,41 +984,41 @@ void Object_4C_Draw(Object_4C* obj4C, s32 arg1) { void Object_2F4_Draw2(Object_2F4* obj2F4) { Vec3f sp34 = { 0.0f, 0.0f, 0.0f }; - if (obj2F4->unk_01C.draw != NULL) { + if (obj2F4->info.draw != NULL) { switch (obj2F4->obj.id) { - case OBJECT_194: + case OBJ_2F4_194: func_8006B74C(obj2F4); return; - case OBJECT_236: + case OBJ_2F4_236: func_E16C50_80190F08(obj2F4); return; } - if ((obj2F4->obj.id == OBJECT_200) && (obj2F4->unk_0B4 == 200)) { + if ((obj2F4->obj.id == OBJ_2F4_200) && (obj2F4->unk_0B4 == 200)) { func_8006B74C(obj2F4); } else { - if (obj2F4->unk_01C.unk_19 != 0) { + if (obj2F4->info.unk_19 != 0) { obj2F4->obj.pos.y += D_8017847C; - func_8005D008(&obj2F4->obj, obj2F4->unk_01C.drawType); + func_8005D008(&obj2F4->obj, obj2F4->info.drawType); obj2F4->obj.pos.y -= D_8017847C; - } else if ((obj2F4->obj.id == OBJECT_200) && (obj2F4->unk_0B4 != 31)) { + } else if ((obj2F4->obj.id == OBJ_2F4_200) && (obj2F4->unk_0B4 != 31)) { func_8005D3CC(&obj2F4->obj, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z, - obj2F4->unk_01C.drawType); + obj2F4->info.drawType); } else { - func_8005D008(&obj2F4->obj, obj2F4->unk_01C.drawType); + func_8005D008(&obj2F4->obj, obj2F4->info.drawType); } - if (obj2F4->unk_01C.drawType == 0) { - gSPDisplayList(gMasterDisp++, obj2F4->unk_01C.dList); + if (obj2F4->info.drawType == 0) { + gSPDisplayList(gMasterDisp++, obj2F4->info.dList); func_8005F1EC(&obj2F4->sfxPos); } else { - obj2F4->unk_01C.draw(&obj2F4->obj); + obj2F4->info.draw(&obj2F4->obj); func_8005F1EC(&obj2F4->sfxPos); - if (((obj2F4->obj.id == OBJECT_198) || ((obj2F4->obj.id == OBJECT_203) && (obj2F4->unk_0B6 > 0))) && + if (((obj2F4->obj.id == OBJ_2F4_198) || ((obj2F4->obj.id == OBJ_2F4_203) && (obj2F4->unk_0B6 > 0))) && (D_80161410 > 0)) { Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80177E98[obj2F4->unk_0E4]); } } if ((obj2F4->unk_0CA[0] != 0) && (D_80161410 > 0)) { - sp34.y += obj2F4->unk_01C.unk_1C; + 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; @@ -1037,7 +1037,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { f32 var_fv1; D_801615EC = 0; - if (obj2F4->unk_01C.drawType == 2) { + if (obj2F4->info.drawType == 2) { Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, D_80177D20, 1); Matrix_Translate(gCalcMatrix, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 0); Matrix_Push(&gGfxMatrix); @@ -1046,7 +1046,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { Matrix_Pop(&gGfxMatrix); var_fv0 = 0.0f; var_fv1 = -12000.0f; - if ((obj2F4->obj.id == OBJECT_197) && (obj2F4->unk_0E4 >= 100)) { + if ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 >= 100)) { var_fv0 = 1000.0f; var_fv1 = -25000.0f; } @@ -1056,9 +1056,9 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { Matrix_RotateY(gCalcMatrix, obj2F4->obj.rot.y * M_DTOR, 1); Matrix_RotateX(gCalcMatrix, obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateZ(gCalcMatrix, obj2F4->obj.rot.z * M_DTOR, 1); - obj2F4->unk_01C.draw(&obj2F4->obj); + obj2F4->info.draw(&obj2F4->obj); D_801615EC = 1; - if ((gPlayer[0].unk_1C8 == 3) && (obj2F4->obj.id == OBJECT_197) && (obj2F4->unk_0E4 == 200)) { + if ((gPlayer[0].unk_1C8 == 3) && (obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 == 200)) { D_80177E98[0] = D_801615E0; } } @@ -1068,8 +1068,8 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { 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) || - ((obj2F4->obj.id == OBJECT_197) && (obj2F4->unk_0E4 >= 100)) || - ((obj2F4->obj.id == OBJECT_195) && (obj2F4->unk_01C.bonus != 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; var_fv1 = -29000.0f; var_fa1 = 0.7f; @@ -1082,17 +1082,17 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { if ((var_fv0 > D_801615E0.z) && (D_801615E0.z > var_fv1)) { if (fabsf(D_801615E0.x) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) { if (fabsf(D_801615E0.y) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) { - if (obj2F4->unk_01C.draw != NULL) { + if (obj2F4->info.draw != NULL) { Matrix_RotateY(gGfxMatrix, obj2F4->obj.rot.y * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj2F4->obj.rot.z * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); - obj2F4->unk_01C.draw(&obj2F4->obj); + obj2F4->info.draw(&obj2F4->obj); D_801615EC = 1; if ((gPlayer[0].unk_1C8 == 3) && - (((obj2F4->obj.id == OBJECT_197) && + (((obj2F4->obj.id == OBJ_2F4_197) && ((obj2F4->unk_0E4 < 4) || (obj2F4->unk_0E4 == 8) || (obj2F4->unk_0E4 == 9))) || - (obj2F4->obj.id == OBJECT_198))) { + (obj2F4->obj.id == OBJ_2F4_198))) { D_80177E98[obj2F4->unk_0E4] = D_801615E0; } } @@ -1102,14 +1102,14 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) { } if (D_801615EC == 0) { obj2F4->unk_0CA[D_801778A0] = 0; - if ((obj2F4->obj.id == OBJECT_189) || (obj2F4->obj.id == OBJECT_286)) { + 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) { D_80161578[var_v1] = D_801615E0; - D_80161578[var_v1].y += obj2F4->unk_01C.unk_1C; + 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; } @@ -1127,21 +1127,21 @@ void Object_408_Draw(Object_408* obj408, s32 arg1) { f32 sp3C; Vec3f sp30 = { 0.0f, 0.0f, 0.0f }; - if (obj408->unk_01C.unk_19 != 0) { + if (obj408->info.unk_19 != 0) { obj408->obj.pos.y += obj408->unk_068 + D_8017847C; - func_8005D1F0(&obj408->obj, obj408->unk_01C.drawType); + func_8005D1F0(&obj408->obj, obj408->info.drawType); obj408->obj.pos.y -= obj408->unk_068 + D_8017847C; } else { - func_8005D1F0(&obj408->obj, obj408->unk_01C.drawType); + func_8005D1F0(&obj408->obj, obj408->info.drawType); } Matrix_MultVec3f(&D_801615F0, &sp30, &D_801615D0); func_8005F290(&obj408->sfxPos, &D_801615D0); - if ((obj408->obj.id == OBJECT_316) || (obj408->obj.id == OBJECT_317)) { + if ((obj408->obj.id == OBJ_408_316) || (obj408->obj.id == OBJ_408_317)) { var_fa1 = 6000.0f; var_fv0 = 6000.0f; var_ft5 = 0.9f; var_fv1 = -20000.0f; - } else if (obj408->obj.id == OBJECT_313) { + } else if (obj408->obj.id == OBJ_408_313) { var_fv1 = -25000.0f; var_ft5 = 0.7f; var_fa1 = 3000.0f; @@ -1157,27 +1157,27 @@ void Object_408_Draw(Object_408* obj408, s32 arg1) { if (fabsf(D_801615D0.x) < (fabsf(D_801615D0.z * var_ft5) + var_fa1)) { if (fabsf(D_801615D0.y) < (fabsf(D_801615D0.z * var_ft5) + var_fa1)) { sp3C = 1.0f; - if (obj408->obj.id != OBJECT_309) { - if (obj408->obj.id != OBJECT_316) { + if (obj408->obj.id != OBJ_408_309) { + if (obj408->obj.id != OBJ_408_316) { func_8005F670(&obj408->obj.pos); } - if (obj408->unk_01C.drawType != 2) { + if (obj408->info.drawType != 2) { Matrix_SetGfxMtx(&gMasterDisp); } if (arg1 < 0) { func_800596C0(); } - obj408->unk_01C.draw(&obj408->obj); + obj408->info.draw(&obj408->obj); } } } } D_801615D0.y = sp3C; - if (obj408->obj.id == OBJECT_309) { + if (obj408->obj.id == OBJ_408_309) { obj408->unk_308 = D_801615D0; func_8005F670(&obj408->obj.pos); Matrix_SetGfxMtx(&gMasterDisp); - obj408->unk_01C.draw(&obj408->obj); + obj408->info.draw(&obj408->obj); } } @@ -1185,17 +1185,17 @@ void Object_8C_Draw1(Object_8C* obj8C, s32 arg1) { if ((arg1 < 0) && (obj8C->obj.pos.y < 7.0f)) { return; } - if ((obj8C->obj.id == OBJECT_353) || (obj8C->obj.id == OBJECT_369)) { + if ((obj8C->obj.id == OBJ_8C_353) || (obj8C->obj.id == OBJ_8C_369)) { func_8005D3CC(&obj8C->obj, obj8C->unk_60.x, obj8C->unk_60.y, obj8C->unk_60.z, 0); - } else if (obj8C->unk_1C.unk_14 == -1) { + } else if (obj8C->info.unk_14 == -1) { obj8C->obj.pos.y += D_8017847C; func_8005D008(&obj8C->obj, 0); obj8C->obj.pos.y -= D_8017847C; } else { func_8005D008(&obj8C->obj, 0); } - if (obj8C->unk_1C.draw != NULL) { - obj8C->unk_1C.draw(&obj8C->obj); + if (obj8C->info.draw != NULL) { + obj8C->info.draw(&obj8C->obj); } } @@ -1205,7 +1205,7 @@ void Object_8C_Draw2(Object_8C* obj8C) { f32 var_fv0; u8 sp3B = 0; - if (obj8C->unk_1C.unk_14 == -1) { + if (obj8C->info.unk_14 == -1) { Matrix_Translate(gGfxMatrix, obj8C->obj.pos.x, obj8C->obj.pos.y + D_8017847C, obj8C->obj.pos.z + D_80177D20, 1); } else { Matrix_Translate(gGfxMatrix, obj8C->obj.pos.x, obj8C->obj.pos.y, obj8C->obj.pos.z + D_80177D20, 1); @@ -1219,53 +1219,53 @@ void Object_8C_Draw2(Object_8C* obj8C) { if ((sp40.z < 0.0f) && (var_fv0 < sp40.z)) { if (fabsf(sp40.x) < (fabsf(sp40.z * 0.5f) + 500.0f)) { if (fabsf(sp40.y) < (fabsf(sp40.z * 0.5f) + 500.0f)) { - if (obj8C->unk_1C.draw != NULL) { + if (obj8C->info.draw != NULL) { Matrix_RotateY(gGfxMatrix, obj8C->obj.rot.y * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj8C->obj.rot.x * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj8C->obj.rot.z * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); - obj8C->unk_1C.draw(&obj8C->obj); + obj8C->info.draw(&obj8C->obj); } sp3B = 1; } } } func_8005F290(&obj8C->sfxPos, &sp40); - if ((sp3B == 0) && (obj8C->obj.id != OBJECT_352) && (obj8C->obj.id != OBJECT_373) && (D_801778E8 == 0)) { + if ((sp3B == 0) && (obj8C->obj.id != OBJ_8C_352) && (obj8C->obj.id != OBJ_8C_373) && (!gVersusMode)) { Object_Kill(&obj8C->obj, &obj8C->sfxPos); } } -void Object_6C_Draw(Object_6C* obj6C, s32 arg1) { +void Item_Draw(Item* item, s32 arg1) { Vec3f sp44 = { 0.0f, 0.0f, 0.0f }; Vec3f sp38; u8 var_v0; - Matrix_Translate(gGfxMatrix, obj6C->obj.pos.x, obj6C->obj.pos.y, obj6C->obj.pos.z + D_80177D20, 1); + Matrix_Translate(gGfxMatrix, item->obj.pos.x, item->obj.pos.y, item->obj.pos.z + D_80177D20, 1); Matrix_MultVec3f(gGfxMatrix, &sp44, &sp38); var_v0 = 0; if ((sp38.z < 0.0f) && (sp38.z > -12000.0f)) { if (fabsf(sp38.x) < (fabsf(sp38.z * 0.5f) + 500.0f)) { if (fabsf(sp38.y) < (fabsf(sp38.z * 0.5f) + 500.0f)) { - if (obj6C->unk_1C.draw != NULL) { - Matrix_RotateY(gGfxMatrix, obj6C->obj.rot.y * M_DTOR, 1); - Matrix_RotateX(gGfxMatrix, obj6C->obj.rot.x * M_DTOR, 1); - Matrix_RotateZ(gGfxMatrix, obj6C->obj.rot.z * M_DTOR, 1); + if (item->info.draw != NULL) { + Matrix_RotateY(gGfxMatrix, item->obj.rot.y * M_DTOR, 1); + Matrix_RotateX(gGfxMatrix, item->obj.rot.x * M_DTOR, 1); + Matrix_RotateZ(gGfxMatrix, item->obj.rot.z * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); - if (obj6C->unk_1C.drawType == 0) { - gSPDisplayList(gMasterDisp++, obj6C->unk_1C.dList); + if (item->info.drawType == 0) { + gSPDisplayList(gMasterDisp++, item->info.dList); } else { - obj6C->unk_1C.draw(&obj6C->obj); + item->info.draw(&item->obj); } } var_v0 = 1; } } } - func_8005F290(&obj6C->sfxPos, &sp38); - if ((var_v0 == 0) && (D_80177880 == 1) && (gCamCount == 1) && (obj6C->obj.id < 336) && + func_8005F290(&item->sfxPos, &sp38); + if ((var_v0 == 0) && (gAllRangeMode == 1) && (gCamCount == 1) && (item->obj.id < 336) && (gCurrentLevel != LEVEL_VENOM_2)) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + Object_Kill(&item->obj, &item->sfxPos); } } @@ -1303,31 +1303,32 @@ void func_8005EA24(Object_2F4* obj2F4) { void func_8005ECD8(s32 index, Object* obj) { RCP_SetupDL(&gMasterDisp, 0x42); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 180); - if (obj->id == OBJECT_197) { + if (obj->id == OBJ_2F4_197) { func_8005EA24(&gObjects2F4[index]); } else { switch (obj->id) { - case OBJECT_230: + case OBJ_2F4_230: Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_118, obj->pos.z + D_80177D20, 1); break; - case OBJECT_229: - case OBJECT_231: + case OBJ_2F4_229: + case OBJ_2F4_231: Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_114, obj->pos.z + D_80177D20, 1); break; - case OBJECT_316: + case OBJ_408_316: Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + D_8017847C, obj->pos.z, 1); break; default: Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f, obj->pos.z + D_80177D20, 1); break; } - if ((D_801784AC != 4) || (obj->id == OBJECT_200) || (obj->id == OBJECT_195) || (obj->id == OBJECT_198)) { + if ((D_801784AC != 4) || (obj->id == OBJ_2F4_200) || (obj->id == OBJ_2F4_195) || (obj->id == OBJ_2F4_198)) { Matrix_Scale(gGfxMatrix, 1.0f, 0.0f, 1.0f, 1); Matrix_RotateY(gGfxMatrix, obj->rot.y * M_DTOR, 1); } - if ((obj->id < OBJECT_292) && (obj->id != OBJECT_230) && (obj->id != OBJECT_229) && (obj->id != OBJECT_231)) { + if ((obj->id < OBJ_408_292) && (obj->id != OBJ_2F4_230) && (obj->id != OBJ_2F4_229) && + (obj->id != OBJ_2F4_231)) { Matrix_RotateX(gGfxMatrix, obj->rot.x * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj->rot.z * M_DTOR, 1); } @@ -1416,20 +1417,20 @@ void Object_58_Draw(Object_58* obj58) { f32 sp3C = 2000.0f; f32 sp38 = 0.5f; - if (obj58->obj.id == OBJECT_156) { + if (obj58->obj.id == OBJ_80_156) { sp44 = 4000.0f; sp40 = -13000.0f; sp3C = 4500.0f; } else if (gCurrentLevel == LEVEL_VENOM_2) { sp40 = -20000.0f; sp38 = 0.4f; - } else if (obj58->obj.id == OBJECT_143) { + } else if (obj58->obj.id == OBJ_80_143) { sp44 = 6000.0f; sp40 = -20000.0f; sp3C = 6000.0f; sp38 = 0.9f; } - if ((gLevelType == 0) || (gCurrentLevel == LEVEL_BOLSE)) { + if ((gLevelType == LEVELTYPE_GROUND) || (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); @@ -1439,7 +1440,7 @@ void Object_58_Draw(Object_58* obj58) { if (fabsf(sp48.y) < (fabsf(sp48.z * sp38) + sp3C)) { if (fabsf(sp48.x) < (fabsf(sp48.z * sp38) + sp3C)) { func_8005F670(&obj58->obj.pos); - if (obj58->obj.id == OBJECT_131) { + if (obj58->obj.id == OBJ_80_131) { Matrix_RotateY(gGfxMatrix, obj58->obj.rot.y * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj58->obj.rot.x * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj58->obj.rot.z * M_DTOR, 1); @@ -1450,7 +1451,7 @@ void Object_58_Draw(Object_58* obj58) { } else { Matrix_RotateY(gGfxMatrix, obj58->obj.rot.y * M_DTOR, 1); Matrix_SetGfxMtx(&gMasterDisp); - gSPDisplayList(gMasterDisp++, obj58->unk_1C.dList); + gSPDisplayList(gMasterDisp++, obj58->info.dList); } } } @@ -1534,16 +1535,16 @@ void Object_DrawAll(s32 arg0) { Object_408* obj408; Object_4C* obj4C; Object_58* obj58; - Object_6C* obj6C; + Item* item; Object_80* obj80; - if ((D_80177880 == 1) && (gCurrentLevel != LEVEL_KATINA)) { + if ((gAllRangeMode == 1) && (gCurrentLevel != LEVEL_KATINA)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); if (D_80177AB0 == 5) { gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); } for (i = 0, obj58 = gObjects58; i < 200; i++, obj58++) { - if ((obj58->obj.status == 2) && (obj58->obj.id != OBJECT_147)) { + if ((obj58->obj.status == 2) && (obj58->obj.id != OBJ_80_147)) { if (gCurrentLevel == LEVEL_BOLSE) { spAC.x = obj58->sfxPos.x; spAC.y = obj58->sfxPos.y; @@ -1571,7 +1572,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 != OBJECT_310)) { + if ((obj408->obj.status >= 2) && (obj408->obj.id != OBJ_408_310)) { if (!(obj408->unk_05C & 1)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { @@ -1594,7 +1595,7 @@ void Object_DrawAll(s32 arg0) { for (i = 0, obj4C = gObjects4C; i < ARRAY_COUNT(gObjects4C); i++, obj4C++) { if ((obj4C->obj.status >= 2) && (func_80060FE4(&obj4C->obj.pos, -12000.0f) != 0)) { Matrix_Push(&gGfxMatrix); - if ((obj4C->obj.id == OBJECT_165) || (obj4C->obj.id == OBJECT_166)) { + if ((obj4C->obj.id == OBJ_4C_165) || (obj4C->obj.id == OBJ_4C_166)) { RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); @@ -1619,7 +1620,7 @@ void Object_DrawAll(s32 arg0) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 64, 64, 255, 255); } } - switch (D_80177880) { + switch (gAllRangeMode) { case 0: case 2: Matrix_Push(&gGfxMatrix); @@ -1652,12 +1653,12 @@ 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); - for (i = 0, obj6C = gObjects6C; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { - if (obj6C->obj.status >= 2) { + for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) { + if (item->obj.status >= 2) { Matrix_Push(&gGfxMatrix); RCP_SetupDL(&gMasterDisp, 0x1D); func_800597C0(arg0); - Object_6C_Draw(obj6C, arg0); + Item_Draw(item, arg0); Matrix_Pop(&gGfxMatrix); } } @@ -1673,11 +1674,11 @@ void func_8006046C(s32 arg0) { RCP_SetupDL(&gMasterDisp, 0x40); for (i = 0, obj8C = gObjects8C; i < ARRAY_COUNT(gObjects8C); i++, obj8C++) { if (obj8C->obj.status >= 2) { - if (obj8C->unk_1C.unk_14 == 1) { + 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; } - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { Matrix_Push(&gGfxMatrix); Object_8C_Draw2(obj8C); Matrix_Pop(&gGfxMatrix); @@ -1686,7 +1687,7 @@ void func_8006046C(s32 arg0) { Object_8C_Draw1(obj8C, arg0); Matrix_Pop(&gGfxMatrix); func_8005F1EC(&obj8C->sfxPos); - if (obj8C->obj.id == OBJECT_374) { + if (obj8C->obj.id == OBJ_8C_374) { Matrix_Push(&gGfxMatrix); func_8005ECD8(i, &obj8C->obj); Matrix_Pop(&gGfxMatrix); @@ -1695,7 +1696,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 == OBJECT_310)) { + if ((obj408->obj.status >= 2) && (obj408->obj.id == OBJ_408_310)) { if (!(obj408->unk_05C & 1)) { RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); } else { diff --git a/src/main/fox_enmy.c b/src/main/fox_enmy.c index 31e76766..23311898 100644 --- a/src/main/fox_enmy.c +++ b/src/main/fox_enmy.c @@ -10,32 +10,32 @@ ObjectInit* D_800CFDA0[] = { 0x0600EAD4, NULL, 0x06011044, 0x0600FF74, 0x06006EB4, 0x06014D94, 0x0302DE3C, }; s32 D_800CFDF4[] = { - OBJECT_0, - OBJECT_6C_SILVER_RING, - OBJECT_6C_SILVER_RING, - OBJECT_6C_SILVER_RING, - OBJECT_6C_SILVER_RING, - OBJECT_6C_BOMB, - OBJECT_6C_BOMB, - OBJECT_6C_BOMB, - OBJECT_6C_BOMB, - OBJECT_6C_LASERS, - OBJECT_6C_LASERS, - OBJECT_6C_LASERS, - OBJECT_6C_LASERS, - OBJECT_6C_1UP, - OBJECT_6C_GOLD_RING, - OBJECT_6C_GOLD_RING, - OBJECT_6C_GOLD_RING, - OBJECT_6C_GOLD_RING, - OBJECT_6C_GOLD_RING, - OBJECT_6C_LASERS, - OBJECT_6C_BOMB, - OBJECT_6C_SILVER_RING, - OBJECT_6C_SILVER_RING, - OBJECT_6C_WING_REPAIR, - OBJECT_0, - OBJECT_6C_STAR_RING, + OBJ_80_0, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_BOMB, + OBJ_ITEM_BOMB, + OBJ_ITEM_BOMB, + OBJ_ITEM_BOMB, + OBJ_ITEM_LASERS, + OBJ_ITEM_LASERS, + OBJ_ITEM_LASERS, + OBJ_ITEM_LASERS, + OBJ_ITEM_1UP, + OBJ_ITEM_GOLD_RING, + OBJ_ITEM_GOLD_RING, + OBJ_ITEM_GOLD_RING, + OBJ_ITEM_GOLD_RING, + OBJ_ITEM_GOLD_RING, + OBJ_ITEM_LASERS, + OBJ_ITEM_BOMB, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_SILVER_RING, + OBJ_ITEM_WING_REPAIR, + OBJ_80_0, + OBJ_ITEM_SILVER_STAR, }; f32 D_800CFE5C[] = { 0.0f, 1.0f, 0.5f, 0.33f, 0.25f, 1.0f, 0.5f, 0.33f, 0.25f, 1.0f, 0.5f, 0.33f, 0.25f, @@ -59,7 +59,7 @@ void func_80060F30(Vec3f* pos, u32 sfxId, s32 arg2) { (void) "BOMB SET 2\n"; (void) "center_X %f\n"; (void) "Enm->obj.pos.x %f\n"; - if (D_801778E8 == 0) { + if (!gVersusMode) { func_80019218(sfxId, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { func_80019218(sfxId, pos, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); @@ -75,7 +75,7 @@ s32 func_80060FE4(Vec3f* arg0, f32 arg1) { Vec3f sp2C; Vec3f sp20; - if ((D_80177880 != 1) && (gPlayer[0].unk_1C8 != 2)) { + if ((gAllRangeMode != 1) && (gPlayer[0].unk_1C8 != 2)) { return true; } Matrix_RotateY(gCalcMatrix, gPlayer[D_801778A0].unk_058, 0); @@ -94,7 +94,7 @@ s32 func_80061148(Vec3f* arg0, f32 arg1) { Vec3f sp2C; Vec3f sp20; - if (D_80177880 != 1) { + if (gAllRangeMode != 1) { return true; } if (gPlayer[0].unk_1C8 == 7) { @@ -112,67 +112,67 @@ s32 func_80061148(Vec3f* arg0, f32 arg1) { return false; } -void Object_Set1C(ObjectStruct_1C* arg1C, u32 objId) { - *arg1C = D_800CC124[objId]; - arg1C->hitbox = SEGMENTED_TO_VIRTUAL(D_800CC124[objId].hitbox); - if (D_80177880 == 2) { - arg1C->unk_10 += 200.0f; +void Object_SetInfo(ObjectInfo* info, u32 objId) { + *info = D_800CC124[objId]; + info->hitbox = SEGMENTED_TO_VIRTUAL(D_800CC124[objId].hitbox); + if (gAllRangeMode == 2) { + info->unk_10 += 200.0f; } } void Object_80_Initialize(Object_80* obj80) { s32 i; - u8* var_v0 = (u8*) obj80; + u8* ptr = (u8*) obj80; - for (i = 0; i < sizeof(Object_80); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Object_80); i++, ptr++) { + *ptr = 0; } } void Object_4C_Initialize(Object_4C* obj4C) { s32 i; - u8* var_v0 = (u8*) obj4C; + u8* ptr = (u8*) obj4C; - for (i = 0; i < sizeof(Object_4C); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Object_4C); i++, ptr++) { + *ptr = 0; } } void Object_2F4_Initialize(Object_2F4* obj2F4) { s32 i; - u8* var_v0 = (u8*) obj2F4; + u8* ptr = (u8*) obj2F4; - for (i = 0; i < sizeof(Object_2F4); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Object_2F4); i++, ptr++) { + *ptr = 0; } obj2F4->unk_110 = 1.0f; } void Object_408_Initialize(Object_408* obj408) { s32 i; - u8* var_v0 = (u8*) obj408; + u8* ptr = (u8*) obj408; - for (i = 0; i < sizeof(Object_408); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Object_408); i++, ptr++) { + *ptr = 0; } obj408->unk_3F8 = 1.0f; } -void Object_6C_Initialize(Object_6C* obj6C) { +void Item_Initialize(Item* item) { s32 i; - u8* var_v0 = (u8*) obj6C; + u8* ptr = (u8*) item; - for (i = 0; i < sizeof(Object_6C); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Item); i++, ptr++) { + *ptr = 0; } } void Object_8C_Initialize(Object_8C* obj8C) { s32 i; - u8* var_v0 = (u8*) obj8C; + u8* ptr = (u8*) obj8C; - for (i = 0; i < sizeof(Object_8C); i++, var_v0++) { - *var_v0 = 0; + for (i = 0; i < sizeof(Object_8C); i++, ptr++) { + *ptr = 0; } obj8C->unk_70 = 1.0f; } @@ -188,7 +188,7 @@ void Object_80_Spawn(Object_80* obj80, ObjectInit* objInit) { obj80->obj.rot.y = objInit->unk_C; obj80->obj.rot.z = objInit->unk_E; obj80->obj.id = objInit->id; - Object_Set1C(&obj80->unk_1C, obj80->obj.id); + Object_SetInfo(&obj80->info, obj80->obj.id); } void Object_4C_Spawn(Object_4C* obj4C, ObjectInit* objInit) { @@ -202,7 +202,7 @@ void Object_4C_Spawn(Object_4C* obj4C, ObjectInit* objInit) { obj4C->obj.rot.x = objInit->unk_A; obj4C->obj.rot.z = objInit->unk_E; obj4C->obj.id = objInit->id; - Object_Set1C(&obj4C->unk_1C, obj4C->obj.id); + Object_SetInfo(&obj4C->info, obj4C->obj.id); } void Object_2F4_Spawn(Object_2F4* obj2F4, ObjectInit* objInit) { @@ -216,7 +216,7 @@ void Object_2F4_Spawn(Object_2F4* obj2F4, ObjectInit* objInit) { obj2F4->obj.rot.x = objInit->unk_A; obj2F4->obj.rot.z = objInit->unk_E; obj2F4->obj.id = objInit->id; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void Object_408_Spawn(Object_408* obj408, ObjectInit* objInit) { @@ -230,28 +230,28 @@ void Object_408_Spawn(Object_408* obj408, ObjectInit* objInit) { obj408->obj.rot.x = objInit->unk_A; obj408->obj.rot.z = objInit->unk_E; obj408->obj.id = objInit->id; - Object_Set1C(&obj408->unk_01C, obj408->obj.id); + Object_SetInfo(&obj408->info, obj408->obj.id); } -void Object_6C_Spawn(Object_6C* obj6C, ObjectInit* objInit) { - Object_6C_Initialize(obj6C); - obj6C->obj.status = 1; - obj6C->obj.pos.z = -objInit->zPos1; - obj6C->obj.pos.z += -3000.0f + objInit->zPos2; - obj6C->obj.pos.x = objInit->xPos; - obj6C->obj.pos.y = objInit->yPos; - obj6C->obj.rot.y = objInit->unk_C; - obj6C->obj.rot.x = objInit->unk_A; - obj6C->obj.rot.z = objInit->unk_E; - obj6C->obj.id = objInit->id; - obj6C->unk_68 = 1.0f; - Object_Set1C(&obj6C->unk_1C, obj6C->obj.id); +void Item_Spawn(Item* item, ObjectInit* objInit) { + Item_Initialize(item); + item->obj.status = 1; + item->obj.pos.z = -objInit->zPos1; + item->obj.pos.z += -3000.0f + objInit->zPos2; + item->obj.pos.x = objInit->xPos; + item->obj.pos.y = objInit->yPos; + item->obj.rot.y = objInit->unk_C; + item->obj.rot.x = objInit->unk_A; + item->obj.rot.z = objInit->unk_E; + item->obj.id = objInit->id; + item->unk_68 = 1.0f; + Object_SetInfo(&item->info, item->obj.id); } void func_80061958(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_346; + obj8C->obj.id = OBJ_8C_346; obj8C->unk_50 = 50; obj8C->unk_70 = 0.2f; if (gCurrentLevel == LEVEL_AQUAS) { @@ -263,9 +263,9 @@ void func_80061958(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos) { obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); - if (gLevelType == 0) { - obj8C->unk_1C.unk_10 = 100.0f; + Object_SetInfo(&obj8C->info, obj8C->obj.id); + if (gLevelType == LEVELTYPE_GROUND) { + obj8C->info.unk_10 = 100.0f; } } @@ -345,18 +345,18 @@ void func_80061CD0(void) { void func_80061E48(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; - obj2F4->obj.id = OBJECT_181; + obj2F4->obj.id = OBJ_2F4_181; if (Rand_ZeroOne() < 0.5f) { - obj2F4->obj.id = OBJECT_186; + obj2F4->obj.id = OBJ_2F4_186; } if (Rand_ZeroOne() < 0.5f) { - obj2F4->obj.id = OBJECT_182; + obj2F4->obj.id = OBJ_2F4_182; } obj2F4->obj.pos.x = xPos; obj2F4->obj.pos.y = yPos; obj2F4->obj.pos.z = zPos; obj2F4->unk_0E8.z = 10.0f; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void func_80061F0C(Object_2F4* obj2F4, ObjectInit* objInit, s32 arg2) { @@ -364,7 +364,7 @@ void func_80061F0C(Object_2F4* obj2F4, ObjectInit* objInit, s32 arg2) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; - obj2F4->unk_040 = arg2; + obj2F4->index = arg2; obj2F4->obj.pos.z = -objInit->zPos1; obj2F4->obj.pos.z += -3000.0f + objInit->zPos2; obj2F4->obj.pos.x = objInit->xPos; @@ -372,13 +372,13 @@ void func_80061F0C(Object_2F4* obj2F4, ObjectInit* objInit, s32 arg2) { obj2F4->obj.rot.y = obj2F4->unk_0F4.y = objInit->unk_C; obj2F4->obj.rot.x = obj2F4->unk_0F4.x = objInit->unk_A; obj2F4->unk_0F4.z = objInit->unk_E; - obj2F4->obj.id = OBJECT_200; + obj2F4->obj.id = OBJ_2F4_200; obj2F4->unk_0C2 = 10; obj2F4->unk_0B4 = 4095; - obj2F4->unk_0E4 = objInit->id - OBJECT_UNK_1000; + obj2F4->unk_0E4 = objInit->id - OBJ_UNK_1000; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); - obj2F4->unk_01C.unk_10 = 3000.0f; + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); + obj2F4->info.unk_10 = 3000.0f; obj2F4->unk_178 = 20000.0f; obj2F4->unk_054 = D_80177E70; obj2F4->unk_078 = gObjects2F4[D_80177E70].unk_0E4; @@ -400,7 +400,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { if ((arg1 > objInit->xPos - gPlayer[0].unk_0AC) && (objInit->xPos - gPlayer[0].unk_0AC > arg2) && (arg3 > objInit->yPos - gPlayer[0].unk_0B0) && (objInit->yPos - gPlayer[0].unk_0B0 > arg4)) { - if (objInit->id < OBJECT_161) { + 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); @@ -408,7 +408,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { } } } - if ((objInit->id >= OBJECT_161) && (objInit->id < OBJECT_176)) { + 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); @@ -416,15 +416,15 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { } } } - if ((objInit->id >= OBJECT_176) && (objInit->id < OBJECT_292)) { - if ((objInit->id == OBJECT_267) || (objInit->id == OBJECT_254)) { + if ((objInit->id >= OBJ_2F4_176) && (objInit->id < OBJ_408_292)) { + 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); break; } } - } else if (objInit->id == OBJECT_198) { + } 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); @@ -440,7 +440,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { } } } - if ((objInit->id >= OBJECT_292) && (objInit->id < OBJECT_6C_LASERS)) { + 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); @@ -448,33 +448,33 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { } } } - if ((objInit->id >= OBJECT_6C_LASERS) && (objInit->id < OBJECT_339)) { - for (i = 0; i < ARRAY_COUNT(gObjects6C); i++) { - if (gObjects6C[i].obj.status == 0) { - Object_6C_Spawn(&gObjects6C[i], objInit); + 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); break; } } } - if (objInit->id >= OBJECT_339 && objInit->id <= OBJECT_UNK_406) { + if (objInit->id >= OBJ_8C_339 && objInit->id <= OBJ_UNK_406) { switch (objInit->id) { - case OBJECT_UNK_403: + case OBJ_UNK_403: D_E6A810_801BA1E8 = 99; break; - case OBJECT_UNK_404: + case OBJ_UNK_404: D_E6A810_801BA1E8 = 0; break; - case OBJECT_UNK_405: + case OBJ_UNK_405: D_E6A810_801BA1E8 = 98; break; - case OBJECT_UNK_402: + case OBJ_UNK_402: D_E9F1D0_801A7F78 = objInit->unk_E * 0.1f; D_E9F1D0_801A7F60 = -(f32) objInit->unk_A; break; - case OBJECT_UNK_400: + case OBJ_UNK_400: D_801782B8++; break; - case OBJECT_UNK_401: + case OBJ_UNK_401: if (D_801782B8 > 0) { D_801782B8--; break; @@ -482,7 +482,7 @@ void Object_Spawn(ObjectInit* objInit, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { break; } } - if (objInit->id > OBJECT_UNK_406) { + if (objInit->id > OBJ_UNK_406) { for (i = 0; i < ARRAY_COUNT(gObjects2F4); i++) { if (gObjects2F4[i].obj.status == 0) { func_80061F0C(&gObjects2F4[i], objInit, i); @@ -559,8 +559,8 @@ void func_80062664(void) { D_80161680 = 0; for (i = 0, objInit = &D_80178310[D_80177DC8]; i < 10000; i++, D_80177DC8++, objInit++) { - if ((objInit->id > OBJECT_INVALID) && D_80177D20 <= objInit->zPos1 && objInit->zPos1 <= D_80177D20 + 200.0f) { - if ((gCurrentLevel == LEVEL_VENOM_1) && (objInit->id >= OBJECT_UNK_1000)) { + if ((objInit->id > OBJ_INVALID) && D_80177D20 <= objInit->zPos1 && objInit->zPos1 <= D_80177D20 + 200.0f) { + 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); @@ -577,12 +577,12 @@ void func_80062664(void) { void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { s32 i; - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { Object_8C_Initialize(&gObjects8C[i]); gObjects8C[i].obj.status = 1; - gObjects8C[i].obj.id = OBJECT_348; + gObjects8C[i].obj.id = OBJ_8C_348; gObjects8C[i].obj.pos.x = xPos; gObjects8C[i].obj.pos.y = D_80177940 + 3.0f; gObjects8C[i].obj.pos.z = zPos; @@ -590,7 +590,7 @@ void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { gObjects8C[i].unk_6C = arg3; gObjects8C[i].unk_44 = 80; gObjects8C[i].unk_4E = arg2; - Object_Set1C(&gObjects8C[i].unk_1C, gObjects8C[i].obj.id); + Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); break; } } @@ -600,19 +600,19 @@ void func_80062B60(f32 xPos, f32 zPos, s32 arg2, f32 arg3) { void func_80062C38(f32 xPos, f32 yPos) { s32 i; - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { for (i = 0; i < ARRAY_COUNT(gObjects8C); i++) { if (gObjects8C[i].obj.status == 0) { Object_8C_Initialize(&gObjects8C[i]); gObjects8C[i].obj.status = 1; - gObjects8C[i].obj.id = OBJECT_349; + gObjects8C[i].obj.id = OBJ_8C_349; 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].unk_44 = 120; - Object_Set1C(&gObjects8C[i].unk_1C, gObjects8C[i].obj.id); + Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); break; } } @@ -626,43 +626,44 @@ void func_80062D04(f32 xPos, f32 yPos) { if (gObjects8C[i].obj.status == 0) { Object_8C_Initialize(&gObjects8C[i]); gObjects8C[i].obj.status = 1; - gObjects8C[i].obj.id = OBJECT_350; + gObjects8C[i].obj.id = OBJ_8C_350; 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].unk_44 = 120; - Object_Set1C(&gObjects8C[i].unk_1C, gObjects8C[i].obj.id); + Object_SetInfo(&gObjects8C[i].info, gObjects8C[i].obj.id); break; } } } s32 func_80062DBC(Vec3f* pos, f32* hitboxData, Object* obj, f32 xRot, f32 yRot, f32 zRot) { - s32 var_s4; + s32 i; Vec3f hitRot; Vec3f hitPos; f32 rotate; - s32 boxCount; + s32 count; Vec3f sp80; Vec3f sp74; Hitbox* hitbox; - boxCount = *hitboxData++; - if (boxCount != 0) { - for (var_s4 = 0; var_s4 < boxCount; var_s4++) { + count = *hitboxData; + if (count != 0) { + hitboxData++; + for (i = 0; i < count; i++, hitboxData += 6) { rotate = 0.0f; hitRot.x = hitRot.y = hitRot.z = 0.0f; if (*hitboxData >= 300000.0f) { return 0; } if (*hitboxData == 200000.0f) { - hitboxData++; rotate = 1.0f; - hitRot.x = *hitboxData++; - hitRot.y = *hitboxData++; - hitRot.z = *hitboxData++; + hitRot.x = hitboxData[1]; + hitRot.y = hitboxData[2]; + hitRot.z = hitboxData[3]; + hitboxData += 4; } if ((obj->rot.y == 0.0f) && (obj->rot.z == 0.0f) && (obj->rot.x == 0.0f) && (rotate == 0.0f)) { hitPos.x = pos->x; @@ -694,7 +695,6 @@ s32 func_80062DBC(Vec3f* pos, f32* hitboxData, Object* obj, f32 xRot, f32 yRot, ((hitbox->y.size + 10.0f) > fabsf(hitbox->y.offset + obj->pos.y - hitPos.y))) { return true; } - hitboxData += 6; } } return false; @@ -724,7 +724,7 @@ s32 func_8006326C(Vec3f* arg0, Vec3f* arg1, s32 objId, Object* obj) { sp74.x = arg0->x - obj->pos.x; sp74.z = arg0->z - obj->pos.z; - if (((fabsf(sp74.x) < 1100.0f) && (fabsf(sp74.z) < 1100.0f)) || (objId == OBJECT_180)) { + if (((fabsf(sp74.x) < 1100.0f) && (fabsf(sp74.z) < 1100.0f)) || (objId == OBJ_2F4_180)) { sp74.y = arg0->y - obj->pos.y; Matrix_RotateY(gCalcMatrix, -obj->rot.y * M_DTOR, 0); Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp74, &sp68); @@ -734,23 +734,23 @@ s32 func_8006326C(Vec3f* arg0, Vec3f* arg1, s32 objId, Object* obj) { sp50.x = obj->pos.x; sp50.y = obj->pos.y; sp50.z = obj->pos.z; - if ((objId == OBJECT_180) || (objId == OBJECT_149) || (objId == OBJECT_150) || (objId == OBJECT_308) || - (objId == OBJECT_313) || (objId == OBJECT_312) || (objId == OBJECT_309) || (objId == OBJECT_39)) { + if ((objId == OBJ_2F4_180) || (objId == OBJ_80_149) || (objId == OBJ_80_150) || (objId == OBJ_408_308) || + (objId == OBJ_408_313) || (objId == OBJ_408_312) || (objId == OBJ_408_309) || (objId == OBJ_80_39)) { var_s1 = 0; - if (objId == OBJECT_312) { + if (objId == OBJ_408_312) { var_s1 = 9; } - if (objId == OBJECT_39) { + if (objId == OBJ_80_39) { var_s1 = 1; - } else if (objId == OBJECT_308) { + } else if (objId == OBJ_408_308) { var_s1 = 4; - } else if (objId == OBJECT_309) { + } else if (objId == OBJ_408_309) { var_s1 = 7; - } else if (objId == OBJECT_149) { + } else if (objId == OBJ_80_149) { var_s1 = 5; - } else if (objId == OBJECT_150) { + } else if (objId == OBJ_80_150) { var_s1 = 6; - } else if (objId == OBJECT_313) { + } else if (objId == OBJ_408_313) { var_s1 = 8; } if (func_800998FC(&sp5C, &sp50, arg1, var_s1, &sp44, &sp30) > 0) { @@ -758,21 +758,21 @@ s32 func_8006326C(Vec3f* arg0, Vec3f* arg1, s32 objId, Object* obj) { } } else { var_s1 = 0; - if (objId == OBJECT_2) { + if (objId == OBJ_80_2) { var_s1 = 2; } - if (objId == OBJECT_3) { + if (objId == OBJ_80_3) { var_s1 = 3; } - if (objId == OBJECT_140) { + if (objId == OBJ_80_140) { var_s1 = 4; } - if (objId == OBJECT_141) { + if (objId == OBJ_80_141) { var_s1 = 6; } - if (objId == OBJECT_117) { + if (objId == OBJ_80_117) { var_s1 = 14; - } else if ((objId == OBJECT_4) || (objId == OBJECT_5)) { + } else if ((objId == OBJ_80_4) || (objId == OBJ_80_5)) { var_s1 = 1; } if (func_800A3690(&sp5C, &sp50, var_s1, &sp44)) { @@ -792,19 +792,19 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { Vec3f temp; s32 i; - if ((D_80177880 == 1) && (gCurrentLevel != LEVEL_KATINA)) { + if ((gAllRangeMode == 1) && (gCurrentLevel != LEVEL_KATINA)) { obj58 = gObjects58; for (i = 0; i < 200; i++, obj58++) { if (obj58->obj.status == 2) { - if ((obj58->obj.id == OBJECT_1) || (obj58->obj.id == OBJECT_3) || (obj58->obj.id == OBJECT_117) || - (obj58->obj.id == OBJECT_141) || (obj58->obj.id == OBJECT_150) || (obj58->obj.id == OBJECT_149) || - (obj58->obj.id == OBJECT_148) || (obj58->obj.id == OBJECT_140)) { + if ((obj58->obj.id == OBJ_80_1) || (obj58->obj.id == OBJ_80_3) || (obj58->obj.id == OBJ_80_117) || + (obj58->obj.id == OBJ_80_141) || (obj58->obj.id == OBJ_80_150) || (obj58->obj.id == OBJ_80_149) || + (obj58->obj.id == OBJ_80_148) || (obj58->obj.id == OBJ_80_140)) { if (func_8006326C(pos, arg2, obj58->obj.id, &obj58->obj)) { return 999; } } else if ((fabsf(pos->x - obj58->obj.pos.x) < 2000.0f) && (fabsf(pos->z - obj58->obj.pos.z) < 2000.0f)) { - if (func_80062DBC(pos, obj58->unk_1C.hitbox, &obj58->obj, 0.0f, 0.0f, 0.0f)) { + if (func_80062DBC(pos, obj58->info.hitbox, &obj58->obj, 0.0f, 0.0f, 0.0f)) { return 2; } } @@ -812,15 +812,15 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { } } obj80 = gObjects80; - for (i = 0; i < ARRAY_COUNT(gObjects80) && D_80177880 == 0; i++, obj80++) { + for (i = 0; i < ARRAY_COUNT(gObjects80) && gAllRangeMode == 0; i++, obj80++) { if (obj80->obj.status == 2) { - if ((obj80->obj.id == OBJECT_1) || (obj80->obj.id == OBJECT_4) || (obj80->obj.id == OBJECT_5) || - (obj80->obj.id == OBJECT_2) || (obj80->obj.id == OBJECT_39) || (obj80->obj.id == OBJECT_3)) { + 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)) { if (func_8006326C(pos, arg2, obj80->obj.id, &obj80->obj)) { return 2; } } else if ((fabsf(pos->x - obj80->obj.pos.x) < 2000.0f) && (fabsf(pos->z - obj80->obj.pos.z) < 2000.0f)) { - if (func_80062DBC(pos, obj80->unk_1C.hitbox, &obj80->obj, 0.0f, 0.0f, 0.0f)) { + if (func_80062DBC(pos, obj80->info.hitbox, &obj80->obj, 0.0f, 0.0f, 0.0f)) { return i + 10; } } @@ -829,8 +829,8 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { obj4C = gObjects4C; for (i = 0; i < ARRAY_COUNT(gObjects4C); i++, obj4C++) { if ((obj4C->obj.status == 2) && (fabsf(pos->x - obj4C->obj.pos.x) < 500.0f) && - (fabsf(pos->z - obj4C->obj.pos.z) < 500.0f) && func_800631A8(pos, obj4C->unk_1C.hitbox, &obj4C->obj.pos)) { - if ((obj4C->obj.id == OBJECT_163) || (obj4C->obj.id == OBJECT_162) || (obj4C->obj.id == OBJECT_162)) { + (fabsf(pos->z - obj4C->obj.pos.z) < 500.0f) && func_800631A8(pos, obj4C->info.hitbox, &obj4C->obj.pos)) { + if ((obj4C->obj.id == OBJ_4C_163) || (obj4C->obj.id == OBJ_4C_162) || (obj4C->obj.id == OBJ_4C_162)) { obj4C->unk_46 = 1; } return 0; @@ -841,12 +841,12 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { obj408 = gObjects408; for (i = 0; i < ARRAY_COUNT(gObjects408); i++, obj408++) { if (obj408->obj.status == 2) { - if ((obj408->obj.id == OBJECT_308) || (obj408->obj.id == OBJECT_312) || - (obj408->obj.id == OBJECT_313) || (obj408->obj.id == OBJECT_309)) { + if ((obj408->obj.id == OBJ_408_308) || (obj408->obj.id == OBJ_408_312) || + (obj408->obj.id == OBJ_408_313) || (obj408->obj.id == OBJ_408_309)) { if (func_8006326C(pos, arg2, obj408->obj.id, &obj408->obj)) { return 2; } - } else if (obj408->obj.id == OBJECT_310) { + } else if (obj408->obj.id == OBJ_408_310) { temp.x = fabsf(obj408->obj.pos.x - pos->x) * (5.0f / 6.0f); temp.y = fabsf(obj408->obj.pos.y - pos->y) * 2; temp.z = fabsf(obj408->obj.pos.z - pos->z) * (5.0f / 6.0f); @@ -855,7 +855,7 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { return 2; } } else { - if (obj408->obj.id == OBJECT_316) { + if (obj408->obj.id == OBJ_408_316) { temp.x = fabsf(obj408->obj.pos.x - pos->x); temp.y = fabsf(obj408->obj.pos.y - 300.0f - pos->y) * 7.42f; temp.z = fabsf(obj408->obj.pos.z - pos->z); @@ -865,7 +865,7 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { } if ((fabsf(pos->x - obj408->obj.pos.x) < 2000.0f) && (fabsf(pos->z - obj408->obj.pos.z) < 2000.0f)) { - if (func_80062DBC(pos, obj408->unk_01C.hitbox, &obj408->obj, 0.0f, 0.0f, 0.0f)) { + if (func_80062DBC(pos, obj408->info.hitbox, &obj408->obj, 0.0f, 0.0f, 0.0f)) { return 2; } } @@ -876,14 +876,14 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { obj2F4 = gObjects2F4; 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->unk_01C.unk_16 != 2) && - ((obj2F4->obj.id != OBJECT_197) || (obj2F4->unk_0E4 >= 4)) && (obj2F4->unk_0C2 == 0)) { - if (obj2F4->obj.id == OBJECT_180) { + (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)) { + 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) { - if (func_80062DBC(pos, obj2F4->unk_01C.hitbox, &obj2F4->obj, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, + 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; obj2F4->unk_0D6 = 10; @@ -894,12 +894,12 @@ s32 func_8006351C(s32 index, Vec3f* pos, Vec3f* arg2, s32 arg3) { return 2; } } else if ((arg3 != 2) && (arg3 != 3)) { - if (func_800631A8(pos, obj2F4->unk_01C.hitbox, &obj2F4->obj.pos)) { + if (func_800631A8(pos, obj2F4->info.hitbox, &obj2F4->obj.pos)) { obj2F4->unk_0D0 = 1; obj2F4->unk_0D6 = 10; obj2F4->unk_0D2 = -1; - if (((obj2F4->obj.id != OBJECT_200) || (obj2F4->unk_080 == 0)) && - ((obj2F4->obj.id != OBJECT_197) || ((obj2F4->unk_0E4 >= 10) && (obj2F4->unk_0E4 < 100)))) { + if (((obj2F4->obj.id != OBJ_2F4_200) || (obj2F4->unk_080 == 0)) && + ((obj2F4->obj.id != OBJ_2F4_197) || ((obj2F4->unk_0E4 >= 10) && (obj2F4->unk_0E4 < 100)))) { obj2F4->unk_0CE = 0; } obj2F4->unk_0D8.x = pos->x; @@ -921,12 +921,12 @@ void func_80063CAC(Object_80* obj80) { if (gObjects2F4[i].obj.status == 0) { Object_2F4_Initialize(&gObjects2F4[i]); gObjects2F4[i].obj.status = 1; - gObjects2F4[i].obj.id = OBJECT_193; + gObjects2F4[i].obj.id = OBJ_2F4_193; gObjects2F4[i].obj.pos.x = obj80->obj.pos.x; gObjects2F4[i].obj.pos.y = obj80->obj.pos.y; gObjects2F4[i].obj.pos.z = obj80->obj.pos.z; gObjects2F4[i].obj.rot.y = Rand_ZeroOne() * 360.0f; - Object_Set1C(&gObjects2F4[i].unk_01C, gObjects2F4[i].obj.id); + Object_SetInfo(&gObjects2F4[i].info, gObjects2F4[i].obj.id); break; } } @@ -940,19 +940,19 @@ void func_80063D58(Object_80* obj80) { if (gObjects4C[i].obj.status == 0) { Object_4C_Initialize(&gObjects4C[i]); gObjects4C[i].obj.status = 1; - gObjects4C[i].obj.id = OBJECT_164; + gObjects4C[i].obj.id = OBJ_4C_164; gObjects4C[i].unk_45 = obj80->obj.id; gObjects4C[i].obj.pos.x = obj80->obj.pos.x; gObjects4C[i].obj.pos.y = 5.0f; gObjects4C[i].obj.pos.z = obj80->obj.pos.z; - if ((obj80->obj.id == OBJECT_0) || (obj80->obj.id == OBJECT_6) || (obj80->obj.id == OBJECT_7) || - (obj80->obj.id == OBJECT_56) || (obj80->obj.id == OBJECT_20) || (obj80->obj.id == OBJECT_21) || - (obj80->obj.id == OBJECT_22)) { + if ((obj80->obj.id == OBJ_80_0) || (obj80->obj.id == OBJ_80_6) || (obj80->obj.id == OBJ_80_7) || + (obj80->obj.id == OBJ_80_56) || (obj80->obj.id == OBJ_80_20) || (obj80->obj.id == OBJ_80_21) || + (obj80->obj.id == OBJ_80_22)) { gObjects4C[i].obj.rot.y = obj80->obj.rot.y; } else { gObjects4C[i].obj.rot.y = 44.9f; } - Object_Set1C(&gObjects4C[i].unk_1C, gObjects4C[i].obj.id); + Object_SetInfo(&gObjects4C[i].info, gObjects4C[i].obj.id); break; } } @@ -960,19 +960,19 @@ void func_80063D58(Object_80* obj80) { void func_80063E5C(Object_80* obj80, f32* hitboxData) { s32 i; - Object_6C* obj6C; + Item* item; - for (i = 0, obj6C = gObjects6C; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { - if (obj6C->obj.status == 0) { - Object_6C_Initialize(&gObjects6C[i]); - obj6C->obj.status = 1; - obj6C->obj.id = OBJECT_6C_CORN_ARCH; - obj6C->obj.pos.x = obj80->obj.pos.x; - obj6C->obj.pos.y = obj80->obj.pos.y; - obj6C->obj.pos.z = obj80->obj.pos.z; - obj6C->obj.rot.y = obj80->obj.rot.y; - Object_Set1C(&obj6C->unk_1C, obj6C->obj.id); - obj6C->unk_1C.hitbox = SEGMENTED_TO_VIRTUAL(hitboxData); + for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) { + if (item->obj.status == 0) { + Item_Initialize(&gItems[i]); + item->obj.status = 1; + item->obj.id = OBJ_ITEM_CORN_ARCH; + item->obj.pos.x = obj80->obj.pos.x; + item->obj.pos.y = obj80->obj.pos.y; + item->obj.pos.z = obj80->obj.pos.z; + item->obj.rot.y = obj80->obj.rot.y; + Object_SetInfo(&item->info, item->obj.id); + item->info.hitbox = SEGMENTED_TO_VIRTUAL(hitboxData); break; } } @@ -981,12 +981,12 @@ void func_80063E5C(Object_80* obj80, f32* hitboxData) { void func_80063F4C(s32 arg0) { } -void func_80063F58(Object_6C* obj6C) { - obj6C->unk_68 = obj6C->obj.rot.z * 100.0f; +void func_80063F58(Item* item) { + item->unk_68 = item->obj.rot.z * 100.0f; } -void func_80063F74(Object_6C* obj6C) { - obj6C->unk_68 = obj6C->obj.rot.z * 100.0f; +void func_80063F74(Item* item) { + item->unk_68 = item->obj.rot.z * 100.0f; } void Object_Init(s32 index, s32 objId) { @@ -998,25 +998,25 @@ void Object_Init(s32 index, s32 objId) { PosRot* var_v0; switch (objId) { - case OBJECT_170: + case OBJ_4C_170: func_8007A6F0(&gObjects4C[index].obj.pos, 0x11000055); break; - case OBJECT_234: + case OBJ_2F4_234: func_80019218(0x11030010, &gObjects2F4[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; - case OBJECT_54: + case OBJ_80_54: func_80019218(0x11000000, &gObjects80[index].sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; - case OBJECT_198: + case OBJ_2F4_198: func_80092D48(&gObjects2F4[index]); break; - case OBJECT_235: + case OBJ_2F4_235: gObjects2F4[index].unk_13C = fabsf(Math_ModF(gObjects2F4[index].obj.pos.x, 100.0f)); break; - case OBJECT_247: + case OBJ_2F4_247: func_E16C50_8019D060(&gObjects2F4[index]); break; - case OBJECT_368: + case OBJ_8C_368: if (gCurrentLevel == LEVEL_TITANIA) { func_E6A810_801B6E20(gObjects8C[index].obj.pos.x, gObjects8C[index].obj.pos.z + D_80177D20, &sp54, &sp4C, &sp50); @@ -1027,105 +1027,105 @@ void Object_Init(s32 index, s32 objId) { gObjects8C[index].obj.status = 0; } break; - case OBJECT_30: + case OBJ_80_30: func_80063E5C(&gObjects80[index], D_6006940); break; - case OBJECT_31: + case OBJ_80_31: func_80063E5C(&gObjects80[index], D_600695C); break; - case OBJECT_32: + case OBJ_80_32: func_80063E5C(&gObjects80[index], D_6006978); break; - case OBJECT_33: + case OBJ_80_33: func_80063E5C(&gObjects80[index], D_6006994); break; - case OBJECT_34: + case OBJ_80_34: func_80063E5C(&gObjects80[index], D_60069B0); break; - case OBJECT_35: + case OBJ_80_35: func_80063E5C(&gObjects80[index], D_60069CC); break; - case OBJECT_36: + case OBJ_80_36: func_80063E5C(&gObjects80[index], D_60069E8); break; - case OBJECT_37: + case OBJ_80_37: func_80063E5C(&gObjects80[index], D_6006A04); break; - case OBJECT_38: + case OBJ_80_38: func_80063E5C(&gObjects80[index], D_6006A20); break; - case OBJECT_23: + case OBJ_80_23: func_80063CAC(&gObjects80[index]); break; - case OBJECT_6C_CHECKPOINT: + case OBJ_ITEM_CHECKPOINT: if (D_80177CA0 != 0) { - gObjects6C[index].obj.status = 0; + gItems[index].obj.status = 0; } break; - case OBJECT_6C_METEO_WARP: + case OBJ_ITEM_METEO_WARP: if (D_80177E80 < 0) { - gObjects6C[index].obj.status = 0; + gItems[index].obj.status = 0; } break; - case OBJECT_331: - case OBJECT_332: - case OBJECT_333: - func_80063F74(&gObjects6C[index]); + case OBJ_ITEM_331: + case OBJ_ITEM_332: + case OBJ_ITEM_333: + func_80063F74(&gItems[index]); break; - case OBJECT_328: - case OBJECT_329: - func_80063F58(&gObjects6C[index]); + case OBJ_ITEM_328: + case OBJ_ITEM_329: + func_80063F58(&gItems[index]); break; - case OBJECT_330: - if (((D_80177E80 >= 7) && (gCurrentLevel == LEVEL_CORNERIA) && (gTeamHealth[1] > 0)) || + case OBJ_ITEM_330: + if (((D_80177E80 >= 7) && (gCurrentLevel == LEVEL_CORNERIA) && (gTeamShields[1] > 0)) || (gCurrentLevel != LEVEL_CORNERIA)) { - func_80063F58(&gObjects6C[index]); + func_80063F58(&gItems[index]); } else { - gObjects6C[index].obj.status = 0; + gItems[index].obj.status = 0; } break; - case OBJECT_0: + case OBJ_80_0: func_80063E5C(&gObjects80[index], D_800CBF18); /* fallthrough */ - case OBJECT_6: - case OBJECT_7: - case OBJECT_20: - case OBJECT_21: - case OBJECT_22: - case OBJECT_56: + case OBJ_80_6: + case OBJ_80_7: + case OBJ_80_20: + case OBJ_80_21: + case OBJ_80_22: + case OBJ_80_56: func_80063D58(&gObjects80[index]); break; - case OBJECT_187: + case OBJ_2F4_187: gObjects2F4[index].unk_114 = gObjects2F4[index].obj.pos.x; gObjects2F4[index].unk_118 = gObjects2F4[index].obj.pos.y; gObjects2F4[index].obj.rot.z = gObjects2F4[index].obj.rot.x; gObjects2F4[index].obj.rot.x = 0.0f; break; - case OBJECT_182: - case OBJECT_186: + case OBJ_2F4_182: + case OBJ_2F4_186: gObjects2F4[index].unk_046 = gFogRed; gObjects2F4[index].unk_048 = gFogNear; gObjects2F4[index].obj.rot.x = Rand_ZeroOne() * 360.0f; gObjects2F4[index].obj.rot.y = Rand_ZeroOne() * 360.0f; break; - case OBJECT_181: + case OBJ_2F4_181: gObjects2F4[index].obj.rot.x = Rand_ZeroOne() * 360.0f; gObjects2F4[index].obj.rot.y = Rand_ZeroOne() * 360.0f; gObjects2F4[index].unk_0CE = 200; break; - case OBJECT_202: + case OBJ_2F4_202: gObjects2F4[index].unk_0CE = 30; break; - case OBJECT_252: + case OBJ_2F4_252: if (gPlayer[0].unk_07C < gObjects2F4[index].obj.pos.z) { Object_Kill(&gObjects2F4[index].obj, &gObjects2F4[index].sfxPos); } break; - case OBJECT_239: + case OBJ_2F4_239: gObjects2F4[index].unk_050 = D_801784A4; D_801784A4++; break; - case OBJECT_236: + case OBJ_2F4_236: D_801784A4 = 0; gObjects2F4[index].unk_0F4.x = gObjects2F4[index].obj.rot.x; gObjects2F4[index].unk_0F4.y = gObjects2F4[index].obj.rot.y; @@ -1141,7 +1141,7 @@ void Object_Init(s32 index, s32 objId) { var_v0->rot.z = gObjects2F4[index].obj.rot.z; } break; - case OBJECT_194: + case OBJ_2F4_194: gObjects2F4[index].unk_046 = 100; for (var_a0 = 0; var_a0 < 2; var_a0++) { if (D_80176550[var_a0] == 0) { @@ -1158,166 +1158,166 @@ void Object_Init(s32 index, s32 objId) { gObjects2F4[index].obj.status = 0; } break; - case OBJECT_190: - case OBJECT_191: + case OBJ_2F4_190: + case OBJ_2F4_191: func_80019218(0x31000012, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; - case OBJECT_192: + case OBJ_2F4_192: gObjects2F4[index].unk_0C9 = 1; break; - case OBJECT_320: + case OBJ_408_320: func_E9F1D0_8018D16C(&gObjects408[index]); break; - case OBJECT_316: + case OBJ_408_316: func_E51970_80193CA4(&gObjects408[index]); break; - case OBJECT_314: + case OBJ_408_314: func_E9F1D0_80197CC4(&gObjects408[index]); break; - case OBJECT_205: - case OBJECT_206: - case OBJECT_208: - case OBJECT_209: - case OBJECT_210: - case OBJECT_211: - case OBJECT_212: - case OBJECT_213: + case OBJ_2F4_205: + case OBJ_2F4_206: + case OBJ_2F4_208: + case OBJ_2F4_209: + case OBJ_2F4_210: + case OBJ_2F4_211: + case OBJ_2F4_212: + case OBJ_2F4_213: func_E6A810_80199F8C(&gObjects2F4[index]); break; - case OBJECT_207: + case OBJ_2F4_207: func_E6A810_801A7D98(&gObjects2F4[index]); break; - case OBJECT_214: + case OBJ_2F4_214: func_E6A810_801A3E70(&gObjects2F4[index]); break; - case OBJECT_215: + case OBJ_2F4_215: func_E6A810_801A4660(&gObjects2F4[index]); break; - case OBJECT_223: + case OBJ_2F4_223: func_E6A810_801A4AF8(&gObjects2F4[index]); break; - case OBJECT_216: - case OBJECT_217: + case OBJ_2F4_216: + case OBJ_2F4_217: func_E6A810_801A5E2C(&gObjects2F4[index]); break; - case OBJECT_218: + case OBJ_2F4_218: func_E6A810_801A6134(&gObjects2F4[index]); break; - case OBJECT_65: + case OBJ_80_65: func_E6A810_801A65E0(&gObjects80[index]); break; - case OBJECT_177: - case OBJECT_178: + case OBJ_2F4_177: + case OBJ_2F4_178: func_DF4260_8018B0B4(&gObjects2F4[index]); /* fallthrough */ - case OBJECT_176: + case OBJ_2F4_176: gObjects2F4[index].unk_0CE = 24; func_80019218(0x31000016, &gObjects2F4[index].sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); break; - case OBJECT_297: + case OBJ_408_297: func_E08400_80188A40(&gObjects408[index]); break; - case OBJECT_299: + case OBJ_408_299: func_80042FAC(&gObjects408[index]); break; - case OBJECT_300: + case OBJ_408_300: func_80042FD0(&gObjects408[index]); break; - case OBJECT_292: + case OBJ_408_292: func_DF4260_801878D8(&gObjects408[index]); break; - case OBJECT_293: + case OBJ_408_293: func_DF4260_8018BE7C(&gObjects408[index]); break; - case OBJECT_302: + case OBJ_408_302: func_E16C50_80187754(&gObjects408[index]); break; - case OBJECT_231: + case OBJ_2F4_231: func_E6A810_8018B96C(&gObjects2F4[index]); break; - case OBJECT_232: + case OBJ_2F4_232: func_E6A810_8018ADC4(&gObjects2F4[index]); break; - case OBJECT_233: + case OBJ_2F4_233: func_E6A810_80189B80(&gObjects2F4[index]); break; - case OBJECT_229: + case OBJ_2F4_229: func_E6A810_8018BFB0(&gObjects2F4[index]); break; - case OBJECT_227: + case OBJ_2F4_227: func_E6A810_8018E3CC(&gObjects2F4[index]); break; - case OBJECT_228: + case OBJ_2F4_228: func_E6A810_8018E5E8(&gObjects2F4[index]); break; - case OBJECT_169: + case OBJ_4C_169: func_E6A810_8018EFF0(&gObjects4C[index]); break; - case OBJECT_306: + case OBJ_408_306: func_E6A810_8018FA48(&gObjects408[index]); break; - case OBJECT_240: + case OBJ_2F4_240: func_E16C50_801915A4(&gObjects2F4[index]); break; - case OBJECT_241: + case OBJ_2F4_241: func_E16C50_80191BB8(&gObjects2F4[index]); break; - case OBJECT_307: + case OBJ_408_307: func_E16C50_801932AC(&gObjects408[index]); break; - case OBJECT_250: + case OBJ_2F4_250: func_E16C50_8019B1F0(&gObjects2F4[index]); break; - case OBJECT_251: + case OBJ_2F4_251: func_E16C50_8019B810(&gObjects2F4[index]); break; - case OBJECT_253: + case OBJ_2F4_253: func_E16C50_8019C200(&gObjects2F4[index]); break; - case OBJECT_255: + case OBJ_2F4_255: func_E16C50_801AD688(&gObjects2F4[index]); break; - case OBJECT_256: + case OBJ_2F4_256: func_E16C50_801AE3AC(&gObjects2F4[index]); break; - case OBJECT_257: + case OBJ_2F4_257: func_E16C50_801AF9FC(&gObjects2F4[index]); break; - case OBJECT_318: + case OBJ_408_318: func_E16C50_801B10F8(&gObjects408[index]); break; - case OBJECT_259: + case OBJ_2F4_259: func_E16C50_801B6344(&gObjects2F4[index]); break; - case OBJECT_262: + case OBJ_2F4_262: func_E16C50_801B6E54(&gObjects2F4[index]); break; - case OBJECT_260: + case OBJ_2F4_260: func_E16C50_801B7AF0(&gObjects2F4[index]); break; - case OBJECT_57: + case OBJ_80_57: func_E6A810_8018F0D8(&gObjects80[index]); break; - case OBJECT_319: + case OBJ_408_319: func_DF4260_801935CC(&gObjects408[index]); break; - case OBJECT_280: + case OBJ_2F4_280: func_DF4260_8019250C(&gObjects2F4[index]); break; - case OBJECT_281: - case OBJECT_282: + case OBJ_2F4_281: + case OBJ_2F4_282: func_DF4260_80192CB0(&gObjects2F4[index]); break; - case OBJECT_283: + case OBJ_2F4_283: func_DF4260_80192EA4(&gObjects2F4[index]); break; - case OBJECT_284: + case OBJ_2F4_284: func_DF4260_801933B4(&gObjects2F4[index]); break; - case OBJECT_265: + case OBJ_2F4_265: func_E16C50_801BA57C(&gObjects2F4[index]); break; - case OBJECT_267: + case OBJ_2F4_267: func_E16C50_801BB26C(&gObjects2F4[index]); break; } @@ -1340,7 +1340,7 @@ void func_800652CC(Object_80* obj80) { void func_80065380(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f32 arg5, f32 arg6) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; - obj2F4->obj.id = OBJECT_182; + obj2F4->obj.id = OBJ_2F4_182; obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; obj2F4->unk_0C2 = 30; obj2F4->unk_0E8.x = arg4; @@ -1353,7 +1353,7 @@ void func_80065380(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 arg4, f obj2F4->unk_048 = 900; obj2F4->obj.rot.z = Rand_ZeroOne() * 360.0f; obj2F4->obj.rot.y = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void func_8006546C(f32 xPos, f32 yPos, f32 zPos, f32 arg3, f32 arg4, f32 arg5) { @@ -1382,7 +1382,7 @@ void func_800654E4(Object* obj) { void func_800655C8(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, s32 arg4) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; - obj2F4->obj.id = OBJECT_190; + obj2F4->obj.id = OBJ_2F4_190; obj2F4->obj.pos.x = xPos; obj2F4->obj.pos.y = yPos; obj2F4->obj.pos.z = zPos; @@ -1392,7 +1392,7 @@ void func_800655C8(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, s32 arg4) { obj2F4->unk_0BE = 30; } obj2F4->unk_124.y = 15.0f; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void func_8006566C(f32 xPos, f32 yPos, f32 zPos, s32 arg3) { @@ -1430,16 +1430,16 @@ void func_800656D4(Object_2F4* obj2F4) { s32 i; s32 j; - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { var_ra = 2; } else { var_ra = 0; } if (obj2F4->unk_058 == 0) { - if (obj2F4->obj.id == OBJECT_190) { + if (obj2F4->obj.id == OBJ_2F4_190) { for (i = 0, j = 1; j < 4; i++, j++) { spA8[i] = var_ra + j; - spB4[i] = gTeamHealth[j]; + spB4[i] = gTeamShields[j]; } for (i = 0, j = 1; j < 3; i++, j++) { temp_a0 = spB4[i]; @@ -1467,15 +1467,15 @@ void func_800656D4(Object_2F4* obj2F4) { break; } - if (D_80177880 == 1) { - if (gTeamHealth[spC4 - 1] > 0) { + if (gAllRangeMode == 1) { + if (gTeamShields[spC4 - 1] > 0) { obj2F4->unk_054 = spC4; goto label; } else { obj2F4->unk_054 = 10000; } } else { - if (gTeamHealth[spC4 + 1] > 0) { + if (gTeamShields[spC4 + 1] > 0) { obj2F4->unk_054 = spC4; goto label; } else { @@ -1567,14 +1567,14 @@ void func_800656D4(Object_2F4* obj2F4) { sp8C.x = obj2F4->unk_0E8.x; sp8C.y = obj2F4->unk_0E8.y; sp8C.z = obj2F4->unk_0E8.z; - if ((func_8006351C(obj2F4->unk_040, &obj2F4->obj.pos, &sp8C, 1) != 0) || (obj2F4->unk_0D0 != 0) || + 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)) { 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 (D_80177880 == 1) { + if (gAllRangeMode == 1) { obj2F4->unk_044 = 2; } else { obj2F4->unk_044 = 4; @@ -1587,7 +1587,7 @@ void func_800656D4(Object_2F4* obj2F4) { } func_8007A6F0(&obj2F4->obj.pos, 0x2903A008); } - if (D_80177880 == 0) { + if (gAllRangeMode == 0) { if (fabsf(obj2F4->obj.pos.z - gPlayer[0].unk_138) < 100.0f) { obj2F4->unk_078 = 1; } @@ -1601,29 +1601,29 @@ void func_800656D4(Object_2F4* obj2F4) { #endif void func_800660F0(Object_2F4* obj2F4) { - Object_6C* obj6C = gObjects6C; + Item* item = gItems; s32 i; - for (i = 0; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { - if (obj6C->obj.status == 0) { - Object_6C_Initialize(obj6C); - obj6C->obj.status = 1; - obj6C->obj.id = D_800CFDF4[obj2F4->unk_044]; - obj6C->obj.pos.x = obj2F4->obj.pos.x; - obj6C->obj.pos.y = obj2F4->obj.pos.y; - obj6C->obj.pos.z = obj2F4->obj.pos.z; - obj6C->unk_4A = 8; - Object_Set1C(&obj6C->unk_1C, obj6C->obj.id); - if ((obj6C->obj.id == OBJECT_6C_SILVER_RING) || (obj6C->obj.id == OBJECT_6C_BOMB) || - (obj6C->obj.id == OBJECT_6C_LASERS)) { - obj6C->unk_50 = 90.0f; + for (i = 0; i < ARRAY_COUNT(gItems); i++, item++) { + if (item->obj.status == 0) { + Item_Initialize(item); + item->obj.status = 1; + item->obj.id = D_800CFDF4[obj2F4->unk_044]; + 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; + 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)) { + item->unk_50 = 90.0f; } - if ((obj6C->obj.id >= OBJECT_6C_GOLD_RING) || (obj6C->obj.id == OBJECT_6C_1UP)) { - obj6C->unk_50 = 90.0f; + 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); - obj6C->unk_48 = 1000; - if (obj6C->obj.id == OBJECT_6C_WING_REPAIR) { - func_80019218(0x1900302B, &obj6C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); + item->unk_48 = 1000; + if (item->obj.id == OBJ_ITEM_WING_REPAIR) { + func_80019218(0x1900302B, &item->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } break; @@ -1635,16 +1635,16 @@ void func_80066254(Object_2F4* obj2F4) { Object_2F4* other2F4; s32 i; - if (D_801778E8 != 0) { + if (gVersusMode) { if ((obj2F4->unk_0D4 > 0) && (obj2F4->unk_0D4 < 5) && !((D_80178768[0] == 0) && (D_80178768[1] == 0) && (D_80178768[2] == 0))) { - D_80177C30[obj2F4->unk_0D4 - 1] += obj2F4->unk_01C.bonus; + D_80177C30[obj2F4->unk_0D4 - 1] += obj2F4->info.bonus; } - } else if ((obj2F4->obj.id != OBJECT_197) || (obj2F4->unk_0B6 != 1)) { - if ((obj2F4->unk_0D4 == 1) && (obj2F4->unk_01C.bonus != 0)) { - gHitCount += obj2F4->unk_01C.bonus; + } else if ((obj2F4->obj.id != OBJ_2F4_197) || (obj2F4->unk_0B6 != 1)) { + if ((obj2F4->unk_0D4 == 1) && (obj2F4->info.bonus != 0)) { + gHitCount += obj2F4->info.bonus; D_80177850 = 0xF; - if ((D_80177880 == 1) && (D_80161A62 != 0)) { + if ((gAllRangeMode == 1) && (D_80161A62 != 0)) { switch (D_80161A62) { case 9: if (gCurrentLevel == LEVEL_KATINA) { @@ -1662,7 +1662,7 @@ void func_80066254(Object_2F4* obj2F4) { } D_80161A62 = 0; } - if (obj2F4->obj.id == OBJECT_197) { + if (obj2F4->obj.id == OBJ_2F4_197) { if ((obj2F4->unk_0E4 >= 4) && (obj2F4->unk_0E4 < 8)) { func_8002E3E0(obj2F4); } @@ -1672,7 +1672,7 @@ void func_80066254(Object_2F4* obj2F4) { if (D_800CFE5C[obj2F4->unk_044] < 0.0f) { other2F4 = gObjects2F4; for (i = 0, other2F4 = gObjects2F4; i < ARRAY_COUNT(gObjects2F4); i++, other2F4++) { - if ((other2F4->obj.status != 0) && (other2F4->unk_040 != obj2F4->unk_040) && + if ((other2F4->obj.status != 0) && (other2F4->index != obj2F4->index) && (obj2F4->unk_08C == other2F4->unk_08C)) { return; } @@ -1680,11 +1680,11 @@ void func_80066254(Object_2F4* obj2F4) { func_800660F0(obj2F4); func_80019218(0x4900000C, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else if (obj2F4->unk_044 == 24) { - if (gTeamHealth[3] > 0) { + if (gTeamShields[3] > 0) { func_800BA808(gMsg_ID_20261, RCID_PEPPY); - } else if (gTeamHealth[2] > 0) { + } else if (gTeamShields[2] > 0) { func_800BA808(gMsg_ID_20263, RCID_SLIPPY); - } else if (gTeamHealth[1] > 0) { + } else if (gTeamShields[1] > 0) { func_800BA808(gMsg_ID_20262, RCID_FALCO); } } else if (Rand_ZeroOne() <= D_800CFE5C[obj2F4->unk_044]) { @@ -1876,58 +1876,58 @@ void func_80066EA8(Object_80* obj80) { void func_80066EE4(Object_4C* obj4C) { } -void func_80066EF0(Object_6C* obj6C) { +void func_80066EF0(Item* item) { f32 var_fa1; if ((gPlayer[0].unk_1C8 == 7) || (gPlayer[0].unk_1C8 == 0)) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + Object_Kill(&item->obj, &item->sfxPos); } - if ((D_80177880 == 0) && (D_80161680 == 0)) { + if ((gAllRangeMode == 0) && (D_80161680 == 0)) { var_fa1 = 900.0f; if (gPlayer[0].unk_1CC != 0) { var_fa1 = 600.0f; } - if (gPlayer[0].unk_0AC + var_fa1 < obj6C->obj.pos.x) { - Math_SmoothStepToF(&obj6C->obj.pos.x, gPlayer[0].unk_0AC + var_fa1, 0.1f, 10.0f, 0.01f); + if (gPlayer[0].unk_0AC + var_fa1 < item->obj.pos.x) { + Math_SmoothStepToF(&item->obj.pos.x, gPlayer[0].unk_0AC + var_fa1, 0.1f, 10.0f, 0.01f); } - if (obj6C->obj.pos.x < gPlayer[0].unk_0AC - var_fa1) { - Math_SmoothStepToF(&obj6C->obj.pos.x, gPlayer[0].unk_0AC - var_fa1, 0.1f, 10.0f, 0.01f); + if (item->obj.pos.x < gPlayer[0].unk_0AC - var_fa1) { + Math_SmoothStepToF(&item->obj.pos.x, gPlayer[0].unk_0AC - var_fa1, 0.1f, 10.0f, 0.01f); } } - if (obj6C->obj.pos.y > 650.0f) { - Math_SmoothStepToF(&obj6C->obj.pos.y, 650.0f, 0.1f, 10.0f, 0.01f); + if (item->obj.pos.y > 650.0f) { + Math_SmoothStepToF(&item->obj.pos.y, 650.0f, 0.1f, 10.0f, 0.01f); } - if (gLevelType == 0) { - if (obj6C->obj.pos.y < D_80177940 + 70.0f) { - Math_SmoothStepToF(&obj6C->obj.pos.y, D_80177940 + 70.0f, 0.1f, 5.0f, 0.01f); + if (gLevelType == LEVELTYPE_GROUND) { + 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); } if ((gCurrentLevel == LEVEL_AQUAS) && (D_80178284 != 0)) { - obj6C->obj.pos.z += 20.0f; + item->obj.pos.z += 20.0f; } - } else if (obj6C->obj.pos.y < -500.0f) { - Math_SmoothStepToF(&obj6C->obj.pos.y, -500.0f, 0.1f, 5.0f, 0.01f); + } else if (item->obj.pos.y < -500.0f) { + Math_SmoothStepToF(&item->obj.pos.y, -500.0f, 0.1f, 5.0f, 0.01f); } - if ((D_801778E8 != 0) && (obj6C->index == 0) && (gObjects6C[1].obj.status == 2)) { - if (fabsf(obj6C->obj.pos.x - gObjects6C[1].obj.pos.x) < 200.0f) { - if (fabsf(obj6C->obj.pos.z - gObjects6C[1].obj.pos.z) < 200.0f) { - obj6C->obj.pos.x = obj6C->obj.pos.x - 5.0f; - obj6C->obj.pos.z = obj6C->obj.pos.z - 5.0f; - gObjects6C[1].obj.pos.x += 5.0f; - gObjects6C[1].obj.pos.z += 5.0f; + if ((gVersusMode) && (item->index == 0) && (gItems[1].obj.status == 2)) { + if (fabsf(item->obj.pos.x - gItems[1].obj.pos.x) < 200.0f) { + if (fabsf(item->obj.pos.z - gItems[1].obj.pos.z) < 200.0f) { + item->obj.pos.x = item->obj.pos.x - 5.0f; + item->obj.pos.z = item->obj.pos.z - 5.0f; + gItems[1].obj.pos.x += 5.0f; + gItems[1].obj.pos.z += 5.0f; } } } } -void func_800671D0(Object_6C* obj6C) { +void func_800671D0(Item* item) { s32 var_v0; Vec3f sp40; Vec3f sp34; - Math_SmoothStepToF(&obj6C->unk_50, 10.0f, 1.0f, 2.0f, 0.0f); - if (obj6C->unk_50 > 30.0f) { + Math_SmoothStepToF(&item->unk_50, 10.0f, 1.0f, 2.0f, 0.0f); + if (item->unk_50 > 30.0f) { var_v0 = 0; - } else if (obj6C->unk_50 > 20.0f) { + } else if (item->unk_50 > 20.0f) { var_v0 = 1; } else { var_v0 = 7; @@ -1938,16 +1938,16 @@ void func_800671D0(Object_6C* obj6C) { sp40.y = (Rand_ZeroOne() - 0.5f) * 120.0f; sp40.z = 0.0f; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp40, &sp34); - func_80078E50(obj6C->obj.pos.x + sp34.x, obj6C->obj.pos.y + sp34.y, obj6C->obj.pos.z + sp34.z, 3.0f); + func_80078E50(item->obj.pos.x + sp34.x, item->obj.pos.y + sp34.y, item->obj.pos.z + sp34.z, 3.0f); } - obj6C->obj.rot.y += obj6C->unk_50; - obj6C->obj.rot.y = Math_ModF(obj6C->obj.rot.y, 360.0f); + item->obj.rot.y += item->unk_50; + item->obj.rot.y = Math_ModF(item->obj.rot.y, 360.0f); } void func_80067348(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 xRot, f32 yRot, f32 arg6, f32 arg7, f32 arg8) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; - obj2F4->obj.id = OBJECT_189; + obj2F4->obj.id = OBJ_2F4_189; obj2F4->unk_0B8 = 70; obj2F4->obj.pos.x = xPos; obj2F4->obj.pos.y = yPos; @@ -1959,7 +1959,7 @@ void func_80067348(Object_2F4* obj2F4, f32 xPos, f32 yPos, f32 zPos, f32 xRot, f obj2F4->unk_0E8.z = arg8; obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 15.0f) + 25.0f; obj2F4->unk_10C = 0.5f; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void func_800674B4(f32 xPos, f32 yPos, f32 zPos, f32 xRot, f32 yRot, f32 arg5, f32 arg6, f32 arg7) { @@ -1978,7 +1978,7 @@ void func_8006753C(Object_2F4* obj2F4) { s32 i; obj2F4->obj.rot.y += 1.0f; - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { 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); @@ -1993,9 +1993,10 @@ void func_8006753C(Object_2F4* obj2F4) { if (obj2F4->unk_0CE <= 0) { 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 <= 1) || (player[0].wings.leftState <= 1)) && (player[0].unk_1CC != 1)) { + if (((player[0].wings.rightState <= WINGSTATE_BROKEN) || (player[0].wings.leftState <= WINGSTATE_BROKEN)) && + (player[0].unk_1CC != 1)) { obj2F4->unk_044 = 23; - } else if (gPlayer[0].health < 0x80) { + } else if (gPlayer[0].shields < 0x80) { obj2F4->unk_044 = 25; } else if ((gLaserStrength[0] == 0) && (player[0].unk_1CC != 1)) { obj2F4->unk_044 = 9; @@ -2040,13 +2041,13 @@ void func_80067874(Object_2F4* obj2F4) { void func_80067A40(void) { func_80019218(0x09008023, &gPlayer[0].unk_460, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - if (gPlayer[0].wings.rightState <= 1) { + if (gPlayer[0].wings.rightState <= WINGSTATE_BROKEN) { D_80177D40[0] = 1050; - gPlayer[0].wings.rightState = 2; + gPlayer[0].wings.rightState = WINGSTATE_INTACT; } - if (gPlayer[0].wings.leftState <= 1) { + if (gPlayer[0].wings.leftState <= WINGSTATE_BROKEN) { D_80177D58[0] = 1050; - gPlayer[0].wings.leftState = 2; + gPlayer[0].wings.leftState = WINGSTATE_INTACT; } if (gExpertMode) { gRightWingHealth[0] = gLeftWingHealth[0] = 10; @@ -2055,211 +2056,211 @@ void func_80067A40(void) { } } -void func_80067B1C(Object_6C* obj6C) { - func_80066EF0(obj6C); - func_800671D0(obj6C); - if (obj6C->unk_4C != 0) { +void func_80067B1C(Item* item) { + func_80066EF0(item); + func_800671D0(item); + if (item->unk_4C != 0) { Player** players; - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + Object_Kill(&item->obj, &item->sfxPos); players = &gPlayer; // seems fake - func_80060F30(&(*players)[obj6C->unk_4E].unk_460, 0x4900C024, obj6C->unk_4E); + func_80060F30(&(*players)[item->unk_4E].unk_460, 0x4900C024, item->unk_4E); if (gCurrentLevel != LEVEL_TRAINING) { - gLifeCount[obj6C->unk_4E]++; + gLifeCount[item->unk_4E]++; } } - if (obj6C->unk_48 == 1) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + if (item->unk_48 == 1) { + Object_Kill(&item->obj, &item->sfxPos); } } -void func_80067BEC(Object_6C* obj6C) { - func_80066EF0(obj6C); - func_800671D0(obj6C); - if (obj6C->unk_46 == 0) { - switch (obj6C->obj.id) { - case OBJECT_6C_BOMB: - obj6C->unk_68 = 18.0f; - if (obj6C->unk_4C != 0) { - obj6C->unk_4A = 50; - obj6C->unk_46 = 1; - obj6C->unk_48 = 20; - obj6C->unk_50 = 60.0f; - gBombCount[obj6C->unk_4E]++; - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x49002005, obj6C->unk_4E); - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x49002006, obj6C->unk_4E); +void func_80067BEC(Item* item) { + func_80066EF0(item); + func_800671D0(item); + if (item->unk_46 == 0) { + switch (item->obj.id) { + case OBJ_ITEM_BOMB: + item->unk_68 = 18.0f; + if (item->unk_4C != 0) { + item->unk_4A = 50; + item->unk_46 = 1; + item->unk_48 = 20; + item->unk_50 = 60.0f; + gBombCount[item->unk_4E]++; + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49002005, item->unk_4E); + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49002006, item->unk_4E); } break; - case OBJECT_6C_LASERS: - obj6C->unk_68 = 18.0f; - if (obj6C->unk_4C != 0) { - obj6C->unk_4A = 50; - obj6C->unk_46 = 1; - obj6C->unk_48 = 20; - obj6C->unk_50 = 60.0f; - gLaserStrength[obj6C->unk_4E]++; - if (gLaserStrength[obj6C->unk_4E] > 2) { - gLaserStrength[obj6C->unk_4E] = 2; + case OBJ_ITEM_LASERS: + item->unk_68 = 18.0f; + if (item->unk_4C != 0) { + item->unk_4A = 50; + item->unk_46 = 1; + item->unk_48 = 20; + item->unk_50 = 60.0f; + gLaserStrength[item->unk_4E]++; + if (gLaserStrength[item->unk_4E] > 2) { + gLaserStrength[item->unk_4E] = 2; } - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x49002004, obj6C->unk_4E); + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49002004, item->unk_4E); if (gExpertMode) { - gRightWingHealth[obj6C->unk_4E] = gLeftWingHealth[obj6C->unk_4E] = 10; + gRightWingHealth[item->unk_4E] = gLeftWingHealth[item->unk_4E] = 10; } else { - gRightWingHealth[obj6C->unk_4E] = gLeftWingHealth[obj6C->unk_4E] = 60; + gRightWingHealth[item->unk_4E] = gLeftWingHealth[item->unk_4E] = 60; } - D_80177D40[obj6C->unk_4E] = 1030; - D_80177D58[obj6C->unk_4E] = 1030; + D_80177D40[item->unk_4E] = 1030; + D_80177D58[item->unk_4E] = 1030; } break; } } else { - Math_SmoothStepToF(&obj6C->unk_68, 2.5f, 1.0f, 0.5f, 0.0f); - obj6C->obj.pos.x += (gPlayer[obj6C->unk_4E].unk_074 - obj6C->obj.pos.x) * 0.5f; - if (gPlayer[obj6C->unk_4E].unk_1CC == 1) { - obj6C->obj.pos.y += ((gPlayer[obj6C->unk_4E].unk_078 + 50.0f) - obj6C->obj.pos.y) * 0.5f; + 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; } else { - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 - obj6C->obj.pos.y) * 0.5f; + item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.5f; } - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - obj6C->obj.pos.z) * 0.5f; - if (obj6C->unk_48 == 0) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - item->obj.pos.z) * 0.5f; + if (item->unk_48 == 0) { + Object_Kill(&item->obj, &item->sfxPos); } } } -void func_80067F6C(Object_6C* obj6C) { - if ((D_801778E8 == 0) && ((gPlayer[0].wings.leftState <= 1) || (gPlayer[0].wings.rightState <= 1))) { - obj6C->obj.id = OBJECT_6C_WING_REPAIR; - Object_Set1C(&obj6C->unk_1C, obj6C->obj.id); - obj6C->unk_48 = 2000; - func_80019218(0x1900302B, &obj6C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); +void func_80067F6C(Item* item) { + if ((!gVersusMode) && + ((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); } else { - func_80067BEC(obj6C); + func_80067BEC(item); } } -void func_80068020(Object_6C* obj6C) { +void func_80068020(Item* item) { Vec3f sp4C; Vec3f sp40; - switch (obj6C->unk_46) { + switch (item->unk_46) { case 0: - Math_SmoothStepToF(&obj6C->unk_68, 0.4f, 1.0f, 0.05f, 0.0f); - func_80066EF0(obj6C); - func_800671D0(obj6C); - if (obj6C->unk_4C != 0) { - obj6C->unk_46 = 1; - obj6C->unk_48 = 50; - if (obj6C->obj.id == OBJECT_6C_SILVER_RING) { - gPlayer[obj6C->unk_4E].heal += 0x20; - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x4900200E, obj6C->unk_4E); - } else if (obj6C->obj.id == OBJECT_6C_GOLD_RING) { + Math_SmoothStepToF(&item->unk_68, 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; + 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); + } else if (item->obj.id == OBJ_ITEM_GOLD_RING) { gGoldRingCount[0]++; if (gGoldRingCount[0] == 3) { - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x49008015, obj6C->unk_4E); + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49008015, item->unk_4E); } else if (gGoldRingCount[0] == 6) { - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x4900C024, obj6C->unk_4E); + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x4900C024, item->unk_4E); if (gCurrentLevel != LEVEL_TRAINING) { - gLifeCount[obj6C->unk_4E]++; + gLifeCount[item->unk_4E]++; } - gPlayer[obj6C->unk_4E].heal += 0x20; - func_80077240(gPlayer[obj6C->unk_4E].unk_074, gPlayer[obj6C->unk_4E].unk_078, - gPlayer[obj6C->unk_4E].unk_138, 101); + gPlayer[item->unk_4E].heal += 0x20; + func_80077240(gPlayer[item->unk_4E].unk_074, gPlayer[item->unk_4E].unk_078, + gPlayer[item->unk_4E].unk_138, 101); } else { - gPlayer[obj6C->unk_4E].heal += 0x20; - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x49003013, obj6C->unk_4E); + gPlayer[item->unk_4E].heal += 0x20; + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x49003013, item->unk_4E); } } else { - gPlayer[obj6C->unk_4E].heal += 0x80; - func_80060F30(gPlayer[obj6C->unk_4E].unk_460_arr, 0x4900200D, obj6C->unk_4E); + gPlayer[item->unk_4E].heal += 0x80; + func_80060F30(gPlayer[item->unk_4E].unk_460_arr, 0x4900200D, item->unk_4E); } } - if ((obj6C->obj.id == OBJECT_6C_GOLD_RING) && (obj6C->unk_48 == 1)) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + if ((item->obj.id == OBJ_ITEM_GOLD_RING) && (item->unk_48 == 1)) { + Object_Kill(&item->obj, &item->sfxPos); } break; case 1: - if (obj6C->unk_48 > 30) { - Math_SmoothStepToF(&obj6C->unk_68, 1.0f, 1.0f, 0.06f, 0.0f); + if (item->unk_48 > 30) { + Math_SmoothStepToF(&item->unk_68, 1.0f, 1.0f, 0.06f, 0.0f); } else { - Math_SmoothStepToF(&obj6C->unk_68, 0.0f, 1.0f, 0.06f, 0.0f); + Math_SmoothStepToF(&item->unk_68, 0.0f, 1.0f, 0.06f, 0.0f); } - obj6C->obj.pos.x += (gPlayer[obj6C->unk_4E].unk_074 - obj6C->obj.pos.x) * 0.5f; - if (gPlayer[obj6C->unk_4E].unk_1CC == 1) { - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 + 50.0f - obj6C->obj.pos.y) * 0.5f; + 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; } else { - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 - obj6C->obj.pos.y) * 0.5f; + item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.5f; } - if ((gPlayer[0].unk_238 != 0) && (D_80177880 == 0)) { - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - 300.0f - obj6C->obj.pos.z) * 0.3f; + if ((gPlayer[0].unk_238 != 0) && (gAllRangeMode == 0)) { + item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 300.0f - item->obj.pos.z) * 0.3f; } else { - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - obj6C->obj.pos.z) * 0.5f; + item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - item->obj.pos.z) * 0.5f; } - obj6C->obj.rot.z += 22.0f; - Math_SmoothStepToAngle(&obj6C->obj.rot.y, Math_RadToDeg(-gPlayer[obj6C->unk_4E].unk_058), 0.2f, 10.0f, - 0.0f); - if (obj6C->unk_48 == 0) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + 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) { + Object_Kill(&item->obj, &item->sfxPos); } - if (obj6C->unk_68 > 0.3f) { - Matrix_RotateY(gCalcMatrix, obj6C->obj.rot.y * M_DTOR, 0); + if (item->unk_68 > 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 = obj6C->unk_68 * 100.0f; + sp4C.y = item->unk_68 * 100.0f; sp4C.z = 0.0f; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp4C, &sp40); - func_80078E50(obj6C->obj.pos.x + sp40.x, obj6C->obj.pos.y + sp40.y, obj6C->obj.pos.z + sp40.z, 3.5f); + func_80078E50(item->obj.pos.x + sp40.x, item->obj.pos.y + sp40.y, item->obj.pos.z + sp40.z, 3.5f); } break; } } -void func_800685D8(Object_6C* obj6C) { - func_80068020(obj6C); +void func_800685D8(Item* item) { + func_80068020(item); } -void func_800685F8(Object_6C* obj6C) { - func_80068020(obj6C); +void func_800685F8(Item* item) { + func_80068020(item); } -void func_80068618(Object_6C* obj6C) { - func_80066EF0(obj6C); - func_800671D0(obj6C); - if (obj6C->unk_4C != 0) { +void func_80068618(Item* item) { + func_80066EF0(item); + func_800671D0(item); + if (item->unk_4C != 0) { func_80067A40(); - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + Object_Kill(&item->obj, &item->sfxPos); } - if (obj6C->unk_48 == 1) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + if (item->unk_48 == 1) { + Object_Kill(&item->obj, &item->sfxPos); } } -void func_80068688(Object_6C* obj6C) { - func_80066EF0(obj6C); - if (obj6C->unk_46 > 0) { - if (obj6C->unk_46 == 1) { - obj6C->obj.rot.z -= 10.0f; - obj6C->obj.pos.x += (gPlayer[obj6C->unk_4E].unk_074 - obj6C->obj.pos.x) * 0.3f; - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 - obj6C->obj.pos.y) * 0.3f; - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - obj6C->obj.pos.z) * 0.3f; - obj6C->unk_68 -= 5.0f; - if (obj6C->unk_68 < 0.0f) { - obj6C->unk_68 = 0.0f; +void func_80068688(Item* item) { + func_80066EF0(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.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; } } - obj6C->unk_44 -= 10; - if (obj6C->unk_44 < 0) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + item->unk_44 -= 10; + if (item->unk_44 < 0) { + Object_Kill(&item->obj, &item->sfxPos); } } else { - obj6C->unk_68 = 100.0f; + item->unk_68 = 100.0f; if (D_80177E80 < 0) { - obj6C->unk_46 = 2; - obj6C->unk_44 = 0xFF; - } else if (obj6C->unk_4C != 0) { - obj6C->unk_46 = 1; - obj6C->unk_44 = 0xFF; - gPlayer[obj6C->unk_4E].unk_27C = 100; + 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); if (D_80177E80 == 0) { gPlayer[0].unk_110 = 0.0f; @@ -2276,130 +2277,130 @@ void func_80068688(Object_6C* obj6C) { } } -void func_80068914(Object_6C* obj6C) { +void func_80068914(Item* item) { s32 i; - func_80066EF0(obj6C); - obj6C->unk_58 -= obj6C->unk_44; - if (obj6C->unk_46 > 0) { - obj6C->unk_44++; - obj6C->obj.pos.x += (gPlayer[obj6C->unk_4E].unk_074 - obj6C->obj.pos.x) * 0.3f; - if (gPlayer[obj6C->unk_4E].unk_1CC == 1) { - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 + 50.0f - obj6C->obj.pos.y) * 0.3f; + func_80066EF0(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; } else { - obj6C->obj.pos.y += (gPlayer[obj6C->unk_4E].unk_078 - obj6C->obj.pos.y) * 0.3f; + item->obj.pos.y += (gPlayer[item->unk_4E].unk_078 - item->obj.pos.y) * 0.3f; } if (gPlayer[0].unk_238 != 0) { - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - 200.0f - obj6C->obj.pos.z) * 0.3f; + item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 200.0f - item->obj.pos.z) * 0.3f; } else { - obj6C->obj.pos.z += (gPlayer[obj6C->unk_4E].unk_138 - 100.0f - obj6C->obj.pos.z) * 0.3f; + item->obj.pos.z += (gPlayer[item->unk_4E].unk_138 - 100.0f - item->obj.pos.z) * 0.3f; } - if (obj6C->unk_48 == 0) { - Math_SmoothStepToF(&obj6C->unk_68, 5.0f, 0.2f, 15.0f, 0.01f); - Math_SmoothStepToF(&obj6C->unk_50, 0.0f, 0.1f, 0.03f, 0.0f); - Math_SmoothStepToF(&obj6C->unk_54, 4.0f, 0.1f, 0.2f, 0.01f); + if (item->unk_48 == 0) { + Math_SmoothStepToF(&item->unk_68, 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 (obj6C->unk_68 <= 6.5f) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + if (item->unk_68 <= 6.5f) { + Object_Kill(&item->obj, &item->sfxPos); } } else { - obj6C->unk_44 = 2; - obj6C->unk_50 = 1.0f; - obj6C->unk_54 = 1.0f; - obj6C->unk_68 = 100.0f; - if (obj6C->unk_4C != 0) { - gPlayer[obj6C->unk_4E].heal = 0x80; - obj6C->unk_46++; - obj6C->unk_48 = 15; + item->unk_44 = 2; + item->unk_50 = 1.0f; + item->unk_54 = 1.0f; + item->unk_68 = 100.0f; + if (item->unk_4C != 0) { + gPlayer[item->unk_4E].heal = 0x80; + item->unk_46++; + item->unk_48 = 15; D_80161A8C = D_80161A88; - D_80177CB0 = -obj6C->obj.pos.z; + D_80177CB0 = -item->obj.pos.z; D_80177CB0 -= 250.0f; D_80177CA0 = D_80177DC8; D_80161A50 = D_80161684; gSavedHitCount = gHitCount; for (i = 1; i < 4; i++) { - gSavedTeamHealth[i] = gTeamHealth[i]; + gSavedTeamShields[i] = gTeamShields[i]; } func_80019218(0x4900400F, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } } -void func_80068C48(Object_6C* obj6C) { - if (obj6C->unk_4C != 0) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); +void func_80068C48(Item* item) { + if (item->unk_4C != 0) { + Object_Kill(&item->obj, &item->sfxPos); D_80177E80++; } } -void func_80068C88(Object_6C* obj6C) { - D_80161680 = obj6C->obj.id; +void func_80068C88(Item* item) { + D_80161680 = item->obj.id; if (gPlayer[0].unk_1C8 != 3) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + 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].unk_1D0 = 0; - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + Object_Kill(&item->obj, &item->sfxPos); } else if (gCurrentLevel == LEVEL_TRAINING) { gPlayer[0].unk_1C8 = 9; gPlayer[0].unk_1D0 = 0; - Object_Kill(&obj6C->obj, &obj6C->sfxPos); - } else if (obj6C->unk_46 == 0) { - if (((obj6C->obj.pos.z + D_80177D20) > -2700.0f) && (fabsf(obj6C->obj.pos.x - gPlayer[0].unk_074) < 1000.0f)) { - switch (obj6C->obj.id) { - case OBJECT_331: - case OBJECT_332: - case OBJECT_333: + 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)) { + switch (item->obj.id) { + case OBJ_ITEM_331: + case OBJ_ITEM_332: + case OBJ_ITEM_333: break; - case OBJECT_328: + case OBJ_ITEM_328: gPlayer[0].unk_228 = 0x30; break; - case OBJECT_329: + case OBJ_ITEM_329: gPlayer[0].unk_228 = 0x20; break; - case OBJECT_330: + case OBJ_ITEM_330: gPlayer[0].unk_228 = 0x10; break; } } - if (obj6C->unk_4C != 0) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); + if (item->unk_4C != 0) { + Object_Kill(&item->obj, &item->sfxPos); gPlayer[0].unk_0B4 = 0.0f; - gPlayer[0].unk_210 = obj6C->unk_68 * 0.05f; - switch (obj6C->obj.id) { - case OBJECT_328: - if (obj6C->obj.pos.x < gPlayer[0].unk_074) { + gPlayer[0].unk_210 = item->unk_68 * 0.05f; + switch (item->obj.id) { + case OBJ_ITEM_328: + if (item->obj.pos.x < gPlayer[0].unk_074) { gPlayer[0].unk_118 = -30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + obj6C->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->unk_68; } else { gPlayer[0].unk_118 = 30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - obj6C->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->unk_68; } break; - case OBJECT_329: + case OBJ_ITEM_329: gPlayer[0].unk_118 = 30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - obj6C->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC - item->unk_68; break; - case OBJECT_330: + case OBJ_ITEM_330: gPlayer[0].unk_118 = -30.0f; - gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + obj6C->unk_68; + gPlayer[0].unk_0B8 = gPlayer[0].unk_0AC + item->unk_68; break; - case OBJECT_331: - if (obj6C->obj.pos.y < gPlayer[0].unk_078) { + case OBJ_ITEM_331: + if (item->obj.pos.y < gPlayer[0].unk_078) { gPlayer[0].unk_124 = 30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + obj6C->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->unk_68; } else { gPlayer[0].unk_124 = -30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - obj6C->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->unk_68; } break; - case OBJECT_332: + case OBJ_ITEM_332: gPlayer[0].unk_124 = 30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + obj6C->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 + item->unk_68; break; - case OBJECT_333: + case OBJ_ITEM_333: gPlayer[0].unk_124 = -30.0f; - gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - obj6C->unk_68; + gPlayer[0].unk_0BC = gPlayer[0].unk_0B0 - item->unk_68; break; } } @@ -2415,11 +2416,11 @@ void func_80068FE0(Object_4C* obj4C) { obj4C->obj.status = 0; func_8007A6F0(&obj4C->obj.pos, 0x1903400F); switch (obj4C->obj.id) { - case OBJECT_161: + case OBJ_4C_161: func_8007D074(obj4C->obj.pos.x, obj4C->obj.pos.y + 160.0f, obj4C->obj.pos.z, 4.0f); break; default: - case OBJECT_169: + case OBJ_4C_169: func_8007D074(obj4C->obj.pos.x, obj4C->obj.pos.y + 96.0f, obj4C->obj.pos.z, 5.0f); break; } @@ -2428,46 +2429,46 @@ void func_80068FE0(Object_4C* obj4C) { void func_800690D0(s32 index, s32 objId) { switch (objId) { - case OBJECT_200: + case OBJ_2F4_200: func_8007717C(&gObjects2F4[index]); break; - case OBJECT_197: + case OBJ_2F4_197: if (gCurrentLevel == LEVEL_VENOM_2) { func_E9F1D0_801888F4(&gObjects2F4[index]); } else { func_800763A4(&gObjects2F4[index]); } break; - case OBJECT_202: + case OBJ_2F4_202: func_800763A4(&gObjects2F4[index]); break; - case OBJECT_194: + case OBJ_2F4_194: func_8006B0A0(&gObjects2F4[index]); break; - case OBJECT_186: + case OBJ_2F4_186: func_E08400_80187B08(&gObjects2F4[index]); break; - case OBJECT_181: + case OBJ_2F4_181: Object_Kill(&gObjects2F4[index].obj, &gObjects2F4[index].sfxPos); func_8007D2C8(gObjects2F4[index].obj.pos.x, gObjects2F4[index].obj.pos.y, gObjects2F4[index].obj.pos.z, 20.0f); break; - case OBJECT_182: + case OBJ_2F4_182: Object_Kill(&gObjects2F4[index].obj, &gObjects2F4[index].sfxPos); func_8007D2C8(gObjects2F4[index].obj.pos.x, gObjects2F4[index].obj.pos.y, gObjects2F4[index].obj.pos.z, 10.0f); func_80066254(&gObjects2F4[index]); break; - case OBJECT_192: + case OBJ_2F4_192: func_8006684C(&gObjects2F4[index]); break; - case OBJECT_306: + case OBJ_408_306: func_E6A810_801990DC(&gObjects408[index]); break; - case OBJECT_232: + case OBJ_2F4_232: func_E6A810_8018B720(&gObjects2F4[index]); break; - case OBJECT_319: + case OBJ_408_319: func_E51970_80198594(&gObjects408[index]); break; } @@ -2479,40 +2480,40 @@ void func_800693E8(Object_2F4* obj2F4) { obj2F4->obj.pos.y += obj2F4->unk_0E8.y; obj2F4->unk_0E8.y -= obj2F4->unk_10C; - if ((D_80161AB8 != 0) && (obj2F4->obj.id != OBJECT_198) && - ((gCurrentLevel != LEVEL_MACBETH) || (obj2F4->obj.id == OBJECT_200))) { + if ((D_80161AB8 != 0) && (obj2F4->obj.id != OBJ_2F4_198) && + ((gCurrentLevel != LEVEL_MACBETH) || (obj2F4->obj.id == OBJ_2F4_200))) { f32 var_fv0 = 4000.0f; - if ((obj2F4->obj.id == OBJECT_236) || (gCurrentLevel == LEVEL_MACBETH) || - ((obj2F4->obj.id == OBJECT_200) && (obj2F4->unk_0B4 == 56))) { + 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) { var_fv0 = 100000.0f; } - if (((gPlayer[0].unk_040.z + obj2F4->unk_01C.unk_10) < (obj2F4->obj.pos.z + D_80177D20)) || + if (((gPlayer[0].unk_040.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) || (obj2F4->obj.pos.x < (gPlayer[0].unk_0AC - var_fv0))) { Object_Kill(&obj2F4->obj, &obj2F4->sfxPos); switch (obj2F4->obj.id) { - case OBJECT_236: + case OBJ_2F4_236: D_801784A4 = 0; break; - case OBJECT_229: + case OBJ_2F4_229: func_E6A810_8018E3B0(obj2F4); break; - case OBJECT_194: + case OBJ_2F4_194: D_80176550[obj2F4->unk_046] = 0; break; - case OBJECT_200: + case OBJ_2F4_200: if ((obj2F4->unk_0B4 >= 200) && (obj2F4->unk_0B4 < 300)) { D_80176550[obj2F4->unk_046] = 0; } else if ((obj2F4->unk_0B4 == 38) && (obj2F4->unk_046 != 2)) { D_80177E80 = -1; } break; - case OBJECT_252: + case OBJ_2F4_252: D_80161684 = 1; break; } @@ -2525,7 +2526,7 @@ 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->unk_01C.unk_10 - gPlayer[0].unk_040.z))) { + 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 Object_Kill(&obj408->obj, &obj408->sfxPos); } @@ -2534,14 +2535,14 @@ void func_80069658(Object_408* obj408) { void func_800696F8(Object_80* obj80) { if (gPlayer[0].unk_1C8 == 2) { obj80->obj.pos.z += obj80->unk_60; - if (obj80->unk_1C.unk_10 < obj80->obj.pos.z) { + if (obj80->info.unk_10 < obj80->obj.pos.z) { Object_Kill(&obj80->obj, &obj80->sfxPos); } - } else if ((D_80177880 == 0) && (D_80178284 != 2)) { + } else if ((gAllRangeMode == 0) && (D_80178284 != 2)) { f32 temp_fv0 = fabsf(obj80->obj.pos.x - gPlayer[0].unk_040.x); f32 var_fa0 = 500.0f; - if ((obj80->obj.id == OBJECT_6) || (obj80->obj.id == OBJECT_7)) { + if ((obj80->obj.id == OBJ_80_6) || (obj80->obj.id == OBJ_80_7)) { var_fa0 = 1000.0f; } temp_fv0 = ((var_fa0 > temp_fv0) ? 0.0f : (temp_fv0 - var_fa0) * 1.7f); @@ -2549,7 +2550,7 @@ void func_800696F8(Object_80* obj80) { temp_fv0 = 0.0f; } temp_fv0 -= gPlayer[0].unk_040.z; - if ((obj80->unk_1C.unk_10 - temp_fv0) < (obj80->obj.pos.z + D_80177D20)) { + if ((obj80->info.unk_10 - temp_fv0) < (obj80->obj.pos.z + D_80177D20)) { Object_Kill(&obj80->obj, &obj80->sfxPos); } } @@ -2560,13 +2561,13 @@ void func_80069858(Object_4C* obj4C) { f32 temp_fv0 = fabsf(obj4C->obj.pos.x - gPlayer[0].unk_040.x); f32 var_fa0 = 500.0f; - if (((obj4C->obj.id == OBJECT_164) && ((obj4C->unk_45 == 6) || (obj4C->unk_45 == 7))) || - (obj4C->obj.id == OBJECT_8)) { + if (((obj4C->obj.id == OBJ_4C_164) && ((obj4C->unk_45 == 6) || (obj4C->unk_45 == 7))) || + (obj4C->obj.id == OBJ_80_8)) { 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; - if ((obj4C->unk_1C.unk_10 - temp_fv0) < (obj4C->obj.pos.z + D_80177D20)) { + if ((obj4C->info.unk_10 - temp_fv0) < (obj4C->obj.pos.z + D_80177D20)) { obj4C->obj.status = 0; } } @@ -2577,7 +2578,7 @@ 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->unk_1C.unk_10) < (obj8C->obj.pos.z + D_80177D20)) { + if ((gPlayer[0].unk_040.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)) { @@ -2586,13 +2587,13 @@ void func_80069924(Object_8C* obj8C) { } } -void func_80069A10(Object_6C* obj6C) { +void func_80069A10(Item* item) { if (D_80161AB8 != 0) { f32 temp = (0.0f - gPlayer[0].unk_040.z); - if ((obj6C->unk_1C.unk_10 - temp) < (obj6C->obj.pos.z + D_80177D20)) { - Object_Kill(&obj6C->obj, &obj6C->sfxPos); - if ((obj6C->obj.id == OBJECT_6C_METEO_WARP) && (obj6C->unk_46 == 0)) { + if ((item->info.unk_10 - temp) < (item->obj.pos.z + D_80177D20)) { + Object_Kill(&item->obj, &item->sfxPos); + if ((item->obj.id == OBJ_ITEM_METEO_WARP) && (item->unk_46 == 0)) { D_80177E80 = -1; } } @@ -2617,17 +2618,17 @@ void Object_2F4_Update(Object_2F4* obj2F4) { if (obj2F4->unk_0C6 != 0) { obj2F4->unk_0C6--; } - if (D_801778E8 != 0) { + if (gVersusMode) { for (i = 0; i < gCamCount; i++) { if (obj2F4->unk_0CA[i] != 0) { - if (!(gCurrentInput[i].button & A_BUTTON)) { + if (!(gControllerHold[i].button & A_BUTTON)) { obj2F4->unk_0CA[i]--; } D_801779C8[i] = 0; } } } else if (obj2F4->unk_0CA[0] != 0) { - if (!(gCurrentInput[D_80177AF8].button & A_BUTTON)) { + if (!(gControllerHold[D_80177AF8].button & A_BUTTON)) { obj2F4->unk_0CA[0]--; } D_801779C8[0] = 0; @@ -2638,21 +2639,21 @@ void Object_2F4_Update(Object_2F4* obj2F4) { switch (obj2F4->obj.status) { case 1: obj2F4->obj.status = 2; - Object_Init(obj2F4->unk_040, obj2F4->obj.id); - if (obj2F4->obj.id != OBJECT_252) { + Object_Init(obj2F4->index, obj2F4->obj.id); + if (obj2F4->obj.id != OBJ_2F4_252) { func_800693E8(obj2F4); } break; case 2: func_800693E8(obj2F4); - if ((obj2F4->obj.status != 0) && (obj2F4->unk_01C.action != NULL)) { - obj2F4->unk_01C.action(&obj2F4->obj); + if ((obj2F4->obj.status != 0) && (obj2F4->info.action != NULL)) { + obj2F4->info.action(&obj2F4->obj); } break; case 3: func_800693E8(obj2F4); if (obj2F4->obj.status != 0) { - func_800690D0(obj2F4->unk_040, obj2F4->obj.id); + func_800690D0(obj2F4->index, obj2F4->obj.id); } break; } @@ -2683,19 +2684,19 @@ void Object_408_Update(Object_408* obj408) { switch (obj408->obj.status) { case 1: obj408->obj.status = 2; - Object_Init(obj408->unk_040, obj408->obj.id); + Object_Init(obj408->index, obj408->obj.id); func_80069658(obj408); break; case 2: func_80069658(obj408); - if ((obj408->obj.status != 0) && (obj408->unk_01C.action != NULL)) { - obj408->unk_01C.action(&obj408->obj); + if ((obj408->obj.status != 0) && (obj408->info.action != NULL)) { + obj408->info.action(&obj408->obj); } break; case 3: func_80069658(obj408); if (obj408->obj.status != 0) { - func_800690D0(obj408->unk_040, obj408->obj.id); + func_800690D0(obj408->index, obj408->obj.id); } break; } @@ -2713,8 +2714,8 @@ void Object_80_Update(Object_80* obj80) { break; case 2: func_800696F8(obj80); - if (obj80->unk_1C.action != NULL) { - obj80->unk_1C.action(&obj80->obj); + if (obj80->info.action != NULL) { + obj80->info.action(&obj80->obj); } break; } @@ -2729,8 +2730,8 @@ void Object_4C_Update(Object_4C* obj4C) { break; case 2: func_80069858(obj4C); - if (obj4C->unk_1C.action != NULL) { - obj4C->unk_1C.action(&obj4C->obj); + if (obj4C->info.action != NULL) { + obj4C->info.action(&obj4C->obj); } break; case 3: @@ -2740,23 +2741,23 @@ void Object_4C_Update(Object_4C* obj4C) { } } -void Object_6C_Update(Object_6C* obj6C) { - if (obj6C->unk_48 != 0) { - obj6C->unk_48--; +void Item_Update(Item* item) { + if (item->unk_48 != 0) { + item->unk_48--; } - if (obj6C->unk_4A != 0) { - obj6C->unk_4A--; + if (item->unk_4A != 0) { + item->unk_4A--; } - switch (obj6C->obj.status) { + switch (item->obj.status) { case 1: - obj6C->obj.status = 2; - Object_Init(obj6C->index, obj6C->obj.id); - func_80069A10(obj6C); + item->obj.status = 2; + Object_Init(item->index, item->obj.id); + func_80069A10(item); break; case 2: - func_80069A10(obj6C); - if (obj6C->unk_1C.action != NULL) { - obj6C->unk_1C.action(&obj6C->obj); + func_80069A10(item); + if (item->info.action != NULL) { + item->info.action(&item->obj); } break; } @@ -2773,8 +2774,8 @@ void Object_8C_Update(Object_8C* obj8C) { /* fallthrough */ case 2: func_80069924(obj8C); - if ((obj8C->obj.status != 0) && (obj8C->unk_1C.action != NULL)) { - obj8C->unk_1C.action(&obj8C->obj); + if ((obj8C->obj.status != 0) && (obj8C->info.action != NULL)) { + obj8C->info.action(&obj8C->obj); } break; } @@ -2822,7 +2823,7 @@ void func_8006A06C(UnkEntity30* unkEnt30) { } } } - if (((unkEnt30->unk_04.z + D_80177D20) > 1000.0f) && (D_80177880 != 1)) { + if (((unkEnt30->unk_04.z + D_80177D20) > 1000.0f) && (gAllRangeMode != 1)) { unkEnt30->mode = 0; } if (((unkEnt30->mode == 3) || (unkEnt30->mode == 50)) && (unkEnt30->timer == 0)) { @@ -2850,15 +2851,15 @@ void Object_UpdateAll(void) { Object_408* obj408; Object_4C* obj4C; Object_80* obj80; - Object_6C* obj6C; + Item* item; Object_8C* obj8C; D_80161AB8 = 0; - if ((D_80177880 == 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 ((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))) { D_80161AB8 = 1; } - if (D_80177880 != 1) { + if (gAllRangeMode != 1) { if ((D_80178488 != 0) && (gPlayer[0].unk_1C8 != 2)) { func_80062664(); } @@ -2868,9 +2869,9 @@ void Object_UpdateAll(void) { Object_80_Update(obj80); } } - } else if (D_801778E8 != 0) { + } else if (gVersusMode) { for (i = 0, obj58 = gObjects58; i < 200; i++, obj58++) { - if ((obj58->obj.status != 0) && (obj58->obj.id == OBJECT_146)) { + if ((obj58->obj.status != 0) && (obj58->obj.id == OBJ_80_146)) { if (i & 1) { obj58->obj.rot.y += 0.5f; } else { @@ -2887,20 +2888,20 @@ void Object_UpdateAll(void) { } for (i = 0, obj408 = gObjects408; i < ARRAY_COUNT(gObjects408); i++, obj408++) { if (obj408->obj.status != 0) { - obj408->unk_040 = i; + obj408->index = i; Object_408_Update(obj408); } } for (i = 0, obj2F4 = gObjects2F4; i < ARRAY_COUNT(gObjects2F4); i++, obj2F4++) { if (obj2F4->obj.status != 0) { - obj2F4->unk_040 = i; + obj2F4->index = i; Object_2F4_Update(obj2F4); } } - for (i = 0, obj6C = gObjects6C; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { - if (obj6C->obj.status != 0) { - obj6C->index = i; - Object_6C_Update(obj6C); + for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) { + if (item->obj.status != 0) { + item->index = i; + Item_Update(item); } } for (i = 0, obj8C = gObjects8C; i < ARRAY_COUNT(gObjects8C); i++, obj8C++) { diff --git a/src/main/fox_game.c b/src/main/fox_game.c index f8b6343b..602956b1 100644 --- a/src/main/fox_game.c +++ b/src/main/fox_game.c @@ -384,7 +384,7 @@ void func_800A26C0(void) { gCamCount = 1; gLifeCount[0] = 2; D_80177D20 = 0.0f; - D_8016170C = D_80177A80 = D_80177830 = D_80177838 = D_80177840 = D_80178754 = D_801778E8 = D_80177AE0 = + 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; gNextGameState = D_80177C94 = D_80177CAC = D_80177CB4 = D_80177CBC = D_80177CC4 = D_80177C9C = @@ -402,7 +402,7 @@ void func_800A26C0(void) { D_800D2860[i] = R_CBUTTONS; D_80178380[i] = 0; } - D_8017789C = 0; + gVersusStage = 0; D_801778A4 = 3; gBlurAlpha = 255; for (i = 0; i < 30; i++) { @@ -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 == 0) { + if (gLevelType == LEVELTYPE_GROUND) { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 0, 0, 0, 255); } else { gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 100, 100, 255, 255); @@ -529,7 +529,7 @@ void func_800A26C0(void) { func_80040CDC(); func_8008865C(); func_8002E548(); - if ((gGameState == GSTATE_PLAY) && (D_801778E8 != 0)) { + if ((gGameState == GSTATE_PLAY) && (gVersusMode)) { func_800C1ED4(); } func_80084688(0, D_80177C50); @@ -550,7 +550,7 @@ Object_2F4* func_800A3608(s32 arg0) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; obj2F4->obj.id = arg0; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); break; } } diff --git a/src/main/fox_play.c b/src/main/fox_play.c index b4b01e04..be5b5fe1 100644 --- a/src/main/fox_play.c +++ b/src/main/fox_play.c @@ -26,7 +26,7 @@ extern u8 D_800D3180[30]; extern s32 D_800D31A0[4]; s32 Play_CheckMedalStatus(u16 hitCount) { - if ((gTeamHealth[2] > 0) && (gTeamHealth[3] > 0) && (gTeamHealth[1] > 0) && (gHitCount >= hitCount)) { + if ((gTeamShields[2] > 0) && (gTeamShields[3] > 0) && (gTeamShields[1] > 0) && (gHitCount >= hitCount)) { return true; } return false; @@ -36,7 +36,7 @@ void func_800A3FB0(void) { D_800D2F5C[2] = 0.0f; } -s32 Play_GetMaxHealth(void) { +s32 Play_GetMaxShields(void) { if (gGoldRingCount[0] >= 3) { return 0x17F; } @@ -130,9 +130,9 @@ 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 == 0) || ((player->unk_238 == 1) && (D_80177880 == 0))) { + if ((gLevelType == LEVELTYPE_GROUND) || ((player->unk_238 == 1) && (gAllRangeMode == 0))) { player->unk_080 = -__sinf(player->unk_088 * M_DTOR) * 0.5f; - if ((player->wings.rightState <= 1) || (player->wings.leftState <= 1)) { + if ((player->wings.rightState <= WINGSTATE_BROKEN) || (player->wings.leftState <= WINGSTATE_BROKEN)) { player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR) * 5.0f; } else { player->unk_0F0 = __sinf(player->unk_0F4 * M_DTOR) * 1.5f; @@ -145,25 +145,25 @@ void func_800A46A0(Player* player) { s32 var_v1; f32 sp40; - if ((player->unk_238 == 0) || (D_80177880 == 1)) { - if (player->wings.rightState <= 1) { + if ((player->unk_238 == 0) || (gAllRangeMode == 1)) { + 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) && (Rand_ZeroOne() < 0.5f) && (D_801778E8 == 0)) { + 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); } } - if (player->wings.leftState <= 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) && (Rand_ZeroOne() < 0.5f) && (D_801778E8 == 0)) { + 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, @@ -172,17 +172,17 @@ void func_800A46A0(Player* player) { } } var_v1 = 7; - if (player->health < 0x40) { - if (player->health > 0x10) { + if (player->shields < 0x40) { + if (player->shields > 0x10) { var_v1 = 0xF; } - if (player->health > 0x20) { + if (player->shields > 0x20) { var_v1 = 0x1F; } - if (player->health > 0x30) { + if (player->shields > 0x30) { var_v1 = 0x3F; } - if ((player->unk_238 == 0) || (D_80177880 == 1)) { + if ((player->unk_238 == 0) || (gAllRangeMode == 1)) { sp40 = 0.0f; if (player->unk_1CC == 1) { sp40 = 30.0f; @@ -259,7 +259,7 @@ void func_800A4F7C(void) { s32 j; s32 var_s4_2; - switch (D_8017789C) { + switch (gVersusStage) { case 0: D_80178310 = SEGMENTED_TO_VIRTUAL(D_302DE3C); break; @@ -275,25 +275,25 @@ void func_800A4F7C(void) { break; } for (i = 0, j = 0; i < 199; j++) { - if (D_80178310[j].id <= OBJECT_INVALID) { + if (D_80178310[j].id <= OBJ_INVALID) { break; } - if (D_80178310[j].id == OBJECT_147) { + if (D_80178310[j].id == OBJ_80_147) { func_800A4F4C(&gObjects58[i]); gObjects58[i].obj.status = 2; gObjects58[i].obj.id = D_80178310[j].id; gObjects58[i].obj.pos.x = D_80178310[j].xPos; gObjects58[i].obj.pos.z = D_80178310[j].zPos1; gObjects58[i].obj.pos.y = D_80178310[j].yPos; - Object_Set1C(&gObjects58[i].unk_1C, gObjects58[i].obj.id); + Object_SetInfo(&gObjects58[i].info, gObjects58[i].obj.id); i++; } } for (i = 5, j = 0; i < 199; j++) { - if (D_80178310[j].id <= OBJECT_INVALID) { + if (D_80178310[j].id <= OBJ_INVALID) { break; } - if (D_80178310[j].id != OBJECT_147) { + if (D_80178310[j].id != OBJ_80_147) { func_800A4F4C(&gObjects58[i]); gObjects58[i].obj.status = 2; gObjects58[i].obj.id = D_80178310[j].id; @@ -301,7 +301,7 @@ void func_800A4F7C(void) { gObjects58[i].obj.pos.z = D_80178310[j].zPos1; gObjects58[i].obj.pos.y = D_80178310[j].yPos; gObjects58[i].obj.rot.y = D_80178310[j].unk_C; - Object_Set1C(&gObjects58[i].unk_1C, gObjects58[i].obj.id); + Object_SetInfo(&gObjects58[i].info, gObjects58[i].obj.id); i++; } } @@ -319,10 +319,10 @@ void func_800A5338(void) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_603B074); for (j = 0, obj58 = gObjects58; j < 200; j++) { - if (D_80178310[j].id <= OBJECT_INVALID) { + if (D_80178310[j].id <= OBJ_INVALID) { break; } - if (D_80178310[j].id < OBJECT_161) { + if (D_80178310[j].id < OBJ_4C_161) { func_800A4F4C(obj58); obj58->obj.status = 2; obj58->obj.id = D_80178310[j].id; @@ -330,26 +330,26 @@ void func_800A5338(void) { obj58->obj.pos.z = D_80178310[j].zPos1; obj58->obj.pos.y = D_80178310[j].yPos; obj58->obj.rot.y = D_80178310[j].unk_C; - Object_Set1C(&obj58->unk_1C, obj58->obj.id); - if (obj58->obj.id == OBJECT_1) { - obj58->unk_1C.dList = D_6020760; + Object_SetInfo(&obj58->info, obj58->obj.id); + if (obj58->obj.id == OBJ_80_1) { + obj58->info.dList = D_6020760; } obj58++; } } for (j = 0, obj4C = gObjects4C; j < ARRAY_COUNT(gObjects4C); j++) { - if (D_80178310[j].id <= OBJECT_INVALID) { + if (D_80178310[j].id <= OBJ_INVALID) { break; } - if (D_80178310[j].id == OBJECT_162) { + if (D_80178310[j].id == OBJ_4C_162) { Object_4C_Initialize(obj4C); obj4C->obj.status = 1; obj4C->obj.id = D_80178310[j].id; obj4C->obj.pos.x = D_80178310[j].xPos; obj4C->obj.pos.z = D_80178310[j].zPos1; obj4C->obj.pos.y = D_80178310[j].yPos; - Object_Set1C(&obj4C->unk_1C, obj4C->obj.id); + Object_SetInfo(&obj4C->info, obj4C->obj.id); obj4C++; } } @@ -359,8 +359,8 @@ void func_800A5338(void) { gObjects408[i].obj.pos.x = 0.0f; gObjects408[i].obj.pos.y = 0.0f; gObjects408[i].obj.pos.z = 0.0f; - gObjects408[i].obj.id = OBJECT_292; - Object_Set1C(&gObjects408[i].unk_01C, gObjects408[i].obj.id); + gObjects408[i].obj.id = OBJ_408_292; + Object_SetInfo(&gObjects408[i].info, gObjects408[i].obj.id); } void func_800A55B0(void) { @@ -371,10 +371,10 @@ void func_800A55B0(void) { D_80178310 = SEGMENTED_TO_VIRTUAL(D_6030B14); for (j = 0, obj58 = gObjects58; j < 200; j++) { - if (D_80178310[j].id <= OBJECT_INVALID) { + if (D_80178310[j].id <= OBJ_INVALID) { break; } - if (D_80178310[j].id < OBJECT_161) { + if (D_80178310[j].id < OBJ_4C_161) { func_800A4F4C(obj58); obj58->obj.status = 2; obj58->obj.id = D_80178310[j].id; @@ -382,7 +382,7 @@ void func_800A55B0(void) { obj58->obj.pos.z = D_80178310[j].zPos1; obj58->obj.pos.y = D_80178310[j].yPos; obj58->obj.rot.y = D_80178310[j].unk_C; - Object_Set1C(&obj58->unk_1C, obj58->obj.id); + Object_SetInfo(&obj58->info, obj58->obj.id); obj58++; } } @@ -392,24 +392,24 @@ void func_800A55B0(void) { gObjects408[i].obj.pos.x = 0.0f; gObjects408[i].obj.pos.y = 0.0f; gObjects408[i].obj.pos.z = 0.0f; - gObjects408[i].obj.id = OBJECT_314; - Object_Set1C(&gObjects408[i].unk_01C, gObjects408[i].obj.id); + gObjects408[i].obj.id = OBJ_408_314; + Object_SetInfo(&gObjects408[i].info, gObjects408[i].obj.id); i = 1; Object_408_Initialize(&gObjects408[i]); gObjects408[i].obj.status = 1; gObjects408[i].obj.pos.x = 0.0f; gObjects408[i].obj.pos.y = 0.0f; gObjects408[i].obj.pos.z = 0.0f; - gObjects408[i].obj.id = OBJECT_314; - Object_Set1C(&gObjects408[i].unk_01C, gObjects408[i].obj.id); + gObjects408[i].obj.id = OBJ_408_314; + Object_SetInfo(&gObjects408[i].info, gObjects408[i].obj.id); i = 2; Object_408_Initialize(&gObjects408[i]); gObjects408[i].obj.status = 1; gObjects408[i].obj.pos.x = 0.0f; gObjects408[i].obj.pos.y = 0.0f; gObjects408[i].obj.pos.z = 0.0f; - gObjects408[i].obj.id = OBJECT_314; - Object_Set1C(&gObjects408[i].unk_01C, gObjects408[i].obj.id); + gObjects408[i].obj.id = OBJ_408_314; + Object_SetInfo(&gObjects408[i].info, gObjects408[i].obj.id); } void func_800A57E0(void) { @@ -420,8 +420,8 @@ void func_800A57E0(void) { gObjects408[i].obj.pos.x = 0.0f; gObjects408[i].obj.pos.y = 0.0f; gObjects408[i].obj.pos.z = 0.0f; - gObjects408[i].obj.id = OBJECT_321; - Object_Set1C(&gObjects408[i].unk_01C, gObjects408[i].obj.id); + gObjects408[i].obj.id = OBJ_408_321; + Object_SetInfo(&gObjects408[i].info, gObjects408[i].obj.id); } void func_800A5844(void) { @@ -440,19 +440,19 @@ void func_800A5844(void) { return; } for (i = 1; i < 4; i++) { - if (gSavedTeamHealth[i] < 0) { - if (gSavedTeamHealth[i] == -1) { - gSavedTeamHealth[i] = 0; + if (gSavedTeamShields[i] < 0) { + if (gSavedTeamShields[i] == -1) { + gSavedTeamShields[i] = 0; } - } else if (gSavedTeamHealth[i] == 0) { - gSavedTeamHealth[i] = 0xFF; + } else if (gSavedTeamShields[i] == 0) { + gSavedTeamShields[i] = 0xFF; } } } void func_800A594C(void) { - if (D_801778E8 != 0) { - switch (D_8017789C) { + if (gVersusMode) { + switch (gVersusStage) { case 0: sEnvSettings = SEGMENTED_TO_VIRTUAL(D_302DD70); break; @@ -531,7 +531,7 @@ void func_800A5EBC(void) { if (gCurrentLevel == LEVEL_FORTUNA) { D_80178410 = 500; } - if (D_801778E8 != 0) { + if (gVersusMode) { D_80178410 = 0; } if (gCurrentLevel == LEVEL_BOLSE) { @@ -545,7 +545,7 @@ void func_800A5EBC(void) { } void func_800A5FA0(Vec3f* arg0, u32 arg1, s32 arg2) { - if (D_801778E8 == 0) { + if (!gVersusMode) { func_80019218(arg1, arg0, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } else { func_80019218(arg1, arg0, arg2, &D_800C5D34, &D_800C5D34, &D_800C5D3C); @@ -619,13 +619,13 @@ void func_800A6148(void) { Object_Kill(&gObjects8C[i].obj, &gObjects8C[i].sfxPos); Object_8C_Initialize(&gObjects8C[i]); } - for (i = 0; i < ARRAY_COUNT(gObjects6C); i++) { - Object_Kill(&gObjects6C[i].obj, &gObjects6C[i].sfxPos); - Object_6C_Initialize(&gObjects6C[i]); + for (i = 0; i < ARRAY_COUNT(gItems); i++) { + Object_Kill(&gItems[i].obj, &gItems[i].sfxPos); + Item_Initialize(&gItems[i]); } - for (i = 0; i < ARRAY_COUNT(gObjects70); i++) { - Object_Kill(&gObjects70[i].obj, &gObjects70[i].sfxPos); - Object_70_Initialize(&gObjects70[i]); + for (i = 0; i < ARRAY_COUNT(gPlayerShots); i++) { + Object_Kill(&gPlayerShots[i].obj, &gPlayerShots[i].sfxPos); + PlayerShot_Initialize(&gPlayerShots[i]); } D_801782B8 = D_801782BC = D_801782C0 = D_801782D0 = D_80178284 = D_8017828C = D_8017812C = D_80177E70 = D_80177E78 = D_80177E80 = 0; @@ -673,14 +673,14 @@ void func_800A6590(void) { void func_800A668C(f32 xPos, f32 yPos, f32 zPos) { s32 i; - for (i = 0; i < ARRAY_COUNT(gObjects70); i++) { - if (gObjects70[i].obj.status == 0) { - Object_70_Initialize(&gObjects70[i]); - gObjects70[i].obj.status = 2; - gObjects70[i].unk_60 = 0; - gObjects70[i].obj.pos.x = xPos; - gObjects70[i].obj.pos.y = yPos; - gObjects70[i].obj.pos.z = zPos; + for (i = 0; i < ARRAY_COUNT(gPlayerShots); i++) { + if (gPlayerShots[i].obj.status == 0) { + PlayerShot_Initialize(&gPlayerShots[i]); + gPlayerShots[i].obj.status = 2; + gPlayerShots[i].unk_60 = 0; + gPlayerShots[i].obj.pos.x = xPos; + gPlayerShots[i].obj.pos.y = yPos; + gPlayerShots[i].obj.pos.z = zPos; break; } } @@ -689,7 +689,7 @@ void func_800A668C(f32 xPos, f32 yPos, f32 zPos) { void func_800A670C(Object_2F4* obj2F4, s32 arg1, f32 arg2, f32 arg3, f32 arg4) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 1; - obj2F4->obj.id = OBJECT_189; + obj2F4->obj.id = OBJ_2F4_189; obj2F4->unk_0B8 = arg1; obj2F4->obj.pos.x = arg2; obj2F4->obj.pos.y = arg3; @@ -704,11 +704,11 @@ void func_800A670C(Object_2F4* obj2F4, s32 arg1, f32 arg2, f32 arg3, f32 arg4) { } obj2F4->unk_0BC = 15; } else { - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { 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 (D_80177880 == 1) { + if (gAllRangeMode == 1) { obj2F4->unk_0E8.z = (Rand_ZeroOne() - 0.5f) * 10.0f; } obj2F4->unk_0BC = (s32) (Rand_ZeroOne() * 10.0f) + 10; @@ -727,13 +727,13 @@ void func_800A670C(Object_2F4* obj2F4, s32 arg1, f32 arg2, f32 arg3, f32 arg4) { } obj2F4->obj.rot.x = Rand_ZeroOne() * 360.0f; } - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } void func_800A69F8(s32 arg0, f32 arg1, f32 arg2, f32 arg3) { s32 i; - if (D_801778E8 == 0) { + if (!gVersusMode) { for (i = ARRAY_COUNT(gObjects2F4) - 1; i >= 10; i--) { if (gObjects2F4[i].obj.status == 0) { func_800A670C(&gObjects2F4[i], arg0, arg1, arg2, arg3); @@ -752,11 +752,11 @@ void func_800A6AC0(Player* player, s32 side, s32 damage) { if ((player->unk_1CC == 0) && (D_80177AB8[player->unk_1C4] < 1.0f)) { if (side == 1) { D_80177D40[player->unk_1C4] = 30; - if (player->wings.rightState == 2) { + 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); - player->wings.rightState = 1; + 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); @@ -767,11 +767,11 @@ void func_800A6AC0(Player* player, s32 side, s32 damage) { } } else if (side == 2) { D_80177D58[player->unk_1C4] = 30; - if (player->wings.leftState == 2) { + 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); - player->wings.leftState = 1; + 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); @@ -820,10 +820,10 @@ void func_800A6CD0(Player* player, s32 arg1, s32 damage) { D_80177AB8[player->unk_1C4] = 2.0f; player->damage = 0; } else { - if (player->health != 0) { - if (player->health < 50) { + if (player->shields != 0) { + if (player->shields < 50) { func_80019218(0x49008011, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - } else if (player->health < 100) { + } else if (player->shields < 100) { func_80019218(0x49008010, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } } @@ -1032,10 +1032,10 @@ bool func_800A73E4(f32* arg0, s32* arg1, f32 posX, f32 posY, f32 posZ) { return false; } -s32 func_800A78C4(f32* hitbox, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6) { - if ((fabsf(hitbox[0] + arg3 - arg6) < (hitbox[1] + D_8017853C)) && - (fabsf(hitbox[4] + arg1 - arg4) < (hitbox[5] + D_8017853C)) && - (fabsf(hitbox[2] + arg2 - arg5) < (hitbox[3] + D_8017853C))) { +s32 func_800A78C4(Hitbox* hitbox, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6) { + if ((fabsf(hitbox->z.offset + arg3 - arg6) < (hitbox->z.size + D_8017853C)) && + (fabsf(hitbox->x.offset + arg1 - arg4) < (hitbox->x.size + D_8017853C)) && + (fabsf(hitbox->y.offset + arg2 - arg5) < (hitbox->y.size + D_8017853C))) { return true; } return false; @@ -1043,7 +1043,7 @@ s32 func_800A78C4(f32* hitbox, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPos, f32 zPos, f32 xRot, f32 yRot, f32 zRot, f32 arg9, f32 argA, f32 argB) { - s32 spB4; + s32 count; s32 i; f32 var_fv0; f32 var_fv1; @@ -1052,11 +1052,12 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo Vec3f sp94; Vec3f sp88; - spB4 = *hitboxData++; - if (spB4 != 0) { - for (i = 0; i < spB4; i++, hitboxData += 6) { + count = *hitboxData; + if (count != 0) { + hitboxData++; + for (i = 0; i < count; i++, hitboxData += 6) { spA0 = 0; - if (hitboxData[0] == 200000.0f) { + if (*hitboxData == 200000.0f) { Matrix_RotateZ(gCalcMatrix, -hitboxData[3] * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -hitboxData[1] * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -hitboxData[2] * M_DTOR, 1); @@ -1066,7 +1067,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo hitboxData += 4; spA0 = 1; } else { - if (hitboxData[0] >= 300000.0f) { + if (*hitboxData >= 300000.0f) { hitboxData++; } Matrix_RotateZ(gCalcMatrix, -zRot * M_DTOR, 0); @@ -1091,7 +1092,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo var_fv1 = sp88.y + yPos; var_fa0 = sp88.z + zPos; } - if (func_800A78C4(hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { + if (func_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; if (hitboxData[-1] == 300000.0f) { return -1; @@ -1115,7 +1116,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo var_fv1 = sp88.y + yPos; var_fa0 = sp88.z + zPos; } - if (func_800A78C4(hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { + if (func_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; return 4; } @@ -1132,7 +1133,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo var_fv1 = sp88.y + yPos; var_fa0 = sp88.z + zPos; } - if (func_800A78C4(hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { + if (func_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; return 1; } @@ -1149,7 +1150,7 @@ s32 func_800A7974(Player* player, f32* hitboxData, s32* index, f32 xPos, f32 yPo var_fv1 = sp88.y + yPos; var_fa0 = sp88.z + zPos; } - if (func_800A78C4(hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { + if (func_800A78C4((Hitbox*) hitboxData, xPos, yPos, zPos, var_fv0, var_fv1, var_fa0)) { *index = i + 1; return 2; } @@ -1177,155 +1178,155 @@ bool func_800A8054(s32 objId, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, var_v0 = false; switch (objId) { - case OBJECT_180: + case OBJ_2F4_180: var_s0 = 0; break; - case OBJECT_4: - case OBJECT_5: + case OBJ_80_4: + case OBJ_80_5: var_s0 = 1; var_v0 = true; break; - case OBJECT_149: + case OBJ_80_149: var_s0 = 5; break; - case OBJECT_150: + case OBJ_80_150: var_s0 = 6; break; - case OBJECT_308: + case OBJ_408_308: var_s0 = 4; break; - case OBJECT_312: + case OBJ_408_312: var_s0 = 9; break; - case OBJECT_309: + case OBJ_408_309: var_s0 = 7; break; - case OBJECT_UNK_1000: + case OBJ_UNK_1000: var_s0 = 3; break; - case OBJECT_313: + case OBJ_408_313: var_s0 = 8; break; - case OBJECT_39: + case OBJ_80_39: var_s0 = 1; break; - case OBJECT_120: + case OBJ_80_120: var_s0 = 18; var_v0 = true; break; - case OBJECT_124: + case OBJ_80_124: var_s0 = 15; var_v0 = true; break; - case OBJECT_126: + case OBJ_80_126: var_s0 = 16; var_v0 = true; break; - case OBJECT_47: + case OBJ_80_47: var_s0 = 7; var_v0 = true; break; - case OBJECT_2: + case OBJ_80_2: var_s0 = 2; var_v0 = true; break; - case OBJECT_3: - case OBJECT_69: + case OBJ_80_3: + case OBJ_80_69: var_s0 = 3; var_v0 = true; break; - case OBJECT_143: + case OBJ_80_143: var_s0 = 17; var_v0 = true; break; - case OBJECT_140: + case OBJ_80_140: var_s0 = 4; var_v0 = true; break; - case OBJECT_141: + case OBJ_80_141: var_s0 = 6; var_v0 = true; break; - case OBJECT_117: + case OBJ_80_117: var_s0 = 14; var_v0 = true; break; - case OBJECT_70: + case OBJ_80_70: var_s0 = 8; var_v0 = true; break; - case OBJECT_72: + case OBJ_80_72: var_s0 = 9; var_v0 = true; break; - case OBJECT_71: + case OBJ_80_71: var_s0 = 10; var_v0 = true; break; - case OBJECT_73: + case OBJ_80_73: var_s0 = 11; var_v0 = true; break; - case OBJECT_67: + case OBJ_80_67: var_s0 = 12; var_v0 = true; break; - case OBJECT_74: + case OBJ_80_74: var_s0 = 13; var_v0 = true; break; - case OBJECT_118: - case OBJECT_119: - case OBJECT_121: - case OBJECT_122: - case OBJECT_123: - case OBJECT_125: - case OBJECT_127: - case OBJECT_128: - case OBJECT_129: - case OBJECT_130: - case OBJECT_131: - case OBJECT_132: - case OBJECT_133: - case OBJECT_134: - case OBJECT_135: - case OBJECT_136: - case OBJECT_137: - case OBJECT_138: - case OBJECT_139: - case OBJECT_142: - case OBJECT_144: - case OBJECT_145: - case OBJECT_146: - case OBJECT_147: - case OBJECT_148: - case OBJECT_40: - case OBJECT_41: - case OBJECT_42: - case OBJECT_43: - case OBJECT_44: - case OBJECT_45: - case OBJECT_46: - case OBJECT_48: - case OBJECT_49: - case OBJECT_50: - case OBJECT_51: - case OBJECT_52: - case OBJECT_53: - case OBJECT_54: - case OBJECT_55: - case OBJECT_56: - case OBJECT_57: - case OBJECT_58: - case OBJECT_59: - case OBJECT_60: - case OBJECT_61: - case OBJECT_62: - case OBJECT_63: - case OBJECT_64: - case OBJECT_65: - case OBJECT_66: - case OBJECT_68: + case OBJ_80_118: + case OBJ_80_119: + case OBJ_80_121: + case OBJ_80_122: + case OBJ_80_123: + case OBJ_80_125: + case OBJ_80_127: + case OBJ_80_128: + case OBJ_80_129: + case OBJ_80_130: + case OBJ_80_131: + case OBJ_80_132: + case OBJ_80_133: + case OBJ_80_134: + case OBJ_80_135: + case OBJ_80_136: + case OBJ_80_137: + case OBJ_80_138: + case OBJ_80_139: + case OBJ_80_142: + case OBJ_80_144: + case OBJ_80_145: + case OBJ_80_146: + case OBJ_80_147: + case OBJ_80_148: + case OBJ_80_40: + case OBJ_80_41: + case OBJ_80_42: + case OBJ_80_43: + case OBJ_80_44: + case OBJ_80_45: + case OBJ_80_46: + case OBJ_80_48: + case OBJ_80_49: + case OBJ_80_50: + case OBJ_80_51: + case OBJ_80_52: + case OBJ_80_53: + case OBJ_80_54: + case OBJ_80_55: + case OBJ_80_56: + case OBJ_80_57: + case OBJ_80_58: + case OBJ_80_59: + case OBJ_80_60: + case OBJ_80_61: + case OBJ_80_62: + case OBJ_80_63: + case OBJ_80_64: + case OBJ_80_65: + case OBJ_80_66: + case OBJ_80_68: default: var_s0 = 0; var_v0 = true; @@ -1345,7 +1346,7 @@ bool func_800A8054(s32 objId, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, } // arg5 could be Vec3f (not Vec3f*) -s32 func_800A8304(Player* player, s32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7) { +s32 func_800A8304(Player* player, s32 objId, f32 arg2, f32 arg3, f32 arg4, f32 arg5, f32 arg6, f32 arg7) { Vec3f sp84; Vec3f sp78; Vec3f sp6C; @@ -1365,7 +1366,7 @@ s32 func_800A8304(Player* player, s32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 ar sp78.y = player->unk_078 - sp84.y; sp78.z = player->unk_138 - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - if (func_800A8054(arg1, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, + 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->unk_104 = Math_RadToDeg(sp60.x); @@ -1383,28 +1384,28 @@ s32 func_800A8304(Player* player, s32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 ar sp78.y = player->unk_2E0.y - sp84.y; sp78.z = player->unk_2E0.z - sp84.z; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - if (func_800A8054(arg1, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { + 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; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - if (func_800A8054(arg1, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { + 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; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - if (func_800A8054(arg1, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { + 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; Matrix_MultVec3fNoTranslate(gCalcMatrix, &sp78, &sp6C); - if (func_800A8054(arg1, sp84.x, sp84.y, sp84.z, sp6C.x + sp84.x, sp6C.y + sp84.y, sp6C.z + sp84.z, &sp60, &sp54)) { + 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; } return 0; @@ -1412,15 +1413,15 @@ s32 func_800A8304(Player* player, s32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 ar void func_800A86E4(Player* player) { s32 i; - Object_6C* obj6C; + Item* item; s32 sp6C; - for (i = 0, obj6C = gObjects6C; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { - if ((obj6C->obj.status == 2) && ((player->unk_1C8 == 3) || (player->unk_1C8 == 5)) && (obj6C->unk_4A == 0) && - func_800A7974(player, obj6C->unk_1C.hitbox, &sp6C, obj6C->obj.pos.x, obj6C->obj.pos.y, obj6C->obj.pos.z, - 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f)) { - obj6C->unk_4C = 1; - obj6C->unk_4E = D_801778A0; + 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) && + 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; } } } @@ -1471,7 +1472,7 @@ void func_800A887C(Player* player) { Matrix_RotateZ(gCalcMatrix, -(player->unk_0F8 * M_DTOR), 1); sp3C.y = 0.0f; sp3C.z = 0.0f; - if (player->wings.leftState == 2) { + if (player->wings.leftState == WINGSTATE_INTACT) { sp3C.x = 40.0f; } else { sp3C.y = -10.0f; @@ -1481,7 +1482,7 @@ void func_800A887C(Player* player) { sp3C.x = 24.0f; } Matrix_MultVec3f(gCalcMatrix, &sp3C, &player->unk_2C8); - if (player->wings.rightState == 2) { + if (player->wings.rightState == WINGSTATE_INTACT) { sp3C.x = -40.0f; } else { sp3C.x = -30.0f; @@ -1542,7 +1543,7 @@ void func_800A8BA4(Player* player) { player->unk_1F4 = 7; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f; } else { - func_800A6CD0(player, 1, 0x15); + func_800A6CD0(player, 1, 21); } if (gCurrentLevel == LEVEL_FORTUNA) { func_8007BC7C(player->unk_2D4.x, player->unk_2D4.y, player->unk_2D4.z, 6.0f); @@ -1555,7 +1556,7 @@ void func_800A8BA4(Player* player) { player->unk_1F4 = 7; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.5f; } else { - func_800A6CD0(player, 2, 0x15); + func_800A6CD0(player, 2, 21); } if (gCurrentLevel == LEVEL_FORTUNA) { func_8007BC7C(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 6.0f); @@ -1563,12 +1564,12 @@ void func_800A8BA4(Player* player) { func_8007BC7C(player->unk_2C8.x, player->unk_2C8.y, player->unk_2C8.z, 6.0f); } } - } else if ((player->unk_1CC == 1) && (D_801778E8 == 0)) { + } else if ((player->unk_1CC == 1) && (!gVersusMode)) { func_800444BC(player); } if ((player->unk_498 == 0) || ((gCamCount != 1) && (player->unk_1CC != 0))) { - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { sp8C = 1100.0f; if ((gCurrentLevel == LEVEL_SECTOR_Y) || (gCurrentLevel == LEVEL_VENOM_2)) { sp8C = 4000.0f; @@ -1578,11 +1579,11 @@ void func_800A8BA4(Player* player) { spC8.x = obj58->obj.pos.x - player->unk_074; spC8.z = obj58->obj.pos.z - player->unk_138; if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < sp8C) { - if ((obj58->obj.id == OBJECT_117) || (obj58->obj.id == OBJECT_143) || - (obj58->obj.id == OBJECT_141) || (obj58->obj.id == OBJECT_149) || - (obj58->obj.id == OBJECT_150) || (obj58->obj.id == OBJECT_148) || - (obj58->obj.id == OBJECT_160) || (obj58->obj.id == OBJECT_1) || - (obj58->obj.id == OBJECT_3) || (obj58->obj.id == OBJECT_140)) { + if ((obj58->obj.id == OBJ_80_117) || (obj58->obj.id == OBJ_80_143) || + (obj58->obj.id == OBJ_80_141) || (obj58->obj.id == OBJ_80_149) || + (obj58->obj.id == OBJ_80_150) || (obj58->obj.id == OBJ_80_148) || + (obj58->obj.id == OBJ_80_160) || (obj58->obj.id == OBJ_80_1) || + (obj58->obj.id == OBJ_80_3) || (obj58->obj.id == OBJ_80_140)) { temp_v0 = 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); @@ -1590,11 +1591,11 @@ void func_800A8BA4(Player* player) { if ((player->unk_1CC == 1) || (player->unk_1CC == 3)) { func_800A729C(player, temp_v0, obj58->obj.pos.x, obj58->obj.pos.z); } else { - func_800A6CD0(player, temp_v0, obj58->unk_1C.damage); + func_800A6CD0(player, temp_v0, obj58->info.damage); } } if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_VENOM_SW)) { - temp_v0 = func_800A7974(player, obj58->unk_1C.hitbox, &sp98, obj58->obj.pos.x, + 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); if ((temp_v0 != 0) && (temp_v0 < 0)) { @@ -1608,7 +1609,7 @@ void func_800A8BA4(Player* player) { } } } else { - temp_v0 = func_800A7974(player, obj58->unk_1C.hitbox, &sp98, obj58->obj.pos.x, + 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); if (temp_v0 != 0) { @@ -1623,8 +1624,8 @@ void func_800A8BA4(Player* player) { } else if ((player->unk_1CC == 1) || (player->unk_1CC == 3)) { func_800A729C(player, temp_v0, obj58->obj.pos.x, obj58->obj.pos.z); } else { - func_800A6CD0(player, temp_v0, obj58->unk_1C.damage); - if (obj58->obj.id == OBJECT_131) { + func_800A6CD0(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); player->unk_0D8.x = spBC.x; @@ -1638,8 +1639,8 @@ void func_800A8BA4(Player* player) { player->unk_114 = obj58->obj.rot.y + 180.0f; player->unk_498 = 5; } - if ((obj58->obj.id == OBJECT_135) || (obj58->obj.id == OBJECT_136)) { - if (obj58->obj.id == OBJECT_135) { + if ((obj58->obj.id == OBJ_80_135) || (obj58->obj.id == OBJ_80_136)) { + if (obj58->obj.id == OBJ_80_135) { Matrix_RotateY(gCalcMatrix, (obj58->obj.rot.y + 180.0f) * M_DTOR, 0); Matrix_MultVec3f(gCalcMatrix, &D_800D3088[sp98 - 1], &spBC); } else { @@ -1654,7 +1655,7 @@ void func_800A8BA4(Player* player) { player->unk_074 = player->unk_08C.y; player->unk_078 = player->unk_08C.z; player->unk_07C = player->unk_098; - if (obj58->obj.id == OBJECT_135) { + if (obj58->obj.id == OBJ_80_135) { player->unk_114 = obj58->obj.rot.y + 180.0f; } else { player->unk_114 = obj58->obj.rot.y; @@ -1675,10 +1676,10 @@ void func_800A8BA4(Player* player) { (obj80->obj.id != 0x48) && (obj80->obj.id != 0x47) && (obj80->obj.id != 0x49) && (obj80->obj.id != 0x4A) && (obj80->obj.id != 0x45) && ((player->unk_138 - 2000.0f) < obj80->obj.pos.z)) { - if ((obj80->obj.id == OBJECT_1) || (obj80->obj.id == OBJECT_4) || (obj80->obj.id == OBJECT_5) || - (obj80->obj.id == OBJECT_47) || (obj80->obj.id == OBJECT_117) || - (obj80->obj.id == OBJECT_120) || (obj80->obj.id == OBJECT_124) || - (obj80->obj.id == OBJECT_126) || (obj80->obj.id == OBJECT_2) || (obj80->obj.id == OBJECT_3)) { + 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.z = obj80->obj.pos.z - player->unk_138; if (sqrtf(SQ(spC8.x) + SQ(spC8.z)) < 100.0f) { @@ -1686,15 +1687,15 @@ void func_800A8BA4(Player* player) { 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->unk_1C.damage); + func_800A6CD0(player, temp_v0, obj80->info.damage); } } } else { padB0 = obj80->obj.rot.y; - if ((ObjectFunc) func_80066EA8 == obj80->unk_1C.action) { + if ((ObjectFunc) func_80066EA8 == obj80->info.action) { padB0 = 0.0f; } - temp_v0 = func_800A7974(player, obj80->unk_1C.hitbox, &sp98, obj80->obj.pos.x, obj80->obj.pos.y, + temp_v0 = func_800A7974(player, obj80->info.hitbox, &sp98, obj80->obj.pos.x, obj80->obj.pos.y, obj80->obj.pos.z, obj80->obj.rot.x, padB0, obj80->obj.rot.z, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { @@ -1713,7 +1714,7 @@ void func_800A8BA4(Player* player) { if (player->unk_22C >= 4) { player->unk_22C = 4; } - } else if (obj80->obj.id == OBJECT_54) { + } 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); } @@ -1722,9 +1723,9 @@ void func_800A8BA4(Player* player) { player->unk_22C = 4; } } else { - func_800A6CD0(player, temp_v0, obj80->unk_1C.damage); - if ((obj80->obj.id == OBJECT_48) || (obj80->obj.id == OBJECT_55) || - (obj80->obj.id == OBJECT_49)) { + func_800A6CD0(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); spC8.x = -(player->unk_0D0 + player->unk_110) * 0.7f; spC8.y = 0.0f; @@ -1735,7 +1736,7 @@ void func_800A8BA4(Player* player) { player->unk_0D8.y = spBC.y; player->unk_074 = player->unk_08C.y; player->unk_498 = 5; - } else if (obj80->obj.id == OBJECT_50) { + } else if (obj80->obj.id == OBJ_80_50) { if (player->unk_074 < obj80->obj.pos.x) { player->unk_0D8.x = -30.0f; player->unk_0E8 = 45.0f; @@ -1746,7 +1747,7 @@ void func_800A8BA4(Player* player) { player->unk_0D8.y = 0.0f; player->unk_074 = player->unk_08C.y; player->unk_498 = 5; - } else if (obj80->obj.id == OBJECT_131) { + } 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); Matrix_MultVec3f(gCalcMatrix, &D_800D3040[sp98 - 1], &spBC); @@ -1766,20 +1767,20 @@ void func_800A8BA4(Player* player) { } for (i = 0, obj408 = gObjects408; i < ARRAY_COUNT(gObjects408); i++, obj408++) { if (obj408->obj.status == 2) { - if ((obj408->obj.id == OBJECT_312) || (obj408->obj.id == OBJECT_308) || - (obj408->obj.id == OBJECT_313) || (obj408->obj.id == OBJECT_309)) { + if ((obj408->obj.id == OBJ_408_312) || (obj408->obj.id == OBJ_408_308) || + (obj408->obj.id == OBJ_408_313) || (obj408->obj.id == OBJ_408_309)) { 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->unk_01C.damage); + func_800A6CD0(player, temp_v0, obj408->info.damage); break; } - } else if (obj408->obj.id == OBJECT_310) { + } 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 (sqrtf(VEC3F_SQ(spfD4)) < 1500.0f) { - func_800A6CD0(player, 0, obj408->unk_01C.damage); + func_800A6CD0(player, 0, obj408->info.damage); player->unk_110 = 0.0f; player->unk_498 = 5; player->unk_0D8.y = 30.0f; @@ -1796,15 +1797,15 @@ void func_800A8BA4(Player* player) { } } } else { - if (obj408->obj.id == OBJECT_316) { + 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.z = fabsf(obj408->obj.pos.z - player->unk_138); if (sqrtf(VEC3F_SQ(spfD4)) < 2700.0f) { - func_800A6CD0(player, 3, obj408->unk_01C.damage); + func_800A6CD0(player, 3, obj408->info.damage); } } - temp_v0 = func_800A7974(player, obj408->unk_01C.hitbox, &sp98, obj408->obj.pos.x, obj408->obj.pos.y, + temp_v0 = func_800A7974(player, obj408->info.hitbox, &sp98, obj408->obj.pos.x, obj408->obj.pos.y, obj408->obj.pos.z, obj408->obj.rot.x, obj408->obj.rot.y, obj408->obj.rot.z, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { @@ -1817,15 +1818,15 @@ void func_800A8BA4(Player* player) { player->unk_22C = 4; } } else { - if ((obj408->obj.id == OBJECT_320) && (obj408->unk_056 != 0) && (sp98 == 5)) { + if ((obj408->obj.id == OBJ_408_320) && (obj408->unk_056 != 0) && (sp98 == 5)) { break; } - func_800A6CD0(player, obj408->obj.id, obj408->unk_01C.damage); - if ((obj408->obj.id == OBJECT_303) && ((obj408->unk_04E == 2) || (obj408->unk_04E == 3)) && + func_800A6CD0(player, obj408->obj.id, 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; } - if ((obj408->obj.id == OBJECT_320) && (sp98 < 5)) { + if ((obj408->obj.id == OBJ_408_320) && (sp98 < 5)) { player->unk_0D8.x = obj408->unk_110; player->unk_0D8.y = obj408->unk_114; } @@ -1836,35 +1837,36 @@ 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.id == OBJECT_180) { + 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->unk_01C.damage); + func_800A6CD0(player, temp_v0, obj2F4->info.damage); } - } else if (obj2F4->obj.id == OBJECT_200) { + } else if (obj2F4->obj.id == OBJ_2F4_200) { if (obj2F4->unk_0B4 == 42) { - temp_v0 = func_800A8304(player, 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); + temp_v0 = + 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->unk_01C.damage); + func_800A6CD0(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.z = fabsf(obj2F4->obj.pos.z - player->unk_138); if (sqrtf(VEC3F_SQ(spfD4)) < 900.0f) { - func_800A6CD0(player, 0, obj2F4->unk_01C.damage); + func_800A6CD0(player, 0, obj2F4->info.damage); obj2F4->unk_0D0 = 3; } } else { temp_v0 = - func_800A7974(player, obj2F4->unk_01C.hitbox, &sp98, obj2F4->obj.pos.x, obj2F4->obj.pos.y, + func_800A7974(player, obj2F4->info.hitbox, &sp98, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z, obj2F4->unk_2E8.x, obj2F4->unk_2E8.y, obj2F4->unk_2E8.z + obj2F4->unk_0F4.z); if (temp_v0 != 0) { if ((temp_v0 < 0) && (obj2F4->unk_0B4 == 38)) { - obj2F4->unk_01C.hitbox = SEGMENTED_TO_VIRTUAL(D_6032328); + obj2F4->info.hitbox = SEGMENTED_TO_VIRTUAL(D_6032328); if (D_80177E80 >= 0) { obj2F4->unk_046 = 2; D_80177E80++; @@ -1885,26 +1887,26 @@ void func_800A8BA4(Player* player) { player->unk_22C = 4; } } else { - func_800A6CD0(player, temp_v0, obj2F4->unk_01C.damage); + func_800A6CD0(player, temp_v0, obj2F4->info.damage); obj2F4->unk_0D0 = 3; obj2F4->unk_0D4 = player->unk_1C4 + 1; } } } } else if ((obj2F4->obj.id >= 0xCD) && (obj2F4->obj.id < 0xD6)) { - temp_v0 = func_800A7974(player, obj2F4->unk_01C.hitbox, &sp98, obj2F4->unk_178 + obj2F4->obj.pos.x, + 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->unk_01C.damage != 0) { - func_800A6CD0(player, temp_v0, obj2F4->unk_01C.damage); + if (obj2F4->info.damage != 0) { + func_800A6CD0(player, temp_v0, obj2F4->info.damage); } else { obj2F4->unk_0D0 = -1; } } } else { - temp_v0 = func_800A7974(player, obj2F4->unk_01C.hitbox, &sp98, obj2F4->obj.pos.x, obj2F4->obj.pos.y, + temp_v0 = func_800A7974(player, obj2F4->info.hitbox, &sp98, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, obj2F4->obj.rot.x, obj2F4->obj.rot.y, obj2F4->obj.rot.z, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { @@ -1918,12 +1920,12 @@ void func_800A8BA4(Player* player) { } } else { obj2F4->unk_0D0 = 3; - if (obj2F4->obj.id == OBJECT_190) { + if (obj2F4->obj.id == OBJ_2F4_190) { obj2F4->unk_0D0 = -1; } - if (obj2F4->unk_01C.damage != 0) { - func_800A6CD0(player, temp_v0, obj2F4->unk_01C.damage); - if (obj2F4->obj.id == OBJECT_225) { + if (obj2F4->info.damage != 0) { + func_800A6CD0(player, temp_v0, obj2F4->info.damage); + if (obj2F4->obj.id == OBJ_2F4_225) { player->unk_0D8.y = 0.0f; } } else { @@ -1937,16 +1939,16 @@ void func_800A8BA4(Player* player) { for (i = 0, obj4C = gObjects4C; i < ARRAY_COUNT(gObjects4C); i++, obj4C++) { if (obj4C->obj.status == 2) { if ((player->unk_138 - 200.0f) < obj4C->obj.pos.z) { - temp_v0 = func_800A7974(player, obj4C->unk_1C.hitbox, &sp98, obj4C->obj.pos.x, obj4C->obj.pos.y, + temp_v0 = func_800A7974(player, obj4C->info.hitbox, &sp98, obj4C->obj.pos.x, obj4C->obj.pos.y, obj4C->obj.pos.z, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); if (temp_v0 != 0) { - if ((obj4C->obj.id == OBJECT_163) || (obj4C->obj.id == OBJECT_161) || - (obj4C->obj.id == OBJECT_169) || (obj4C->obj.id == OBJECT_162)) { + if ((obj4C->obj.id == OBJ_4C_163) || (obj4C->obj.id == OBJ_4C_161) || + (obj4C->obj.id == OBJ_4C_169) || (obj4C->obj.id == OBJ_4C_162)) { obj4C->unk_46 = 1; player->unk_1F4 = 6; player->unk_21C = 0; } else { - func_800A6CD0(player, temp_v0, obj4C->unk_1C.damage); + func_800A6CD0(player, temp_v0, obj4C->info.damage); } } } @@ -2006,7 +2008,7 @@ void func_800A8BA4(Player* player) { func_8007B228(player->unk_2EC.x, sp94, player->unk_2EC.z, 1.0f); } else { if (player->unk_1F4 == 0) { - func_800A6CD0(player, 4, 0xA); + func_800A6CD0(player, 4, 10); } player->unk_0D8.y = 30.0f; player->unk_0E4 = (player->unk_0D0 + player->unk_110) * 0.8f; @@ -2052,15 +2054,15 @@ void func_800AA800(Player* player) { s32 sp144; Object_58* obj58; Object_80* obj80; - s32 temp_ft3; + s32 count; s32 var_s0; - s32 var_s6_2; + s32 i; f32 tempx; f32 tempy; f32 tempz; f32 sp120; - f32* temp_s0; - s32 pad1; + f32* hitboxData; + Hitbox* hitbox; f32 var_fs0; f32 var_fs1; f32 tempx2; @@ -2077,7 +2079,7 @@ void func_800AA800(Player* player) { Vec3f spB0; f32 spA8[2]; Vec3f sp9C = D_800D30E8; - s32 pad2; + Vec3f* rot; s32 pad3; s32 pad4; @@ -2103,8 +2105,8 @@ void func_800AA800(Player* player) { for (sp144 = 0; sp144 < 200; sp144++) { obj58 = &gObjects58[sp144]; if ((obj58->obj.status == 2) && - ((obj58->obj.id == OBJECT_143) || (obj58->obj.id == OBJECT_140) || - (obj58->obj.id == OBJECT_141)) && + ((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.z - player->unk_138) < 2000.0f)) { spC8.x = obj58->obj.pos.x; @@ -2114,9 +2116,9 @@ void func_800AA800(Player* player) { spD4.y = D_80177940; spD4.z = player->unk_138; var_s0 = 4; - if (obj58->obj.id == OBJECT_141) { + if (obj58->obj.id == OBJ_80_141) { var_s0 = 6; - } else if (obj58->obj.id == OBJECT_143) { + } else if (obj58->obj.id == OBJ_80_143) { var_s0 = 17; } if (func_800A3690(&spD4, &spC8, var_s0, &spBC) != 0) { @@ -2129,13 +2131,13 @@ void func_800AA800(Player* player) { } } } else { - if ((D_80177880 == 1) && (gLevelType == 0)) { + if ((gAllRangeMode == 1) && (gLevelType == LEVELTYPE_GROUND)) { player->unk_064 = player->unk_074; player->unk_06C = player->unk_138; for (sp144 = 0, obj58 = gObjects58; sp144 < 200; sp144++, obj58++) { if ((obj58->obj.status == 2) && - ((obj58->obj.id == OBJECT_150) || (obj58->obj.id == OBJECT_149) || - (obj58->obj.id == OBJECT_148) || (obj58->obj.id == OBJECT_1) || (obj58->obj.id == OBJECT_3)) && + ((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.z - player->unk_138) < 2500.0f)) { tempx = obj58->obj.pos.x; @@ -2154,8 +2156,8 @@ void func_800AA800(Player* player) { spC8.y = tempy; spC8.z = tempz; - if ((obj58->obj.id == OBJECT_149) || (obj58->obj.id == OBJECT_150)) { - if (obj58->obj.id == OBJECT_149) { + if ((obj58->obj.id == OBJ_80_149) || (obj58->obj.id == OBJ_80_150)) { + if (obj58->obj.id == OBJ_80_149) { var_s0 = 5; } else { var_s0 = 6; @@ -2168,7 +2170,7 @@ void func_800AA800(Player* player) { } } else { var_s0 = 0; - if (obj58->obj.id == OBJECT_3) { + if (obj58->obj.id == OBJ_80_3) { var_s0 = 3; } if (func_800A3690(&spD4, &spC8, var_s0, &spBC) != 0) { @@ -2181,16 +2183,16 @@ void func_800AA800(Player* player) { } } } - for (sp144 = 0, obj80 = gObjects80; (sp144 < 50) && (D_80177880 == 0) && (gCurrentLevel != 6); - sp144++, obj80++) { + for (sp144 = 0, obj80 = gObjects80; + (sp144 < 50) && (gAllRangeMode == 0) && (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)) { tempx = obj80->obj.pos.x; tempy = obj80->obj.pos.y; tempz = obj80->obj.pos.z; sp120 = obj80->obj.rot.y; - if ((obj80->obj.id == OBJECT_3) || (obj80->obj.id == OBJECT_2) || (obj80->obj.id == OBJECT_47) || - (obj80->obj.id == OBJECT_4) || (obj80->obj.id == OBJECT_5)) { + if ((obj80->obj.id == OBJ_80_3) || (obj80->obj.id == OBJ_80_2) || (obj80->obj.id == OBJ_80_47) || + (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; @@ -2209,14 +2211,14 @@ void func_800AA800(Player* player) { var_s0 = 0; - if (obj80->obj.id == OBJECT_47) { + if (obj80->obj.id == OBJ_80_47) { var_s0 = 7; } - if (obj80->obj.id == OBJECT_2) { + if (obj80->obj.id == OBJ_80_2) { var_s0 = 2; - } else if (obj80->obj.id == OBJECT_3) { + } else if (obj80->obj.id == OBJ_80_3) { var_s0 = 3; - } else if ((obj80->obj.id == OBJECT_4) || (obj80->obj.id == OBJECT_5)) { + } else if ((obj80->obj.id == OBJ_80_4) || (obj80->obj.id == OBJ_80_5)) { var_s0 = 1; } if (func_800A3690(&spD4, &spC8, var_s0, &spBC) != 0) { @@ -2229,31 +2231,31 @@ void func_800AA800(Player* player) { } } } else { - temp_s0 = obj80->unk_1C.hitbox; - temp_ft3 = (s32) *temp_s0; - if (temp_ft3 != 0) { - if (obj80->unk_1C.action == (ObjectFunc) func_80066EA8) { + hitboxData = obj80->info.hitbox; + count = (s32) *hitboxData; + if (count != 0) { + if (obj80->info.action == (ObjectFunc) func_80066EA8) { sp120 = 0.0f; } - - for (var_s6_2 = 0, temp_s0++; var_s6_2 < temp_ft3; var_s6_2++, temp_s0 += 6) { - if (temp_s0[0] >= 300000.0f) { + hitboxData++; + for (i = 0; i < count; i++, hitboxData += 6) { + if (*hitboxData >= 300000.0f) { break; } - if (temp_s0[0] == 200000.0f) { - sp100 = temp_s0[1]; - spFC = temp_s0[2]; - spF8 = temp_s0[3]; - temp_s0 += 4; + if (*hitboxData == 200000.0f) { + sp100 = hitboxData[1]; + spFC = hitboxData[2]; + spF8 = hitboxData[3]; + hitboxData += 4; Matrix_RotateZ(gCalcMatrix, -spF8 * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, -sp100 * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -spFC * M_DTOR, 1); Matrix_RotateY(gCalcMatrix, -sp120 * M_DTOR, 1); - } else { Matrix_RotateY(gCalcMatrix, -sp120 * M_DTOR, 0); } + 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; @@ -2265,7 +2267,8 @@ void func_800AA800(Player* player) { if (spEC.y + tempy <= D_80177940) { break; } - if (func_800A78C4(temp_s0, tempx, tempy, tempz, tempx2, tempy2, tempz2) != 0) { + + if (func_800A78C4(hitbox, tempx, tempy, tempz, tempx2, tempy2, tempz2) != 0) { if (D_80177940 < player->unk_068) { player->unk_068 = spEC.y + 15.0f + tempy; player->unk_06C = spEC.z + 10.0f + tempz; @@ -2361,7 +2364,7 @@ void func_800AB334(void) { break; case LEVEL_TITANIA: func_E6A810_80188F30(); - gTeamHealth[2] = -2; + gTeamShields[2] = -2; break; case LEVEL_MACBETH: func_E6A810_80199920(); @@ -2399,10 +2402,10 @@ void func_800AB334(void) { } switch (gCurrentLevel) { - case 7: + case LEVEL_SOLAR: mesh = SEGMENTED_TO_VIRTUAL(D_6001C50); break; - case 8: + case LEVEL_ZONESS: mesh = SEGMENTED_TO_VIRTUAL(D_6009ED0); break; } @@ -2419,10 +2422,10 @@ void func_800AB334(void) { } switch (gCurrentLevel) { - case 7: + case LEVEL_SOLAR: mesh = SEGMENTED_TO_VIRTUAL(D_6004500); break; - case 8: + case LEVEL_ZONESS: mesh = SEGMENTED_TO_VIRTUAL(D_600C780); break; } @@ -2476,7 +2479,7 @@ void func_800ABAB4(void) { D_80161A54 = 40.0f; for (i = 0; i < 4; i++) { - gRumbleStatus[i] = 0; + gControllerRumble[i] = 0; } if (gExpertMode != 0) { @@ -2502,18 +2505,18 @@ void func_800ABAB4(void) { D_80177A98 = D_80177AB0 = 1; D_80177AC8 = D_800D2F54 = 0; D_800CA230 = D_800D2F58 = 0.0f; - D_80177880 = 0; + gAllRangeMode = 0; D_80177CE8 = D_8015F968 = 0.0f; - D_800D1970 = D_801778E8 = D_80178300 = D_80177E84 = 0; + D_800D1970 = gVersusMode = D_80178300 = D_80177E84 = 0; if (gCurrentLevel >= LEVEL_FORTUNA) { - D_80177880 = 1; + gAllRangeMode = 1; if (gCurrentLevel == LEVEL_VERSUS) { - D_801778E8 = 1; + gVersusMode = 1; func_800AB964(); } } if ((gCurrentLevel == LEVEL_VENOM_2) && (D_8017827C == 1)) { - D_80177880 = 1; + gAllRangeMode = 1; } D_80177E7C = 0; func_800A594C(); @@ -2525,7 +2528,7 @@ void func_800ABAB4(void) { } D_80177CC0 = -25000.0f; D_80177950 = 1.0f; - if ((gCurrentLevel == 19) && (D_8017827C == 2)) { + if ((gCurrentLevel == LEVEL_VENOM_SW) && (D_8017827C == 2)) { D_80178348 = D_80178350 = D_80178354 = 255; } else { D_80178348 = D_80178350 = D_80178354 = 0; @@ -2568,7 +2571,7 @@ void func_800ABAB4(void) { gCamCount = 4; } for (i = 1; i < 6; i++) { - gTeamHealth[i] = gSavedTeamHealth[i]; + gTeamShields[i] = gSavedTeamShields[i]; } gPlayer = Memory_Allocate(gCamCount * sizeof(Player)); func_800AB2AC(); @@ -2578,7 +2581,7 @@ void func_800ABAB4(void) { D_80177BD0[i] = 0; D_80177C30[i] = 0; } - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { gObjects58 = Memory_Allocate(200 * sizeof(Object_58)); for (i = 0; i < 200; i++) { gObjects58[i].obj.status = 0; @@ -2630,17 +2633,17 @@ void func_800ABAB4(void) { func_800AB334(); } -void func_800AC290(Player* player, Object_70* obj70, f32 arg2, f32 arg3, s32 arg4, f32 arg5) { +void func_800AC290(Player* player, PlayerShot* shot, f32 arg2, f32 arg3, s32 objId, f32 arg5) { Vec3f sp44; Vec3f sp38; Vec3f sp2C; - Object_70_Initialize(obj70); + 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_Translate(gCalcMatrix, player->unk_084, player->unk_080, 0.0f, 1); - if ((D_801778E8 != 0) && (arg4 <= OBJECT_1)) { + if ((gVersusMode) && (objId <= PLAYERSHOT_1)) { arg5 *= 0.5f; } sp44.x = 0.0f; @@ -2651,57 +2654,57 @@ void func_800AC290(Player* player, Object_70* obj70, f32 arg2, f32 arg3, s32 arg sp44.y = -5.0f + arg3; sp44.z = 0.0f; Matrix_MultVec3f(gCalcMatrix, &sp44, &sp2C); - obj70->obj.status = 1; - obj70->unk_20.x = sp38.x; - obj70->unk_20.y = sp38.y; - obj70->unk_20.z = sp38.z; - obj70->unk_60 = 0; - obj70->obj.id = arg4; + shot->obj.status = 1; + shot->unk_20.x = sp38.x; + shot->unk_20.y = sp38.y; + shot->unk_20.z = sp38.z; + shot->unk_60 = 0; + shot->obj.id = objId; - if (D_801778E8 == 0) { - obj70->unk_64 = 35; + if (!gVersusMode) { + shot->unk_64 = 35; } else { - obj70->unk_64 = 37; + shot->unk_64 = 37; } - if (obj70->obj.id == OBJECT_4) { - obj70->obj.pos.x = player->unk_074 + sp2C.x; - obj70->obj.pos.y = player->unk_078 + sp2C.y; - obj70->obj.pos.z = player->unk_138 + sp2C.z; - obj70->unk_64 = 38; + 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.z = player->unk_138 + sp2C.z; + shot->unk_64 = 38; } else { - obj70->obj.pos.x = player->unk_074 + sp2C.x + (sp38.x * 1.2); - obj70->obj.pos.y = player->unk_078 + sp2C.y + (sp38.y * 1.2); - obj70->obj.pos.z = player->unk_138 + sp2C.z + (sp38.z * 1.2f); + 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.z = player->unk_138 + sp2C.z + (sp38.z * 1.2f); } - obj70->obj.rot.x = player->unk_120 + player->unk_0E4 + player->unk_4D8; - obj70->obj.rot.y = player->unk_0E8 + player->unk_114; - obj70->obj.rot.z = player->unk_0F8; - if (arg4 == 8) { + shot->obj.rot.x = player->unk_120 + player->unk_0E4 + player->unk_4D8; + shot->obj.rot.y = player->unk_0E8 + player->unk_114; + shot->obj.rot.z = player->unk_0F8; + if (objId == PLAYERSHOT_8) { if (gCurrentLevel == LEVEL_AQUAS) { - obj70->unk_58 = Rand_ZeroOne() * 360.0f; - obj70->unk_60 = Rand_ZeroOne() * 360.0f; - obj70->unk_2C = player->unk_0E4 + player->unk_4D8; - obj70->unk_30 = player->unk_0E8; - obj70->unk_34 = player->unk_0F8; - obj70->unk_5C = D_80178494; + shot->unk_58 = Rand_ZeroOne() * 360.0f; + shot->unk_60 = Rand_ZeroOne() * 360.0f; + shot->unk_2C = player->unk_0E4 + player->unk_4D8; + shot->unk_30 = player->unk_0E8; + shot->unk_34 = player->unk_0F8; + shot->unk_5C = D_80178494; } else { - obj70->unk_30 = player->unk_0E8 + player->unk_114; - obj70->unk_2C = player->unk_0E4 + player->unk_4D8; + shot->unk_30 = player->unk_0E8 + player->unk_114; + shot->unk_2C = player->unk_0E4 + player->unk_4D8; if (arg5 <= 65.0f) { - obj70->unk_5C = 1; + shot->unk_5C = 1; } - obj70->unk_64 = 30; + shot->unk_64 = 30; } } - obj70->unk_68 = player->unk_1C4; + shot->unk_68 = player->unk_1C4; } -void func_800AC650(Player* player, Object_70* obj70, s32 objId, f32 arg3) { +void func_800AC650(Player* player, PlayerShot* shot, s32 objId, f32 arg3) { Vec3f sp54; Vec3f sp48; Vec3f sp3C; - Object_70_Initialize(obj70); + 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); @@ -2728,38 +2731,38 @@ void func_800AC650(Player* player, Object_70* obj70, s32 objId, f32 arg3) { sp54.y = 7; sp54.z = 0; Matrix_MultVec3f(gCalcMatrix, &sp54, &sp3C); - obj70->unk_20.x = sp48.x; - obj70->unk_20.y = sp48.y; - obj70->unk_20.z = sp48.z; - obj70->obj.pos.x = player->unk_074 + sp3C.x; - obj70->obj.pos.y = player->unk_078 + sp3C.y; - obj70->obj.pos.z = player->unk_138 + sp3C.z; - obj70->obj.status = 1; - obj70->unk_2C = -player->unk_17C; - obj70->unk_30 = -player->unk_180; - obj70->unk_34 = player->unk_12C; - obj70->obj.rot.x = player->unk_0E4 + player->unk_120; - obj70->obj.rot.y = player->unk_0E8 + player->unk_114; - obj70->obj.rot.z = player->unk_0EC; - obj70->unk_64 = 40; - obj70->obj.id = objId; + 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.z = player->unk_138 + sp3C.z; + shot->obj.status = 1; + shot->unk_2C = -player->unk_17C; + shot->unk_30 = -player->unk_180; + shot->unk_34 = player->unk_12C; + shot->obj.rot.x = player->unk_0E4 + player->unk_120; + shot->obj.rot.y = player->unk_0E8 + player->unk_114; + shot->obj.rot.z = player->unk_0EC; + shot->unk_64 = 40; + shot->obj.id = objId; - obj70->unk_68 = player->unk_1C4; - if (objId == 8) { + shot->unk_68 = player->unk_1C4; + if (objId == PLAYERSHOT_8) { if (arg3 <= 65.0f) { - obj70->unk_5C = 1; + shot->unk_5C = 1; } - obj70->unk_64 = 30; - obj70->unk_30 = player->unk_0E8 + player->unk_114; + shot->unk_64 = 30; + shot->unk_30 = player->unk_0E8 + player->unk_114; } } void func_800ACA40(Player* player) { s32 i; - for (i = 0; i < ARRAY_COUNT(gObjects70) - 1; i++) { - if (gObjects70[i].obj.status == 0) { - func_800AC650(player, &gObjects70[i], 5, 100.0f); + 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); player->unk_1A0 = 2; break; @@ -2776,9 +2779,9 @@ void func_800ACABC(Player* player) { } switch (laser) { case 0: - for (i = 0; i < ARRAY_COUNT(gObjects70) - 1; i++) { - if (gObjects70[i].obj.status == 0) { - func_800AC290(player, &gObjects70[i], 0.0f, 0.0f, 0, 400.0f / 3.0f); + 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; break; @@ -2787,9 +2790,9 @@ void func_800ACABC(Player* player) { break; case 1: case 2: - for (i = 0; i < ARRAY_COUNT(gObjects70) - 1; i++) { - if (gObjects70[i].obj.status == 0) { - func_800AC290(player, &gObjects70[i], 0.0f, -10.0f, 1, 400.0f / 3.0f); + for (i = 0; i < ARRAY_COUNT(gPlayerShots) - 1; i++) { + 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; @@ -2805,40 +2808,40 @@ void func_800ACABC(Player* player) { } void func_800ACC7C(Player* player) { - if ((gBombCount[player->unk_1C4] != 0) && (D_80177948[player->unk_1C4] & gChngInputPtr->button) && - (gObjects70[ARRAY_COUNT(gObjects70) - 1].obj.status == 0)) { - if (D_801778E8 != 0) { + if ((gBombCount[player->unk_1C4] != 0) && (D_80177948[player->unk_1C4] & gInputPress->button) && + (gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].obj.status == 0)) { + if (gVersusMode) { gBombCount[player->unk_1C4] = 0; } else { gBombCount[player->unk_1C4]--; } if (player->unk_1CC == 0) { - func_800AC290(player, &gObjects70[ARRAY_COUNT(gObjects70) - 1], 0.0f, 0.0f, 3, 180.0f); + func_800AC290(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], 0.0f, 0.0f, PLAYERSHOT_3, 180.0f); } else if (player->unk_1CC == 1) { - func_800AC650(player, &gObjects70[ARRAY_COUNT(gObjects70) - 1], 3, 180.0f); + func_800AC650(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], PLAYERSHOT_3, 180.0f); } else { - func_800ACDC0(player, &gObjects70[ARRAY_COUNT(gObjects70) - 1], 3); + func_800ACDC0(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], PLAYERSHOT_3); } - gObjects70[ARRAY_COUNT(gObjects70) - 1].unk_48 = 30.0f; - gObjects70[ARRAY_COUNT(gObjects70) - 1].unk_60 = 0; + 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, &gObjects70[ARRAY_COUNT(gObjects70) - 1].sfxPos); + func_8001CCDC(player->unk_1C4, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); } } -void func_800ACDC0(Player* player, Object_70* obj70, s32 objId) { +void func_800ACDC0(Player* player, PlayerShot* shot, s32 objId) { Vec3f sp5C; Vec3f sp50; Vec3f sp44; - Object_70_Initialize(obj70); + 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); sp5C.x = 0.0f; sp5C.y = 0.0f; - if (objId == OBJECT_3) { + if (objId == PLAYERSHOT_3) { sp5C.z = 100.0f; } else { sp5C.z = 150.0f; @@ -2854,29 +2857,29 @@ void func_800ACDC0(Player* player, Object_70* obj70, s32 objId) { sp5C.y = 0.0f; sp5C.z = 0; Matrix_MultVec3f(gCalcMatrix, &sp5C, &sp44); - obj70->unk_20.x = sp50.x; - obj70->unk_20.y = sp50.y; - obj70->unk_20.z = sp50.z; - obj70->obj.pos.x = player->unk_074 + sp44.x; - obj70->obj.pos.y = player->unk_078 + sp44.y; - obj70->obj.pos.z = player->unk_138 + sp44.z; + 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.z = player->unk_138 + sp44.z; - obj70->unk_44 = 1.0f; + shot->unk_44 = 1.0f; - obj70->obj.status = 1; - obj70->obj.id = objId; - obj70->unk_64 = 30; - obj70->unk_58 = 1; + shot->obj.status = 1; + shot->obj.id = objId; + shot->unk_64 = 30; + shot->unk_58 = 1; - obj70->unk_68 = player->unk_1C4; + shot->unk_68 = player->unk_1C4; } void func_800AD094(Player* player) { s32 i; - for (i = 0; i < ARRAY_COUNT(gObjects70); i++) { - if (gObjects70[i].obj.status == 0) { - func_800ACDC0(player, &gObjects70[i], 6); + 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; player->unk_180 = 10.0f; @@ -2894,7 +2897,7 @@ s32 func_800AD118(s32 arg0) { return 0; } } - if (D_801778E8 != 0) { + 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; @@ -2904,11 +2907,11 @@ s32 func_800AD118(s32 arg0) { return 1; } -s32 func_800AD1F4(Player* player) { - s32 var_a2; +bool func_800AD1F4(Player* player) { + bool var_a2; s32 i; - if (gCurInputPtr->button & A_BUTTON) { + if (gInputHold->button & A_BUTTON) { D_801779C8[player->unk_1C4]++; if (D_801779C8[player->unk_1C4] > 21) { D_801779C8[player->unk_1C4] = 21; @@ -2916,18 +2919,18 @@ s32 func_800AD1F4(Player* player) { if (D_801779C8[player->unk_1C4] == 20) { func_80060F30(&player->unk_460, 0x0900302D, player->unk_1C4); } - if ((!(gCurInputPtr->button & R_TRIG) || !(gCurInputPtr->button & Z_TRIG) || (player->unk_1CC != 0) || + 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) { for (i = 0; i < 13; i++) { - if (gObjects70[i].obj.status == 0) { + if (gPlayerShots[i].obj.status == 0) { if (player->unk_1CC == 0) { - func_800AC290(player, &gObjects70[i], 0.0f, 0.0f, 4, 400.0f); + func_800AC290(player, &gPlayerShots[i], 0.0f, 0.0f, PLAYERSHOT_4, 400.0f); } else { - func_800AC650(player, &gObjects70[i], 4, 400.0f); + func_800AC650(player, &gPlayerShots[i], PLAYERSHOT_4, 400.0f); } - return 1; + return true; } } } @@ -2938,78 +2941,81 @@ s32 func_800AD1F4(Player* player) { } } - if (gChngInputPtr->button & A_BUTTON) { + 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 ((gObjects70[14 - player->unk_1C4].obj.status == 0) || - (gObjects70[14 - player->unk_1C4].obj.id != 8) || - ((gObjects70[14 - player->unk_1C4].obj.id == 8) && - (gObjects70[14 - player->unk_1C4].unk_60 != 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, &gObjects70[14 - player->unk_1C4], 0.0f, 0.0f, 8, 70.0f); + func_800AC290(player, &gPlayerShots[14 - player->unk_1C4], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); } else { - func_800AC650(player, &gObjects70[14 - player->unk_1C4], 8, 70.0f); + func_800AC650(player, &gPlayerShots[14 - player->unk_1C4], PLAYERSHOT_8, 70.0f); } func_80060F30(&player->unk_460, 0x09007029, player->unk_1C4); D_80177BD0[player->unk_1C4] = 5; - return 1; + return true; } break; } } if (D_801779C8[player->unk_1C4] > 10) { - if ((gObjects70[14 - player->unk_1C4].obj.status == 0) || (gObjects70[14 - player->unk_1C4].obj.id != 8) || - ((gObjects70[14 - player->unk_1C4].obj.id == 8) && (gObjects70[14 - player->unk_1C4].unk_44 > 1.0f))) { + 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, &gObjects70[14 - player->unk_1C4], 0.0f, 0.0f, 8, 70.0f); + func_800AC290(player, &gPlayerShots[14 - player->unk_1C4], 0.0f, 0.0f, PLAYERSHOT_8, 70.0f); } else { - func_800AC650(player, &gObjects70[14 - player->unk_1C4], 8, 70.0f); + func_800AC650(player, &gPlayerShots[14 - player->unk_1C4], 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; - return 1; + return true; } } D_801779C8[player->unk_1C4] = 0; } - if (gChngInputPtr->button & B_BUTTON) { - var_a2 = 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)) { - var_a2 = 1; + var_a2 = true; break; } } for (i = 0; i < gCamCount; i++) { if (D_80177B00[i][player->unk_1C4] != 0) { - var_a2 = 1; + var_a2 = true; break; } } if (var_a2 != 0) { - if ((gBombCount[player->unk_1C4] != 0) && (gObjects70[ARRAY_COUNT(gObjects70) - 1].obj.status == 0)) { + if ((gBombCount[player->unk_1C4] != 0) && (gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].obj.status == 0)) { gBombCount[player->unk_1C4]--; if (player->unk_1CC == 0) { - func_800AC290(player, &gObjects70[ARRAY_COUNT(gObjects70) - 1], 0.0f, 0.0f, 8, 60.0f); + func_800AC290(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], 0.0f, 0.0f, PLAYERSHOT_8, + 60.0f); } else { - func_800AC650(player, &gObjects70[ARRAY_COUNT(gObjects70) - 1], 8, 60.0f); + func_800AC650(player, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1], PLAYERSHOT_8, 60.0f); } - gObjects70[ARRAY_COUNT(gObjects70) - 1].unk_48 = 30.0f; - gObjects70[ARRAY_COUNT(gObjects70) - 1].unk_60 = 0; + 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, &gObjects70[ARRAY_COUNT(gObjects70) - 1].sfxPos); - return 1; + func_8001CCDC(player->unk_1C4, &gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxPos); + return true; } } } - return 0; + return false; } void func_800AD7F0(Player* player) { switch (player->unk_1CC) { /* irregular */ case 0: - if ((player->wings.rightState < 2) || (player->wings.leftState < 2)) { + if ((player->wings.rightState <= WINGSTATE_BROKEN) || (player->wings.leftState <= WINGSTATE_BROKEN)) { gLaserStrength[player->unk_1C4] = 0; } if (func_800AD1F4(player) == 0) { @@ -3018,13 +3024,13 @@ void func_800AD7F0(Player* player) { } else { Math_SmoothStepToF(&player->wings.unk_14, 0.0f, 1.0f, 0.5f, 0.0f); } - if (D_80177938[player->unk_1C4] & gChngInputPtr->button) { + if (D_80177938[player->unk_1C4] & gInputPress->button) { func_800ACABC(player); player->unk_244 = 8; } if (player->unk_244 != 0) { player->unk_244--; - if ((D_80177938[player->unk_1C4] & gCurInputPtr->button) && !(player->unk_244 & 3)) { + if ((D_80177938[player->unk_1C4] & gInputHold->button) && !(player->unk_244 & 3)) { func_800ACABC(player); } } @@ -3033,17 +3039,17 @@ void func_800AD7F0(Player* player) { break; case 1: if (func_800AD1F4(player) == 0) { - if (D_80177938[player->unk_1C4] & gChngInputPtr->button) { + if (D_80177938[player->unk_1C4] & gInputPress->button) { func_800ACA40(player); } func_800ACC7C(player); } break; case 3: - if (gChngInputPtr->button & A_BUTTON) { + if (gInputPress->button & A_BUTTON) { player->unk_244 = 0; } - if (gCurInputPtr->button & A_BUTTON) { + if (gInputHold->button & A_BUTTON) { if (player->unk_244 == 0) { func_800AD094(player); } @@ -3062,13 +3068,13 @@ void func_800ADA28(Player* player) { f32 sp38; sp3C = 0.0f; - if ((player->wings.rightState < 2) && (player->wings.leftState == 2)) { + if ((player->wings.rightState <= WINGSTATE_BROKEN) && (player->wings.leftState == WINGSTATE_INTACT)) { sp3C = -17.0f; - } else if ((player->wings.leftState < 2) && (player->wings.rightState == 2)) { + } else if ((player->wings.leftState <= WINGSTATE_BROKEN) && (player->wings.rightState == WINGSTATE_INTACT)) { sp3C = 17.0f; } sp38 = 0.1f; - if ((gCurInputPtr->button & Z_TRIG) && !(gCurInputPtr->button & R_TRIG)) { + if ((gInputHold->button & Z_TRIG) && !(gInputHold->button & R_TRIG)) { sp3C = 90.0f; sp38 = 0.2f; if (player->unk_12C < 70.0f) { @@ -3082,7 +3088,7 @@ void func_800ADA28(Player* player) { } } - if ((gCurInputPtr->button & R_TRIG) && !(gCurInputPtr->button & Z_TRIG)) { + if ((gInputHold->button & R_TRIG) && !(gInputHold->button & Z_TRIG)) { sp3C = -90.0f; sp38 = 0.2f; if (player->unk_12C > -70.0f) { @@ -3096,7 +3102,7 @@ void func_800ADA28(Player* player) { } } Math_SmoothStepToF(&player->unk_12C, sp3C, sp38, 10.0f, 0.f); - if (gChngInputPtr->button & Z_TRIG) { + if (gInputPress->button & Z_TRIG) { player->unk_48C = 1; if (player->unk_1E0 != 0) { player->unk_1DC = 1; @@ -3107,7 +3113,7 @@ void func_800ADA28(Player* player) { player->unk_1E0 = 10; } } - if (gChngInputPtr->button & R_TRIG) { + if (gInputPress->button & R_TRIG) { player->unk_48C = 1; if (player->unk_1E4 != 0) { player->unk_1DC = 1; @@ -3123,7 +3129,7 @@ void func_800ADA28(Player* player) { 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 (gChngInputPtr->button & Z_TRIG) { + if (gInputPress->button & Z_TRIG) { if ((player->unk_1E0 != 0) && (player->unk_12C > 0.0f) && (player->unk_2BC < 10.0f)) { player->unk_1DC = 1; player->unk_1E8 = 15; @@ -3132,7 +3138,7 @@ void func_800ADD98(Player* player) { player->unk_1E0 = 10; } } - if (gChngInputPtr->button & R_TRIG) { + if (gInputPress->button & R_TRIG) { if ((player->unk_1E4 != 0) && (player->unk_12C < 0.0f) && (player->unk_2BC < 10.0f)) { player->unk_1DC = 1; player->unk_1E8 = 15; @@ -3202,36 +3208,35 @@ void func_800ADF58(Player* player) { void func_800AE278(Player* player) { f32 var_fv1; - s32 var_v0; + bool var_v0 = false; - var_v0 = 0; if (gCamCount != 1) { if (player->unk_074 > 12000.0f) { - var_v0 = 1; + var_v0 = true; player->unk_074 -= 24000.0f; player->unk_040.x -= 24000.0f; player->unk_04C.x -= 24000.0f; } if (player->unk_074 < -12000.0f) { - var_v0 = 1; + var_v0 = true; player->unk_074 += 24000.0f; player->unk_040.x += 24000.0f; player->unk_04C.x += 24000.0f; } if (player->unk_07C > 12000.0f) { - var_v0 = 1; + var_v0 = true; player->unk_07C -= 24000.0f; player->unk_040.z -= 24000.0f; player->unk_04C.z -= 24000.0f; } if (player->unk_07C < -12000.0f) { - var_v0 = 1; + var_v0 = true; player->unk_07C += 24000.0f; player->unk_040.z += 24000.0f; player->unk_04C.z += 24000.0f; } - if (var_v0 != 0) { + 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; } @@ -3361,7 +3366,7 @@ void func_800B79B0(void); void func_800B832C(void); #pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B832C.s") -void func_800B852C(s32 arg0, Object_6C* obj6C); +void func_800B852C(s32 arg0, Item* item); #pragma GLOBAL_ASM("asm/us/nonmatchings/main/fox_play/func_800B852C.s") void func_800B86A4(f32* arg0); diff --git a/src/main/fox_radio.c b/src/main/fox_radio.c index d87c3671..915cc576 100644 --- a/src/main/fox_radio.c +++ b/src/main/fox_radio.c @@ -68,7 +68,7 @@ void func_800BA808(u16* msg, s32 character) { if (character == RCID_PEPPY) { var_v1 = 3; } - if ((gTeamHealth[var_v1] <= 0) && (gTeamHealth[var_v1] != -2)) { + if ((gTeamShields[var_v1] <= 0) && (gTeamShields[var_v1] != -2)) { return; } } @@ -644,7 +644,7 @@ void func_800BB5D0(void) { if (temp_ft0 == RCID_PEPPY) { var_v1 = 3; } - if ((gTeamHealth[var_v1] <= 0) && (gFrameCount & 4) && (gTeamHealth[var_v1] != -2) && (D_801782A4 != 2) && + if ((gTeamShields[var_v1] <= 0) && (gFrameCount & 4) && (gTeamShields[var_v1] != -2) && (D_801782A4 != 2) && (D_801782A4 != 3) && (D_801782A4 != 1000)) { RCP_SetupDL(&gMasterDisp, 0x4C); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); @@ -652,7 +652,7 @@ void func_800BB5D0(void) { func_80084B94(1); } if ((D_801782A4 != 2) && (D_801782A4 != 3) && (D_801782A4 != 1000)) { - func_80086110(22.0f, 165.0f, gTeamHealth[var_v1]); + func_80086110(22.0f, 165.0f, gTeamShields[var_v1]); } } temp_ft0 = (s32) D_80177D68; diff --git a/src/main/fox_reset.c b/src/main/fox_reset.c index 32f65945..57b0c6a2 100644 --- a/src/main/fox_reset.c +++ b/src/main/fox_reset.c @@ -31,7 +31,7 @@ void Graphics_NMIWipe(void) { gStopTasks = 1; } for (i = 0; i < MAXCONTROLLERS; i++) { - gRumbleStatus[i] = 0; + gControllerRumble[i] = 0; D_80137E84[i] = 0; } } diff --git a/src/main/fox_std_lib.c b/src/main/fox_std_lib.c index d9118d7c..6a5cb6ba 100644 --- a/src/main/fox_std_lib.c +++ b/src/main/fox_std_lib.c @@ -741,7 +741,7 @@ u16* Graphics_SetupTextureRender(Gfx** gfxPtr, u8 width, u8 height) { gViewport->vp.vtrans[2] = G_MAXZ / 2; gViewport->vp.vtrans[3] = 0; gSPViewport((*gfxPtr)++, gViewport++); - gDPSetScissorFrac((*gfxPtr)++, G_SC_NON_INTERLACE, 0, 0, width * 4.0f, height * 4.0f); + gDPSetScissor((*gfxPtr)++, G_SC_NON_INTERLACE, 0, 0, width, height); gDPSetDepthImage((*gfxPtr)++, &gZBuffer); gDPSetColorImage((*gfxPtr)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, width, &gZBuffer); gDPSetFillColor((*gfxPtr)++, FILL_COLOR(GPACK_ZDZ(G_MAXFBZ, 0))); diff --git a/src/main/sf_36930.c b/src/main/sf_36930.c index 6998ba07..eed6e9a1 100644 --- a/src/main/sf_36930.c +++ b/src/main/sf_36930.c @@ -4,7 +4,7 @@ #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80035DEC.s") -#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/Object_70_Initialize.s") +#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/PlayerShot_Initialize.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_36930/func_80035E78.s") diff --git a/src/main/sf_77E40.c b/src/main/sf_77E40.c index fb738f63..6dc82837 100644 --- a/src/main/sf_77E40.c +++ b/src/main/sf_77E40.c @@ -28,7 +28,7 @@ void func_8007729C(void) { if (ent1C->timer == 0) { ent1C->hits = 0; } - if (D_80177880 == 0) { + if (gAllRangeMode == 0) { ent1C->pos.z -= D_80177D08; } else if (gPlayer[0].unk_1C8 == 3) { ent1C->pos.x += gPlayer[0].unk_0C0.x; @@ -117,7 +117,7 @@ Object_8C* func_8007783C(s32 objId) { Object_8C_Initialize(obj8C); obj8C->obj.status = 2; obj8C->obj.id = objId; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); break; } } @@ -130,7 +130,7 @@ Object_8C* func_8007783C(s32 objId) { void func_800778C4(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6, f32 arg7) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_339; + obj8C->obj.id = OBJ_8C_339; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -141,7 +141,7 @@ void func_800778C4(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, f32 obj8C->unk_4C = 0; obj8C->unk_6C = 0.5f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); obj8C->unk_44 = 0xFF; } @@ -414,7 +414,7 @@ void func_80078CE8(Object_8C* obj8C) { void func_80078D60(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_393; + obj8C->obj.id = OBJ_8C_393; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -431,7 +431,7 @@ void func_80078D60(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { obj8C->unk_4E = 2; } obj8C->unk_50 = 0xE; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_80078E50(f32 posX, f32 posY, f32 posZ, f32 arg3) { @@ -485,7 +485,7 @@ void func_8007905C(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 Object_8C_Initialize(obj8C); obj8C->obj.status = 2; - obj8C->obj.id = OBJECT_357; + obj8C->obj.id = OBJ_8C_357; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -517,7 +517,8 @@ void func_8007905C(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 obj8C->unk_54.y = sp48.y; obj8C->unk_54.z = sp48.z; } else { - obj8C->unk_54.y = (gLevelType == 0) ? (Rand_ZeroOne() * 7.0f) + 7.0f : (Rand_ZeroOne() - 0.5f) * 10.0f; + obj8C->unk_54.y = + (gLevelType == LEVELTYPE_GROUND) ? (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; } @@ -527,7 +528,7 @@ void func_8007905C(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 obj8C->unk_60.x = (Rand_ZeroOne() - 0.5f) * 30.0f; obj8C->unk_60.y = (Rand_ZeroOne() - 0.5f) * 30.0f; obj8C->unk_60.z = (Rand_ZeroOne() - 0.5f) * 30.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_800794CC(f32 posX, f32 posY, f32 posZ, f32 arg3) { @@ -590,7 +591,7 @@ void func_8007968C(Object_8C* obj8C) { 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 == 0) { + if (gLevelType == LEVELTYPE_GROUND) { obj8C->unk_54.y -= 0.5f; } if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].unk_1C8 == 7) && (D_80177A80 >= 176)) { @@ -797,7 +798,7 @@ void func_8007A3C0(Object_8C* obj8C) { 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 = OBJECT_383; + obj8C->obj.id = OBJ_8C_383; obj8C->unk_6C = arg4; obj8C->unk_50 = 50; obj8C->unk_44 = 200; @@ -805,7 +806,7 @@ void func_8007A4B8(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) { obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; func_80019218(0x2940F026, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007A568(f32 xPos, f32 yPos, f32 zPos, f32 arg3) { @@ -823,7 +824,7 @@ void func_8007A568(f32 xPos, f32 yPos, f32 zPos, f32 arg3) { void func_8007A5F8(Object_8C* obj8C, Vec3f* arg1, u32 arg2) { Object_8C_Initialize(obj8C); obj8C->obj.status = 2; - obj8C->obj.id = OBJECT_373; + obj8C->obj.id = OBJ_8C_373; obj8C->obj.pos.x = arg1->x; obj8C->obj.pos.y = arg1->y; obj8C->obj.pos.z = arg1->z; @@ -836,7 +837,7 @@ void func_8007A5F8(Object_8C* obj8C, Vec3f* arg1, u32 arg2) { } else { func_80019218(arg2, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007A6F0(Vec3f* arg0, u32 arg1) { @@ -859,7 +860,7 @@ void func_8007A748(Object_8C* obj8C) { 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->unk_1C.damage); + func_800A6CD0(player, 0, obj8C->info.damage); return 1; } else { return 0; @@ -869,7 +870,7 @@ s32 func_8007A774(Player* player, Object_8C* obj8C, f32 arg2) { void func_8007A818(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 arg5, u8 arg6, u16 arg7) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_359; + obj8C->obj.id = OBJ_8C_359; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -881,13 +882,13 @@ void func_8007A818(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 if (arg7 != 0) { obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 30.0f; } - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007A900(f32 posX, f32 posY, f32 posZ, f32 arg3, u8 arg4, u8 arg5, u16 arg6) { s32 i; - if (gCurrentLevel == 0xC) { + if (gCurrentLevel == LEVEL_TITANIA) { for (i = ARRAY_COUNT(gObjects8C) - 1; i >= 0; i--) { if (gObjects8C[i].obj.status == 0) { func_8007A818(&gObjects8C[i], posX, posY, posZ, arg3, arg4, arg5, arg6); @@ -949,7 +950,7 @@ void func_8007AB50(Object_8C* obj8C) { void func_8007AC0C(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_372; + obj8C->obj.id = OBJ_8C_372; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = D_80177940; obj8C->obj.pos.z = posZ; @@ -959,7 +960,7 @@ void func_8007AC0C(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 ar 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 - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007ACE0(f32 posX, f32 posY, f32 posZ, f32 arg3, f32 arg4, f32 arg5) { @@ -976,7 +977,7 @@ void func_8007ACE0(f32 posX, f32 posY, f32 posZ, f32 arg3, f32 arg4, f32 arg5) { void func_8007AD58(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_372; + obj8C->obj.id = OBJ_8C_372; obj8C->unk_4E = 1; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = D_80177940; @@ -985,7 +986,7 @@ void func_8007AD58(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 ar obj8C->unk_70 = arg4; obj8C->unk_6C = arg5; obj8C->obj.rot.y = arg6; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007ADF4(f32 posX, f32 posY, f32 posZ, f32 arg3, f32 arg4) { @@ -1010,7 +1011,7 @@ void func_8007ADF4(f32 posX, f32 posY, f32 posZ, f32 arg3, f32 arg4) { void func_8007AF30(Object_8C* obj8C, f32 posX, f32 posZ, f32 arg3, f32 arg4, f32 arg5) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_382; + obj8C->obj.id = OBJ_8C_382; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = -10.0f; obj8C->obj.pos.z = posZ; @@ -1018,7 +1019,7 @@ void func_8007AF30(Object_8C* obj8C, f32 posX, f32 posZ, f32 arg3, f32 arg4, f32 obj8C->unk_54.z = arg4 - D_80177D08; obj8C->unk_6C = arg5; obj8C->unk_50 = 0x64; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007AFD0(f32 posX, f32 posZ, f32 arg2, f32 arg3, f32 arg4) { @@ -1058,20 +1059,20 @@ void func_8007B0F4(Object_8C* obj8C) { void func_8007B180(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_381; + obj8C->obj.id = OBJ_8C_381; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; obj8C->unk_44 = 0xFF; obj8C->unk_6C = arg4; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); func_80019218(0x1100000C, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); } void func_8007B228(f32 posX, f32 posY, f32 posZ, f32 arg3) { s32 i; - for (i = 0; i < ARRAY_COUNT(gObjects8C) && gCurrentLevel == 8; i++) { + for (i = 0; i < ARRAY_COUNT(gObjects8C) && gCurrentLevel == LEVEL_ZONESS; i++) { if (gObjects8C[i].obj.status == 0) { func_8007B180(&gObjects8C[i], posX, posY, posZ, arg3); break; @@ -1082,14 +1083,14 @@ void func_8007B228(f32 posX, f32 posY, f32 posZ, f32 arg3) { void func_8007B2BC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4, s32 arg5) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_384; + obj8C->obj.id = OBJ_8C_384; obj8C->obj.pos.x = xPos; obj8C->obj.pos.y = yPos; obj8C->obj.pos.z = zPos; obj8C->unk_6C = arg4; obj8C->unk_44 = 0xFF; obj8C->unk_4C = arg5; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007B344(f32 xPos, f32 yPos, f32 zPos, f32 arg3, s32 arg4) { @@ -1112,7 +1113,7 @@ void func_8007B3B8(Object_8C* obj8C) { var_fv0 = 15.0f; var_fv1 = 0.05f; var_v0 = 4; - } else if ((obj8C->unk_4C == 5) && ((gCurrentLevel == 0x10) || (gCurrentLevel == 1))) { + } else if ((obj8C->unk_4C == 5) && ((gCurrentLevel == LEVEL_KATINA) || (gCurrentLevel == LEVEL_METEO))) { var_fv0 = 10.0f; var_fv1 = 0.1f; var_v0 = 4; @@ -1131,7 +1132,7 @@ void func_8007B3B8(Object_8C* obj8C) { void func_8007B494(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, s32 arg5) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_385; + obj8C->obj.id = OBJ_8C_385; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -1145,7 +1146,7 @@ void func_8007B494(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, s32 } else { obj8C->unk_46 = 3; } - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007B550(f32 posX, f32 posY, f32 posZ, f32 arg3, s32 arg4) { @@ -1215,7 +1216,7 @@ void func_8007B758(Object_8C* obj8C) { void func_8007B7E8(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_364; + obj8C->obj.id = OBJ_8C_364; obj8C->obj.pos.x = posX; obj8C->obj.pos.y = posY; obj8C->obj.pos.z = posZ; @@ -1229,7 +1230,7 @@ void func_8007B7E8(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) { obj8C->unk_46 = 1; obj8C->unk_70 = arg4 * 0.2f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); } void func_8007B8F8(f32 posX, f32 posY, f32 posZ, f32 arg3) { diff --git a/src/main/sf_hud.c b/src/main/sf_hud.c index d3f7c432..ed16fb86 100644 --- a/src/main/sf_hud.c +++ b/src/main/sf_hud.c @@ -79,8 +79,8 @@ void func_80084B94(s32 arg0) { RCP_SetupDL(&gMasterDisp, 0x24); if (arg0 == 0) { for (i = 1; i < 4; i++) { - if (((gTeamHealth[i] != 0) || (gPlayer[0].unk_1C8 != 7)) && (gTeamHealth[i] <= 0) && - (gTeamHealth[i] != -2)) { + if (((gTeamShields[i] != 0) || (gPlayer[0].unk_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); Matrix_Scale(gGfxMatrix, 0.68f, 0.68f, 1.0f, 1); @@ -162,7 +162,7 @@ void func_800856C0(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4) { } void func_80085740(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { - if (D_801778E8 != 0) { + if (gVersusMode) { TextureRect_8bIA(&gMasterDisp, D_3000B20, 32, 5, arg0, arg1, arg2, arg3); } else { TextureRect_8bIA(&gMasterDisp, D_1000E80, 48, 9, arg0, arg1, arg2, arg3); @@ -170,7 +170,7 @@ void func_80085740(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { } void func_800857DC(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { - if (D_801778E8 != 0) { + if (gVersusMode) { TextureRect_8bCI(&gMasterDisp, D_300D3C0, D_300D408, 24, 3, arg0, arg1, arg2, arg3); } else { TextureRect_8bCI(&gMasterDisp, D_10128C0, D_1012988, 40, 5, arg0, arg1, arg2, arg3); @@ -178,7 +178,7 @@ void func_800857DC(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { } void func_80085890(f32 arg0, f32 arg1, f32 arg2, f32 arg3) { - if (D_801778E8 != 0) { + if (gVersusMode) { TextureRect_8bCI(&gMasterDisp, D_300D350, D_300D398, 24, 3, arg0, arg1, arg2, arg3); } else { TextureRect_8bCI(&gMasterDisp, D_10127D0, D_1012898, 40, 5, arg0, arg1, arg2, arg3); @@ -403,7 +403,7 @@ void func_800884E4(void) { var_v1 = 0xFF0000; for (i = 0; i < 3; i++) { - if (gTeamHealth[3 - i] <= 0) { + if (gTeamShields[3 - i] <= 0) { D_80177B50[D_80177B48] ^= var_v1; } else { D_80177B50[D_80177B48] |= var_v1; @@ -429,7 +429,7 @@ void func_8008865C(void) { s32 func_800886B8(void) { s32 var_v1 = 0; - f32 var_fv1 = gChngInputPtr->stick_y; // related to the vertical height of the arwing + f32 var_fv1 = gInputPress->stick_y; // related to the vertical height of the arwing if ((var_fv1 != 0.0f) && (D_80161810[4] != 0)) { return 0; @@ -479,7 +479,7 @@ void func_80088784(s32 arg0) { Matrix_Scale(gGfxMatrix, 0.37f, 0.37f, 0.37f, 1); Matrix_SetGfxMtx(&gMasterDisp); - if (gLevelType == 0) { + if (gLevelType == LEVELTYPE_GROUND) { gSPDisplayList(gMasterDisp++, D_800D1D4C[arg0]); } else { gSPDisplayList(gMasterDisp++, D_800D1D94[arg0]); @@ -677,7 +677,7 @@ void func_80089E98(s32 arg0) { break; case 103: - if (D_801778E8 == 1) { + if (gVersusMode == true) { func_80089670(); } else { func_80089C38(); @@ -712,19 +712,19 @@ s32 func_8008AC54(s32 arg0) { for (i = 0, obj2F4 = gObjects2F4; i < 60; i++, obj2F4++) { switch (arg0) { case 0: - if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJECT_190)) { + if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJ_2F4_190)) { ret++; } break; case 1: - if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJECT_191)) { + if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJ_2F4_191)) { ret++; } break; case 2: - if (((obj2F4->obj.id == OBJECT_190) || (obj2F4->obj.id == OBJECT_191)) && (obj2F4->obj.status == 2)) { + if (((obj2F4->obj.id == OBJ_2F4_190) || (obj2F4->obj.id == OBJ_2F4_191)) && (obj2F4->obj.status == 2)) { ret++; } break; @@ -869,7 +869,7 @@ void func_8008B2F0(void) { D_801617A4 = D_801617A8 = 1.0f; } - var_fv0 = gPlayer[0].health; + var_fv0 = gPlayer[0].shields; D_801617AC = var_fv0 / ((256.0f * D_801617A8) - 1.0f); if (gGoldRingCount[0] >= 3) { @@ -907,7 +907,7 @@ void func_8008B2F0(void) { Math_SmoothStepToF(&D_801617A8, D_801617A4, 0.02f, 1000.0f, 0.001f); - var_fv0 = gPlayer[0].health; + var_fv0 = gPlayer[0].shields; if (var_fv0 > (256.0f * D_801617A8) - 1.0f) { var_fv0 = (256.0f * D_801617A8) - 1.0f; } @@ -1147,7 +1147,7 @@ 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].health * (1.0f / 255.0f), 0.3f, 10.0f, 0.01f); + Math_SmoothStepToF(&D_800D19E0[D_801778A0], gPlayer[D_801778A0].shields * (1.0f / 255.0f), 0.3f, 10.0f, 0.01f); RCP_SetupDL(&gMasterDisp, 0x4E); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); @@ -1179,7 +1179,7 @@ void func_8008D4F0(f32 arg0, f32 arg1) { s32 temp_t9; s32 var_v1; - if (D_801778E8 != 0) { + if (gVersusMode) { temp = 2.0f; sp60 = 1.0f; var_v1 = D_801778A0; @@ -1321,7 +1321,7 @@ void func_8008DE68(void) { f32 temp7; f32 var_fv0; - if ((D_80161734 == 1) && (gTeamHealth[2] > 0)) { + 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); D_801616BC = 255.0f; @@ -1445,7 +1445,7 @@ void func_8008E51C(s32* arg0, f32 arg1) { } void func_8008E5E8(void) { - if (D_801778E8 != 0) { + if (gVersusMode) { func_8008DC34(); } func_8008A4DC(); @@ -1571,7 +1571,7 @@ void func_8008F96C(void) { RCP_SetupDL_36(); - if ((D_80177880 != 2) && (D_80161708 != 0)) { + if ((gAllRangeMode != 2) && (D_80161708 != 0)) { func_8008D4F0(246.0f, 28.0f); func_8008EA14(250.0f, 38.0f); } @@ -1773,7 +1773,7 @@ s32 func_80090E8C(Object_2F4* obj2F4) { f32 var_fv1_2; if (obj2F4->unk_0BC == 0) { - if (gLevelType == 1) { + if (gLevelType == LEVELTYPE_SPACE) { x = (Rand_ZeroOne() - 0.5f) * 20000.0f; y = (Rand_ZeroOne() - 0.5f) * 5000.0f; z = (Rand_ZeroOne() - 0.5f) * 20000.0f; @@ -1842,7 +1842,7 @@ s32 func_800910C0(Object_2F4* obj2F4) { } void func_80091254(Object_2F4* obj2F4) { - if (D_80177880 == 1) { + if (gAllRangeMode == 1) { func_80090E8C(obj2F4); } else { func_800910C0(obj2F4); @@ -1870,7 +1870,7 @@ s32 func_80091368(Object_2F4* obj2F4) { obj2F4->unk_124.y = 20000.0f; obj2F4->unk_054 = 1; obj2F4->unk_064 = 1; - gTeamHealth[obj2F4->unk_0E4] = 1; + gTeamShields[obj2F4->unk_0E4] = 1; switch (obj2F4->unk_0E4) { case 1: @@ -1885,7 +1885,7 @@ s32 func_80091368(Object_2F4* obj2F4) { func_800BA808(gMsg_ID_20222, RCID_SLIPPY); break; } - gTeamHealth[obj2F4->unk_0E4] = -1; + gTeamShields[obj2F4->unk_0E4] = -1; break; case 1: @@ -1930,7 +1930,7 @@ void func_800914FC(Object_2F4* obj2F4) { break; } - if ((gTeamHealth[obj2F4->unk_0E4] <= 0) && (obj2F4->unk_0B8 != 3)) { + if ((gTeamShields[obj2F4->unk_0E4] <= 0) && (obj2F4->unk_0B8 != 3)) { obj2F4->unk_064 = 0; obj2F4->unk_0B8 = 3; } @@ -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 == 0) && (sp44 > 180.0f)) { + } else if ((obj2F4->obj.pos.y < (D_80177940 + 50.0f)) && (gLevelType == LEVELTYPE_GROUND) && (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 == 0)) { + if ((obj2F4->obj.pos.y < D_80177940 + 40.0f) && (obj2F4->unk_0E8.y < 0.0f) && (gLevelType == LEVELTYPE_GROUND)) { obj2F4->obj.pos.y = D_80177940 + 40.0f; obj2F4->unk_0E8.y = 0.0f; } @@ -2104,7 +2104,7 @@ s32 func_80091F00(Object_2F4* obj2F4) { obj2F4->unk_14C = sp34.y; obj2F4->unk_144 = sp34.z; - gTeamHealth[obj2F4->unk_0E4] = obj2F4->unk_0CE; + gTeamShields[obj2F4->unk_0E4] = obj2F4->unk_0CE; if (D_8017829C != 0) { return false; @@ -2157,26 +2157,26 @@ s32 func_80091F00(Object_2F4* obj2F4) { } void func_80092244(Object_2F4* obj2F4) { - gUnkEntities28[obj2F4->unk_040].unk_00 = 1; - gUnkEntities28[obj2F4->unk_040].unk_02 = obj2F4->unk_0E4; - gUnkEntities28[obj2F4->unk_040].pos.x = obj2F4->obj.pos.x; - gUnkEntities28[obj2F4->unk_040].pos.y = obj2F4->obj.pos.y; - gUnkEntities28[obj2F4->unk_040].pos.z = obj2F4->obj.pos.z; - gUnkEntities28[obj2F4->unk_040].unk_10 = obj2F4->unk_0F4.y + 180.0f; + gUnkEntities28[obj2F4->index].unk_00 = 1; + gUnkEntities28[obj2F4->index].unk_02 = obj2F4->unk_0E4; + gUnkEntities28[obj2F4->index].pos.x = obj2F4->obj.pos.x; + gUnkEntities28[obj2F4->index].pos.y = obj2F4->obj.pos.y; + gUnkEntities28[obj2F4->index].pos.z = obj2F4->obj.pos.z; + gUnkEntities28[obj2F4->index].unk_10 = obj2F4->unk_0F4.y + 180.0f; } void func_800922F4(Object_2F4* obj2F4) { s32 temp; - if ((gTeamHealth[obj2F4->unk_0E4] < 64) && (gPlayer[0].unk_1C8 != 7)) { + if ((gTeamShields[obj2F4->unk_0E4] < 64) && (gPlayer[0].unk_1C8 != 7)) { temp = 7; - if (gTeamHealth[obj2F4->unk_0E4] > 16) { + if (gTeamShields[obj2F4->unk_0E4] > 16) { temp = 15; } - if (gTeamHealth[obj2F4->unk_0E4] > 32) { + if (gTeamShields[obj2F4->unk_0E4] > 32) { temp = 31; } - if (gTeamHealth[obj2F4->unk_0E4] > 48) { + if (gTeamShields[obj2F4->unk_0E4] > 48) { temp = 63; } @@ -2217,8 +2217,8 @@ void func_80093310(void) { this->obj.pos.z -= 5000.0f; gObjects2F4->unk_0B6 = 1; if (1) {} - this->obj.id = OBJECT_195; - Object_Set1C(&this->unk_01C, this->obj.id); + 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); } @@ -2231,7 +2231,7 @@ void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { if (obj8C->obj.status == 0) { Object_8C_Initialize(obj8C); obj8C->obj.status = 1; - obj8C->obj.id = OBJECT_363; + obj8C->obj.id = OBJ_8C_363; obj8C->obj.pos.x = x; obj8C->obj.pos.y = y; obj8C->obj.pos.z = z; @@ -2264,7 +2264,7 @@ void func_800933D8(f32 x, f32 y, f32 z, f32 arg3) { obj8C->unk_70 = arg3 * 0.2f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; - Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); + Object_SetInfo(&obj8C->info, obj8C->obj.id); break; } obj8C--; @@ -2354,9 +2354,9 @@ void stub_80094D18(void) { void func_80095350(Object_2F4* obj2F4) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; - obj2F4->obj.id = OBJECT_195; + obj2F4->obj.id = OBJ_2F4_195; obj2F4->unk_0B6 = 9999; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } #ifdef IMPORT_DATA_PENDING @@ -2370,11 +2370,11 @@ void func_800953A0(Object_2F4* obj_2F4, s32 arg1) { Object_2F4_Initialize(obj_2F4); obj_2F4->obj.status = 2; - obj_2F4->obj.id = OBJECT_195; + obj_2F4->obj.id = OBJ_2F4_195; obj_2F4->obj.pos = D_800D2510[arg1]; obj_2F4->obj.pos.z -= D_80177D20; obj_2F4->unk_0B6 = 45; - Object_Set1C(&obj_2F4->unk_01C, obj_2F4->obj.id); + Object_SetInfo(&obj_2F4->info, obj_2F4->obj.id); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_800953A0.s") @@ -2389,11 +2389,11 @@ void func_8009546C(Object_2F4* obj2F4, s32 arg1) { Object_2F4_Initialize(obj2F4); obj2F4->obj.status = 2; - obj2F4->obj.id = OBJECT_195; + obj2F4->obj.id = OBJ_2F4_195; obj2F4->obj.pos = D_800D2540[arg1]; obj2F4->obj.pos.z -= D_80177D20; obj2F4->unk_0B6 = 46; - Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); + Object_SetInfo(&obj2F4->info, obj2F4->obj.id); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_8009546C.s") @@ -2408,11 +2408,11 @@ void func_80095538(Object_2F4* obj_2F4, s32 arg1) { Object_2F4_Initialize(obj_2F4); obj_2F4->obj.status = 2; - obj_2F4->obj.id = OBJECT_195; + obj_2F4->obj.id = OBJ_2F4_195; obj_2F4->obj.pos = D_800D257C[arg1]; obj_2F4->obj.pos.z -= D_80177D20; obj_2F4->unk_0B6 = 47; - Object_Set1C(&obj_2F4->unk_01C, obj_2F4->obj.id); + Object_SetInfo(&obj_2F4->info, obj_2F4->obj.id); } #else #pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_80095538.s") diff --git a/src/main/sys_fault.c b/src/main/sys_fault.c index 80fe1922..f65b3941 100644 --- a/src/main/sys_fault.c +++ b/src/main/sys_fault.c @@ -239,14 +239,14 @@ void Fault_ThreadEntry(void* arg0) { } func_8000762C(300, 10, "-"); - gControllerStatus[0] = 1; + gControllerPlugged[0] = 1; while (var_s5 == 0) { osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL); osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK); Controller_UpdateInput(); switch (var_s0) { case 0: - if (gCurrentInput[0].button == (R_TRIG | D_CBUTTONS | L_CBUTTONS)) { + if (gControllerHold[0].button == (R_TRIG | D_CBUTTONS | L_CBUTTONS)) { var_s0++; var_s2 = 4000; } @@ -254,11 +254,11 @@ void Fault_ThreadEntry(void* arg0) { case 1: case 2: case 7: - if (gCurrentInput[0].button & R_TRIG) { - if (gChangedInput[0].button == A_BUTTON) { + if (gControllerHold[0].button & R_TRIG) { + if (gControllerPress[0].button == A_BUTTON) { var_s0++; var_s2 = 3000; - } else if (gChangedInput[0].button != 0) { + } else if (gControllerPress[0].button != 0) { var_s0 = 0; } } @@ -266,11 +266,11 @@ void Fault_ThreadEntry(void* arg0) { case 3: case 4: case 8: - if (gCurrentInput[0].button & R_TRIG) { - if (gChangedInput[0].button == B_BUTTON) { + if (gControllerHold[0].button & R_TRIG) { + if (gControllerPress[0].button == B_BUTTON) { var_s0++; var_s2 = 3000; - } else if (gChangedInput[0].button != 0) { + } else if (gControllerPress[0].button != 0) { var_s0 = 0; } } @@ -282,21 +282,21 @@ void Fault_ThreadEntry(void* arg0) { case 11: case 12: case 13: - if (gCurrentInput[0].button & R_TRIG) { - if (gChangedInput[0].button == L_CBUTTONS) { + if (gControllerHold[0].button & R_TRIG) { + if (gControllerPress[0].button == L_CBUTTONS) { var_s0++; var_s2 = 3000; - } else if (gChangedInput[0].button != 0) { + } else if (gControllerPress[0].button != 0) { var_s0 = 0; } } break; case 14: - if (gCurrentInput[0].button & R_TRIG) { - if (gChangedInput[0].button == START_BUTTON) { + if (gControllerHold[0].button & R_TRIG) { + if (gControllerPress[0].button == START_BUTTON) { var_s0++; var_s2 = 3000; - } else if (gChangedInput[0].button != 0) { + } else if (gControllerPress[0].button != 0) { var_s0 = 0; } } diff --git a/src/main/sys_joybus.c b/src/main/sys_joybus.c index ff95ead9..ea68fb75 100644 --- a/src/main/sys_joybus.c +++ b/src/main/sys_joybus.c @@ -1,18 +1,18 @@ #include "global.h" -OSContPad gCurrentInput[4]; -OSContPad gChangedInput[4]; -u8 gControllerStatus[4]; -u32 gStopInputTimer; -u8 gRumbleStatus[4]; -OSContPad sNextInput[4]; // -OSContPad sPrevInput[4]; // -OSContStatus D_800DD8F0[4]; // -OSPfs D_800DD900[4]; // +OSContPad gControllerHold[4]; +OSContPad gControllerPress[4]; +u8 gControllerPlugged[4]; +u32 gControllerLock; +u8 gControllerRumble[4]; +OSContPad sNextController[4]; // +OSContPad sPrevController[4]; // +OSContStatus sControllerStatus[4]; // +OSPfs sControllerMotor[4]; // void Controller_AddDeadZone(s32 contrNum) { - s32 temp_v0 = gCurrentInput[contrNum].stick_x; - s32 temp_a2 = gCurrentInput[contrNum].stick_y; + s32 temp_v0 = gControllerHold[contrNum].stick_x; + s32 temp_a2 = gControllerHold[contrNum].stick_y; s32 var_a0; s32 var_v0; @@ -44,18 +44,18 @@ void Controller_AddDeadZone(s32 contrNum) { if (var_v0 < -60) { var_v0 = -60; } - gChangedInput[contrNum].stick_x = var_a0; - gChangedInput[contrNum].stick_y = var_v0; + gControllerPress[contrNum].stick_x = var_a0; + gControllerPress[contrNum].stick_y = var_v0; } void Controller_Init(void) { u8 sp1F; s32 i; - osContInit(&gSerialEventQueue, &sp1F, D_800DD8F0); + osContInit(&gSerialEventQueue, &sp1F, sControllerStatus); for (i = 0; i < 4; i++) { - gControllerStatus[i] = (sp1F >> i) & 1; - gRumbleStatus[i] = 0; + gControllerPlugged[i] = (sp1F >> i) & 1; + gControllerRumble[i] = 0; } } @@ -63,15 +63,16 @@ void Controller_UpdateInput(void) { s32 i; for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 1 && sNextInput[i].errno == 0) { - sPrevInput[i] = gCurrentInput[i]; - gCurrentInput[i] = sNextInput[i]; - gChangedInput[i].button = (gCurrentInput[i].button ^ sPrevInput[i].button) & gCurrentInput[i].button; + if (gControllerPlugged[i] == 1 && sNextController[i].errno == 0) { + sPrevController[i] = gControllerHold[i]; + gControllerHold[i] = sNextController[i]; + gControllerPress[i].button = + (gControllerHold[i].button ^ sPrevController[i].button) & gControllerHold[i].button; Controller_AddDeadZone(i); } else { - gCurrentInput[i].button = gCurrentInput[i].stick_x = gCurrentInput[i].stick_y = gCurrentInput[i].errno = - gChangedInput[i].button = gChangedInput[i].stick_x = gChangedInput[i].stick_y = gChangedInput[i].errno = - 0; + gControllerHold[i].button = gControllerHold[i].stick_x = gControllerHold[i].stick_y = + gControllerHold[i].errno = gControllerPress[i].button = gControllerPress[i].stick_x = + gControllerPress[i].stick_y = gControllerPress[i].errno = 0; } } } @@ -79,15 +80,16 @@ void Controller_UpdateInput(void) { void Controller_ReadData(void) { s32 i; - if (gStopInputTimer != 0) { - gStopInputTimer--; + if (gControllerLock != 0) { + gControllerLock--; for (i = 0; i < 4; i++) { - sNextInput[i].button = sNextInput[i].stick_x = sNextInput[i].stick_y = sNextInput[i].errno = 0; + sNextController[i].button = sNextController[i].stick_x = sNextController[i].stick_y = + sNextController[i].errno = 0; } } else { osContStartReadData(&gSerialEventQueue); osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK); - osContGetReadData(sNextInput); + osContGetReadData(sNextController); } osSendMesg(&gControllerMsgQueue, (OSMesg) SI_CONT_READ_DONE, OS_MESG_PRI_NORMAL); } @@ -113,31 +115,31 @@ void Controller_Rumble(void) { osContStartQuery(&gSerialEventQueue); osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK); - osContGetQuery(D_800DD8F0); + osContGetQuery(sControllerStatus); for (i = 0; i < 4; i++) { - if ((gControllerStatus[i] != 0) && (D_800DD8F0[i].errno == 0)) { - if (D_800DD8F0[i].status & 1) { - if (gRumbleStatus[i] == 0) { - if (osMotorInit(&gSerialEventQueue, &D_800DD900[i], i)) { - gRumbleStatus[i] = 0; + if ((gControllerPlugged[i] != 0) && (sControllerStatus[i].errno == 0)) { + if (sControllerStatus[i].status & 1) { + if (gControllerRumble[i] == 0) { + if (osMotorInit(&gSerialEventQueue, &sControllerMotor[i], i)) { + gControllerRumble[i] = 0; } else { - gRumbleStatus[i] = 1; + gControllerRumble[i] = 1; } } - if (gRumbleStatus[i] == 1) { + if (gControllerRumble[i] == 1) { if (D_80137E84[i] != 0) { - if (osMotorStart(&D_800DD900[i])) { - gRumbleStatus[i] = 0; + if (osMotorStart(&sControllerMotor[i])) { + gControllerRumble[i] = 0; } } else { - if (osMotorStop(&D_800DD900[i])) { - gRumbleStatus[i] = 0; + if (osMotorStop(&sControllerMotor[i])) { + gControllerRumble[i] = 0; } } } } else { - gRumbleStatus[i] = 0; + gControllerRumble[i] = 0; } } } diff --git a/src/main/sys_main.c b/src/main/sys_main.c index 98add3df..80f31cf4 100644 --- a/src/main/sys_main.c +++ b/src/main/sys_main.c @@ -246,9 +246,9 @@ void Graphics_InitializeTask(u32 frameCount) { } void Main_SetVIMode(void) { - if ((gCurrentInput[0].button & D_JPAD) && (gCurrentInput[1].button & D_JPAD) && - (gCurrentInput[2].button & D_JPAD) && (gCurrentInput[3].button & L_TRIG) && - (gCurrentInput[3].button & R_TRIG) && (gCurrentInput[3].button & Z_TRIG)) { + if ((gControllerHold[0].button & D_JPAD) && (gControllerHold[1].button & D_JPAD) && + (gControllerHold[2].button & D_JPAD) && (gControllerHold[3].button & L_TRIG) && + (gControllerHold[3].button & R_TRIG) && (gControllerHold[3].button & Z_TRIG)) { sGammaMode = 1 - sGammaMode; } switch (osTvType) { @@ -329,7 +329,7 @@ void Graphics_ThreadEntry(void* arg0) { osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_RUMBLE, OS_MESG_PRI_NORMAL); Controller_UpdateInput(); osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL); - if (gChangedInput[3].button & U_JPAD) { + if (gControllerPress[3].button & U_JPAD) { Main_SetVIMode(); } { diff --git a/src/overlays/ovl_DF4260/DFEE30.c b/src/overlays/ovl_DF4260/DFEE30.c index 71562a91..1a59ab7b 100644 --- a/src/overlays/ovl_DF4260/DFEE30.c +++ b/src/overlays/ovl_DF4260/DFEE30.c @@ -11,13 +11,14 @@ #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_DF4260/DFEE30/func_DF4260_8019243C.s") -void func_DF4260_801924A8(UnkStruct_func_DF4260_801924A8* arg0) { - switch (arg0->unk48) { +void func_DF4260_801924A8(Object_80* arg0) { + switch (arg0->unk_48) { case 0: - if (gPlayer[0].unk_07C < arg0->unkC) { + if (gPlayer[0].unk_07C < arg0->obj.pos.z) { D_80177AB0 = 0; D_80177A98 = 0; - arg0->unk48++; + + arg0->unk_48++; } case 1: diff --git a/src/overlays/ovl_EBFBE0/fox_option.c b/src/overlays/ovl_EBFBE0/fox_option.c index 1b20373d..2803f80a 100644 --- a/src/overlays/ovl_EBFBE0/fox_option.c +++ b/src/overlays/ovl_EBFBE0/fox_option.c @@ -756,7 +756,7 @@ void func_EBFBE0_801928BC(void) { D_8017783C = 2; D_80177B40 = 0; D_80177898 = 0; - gStopInputTimer = 3; + gControllerLock = 3; } else { D_80178340 += 0x20; if (D_80178340 > 0xFF) { @@ -776,7 +776,7 @@ void func_EBFBE0_80192938(void) { D_80177CA0 = 0; D_80177CB0 = 0.0f; D_8017782C = 1; - gStopInputTimer = 3; + gControllerLock = 3; func_8001DC6C(0, 28); } else { D_80178340 += 0x20; @@ -791,7 +791,7 @@ void func_EBFBE0_801929F0(void) { D_800D2870 = 0; gBlurAlpha = 0xFF; - gStopInputTimer = 0; + gControllerLock = 0; D_80178410 = 800; D_EBFBE0_801B9248 = 0; @@ -934,13 +934,13 @@ void func_EBFBE0_80192D58(void) { } } - if (gChangedInput[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { + if (gControllerPress[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { func_80019218(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 (gChangedInput[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[D_80177AF8].button & B_BUTTON) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8280 = 1; @@ -1027,7 +1027,7 @@ void func_EBFBE0_80192D58(void) { D_80177898 = 0; D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8284 = 0; - gStopInputTimer = 3; + gControllerLock = 3; } break; } @@ -1067,7 +1067,7 @@ void func_EBFBE0_80193B04(void) { s32 i; gBlurAlpha = 0xFF; - gStopInputTimer = 0; + gControllerLock = 0; D_80178410 = 800; if (D_EBFBE0_801B9248 == 0) { @@ -1163,14 +1163,14 @@ void func_EBFBE0_80193C4C(void) { 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); } // clang-format on - if (gChangedInput[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { + if (gControllerPress[D_80177AF8].button & (A_BUTTON | START_BUTTON)) { func_80019218(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 (gChangedInput[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[D_80177AF8].button & B_BUTTON) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 0; D_EBFBE0_801B9124 = 1000; @@ -1350,17 +1350,17 @@ void func_EBFBE0_801948A8(void) { } // Test sound - if (gChangedInput[D_80177AF8].button & R_TRIG) { + if (gControllerPress[D_80177AF8].button & R_TRIG) { D_EBFBE0_801B9284 ^= 1; func_8001D8F4(D_EBFBE0_801B9284); } - if (gChangedInput[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[D_80177AF8].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9288 = (D_EBFBE0_801B9288 + 1) & 3; } - if (gChangedInput[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[D_80177AF8].button & B_BUTTON) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B9284 == 1) { D_EBFBE0_801B9284 = 0; @@ -1631,12 +1631,12 @@ void func_EBFBE0_80195944(void) { D_EBFBE0_801B931C = sp28; } - if (gChangedInput[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[D_80177AF8].button & A_BUTTON) { func_8001DA90(D_EBFBE0_801B931C); D_EBFBE0_801B9320 = true; } - if (gChangedInput[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[D_80177AF8].button & B_BUTTON) { if (!D_EBFBE0_801B9320) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_8001D444(0, 36, 0, 255); @@ -1653,7 +1653,7 @@ void func_EBFBE0_80195944(void) { } // Spectrum Analizer mode selector - if (gChangedInput[D_80177AF8].button & R_CBUTTONS) { + if (gControllerPress[D_80177AF8].button & R_CBUTTONS) { spectrumAnalizerMode++; if (spectrumAnalizerMode > 2) { spectrumAnalizerMode = 0; @@ -1873,7 +1873,7 @@ void func_EBFBE0_8019669C(void) { if (1) {} } - if (gChangedInput[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[D_80177AF8].button & A_BUTTON) { if (D_EBFBE0_801B91CC == 3) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 3; @@ -1892,7 +1892,7 @@ void func_EBFBE0_8019669C(void) { D_EBFBE0_801B912C = 4; } } - } else if (gChangedInput[D_80177AF8].button & B_BUTTON) { + } else if (gControllerPress[D_80177AF8].button & B_BUTTON) { if (D_EBFBE0_801B91CC == 1) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B912C = 2; @@ -2025,7 +2025,7 @@ void func_EBFBE0_80196E54(void) { void func_EBFBE0_80196EFC(void) { func_EBFBE0_80196FC4(); - if (gChangedInput[D_80177AF8].button & B_BUTTON) { + if (gControllerPress[D_80177AF8].button & B_BUTTON) { func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_80177898 = 0; D_EBFBE0_801B9124 = 1000; @@ -2040,7 +2040,7 @@ void func_EBFBE0_80196F9C(void) { } void func_EBFBE0_80196FC4(void) { - if (gChangedInput[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[D_80177AF8].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B93E0 ^= 1; } @@ -2606,7 +2606,7 @@ void func_EBFBE0_801992C4(void) { for (i = 0; i < 4; i++) { D_80161A18[i] = 0; - if (gControllerStatus[i] == 0) { + if (gControllerPlugged[i] == 0) { D_80161A18[i] = 1; D_EBFBE0_801B93C4 |= 1 << i; } @@ -2644,7 +2644,7 @@ void func_EBFBE0_8019949C(void) { } } - if (gChangedInput[i].button & A_BUTTON) { + if (gControllerPress[i].button & A_BUTTON) { if (D_EBFBE0_801B93C4 == 15) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91EC = 10; @@ -2661,7 +2661,7 @@ void func_EBFBE0_8019949C(void) { } } - if (gChangedInput[i].button & B_BUTTON) { + if (gControllerPress[i].button & B_BUTTON) { if (D_EBFBE0_801B93C4 & (1 << i)) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B93C4 &= (1 << i) ^ 15; @@ -2683,7 +2683,7 @@ void func_EBFBE0_8019978C(void) { func_EBFBE0_80199EA8(); for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 1) { + if (gControllerPlugged[i] == 1) { func_EBFBE0_80199820(i); } } @@ -2979,7 +2979,7 @@ void func_EBFBE0_8019A2E0(void) { } for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 0) { + if (gControllerPlugged[i] == 0) { continue; } @@ -2988,14 +2988,14 @@ void func_EBFBE0_8019A2E0(void) { D_801778A4 = D_EBFBE0_801B93D4 + 1; } - if (gChangedInput[i].button & A_BUTTON) { + if (gControllerPress[i].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B936C = 10; break; } - if (gChangedInput[i].button & B_BUTTON) { + if (gControllerPress[i].button & B_BUTTON) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B91C4 = 0; @@ -3019,7 +3019,7 @@ void func_EBFBE0_8019A4DC(void) { } for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 0) { + if (gControllerPlugged[i] == 0) { continue; } @@ -3029,14 +3029,14 @@ void func_EBFBE0_8019A4DC(void) { D_801778C8 = D_EBFBE0_801B93DC; } - if (gChangedInput[i].button & A_BUTTON) { + if (gControllerPress[i].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B937C = 10; break; } - if (gChangedInput[i].button & B_BUTTON) { + if (gControllerPress[i].button & B_BUTTON) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B91C4 = 0; @@ -3061,7 +3061,7 @@ void func_EBFBE0_8019A6DC(void) { } for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 0) { + if (gControllerPlugged[i] == 0) { continue; } if (func_EBFBE0_8019C418(&D_EBFBE0_801B93D8, 1, 0, 1, 20, 2, 4, i, &D_EBFBE0_801B9380[i])) { @@ -3069,15 +3069,15 @@ void func_EBFBE0_8019A6DC(void) { D_80161A28 = D_EBFBE0_801B93D8; } - if (gChangedInput[i].button & A_BUTTON) { + if (gControllerPress[i].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_80161A28 == 0) { - D_8017789C = 0; + gVersusStage = VSTAGE_CORNERIA; if (D_EBFBE0_801B93D0 == 30) { - D_8017789C = 1; + gVersusStage = VSTAGE_KATINA; } } else { - D_8017789C = 2; + gVersusStage = VSTAGE_SECTOR_Z; } D_EBFBE0_801B9374 = 10; @@ -3085,7 +3085,7 @@ void func_EBFBE0_8019A6DC(void) { break; } - if (gChangedInput[i].button & B_BUTTON) { + if (gControllerPress[i].button & B_BUTTON) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B93D0 == 20) { D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; @@ -3116,17 +3116,17 @@ void func_EBFBE0_8019A954(void) { } for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 0) { + if (gControllerPlugged[i] == 0) { continue; } - if (gChangedInput[i].button & A_BUTTON) { + if (gControllerPress[i].button & A_BUTTON) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B91EC = 10; break; } - if (gChangedInput[i].button & B_BUTTON) { + if (gControllerPress[i].button & B_BUTTON) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_EBFBE0_8019A080(); D_EBFBE0_801B933C = 0; @@ -3643,8 +3643,8 @@ bool func_EBFBE0_8019C418(s32* arg0, s32 arg1, bool arg2, s32 arg3, s32 arg4, s3 temp = *arg0; - x = gChangedInput[arg7].stick_x; - y = -gChangedInput[arg7].stick_y; + x = gControllerPress[arg7].stick_x; + y = -gControllerPress[arg7].stick_y; if (arg2 == true) { axis = y; @@ -3710,8 +3710,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 = gChangedInput[D_80177AF8].stick_x; - s32 y = -gChangedInput[D_80177AF8].stick_y; + s32 x = gControllerPress[D_80177AF8].stick_x; + s32 y = -gControllerPress[D_80177AF8].stick_y; if ((y > 40) || (y < -40)) { return ret; @@ -3751,8 +3751,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 = gChangedInput[D_80177AF8].stick_x; - s32 y = -gChangedInput[D_80177AF8].stick_y; + s32 x = gControllerPress[D_80177AF8].stick_x; + s32 y = -gControllerPress[D_80177AF8].stick_y; if ((y > 10) || (y < -10)) { return 0; @@ -3970,7 +3970,7 @@ void func_EBFBE0_8019CD54(void) { } } - if (gChangedInput[D_80177AF8].button & A_BUTTON) { + if (gControllerPress[D_80177AF8].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); @@ -3992,7 +3992,7 @@ void func_EBFBE0_8019CD54(void) { } } - if ((gChangedInput[D_80177AF8].button & B_BUTTON) && (D_EBFBE0_801B9098 != 0)) { + if ((gControllerPress[D_80177AF8].button & B_BUTTON) && (D_EBFBE0_801B9098 != 0)) { func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); if (D_EBFBE0_801B9138 != 0) { D_EBFBE0_801B9138 = 0; @@ -4335,7 +4335,7 @@ void func_EBFBE0_8019DD44(void) { void func_EBFBE0_8019DE74(void) { func_EBFBE0_8019715C(); - if (gChangedInput[D_80177AF8].button & 0xD00E) { // START, A, B, C-UP, C-LEFT, C-DOWN + 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); D_80177898 = 0; @@ -4390,7 +4390,7 @@ void func_EBFBE0_8019E030(void) { break; case 2: - if ((D_EBFBE0_801B9178 == 0) && (gChangedInput[D_80177AF8].button & 0xD00E)) { + if ((D_EBFBE0_801B9178 == 0) && (gControllerPress[D_80177AF8].button & 0xD00E)) { func_80019218(0x19031083, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); D_EBFBE0_801B9090 = 1; D_EBFBE0_801B9178 = 60; @@ -4478,33 +4478,33 @@ void func_EBFBE0_8019E284(void) { * programmers probably used it to know which position values to hardcode in place. */ - if (gChangedInput[3].button & R_TRIG) { + if (gControllerPress[3].button & R_TRIG) { D_EBFBE0_801AF410++; if (D_EBFBE0_801AF410 > 7) { D_EBFBE0_801AF410 = 0; } } - if (gChangedInput[3].button & L_TRIG) { + if (gControllerPress[3].button & L_TRIG) { D_EBFBE0_801AF410--; if (D_EBFBE0_801AF410 < 0) { D_EBFBE0_801AF410 = 7; } } - if (gCurrentInput[3].button & U_JPAD) { + if (gControllerHold[3].button & U_JPAD) { D_EBFBE0_801AF3F0[D_EBFBE0_801AF410] -= 1.0f; } - if (gCurrentInput[3].button & D_JPAD) { + if (gControllerHold[3].button & D_JPAD) { D_EBFBE0_801AF3F0[D_EBFBE0_801AF410] += 1.0f; } - if (gCurrentInput[3].button & L_JPAD) { + if (gControllerHold[3].button & L_JPAD) { D_EBFBE0_801AF3D0[D_EBFBE0_801AF410] -= 1.0f; } - if (gCurrentInput[3].button & R_JPAD) { + if (gControllerHold[3].button & R_JPAD) { D_EBFBE0_801AF3D0[D_EBFBE0_801AF410] += 1.0f; } } diff --git a/src/overlays/ovl_EBFBE0/fox_title.c b/src/overlays/ovl_EBFBE0/fox_title.c index 31126959..dd8f2d9a 100644 --- a/src/overlays/ovl_EBFBE0/fox_title.c +++ b/src/overlays/ovl_EBFBE0/fox_title.c @@ -80,7 +80,7 @@ void func_EBFBE0_801875E0(void) { func_8001DC6C(0, 0x16); D_EBFBE0_801B82C4 = 1; } - gStopInputTimer = 0x1E; + gControllerLock = 0x1E; } void func_EBFBE0_80187754(void) { @@ -215,7 +215,7 @@ s32 func_EBFBE0_80187ABC(void) { s32 i; for (i = 0; i < 4; i++) { - if (gControllerStatus[i] == 1) { + if (gControllerPlugged[i] == 1) { ret = i; break; } @@ -700,7 +700,7 @@ void func_EBFBE0_801888E8(void) { D_EBFBE0_801B86A4 = 0; } - if ((gChangedInput[D_80177AF8].stick_x != 0) || (gChangedInput[D_80177AF8].stick_y != 0)) { + if ((gControllerPress[D_80177AF8].stick_x != 0) || (gControllerPress[D_80177AF8].stick_y != 0)) { D_EBFBE0_801B82D0 = 0.08f; } } @@ -2116,7 +2116,7 @@ void func_EBFBE0_8018CD9C(Vec3f* pos, UnkStruct_D_EBFBE0_801B8294* arg1, f32 arg } void func_EBFBE0_8018D2B8(s32 arg0) { - WingInfo temp; + WingInfo wings; Lights_SetOneLight(&gMasterDisp, D_EBFBE0_801B82E0, D_EBFBE0_801B82E4, D_EBFBE0_801B82E8, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG, gAmbientB); @@ -2137,17 +2137,17 @@ void func_EBFBE0_8018D2B8(s32 arg0) { Matrix_SetGfxMtx(&gMasterDisp); - temp.rightState = temp.leftState = 2; - temp.unk_18 = temp.unk_1C = temp.unk_20 = temp.unk_24 = temp.unk_04 = temp.unk_08 = temp.unk_0C = temp.unk_10 = - temp.unk_28 = 0.0f; + wings.rightState = wings.leftState = WINGSTATE_INTACT; + wings.unk_18 = wings.unk_1C = wings.unk_20 = wings.unk_24 = wings.unk_04 = wings.unk_08 = wings.unk_0C = + wings.unk_10 = wings.unk_28 = 0.0f; - temp.unk_14 = D_EBFBE0_801B84E8[arg0].unk_28; - temp.unk_2C = D_EBFBE0_801B84E8[arg0].unk_34; - temp.unk_30 = D_EBFBE0_801B84E8[arg0].unk_2C; - temp.unk_34 = D_EBFBE0_801B84E8[arg0].unk_30; - temp.unk_38 = D_EBFBE0_801B84E8[arg0].unk_24; + wings.unk_14 = D_EBFBE0_801B84E8[arg0].unk_28; + wings.unk_2C = D_EBFBE0_801B84E8[arg0].unk_34; + wings.unk_30 = D_EBFBE0_801B84E8[arg0].unk_2C; + wings.unk_34 = D_EBFBE0_801B84E8[arg0].unk_30; + wings.unk_38 = D_EBFBE0_801B84E8[arg0].unk_24; - func_80053658(&temp); + func_80053658(&wings); func_8005F1EC(&D_EBFBE0_801B84E8[arg0].unk_50); @@ -2735,7 +2735,7 @@ void func_EBFBE0_8018F8E4(void) { static f32 D_EBFBE0_801AE474 = 70.0f; static f32 D_EBFBE0_801AE478 = 172.0f; - if (gStopInputTimer == 0) { + if (gControllerLock == 0) { temp2 = 188.0f; if ((s32) Math_SmoothStepToF(&D_EBFBE0_801B7BC8, D_EBFBE0_801B7BCC, 0.5f, 100.0f, 1.0f) == 0.0f) { @@ -3081,11 +3081,11 @@ void func_EBFBE0_80190E64(void) { void func_EBFBE0_80190EA4(void) { switch (D_EBFBE0_801B8280) { case 0: - if (gChangedInput[D_80177AF8].button & 0xD00F) { // START, A, B, C-left, C-Down, C-Up, C-Right + 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); D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8280 = 1; - gStopInputTimer = 0x1E; + gControllerLock = 0x1E; } break; @@ -3099,7 +3099,7 @@ void func_EBFBE0_80190EA4(void) { D_EBFBE0_801B82C0 = 0; D_80177898 = 0; D_EBFBE0_801B82C4 = 0; - gStopInputTimer = 30; + gControllerLock = 30; D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8280 = 0; } @@ -3108,11 +3108,11 @@ void func_EBFBE0_80190EA4(void) { } void func_EBFBE0_80190FD0(void) { - if (gStopInputTimer == 0) { + if (gControllerLock == 0) { switch (D_EBFBE0_801B8280) { case 0: - if (((gChangedInput[D_80177AF8].button & START_BUTTON) || - (gChangedInput[D_80177AF8].button & A_BUTTON)) && + if (((gControllerPress[D_80177AF8].button & START_BUTTON) || + (gControllerPress[D_80177AF8].button & A_BUTTON)) && (D_EBFBE0_801B8280 == 0)) { func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_800182F4(0x101E00FF); @@ -3133,7 +3133,7 @@ void func_EBFBE0_80190FD0(void) { D_80178410 = 0; D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8284 = 0; - gStopInputTimer = 3; + gControllerLock = 3; } break; } @@ -3145,13 +3145,13 @@ void func_EBFBE0_8019111C(void) { f32 y; if ((D_EBFBE0_801B82B0 == 0) && (D_EBFBE0_801B9040 == 0) && - ((gChangedInput[D_80177AF8].stick_x != 0) || (gChangedInput[D_80177AF8].stick_y != 0))) { + ((gControllerPress[D_80177AF8].stick_x != 0) || (gControllerPress[D_80177AF8].stick_y != 0))) { D_EBFBE0_801B9040 = 1; D_EBFBE0_801B86A4 = 0; } - x = gChangedInput[D_80177AF8].stick_x; - y = gChangedInput[D_80177AF8].stick_y; + x = gControllerPress[D_80177AF8].stick_x; + y = gControllerPress[D_80177AF8].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 +3162,8 @@ void func_EBFBE0_8019111C(void) { } } - if ((D_EBFBE0_801B9040 != 0) && (gChangedInput[D_80177AF8].stick_x == 0) && - (gChangedInput[D_80177AF8].stick_y == 0)) { + if ((D_EBFBE0_801B9040 != 0) && (gControllerPress[D_80177AF8].stick_x == 0) && + (gControllerPress[D_80177AF8].stick_y == 0)) { D_EBFBE0_801B86A4++; } else { D_EBFBE0_801B86A4 = 0;