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 "fox_option.h"
#include "sf64object.h" #include "sf64object.h"
#include "sf64thread.h" #include "sf64thread.h"
#include "sf64player.h"
s32 Lib_vsPrintf(char* dst, const char* fmt, va_list args); s32 Lib_vsPrintf(char* dst, const char* fmt, va_list args);
void Lib_Perspective(Gfx** dList); void Lib_Perspective(Gfx** dList);
@ -105,7 +106,7 @@ void func_800319AC(Object_2F4*);
void func_80035448(Object_2F4*); void func_80035448(Object_2F4*);
//sf_36930 //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_800365E4(f32, f32, f32, f32, f32, f32, f32, f32, f32, s32, s32);
void func_8003D9B8(); void func_8003D9B8();
void func_8003DA0C(void); void func_8003DA0C(void);
@ -162,8 +163,8 @@ void func_80059BBC(Object_80*);
void func_80059BF0(Object_2F4*); void func_80059BF0(Object_2F4*);
void func_80059C34(Object_4C*); void func_80059C34(Object_4C*);
void func_80059C40(Object_4C*); void func_80059C40(Object_4C*);
void func_80059F68(Object_6C*); void func_80059F68(Item*);
void func_80059FDC(Object_6C*); void func_80059FDC(Item*);
void func_8005A094(Object_2F4*); void func_8005A094(Object_2F4*);
void func_8005ADAC(Object_2F4*); void func_8005ADAC(Object_2F4*);
void func_8005B1E8(Object_2F4*, s32); void func_8005B1E8(Object_2F4*, s32);
@ -174,13 +175,13 @@ void func_8005B7CC(Object_2F4*);
void func_8005B848(Object_2F4*); void func_8005B848(Object_2F4*);
void func_8005B9A4(Object_2F4*); void func_8005B9A4(Object_2F4*);
void func_8005BA30(Object_2F4*); void func_8005BA30(Object_2F4*);
void func_8005C5F0(Object_6C*); void func_8005C5F0(Item*);
void func_8005C900(Object_6C*); void func_8005C900(Item*);
void func_8005C9C0(Object_6C*); void func_8005C9C0(Item*);
void func_8005CA80(Object_6C*); void func_8005CA80(Item*);
void func_8005CB44(Object_6C*); void func_8005CB44(Item*);
void func_8005CC9C(Object_6C*); void func_8005CC9C(Item*);
void func_8005CDA8(Object_6C*); void func_8005CDA8(Item*);
void func_8005F030(Vec3f*); void func_8005F030(Vec3f*);
void func_8005F0E8(Vec3f*, Vec3f*); void func_8005F0E8(Vec3f*, Vec3f*);
void func_8005F1EC(Vec3f*); void func_8005F1EC(Vec3f*);
@ -195,12 +196,12 @@ void func_80060968(void);
void func_80060F30(Vec3f* , u32 , s32 ); void func_80060F30(Vec3f* , u32 , s32 );
void Object_Kill(Object*, Vec3f*); void Object_Kill(Object*, Vec3f*);
s32 func_80060FE4(Vec3f*, f32); s32 func_80060FE4(Vec3f*, f32);
void Object_Set1C(ObjectStruct_1C*, u32); void Object_SetInfo(ObjectInfo*, u32);
void Object_80_Initialize(Object_80*); void Object_80_Initialize(Object_80*);
void Object_4C_Initialize(Object_4C*); void Object_4C_Initialize(Object_4C*);
void Object_2F4_Initialize(Object_2F4*); void Object_2F4_Initialize(Object_2F4*);
void Object_408_Initialize(Object_408*); void Object_408_Initialize(Object_408*);
void Object_6C_Initialize(Object_6C*); void Item_Initialize(Item*);
void Object_8C_Initialize(Object_8C*); void Object_8C_Initialize(Object_8C*);
void func_80061B68(void); void func_80061B68(void);
void func_80061CD0(void); void func_80061CD0(void);
@ -225,23 +226,23 @@ void func_80066C00(Object_80*);
void func_80066D5C(Object_80*); void func_80066D5C(Object_80*);
void func_80066E8C(Object_4C*); void func_80066E8C(Object_4C*);
void func_80066EA8(Object_80*); void func_80066EA8(Object_80*);
void func_80066EF0(Object_6C *); void func_80066EF0(Item *);
void func_800671D0(Object_6C *); void func_800671D0(Item *);
void func_800674B4(f32, f32, f32, f32, f32, f32, f32, f32); void func_800674B4(f32, f32, f32, f32, f32, f32, f32, f32);
void func_8006753C(Object_2F4*); void func_8006753C(Object_2F4*);
void func_80067874(Object_2F4*); void func_80067874(Object_2F4*);
void func_80067A40(void); void func_80067A40(void);
void func_80067B1C(Object_6C*); void func_80067B1C(Item*);
void func_80067BEC(Object_6C*); void func_80067BEC(Item*);
void func_80067F6C(Object_6C*); void func_80067F6C(Item*);
void func_80068020(Object_6C*); void func_80068020(Item*);
void func_800685D8(Object_6C*); void func_800685D8(Item*);
void func_800685F8(Object_6C*); void func_800685F8(Item*);
void func_80068618(Object_6C*); void func_80068618(Item*);
void func_80068688(Object_6C*); void func_80068688(Item*);
void func_80068914(Object_6C*); void func_80068914(Item*);
void func_80068C48(Object_6C*); void func_80068C48(Item*);
void func_80068C88(Object_6C*); void func_80068C88(Item*);
void func_80068FE0(Object_4C*); void func_80068FE0(Object_4C*);
void func_800690D0(s32, s32); void func_800690D0(s32, s32);
void func_80069924(Object_8C *); void func_80069924(Object_8C *);
@ -249,12 +250,12 @@ void func_800693E8(Object_2F4 *);
void func_80069658(Object_408 *); void func_80069658(Object_408 *);
void func_800696F8(Object_80 *); void func_800696F8(Object_80 *);
void func_80069858(Object_4C *); void func_80069858(Object_4C *);
void func_80069A10(Object_6C *); void func_80069A10(Item *);
void Object_2F4_Update(Object_2F4*); void Object_2F4_Update(Object_2F4*);
void Object_408_Update(Object_408 *); void Object_408_Update(Object_408 *);
void Object_80_Update(Object_80 *); void Object_80_Update(Object_80 *);
void Object_4C_Update(Object_4C *); void Object_4C_Update(Object_4C *);
void Object_6C_Update(Object_6C *); void Item_Update(Item *);
void Object_8C_Update(Object_8C *); void Object_8C_Update(Object_8C *);
void func_8006A06C(UnkEntity30*); void func_8006A06C(UnkEntity30*);
void func_8006A38C(void); void func_8006A38C(void);
@ -478,7 +479,7 @@ void func_800A3CA0(void);
// fox_play // fox_play
s32 Play_CheckMedalStatus(u16); s32 Play_CheckMedalStatus(u16);
s32 Play_GetMaxHealth(void); s32 Play_GetMaxShields(void);
void func_800A5844(void); void func_800A5844(void);
void func_800A5D6C(void); void func_800A5D6C(void);
void func_800A5FA0(Vec3f* , u32 , s32 ); void func_800A5FA0(Vec3f* , u32 , s32 );
@ -486,10 +487,10 @@ void func_800A6148(void);
void func_800A69F8(s32 , f32 , f32 , f32 ); void func_800A69F8(s32 , f32 , f32 , f32 );
void func_800A6CD0(Player *, s32, s32); void func_800A6CD0(Player *, s32, s32);
bool func_800A73E4(f32* , s32* , f32 posX, f32 posY, f32 posZ); 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_800A8BA4(Player* player);
void func_800AA800(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_800B0F50(Player *);
void func_800B44C4(Player *); void func_800B44C4(Player *);
void func_800B5FBC(Player *, s32 , s32 ); 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_800B6F50(f32, f32, f32, f32, f32, f32);
void func_800B7184(Player *, s32); void func_800B7184(Player *, s32);
void func_800B73E0(Player *); void func_800B73E0(Player *);
void func_800B852C(s32 , Object_6C *); void func_800B852C(s32 , Item *);
void func_800B86CC(void); void func_800B86CC(void);
// fox_radio // fox_radio
@ -528,6 +529,7 @@ void func_DF4260_8018753C(Object_80*);
void func_DF4260_801878D8(Object_408 *); void func_DF4260_801878D8(Object_408 *);
void func_DF4260_8018B0B4(Object_2F4 *); void func_DF4260_8018B0B4(Object_2F4 *);
void func_DF4260_8018BE7C(Object_408 *); void func_DF4260_8018BE7C(Object_408 *);
void func_DF4260_801924A8(Object_80* );
void func_DF4260_8019250C(Object_2F4 *); void func_DF4260_8019250C(Object_2F4 *);
void func_DF4260_80192CB0(Object_2F4 *); void func_DF4260_80192CB0(Object_2F4 *);
void func_DF4260_80192EA4(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_801935CC(Object_408 *);
void func_DF4260_80198310(Object_408 *); void func_DF4260_80198310(Object_408 *);
void func_DF4260_801988E0(void); void func_DF4260_801988E0(void);
void func_DF4260_8018ED78(Object_408*);
void func_E08400_80187B08(Object_2F4 *); void func_E08400_80187B08(Object_2F4 *);
void func_E08400_80188A40(Object_408 *); void func_E08400_80188A40(Object_408 *);
void func_E08400_8018CCF8(Object_2F4 *); void func_E08400_8018CCF8(Object_2F4 *);
void func_E16C50_801A9824(void); void func_E16C50_80191DB0(Object_2F4*);
void func_E16C50_801AC8A8(f32, f32, f32, f32, s32); void func_E16C50_8018ED78(Player*);
void func_E16C50_8019E9F4(f32, f32, f32, f32, f32, f32, f32, s32);
void func_E16C50_80187754(Object_408 *); void func_E16C50_80187754(Object_408 *);
void func_E16C50_801900FC(Vec3f*, Vec3f*, f32, f32, f32, s32, f32, s32, s32); 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_80190F08(Object_2F4 *);
void func_E16C50_801915A4(Object_2F4 *); void func_E16C50_801915A4(Object_2F4 *);
void func_E16C50_80191BB8(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_8019B810(Object_2F4 *);
void func_E16C50_8019C200(Object_2F4 *); void func_E16C50_8019C200(Object_2F4 *);
void func_E16C50_8019D060(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_801AA20C(void);
void func_E16C50_801AC8A8(f32, f32, f32, f32, s32);
void func_E16C50_801ACBB4(void); void func_E16C50_801ACBB4(void);
void func_E16C50_801AD688(Object_2F4 *); void func_E16C50_801AD688(Object_2F4 *);
void func_E16C50_801AE3AC(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_801B7AF0(Object_2F4 *);
void func_E16C50_801BA57C(Object_2F4 *); void func_E16C50_801BA57C(Object_2F4 *);
void func_E16C50_801BB26C(Object_2F4 *); void func_E16C50_801BB26C(Object_2F4 *);
void func_E16C50_80190430(Object_2F4 *);
void func_E51970_80193CA4(Object_408 *); void func_E51970_80193CA4(Object_408 *);
void func_E51970_80198594(Object_408 *); void func_E51970_80198594(Object_408 *);

View File

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

View File

@ -67,10 +67,10 @@ extern s32 D_801617FC;
extern s32 gHitCount; extern s32 gHitCount;
extern s32 D_80177838; extern s32 D_80177838;
extern s32 D_80177854; extern s32 D_80177854;
extern s32 D_80177880; extern s32 gAllRangeMode;
extern s32 gTeamHealth[]; extern s32 gTeamShields[];
extern s32 D_801778BC; extern s32 D_801778BC;
extern s32 D_801778E8; extern s32 gVersusMode;
extern s32 D_80177B48; extern s32 D_80177B48;
extern s32 D_80177B50[]; extern s32 D_80177B50[];
extern s32 D_80177B70[]; extern s32 D_80177B70[];

View File

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

View File

@ -45,40 +45,19 @@ typedef struct {
}; };
/* 0x00 */ u8 drawType; /* 0x00 */ u8 drawType;
/* 0x08 */ ObjectFunc action; // argument must have object type. /* 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 /* 0x10 */ f32 unk_10; // z coordinate of something
/* 0x14 */ s16 unk_14; // can be -1, 0, 1 /* 0x14 */ s16 unk_14; // can be -1, 0, 1
/* 0x16 */ s16 unk_16; // can be 0, 1, 2 /* 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 /* 0x19 */ u8 unk_19; // can be 0, 1, 2
/* 0x1C */ f32 unk_1C; // y offset of something /* 0x1C */ f32 unk_1C; // y offset of something
/* 0x20 */ u8 bonus; // increment for something /* 0x20 */ u8 bonus;
} ObjectStruct_1C; // size = 0x24 } ObjectInfo; // size = 0x24
typedef struct { typedef struct {
/* 0x00 */ Object obj; /* 0x00 */ Object obj;
/* 0x1C */ s32 index; /* 0x1C */ ObjectInfo info;
/* 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;
/* 0x40 */ char unk40[0x8]; /* 0x40 */ char unk40[0x8];
/* 0x48 */ Vec3f sfxPos; /* 0x48 */ Vec3f sfxPos;
/* 0x54 */ f32 unk_54; /* 0x54 */ f32 unk_54;
@ -86,7 +65,7 @@ typedef struct {
typedef struct { typedef struct {
/* 0x00 */ Object obj; /* 0x00 */ Object obj;
/* 0x1C */ ObjectStruct_1C unk_1C; /* 0x1C */ ObjectInfo info;
/* 0x40 */ s32 index; /* 0x40 */ s32 index;
/* 0x44 */ s32 unk_44; /* 0x44 */ s32 unk_44;
/* 0x48 */ s32 unk_48; /* 0x48 */ s32 unk_48;
@ -103,17 +82,17 @@ typedef struct {
typedef struct { typedef struct {
/* 0x00 */ Object obj; /* 0x00 */ Object obj;
/* 0x1C */ ObjectStruct_1C unk_1C; /* 0x1C */ ObjectInfo info;
/* 0x40 */ s32 index; /* 0x40 */ s32 index;
/* 0x44 */ char pad44[1]; /* 0x44 */ char pad44[1];
/* 0x45 */ u8 unk_45; // could be short loaded as u8 /* 0x45 */ u8 unk_45;
/* 0x46 */ s8 unk_46; /* 0x46 */ s8 unk_46;
/* 0x48 */ s32 unk_48; /* 0x48 */ s32 unk_48;
} Object_4C; // size = 0x4C } Object_4C; // size = 0x4C
typedef struct { typedef struct {
/* 0x00 */ Object obj; /* 0x00 */ Object obj;
/* 0x1C */ ObjectStruct_1C unk_1C; /* 0x1C */ ObjectInfo info;
/* 0x40 */ s32 index; /* 0x40 */ s32 index;
/* 0x44 */ s16 unk_44; /* 0x44 */ s16 unk_44;
/* 0x46 */ u8 unk_46; /* 0x46 */ u8 unk_46;
@ -126,11 +105,11 @@ typedef struct {
/* 0x58 */ f32 unk_58; /* 0x58 */ f32 unk_58;
/* 0x5C */ Vec3f sfxPos; /* 0x5C */ Vec3f sfxPos;
/* 0x68 */ f32 unk_68; /* 0x68 */ f32 unk_68;
} Object_6C; // size 0x6C } Item; // size 0x6C
typedef struct { typedef struct {
/* 0x00 */ Object obj; /* 0x00 */ Object obj;
/* 0x1C */ ObjectStruct_1C unk_1C; /* 0x1C */ ObjectInfo info;
/* 0x40 */ s32 index; /* 0x40 */ s32 index;
/* 0x44 */ s16 unk_44; /* 0x44 */ s16 unk_44;
/* 0x46 */ s16 unk_46; /* 0x46 */ s16 unk_46;
@ -153,8 +132,8 @@ typedef struct {
typedef struct { typedef struct {
/* 0x000 */ Object obj; /* 0x000 */ Object obj;
/* 0x01C */ ObjectStruct_1C unk_01C; /* 0x01C */ ObjectInfo info;
/* 0x040 */ s32 unk_040; /* 0x040 */ s32 index;
/* 0x044 */ char unk_44[0xA]; /* 0x044 */ char unk_44[0xA];
/* 0x04E */ s16 unk_04E; /* 0x04E */ s16 unk_04E;
/* 0x050 */ s16 unk_050; /* 0x050 */ s16 unk_050;
@ -217,8 +196,8 @@ typedef struct {
typedef struct { typedef struct {
/* 0x000 */ Object obj; /* 0x000 */ Object obj;
/* 0x01C */ ObjectStruct_1C unk_01C; /* 0x01C */ ObjectInfo info;
/* 0x040 */ s32 unk_040; /* 0x040 */ s32 index;
/* 0x044 */ u8 unk_044; /* 0x044 */ u8 unk_044;
/* 0x046 */ s16 unk_046; /* 0x046 */ s16 unk_046;
/* 0x048 */ s16 unk_048; /* 0x048 */ s16 unk_048;
@ -307,418 +286,418 @@ typedef struct {
} Object_2F4; // size = 0x2F4 } Object_2F4; // size = 0x2F4
typedef enum{ typedef enum{
/* -1*/ OBJECT_INVALID=-1, /* -1 */ OBJ_INVALID=-1,
/* 0 */ OBJECT_0, /* 0 */ OBJ_80_0,
/* 1 */ OBJECT_1, /* 1 */ OBJ_80_1,
/* 2 */ OBJECT_2, /* 2 */ OBJ_80_2,
/* 3 */ OBJECT_3, /* 3 */ OBJ_80_3,
/* 4 */ OBJECT_4, /* 4 */ OBJ_80_4,
/* 5 */ OBJECT_5, /* 5 */ OBJ_80_5,
/* 6 */ OBJECT_6, /* 6 */ OBJ_80_6,
/* 7 */ OBJECT_7, /* 7 */ OBJ_80_7,
/* 8 */ OBJECT_8, /* 8 */ OBJ_80_8,
/* 9 */ OBJECT_9, /* 9 */ OBJ_80_9,
/* 10 */ OBJECT_10, /* 10 */ OBJ_80_10,
/* 11 */ OBJECT_11, /* 11 */ OBJ_80_11,
/* 12 */ OBJECT_12, /* 12 */ OBJ_80_12,
/* 13 */ OBJECT_13, /* 13 */ OBJ_80_13,
/* 14 */ OBJECT_14, /* 14 */ OBJ_80_14,
/* 15 */ OBJECT_15, /* 15 */ OBJ_80_15,
/* 16 */ OBJECT_16, /* 16 */ OBJ_80_16,
/* 17 */ OBJECT_17, /* 17 */ OBJ_80_17,
/* 18 */ OBJECT_18, /* 18 */ OBJ_80_18,
/* 19 */ OBJECT_19, /* 19 */ OBJ_80_19,
/* 20 */ OBJECT_20, /* 20 */ OBJ_80_20,
/* 21 */ OBJECT_21, /* 21 */ OBJ_80_21,
/* 22 */ OBJECT_22, /* 22 */ OBJ_80_22,
/* 23 */ OBJECT_23, /* 23 */ OBJ_80_23,
/* 24 */ OBJECT_24, /* 24 */ OBJ_80_24,
/* 25 */ OBJECT_25, /* 25 */ OBJ_80_25,
/* 26 */ OBJECT_26, /* 26 */ OBJ_80_26,
/* 27 */ OBJECT_27, /* 27 */ OBJ_80_27,
/* 28 */ OBJECT_28, /* 28 */ OBJ_80_28,
/* 29 */ OBJECT_29, /* 29 */ OBJ_80_29,
/* 30 */ OBJECT_30, /* 30 */ OBJ_80_30,
/* 31 */ OBJECT_31, /* 31 */ OBJ_80_31,
/* 32 */ OBJECT_32, /* 32 */ OBJ_80_32,
/* 33 */ OBJECT_33, /* 33 */ OBJ_80_33,
/* 34 */ OBJECT_34, /* 34 */ OBJ_80_34,
/* 35 */ OBJECT_35, /* 35 */ OBJ_80_35,
/* 36 */ OBJECT_36, /* 36 */ OBJ_80_36,
/* 37 */ OBJECT_37, /* 37 */ OBJ_80_37,
/* 38 */ OBJECT_38, /* 38 */ OBJ_80_38,
/* 39 */ OBJECT_39, /* 39 */ OBJ_80_39,
/* 40 */ OBJECT_40, /* 40 */ OBJ_80_40,
/* 41 */ OBJECT_41, /* 41 */ OBJ_80_41,
/* 42 */ OBJECT_42, /* 42 */ OBJ_80_42,
/* 43 */ OBJECT_43, /* 43 */ OBJ_80_43,
/* 44 */ OBJECT_44, /* 44 */ OBJ_80_44,
/* 45 */ OBJECT_45, /* 45 */ OBJ_80_45,
/* 46 */ OBJECT_46, /* 46 */ OBJ_80_46,
/* 47 */ OBJECT_47, /* 47 */ OBJ_80_47,
/* 48 */ OBJECT_48, /* 48 */ OBJ_80_48,
/* 49 */ OBJECT_49, /* 49 */ OBJ_80_49,
/* 50 */ OBJECT_50, /* 50 */ OBJ_80_50,
/* 51 */ OBJECT_51, /* 51 */ OBJ_80_51,
/* 52 */ OBJECT_52, /* 52 */ OBJ_80_52,
/* 53 */ OBJECT_53, /* 53 */ OBJ_80_53,
/* 54 */ OBJECT_54, /* 54 */ OBJ_80_54,
/* 55 */ OBJECT_55, /* 55 */ OBJ_80_55,
/* 56 */ OBJECT_56, /* 56 */ OBJ_80_56,
/* 57 */ OBJECT_57, /* 57 */ OBJ_80_57,
/* 58 */ OBJECT_58, /* 58 */ OBJ_80_58,
/* 59 */ OBJECT_59, /* 59 */ OBJ_80_59,
/* 60 */ OBJECT_60, /* 60 */ OBJ_80_60,
/* 61 */ OBJECT_61, /* 61 */ OBJ_80_61,
/* 62 */ OBJECT_62, /* 62 */ OBJ_80_62,
/* 63 */ OBJECT_63, /* 63 */ OBJ_80_63,
/* 64 */ OBJECT_64, /* 64 */ OBJ_80_64,
/* 65 */ OBJECT_65, /* 65 */ OBJ_80_65,
/* 66 */ OBJECT_66, /* 66 */ OBJ_80_66,
/* 67 */ OBJECT_67, /* 67 */ OBJ_80_67,
/* 68 */ OBJECT_68, /* 68 */ OBJ_80_68,
/* 69 */ OBJECT_69, /* 69 */ OBJ_80_69,
/* 70 */ OBJECT_70, /* 70 */ OBJ_80_70,
/* 71 */ OBJECT_71, /* 71 */ OBJ_80_71,
/* 72 */ OBJECT_72, /* 72 */ OBJ_80_72,
/* 73 */ OBJECT_73, /* 73 */ OBJ_80_73,
/* 74 */ OBJECT_74, /* 74 */ OBJ_80_74,
/* 75 */ OBJECT_75, /* 75 */ OBJ_80_75,
/* 76 */ OBJECT_76, /* 76 */ OBJ_80_76,
/* 77 */ OBJECT_77, /* 77 */ OBJ_80_77,
/* 78 */ OBJECT_78, /* 78 */ OBJ_80_78,
/* 79 */ OBJECT_79, /* 79 */ OBJ_80_79,
/* 80 */ OBJECT_80, /* 80 */ OBJ_80_80,
/* 81 */ OBJECT_81, /* 81 */ OBJ_80_81,
/* 82 */ OBJECT_82, /* 82 */ OBJ_80_82,
/* 83 */ OBJECT_83, /* 83 */ OBJ_80_83,
/* 84 */ OBJECT_84, /* 84 */ OBJ_80_84,
/* 85 */ OBJECT_85, /* 85 */ OBJ_80_85,
/* 86 */ OBJECT_86, /* 86 */ OBJ_80_86,
/* 87 */ OBJECT_87, /* 87 */ OBJ_80_87,
/* 88 */ OBJECT_88, /* 88 */ OBJ_80_88,
/* 89 */ OBJECT_89, /* 89 */ OBJ_80_89,
/* 90 */ OBJECT_90, /* 90 */ OBJ_80_90,
/* 91 */ OBJECT_91, /* 91 */ OBJ_80_91,
/* 92 */ OBJECT_92, /* 92 */ OBJ_80_92,
/* 93 */ OBJECT_93, /* 93 */ OBJ_80_93,
/* 94 */ OBJECT_94, /* 94 */ OBJ_80_94,
/* 95 */ OBJECT_95, /* 95 */ OBJ_80_95,
/* 96 */ OBJECT_96, /* 96 */ OBJ_80_96,
/* 97 */ OBJECT_97, /* 97 */ OBJ_80_97,
/* 98 */ OBJECT_98, /* 98 */ OBJ_80_98,
/* 99 */ OBJECT_99, /* 99 */ OBJ_80_99,
/* 100 */ OBJECT_100, /* 100 */ OBJ_80_100,
/* 101 */ OBJECT_101, /* 101 */ OBJ_80_101,
/* 102 */ OBJECT_102, /* 102 */ OBJ_80_102,
/* 103 */ OBJECT_103, /* 103 */ OBJ_80_103,
/* 104 */ OBJECT_104, /* 104 */ OBJ_80_104,
/* 105 */ OBJECT_105, /* 105 */ OBJ_80_105,
/* 106 */ OBJECT_106, /* 106 */ OBJ_80_106,
/* 107 */ OBJECT_107, /* 107 */ OBJ_80_107,
/* 108 */ OBJECT_108, /* 108 */ OBJ_80_108,
/* 109 */ OBJECT_109, /* 109 */ OBJ_80_109,
/* 110 */ OBJECT_110, /* 110 */ OBJ_80_110,
/* 111 */ OBJECT_111, /* 111 */ OBJ_80_111,
/* 112 */ OBJECT_112, /* 112 */ OBJ_80_112,
/* 113 */ OBJECT_113, /* 113 */ OBJ_80_113,
/* 114 */ OBJECT_114, /* 114 */ OBJ_80_114,
/* 115 */ OBJECT_115, /* 115 */ OBJ_80_115,
/* 116 */ OBJECT_116, /* 116 */ OBJ_80_116,
/* 117 */ OBJECT_117, /* 117 */ OBJ_80_117,
/* 118 */ OBJECT_118, /* 118 */ OBJ_80_118,
/* 119 */ OBJECT_119, /* 119 */ OBJ_80_119,
/* 120 */ OBJECT_120, /* 120 */ OBJ_80_120,
/* 121 */ OBJECT_121, /* 121 */ OBJ_80_121,
/* 122 */ OBJECT_122, /* 122 */ OBJ_80_122,
/* 123 */ OBJECT_123, /* 123 */ OBJ_80_123,
/* 124 */ OBJECT_124, /* 124 */ OBJ_80_124,
/* 125 */ OBJECT_125, /* 125 */ OBJ_80_125,
/* 126 */ OBJECT_126, /* 126 */ OBJ_80_126,
/* 127 */ OBJECT_127, /* 127 */ OBJ_80_127,
/* 128 */ OBJECT_128, /* 128 */ OBJ_80_128,
/* 129 */ OBJECT_129, /* 129 */ OBJ_80_129,
/* 130 */ OBJECT_130, /* 130 */ OBJ_80_130,
/* 131 */ OBJECT_131, /* 131 */ OBJ_80_131,
/* 132 */ OBJECT_132, /* 132 */ OBJ_80_132,
/* 133 */ OBJECT_133, /* 133 */ OBJ_80_133,
/* 134 */ OBJECT_134, /* 134 */ OBJ_80_134,
/* 135 */ OBJECT_135, /* 135 */ OBJ_80_135,
/* 136 */ OBJECT_136, /* 136 */ OBJ_80_136,
/* 137 */ OBJECT_137, /* 137 */ OBJ_80_137,
/* 138 */ OBJECT_138, /* 138 */ OBJ_80_138,
/* 139 */ OBJECT_139, /* 139 */ OBJ_80_139,
/* 140 */ OBJECT_140, /* 140 */ OBJ_80_140,
/* 141 */ OBJECT_141, /* 141 */ OBJ_80_141,
/* 142 */ OBJECT_142, /* 142 */ OBJ_80_142,
/* 143 */ OBJECT_143, /* 143 */ OBJ_80_143,
/* 144 */ OBJECT_144, /* 144 */ OBJ_80_144,
/* 145 */ OBJECT_145, /* 145 */ OBJ_80_145,
/* 146 */ OBJECT_146, /* 146 */ OBJ_80_146,
/* 147 */ OBJECT_147, /* 147 */ OBJ_80_147,
/* 148 */ OBJECT_148, /* 148 */ OBJ_80_148,
/* 149 */ OBJECT_149, /* 149 */ OBJ_80_149,
/* 150 */ OBJECT_150, /* 150 */ OBJ_80_150,
/* 151 */ OBJECT_151, /* 151 */ OBJ_80_151,
/* 152 */ OBJECT_152, /* 152 */ OBJ_80_152,
/* 153 */ OBJECT_153, /* 153 */ OBJ_80_153,
/* 154 */ OBJECT_154, /* 154 */ OBJ_80_154,
/* 155 */ OBJECT_155, /* 155 */ OBJ_80_155,
/* 156 */ OBJECT_156, /* 156 */ OBJ_80_156,
/* 157 */ OBJECT_157, /* 157 */ OBJ_80_157,
/* 158 */ OBJECT_158, /* 158 */ OBJ_80_158,
/* 159 */ OBJECT_159, /* 159 */ OBJ_80_159,
/* 160 */ OBJECT_160, /* 160 */ OBJ_80_160,
/* 161 */ OBJECT_161, // start of 4C /* 161 */ OBJ_4C_161,
/* 162 */ OBJECT_162, /* 162 */ OBJ_4C_162,
/* 163 */ OBJECT_163, /* 163 */ OBJ_4C_163,
/* 164 */ OBJECT_164, /* 164 */ OBJ_4C_164,
/* 165 */ OBJECT_165, /* 165 */ OBJ_4C_165,
/* 166 */ OBJECT_166, /* 166 */ OBJ_4C_166,
/* 167 */ OBJECT_167, /* 167 */ OBJ_4C_167,
/* 168 */ OBJECT_168, /* 168 */ OBJ_4C_168,
/* 169 */ OBJECT_169, /* 169 */ OBJ_4C_169,
/* 170 */ OBJECT_170, /* 170 */ OBJ_4C_170,
/* 171 */ OBJECT_171, /* 171 */ OBJ_4C_171,
/* 172 */ OBJECT_172, /* 172 */ OBJ_4C_172,
/* 173 */ OBJECT_173, /* 173 */ OBJ_4C_173,
/* 174 */ OBJECT_174, /* 174 */ OBJ_4C_174,
/* 175 */ OBJECT_175, /* 175 */ OBJ_4C_175,
/* 176 */ OBJECT_176, // start of 2F4 /* 176 */ OBJ_2F4_176,
/* 177 */ OBJECT_177, /* 177 */ OBJ_2F4_177,
/* 178 */ OBJECT_178, /* 178 */ OBJ_2F4_178,
/* 179 */ OBJECT_179, /* 179 */ OBJ_2F4_179,
/* 180 */ OBJECT_180, /* 180 */ OBJ_2F4_180,
/* 181 */ OBJECT_181, /* 181 */ OBJ_2F4_181,
/* 182 */ OBJECT_182, /* 182 */ OBJ_2F4_182,
/* 183 */ OBJECT_183, /* 183 */ OBJ_2F4_183,
/* 184 */ OBJECT_184, /* 184 */ OBJ_2F4_184,
/* 185 */ OBJECT_185, /* 185 */ OBJ_2F4_185,
/* 186 */ OBJECT_186, /* 186 */ OBJ_2F4_186,
/* 187 */ OBJECT_187, /* 187 */ OBJ_2F4_187,
/* 188 */ OBJECT_188, /* 188 */ OBJ_2F4_188,
/* 189 */ OBJECT_189, /* 189 */ OBJ_2F4_189,
/* 190 */ OBJECT_190, /* 190 */ OBJ_2F4_190,
/* 191 */ OBJECT_191, /* 191 */ OBJ_2F4_191,
/* 192 */ OBJECT_192, /* 192 */ OBJ_2F4_192,
/* 193 */ OBJECT_193, /* 193 */ OBJ_2F4_193,
/* 194 */ OBJECT_194, /* 194 */ OBJ_2F4_194,
/* 195 */ OBJECT_195, /* 195 */ OBJ_2F4_195,
/* 196 */ OBJECT_196, /* 196 */ OBJ_2F4_196,
/* 197 */ OBJECT_197, /* 197 */ OBJ_2F4_197,
/* 198 */ OBJECT_198, /* 198 */ OBJ_2F4_198,
/* 199 */ OBJECT_199, /* 199 */ OBJ_2F4_199,
/* 200 */ OBJECT_200, /* 200 */ OBJ_2F4_200,
/* 201 */ OBJECT_201, /* 201 */ OBJ_2F4_201,
/* 202 */ OBJECT_202, /* 202 */ OBJ_2F4_202,
/* 203 */ OBJECT_203, /* 203 */ OBJ_2F4_203,
/* 204 */ OBJECT_204, /* 204 */ OBJ_2F4_204,
/* 205 */ OBJECT_205, /* 205 */ OBJ_2F4_205,
/* 206 */ OBJECT_206, /* 206 */ OBJ_2F4_206,
/* 207 */ OBJECT_207, /* 207 */ OBJ_2F4_207,
/* 208 */ OBJECT_208, /* 208 */ OBJ_2F4_208,
/* 209 */ OBJECT_209, /* 209 */ OBJ_2F4_209,
/* 210 */ OBJECT_210, /* 210 */ OBJ_2F4_210,
/* 211 */ OBJECT_211, /* 211 */ OBJ_2F4_211,
/* 212 */ OBJECT_212, /* 212 */ OBJ_2F4_212,
/* 213 */ OBJECT_213, /* 213 */ OBJ_2F4_213,
/* 214 */ OBJECT_214, /* 214 */ OBJ_2F4_214,
/* 215 */ OBJECT_215, /* 215 */ OBJ_2F4_215,
/* 216 */ OBJECT_216, /* 216 */ OBJ_2F4_216,
/* 217 */ OBJECT_217, /* 217 */ OBJ_2F4_217,
/* 218 */ OBJECT_218, /* 218 */ OBJ_2F4_218,
/* 219 */ OBJECT_219, /* 219 */ OBJ_2F4_219,
/* 220 */ OBJECT_220, /* 220 */ OBJ_2F4_220,
/* 221 */ OBJECT_221, /* 221 */ OBJ_2F4_221,
/* 222 */ OBJECT_222, /* 222 */ OBJ_2F4_222,
/* 223 */ OBJECT_223, /* 223 */ OBJ_2F4_223,
/* 224 */ OBJECT_224, /* 224 */ OBJ_2F4_224,
/* 225 */ OBJECT_225, /* 225 */ OBJ_2F4_225,
/* 226 */ OBJECT_226, /* 226 */ OBJ_2F4_226,
/* 227 */ OBJECT_227, /* 227 */ OBJ_2F4_227,
/* 228 */ OBJECT_228, /* 228 */ OBJ_2F4_228,
/* 229 */ OBJECT_229, /* 229 */ OBJ_2F4_229,
/* 230 */ OBJECT_230, /* 230 */ OBJ_2F4_230,
/* 231 */ OBJECT_231, /* 231 */ OBJ_2F4_231,
/* 232 */ OBJECT_232, /* 232 */ OBJ_2F4_232,
/* 233 */ OBJECT_233, /* 233 */ OBJ_2F4_233,
/* 234 */ OBJECT_234, /* 234 */ OBJ_2F4_234,
/* 235 */ OBJECT_235, /* 235 */ OBJ_2F4_235,
/* 236 */ OBJECT_236, /* 236 */ OBJ_2F4_236,
/* 237 */ OBJECT_237, /* 237 */ OBJ_2F4_237,
/* 238 */ OBJECT_238, /* 238 */ OBJ_2F4_238,
/* 239 */ OBJECT_239, /* 239 */ OBJ_2F4_239,
/* 240 */ OBJECT_240, /* 240 */ OBJ_2F4_240,
/* 241 */ OBJECT_241, /* 241 */ OBJ_2F4_241,
/* 242 */ OBJECT_242, /* 242 */ OBJ_2F4_242,
/* 243 */ OBJECT_243, /* 243 */ OBJ_2F4_243,
/* 244 */ OBJECT_244, /* 244 */ OBJ_2F4_244,
/* 245 */ OBJECT_245, /* 245 */ OBJ_2F4_245,
/* 246 */ OBJECT_246, /* 246 */ OBJ_2F4_246,
/* 247 */ OBJECT_247, /* 247 */ OBJ_2F4_247,
/* 248 */ OBJECT_248, /* 248 */ OBJ_2F4_248,
/* 249 */ OBJECT_249, /* 249 */ OBJ_2F4_249,
/* 250 */ OBJECT_250, /* 250 */ OBJ_2F4_250,
/* 251 */ OBJECT_251, /* 251 */ OBJ_2F4_251,
/* 252 */ OBJECT_252, /* 252 */ OBJ_2F4_252,
/* 253 */ OBJECT_253, /* 253 */ OBJ_2F4_253,
/* 254 */ OBJECT_254, /* 254 */ OBJ_2F4_254,
/* 255 */ OBJECT_255, /* 255 */ OBJ_2F4_255,
/* 256 */ OBJECT_256, /* 256 */ OBJ_2F4_256,
/* 257 */ OBJECT_257, /* 257 */ OBJ_2F4_257,
/* 258 */ OBJECT_258, /* 258 */ OBJ_2F4_258,
/* 259 */ OBJECT_259, /* 259 */ OBJ_2F4_259,
/* 260 */ OBJECT_260, /* 260 */ OBJ_2F4_260,
/* 261 */ OBJECT_261, /* 261 */ OBJ_2F4_261,
/* 262 */ OBJECT_262, /* 262 */ OBJ_2F4_262,
/* 263 */ OBJECT_263, /* 263 */ OBJ_2F4_263,
/* 264 */ OBJECT_264, /* 264 */ OBJ_2F4_264,
/* 265 */ OBJECT_265, /* 265 */ OBJ_2F4_265,
/* 266 */ OBJECT_266, /* 266 */ OBJ_2F4_266,
/* 267 */ OBJECT_267, /* 267 */ OBJ_2F4_267,
/* 268 */ OBJECT_268, /* 268 */ OBJ_2F4_268,
/* 269 */ OBJECT_269, /* 269 */ OBJ_2F4_269,
/* 270 */ OBJECT_270, /* 270 */ OBJ_2F4_270,
/* 271 */ OBJECT_271, /* 271 */ OBJ_2F4_271,
/* 272 */ OBJECT_272, /* 272 */ OBJ_2F4_272,
/* 273 */ OBJECT_273, /* 273 */ OBJ_2F4_273,
/* 274 */ OBJECT_274, /* 274 */ OBJ_2F4_274,
/* 275 */ OBJECT_275, /* 275 */ OBJ_2F4_275,
/* 276 */ OBJECT_276, /* 276 */ OBJ_2F4_276,
/* 277 */ OBJECT_277, /* 277 */ OBJ_2F4_277,
/* 278 */ OBJECT_278, /* 278 */ OBJ_2F4_278,
/* 279 */ OBJECT_279, /* 279 */ OBJ_2F4_279,
/* 280 */ OBJECT_280, /* 280 */ OBJ_2F4_280,
/* 281 */ OBJECT_281, /* 281 */ OBJ_2F4_281,
/* 282 */ OBJECT_282, /* 282 */ OBJ_2F4_282,
/* 283 */ OBJECT_283, /* 283 */ OBJ_2F4_283,
/* 284 */ OBJECT_284, /* 284 */ OBJ_2F4_284,
/* 285 */ OBJECT_285, /* 285 */ OBJ_2F4_285,
/* 286 */ OBJECT_286, /* 286 */ OBJ_2F4_286,
/* 287 */ OBJECT_287, /* 287 */ OBJ_2F4_287,
/* 288 */ OBJECT_288, /* 288 */ OBJ_2F4_288,
/* 289 */ OBJECT_289, /* 289 */ OBJ_2F4_289,
/* 290 */ OBJECT_290, /* 290 */ OBJ_2F4_290,
/* 291 */ OBJECT_291, /* 291 */ OBJ_2F4_291,
/* 292 */ OBJECT_292, // start of 408 /* 292 */ OBJ_408_292,
/* 293 */ OBJECT_293, /* 293 */ OBJ_408_293,
/* 294 */ OBJECT_294, /* 294 */ OBJ_408_294,
/* 295 */ OBJECT_295, /* 295 */ OBJ_408_295,
/* 296 */ OBJECT_296, /* 296 */ OBJ_408_296,
/* 297 */ OBJECT_297, /* 297 */ OBJ_408_297,
/* 298 */ OBJECT_298, /* 298 */ OBJ_408_298,
/* 299 */ OBJECT_299, /* 299 */ OBJ_408_299,
/* 300 */ OBJECT_300, /* 300 */ OBJ_408_300,
/* 301 */ OBJECT_301, /* 301 */ OBJ_408_301,
/* 302 */ OBJECT_302, /* 302 */ OBJ_408_302,
/* 303 */ OBJECT_303, /* 303 */ OBJ_408_303,
/* 304 */ OBJECT_304, /* 304 */ OBJ_408_304,
/* 305 */ OBJECT_305, /* 305 */ OBJ_408_305,
/* 306 */ OBJECT_306, /* 306 */ OBJ_408_306,
/* 307 */ OBJECT_307, /* 307 */ OBJ_408_307,
/* 308 */ OBJECT_308, /* 308 */ OBJ_408_308,
/* 309 */ OBJECT_309, /* 309 */ OBJ_408_309,
/* 310 */ OBJECT_310, /* 310 */ OBJ_408_310,
/* 311 */ OBJECT_311, /* 311 */ OBJ_408_311,
/* 312 */ OBJECT_312, /* 312 */ OBJ_408_312,
/* 313 */ OBJECT_313, /* 313 */ OBJ_408_313,
/* 314 */ OBJECT_314, /* 314 */ OBJ_408_314,
/* 315 */ OBJECT_315, /* 315 */ OBJ_408_315,
/* 316 */ OBJECT_316, /* 316 */ OBJ_408_316,
/* 317 */ OBJECT_317, /* 317 */ OBJ_408_317,
/* 318 */ OBJECT_318, /* 318 */ OBJ_408_318,
/* 319 */ OBJECT_319, /* 319 */ OBJ_408_319,
/* 320 */ OBJECT_320, /* 320 */ OBJ_408_320,
/* 321 */ OBJECT_321, /* 321 */ OBJ_408_321,
/* 322 */ OBJECT_6C_LASERS, // start of 6C /* 322 */ OBJ_ITEM_LASERS,
/* 323 */ OBJECT_6C_CHECKPOINT, /* 323 */ OBJ_ITEM_CHECKPOINT,
/* 324 */ OBJECT_6C_SILVER_RING, /* 324 */ OBJ_ITEM_SILVER_RING,
/* 325 */ OBJECT_6C_STAR_RING, /* 325 */ OBJ_ITEM_SILVER_STAR,
/* 326 */ OBJECT_6C_METEO_WARP, /* 326 */ OBJ_ITEM_METEO_WARP,
/* 327 */ OBJECT_6C_BOMB, /* 327 */ OBJ_ITEM_BOMB,
/* 328 */ OBJECT_328, /* 328 */ OBJ_ITEM_328,
/* 329 */ OBJECT_329, /* 329 */ OBJ_ITEM_329,
/* 330 */ OBJECT_330, /* 330 */ OBJ_ITEM_330,
/* 331 */ OBJECT_331, /* 331 */ OBJ_ITEM_331,
/* 332 */ OBJECT_332, /* 332 */ OBJ_ITEM_332,
/* 333 */ OBJECT_333, /* 333 */ OBJ_ITEM_333,
/* 334 */ OBJECT_6C_CORN_ARCH, /* 334 */ OBJ_ITEM_CORN_ARCH,
/* 335 */ OBJECT_6C_1UP, /* 335 */ OBJ_ITEM_1UP,
/* 336 */ OBJECT_6C_GOLD_RING, /* 336 */ OBJ_ITEM_GOLD_RING,
/* 337 */ OBJECT_6C_WING_REPAIR, /* 337 */ OBJ_ITEM_WING_REPAIR,
/* 338 */ OBJECT_6C_TRAINING_RING, /* 338 */ OBJ_ITEM_TRAINING_RING,
/* 339 */ OBJECT_339, // start of 8C /* 339 */ OBJ_8C_339,
/* 340 */ OBJECT_340, /* 340 */ OBJ_8C_340,
/* 341 */ OBJECT_341, /* 341 */ OBJ_8C_341,
/* 342 */ OBJECT_342, /* 342 */ OBJ_8C_342,
/* 343 */ OBJECT_343, /* 343 */ OBJ_8C_343,
/* 344 */ OBJECT_344, /* 344 */ OBJ_8C_344,
/* 345 */ OBJECT_345, /* 345 */ OBJ_8C_345,
/* 346 */ OBJECT_346, /* 346 */ OBJ_8C_346,
/* 347 */ OBJECT_347, /* 347 */ OBJ_8C_347,
/* 348 */ OBJECT_348, /* 348 */ OBJ_8C_348,
/* 349 */ OBJECT_349, /* 349 */ OBJ_8C_349,
/* 350 */ OBJECT_350, /* 350 */ OBJ_8C_350,
/* 351 */ OBJECT_351, /* 351 */ OBJ_8C_351,
/* 352 */ OBJECT_352, /* 352 */ OBJ_8C_352,
/* 353 */ OBJECT_353, /* 353 */ OBJ_8C_353,
/* 354 */ OBJECT_354, /* 354 */ OBJ_8C_354,
/* 355 */ OBJECT_355, /* 355 */ OBJ_8C_355,
/* 356 */ OBJECT_356, /* 356 */ OBJ_8C_356,
/* 357 */ OBJECT_357, /* 357 */ OBJ_8C_357,
/* 358 */ OBJECT_358, /* 358 */ OBJ_8C_358,
/* 359 */ OBJECT_359, /* 359 */ OBJ_8C_359,
/* 360 */ OBJECT_360, /* 360 */ OBJ_8C_360,
/* 361 */ OBJECT_361, /* 361 */ OBJ_8C_361,
/* 362 */ OBJECT_362, /* 362 */ OBJ_8C_362,
/* 363 */ OBJECT_363, /* 363 */ OBJ_8C_363,
/* 364 */ OBJECT_364, /* 364 */ OBJ_8C_364,
/* 365 */ OBJECT_365, /* 365 */ OBJ_8C_365,
/* 366 */ OBJECT_366, /* 366 */ OBJ_8C_366,
/* 367 */ OBJECT_367, /* 367 */ OBJ_8C_367,
/* 368 */ OBJECT_368, /* 368 */ OBJ_8C_368,
/* 369 */ OBJECT_369, /* 369 */ OBJ_8C_369,
/* 370 */ OBJECT_370, /* 370 */ OBJ_8C_370,
/* 371 */ OBJECT_371, /* 371 */ OBJ_8C_371,
/* 372 */ OBJECT_372, /* 372 */ OBJ_8C_372,
/* 373 */ OBJECT_373, /* 373 */ OBJ_8C_373,
/* 374 */ OBJECT_374, /* 374 */ OBJ_8C_374,
/* 375 */ OBJECT_375, /* 375 */ OBJ_8C_375,
/* 376 */ OBJECT_376, /* 376 */ OBJ_8C_376,
/* 377 */ OBJECT_377, /* 377 */ OBJ_8C_377,
/* 378 */ OBJECT_378, /* 378 */ OBJ_8C_378,
/* 379 */ OBJECT_379, /* 379 */ OBJ_8C_379,
/* 380 */ OBJECT_380, /* 380 */ OBJ_8C_380,
/* 381 */ OBJECT_381, /* 381 */ OBJ_8C_381,
/* 382 */ OBJECT_382, /* 382 */ OBJ_8C_382,
/* 383 */ OBJECT_383, /* 383 */ OBJ_8C_383,
/* 384 */ OBJECT_384, /* 384 */ OBJ_8C_384,
/* 385 */ OBJECT_385, /* 385 */ OBJ_8C_385,
/* 386 */ OBJECT_386, /* 386 */ OBJ_8C_386,
/* 387 */ OBJECT_387, /* 387 */ OBJ_8C_387,
/* 388 */ OBJECT_388, /* 388 */ OBJ_8C_388,
/* 389 */ OBJECT_389, /* 389 */ OBJ_8C_389,
/* 390 */ OBJECT_390, /* 390 */ OBJ_8C_390,
/* 391 */ OBJECT_391, /* 391 */ OBJ_8C_391,
/* 392 */ OBJECT_392, /* 392 */ OBJ_8C_392,
/* 393 */ OBJECT_393, /* 393 */ OBJ_8C_393,
/* 394 */ OBJECT_394, /* 394 */ OBJ_8C_394,
/* 395 */ OBJECT_395, /* 395 */ OBJ_8C_395,
/* 396 */ OBJECT_396, /* 396 */ OBJ_8C_396,
/* 397 */ OBJECT_397, /* 397 */ OBJ_8C_397,
/* 398 */ OBJECT_398, /* 398 */ OBJ_8C_398,
/* 399 */ OBJECT_399, /* 399 */ OBJ_8C_399,
/* 400 */ OBJECT_ID_MAX, /* 400 */ OBJ_ID_MAX,
} ObjectId; } ObjectId;
#define OBJECT_UNK_400 400 #define OBJ_UNK_400 400
#define OBJECT_UNK_401 401 #define OBJ_UNK_401 401
#define OBJECT_UNK_402 402 #define OBJ_UNK_402 402
#define OBJECT_UNK_403 403 #define OBJ_UNK_403 403
#define OBJECT_UNK_404 404 #define OBJ_UNK_404 404
#define OBJECT_UNK_405 405 #define OBJ_UNK_405 405
#define OBJECT_UNK_406 406 #define OBJ_UNK_406 406
#define OBJECT_UNK_1000 1000 #define OBJ_UNK_1000 1000
#endif #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; /* 0x0 */ u16 unk_0;
/* 0x2 */ s8 unk_2; /* 0x2 */ s8 unk_2;
/* 0x3 */ s8 unk_3; /* 0x3 */ s8 unk_3;
} UnkStruct_gChngInputPtr; // size = 0x4 } UnkStruct_gInputPress; // size = 0x4
typedef struct { typedef struct {
/* 0x00 */ u8 unk_00; /* 0x00 */ u8 unk_00;
@ -118,203 +118,6 @@ typedef struct {
/* 0x2F */ u8 unk_2F; /* 0x2F */ u8 unk_2F;
} UnkEntity30; // size = 0x30 } 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 { typedef struct {
/* 0x00 */ u8 hits; /* 0x00 */ u8 hits;
/* 0x04 */ Vec3f pos; /* 0x04 */ Vec3f pos;

View File

@ -8,6 +8,7 @@
#include "sf64level.h" #include "sf64level.h"
#include "sf64thread.h" #include "sf64thread.h"
#include "sf64object.h" #include "sf64object.h"
#include "sf64player.h"
extern u64 __rspboot_start[]; extern u64 __rspboot_start[];
extern u64 __rspboot_end[]; extern u64 __rspboot_end[];
@ -29,15 +30,15 @@ extern OSMesgQueue* D_800C7C5C;
extern OSMesgQueue* D_800C7C60; extern OSMesgQueue* D_800C7C60;
extern OSMesgQueue* D_800C7C64; extern OSMesgQueue* D_800C7C64;
extern OSContPad gCurrentInput[4]; extern OSContPad gControllerHold[4];
extern OSContPad gChangedInput[4]; extern OSContPad gControllerPress[4];
extern u8 gControllerStatus[4]; extern u8 gControllerPlugged[4];
extern u32 gStopInputTimer; extern u32 gControllerLock;
extern u8 gRumbleStatus[4]; extern u8 gControllerRumble[4];
extern OSContPad sNextInput[4]; // extern OSContPad sNextController[4]; //
extern OSContPad sPrevInput[4]; // extern OSContPad sPrevController[4]; //
extern OSContStatus D_800DD8F0[4]; // extern OSContStatus sControllerStatus[4]; //
extern OSPfs D_800DD900[4]; // extern OSPfs sControllerMotor[4]; //
extern u8 gAudioThreadStack[0x1000]; // 800DDAA0 extern u8 gAudioThreadStack[0x1000]; // 800DDAA0
extern OSThread gGraphicsThread; // 800DEAA0 extern OSThread gGraphicsThread; // 800DEAA0
@ -156,7 +157,7 @@ extern f32 D_800CC054[];
extern f32 D_800CC070[]; extern f32 D_800CC070[];
extern f32 D_800CC0D4[]; extern f32 D_800CC0D4[];
extern f32 D_800CC0F0[]; extern f32 D_800CC0F0[];
extern ObjectStruct_1C D_800CC124[]; extern ObjectInfo D_800CC124[];
extern f32 D_800CF9B0[]; extern f32 D_800CF9B0[];
extern Gfx* D_800CFA54[]; extern Gfx* D_800CFA54[];
extern Gfx* D_800CFAC4[]; extern Gfx* D_800CFAC4[];
@ -371,8 +372,8 @@ extern Object_4C gObjects4C[40];
extern Object_2F4 gObjects2F4[60]; extern Object_2F4 gObjects2F4[60];
extern Object_408 gObjects408[4]; extern Object_408 gObjects408[4];
extern Object_8C gObjects8C[100]; extern Object_8C gObjects8C[100];
extern Object_6C gObjects6C[20]; extern Item gItems[20];
extern Object_70 gObjects70[16]; extern PlayerShot gPlayerShots[16];
extern UnkEntity30 gUnkEntities30[100]; extern UnkEntity30 gUnkEntities30[100];
extern UnkEntity28 gUnkEntities28[65]; extern UnkEntity28 gUnkEntities28[65];
extern UnkEntity1C gUnkEntities1C[10]; extern UnkEntity1C gUnkEntities1C[10];
@ -404,20 +405,20 @@ extern s32 D_80177858[4];
extern s32 D_80177868; extern s32 D_80177868;
// //
extern s32 D_80177870[4]; extern s32 D_80177870[4];
extern s32 D_80177880; extern s32 gAllRangeMode;
// //
extern s32 D_80177888[4]; extern s32 D_80177888[4];
extern s32 D_80177898; extern s32 D_80177898;
extern s32 D_8017789C; extern s32 gVersusStage;
extern s32 D_801778A0; extern s32 D_801778A0;
extern s32 D_801778A4; extern s32 D_801778A4;
extern s32 gCamCount; extern s32 gCamCount;
extern s32 D_801778AC; extern s32 D_801778AC;
extern s32 gTeamHealth[6]; extern s32 gTeamShields[6];
extern s32 D_801778C8; extern s32 D_801778C8;
// //
extern s32 gSavedTeamHealth[6]; extern s32 gSavedTeamShields[6];
extern s32 D_801778E8; extern bool gVersusMode;
// //
extern UNK_TYPE D_801778F0[6]; extern UNK_TYPE D_801778F0[6];
extern u16 D_80177908[4]; extern u16 D_80177908[4];
@ -435,9 +436,9 @@ extern f32 D_80177958[4];
extern f32 D_80177968; extern f32 D_80177968;
extern s32 D_8017796C; extern s32 D_8017796C;
extern f32 D_80177970; extern f32 D_80177970;
extern OSContPad *gCurInputPtr; extern OSContPad *gInputHold;
extern f32 D_80177978; extern f32 D_80177978;
extern OSContPad* gChngInputPtr; extern OSContPad* gInputPress;
extern f32 D_80177980; extern f32 D_80177980;
extern u8 *D_80177984; extern u8 *D_80177984;
extern f32 D_80177988; extern f32 D_80177988;
@ -465,7 +466,7 @@ extern s32 D_80177A70[4];
extern s32 D_80177A80; extern s32 D_80177A80;
// //
extern s32 D_80177A88[4]; extern s32 D_80177A88[4];
extern s8 D_80177A98; extern u8 D_80177A98;
// //
extern f32 D_80177AA0[4]; extern f32 D_80177AA0[4];
extern u8 D_80177AB0; extern u8 D_80177AB0;

View File

@ -45,7 +45,7 @@ gSetupDLs = 0x800D31B0; // size:0x18C0
D_800CFCA0 = 0x800CFCA0; D_800CFCA0 = 0x800CFCA0;
D_800DD900 = 0x800DD900; // size:0x1A0 sControllerMotor = 0x800DD900; // size:0x1A0
D_800CBDD4 = 0x800CBDD4; //size:0x98 D_800CBDD4 = 0x800CBDD4; //size:0x98

View File

@ -47,7 +47,7 @@ func_800A1540 = 0x800A1540;
func_800A1558 = 0x800A1558; func_800A1558 = 0x800A1558;
// sf_36930 // sf_36930
Object_70_Initialize = 0x80035E48; PlayerShot_Initialize = 0x80035E48;
// fox_rcp // fox_rcp
RCP_SetupDL = 0x800B8DD0; RCP_SetupDL = 0x800B8DD0;
@ -194,7 +194,7 @@ Object_2F4_Draw1 = 0x8005DBC0;
Object_408_Draw = 0x8005E1B8; Object_408_Draw = 0x8005E1B8;
Object_8C_Draw1 = 0x8005E454; Object_8C_Draw1 = 0x8005E454;
Object_8C_Draw2 = 0x8005E538; Object_8C_Draw2 = 0x8005E538;
Object_6C_Draw = 0x8005E7B8; Item_Draw = 0x8005E7B8;
func_8005EA24 = 0x8005EA24; func_8005EA24 = 0x8005EA24;
func_8005ECD8 = 0x8005ECD8; func_8005ECD8 = 0x8005ECD8;
func_8005F030 = 0x8005F030; func_8005F030 = 0x8005F030;
@ -216,18 +216,18 @@ func_80060F30 = 0x80060F30;
Object_Kill = 0x80060FBC; Object_Kill = 0x80060FBC;
func_80060FE4 = 0x80060FE4; func_80060FE4 = 0x80060FE4;
func_80061148 = 0x80061148; func_80061148 = 0x80061148;
Object_Set1C = 0x800612B8; Object_SetInfo = 0x800612B8;
Object_80_Initialize = 0x80061364; Object_80_Initialize = 0x80061364;
Object_4C_Initialize = 0x80061394; Object_4C_Initialize = 0x80061394;
Object_2F4_Initialize = 0x800613C4; Object_2F4_Initialize = 0x800613C4;
Object_408_Initialize = 0x80061404; Object_408_Initialize = 0x80061404;
Object_6C_Initialize = 0x80061444; Item_Initialize = 0x80061444;
Object_8C_Initialize = 0x80061474; Object_8C_Initialize = 0x80061474;
Object_80_Spawn = 0x800614B4; Object_80_Spawn = 0x800614B4;
Object_4C_Spawn = 0x800615A0; Object_4C_Spawn = 0x800615A0;
Object_2F4_Spawn = 0x8006168C; Object_2F4_Spawn = 0x8006168C;
Object_408_Spawn = 0x80061778; Object_408_Spawn = 0x80061778;
Object_6C_Spawn = 0x80061864; Item_Spawn = 0x80061864;
func_80061958 = 0x80061958; func_80061958 = 0x80061958;
func_80061A4C = 0x80061A4C; func_80061A4C = 0x80061A4C;
func_80061B68 = 0x80061B68; func_80061B68 = 0x80061B68;
@ -301,7 +301,7 @@ Object_2F4_Update = 0x80069AAC;
Object_408_Update = 0x80069CBC; Object_408_Update = 0x80069CBC;
Object_80_Update = 0x80069DF4; Object_80_Update = 0x80069DF4;
Object_4C_Update = 0x80069E88; Object_4C_Update = 0x80069E88;
Object_6C_Update = 0x80069F30; Item_Update = 0x80069F30;
Object_8C_Update = 0x80069FD4; Object_8C_Update = 0x80069FD4;
func_8006A06C = 0x8006A06C; func_8006A06C = 0x8006A06C;
func_8006A38C = 0x8006A38C; func_8006A38C = 0x8006A38C;
@ -374,8 +374,8 @@ gObjects4C = 0x80163400; //size:0xBE0
gObjects2F4 = 0x80163FE0; //size:0xB130 gObjects2F4 = 0x80163FE0; //size:0xB130
gObjects408 = 0x8016F110; //size:0x1020 gObjects408 = 0x8016F110; //size:0x1020
gObjects8C = 0x80170130; //size:0x36B0 gObjects8C = 0x80170130; //size:0x36B0
gObjects6C = 0x801737E0; //size:0x870 gItems = 0x801737E0; //size:0x870
gObjects70 = 0x80174050; //size:0x700 gPlayerShots = 0x80174050; //size:0x700
gUnkEntities30 = 0x80174750; //size:0x12C0 gUnkEntities30 = 0x80174750; //size:0x12C0
gUnkEntities28 = 0x80175A10; //size:0xA28 gUnkEntities28 = 0x80175A10; //size:0xA28
gUnkEntities1C = 0x80176438; //size:0x18 gUnkEntities1C = 0x80176438; //size:0x18
@ -403,19 +403,19 @@ D_80177854 = 0x80177854;
D_80177858 = 0x80177858; D_80177858 = 0x80177858;
D_80177868 = 0x80177868; D_80177868 = 0x80177868;
D_80177870 = 0x80177870; D_80177870 = 0x80177870;
D_80177880 = 0x80177880; gAllRangeMode = 0x80177880;
D_80177888 = 0x80177888; D_80177888 = 0x80177888;
D_80177898 = 0x80177898; D_80177898 = 0x80177898;
D_8017789C = 0x8017789C; gVersusStage = 0x8017789C;
D_801778A0 = 0x801778A0; D_801778A0 = 0x801778A0;
D_801778A4 = 0x801778A4; D_801778A4 = 0x801778A4;
gCamCount = 0x801778A8; gCamCount = 0x801778A8;
D_801778AB = 0x801778AB; D_801778AB = 0x801778AB;
D_801778AC = 0x801778AC; D_801778AC = 0x801778AC;
gTeamHealth = 0x801778B0; //size:0x18 gTeamShields = 0x801778B0; //size:0x18
D_801778C8 = 0x801778C8; D_801778C8 = 0x801778C8;
gSavedTeamHealth = 0x801778D0; //size:0x18 gSavedTeamShields = 0x801778D0; //size:0x18
D_801778E8 = 0x801778E8; gVersusMode = 0x801778E8;
D_80177908 = 0x80177908; D_80177908 = 0x80177908;
D_80177910 = 0x80177910; D_80177910 = 0x80177910;
D_80177928 = 0x80177928; D_80177928 = 0x80177928;
@ -425,9 +425,9 @@ D_80177940 = 0x80177940;
D_80177948 = 0x80177948; D_80177948 = 0x80177948;
D_80177950 = 0x80177950; D_80177950 = 0x80177950;
D_80177958 = 0x80177958; D_80177958 = 0x80177958;
gCurInputPtr = 0x80177974; gInputHold = 0x80177974;
D_80177978 = 0x80177978; D_80177978 = 0x80177978;
gChngInputPtr = 0x8017797C; gInputPress = 0x8017797C;
D_80177980 = 0x80177980; D_80177980 = 0x80177980;
D_80177988 = 0x80177988; D_80177988 = 0x80177988;
D_80177990 = 0x80177990; D_80177990 = 0x80177990;
@ -606,5 +606,5 @@ D_80178570 = 0x80178570;
D_80178574 = 0x80178574; D_80178574 = 0x80178574;
D_80178578 = 0x80178578; D_80178578 = 0x80178578;
Play_GetMaxHealth = 0x800A3FC4; Play_GetMaxShields = 0x800A3FC4;
Play_CheckMedalStatus = 0x800A3F50; Play_CheckMedalStatus = 0x800A3F50;

View File

@ -5,15 +5,15 @@ __f3dex_start = 0x80001410;
gF3dexData = 0x800C3DD0; gF3dexData = 0x800C3DD0;
// sys_joybus // sys_joybus
gCurrentInput = 0x800DD880; // size:0x18 gControllerHold = 0x800DD880; // size:0x18
gChangedInput = 0x800DD898; // size:0x18 gControllerPress = 0x800DD898; // size:0x18
gControllerStatus = 0x800DD8B0; // size:0x4 gControllerPlugged = 0x800DD8B0; // size:0x4
gStopInputTimer = 0x800DD8B4; // size:0x4 gControllerLock = 0x800DD8B4; // size:0x4
gRumbleStatus = 0x800DD8B8; // size:0x4 gControllerRumble = 0x800DD8B8; // size:0x4
D_800DD8BC = 0x800DD8BC; // ignore:true D_800DD8BC = 0x800DD8BC; // ignore:true
sNextInput = 0x800DD8C0; // size:0x18 sNextController = 0x800DD8C0; // size:0x18
sPrevInput = 0x800DD8D8; // size:0x18 sPrevController = 0x800DD8D8; // size:0x18
D_800DD8F0 = 0x800DD8F0; // size:0x10 sControllerStatus = 0x800DD8F0; // size:0x10
// main // main
gAudioThreadStack = 0x800DDAA0; gAudioThreadStack = 0x800DDAA0;

View File

@ -100,7 +100,7 @@ typedef enum {
PIP, PIP,
} CharCode; } 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,
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) { if (var_a3 != 0) {
var_fv0 = 0.0f; var_fv0 = 0.0f;
if (obj408->obj.id == OBJECT_292) { if (obj408->obj.id == OBJ_408_292) {
var_fv0 = 300.0f; var_fv0 = 300.0f;
} else if (obj408->obj.id == OBJECT_306) { } else if (obj408->obj.id == OBJ_408_306) {
var_fv0 = 200.0f; var_fv0 = 200.0f;
} }
func_80077240(obj408->obj.pos.x, obj408->obj.pos.y + var_fv0, obj408->obj.pos.z, var_a3); 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) { f32 arg9, f32 argA, s32 argB, s32 argC) {
Object_2F4_Initialize(obj2F4); Object_2F4_Initialize(obj2F4);
obj2F4->obj.status = 1; obj2F4->obj.status = 1;
obj2F4->obj.id = OBJECT_189; obj2F4->obj.id = OBJ_2F4_189;
obj2F4->unk_0B8 = argB; obj2F4->unk_0B8 = argB;
obj2F4->obj.pos.x = arg1; obj2F4->obj.pos.x = arg1;
obj2F4->obj.pos.y = arg2; 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_110 = argA;
obj2F4->unk_0BC = argC; obj2F4->unk_0BC = argC;
obj2F4->unk_0BE = 20; obj2F4->unk_0BE = 20;
Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); Object_SetInfo(&obj2F4->info, obj2F4->obj.id);
if (gLevelType == 0) { if (gLevelType == LEVELTYPE_GROUND) {
obj2F4->unk_10C = 0.5f; 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) { 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) { 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, Matrix_LookAt(gGfxMatrix, D_80177978, D_80177980, D_80177988, D_801779A0, D_801779B8, D_801779C0, 0.0f, 1.0f, 0.0f,
1); 1);
Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -200.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, 0.0f, -200.0f, 1);
Matrix_RotateY(gGfxMatrix, gChangedInput[D_801778A0].stick_x * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, gControllerPress[D_801778A0].stick_x * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, gChangedInput[D_801778A0].stick_y * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, gControllerPress[D_801778A0].stick_y * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
RCP_SetupDL_23(); RCP_SetupDL_23();
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
@ -30,7 +30,7 @@ void func_800A3E00(void) {
D_801779C0 = -10.0f; D_801779C0 = -10.0f;
break; break;
case 2: 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); func_8001D638(0);
D_80177868 = 3; D_80177868 = 3;
D_80177898 = 0; D_80177898 = 0;

View File

@ -272,7 +272,7 @@ void func_80052884(Player* player) {
Vec3f sp40 = { 0.0f, 40.0f, -70.0f }; Vec3f sp40 = { 0.0f, 40.0f, -70.0f };
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
if (D_801778E8 == 0) { if (!gVersusMode) {
gSPDisplayList(gMasterDisp++, D_3000090); gSPDisplayList(gMasterDisp++, D_3000090);
} else { } else {
gSPDisplayList(gMasterDisp++, D_300FB80); gSPDisplayList(gMasterDisp++, D_300FB80);
@ -294,7 +294,7 @@ void func_80052884(Player* player) {
Matrix_MultVec3f(gGfxMatrix, &sp58, &D_801613E0[1]); Matrix_MultVec3f(gGfxMatrix, &sp58, &D_801613E0[1]);
} }
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (D_801778E8 == 0) { if (!gVersusMode) {
if (player->unk_1A0 != 0) { if (player->unk_1A0 != 0) {
RCP_SetupDL_64(); RCP_SetupDL_64();
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 64, 255, 64, 255); 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], Matrix_Scale(gGfxMatrix, D_800CA248[player->unk_1A0 - 1], D_800CA248[player->unk_1A0 - 1],
D_800CA248[player->unk_1A0 - 1], 1); D_800CA248[player->unk_1A0 - 1], 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (D_801778E8 != 0) { if (gVersusMode) {
RCP_SetupDL_40(); RCP_SetupDL_40();
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
gSPDisplayList(gMasterDisp++, D_301FD20); gSPDisplayList(gMasterDisp++, D_301FD20);
@ -344,7 +344,7 @@ void func_80052D48(Player* player) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Copy(gGfxMatrix, &D_80161418[player->unk_1C4]); Matrix_Copy(gGfxMatrix, &D_80161418[player->unk_1C4]);
if (D_801778E8 != 0) { if (gVersusMode) {
RCP_SetupDL_64(); RCP_SetupDL_64();
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150);
} else { } else {
@ -354,7 +354,7 @@ void func_80052D48(Player* player) {
} }
sp2C = player->unk_16C; sp2C = player->unk_16C;
if (sp2C > 0.2f) { if (sp2C > 0.2f) {
if (D_801778E8 == 0) { if (!gVersusMode) {
sp2C *= 1.1f; sp2C *= 1.1f;
} }
if (gFrameCount & 1) { if (gFrameCount & 1) {
@ -362,13 +362,13 @@ void func_80052D48(Player* player) {
} }
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 20.0f, 30.0f, -10.0f, 1); 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_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1);
} }
Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1);
Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (D_801778E8 == 0) { if (!gVersusMode) {
gSPDisplayList(gMasterDisp++, D_30066B0); gSPDisplayList(gMasterDisp++, D_30066B0);
} else { } else {
gSPDisplayList(gMasterDisp++, D_301B6E0); gSPDisplayList(gMasterDisp++, D_301B6E0);
@ -377,7 +377,7 @@ void func_80052D48(Player* player) {
} }
sp2C = player->unk_170; sp2C = player->unk_170;
if (sp2C > 0.2f) { if (sp2C > 0.2f) {
if (D_801778E8 == 0) { if (!gVersusMode) {
sp2C *= 1.1f; sp2C *= 1.1f;
} }
if (gFrameCount & 1) { if (gFrameCount & 1) {
@ -385,13 +385,13 @@ void func_80052D48(Player* player) {
} }
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, -20.0f, 30.0f, -10.0f, 1); 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_RotateY(gGfxMatrix, -gPlayer[D_801778A0].unk_058, 1);
} }
Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1); Matrix_Scale(gGfxMatrix, sp2C, sp2C, sp2C, 1);
Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1); Matrix_Translate(gGfxMatrix, 0.0f, -30.0f, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (D_801778E8 == 0) { if (!gVersusMode) {
gSPDisplayList(gMasterDisp++, D_30066B0); gSPDisplayList(gMasterDisp++, D_30066B0);
} else { } else {
gSPDisplayList(gMasterDisp++, D_301B6E0); gSPDisplayList(gMasterDisp++, D_301B6E0);
@ -417,10 +417,10 @@ bool func_800531A4(s32 limbIndex, Gfx** gfxPtr, Vec3f* pos, Vec3f* rot, void* wi
} }
switch (limbIndex) { switch (limbIndex) {
case 13: case 13:
if (wings->rightState == 0) { if (wings->rightState == WINGSTATE_NONE) {
*gfxPtr = NULL; *gfxPtr = NULL;
} }
if (wings->rightState == 1) { if (wings->rightState == WINGSTATE_BROKEN) {
*gfxPtr = D_3015120; *gfxPtr = D_3015120;
} }
if ((D_800CA22C != 0) && (D_80177D40[0] & 1)) { 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; break;
case 12: case 12:
if (wings->rightState == 0) { if (wings->rightState == WINGSTATE_NONE) { // should be leftState?
*gfxPtr = NULL; *gfxPtr = NULL;
} }
if (wings->leftState == 1) { if (wings->leftState == WINGSTATE_BROKEN) {
*gfxPtr = D_3014BF0; *gfxPtr = D_3014BF0;
} }
if ((D_800CA22C != 0) && (D_80177D58[0] & 1)) { if ((D_800CA22C != 0) && (D_80177D58[0] & 1)) {
@ -607,7 +607,7 @@ void func_80053C38(Player* player, s32 arg1) {
sp4C.z = 2400.0f + sp48; sp4C.z = 2400.0f + sp48;
Matrix_MultVec3f(gGfxMatrix, &sp4C, &D_801613E0[1]); 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)) { (fabsf((player->unk_138 + D_80177D20) - player->unk_040.z) < 10.0f)) {
if (arg1 == 0) { if (arg1 == 0) {
D_800CA228 = 1; D_800CA228 = 1;
@ -619,18 +619,20 @@ void func_80053C38(Player* player, s32 arg1) {
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
} }
} else { } else {
if (D_801778E8 != 0) { if (gVersusMode) {
if ((player->wings.rightState == 2) && (player->wings.leftState == 2)) { if ((player->wings.rightState == WINGSTATE_INTACT) && (player->wings.leftState == WINGSTATE_INTACT)) {
gSPDisplayList(gMasterDisp++, D_300EE80); 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); 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); gSPDisplayList(gMasterDisp++, D_3011470);
} else { } else {
gSPDisplayList(gMasterDisp++, D_300D550); gSPDisplayList(gMasterDisp++, D_300D550);
} }
} else { } 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_28 = player->wings.unk_04 = player->wings.unk_08 = player->wings.unk_0C =
player->wings.unk_10 = 0.0f; player->wings.unk_10 = 0.0f;
} }
@ -722,7 +724,7 @@ void func_80054300(Player* player) {
if (gCurrentLevel == LEVEL_MACBETH) { if (gCurrentLevel == LEVEL_MACBETH) {
RCP_SetupDL(&gMasterDisp, 0x41); RCP_SetupDL(&gMasterDisp, 0x41);
} }
if (D_801778E8 == 0) { if (!gVersusMode) {
gSPDisplayList(gMasterDisp++, D_3008100); gSPDisplayList(gMasterDisp++, D_3008100);
} else { } else {
gSPDisplayList(gMasterDisp++, D_301E570); gSPDisplayList(gMasterDisp++, D_301E570);
@ -865,7 +867,7 @@ void func_80054E80(Player* player) {
if (D_801779C8[player->unk_1C4] > 10) { if (D_801779C8[player->unk_1C4] > 10) {
RCP_SetupDL(&gMasterDisp, 0x43); RCP_SetupDL(&gMasterDisp, 0x43);
Matrix_Copy(gCalcMatrix, &D_80161418[player->unk_1C4]); 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); Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94);
} else { } else {
Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); 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_Translate(gGfxMatrix, sp94.x, sp94.y, sp94.z, 0);
Matrix_Scale(gGfxMatrix, sp80, sp80, 1.0f, 1); Matrix_Scale(gGfxMatrix, sp80, sp80, 1.0f, 1);
Matrix_Push(&gGfxMatrix); 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); Matrix_Scale(gGfxMatrix, 3.0f, 3.0f, 3.0f, 1);
} else { } else {
Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1);
} }
RCP_SetupDL(&gMasterDisp, 0x31); RCP_SetupDL(&gMasterDisp, 0x31);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128);
if (D_801778E8 != 0) { if (gVersusMode) {
switch (player->unk_1C4) { switch (player->unk_1C4) {
case 0: case 0:
gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128);
@ -907,7 +909,7 @@ void func_80054E80(Player* player) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_101C2E0); gSPDisplayList(gMasterDisp++, D_101C2E0);
Matrix_Pop(&gGfxMatrix); 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.3f, 0.3f, 0.3f, 1);
} }
Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 1.0f, 1); Matrix_Scale(gGfxMatrix, 0.5f, 0.5f, 1.0f, 1);
@ -932,7 +934,7 @@ void func_80054E80(Player* player) {
case 0: case 0:
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 192, 255, 192, 128); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 192, 255, 192, 128);
gDPSetEnvColor(gMasterDisp++, 64, 255, 64, 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); Matrix_MultVec3f(gCalcMatrix, &spB8, &sp94);
} else { } else {
Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94); Matrix_MultVec3f(gCalcMatrix, &spC4, &sp94);
@ -987,7 +989,7 @@ void func_80055788(Player* player) {
Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1); Matrix_Scale(gGfxMatrix, 10.0f, 10.0f, 10.0f, 1);
RCP_SetupDL(&gMasterDisp, 0x31); RCP_SetupDL(&gMasterDisp, 0x31);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 128);
if (D_801778E8 != 0) { if (gVersusMode) {
switch (player->unk_1C4) { switch (player->unk_1C4) {
case 0: case 0:
gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128); gDPSetEnvColor(gMasterDisp++, 255, 255, 32, 128);
@ -1108,7 +1110,7 @@ void func_80055E98(Player* player) {
} }
RCP_SetupDL_64(); RCP_SetupDL_64();
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 100); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 100);
if (player->wings.leftState == 2) { if (player->wings.leftState == WINGSTATE_INTACT) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, sp5C, sp58, -100.0f, 1); Matrix_Translate(gGfxMatrix, sp5C, sp58, -100.0f, 1);
Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1); Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1);
@ -1121,7 +1123,7 @@ void func_80055E98(Player* player) {
gSPDisplayList(gMasterDisp++, D_102A8A0); gSPDisplayList(gMasterDisp++, D_102A8A0);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
} }
if (player->wings.rightState == 2) { if (player->wings.rightState == WINGSTATE_INTACT) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, -sp5C, sp58, -100.0f, 1); Matrix_Translate(gGfxMatrix, -sp5C, sp58, -100.0f, 1);
Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1); Matrix_RotateX(gGfxMatrix, M_DTOR * sp50, 1);
@ -1139,7 +1141,7 @@ void func_80055E98(Player* player) {
void func_80056230(Player* player) { void func_80056230(Player* player) {
if ((player->unk_234 != 0) && (player->unk_1CC == 0) && (gCurrentLevel != LEVEL_VENOM_2) && 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_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); 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); 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, Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078 + player->unk_18C + 30.0f,
player->unk_138 + player->unk_144, 1); player->unk_138 + player->unk_144, 1);
if (D_801778E8 != 0) { if (gVersusMode) {
for (i = 0; i < gCamCount; i++) { for (i = 0; i < gCamCount; i++) {
if (D_80177B00[player->unk_1C4][i] != 0) { if (D_80177B00[player->unk_1C4][i] != 0) {
Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); 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_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_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); 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_RotateX(gGfxMatrix, player->unk_000 * M_DTOR, 1);
} }
Matrix_RotateZ(gGfxMatrix, (-player->unk_12C - player->unk_130) * 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); Matrix_Translate(gCalcMatrix, player->unk_084, player->unk_080, 0.0f, 1);
} else { } else {
Matrix_Translate(gGfxMatrix, player->unk_074, player->unk_078, player->unk_138 + player->unk_144, 1); 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++) { for (i = 0; i < gCamCount; i++) {
if (D_80177B00[player->unk_1C4][i] != 0) { if (D_80177B00[player->unk_1C4][i] != 0) {
Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]); Matrix_MultVec3f(gGfxMatrix, &sp50, &D_80161578[i]);
@ -1258,13 +1260,13 @@ void func_800564C0(Player* player, s32 arg1) {
} }
switch (player->unk_200) { switch (player->unk_200) {
case 0: case 0:
if (D_801778E8 == 0) { if (!gVersusMode) {
if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_TITANIA)) { if ((gCurrentLevel == LEVEL_FORTUNA) || (gCurrentLevel == LEVEL_TITANIA)) {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, 1005); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, 1005);
} else { } else {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); 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); RCP_SetupDL_29(128, 128, 255, 255, gFogNear, gFogFar);
} else { } else {
RCP_SetupDL_29(0, 0, 0, 255, gFogNear, gFogFar); RCP_SetupDL_29(0, 0, 0, 255, gFogNear, gFogFar);
@ -1317,7 +1319,7 @@ void func_80056E2C(Player* player) {
sp34 = sp30 = 0.0f; sp34 = sp30 = 0.0f;
} }
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
if (D_80177880 == 1) { if (gAllRangeMode == 1) {
if (player->unk_1CC == 3) { if (player->unk_1CC == 3) {
Matrix_Translate(gGfxMatrix, player->unk_064, player->unk_068 + 2.0f, player->unk_06C, 1); Matrix_Translate(gGfxMatrix, player->unk_064, player->unk_068 + 2.0f, player->unk_06C, 1);
} else { } else {
@ -1488,8 +1490,8 @@ void func_800578C4(Player* player) {
sp3C = 360.0f - sp3C; sp3C = 360.0f - sp3C;
Math_SmoothStepToAngle(&player->wings.unk_30, sp38, 0.2f, 6.0f, 0.0f); 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_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_800CA380, gControllerPress->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_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); Math_SmoothStepToF(&D_800CA388, D_800CA38C[D_800CA220], 0.1f, 10.0f, 0.0f);
sp4C.z = D_800CA388; sp4C.z = D_800CA388;
Matrix_RotateX(gCalcMatrix, (player->unk_0E8 + D_800CA380) * M_DTOR, 0); Matrix_RotateX(gCalcMatrix, (player->unk_0E8 + D_800CA380) * M_DTOR, 0);
@ -1533,7 +1535,7 @@ void func_80057D00(void) {
func_800B73E0(player); func_800B73E0(player);
Lights_SetOneLight(&gMasterDisp, gLight1x, gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG, Lights_SetOneLight(&gMasterDisp, gLight1x, gLight1y, gLight1z, gLight1R, gLight1G, gLight1B, gAmbientR, gAmbientG,
gAmbientB); gAmbientB);
if (D_80177880 == 0) { if (gAllRangeMode == 0) {
Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 0); Matrix_RotateY(gCalcMatrix, player->unk_114 * M_DTOR, 0);
Matrix_RotateX(gCalcMatrix, player->unk_120 * M_DTOR, 1); Matrix_RotateX(gCalcMatrix, player->unk_120 * M_DTOR, 1);
sp78.x = player->unk_040.x - player->unk_074; sp78.x = player->unk_040.x - player->unk_074;
@ -1583,7 +1585,7 @@ void func_80057D00(void) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_LookAt(gGfxMatrix, D_801779D8.x, D_801779D8.y, D_801779D8.z, D_801779E8.x, D_801779E8.y, D_801779E8.z, 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); 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))) { if ((gCurrentLevel == LEVEL_TITANIA) && ((gPlayer[0].unk_1C8 != 2) || (gPlayer[0].unk_19C != 0))) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, 0.0f, D_8017847C, 0.0f, 1); 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_E9F1D0_801A6164(gPlayer);
} }
func_80040954(); 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_Translate(gGfxMatrix, 0.f, -temp, 0.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
Animation_GetFrameData(&D_601E8C4, obj2F4->unk_0B6, sp30); 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) { void func_80059AEC(Object_80* obj80) {
@ -81,7 +81,7 @@ void func_80059AEC(Object_80* obj80) {
} }
void func_80059B20(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); gSPDisplayList(gMasterDisp++, D_7007350);
} else { } else {
func_8005980C(D_800CF9B0[obj80->obj.id + 2]); 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); 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_Translate(gGfxMatrix, 0.0f, 0.0f, -95.0f, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_602DA20); gSPDisplayList(gMasterDisp++, D_602DA20);
} }
void func_80059FDC(Object_6C* obj6C) { void func_80059FDC(Item* item) {
gSPDisplayList(gMasterDisp++, D_6035DA0); gSPDisplayList(gMasterDisp++, D_6035DA0);
} }
@ -255,7 +255,7 @@ void func_8005A094(Object_2F4* obj2F4) {
break; break;
case 4: case 4:
func_8005980C(obj2F4->unk_110); func_8005980C(obj2F4->unk_110);
if (obj2F4->unk_040 & 1) { if (obj2F4->index & 1) {
gSPDisplayList(gMasterDisp++, D_10194C0); gSPDisplayList(gMasterDisp++, D_10194C0);
} else { } else {
gSPDisplayList(gMasterDisp++, D_1024290); gSPDisplayList(gMasterDisp++, D_1024290);
@ -447,7 +447,7 @@ void func_8005ADAC(Object_2F4* obj2F4) {
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
} }
sp5C = obj2F4->unk_168; sp5C = obj2F4->unk_168;
if ((sp5C != 0.0f) && (gLevelType == 0)) { if ((sp5C != 0.0f) && (gLevelType == LEVELTYPE_GROUND)) {
sp54 = 0.0f; sp54 = 0.0f;
if (gFrameCount & 1) { if (gFrameCount & 1) {
sp54 = 180.0f; 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) || 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_VENOM_2) || (gCurrentLevel == LEVEL_VENOM_SW) || (gPlayer[0].unk_1C8 == 7)) &&
(gCurrentLevel != LEVEL_MACBETH) && (gCurrentLevel != LEVEL_TITANIA)) { (gCurrentLevel != LEVEL_MACBETH) && (gCurrentLevel != LEVEL_TITANIA)) {
if (obj2F4->obj.id == OBJECT_195) { if (obj2F4->obj.id == OBJ_2F4_195) {
if (((gCurrentLevel == LEVEL_VENOM_SW) && (gPlayer[0].unk_1C8 == 7) && (obj2F4->unk_040 == 10)) || 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) && ((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))) { ((gCurrentLevel == LEVEL_SECTOR_Y) && (gPlayer[0].unk_1C8 == 0) && (obj2F4->unk_0B8 == 5))) {
D_80161630.rightState = gPlayer[0].wings.rightState; D_80161630.rightState = gPlayer[0].wings.rightState;
D_80161630.leftState = gPlayer[0].wings.leftState; D_80161630.leftState = gPlayer[0].wings.leftState;
} else { } else {
D_80161630.rightState = D_80161630.leftState = 2; D_80161630.rightState = D_80161630.leftState = WINGSTATE_INTACT;
} }
} else { } 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_04 = obj2F4->unk_150;
D_80161630.unk_0C = obj2F4->unk_154; D_80161630.unk_0C = obj2F4->unk_154;
@ -617,7 +617,7 @@ void func_8005BAB4(s32 objId, s32 index) {
f32 temp2; f32 temp2;
switch (objId) { switch (objId) {
case OBJECT_374: case OBJ_8C_374:
if (gObjects8C[index].unk_4E == 0) { if (gObjects8C[index].unk_4E == 0) {
Matrix_Scale(gGfxMatrix, 1.2f, 0.0f, 1.2f, 1); Matrix_Scale(gGfxMatrix, 1.2f, 0.0f, 1.2f, 1);
Matrix_RotateX(gGfxMatrix, M_PI / 2.0f, 1); Matrix_RotateX(gGfxMatrix, M_PI / 2.0f, 1);
@ -626,9 +626,9 @@ void func_8005BAB4(s32 objId, s32 index) {
} }
RCP_SetupDL(&gMasterDisp, 0x40); RCP_SetupDL(&gMasterDisp, 0x40);
break; break;
case OBJECT_195: case OBJ_2F4_195:
case OBJECT_198: case OBJ_2F4_198:
case OBJECT_200: case OBJ_2F4_200:
switch (gObjects2F4[index].unk_0B4) { switch (gObjects2F4[index].unk_0B4) {
case 3: case 3:
Matrix_Scale(gGfxMatrix, 2.3f, 0.0f, 2.3f, 1); Matrix_Scale(gGfxMatrix, 2.3f, 0.0f, 2.3f, 1);
@ -658,10 +658,10 @@ void func_8005BAB4(s32 objId, s32 index) {
break; break;
} }
break; break;
case OBJECT_292: case OBJ_408_292:
gSPDisplayList(gMasterDisp++, D_6034B90); gSPDisplayList(gMasterDisp++, D_6034B90);
break; break;
case OBJECT_316: case OBJ_408_316:
if (gPlayer[0].unk_1C8 == 0) { if (gPlayer[0].unk_1C8 == 0) {
RCP_SetupDL(&gMasterDisp, 0x40); RCP_SetupDL(&gMasterDisp, 0x40);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 200); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 200);
@ -670,10 +670,10 @@ void func_8005BAB4(s32 objId, s32 index) {
func_8005980C(150.0f); func_8005980C(150.0f);
gSPDisplayList(gMasterDisp++, D_102A8A0); gSPDisplayList(gMasterDisp++, D_102A8A0);
break; break;
case OBJECT_293: case OBJ_408_293:
case OBJECT_294: case OBJ_408_294:
case OBJECT_295: case OBJ_408_295:
case OBJECT_296: case OBJ_408_296:
__cosf(gObjects408[index].obj.rot.z * M_DTOR); __cosf(gObjects408[index].obj.rot.z * M_DTOR);
if (D_80161A88 == 2) { if (D_80161A88 == 2) {
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 90); 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); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150);
} }
switch (objId) { switch (objId) {
case OBJECT_293: case OBJ_408_293:
gSPDisplayList(gMasterDisp++, D_6036840); gSPDisplayList(gMasterDisp++, D_6036840);
break; break;
case OBJECT_294: case OBJ_408_294:
gSPDisplayList(gMasterDisp++, D_6036CD0); gSPDisplayList(gMasterDisp++, D_6036CD0);
break; break;
case OBJECT_295: case OBJ_408_295:
case OBJECT_296: case OBJ_408_296:
gSPDisplayList(gMasterDisp++, D_60363B0); gSPDisplayList(gMasterDisp++, D_60363B0);
break; break;
} }
break; break;
case OBJECT_192: case OBJ_2F4_192:
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 255, 150);
Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, gObjects2F4[index].unk_110, 1); Matrix_Scale(gGfxMatrix, 0.4f, 0.4f, gObjects2F4[index].unk_110, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_6034B90); gSPDisplayList(gMasterDisp++, D_6034B90);
break; break;
case OBJECT_230: case OBJ_2F4_230:
RCP_SetupDL_48(); RCP_SetupDL_48();
RCP_SetupDL(&gMasterDisp, 0x45); RCP_SetupDL(&gMasterDisp, 0x45);
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
@ -712,7 +712,7 @@ void func_8005BAB4(s32 objId, s32 index) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_1024AC0); gSPDisplayList(gMasterDisp++, D_1024AC0);
break; break;
case OBJECT_229: case OBJ_2F4_229:
RCP_SetupDL(&gMasterDisp, 0x44); RCP_SetupDL(&gMasterDisp, 0x44);
gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK); gSPSetGeometryMode(gMasterDisp++, G_CULL_BACK);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255);
@ -726,7 +726,7 @@ void func_8005BAB4(s32 objId, s32 index) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_1024AC0); gSPDisplayList(gMasterDisp++, D_1024AC0);
break; break;
case OBJECT_231: case OBJ_2F4_231:
RCP_SetupDL(&gMasterDisp, 0x45); RCP_SetupDL(&gMasterDisp, 0x45);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255);
gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 0); gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 0);
@ -738,7 +738,7 @@ void func_8005BAB4(s32 objId, s32 index) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_1024AC0); gSPDisplayList(gMasterDisp++, D_1024AC0);
break; break;
case OBJECT_215: case OBJ_2F4_215:
RCP_SetupDL_48(); RCP_SetupDL_48();
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 255);
gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 255); gDPSetEnvColor(gMasterDisp++, 0, 0, 0, 255);
@ -746,16 +746,16 @@ void func_8005BAB4(s32 objId, s32 index) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_1024AC0); gSPDisplayList(gMasterDisp++, D_1024AC0);
break; break;
case OBJECT_319: case OBJ_408_319:
func_DF4260_80198310(&gObjects408[index]); func_DF4260_80198310(&gObjects408[index]);
break; break;
} }
} }
void func_8005C5F0(Object_6C* obj6C) { void func_8005C5F0(Item* item) {
s32 i; s32 i;
if ((gFrameCount & 0x18) && (obj6C->unk_46 == 0)) { if ((gFrameCount & 0x18) && (item->unk_46 == 0)) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
RCP_SetupDL(&gMasterDisp, 0x40); RCP_SetupDL(&gMasterDisp, 0x40);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
@ -769,53 +769,53 @@ void func_8005C5F0(Object_6C* obj6C) {
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); 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++) { for (i = 0; i < 8; i++) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_RotateZ(gGfxMatrix, i * 45.0f * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, i * 45.0f * M_DTOR, 1);
Matrix_Translate(gGfxMatrix, 2.0f * obj6C->unk_68, 0.0f, 0.0f, 1); Matrix_Translate(gGfxMatrix, 2.0f * item->unk_68, 0.0f, 0.0f, 1);
Matrix_RotateZ(gGfxMatrix, (gFrameCount + (i * 110.0f)) * M_DTOR * 7.2f * obj6C->unk_54, 1); Matrix_RotateZ(gGfxMatrix, (gFrameCount + (i * 110.0f)) * M_DTOR * 7.2f * item->unk_54, 1);
func_8005980C(2.0f * obj6C->unk_50); func_8005980C(2.0f * item->unk_50);
gSPDisplayList(gMasterDisp++, D_101CAE0); gSPDisplayList(gMasterDisp++, D_101CAE0);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
} }
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN);
} }
void func_8005C900(Object_6C* obj6C) { void func_8005C900(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
func_8005980C(obj6C->unk_68); func_8005980C(item->unk_68);
gSPDisplayList(gMasterDisp++, D_101A570); gSPDisplayList(gMasterDisp++, D_101A570);
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
} }
void func_8005C9C0(Object_6C* obj6C) { void func_8005C9C0(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 3000, 0, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
func_8005980C(obj6C->unk_68); func_8005980C(item->unk_68);
gSPDisplayList(gMasterDisp++, D_1019CA0); gSPDisplayList(gMasterDisp++, D_1019CA0);
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
} }
void func_8005CA80(Object_6C* obj6C) { void func_8005CA80(Item* item) {
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 1900, 1700, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 1900, 1700, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
func_8005980C(obj6C->unk_68); func_8005980C(item->unk_68);
gSPDisplayList(gMasterDisp++, D_1016870); gSPDisplayList(gMasterDisp++, D_1016870);
gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR); gSPClearGeometryMode(gMasterDisp++, G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR);
} }
void func_8005CB44(Object_6C* obj6C) { void func_8005CB44(Item* item) {
if (gCurrentLevel == LEVEL_AQUAS) { if (gCurrentLevel == LEVEL_AQUAS) {
func_8005980C(obj6C->unk_68); func_8005980C(item->unk_68);
gSPDisplayList(gMasterDisp++, D_3005980); gSPDisplayList(gMasterDisp++, D_3005980);
} else { } else {
func_8005980C(obj6C->unk_68 * 0.1f); func_8005980C(item->unk_68 * 0.1f);
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN);
@ -827,8 +827,8 @@ void func_8005CB44(Object_6C* obj6C) {
} }
} }
void func_8005CC9C(Object_6C* obj6C) { void func_8005CC9C(Item* item) {
func_8005980C(obj6C->unk_68 * 0.1f); func_8005980C(item->unk_68 * 0.1f);
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON); gSPTexture(gMasterDisp++, 2000, 2000, 0, G_TX_RENDERTILE, G_ON);
gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN); gSPSetGeometryMode(gMasterDisp++, G_TEXTURE_GEN);
@ -839,16 +839,16 @@ void func_8005CC9C(Object_6C* obj6C) {
gSPDisplayList(gMasterDisp++, D_101A8E0); gSPDisplayList(gMasterDisp++, D_101A8E0);
} }
void func_8005CDA8(Object_6C* obj6C) { void func_8005CDA8(Item* item) {
s32 i; s32 i;
obj6C->obj.rot.y = (Math_Atan2F(gPlayer[D_801778A0].unk_040.x - obj6C->obj.pos.x, item->obj.rot.y = (Math_Atan2F(gPlayer[D_801778A0].unk_040.x - item->obj.pos.x,
gPlayer[D_801778A0].unk_040.z - (obj6C->obj.pos.z + D_80177D20)) * gPlayer[D_801778A0].unk_040.z - (item->obj.pos.z + D_80177D20)) *
180.0f) / 180.0f) /
M_PI; M_PI;
if (obj6C->unk_46 != 0) { if (item->unk_46 != 0) {
RCP_SetupDL(&gMasterDisp, 0x29); 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 { } else {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); 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++) { for (i = 0; i < 7; i++) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_RotateZ(gGfxMatrix, (i * 360.0f / 7.0f) * M_DTOR, 1); 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); Matrix_SetGfxMtx(&gMasterDisp);
gSPDisplayList(gMasterDisp++, D_102FE80); gSPDisplayList(gMasterDisp++, D_102FE80);
Matrix_Pop(&gGfxMatrix); 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) { void Object_80_Draw(Object_80* obj80, s32 arg1) {
obj80->obj.pos.y += D_8017847C; 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; obj80->obj.pos.y -= D_8017847C;
if (obj80->unk_1C.drawType == 0) { if (obj80->info.drawType == 0) {
if ((obj80->obj.id == OBJECT_19) || (obj80->obj.id == OBJECT_55) || (obj80->obj.id == OBJECT_9) || if ((obj80->obj.id == OBJ_80_19) || (obj80->obj.id == OBJ_80_55) || (obj80->obj.id == OBJ_80_9) ||
(obj80->obj.id == OBJECT_50)) { (obj80->obj.id == OBJ_80_50)) {
RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
if (arg1 < 0) { if (arg1 < 0) {
func_800596C0(); func_800596C0();
} }
gSPDisplayList(gMasterDisp++, obj80->unk_1C.dList); gSPDisplayList(gMasterDisp++, obj80->info.dList);
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
} else { } else {
if (obj80->obj.id == OBJECT_8) { if (obj80->obj.id == OBJ_80_8) {
if (arg1 < 0) { if (arg1 < 0) {
return; // weird control flow return; // weird control flow
} }
@ -957,14 +957,14 @@ void Object_80_Draw(Object_80* obj80, s32 arg1) {
if (arg1 < 0) { if (arg1 < 0) {
func_800596C0(); func_800596C0();
} }
gSPDisplayList(gMasterDisp++, obj80->unk_1C.dList); gSPDisplayList(gMasterDisp++, obj80->info.dList);
if (obj80->obj.id == OBJECT_8) { if (obj80->obj.id == OBJ_80_8) {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); 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); 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; obj4C->obj.pos.y += D_8017847C;
func_8005D008(&obj4C->obj, 0); func_8005D008(&obj4C->obj, 0);
obj4C->obj.pos.y -= D_8017847C; obj4C->obj.pos.y -= D_8017847C;
if (obj4C->unk_1C.drawType == 0) { if (obj4C->info.drawType == 0) {
gSPDisplayList(gMasterDisp++, obj4C->unk_1C.dList); gSPDisplayList(gMasterDisp++, obj4C->info.dList);
} else if (obj4C->unk_1C.draw != NULL) { } else if (obj4C->info.draw != NULL) {
obj4C->unk_1C.draw(&obj4C->obj); 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) { void Object_2F4_Draw2(Object_2F4* obj2F4) {
Vec3f sp34 = { 0.0f, 0.0f, 0.0f }; Vec3f sp34 = { 0.0f, 0.0f, 0.0f };
if (obj2F4->unk_01C.draw != NULL) { if (obj2F4->info.draw != NULL) {
switch (obj2F4->obj.id) { switch (obj2F4->obj.id) {
case OBJECT_194: case OBJ_2F4_194:
func_8006B74C(obj2F4); func_8006B74C(obj2F4);
return; return;
case OBJECT_236: case OBJ_2F4_236:
func_E16C50_80190F08(obj2F4); func_E16C50_80190F08(obj2F4);
return; 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); func_8006B74C(obj2F4);
} else { } else {
if (obj2F4->unk_01C.unk_19 != 0) { if (obj2F4->info.unk_19 != 0) {
obj2F4->obj.pos.y += D_8017847C; 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; 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, 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 { } else {
func_8005D008(&obj2F4->obj, obj2F4->unk_01C.drawType); func_8005D008(&obj2F4->obj, obj2F4->info.drawType);
} }
if (obj2F4->unk_01C.drawType == 0) { if (obj2F4->info.drawType == 0) {
gSPDisplayList(gMasterDisp++, obj2F4->unk_01C.dList); gSPDisplayList(gMasterDisp++, obj2F4->info.dList);
func_8005F1EC(&obj2F4->sfxPos); func_8005F1EC(&obj2F4->sfxPos);
} else { } else {
obj2F4->unk_01C.draw(&obj2F4->obj); obj2F4->info.draw(&obj2F4->obj);
func_8005F1EC(&obj2F4->sfxPos); 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)) { (D_80161410 > 0)) {
Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80177E98[obj2F4->unk_0E4]); Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80177E98[obj2F4->unk_0E4]);
} }
} }
if ((obj2F4->unk_0CA[0] != 0) && (D_80161410 > 0)) { 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]); Matrix_MultVec3f(gGfxMatrix, &sp34, &D_80161578[0]);
if (D_80161578[0].z > -200.0f) { if (D_80161578[0].z > -200.0f) {
obj2F4->unk_0CA[0] = 0; obj2F4->unk_0CA[0] = 0;
@ -1037,7 +1037,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) {
f32 var_fv1; f32 var_fv1;
D_801615EC = 0; 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(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_Translate(gCalcMatrix, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 0);
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
@ -1046,7 +1046,7 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) {
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
var_fv0 = 0.0f; var_fv0 = 0.0f;
var_fv1 = -12000.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_fv0 = 1000.0f;
var_fv1 = -25000.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_RotateY(gCalcMatrix, obj2F4->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gCalcMatrix, obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateX(gCalcMatrix, obj2F4->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gCalcMatrix, obj2F4->obj.rot.z * 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; 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; 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_Translate(gGfxMatrix, obj2F4->obj.pos.x, obj2F4->obj.pos.y, obj2F4->obj.pos.z, 1);
Matrix_MultVec3f(gGfxMatrix, &sp50, &D_801615E0); Matrix_MultVec3f(gGfxMatrix, &sp50, &D_801615E0);
if ((gPlayer[0].unk_1C8 == 2) || (gPlayer[0].unk_1C8 == 0) || if ((gPlayer[0].unk_1C8 == 2) || (gPlayer[0].unk_1C8 == 0) ||
((obj2F4->obj.id == OBJECT_197) && (obj2F4->unk_0E4 >= 100)) || ((obj2F4->obj.id == OBJ_2F4_197) && (obj2F4->unk_0E4 >= 100)) ||
((obj2F4->obj.id == OBJECT_195) && (obj2F4->unk_01C.bonus != 0))) { ((obj2F4->obj.id == OBJ_2F4_195) && (obj2F4->info.bonus != 0))) {
var_ft5 = var_fv0 = 3000.0f; var_ft5 = var_fv0 = 3000.0f;
var_fv1 = -29000.0f; var_fv1 = -29000.0f;
var_fa1 = 0.7f; 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 ((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.x) < (fabsf(D_801615E0.z * var_fa1) + var_ft5)) {
if (fabsf(D_801615E0.y) < (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_RotateY(gGfxMatrix, obj2F4->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, obj2F4->obj.rot.x * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj2F4->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, obj2F4->obj.rot.z * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj2F4->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
obj2F4->unk_01C.draw(&obj2F4->obj); obj2F4->info.draw(&obj2F4->obj);
D_801615EC = 1; D_801615EC = 1;
if ((gPlayer[0].unk_1C8 == 3) && 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->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; D_80177E98[obj2F4->unk_0E4] = D_801615E0;
} }
} }
@ -1102,14 +1102,14 @@ void Object_2F4_Draw1(Object_2F4* obj2F4) {
} }
if (D_801615EC == 0) { if (D_801615EC == 0) {
obj2F4->unk_0CA[D_801778A0] = 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); Object_Kill(&obj2F4->obj, &obj2F4->sfxPos);
} }
} }
for (var_v1 = 0; var_v1 < gCamCount; var_v1++) { for (var_v1 = 0; var_v1 < gCamCount; var_v1++) {
if (obj2F4->unk_0CA[var_v1] != 0) { if (obj2F4->unk_0CA[var_v1] != 0) {
D_80161578[var_v1] = D_801615E0; 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)) { if ((var_v1 == D_801778A0) && (D_80161578[var_v1].z > -300.0f)) {
obj2F4->unk_0CA[var_v1] = 0; obj2F4->unk_0CA[var_v1] = 0;
} }
@ -1127,21 +1127,21 @@ void Object_408_Draw(Object_408* obj408, s32 arg1) {
f32 sp3C; f32 sp3C;
Vec3f sp30 = { 0.0f, 0.0f, 0.0f }; 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; 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; obj408->obj.pos.y -= obj408->unk_068 + D_8017847C;
} else { } else {
func_8005D1F0(&obj408->obj, obj408->unk_01C.drawType); func_8005D1F0(&obj408->obj, obj408->info.drawType);
} }
Matrix_MultVec3f(&D_801615F0, &sp30, &D_801615D0); Matrix_MultVec3f(&D_801615F0, &sp30, &D_801615D0);
func_8005F290(&obj408->sfxPos, &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_fa1 = 6000.0f;
var_fv0 = 6000.0f; var_fv0 = 6000.0f;
var_ft5 = 0.9f; var_ft5 = 0.9f;
var_fv1 = -20000.0f; var_fv1 = -20000.0f;
} else if (obj408->obj.id == OBJECT_313) { } else if (obj408->obj.id == OBJ_408_313) {
var_fv1 = -25000.0f; var_fv1 = -25000.0f;
var_ft5 = 0.7f; var_ft5 = 0.7f;
var_fa1 = 3000.0f; 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.x) < (fabsf(D_801615D0.z * var_ft5) + var_fa1)) {
if (fabsf(D_801615D0.y) < (fabsf(D_801615D0.z * var_ft5) + var_fa1)) { if (fabsf(D_801615D0.y) < (fabsf(D_801615D0.z * var_ft5) + var_fa1)) {
sp3C = 1.0f; sp3C = 1.0f;
if (obj408->obj.id != OBJECT_309) { if (obj408->obj.id != OBJ_408_309) {
if (obj408->obj.id != OBJECT_316) { if (obj408->obj.id != OBJ_408_316) {
func_8005F670(&obj408->obj.pos); func_8005F670(&obj408->obj.pos);
} }
if (obj408->unk_01C.drawType != 2) { if (obj408->info.drawType != 2) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
} }
if (arg1 < 0) { if (arg1 < 0) {
func_800596C0(); func_800596C0();
} }
obj408->unk_01C.draw(&obj408->obj); obj408->info.draw(&obj408->obj);
} }
} }
} }
} }
D_801615D0.y = sp3C; D_801615D0.y = sp3C;
if (obj408->obj.id == OBJECT_309) { if (obj408->obj.id == OBJ_408_309) {
obj408->unk_308 = D_801615D0; obj408->unk_308 = D_801615D0;
func_8005F670(&obj408->obj.pos); func_8005F670(&obj408->obj.pos);
Matrix_SetGfxMtx(&gMasterDisp); 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)) { if ((arg1 < 0) && (obj8C->obj.pos.y < 7.0f)) {
return; 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); 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; obj8C->obj.pos.y += D_8017847C;
func_8005D008(&obj8C->obj, 0); func_8005D008(&obj8C->obj, 0);
obj8C->obj.pos.y -= D_8017847C; obj8C->obj.pos.y -= D_8017847C;
} else { } else {
func_8005D008(&obj8C->obj, 0); func_8005D008(&obj8C->obj, 0);
} }
if (obj8C->unk_1C.draw != NULL) { if (obj8C->info.draw != NULL) {
obj8C->unk_1C.draw(&obj8C->obj); obj8C->info.draw(&obj8C->obj);
} }
} }
@ -1205,7 +1205,7 @@ void Object_8C_Draw2(Object_8C* obj8C) {
f32 var_fv0; f32 var_fv0;
u8 sp3B = 0; 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); Matrix_Translate(gGfxMatrix, obj8C->obj.pos.x, obj8C->obj.pos.y + D_8017847C, obj8C->obj.pos.z + D_80177D20, 1);
} else { } else {
Matrix_Translate(gGfxMatrix, obj8C->obj.pos.x, obj8C->obj.pos.y, obj8C->obj.pos.z + D_80177D20, 1); 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 ((sp40.z < 0.0f) && (var_fv0 < sp40.z)) {
if (fabsf(sp40.x) < (fabsf(sp40.z * 0.5f) + 500.0f)) { if (fabsf(sp40.x) < (fabsf(sp40.z * 0.5f) + 500.0f)) {
if (fabsf(sp40.y) < (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_RotateY(gGfxMatrix, obj8C->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, obj8C->obj.rot.x * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj8C->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, obj8C->obj.rot.z * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, obj8C->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
obj8C->unk_1C.draw(&obj8C->obj); obj8C->info.draw(&obj8C->obj);
} }
sp3B = 1; sp3B = 1;
} }
} }
} }
func_8005F290(&obj8C->sfxPos, &sp40); 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); 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 sp44 = { 0.0f, 0.0f, 0.0f };
Vec3f sp38; Vec3f sp38;
u8 var_v0; 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); Matrix_MultVec3f(gGfxMatrix, &sp44, &sp38);
var_v0 = 0; var_v0 = 0;
if ((sp38.z < 0.0f) && (sp38.z > -12000.0f)) { if ((sp38.z < 0.0f) && (sp38.z > -12000.0f)) {
if (fabsf(sp38.x) < (fabsf(sp38.z * 0.5f) + 500.0f)) { if (fabsf(sp38.x) < (fabsf(sp38.z * 0.5f) + 500.0f)) {
if (fabsf(sp38.y) < (fabsf(sp38.z * 0.5f) + 500.0f)) { if (fabsf(sp38.y) < (fabsf(sp38.z * 0.5f) + 500.0f)) {
if (obj6C->unk_1C.draw != NULL) { if (item->info.draw != NULL) {
Matrix_RotateY(gGfxMatrix, obj6C->obj.rot.y * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, item->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, obj6C->obj.rot.x * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, item->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, obj6C->obj.rot.z * M_DTOR, 1); Matrix_RotateZ(gGfxMatrix, item->obj.rot.z * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (obj6C->unk_1C.drawType == 0) { if (item->info.drawType == 0) {
gSPDisplayList(gMasterDisp++, obj6C->unk_1C.dList); gSPDisplayList(gMasterDisp++, item->info.dList);
} else { } else {
obj6C->unk_1C.draw(&obj6C->obj); item->info.draw(&item->obj);
} }
} }
var_v0 = 1; var_v0 = 1;
} }
} }
} }
func_8005F290(&obj6C->sfxPos, &sp38); func_8005F290(&item->sfxPos, &sp38);
if ((var_v0 == 0) && (D_80177880 == 1) && (gCamCount == 1) && (obj6C->obj.id < 336) && if ((var_v0 == 0) && (gAllRangeMode == 1) && (gCamCount == 1) && (item->obj.id < 336) &&
(gCurrentLevel != LEVEL_VENOM_2)) { (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) { void func_8005ECD8(s32 index, Object* obj) {
RCP_SetupDL(&gMasterDisp, 0x42); RCP_SetupDL(&gMasterDisp, 0x42);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 180); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 0, 0, 0, 180);
if (obj->id == OBJECT_197) { if (obj->id == OBJ_2F4_197) {
func_8005EA24(&gObjects2F4[index]); func_8005EA24(&gObjects2F4[index]);
} else { } else {
switch (obj->id) { switch (obj->id) {
case OBJECT_230: case OBJ_2F4_230:
Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_118, Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_118,
obj->pos.z + D_80177D20, 1); obj->pos.z + D_80177D20, 1);
break; break;
case OBJECT_229: case OBJ_2F4_229:
case OBJECT_231: case OBJ_2F4_231:
Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_114, Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + gObjects2F4[index].unk_114,
obj->pos.z + D_80177D20, 1); obj->pos.z + D_80177D20, 1);
break; break;
case OBJECT_316: case OBJ_408_316:
Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + D_8017847C, obj->pos.z, 1); Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f + D_8017847C, obj->pos.z, 1);
break; break;
default: default:
Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f, obj->pos.z + D_80177D20, 1); Matrix_Translate(gGfxMatrix, obj->pos.x, D_80177940 + 2.0f, obj->pos.z + D_80177D20, 1);
break; 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_Scale(gGfxMatrix, 1.0f, 0.0f, 1.0f, 1);
Matrix_RotateY(gGfxMatrix, obj->rot.y * M_DTOR, 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_RotateX(gGfxMatrix, obj->rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, obj->rot.z * 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 sp3C = 2000.0f;
f32 sp38 = 0.5f; f32 sp38 = 0.5f;
if (obj58->obj.id == OBJECT_156) { if (obj58->obj.id == OBJ_80_156) {
sp44 = 4000.0f; sp44 = 4000.0f;
sp40 = -13000.0f; sp40 = -13000.0f;
sp3C = 4500.0f; sp3C = 4500.0f;
} else if (gCurrentLevel == LEVEL_VENOM_2) { } else if (gCurrentLevel == LEVEL_VENOM_2) {
sp40 = -20000.0f; sp40 = -20000.0f;
sp38 = 0.4f; sp38 = 0.4f;
} else if (obj58->obj.id == OBJECT_143) { } else if (obj58->obj.id == OBJ_80_143) {
sp44 = 6000.0f; sp44 = 6000.0f;
sp40 = -20000.0f; sp40 = -20000.0f;
sp3C = 6000.0f; sp3C = 6000.0f;
sp38 = 0.9f; 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); Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y + D_8017847C, obj58->obj.pos.z, 1);
} else { } else {
Matrix_Translate(gGfxMatrix, obj58->obj.pos.x, obj58->obj.pos.y, obj58->obj.pos.z, 1); 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.y) < (fabsf(sp48.z * sp38) + sp3C)) {
if (fabsf(sp48.x) < (fabsf(sp48.z * sp38) + sp3C)) { if (fabsf(sp48.x) < (fabsf(sp48.z * sp38) + sp3C)) {
func_8005F670(&obj58->obj.pos); 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_RotateY(gGfxMatrix, obj58->obj.rot.y * M_DTOR, 1);
Matrix_RotateX(gGfxMatrix, obj58->obj.rot.x * M_DTOR, 1); Matrix_RotateX(gGfxMatrix, obj58->obj.rot.x * M_DTOR, 1);
Matrix_RotateZ(gGfxMatrix, obj58->obj.rot.z * 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 { } else {
Matrix_RotateY(gGfxMatrix, obj58->obj.rot.y * M_DTOR, 1); Matrix_RotateY(gGfxMatrix, obj58->obj.rot.y * M_DTOR, 1);
Matrix_SetGfxMtx(&gMasterDisp); 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_408* obj408;
Object_4C* obj4C; Object_4C* obj4C;
Object_58* obj58; Object_58* obj58;
Object_6C* obj6C; Item* item;
Object_80* obj80; 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); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
if (D_80177AB0 == 5) { if (D_80177AB0 == 5) {
gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK); gSPClearGeometryMode(gMasterDisp++, G_CULL_BACK);
} }
for (i = 0, obj58 = gObjects58; i < 200; i++, obj58++) { 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) { if (gCurrentLevel == LEVEL_BOLSE) {
spAC.x = obj58->sfxPos.x; spAC.x = obj58->sfxPos.x;
spAC.y = obj58->sfxPos.y; 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++) { 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)) { if (!(obj408->unk_05C & 1)) {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
} else { } else {
@ -1594,7 +1595,7 @@ void Object_DrawAll(s32 arg0) {
for (i = 0, obj4C = gObjects4C; i < ARRAY_COUNT(gObjects4C); i++, obj4C++) { for (i = 0, obj4C = gObjects4C; i < ARRAY_COUNT(gObjects4C); i++, obj4C++) {
if ((obj4C->obj.status >= 2) && (func_80060FE4(&obj4C->obj.pos, -12000.0f) != 0)) { if ((obj4C->obj.status >= 2) && (func_80060FE4(&obj4C->obj.pos, -12000.0f) != 0)) {
Matrix_Push(&gGfxMatrix); 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); RCP_SetupDL_57(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
} else { } else {
RCP_SetupDL_60(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); 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); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 64, 64, 255, 255);
} }
} }
switch (D_80177880) { switch (gAllRangeMode) {
case 0: case 0:
case 2: case 2:
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
@ -1652,12 +1653,12 @@ void Object_DrawAll(s32 arg0) {
gDPSetFogColor(gMasterDisp++, gFogRed, gFogGreen, gFogBlue, gFogAlpha); gDPSetFogColor(gMasterDisp++, gFogRed, gFogGreen, gFogBlue, gFogAlpha);
gSPFogPosition(gMasterDisp++, gFogNear, gFogFar); gSPFogPosition(gMasterDisp++, gFogNear, gFogFar);
Lights_SetOneLight(&gMasterDisp, -0x3C, -0x3C, 0x3C, 0x96, 0x96, 0x96, 0x14, 0x14, 0x14); Lights_SetOneLight(&gMasterDisp, -0x3C, -0x3C, 0x3C, 0x96, 0x96, 0x96, 0x14, 0x14, 0x14);
for (i = 0, obj6C = gObjects6C; i < ARRAY_COUNT(gObjects6C); i++, obj6C++) { for (i = 0, item = gItems; i < ARRAY_COUNT(gItems); i++, item++) {
if (obj6C->obj.status >= 2) { if (item->obj.status >= 2) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
RCP_SetupDL(&gMasterDisp, 0x1D); RCP_SetupDL(&gMasterDisp, 0x1D);
func_800597C0(arg0); func_800597C0(arg0);
Object_6C_Draw(obj6C, arg0); Item_Draw(item, arg0);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
} }
} }
@ -1673,11 +1674,11 @@ void func_8006046C(s32 arg0) {
RCP_SetupDL(&gMasterDisp, 0x40); RCP_SetupDL(&gMasterDisp, 0x40);
for (i = 0, obj8C = gObjects8C; i < ARRAY_COUNT(gObjects8C); i++, obj8C++) { for (i = 0, obj8C = gObjects8C; i < ARRAY_COUNT(gObjects8C); i++, obj8C++) {
if (obj8C->obj.status >= 2) { 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.y = (-gPlayer[D_801778A0].unk_058 * 180.0f) / M_PI;
obj8C->obj.rot.x = (gPlayer[D_801778A0].unk_05C * 180.0f) / M_PI; obj8C->obj.rot.x = (gPlayer[D_801778A0].unk_05C * 180.0f) / M_PI;
} }
if (D_80177880 == 1) { if (gAllRangeMode == 1) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Object_8C_Draw2(obj8C); Object_8C_Draw2(obj8C);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
@ -1686,7 +1687,7 @@ void func_8006046C(s32 arg0) {
Object_8C_Draw1(obj8C, arg0); Object_8C_Draw1(obj8C, arg0);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
func_8005F1EC(&obj8C->sfxPos); func_8005F1EC(&obj8C->sfxPos);
if (obj8C->obj.id == OBJECT_374) { if (obj8C->obj.id == OBJ_8C_374) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
func_8005ECD8(i, &obj8C->obj); func_8005ECD8(i, &obj8C->obj);
Matrix_Pop(&gGfxMatrix); Matrix_Pop(&gGfxMatrix);
@ -1695,7 +1696,7 @@ void func_8006046C(s32 arg0) {
} }
} }
for (i = 0, obj408 = gObjects408; i < ARRAY_COUNT(gObjects408); i++, obj408++) { 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)) { if (!(obj408->unk_05C & 1)) {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar); RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
} else { } else {

File diff suppressed because it is too large Load Diff

View File

@ -384,7 +384,7 @@ void func_800A26C0(void) {
gCamCount = 1; gCamCount = 1;
gLifeCount[0] = 2; gLifeCount[0] = 2;
D_80177D20 = 0.0f; 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 = D_80178410 = D_80177B40 = D_80177854 = D_8017784C = D_80177898 = D_80161734 = D_80161A2C =
gBgColor = D_80178340 = 0; gBgColor = D_80178340 = 0;
gNextGameState = D_80177C94 = D_80177CAC = D_80177CB4 = D_80177CBC = D_80177CC4 = D_80177C9C = 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_800D2860[i] = R_CBUTTONS;
D_80178380[i] = 0; D_80178380[i] = 0;
} }
D_8017789C = 0; gVersusStage = 0;
D_801778A4 = 3; D_801778A4 = 3;
gBlurAlpha = 255; gBlurAlpha = 255;
for (i = 0; i < 30; i++) { 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++, 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); 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); gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 0, 0, 0, 255);
} else { } else {
gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 100, 100, 255, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x0, 100, 100, 255, 255);
@ -529,7 +529,7 @@ void func_800A26C0(void) {
func_80040CDC(); func_80040CDC();
func_8008865C(); func_8008865C();
func_8002E548(); func_8002E548();
if ((gGameState == GSTATE_PLAY) && (D_801778E8 != 0)) { if ((gGameState == GSTATE_PLAY) && (gVersusMode)) {
func_800C1ED4(); func_800C1ED4();
} }
func_80084688(0, D_80177C50); func_80084688(0, D_80177C50);
@ -550,7 +550,7 @@ Object_2F4* func_800A3608(s32 arg0) {
Object_2F4_Initialize(obj2F4); Object_2F4_Initialize(obj2F4);
obj2F4->obj.status = 1; obj2F4->obj.status = 1;
obj2F4->obj.id = arg0; obj2F4->obj.id = arg0;
Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); Object_SetInfo(&obj2F4->info, obj2F4->obj.id);
break; 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) { if (character == RCID_PEPPY) {
var_v1 = 3; var_v1 = 3;
} }
if ((gTeamHealth[var_v1] <= 0) && (gTeamHealth[var_v1] != -2)) { if ((gTeamShields[var_v1] <= 0) && (gTeamShields[var_v1] != -2)) {
return; return;
} }
} }
@ -644,7 +644,7 @@ void func_800BB5D0(void) {
if (temp_ft0 == RCID_PEPPY) { if (temp_ft0 == RCID_PEPPY) {
var_v1 = 3; 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)) { (D_801782A4 != 3) && (D_801782A4 != 1000)) {
RCP_SetupDL(&gMasterDisp, 0x4C); RCP_SetupDL(&gMasterDisp, 0x4C);
gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255); gDPSetPrimColor(gMasterDisp++, 0x00, 0x00, 255, 255, 0, 255);
@ -652,7 +652,7 @@ void func_800BB5D0(void) {
func_80084B94(1); func_80084B94(1);
} }
if ((D_801782A4 != 2) && (D_801782A4 != 3) && (D_801782A4 != 1000)) { 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; temp_ft0 = (s32) D_80177D68;

View File

@ -31,7 +31,7 @@ void Graphics_NMIWipe(void) {
gStopTasks = 1; gStopTasks = 1;
} }
for (i = 0; i < MAXCONTROLLERS; i++) { for (i = 0; i < MAXCONTROLLERS; i++) {
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
D_80137E84[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[2] = G_MAXZ / 2;
gViewport->vp.vtrans[3] = 0; gViewport->vp.vtrans[3] = 0;
gSPViewport((*gfxPtr)++, gViewport++); 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); gDPSetDepthImage((*gfxPtr)++, &gZBuffer);
gDPSetColorImage((*gfxPtr)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, width, &gZBuffer); gDPSetColorImage((*gfxPtr)++, G_IM_FMT_RGBA, G_IM_SIZ_16b, width, &gZBuffer);
gDPSetFillColor((*gfxPtr)++, FILL_COLOR(GPACK_ZDZ(G_MAXFBZ, 0))); 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/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") #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) { if (ent1C->timer == 0) {
ent1C->hits = 0; ent1C->hits = 0;
} }
if (D_80177880 == 0) { if (gAllRangeMode == 0) {
ent1C->pos.z -= D_80177D08; ent1C->pos.z -= D_80177D08;
} else if (gPlayer[0].unk_1C8 == 3) { } else if (gPlayer[0].unk_1C8 == 3) {
ent1C->pos.x += gPlayer[0].unk_0C0.x; ent1C->pos.x += gPlayer[0].unk_0C0.x;
@ -117,7 +117,7 @@ Object_8C* func_8007783C(s32 objId) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 2; obj8C->obj.status = 2;
obj8C->obj.id = objId; obj8C->obj.id = objId;
Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); Object_SetInfo(&obj8C->info, obj8C->obj.id);
break; 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) { void func_800778C4(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6, f32 arg7) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_339; obj8C->obj.id = OBJ_8C_339;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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_4C = 0;
obj8C->unk_6C = 0.5f; obj8C->unk_6C = 0.5f;
obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; 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; 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) { void func_80078D60(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_393; obj8C->obj.id = OBJ_8C_393;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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_4E = 2;
} }
obj8C->unk_50 = 0xE; 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) { 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); Object_8C_Initialize(obj8C);
obj8C->obj.status = 2; obj8C->obj.status = 2;
obj8C->obj.id = OBJECT_357; obj8C->obj.id = OBJ_8C_357;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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.y = sp48.y;
obj8C->unk_54.z = sp48.z; obj8C->unk_54.z = sp48.z;
} else { } 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.x = (Rand_ZeroOne() - 0.5f) * 10.0f;
obj8C->unk_54.z = (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.x = (Rand_ZeroOne() - 0.5f) * 30.0f;
obj8C->unk_60.y = (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; 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) { 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.x += obj8C->unk_60.x;
obj8C->obj.rot.y += obj8C->unk_60.y; obj8C->obj.rot.y += obj8C->unk_60.y;
obj8C->obj.rot.z += obj8C->unk_60.z; obj8C->obj.rot.z += obj8C->unk_60.z;
if (gLevelType == 0) { if (gLevelType == LEVELTYPE_GROUND) {
obj8C->unk_54.y -= 0.5f; obj8C->unk_54.y -= 0.5f;
} }
if ((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].unk_1C8 == 7) && (D_80177A80 >= 176)) { 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) { void func_8007A4B8(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_383; obj8C->obj.id = OBJ_8C_383;
obj8C->unk_6C = arg4; obj8C->unk_6C = arg4;
obj8C->unk_50 = 50; obj8C->unk_50 = 50;
obj8C->unk_44 = 200; 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.y = yPos;
obj8C->obj.pos.z = zPos; obj8C->obj.pos.z = zPos;
func_80019218(0x2940F026, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); 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) { 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) { void func_8007A5F8(Object_8C* obj8C, Vec3f* arg1, u32 arg2) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 2; obj8C->obj.status = 2;
obj8C->obj.id = OBJECT_373; obj8C->obj.id = OBJ_8C_373;
obj8C->obj.pos.x = arg1->x; obj8C->obj.pos.x = arg1->x;
obj8C->obj.pos.y = arg1->y; obj8C->obj.pos.y = arg1->y;
obj8C->obj.pos.z = arg1->z; obj8C->obj.pos.z = arg1->z;
@ -836,7 +837,7 @@ void func_8007A5F8(Object_8C* obj8C, Vec3f* arg1, u32 arg2) {
} else { } else {
func_80019218(arg2, &obj8C->sfxPos, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); 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) { 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) { 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) && 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)) { (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; return 1;
} else { } else {
return 0; 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) { void func_8007A818(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, u8 arg5, u8 arg6, u16 arg7) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_359; obj8C->obj.id = OBJ_8C_359;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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) { if (arg7 != 0) {
obj8C->unk_54.x = (Rand_ZeroOne() - 0.5f) * 30.0f; 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) { void func_8007A900(f32 posX, f32 posY, f32 posZ, f32 arg3, u8 arg4, u8 arg5, u16 arg6) {
s32 i; s32 i;
if (gCurrentLevel == 0xC) { if (gCurrentLevel == LEVEL_TITANIA) {
for (i = ARRAY_COUNT(gObjects8C) - 1; i >= 0; i--) { for (i = ARRAY_COUNT(gObjects8C) - 1; i >= 0; i--) {
if (gObjects8C[i].obj.status == 0) { if (gObjects8C[i].obj.status == 0) {
func_8007A818(&gObjects8C[i], posX, posY, posZ, arg3, arg4, arg5, arg6); 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) { void func_8007AC0C(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_372; obj8C->obj.id = OBJ_8C_372;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = D_80177940; obj8C->obj.pos.y = D_80177940;
obj8C->obj.pos.z = posZ; 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->obj.rot.y = arg6;
obj8C->unk_54.x = gPlayer[0].unk_0C0.x * 0.6f; obj8C->unk_54.x = gPlayer[0].unk_0C0.x * 0.6f;
obj8C->unk_54.z = gPlayer[0].unk_0C0.z * 0.6; // Forgotten f means bad codegen obj8C->unk_54.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) { 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) { void func_8007AD58(Object_8C* obj8C, f32 posX, f32 unused_posY, f32 posZ, f32 arg4, f32 arg5, f32 arg6) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_372; obj8C->obj.id = OBJ_8C_372;
obj8C->unk_4E = 1; obj8C->unk_4E = 1;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = D_80177940; 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_70 = arg4;
obj8C->unk_6C = arg5; obj8C->unk_6C = arg5;
obj8C->obj.rot.y = arg6; 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) { 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) { void func_8007AF30(Object_8C* obj8C, f32 posX, f32 posZ, f32 arg3, f32 arg4, f32 arg5) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_382; obj8C->obj.id = OBJ_8C_382;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = -10.0f; obj8C->obj.pos.y = -10.0f;
obj8C->obj.pos.z = posZ; 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_54.z = arg4 - D_80177D08;
obj8C->unk_6C = arg5; obj8C->unk_6C = arg5;
obj8C->unk_50 = 0x64; 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) { 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) { void func_8007B180(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_381; obj8C->obj.id = OBJ_8C_381;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; obj8C->obj.pos.z = posZ;
obj8C->unk_44 = 0xFF; obj8C->unk_44 = 0xFF;
obj8C->unk_6C = arg4; 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); func_80019218(0x1100000C, &obj8C->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
} }
void func_8007B228(f32 posX, f32 posY, f32 posZ, f32 arg3) { void func_8007B228(f32 posX, f32 posY, f32 posZ, f32 arg3) {
s32 i; 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) { if (gObjects8C[i].obj.status == 0) {
func_8007B180(&gObjects8C[i], posX, posY, posZ, arg3); func_8007B180(&gObjects8C[i], posX, posY, posZ, arg3);
break; 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) { void func_8007B2BC(Object_8C* obj8C, f32 xPos, f32 yPos, f32 zPos, f32 arg4, s32 arg5) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_384; obj8C->obj.id = OBJ_8C_384;
obj8C->obj.pos.x = xPos; obj8C->obj.pos.x = xPos;
obj8C->obj.pos.y = yPos; obj8C->obj.pos.y = yPos;
obj8C->obj.pos.z = zPos; obj8C->obj.pos.z = zPos;
obj8C->unk_6C = arg4; obj8C->unk_6C = arg4;
obj8C->unk_44 = 0xFF; obj8C->unk_44 = 0xFF;
obj8C->unk_4C = arg5; 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) { 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_fv0 = 15.0f;
var_fv1 = 0.05f; var_fv1 = 0.05f;
var_v0 = 4; 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_fv0 = 10.0f;
var_fv1 = 0.1f; var_fv1 = 0.1f;
var_v0 = 4; 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) { void func_8007B494(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4, s32 arg5) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_385; obj8C->obj.id = OBJ_8C_385;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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 { } else {
obj8C->unk_46 = 3; 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) { 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) { void func_8007B7E8(Object_8C* obj8C, f32 posX, f32 posY, f32 posZ, f32 arg4) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_364; obj8C->obj.id = OBJ_8C_364;
obj8C->obj.pos.x = posX; obj8C->obj.pos.x = posX;
obj8C->obj.pos.y = posY; obj8C->obj.pos.y = posY;
obj8C->obj.pos.z = posZ; 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_46 = 1;
obj8C->unk_70 = arg4 * 0.2f; obj8C->unk_70 = arg4 * 0.2f;
obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f;
Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); Object_SetInfo(&obj8C->info, obj8C->obj.id);
} }
void func_8007B8F8(f32 posX, f32 posY, f32 posZ, f32 arg3) { 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); RCP_SetupDL(&gMasterDisp, 0x24);
if (arg0 == 0) { if (arg0 == 0) {
for (i = 1; i < 4; i++) { for (i = 1; i < 4; i++) {
if (((gTeamHealth[i] != 0) || (gPlayer[0].unk_1C8 != 7)) && (gTeamHealth[i] <= 0) && if (((gTeamShields[i] != 0) || (gPlayer[0].unk_1C8 != 7)) && (gTeamShields[i] <= 0) &&
(gTeamHealth[i] != -2)) { (gTeamShields[i] != -2)) {
Matrix_Push(&gGfxMatrix); Matrix_Push(&gGfxMatrix);
Matrix_Translate(gGfxMatrix, D_800D1A70[i - 1].x, D_800D1A70[i - 1].y, D_800D1A70[i - 1].z, 1); 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); 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) { 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); TextureRect_8bIA(&gMasterDisp, D_3000B20, 32, 5, arg0, arg1, arg2, arg3);
} else { } else {
TextureRect_8bIA(&gMasterDisp, D_1000E80, 48, 9, arg0, arg1, arg2, arg3); 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) { 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); TextureRect_8bCI(&gMasterDisp, D_300D3C0, D_300D408, 24, 3, arg0, arg1, arg2, arg3);
} else { } else {
TextureRect_8bCI(&gMasterDisp, D_10128C0, D_1012988, 40, 5, arg0, arg1, arg2, arg3); 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) { 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); TextureRect_8bCI(&gMasterDisp, D_300D350, D_300D398, 24, 3, arg0, arg1, arg2, arg3);
} else { } else {
TextureRect_8bCI(&gMasterDisp, D_10127D0, D_1012898, 40, 5, arg0, arg1, arg2, arg3); TextureRect_8bCI(&gMasterDisp, D_10127D0, D_1012898, 40, 5, arg0, arg1, arg2, arg3);
@ -403,7 +403,7 @@ void func_800884E4(void) {
var_v1 = 0xFF0000; var_v1 = 0xFF0000;
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
if (gTeamHealth[3 - i] <= 0) { if (gTeamShields[3 - i] <= 0) {
D_80177B50[D_80177B48] ^= var_v1; D_80177B50[D_80177B48] ^= var_v1;
} else { } else {
D_80177B50[D_80177B48] |= var_v1; D_80177B50[D_80177B48] |= var_v1;
@ -429,7 +429,7 @@ void func_8008865C(void) {
s32 func_800886B8(void) { s32 func_800886B8(void) {
s32 var_v1 = 0; 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)) { if ((var_fv1 != 0.0f) && (D_80161810[4] != 0)) {
return 0; return 0;
@ -479,7 +479,7 @@ void func_80088784(s32 arg0) {
Matrix_Scale(gGfxMatrix, 0.37f, 0.37f, 0.37f, 1); Matrix_Scale(gGfxMatrix, 0.37f, 0.37f, 0.37f, 1);
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
if (gLevelType == 0) { if (gLevelType == LEVELTYPE_GROUND) {
gSPDisplayList(gMasterDisp++, D_800D1D4C[arg0]); gSPDisplayList(gMasterDisp++, D_800D1D4C[arg0]);
} else { } else {
gSPDisplayList(gMasterDisp++, D_800D1D94[arg0]); gSPDisplayList(gMasterDisp++, D_800D1D94[arg0]);
@ -677,7 +677,7 @@ void func_80089E98(s32 arg0) {
break; break;
case 103: case 103:
if (D_801778E8 == 1) { if (gVersusMode == true) {
func_80089670(); func_80089670();
} else { } else {
func_80089C38(); func_80089C38();
@ -712,19 +712,19 @@ s32 func_8008AC54(s32 arg0) {
for (i = 0, obj2F4 = gObjects2F4; i < 60; i++, obj2F4++) { for (i = 0, obj2F4 = gObjects2F4; i < 60; i++, obj2F4++) {
switch (arg0) { switch (arg0) {
case 0: case 0:
if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJECT_190)) { if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJ_2F4_190)) {
ret++; ret++;
} }
break; break;
case 1: case 1:
if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJECT_191)) { if ((obj2F4->obj.status == 2) && (obj2F4->obj.id == OBJ_2F4_191)) {
ret++; ret++;
} }
break; break;
case 2: 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++; ret++;
} }
break; break;
@ -869,7 +869,7 @@ void func_8008B2F0(void) {
D_801617A4 = D_801617A8 = 1.0f; 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); D_801617AC = var_fv0 / ((256.0f * D_801617A8) - 1.0f);
if (gGoldRingCount[0] >= 3) { if (gGoldRingCount[0] >= 3) {
@ -907,7 +907,7 @@ void func_8008B2F0(void) {
Math_SmoothStepToF(&D_801617A8, D_801617A4, 0.02f, 1000.0f, 0.001f); 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) { if (var_fv0 > (256.0f * D_801617A8) - 1.0f) {
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_800D20E8[] = { 60.0f, 220.0f, 60.0f, 220.0f };
f32 D_800D20F8[] = { 78.0f, 78.0f, 198.0f, 198.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); RCP_SetupDL(&gMasterDisp, 0x4E);
gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255); gDPSetPrimColor(gMasterDisp++, 0, 0, 255, 255, 255, 255);
@ -1179,7 +1179,7 @@ void func_8008D4F0(f32 arg0, f32 arg1) {
s32 temp_t9; s32 temp_t9;
s32 var_v1; s32 var_v1;
if (D_801778E8 != 0) { if (gVersusMode) {
temp = 2.0f; temp = 2.0f;
sp60 = 1.0f; sp60 = 1.0f;
var_v1 = D_801778A0; var_v1 = D_801778A0;
@ -1321,7 +1321,7 @@ void func_8008DE68(void) {
f32 temp7; f32 temp7;
f32 var_fv0; 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)) { if ((D_80177848 >= 0) && (D_801616BC == -1.0f)) {
func_80019218(0x4900C028, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x4900C028, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_801616BC = 255.0f; D_801616BC = 255.0f;
@ -1445,7 +1445,7 @@ void func_8008E51C(s32* arg0, f32 arg1) {
} }
void func_8008E5E8(void) { void func_8008E5E8(void) {
if (D_801778E8 != 0) { if (gVersusMode) {
func_8008DC34(); func_8008DC34();
} }
func_8008A4DC(); func_8008A4DC();
@ -1571,7 +1571,7 @@ void func_8008F96C(void) {
RCP_SetupDL_36(); RCP_SetupDL_36();
if ((D_80177880 != 2) && (D_80161708 != 0)) { if ((gAllRangeMode != 2) && (D_80161708 != 0)) {
func_8008D4F0(246.0f, 28.0f); func_8008D4F0(246.0f, 28.0f);
func_8008EA14(250.0f, 38.0f); func_8008EA14(250.0f, 38.0f);
} }
@ -1773,7 +1773,7 @@ s32 func_80090E8C(Object_2F4* obj2F4) {
f32 var_fv1_2; f32 var_fv1_2;
if (obj2F4->unk_0BC == 0) { if (obj2F4->unk_0BC == 0) {
if (gLevelType == 1) { if (gLevelType == LEVELTYPE_SPACE) {
x = (Rand_ZeroOne() - 0.5f) * 20000.0f; x = (Rand_ZeroOne() - 0.5f) * 20000.0f;
y = (Rand_ZeroOne() - 0.5f) * 5000.0f; y = (Rand_ZeroOne() - 0.5f) * 5000.0f;
z = (Rand_ZeroOne() - 0.5f) * 20000.0f; z = (Rand_ZeroOne() - 0.5f) * 20000.0f;
@ -1842,7 +1842,7 @@ s32 func_800910C0(Object_2F4* obj2F4) {
} }
void func_80091254(Object_2F4* obj2F4) { void func_80091254(Object_2F4* obj2F4) {
if (D_80177880 == 1) { if (gAllRangeMode == 1) {
func_80090E8C(obj2F4); func_80090E8C(obj2F4);
} else { } else {
func_800910C0(obj2F4); func_800910C0(obj2F4);
@ -1870,7 +1870,7 @@ s32 func_80091368(Object_2F4* obj2F4) {
obj2F4->unk_124.y = 20000.0f; obj2F4->unk_124.y = 20000.0f;
obj2F4->unk_054 = 1; obj2F4->unk_054 = 1;
obj2F4->unk_064 = 1; obj2F4->unk_064 = 1;
gTeamHealth[obj2F4->unk_0E4] = 1; gTeamShields[obj2F4->unk_0E4] = 1;
switch (obj2F4->unk_0E4) { switch (obj2F4->unk_0E4) {
case 1: case 1:
@ -1885,7 +1885,7 @@ s32 func_80091368(Object_2F4* obj2F4) {
func_800BA808(gMsg_ID_20222, RCID_SLIPPY); func_800BA808(gMsg_ID_20222, RCID_SLIPPY);
break; break;
} }
gTeamHealth[obj2F4->unk_0E4] = -1; gTeamShields[obj2F4->unk_0E4] = -1;
break; break;
case 1: case 1:
@ -1930,7 +1930,7 @@ void func_800914FC(Object_2F4* obj2F4) {
break; 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_064 = 0;
obj2F4->unk_0B8 = 3; obj2F4->unk_0B8 = 3;
} }
@ -1966,7 +1966,7 @@ s32 func_80091864(Object_2F4* obj2F4) {
sp44 += 40.0f; sp44 += 40.0f;
if (sp44 >= 360.0f) { if (sp44 >= 360.0f) {
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; sp44 = 0.0f;
} }
obj2F4->unk_050 = 0; obj2F4->unk_050 = 0;
@ -2023,7 +2023,7 @@ s32 func_80091B90(Object_2F4* obj2F4) {
obj2F4->unk_14C -= obj2F4->unk_14C * 0.1f; obj2F4->unk_14C -= obj2F4->unk_14C * 0.1f;
obj2F4->unk_144 -= obj2F4->unk_144 * 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->obj.pos.y = D_80177940 + 40.0f;
obj2F4->unk_0E8.y = 0.0f; obj2F4->unk_0E8.y = 0.0f;
} }
@ -2104,7 +2104,7 @@ s32 func_80091F00(Object_2F4* obj2F4) {
obj2F4->unk_14C = sp34.y; obj2F4->unk_14C = sp34.y;
obj2F4->unk_144 = sp34.z; obj2F4->unk_144 = sp34.z;
gTeamHealth[obj2F4->unk_0E4] = obj2F4->unk_0CE; gTeamShields[obj2F4->unk_0E4] = obj2F4->unk_0CE;
if (D_8017829C != 0) { if (D_8017829C != 0) {
return false; return false;
@ -2157,26 +2157,26 @@ s32 func_80091F00(Object_2F4* obj2F4) {
} }
void func_80092244(Object_2F4* obj2F4) { void func_80092244(Object_2F4* obj2F4) {
gUnkEntities28[obj2F4->unk_040].unk_00 = 1; gUnkEntities28[obj2F4->index].unk_00 = 1;
gUnkEntities28[obj2F4->unk_040].unk_02 = obj2F4->unk_0E4; gUnkEntities28[obj2F4->index].unk_02 = obj2F4->unk_0E4;
gUnkEntities28[obj2F4->unk_040].pos.x = obj2F4->obj.pos.x; gUnkEntities28[obj2F4->index].pos.x = obj2F4->obj.pos.x;
gUnkEntities28[obj2F4->unk_040].pos.y = obj2F4->obj.pos.y; gUnkEntities28[obj2F4->index].pos.y = obj2F4->obj.pos.y;
gUnkEntities28[obj2F4->unk_040].pos.z = obj2F4->obj.pos.z; gUnkEntities28[obj2F4->index].pos.z = obj2F4->obj.pos.z;
gUnkEntities28[obj2F4->unk_040].unk_10 = obj2F4->unk_0F4.y + 180.0f; gUnkEntities28[obj2F4->index].unk_10 = obj2F4->unk_0F4.y + 180.0f;
} }
void func_800922F4(Object_2F4* obj2F4) { void func_800922F4(Object_2F4* obj2F4) {
s32 temp; 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; temp = 7;
if (gTeamHealth[obj2F4->unk_0E4] > 16) { if (gTeamShields[obj2F4->unk_0E4] > 16) {
temp = 15; temp = 15;
} }
if (gTeamHealth[obj2F4->unk_0E4] > 32) { if (gTeamShields[obj2F4->unk_0E4] > 32) {
temp = 31; temp = 31;
} }
if (gTeamHealth[obj2F4->unk_0E4] > 48) { if (gTeamShields[obj2F4->unk_0E4] > 48) {
temp = 63; temp = 63;
} }
@ -2217,8 +2217,8 @@ void func_80093310(void) {
this->obj.pos.z -= 5000.0f; this->obj.pos.z -= 5000.0f;
gObjects2F4->unk_0B6 = 1; gObjects2F4->unk_0B6 = 1;
if (1) {} if (1) {}
this->obj.id = OBJECT_195; this->obj.id = OBJ_2F4_195;
Object_Set1C(&this->unk_01C, this->obj.id); Object_SetInfo(&this->info, this->obj.id);
func_80019218(0x11030010, &this->sfxPos, 0, &D_800C5D34, &D_800C5D34, &D_800C5D3C); 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) { if (obj8C->obj.status == 0) {
Object_8C_Initialize(obj8C); Object_8C_Initialize(obj8C);
obj8C->obj.status = 1; obj8C->obj.status = 1;
obj8C->obj.id = OBJECT_363; obj8C->obj.id = OBJ_8C_363;
obj8C->obj.pos.x = x; obj8C->obj.pos.x = x;
obj8C->obj.pos.y = y; obj8C->obj.pos.y = y;
obj8C->obj.pos.z = z; 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->unk_70 = arg3 * 0.2f;
obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f; obj8C->obj.rot.z = Rand_ZeroOne() * 360.0f;
Object_Set1C(&obj8C->unk_1C, obj8C->obj.id); Object_SetInfo(&obj8C->info, obj8C->obj.id);
break; break;
} }
obj8C--; obj8C--;
@ -2354,9 +2354,9 @@ void stub_80094D18(void) {
void func_80095350(Object_2F4* obj2F4) { void func_80095350(Object_2F4* obj2F4) {
Object_2F4_Initialize(obj2F4); Object_2F4_Initialize(obj2F4);
obj2F4->obj.status = 2; obj2F4->obj.status = 2;
obj2F4->obj.id = OBJECT_195; obj2F4->obj.id = OBJ_2F4_195;
obj2F4->unk_0B6 = 9999; obj2F4->unk_0B6 = 9999;
Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); Object_SetInfo(&obj2F4->info, obj2F4->obj.id);
} }
#ifdef IMPORT_DATA_PENDING #ifdef IMPORT_DATA_PENDING
@ -2370,11 +2370,11 @@ void func_800953A0(Object_2F4* obj_2F4, s32 arg1) {
Object_2F4_Initialize(obj_2F4); Object_2F4_Initialize(obj_2F4);
obj_2F4->obj.status = 2; 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 = D_800D2510[arg1];
obj_2F4->obj.pos.z -= D_80177D20; obj_2F4->obj.pos.z -= D_80177D20;
obj_2F4->unk_0B6 = 45; 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 #else
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_800953A0.s") #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); Object_2F4_Initialize(obj2F4);
obj2F4->obj.status = 2; obj2F4->obj.status = 2;
obj2F4->obj.id = OBJECT_195; obj2F4->obj.id = OBJ_2F4_195;
obj2F4->obj.pos = D_800D2540[arg1]; obj2F4->obj.pos = D_800D2540[arg1];
obj2F4->obj.pos.z -= D_80177D20; obj2F4->obj.pos.z -= D_80177D20;
obj2F4->unk_0B6 = 46; obj2F4->unk_0B6 = 46;
Object_Set1C(&obj2F4->unk_01C, obj2F4->obj.id); Object_SetInfo(&obj2F4->info, obj2F4->obj.id);
} }
#else #else
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_8009546C.s") #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); Object_2F4_Initialize(obj_2F4);
obj_2F4->obj.status = 2; 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 = D_800D257C[arg1];
obj_2F4->obj.pos.z -= D_80177D20; obj_2F4->obj.pos.z -= D_80177D20;
obj_2F4->unk_0B6 = 47; 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 #else
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/sf_hud/func_80095538.s") #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, "-"); func_8000762C(300, 10, "-");
gControllerStatus[0] = 1; gControllerPlugged[0] = 1;
while (var_s5 == 0) { while (var_s5 == 0) {
osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL); osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL);
osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK); osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK);
Controller_UpdateInput(); Controller_UpdateInput();
switch (var_s0) { switch (var_s0) {
case 0: 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_s0++;
var_s2 = 4000; var_s2 = 4000;
} }
@ -254,11 +254,11 @@ void Fault_ThreadEntry(void* arg0) {
case 1: case 1:
case 2: case 2:
case 7: case 7:
if (gCurrentInput[0].button & R_TRIG) { if (gControllerHold[0].button & R_TRIG) {
if (gChangedInput[0].button == A_BUTTON) { if (gControllerPress[0].button == A_BUTTON) {
var_s0++; var_s0++;
var_s2 = 3000; var_s2 = 3000;
} else if (gChangedInput[0].button != 0) { } else if (gControllerPress[0].button != 0) {
var_s0 = 0; var_s0 = 0;
} }
} }
@ -266,11 +266,11 @@ void Fault_ThreadEntry(void* arg0) {
case 3: case 3:
case 4: case 4:
case 8: case 8:
if (gCurrentInput[0].button & R_TRIG) { if (gControllerHold[0].button & R_TRIG) {
if (gChangedInput[0].button == B_BUTTON) { if (gControllerPress[0].button == B_BUTTON) {
var_s0++; var_s0++;
var_s2 = 3000; var_s2 = 3000;
} else if (gChangedInput[0].button != 0) { } else if (gControllerPress[0].button != 0) {
var_s0 = 0; var_s0 = 0;
} }
} }
@ -282,21 +282,21 @@ void Fault_ThreadEntry(void* arg0) {
case 11: case 11:
case 12: case 12:
case 13: case 13:
if (gCurrentInput[0].button & R_TRIG) { if (gControllerHold[0].button & R_TRIG) {
if (gChangedInput[0].button == L_CBUTTONS) { if (gControllerPress[0].button == L_CBUTTONS) {
var_s0++; var_s0++;
var_s2 = 3000; var_s2 = 3000;
} else if (gChangedInput[0].button != 0) { } else if (gControllerPress[0].button != 0) {
var_s0 = 0; var_s0 = 0;
} }
} }
break; break;
case 14: case 14:
if (gCurrentInput[0].button & R_TRIG) { if (gControllerHold[0].button & R_TRIG) {
if (gChangedInput[0].button == START_BUTTON) { if (gControllerPress[0].button == START_BUTTON) {
var_s0++; var_s0++;
var_s2 = 3000; var_s2 = 3000;
} else if (gChangedInput[0].button != 0) { } else if (gControllerPress[0].button != 0) {
var_s0 = 0; var_s0 = 0;
} }
} }

View File

@ -1,18 +1,18 @@
#include "global.h" #include "global.h"
OSContPad gCurrentInput[4]; OSContPad gControllerHold[4];
OSContPad gChangedInput[4]; OSContPad gControllerPress[4];
u8 gControllerStatus[4]; u8 gControllerPlugged[4];
u32 gStopInputTimer; u32 gControllerLock;
u8 gRumbleStatus[4]; u8 gControllerRumble[4];
OSContPad sNextInput[4]; // OSContPad sNextController[4]; //
OSContPad sPrevInput[4]; // OSContPad sPrevController[4]; //
OSContStatus D_800DD8F0[4]; // OSContStatus sControllerStatus[4]; //
OSPfs D_800DD900[4]; // OSPfs sControllerMotor[4]; //
void Controller_AddDeadZone(s32 contrNum) { void Controller_AddDeadZone(s32 contrNum) {
s32 temp_v0 = gCurrentInput[contrNum].stick_x; s32 temp_v0 = gControllerHold[contrNum].stick_x;
s32 temp_a2 = gCurrentInput[contrNum].stick_y; s32 temp_a2 = gControllerHold[contrNum].stick_y;
s32 var_a0; s32 var_a0;
s32 var_v0; s32 var_v0;
@ -44,18 +44,18 @@ void Controller_AddDeadZone(s32 contrNum) {
if (var_v0 < -60) { if (var_v0 < -60) {
var_v0 = -60; var_v0 = -60;
} }
gChangedInput[contrNum].stick_x = var_a0; gControllerPress[contrNum].stick_x = var_a0;
gChangedInput[contrNum].stick_y = var_v0; gControllerPress[contrNum].stick_y = var_v0;
} }
void Controller_Init(void) { void Controller_Init(void) {
u8 sp1F; u8 sp1F;
s32 i; s32 i;
osContInit(&gSerialEventQueue, &sp1F, D_800DD8F0); osContInit(&gSerialEventQueue, &sp1F, sControllerStatus);
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
gControllerStatus[i] = (sp1F >> i) & 1; gControllerPlugged[i] = (sp1F >> i) & 1;
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
} }
} }
@ -63,15 +63,16 @@ void Controller_UpdateInput(void) {
s32 i; s32 i;
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 1 && sNextInput[i].errno == 0) { if (gControllerPlugged[i] == 1 && sNextController[i].errno == 0) {
sPrevInput[i] = gCurrentInput[i]; sPrevController[i] = gControllerHold[i];
gCurrentInput[i] = sNextInput[i]; gControllerHold[i] = sNextController[i];
gChangedInput[i].button = (gCurrentInput[i].button ^ sPrevInput[i].button) & gCurrentInput[i].button; gControllerPress[i].button =
(gControllerHold[i].button ^ sPrevController[i].button) & gControllerHold[i].button;
Controller_AddDeadZone(i); Controller_AddDeadZone(i);
} else { } else {
gCurrentInput[i].button = gCurrentInput[i].stick_x = gCurrentInput[i].stick_y = gCurrentInput[i].errno = gControllerHold[i].button = gControllerHold[i].stick_x = gControllerHold[i].stick_y =
gChangedInput[i].button = gChangedInput[i].stick_x = gChangedInput[i].stick_y = gChangedInput[i].errno = gControllerHold[i].errno = gControllerPress[i].button = gControllerPress[i].stick_x =
0; gControllerPress[i].stick_y = gControllerPress[i].errno = 0;
} }
} }
} }
@ -79,15 +80,16 @@ void Controller_UpdateInput(void) {
void Controller_ReadData(void) { void Controller_ReadData(void) {
s32 i; s32 i;
if (gStopInputTimer != 0) { if (gControllerLock != 0) {
gStopInputTimer--; gControllerLock--;
for (i = 0; i < 4; i++) { 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 { } else {
osContStartReadData(&gSerialEventQueue); osContStartReadData(&gSerialEventQueue);
osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK); osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
osContGetReadData(sNextInput); osContGetReadData(sNextController);
} }
osSendMesg(&gControllerMsgQueue, (OSMesg) SI_CONT_READ_DONE, OS_MESG_PRI_NORMAL); osSendMesg(&gControllerMsgQueue, (OSMesg) SI_CONT_READ_DONE, OS_MESG_PRI_NORMAL);
} }
@ -113,31 +115,31 @@ void Controller_Rumble(void) {
osContStartQuery(&gSerialEventQueue); osContStartQuery(&gSerialEventQueue);
osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK); osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
osContGetQuery(D_800DD8F0); osContGetQuery(sControllerStatus);
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if ((gControllerStatus[i] != 0) && (D_800DD8F0[i].errno == 0)) { if ((gControllerPlugged[i] != 0) && (sControllerStatus[i].errno == 0)) {
if (D_800DD8F0[i].status & 1) { if (sControllerStatus[i].status & 1) {
if (gRumbleStatus[i] == 0) { if (gControllerRumble[i] == 0) {
if (osMotorInit(&gSerialEventQueue, &D_800DD900[i], i)) { if (osMotorInit(&gSerialEventQueue, &sControllerMotor[i], i)) {
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
} else { } else {
gRumbleStatus[i] = 1; gControllerRumble[i] = 1;
} }
} }
if (gRumbleStatus[i] == 1) { if (gControllerRumble[i] == 1) {
if (D_80137E84[i] != 0) { if (D_80137E84[i] != 0) {
if (osMotorStart(&D_800DD900[i])) { if (osMotorStart(&sControllerMotor[i])) {
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
} }
} else { } else {
if (osMotorStop(&D_800DD900[i])) { if (osMotorStop(&sControllerMotor[i])) {
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
} }
} }
} }
} else { } else {
gRumbleStatus[i] = 0; gControllerRumble[i] = 0;
} }
} }
} }

View File

@ -246,9 +246,9 @@ void Graphics_InitializeTask(u32 frameCount) {
} }
void Main_SetVIMode(void) { void Main_SetVIMode(void) {
if ((gCurrentInput[0].button & D_JPAD) && (gCurrentInput[1].button & D_JPAD) && if ((gControllerHold[0].button & D_JPAD) && (gControllerHold[1].button & D_JPAD) &&
(gCurrentInput[2].button & D_JPAD) && (gCurrentInput[3].button & L_TRIG) && (gControllerHold[2].button & D_JPAD) && (gControllerHold[3].button & L_TRIG) &&
(gCurrentInput[3].button & R_TRIG) && (gCurrentInput[3].button & Z_TRIG)) { (gControllerHold[3].button & R_TRIG) && (gControllerHold[3].button & Z_TRIG)) {
sGammaMode = 1 - sGammaMode; sGammaMode = 1 - sGammaMode;
} }
switch (osTvType) { switch (osTvType) {
@ -329,7 +329,7 @@ void Graphics_ThreadEntry(void* arg0) {
osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_RUMBLE, OS_MESG_PRI_NORMAL); osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_RUMBLE, OS_MESG_PRI_NORMAL);
Controller_UpdateInput(); Controller_UpdateInput();
osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL); osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL);
if (gChangedInput[3].button & U_JPAD) { if (gControllerPress[3].button & U_JPAD) {
Main_SetVIMode(); Main_SetVIMode();
} }
{ {

View File

@ -11,13 +11,14 @@
#pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_DF4260/DFEE30/func_DF4260_8019243C.s") #pragma GLOBAL_ASM("asm/us/nonmatchings/overlays/ovl_DF4260/DFEE30/func_DF4260_8019243C.s")
void func_DF4260_801924A8(UnkStruct_func_DF4260_801924A8* arg0) { void func_DF4260_801924A8(Object_80* arg0) {
switch (arg0->unk48) { switch (arg0->unk_48) {
case 0: case 0:
if (gPlayer[0].unk_07C < arg0->unkC) { if (gPlayer[0].unk_07C < arg0->obj.pos.z) {
D_80177AB0 = 0; D_80177AB0 = 0;
D_80177A98 = 0; D_80177A98 = 0;
arg0->unk48++;
arg0->unk_48++;
} }
case 1: case 1:

View File

@ -756,7 +756,7 @@ void func_EBFBE0_801928BC(void) {
D_8017783C = 2; D_8017783C = 2;
D_80177B40 = 0; D_80177B40 = 0;
D_80177898 = 0; D_80177898 = 0;
gStopInputTimer = 3; gControllerLock = 3;
} else { } else {
D_80178340 += 0x20; D_80178340 += 0x20;
if (D_80178340 > 0xFF) { if (D_80178340 > 0xFF) {
@ -776,7 +776,7 @@ void func_EBFBE0_80192938(void) {
D_80177CA0 = 0; D_80177CA0 = 0;
D_80177CB0 = 0.0f; D_80177CB0 = 0.0f;
D_8017782C = 1; D_8017782C = 1;
gStopInputTimer = 3; gControllerLock = 3;
func_8001DC6C(0, 28); func_8001DC6C(0, 28);
} else { } else {
D_80178340 += 0x20; D_80178340 += 0x20;
@ -791,7 +791,7 @@ void func_EBFBE0_801929F0(void) {
D_800D2870 = 0; D_800D2870 = 0;
gBlurAlpha = 0xFF; gBlurAlpha = 0xFF;
gStopInputTimer = 0; gControllerLock = 0;
D_80178410 = 800; D_80178410 = 800;
D_EBFBE0_801B9248 = 0; 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); func_80019218(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9208 = D_EBFBE0_801AE570[D_EBFBE0_801B91A4]; D_EBFBE0_801B9208 = D_EBFBE0_801AE570[D_EBFBE0_801B91A4];
D_EBFBE0_801B91BC = 0; D_EBFBE0_801B91BC = 0;
D_EBFBE0_801B912C = 11; 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); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8284 = 0;
D_EBFBE0_801B8280 = 1; D_EBFBE0_801B8280 = 1;
@ -1027,7 +1027,7 @@ void func_EBFBE0_80192D58(void) {
D_80177898 = 0; D_80177898 = 0;
D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8280 = 0;
D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8284 = 0;
gStopInputTimer = 3; gControllerLock = 3;
} }
break; break;
} }
@ -1067,7 +1067,7 @@ void func_EBFBE0_80193B04(void) {
s32 i; s32 i;
gBlurAlpha = 0xFF; gBlurAlpha = 0xFF;
gStopInputTimer = 0; gControllerLock = 0;
D_80178410 = 800; D_80178410 = 800;
if (D_EBFBE0_801B9248 == 0) { 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); } 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 // 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); func_80019218(0x49000020, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9208 = D_EBFBE0_801AEF84[D_EBFBE0_801B91A8]; D_EBFBE0_801B9208 = D_EBFBE0_801AEF84[D_EBFBE0_801B91A8];
D_EBFBE0_801B91BC = 0; D_EBFBE0_801B91BC = 0;
D_EBFBE0_801B912C = 11; 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); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B912C = 0; D_EBFBE0_801B912C = 0;
D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B9124 = 1000;
@ -1350,17 +1350,17 @@ void func_EBFBE0_801948A8(void) {
} }
// Test sound // Test sound
if (gChangedInput[D_80177AF8].button & R_TRIG) { if (gControllerPress[D_80177AF8].button & R_TRIG) {
D_EBFBE0_801B9284 ^= 1; D_EBFBE0_801B9284 ^= 1;
func_8001D8F4(D_EBFBE0_801B9284); 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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9288 = (D_EBFBE0_801B9288 + 1) & 3; 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); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
if (D_EBFBE0_801B9284 == 1) { if (D_EBFBE0_801B9284 == 1) {
D_EBFBE0_801B9284 = 0; D_EBFBE0_801B9284 = 0;
@ -1631,12 +1631,12 @@ void func_EBFBE0_80195944(void) {
D_EBFBE0_801B931C = sp28; D_EBFBE0_801B931C = sp28;
} }
if (gChangedInput[D_80177AF8].button & A_BUTTON) { if (gControllerPress[D_80177AF8].button & A_BUTTON) {
func_8001DA90(D_EBFBE0_801B931C); func_8001DA90(D_EBFBE0_801B931C);
D_EBFBE0_801B9320 = true; D_EBFBE0_801B9320 = true;
} }
if (gChangedInput[D_80177AF8].button & B_BUTTON) { if (gControllerPress[D_80177AF8].button & B_BUTTON) {
if (!D_EBFBE0_801B9320) { if (!D_EBFBE0_801B9320) {
func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
func_8001D444(0, 36, 0, 255); func_8001D444(0, 36, 0, 255);
@ -1653,7 +1653,7 @@ void func_EBFBE0_80195944(void) {
} }
// Spectrum Analizer mode selector // Spectrum Analizer mode selector
if (gChangedInput[D_80177AF8].button & R_CBUTTONS) { if (gControllerPress[D_80177AF8].button & R_CBUTTONS) {
spectrumAnalizerMode++; spectrumAnalizerMode++;
if (spectrumAnalizerMode > 2) { if (spectrumAnalizerMode > 2) {
spectrumAnalizerMode = 0; spectrumAnalizerMode = 0;
@ -1873,7 +1873,7 @@ void func_EBFBE0_8019669C(void) {
if (1) {} if (1) {}
} }
if (gChangedInput[D_80177AF8].button & A_BUTTON) { if (gControllerPress[D_80177AF8].button & A_BUTTON) {
if (D_EBFBE0_801B91CC == 3) { if (D_EBFBE0_801B91CC == 3) {
func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B912C = 3; D_EBFBE0_801B912C = 3;
@ -1892,7 +1892,7 @@ void func_EBFBE0_8019669C(void) {
D_EBFBE0_801B912C = 4; 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) { if (D_EBFBE0_801B91CC == 1) {
func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B912C = 2; D_EBFBE0_801B912C = 2;
@ -2025,7 +2025,7 @@ void func_EBFBE0_80196E54(void) {
void func_EBFBE0_80196EFC(void) { void func_EBFBE0_80196EFC(void) {
func_EBFBE0_80196FC4(); 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); func_80019218(0x49000021, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_80177898 = 0; D_80177898 = 0;
D_EBFBE0_801B9124 = 1000; D_EBFBE0_801B9124 = 1000;
@ -2040,7 +2040,7 @@ void func_EBFBE0_80196F9C(void) {
} }
void func_EBFBE0_80196FC4(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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B93E0 ^= 1; D_EBFBE0_801B93E0 ^= 1;
} }
@ -2606,7 +2606,7 @@ void func_EBFBE0_801992C4(void) {
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
D_80161A18[i] = 0; D_80161A18[i] = 0;
if (gControllerStatus[i] == 0) { if (gControllerPlugged[i] == 0) {
D_80161A18[i] = 1; D_80161A18[i] = 1;
D_EBFBE0_801B93C4 |= 1 << i; 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) { if (D_EBFBE0_801B93C4 == 15) {
func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B91EC = 10; 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)) { if (D_EBFBE0_801B93C4 & (1 << i)) {
func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B93C4 &= (1 << i) ^ 15; D_EBFBE0_801B93C4 &= (1 << i) ^ 15;
@ -2683,7 +2683,7 @@ void func_EBFBE0_8019978C(void) {
func_EBFBE0_80199EA8(); func_EBFBE0_80199EA8();
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 1) { if (gControllerPlugged[i] == 1) {
func_EBFBE0_80199820(i); func_EBFBE0_80199820(i);
} }
} }
@ -2979,7 +2979,7 @@ void func_EBFBE0_8019A2E0(void) {
} }
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 0) { if (gControllerPlugged[i] == 0) {
continue; continue;
} }
@ -2988,14 +2988,14 @@ void func_EBFBE0_8019A2E0(void) {
D_801778A4 = D_EBFBE0_801B93D4 + 1; 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_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
func_EBFBE0_8019A080(); func_EBFBE0_8019A080();
D_EBFBE0_801B936C = 10; D_EBFBE0_801B936C = 10;
break; 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_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B9124 = D_EBFBE0_801B93D0;
D_EBFBE0_801B91C4 = 0; D_EBFBE0_801B91C4 = 0;
@ -3019,7 +3019,7 @@ void func_EBFBE0_8019A4DC(void) {
} }
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 0) { if (gControllerPlugged[i] == 0) {
continue; continue;
} }
@ -3029,14 +3029,14 @@ void func_EBFBE0_8019A4DC(void) {
D_801778C8 = D_EBFBE0_801B93DC; 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_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
func_EBFBE0_8019A080(); func_EBFBE0_8019A080();
D_EBFBE0_801B937C = 10; D_EBFBE0_801B937C = 10;
break; 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_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B9124 = D_EBFBE0_801B93D0;
D_EBFBE0_801B91C4 = 0; D_EBFBE0_801B91C4 = 0;
@ -3061,7 +3061,7 @@ void func_EBFBE0_8019A6DC(void) {
} }
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 0) { if (gControllerPlugged[i] == 0) {
continue; continue;
} }
if (func_EBFBE0_8019C418(&D_EBFBE0_801B93D8, 1, 0, 1, 20, 2, 4, i, &D_EBFBE0_801B9380[i])) { 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; 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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
if (D_80161A28 == 0) { if (D_80161A28 == 0) {
D_8017789C = 0; gVersusStage = VSTAGE_CORNERIA;
if (D_EBFBE0_801B93D0 == 30) { if (D_EBFBE0_801B93D0 == 30) {
D_8017789C = 1; gVersusStage = VSTAGE_KATINA;
} }
} else { } else {
D_8017789C = 2; gVersusStage = VSTAGE_SECTOR_Z;
} }
D_EBFBE0_801B9374 = 10; D_EBFBE0_801B9374 = 10;
@ -3085,7 +3085,7 @@ void func_EBFBE0_8019A6DC(void) {
break; 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_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
if (D_EBFBE0_801B93D0 == 20) { if (D_EBFBE0_801B93D0 == 20) {
D_EBFBE0_801B9124 = D_EBFBE0_801B93D0; D_EBFBE0_801B9124 = D_EBFBE0_801B93D0;
@ -3116,17 +3116,17 @@ void func_EBFBE0_8019A954(void) {
} }
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 0) { if (gControllerPlugged[i] == 0) {
continue; 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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B91EC = 10; D_EBFBE0_801B91EC = 10;
break; 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_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
func_EBFBE0_8019A080(); func_EBFBE0_8019A080();
D_EBFBE0_801B933C = 0; 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; temp = *arg0;
x = gChangedInput[arg7].stick_x; x = gControllerPress[arg7].stick_x;
y = -gChangedInput[arg7].stick_y; y = -gControllerPress[arg7].stick_y;
if (arg2 == true) { if (arg2 == true) {
axis = y; 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 func_EBFBE0_8019C5A0(s32* arg0) {
s32 ret = 0; s32 ret = 0;
s32 temp = *arg0; s32 temp = *arg0;
s32 x = gChangedInput[D_80177AF8].stick_x; s32 x = gControllerPress[D_80177AF8].stick_x;
s32 y = -gChangedInput[D_80177AF8].stick_y; s32 y = -gControllerPress[D_80177AF8].stick_y;
if ((y > 40) || (y < -40)) { if ((y > 40) || (y < -40)) {
return ret; return ret;
@ -3751,8 +3751,8 @@ s32 func_EBFBE0_8019C66C(f32* arg0, f32 arg1, f32 arg2, UnkStruct_D_EBFBE0_801B9
f32 temp2; f32 temp2;
s32 var_a2 = 0; s32 var_a2 = 0;
f32 temp = *arg0; f32 temp = *arg0;
s32 x = gChangedInput[D_80177AF8].stick_x; s32 x = gControllerPress[D_80177AF8].stick_x;
s32 y = -gChangedInput[D_80177AF8].stick_y; s32 y = -gControllerPress[D_80177AF8].stick_y;
if ((y > 10) || (y < -10)) { if ((y > 10) || (y < -10)) {
return 0; 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; D_EBFBE0_801B90D0[D_EBFBE0_801B9098] = 0.0f;
if (D_EBFBE0_801B9138 != 0) { if (D_EBFBE0_801B9138 != 0) {
func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); 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); func_80019218(0x4900101D, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
if (D_EBFBE0_801B9138 != 0) { if (D_EBFBE0_801B9138 != 0) {
D_EBFBE0_801B9138 = 0; D_EBFBE0_801B9138 = 0;
@ -4335,7 +4335,7 @@ void func_EBFBE0_8019DD44(void) {
void func_EBFBE0_8019DE74(void) { void func_EBFBE0_8019DE74(void) {
func_EBFBE0_8019715C(); 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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_80177898 = 0; D_80177898 = 0;
@ -4390,7 +4390,7 @@ void func_EBFBE0_8019E030(void) {
break; break;
case 2: 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); func_80019218(0x19031083, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B9090 = 1; D_EBFBE0_801B9090 = 1;
D_EBFBE0_801B9178 = 60; 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. * 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++; D_EBFBE0_801AF410++;
if (D_EBFBE0_801AF410 > 7) { if (D_EBFBE0_801AF410 > 7) {
D_EBFBE0_801AF410 = 0; D_EBFBE0_801AF410 = 0;
} }
} }
if (gChangedInput[3].button & L_TRIG) { if (gControllerPress[3].button & L_TRIG) {
D_EBFBE0_801AF410--; D_EBFBE0_801AF410--;
if (D_EBFBE0_801AF410 < 0) { if (D_EBFBE0_801AF410 < 0) {
D_EBFBE0_801AF410 = 7; D_EBFBE0_801AF410 = 7;
} }
} }
if (gCurrentInput[3].button & U_JPAD) { if (gControllerHold[3].button & U_JPAD) {
D_EBFBE0_801AF3F0[D_EBFBE0_801AF410] -= 1.0f; 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; 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; 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; D_EBFBE0_801AF3D0[D_EBFBE0_801AF410] += 1.0f;
} }
} }

View File

@ -80,7 +80,7 @@ void func_EBFBE0_801875E0(void) {
func_8001DC6C(0, 0x16); func_8001DC6C(0, 0x16);
D_EBFBE0_801B82C4 = 1; D_EBFBE0_801B82C4 = 1;
} }
gStopInputTimer = 0x1E; gControllerLock = 0x1E;
} }
void func_EBFBE0_80187754(void) { void func_EBFBE0_80187754(void) {
@ -215,7 +215,7 @@ s32 func_EBFBE0_80187ABC(void) {
s32 i; s32 i;
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
if (gControllerStatus[i] == 1) { if (gControllerPlugged[i] == 1) {
ret = i; ret = i;
break; break;
} }
@ -700,7 +700,7 @@ void func_EBFBE0_801888E8(void) {
D_EBFBE0_801B86A4 = 0; 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; 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) { void func_EBFBE0_8018D2B8(s32 arg0) {
WingInfo temp; WingInfo wings;
Lights_SetOneLight(&gMasterDisp, D_EBFBE0_801B82E0, D_EBFBE0_801B82E4, D_EBFBE0_801B82E8, gLight1R, gLight1G, Lights_SetOneLight(&gMasterDisp, D_EBFBE0_801B82E0, D_EBFBE0_801B82E4, D_EBFBE0_801B82E8, gLight1R, gLight1G,
gLight1B, gAmbientR, gAmbientG, gAmbientB); gLight1B, gAmbientR, gAmbientG, gAmbientB);
@ -2137,17 +2137,17 @@ void func_EBFBE0_8018D2B8(s32 arg0) {
Matrix_SetGfxMtx(&gMasterDisp); Matrix_SetGfxMtx(&gMasterDisp);
temp.rightState = temp.leftState = 2; wings.rightState = wings.leftState = WINGSTATE_INTACT;
temp.unk_18 = temp.unk_1C = temp.unk_20 = temp.unk_24 = temp.unk_04 = temp.unk_08 = temp.unk_0C = temp.unk_10 = wings.unk_18 = wings.unk_1C = wings.unk_20 = wings.unk_24 = wings.unk_04 = wings.unk_08 = wings.unk_0C =
temp.unk_28 = 0.0f; wings.unk_10 = wings.unk_28 = 0.0f;
temp.unk_14 = D_EBFBE0_801B84E8[arg0].unk_28; wings.unk_14 = D_EBFBE0_801B84E8[arg0].unk_28;
temp.unk_2C = D_EBFBE0_801B84E8[arg0].unk_34; wings.unk_2C = D_EBFBE0_801B84E8[arg0].unk_34;
temp.unk_30 = D_EBFBE0_801B84E8[arg0].unk_2C; wings.unk_30 = D_EBFBE0_801B84E8[arg0].unk_2C;
temp.unk_34 = D_EBFBE0_801B84E8[arg0].unk_30; wings.unk_34 = D_EBFBE0_801B84E8[arg0].unk_30;
temp.unk_38 = D_EBFBE0_801B84E8[arg0].unk_24; wings.unk_38 = D_EBFBE0_801B84E8[arg0].unk_24;
func_80053658(&temp); func_80053658(&wings);
func_8005F1EC(&D_EBFBE0_801B84E8[arg0].unk_50); 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_801AE474 = 70.0f;
static f32 D_EBFBE0_801AE478 = 172.0f; static f32 D_EBFBE0_801AE478 = 172.0f;
if (gStopInputTimer == 0) { if (gControllerLock == 0) {
temp2 = 188.0f; temp2 = 188.0f;
if ((s32) Math_SmoothStepToF(&D_EBFBE0_801B7BC8, D_EBFBE0_801B7BCC, 0.5f, 100.0f, 1.0f) == 0.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) { void func_EBFBE0_80190EA4(void) {
switch (D_EBFBE0_801B8280) { switch (D_EBFBE0_801B8280) {
case 0: 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); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8284 = 0;
D_EBFBE0_801B8280 = 1; D_EBFBE0_801B8280 = 1;
gStopInputTimer = 0x1E; gControllerLock = 0x1E;
} }
break; break;
@ -3099,7 +3099,7 @@ void func_EBFBE0_80190EA4(void) {
D_EBFBE0_801B82C0 = 0; D_EBFBE0_801B82C0 = 0;
D_80177898 = 0; D_80177898 = 0;
D_EBFBE0_801B82C4 = 0; D_EBFBE0_801B82C4 = 0;
gStopInputTimer = 30; gControllerLock = 30;
D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8284 = 0;
D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8280 = 0;
} }
@ -3108,11 +3108,11 @@ void func_EBFBE0_80190EA4(void) {
} }
void func_EBFBE0_80190FD0(void) { void func_EBFBE0_80190FD0(void) {
if (gStopInputTimer == 0) { if (gControllerLock == 0) {
switch (D_EBFBE0_801B8280) { switch (D_EBFBE0_801B8280) {
case 0: case 0:
if (((gChangedInput[D_80177AF8].button & START_BUTTON) || if (((gControllerPress[D_80177AF8].button & START_BUTTON) ||
(gChangedInput[D_80177AF8].button & A_BUTTON)) && (gControllerPress[D_80177AF8].button & A_BUTTON)) &&
(D_EBFBE0_801B8280 == 0)) { (D_EBFBE0_801B8280 == 0)) {
func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C); func_80019218(0x49000003, &D_800C5D28, 4, &D_800C5D34, &D_800C5D34, &D_800C5D3C);
func_800182F4(0x101E00FF); func_800182F4(0x101E00FF);
@ -3133,7 +3133,7 @@ void func_EBFBE0_80190FD0(void) {
D_80178410 = 0; D_80178410 = 0;
D_EBFBE0_801B8280 = 0; D_EBFBE0_801B8280 = 0;
D_EBFBE0_801B8284 = 0; D_EBFBE0_801B8284 = 0;
gStopInputTimer = 3; gControllerLock = 3;
} }
break; break;
} }
@ -3145,13 +3145,13 @@ void func_EBFBE0_8019111C(void) {
f32 y; f32 y;
if ((D_EBFBE0_801B82B0 == 0) && (D_EBFBE0_801B9040 == 0) && 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_801B9040 = 1;
D_EBFBE0_801B86A4 = 0; D_EBFBE0_801B86A4 = 0;
} }
x = gChangedInput[D_80177AF8].stick_x; x = gControllerPress[D_80177AF8].stick_x;
y = gChangedInput[D_80177AF8].stick_y; y = gControllerPress[D_80177AF8].stick_y;
if (D_EBFBE0_801B9040 != 0) { if (D_EBFBE0_801B9040 != 0) {
if (((x * 0.2f) + D_EBFBE0_801B905C > -500.0f) && ((x * 0.2f) + D_EBFBE0_801B905C < 500.0f)) { 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) && if ((D_EBFBE0_801B9040 != 0) && (gControllerPress[D_80177AF8].stick_x == 0) &&
(gChangedInput[D_80177AF8].stick_y == 0)) { (gControllerPress[D_80177AF8].stick_y == 0)) {
D_EBFBE0_801B86A4++; D_EBFBE0_801B86A4++;
} else { } else {
D_EBFBE0_801B86A4 = 0; D_EBFBE0_801B86A4 = 0;