Making the name changes discussed (#54)

* stuff

* three whole files

* format

* format and such

* a switch in time

* merge prep

* nintendo switch

* format

* the great switch statement of our time

* 43AC0 matched

* stuff

* Enums everywhere

* oh god the switch

* knakyo

* new headers

* format

* fox

* everyone hates recursion

* format

* one more thing

* one more one more thing

* renames

* matches

* matrix scale why

* names and such

* cleanup

* name back

* it just keeps going

* they don't give up

* splits

* merge going poorly

* I object

* more names
This commit is contained in:
petrie911 2023-12-20 13:32:50 -06:00 committed by GitHub
parent cd865be215
commit 11197f6c28
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
33 changed files with 3179 additions and 2866 deletions

View File

@ -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 *);

View File

@ -20,6 +20,7 @@
#include "sf64object.h"
#include "sf64level.h"
#include "sf64thread.h"
#include "sf64player.h"
#include "gfx.h"
#endif // GLOBAL_H

View File

@ -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[];

View File

@ -83,4 +83,10 @@ typedef enum {
LEVEL_VERSUS,
} LevelId;
typedef enum {
VSTAGE_CORNERIA,
VSTAGE_KATINA,
VSTAGE_SECTOR_Z,
} VsStage;
#endif

View File

@ -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

245
include/sf64player.h Normal file
View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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,

View File

@ -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) {

File diff suppressed because it is too large Load Diff

View File

@ -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;

View File

@ -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();

File diff suppressed because it is too large Load Diff

View File

@ -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 {

File diff suppressed because it is too large Load Diff

View File

@ -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;
}
}

File diff suppressed because it is too large Load Diff

View File

@ -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;

View File

@ -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;
}
}

View File

@ -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)));

View File

@ -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")

View File

@ -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) {

View File

@ -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")

View File

@ -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;
}
}

View File

@ -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;
}
}
}

View File

@ -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();
}
{

View File

@ -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:

View File

@ -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;
}
}

View File

@ -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;