Kytag00 / Vrbox2 work, some cphase / kankyo doc (#1886)

* kytag00 work

* d_a_vrbox2 close to done

* rename cPhase enum values

* some enums from noclip / kankyo doc

* remove asm

* use macro

* uncomment ok-check.yml
This commit is contained in:
TakaRikka
2023-08-16 13:32:40 -07:00
committed by GitHub
parent 7fd7d0c1f3
commit 114582643f
42 changed files with 1534 additions and 968 deletions
@@ -588,6 +588,14 @@ private:
class J3DFrameCtrl {
public:
enum Attribute_e {
LOOP_ONCE_e,
LOOP_ONCE_RESET_e,
LOOP_REPEAT_e,
LOOP_MIRROR_ONCE_e,
LOOP_MIRROR_REPEAT_e,
};
J3DFrameCtrl() { this->init(0); }
void init(s16);
BOOL checkPass(f32);
+4 -5
View File
@@ -5,13 +5,12 @@
typedef int (*cPhs__Handler)(void*);
enum cPhs__Step {
/* 0x0 */ cPhs_ZERO_e,
/* 0x1 */ cPhs_ONE_e, // next?
/* 0x2 */ cPhs_TWO_e, // ready?
/* 0x3 */ cPhs_UNK3_e,
/* 0x0 */ cPhs_INIT_e,
/* 0x1 */ cPhs_LOADING_e,
/* 0x2 */ cPhs_NEXT_e,
/* 0x3 */ cPhs_UNK3_e, // appears to be an alternate error code, unsure how it differs
/* 0x4 */ cPhs_COMPLEATE_e,
/* 0x5 */ cPhs_ERROR_e,
/* 0x6 */ cPhs_NEXT_e,
};
typedef struct request_of_phase_process_class {
+37 -30
View File
@@ -16,12 +16,12 @@ struct stage_vrboxcol_info_class {
// Virt
struct stage_vrbox_info_class {
/* 0x00 */ GXColor field_0x0;
/* 0x04 */ GXColor field_0x4;
/* 0x08 */ color_RGB_class field_0x8;
/* 0x0B */ color_RGB_class field_0xb;
/* 0x0E */ color_RGB_class field_0xe;
/* 0x11 */ color_RGB_class field_0x11;
/* 0x00 */ color_RGB_class field_0x0;
/* 0x03 */ color_RGB_class field_0x3;
/* 0x06 */ color_RGB_class field_0x6;
/* 0x09 */ GXColor field_0x9;
/* 0x0D */ GXColor field_0xd;
/* 0x11 */ GXColor field_0x11;
}; // Size: 0x15
class stage_tresure_class {
@@ -86,7 +86,13 @@ struct stage_scls_info_dummy_class {
struct stage_pure_lightvec_info_class {
// LGT
/* 0x00 */ u8 field_0x0[0x1E - 0x0];
/* 0x00 */ Vec m_position;
/* 0x0C */ f32 m_radius;
/* 0x10 */ f32 m_directionX;
/* 0x14 */ f32 m_directionY;
/* 0x18 */ f32 m_spotCutoff;
/* 0x1C */ u8 field_0x1c;
/* 0x1D */ u8 field_0x1d;
/* 0x1E */ u8 field_0x1e;
/* 0x1F */ u8 field_0x1f;
}; // Size: 0x20
@@ -99,27 +105,28 @@ struct stage_pselect_info_class {
struct stage_plight_info_class {
// LGHT
};
/* 0x00 */ Vec m_position;
/* 0x0C */ f32 m_radius;
/* 0x10 */ u8 field_0x10[0x18 - 0x10];
/* 0x18 */ GXColor m_color;
}; // Size: 0x1C
// PALE
struct stage_palette_info_class {
/* 0x00 */ color_RGB_class mActor_C0;
/* 0x03 */ color_RGB_class mActor_K0;
/* 0x06 */ color_RGB_class mBG0_C0;
/* 0x09 */ color_RGB_class mBG0_K0;
/* 0x0C */ color_RGB_class mBG1_C0;
/* 0x0F */ color_RGB_class mBG1_K0;
/* 0x12 */ color_RGB_class mBG2_C0;
/* 0x15 */ color_RGB_class mBG2_K0;
/* 0x18 */ color_RGB_class mBG3_C0;
/* 0x1B */ color_RGB_class mBG3_K0;
/* 0x1E */ color_RGB_class mFog;
/* 0x21 */ u8 mVirtIdx;
/* 0x22 */ u8 field_0x22;
/* 0x23 */ u8 field_0x23;
/* 0x00 */ color_RGB_class mActorAmbColor;
/* 0x03 */ color_RGB_class mBgAmbColor[4];
/* 0x0F */ color_RGB_class mPlightColor[6];
/* 0x21 */ color_RGB_class mFogColor;
/* 0x24 */ f32 mFogStartZ;
/* 0x28 */ f32 mFogEndZ;
/* 0x2C */ u8 field_0x2c[8];
/* 0x2C */ u8 mVirtIdx;
/* 0x2D */ u8 mTerrainLightInfluence;
/* 0x2E */ u8 mCloudShadowDensity;
/* 0x2F */ u8 field_0x2f;
/* 0x30 */ u8 mBloomTblIdx;
/* 0x31 */ u8 mBgAmbColor1A;
/* 0x32 */ u8 mBgAmbColor2A;
/* 0x33 */ u8 mBgAmbColor3A;
}; // Size: 0x34
struct stage_map_info_class {
@@ -134,7 +141,7 @@ struct stage_map_info_dummy_class {
};
struct stage_envr_info_class {
/* 0x0 */ u8 field_0x0[0x41];
/* 0x0 */ u8 m_pselectID[65];
}; // Size: 0x41
struct stage_camera2_data_class {
@@ -295,13 +302,13 @@ struct dStage_Lbnk_c {
// LBNK
};
struct dStage_Elst_c {
struct unkData {
u8 field_0x0[15];
};
struct dStage_Elst_data {
/* 0x0 */ u8 m_layerTable[15];
};
/* 0x0 */ int field_0x0;
/* 0x4 */ unkData* field_0x4;
struct dStage_Elst_c {
/* 0x0 */ int m_entryNum;
/* 0x4 */ dStage_Elst_data* m_entries;
};
struct dStage_MemoryConfig_data {
+27 -12
View File
@@ -398,17 +398,14 @@ public:
/* 0x1094 */ cXyz mMoonPos;
/* 0x10A0 */ cXyz field_0x10a0;
/* 0x10AC */ GXFogAdjTable mXFogTbl;
/* 0x10C0 */ GXColorS10 mSkyColor;
/* 0x10C8 */ GXColorS10 mUpperCloudColor;
/* 0x10D0 */ GXColorS10 mUnderCloudColor;
/* 0x10D8 */ GXColorS10 mUnderCloudShadowColor;
/* 0x10E0 */ GXColorS10 mCloudOuterHazeColor;
/* 0x10E8 */ GXColorS10 mCloudInnerHazeColor;
/* 0x10C0 */ GXColorS10 mVrSkyCol;
/* 0x10C8 */ GXColorS10 mVrkumoCol;
/* 0x10D0 */ GXColorS10 mVrShitaGumoCol;
/* 0x10D8 */ GXColorS10 mVrShitaUneiCol;
/* 0x10E0 */ GXColorS10 mVrKasumiCol;
/* 0x10E8 */ GXColorS10 mVrOkuKasumiCol;
/* 0x10F0 */ GXColorS10 field_0x10f0;
/* 0x10F8 */ s16 field_0x10f8;
/* 0x10FA */ s16 field_0x10fa;
/* 0x10FC */ s16 field_0x10fc;
/* 0x10FE */ s16 field_0x10fe;
/* 0x10F8 */ GXColorS10 field_0x10f8;
/* 0x1100 */ GXColorS10 mActorAmbience;
/* 0x1108 */ GXColorS10 mTerrainAmbienceBG0;
/* 0x1110 */ GXColorS10 mTerrainAmbienceBG1;
@@ -496,7 +493,7 @@ public:
/* 0x12C3 */ u8 mColPatCurr;
/* 0x12C4 */ u8 mColpatPrevGather;
/* 0x12C5 */ u8 mColpatCurrGather;
/* 0x12C6 */ s8 mNowRoom;
/* 0x12C6 */ u8 mEnvrIdxPrev;
/* 0x12C7 */ u8 mEnvrIdxCurr;
/* 0x12C8 */ u8 mColpatWeather;
/* 0x12C9 */ u8 mDiceWeatherMode;
@@ -528,7 +525,7 @@ public:
/* 0x12FB */ u8 field_0x12fb;
/* 0x12FC */ s8 field_0x12fc;
/* 0x12FD */ u8 mDarktimeWeek;
/* 0x12FE */ u8 field_0x12fe;
/* 0x12FE */ u8 mPondSeason;
/* 0x1300 */ s16 field_0x1300;
/* 0x1302 */ s16 field_0x1302;
/* 0x1304 */ f32 mWaterSurfaceShineRate;
@@ -547,6 +544,24 @@ inline dScnKy_env_light_c* i_dKy_getEnvlight() {
return &g_env_light;
}
enum dKy_dice_wether_mode {
DICE_MODE_SUNNY_e,
DICE_MODE_CLOUDY_e,
DICE_MODE_RAIN_LIGHT_e,
DICE_MODE_RAIN_HEAVY_e,
DICE_MODE_THUNDER_LIGHT_e,
DICE_MODE_THUNDER_HEAVY_e,
DICE_MODE_UNK6_e,
DICE_MODE_DONE_e = 0xFF,
};
enum dKy_dice_wether_state {
DICE_STATE_RESET_e,
DICE_STATE_INIT_e,
DICE_STATE_EXEC_e,
DICE_STATE_NEXT_e,
};
u8 dKy_darkworld_stage_check(char const*, int);
BOOL dKy_withwarp_capture_check();
bool dKy_darkworld_check();
+3 -3
View File
@@ -45,8 +45,8 @@ public:
/* 0x40 */ u8* mpResMoon_A_A03;
/* 0x44 */ u32 field_0x44[5];
/* 0x58 */ int field_0x58;
/* 0x5C */ f32 field_0x5c;
/* 0x60 */ f32 field_0x60;
/* 0x5C */ f32 mVisibility;
/* 0x60 */ f32 mSunAlpha;
/* 0x64 */ f32 field_0x64;
/* 0x68 */ f32 field_0x68;
/* 0x6C */ f32 field_0x6c;
@@ -70,7 +70,7 @@ public:
/* 0x8C */ f32 field_0x8c;
/* 0x90 */ f32 field_0x90;
/* 0x94 */ f32 field_0x94;
/* 0x98 */ f32 field_0x98;
/* 0x98 */ f32 mDistFalloff;
/* 0x9C */ u8 field_0x9c[2];
/* 0x9E */ bool mDrawLenzInSky;
}; // Size: 0xA0
+4
View File
@@ -115,6 +115,10 @@ inline void mDoAud_heartGaugeOn() {
Z2AudioMgr::getInterface()->mStatusMgr.heartGaugeOn();
}
inline void mDoAud_setSnowPower(s8 i_power) {
g_mEnvSeMgr.setSnowPower(i_power);
}
inline void mDoAud_setFogWipeWidth(f32 i_width) {
g_mEnvSeMgr.setFogWipeWidth(i_width);
}
+1 -1
View File
@@ -1,6 +1,6 @@
#ifndef D_A_VRBOX2_H
#define D_A_VRBOX2_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
#endif /* D_A_VRBOX2_H */
@@ -1,6 +1,24 @@
#ifndef D_A_KYTAG00_H
#define D_A_KYTAG00_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class kytag00_class : public fopAc_ac_c {
public:
/* 0x568 */ u8 field_0x568[0x56C - 0x568];
/* 0x56C */ u8 field_0x56c;
/* 0x56D */ u8 field_0x56d;
/* 0x56E */ u8 field_0x56e;
/* 0x56F */ u8 field_0x56f;
/* 0x570 */ u8 field_0x570;
/* 0x571 */ u8 field_0x571;
/* 0x572 */ u8 field_0x572;
/* 0x573 */ u8 field_0x573[0x578 - 0x573];
/* 0x578 */ int field_0x578;
/* 0x57C */ int field_0x57c;
/* 0x580 */ f32 field_0x580;
/* 0x584 */ f32 field_0x584;
/* 0x588 */ f32 field_0x588;
};
#endif /* D_A_KYTAG00_H */