d_kankyo matching (#2872)

This commit is contained in:
Max Roncace
2025-11-26 16:52:12 -05:00
committed by GitHub
parent 5d0da9be7c
commit 3080360a2a
10 changed files with 107 additions and 91 deletions
+1 -1
View File
@@ -1,8 +1,8 @@
#ifndef D_BG_D_BG_S_CHK_H
#define D_BG_D_BG_S_CHK_H
#include "d/d_bg_s_grp_pass_chk.h"
#include "d/d_bg_s_poly_pass_chk.h"
#include "d/d_bg_s_grp_pass_chk.h"
class dBgS_Chk : public dBgS_PolyPassChk, public dBgS_GrpPassChk {
public:
+40 -75
View File
@@ -2,11 +2,13 @@
#define D_KANKYO_D_KANKYO_H
#include "JSystem/J3DGraphBase/J3DStruct.h"
#include "d/d_kankyo_wether.h"
#include "JSystem/JHostIO/JORReflexible.h"
#include "d/d_bg_s_gnd_chk.h"
#include "d/d_kankyo_data.h"
#include "d/d_kankyo_tev_str.h"
#include "d/d_kankyo_wether.h"
#include "f_pc/f_pc_base.h"
#include "m_Do/m_Do_ext.h"
#include "JSystem/JHostIO/JORReflexible.h"
class JPABaseEmitter;
class cBgS_PolyInfo;
@@ -145,43 +147,6 @@ struct LightStatus {
/* 0xE4 */ f32 field_0xe4;
}; // Size: 0xE8
class dKy_tevstr_c {
public:
// Supposedly exists but didn't work. Might be too big to inline.
// See dPa_modelEcallBack::model_c::set.
// inline dKy_tevstr_c& operator=(const dKy_tevstr_c& b);
/* 0x000 */ J3DLightObj mLightObj;
/* 0x074 */ J3DLightObj mLights[6];
/* 0x32C */ cXyz field_0x32c; // some light pos, unsure how it differs
/* 0x338 */ cXyz mLightPosWorld;
/* 0x344 */ f32 field_0x344;
/* 0x348 */ GXColorS10 AmbCol;
/* 0x350 */ GXColorS10 FogCol;
/* 0x358 */ GXColorS10 TevColor;
/* 0x360 */ GXColor TevKColor;
/* 0x364 */ GXColor mLightInf;
/* 0x368 */ f32 mFogStartZ;
/* 0x36C */ f32 mFogEndZ;
/* 0x370 */ f32 pat_ratio;
/* 0x374 */ f32 field_0x374;
/* 0x378 */ u16 Material_id; // Used for some sort of special material handling when non-0
/* 0x37A */ u8 Type;
/* 0x37B */ u8 mInitTimer;
/* 0x37C */ u8 UseCol;
/* 0x37D */ u8 PrevCol;
/* 0x37E */ u8 wether_pat1;
/* 0x37F */ u8 wether_pat0;
/* 0x380 */ s8 room_no; // Room Color
/* 0x381 */ u8 YukaCol; // Floor (Poly) Color
/* 0x382 */ u8 mLightMode;
/* 0x383 */ u8 Material_use_fg;
/* 0x384 */ u8 field_0x384;
/* 0x385 */ u8 field_0x385;
}; // Size = 0x388
STATIC_ASSERT(sizeof(dKy_tevstr_c) == 0x388);
class fopAc_ac_c;
class dKyd_lightSchejule;
class stage_palette_info_class;
@@ -514,6 +479,26 @@ inline dScnKy_env_light_c* dKy_getEnvlight() {
return &g_env_light;
}
class dKankyo_ParticlelightHIO_c : public JORReflexible {
public:
dKankyo_ParticlelightHIO_c();
void listenPropertyEvent(const JORPropertyEvent*);
void genMessage(JORMContext*);
virtual ~dKankyo_ParticlelightHIO_c() {}
/* 0x04 */ u8 field_0x4;
/* 0x05 */ u8 field_0x5;
/* 0x06 */ GXColor prim_col;
/* 0x0A */ GXColor env_col;
/* 0x10 */ f32 blend_ratio;
/* 0x14 */ int field_0x14;
/* 0x18 */ u8 type;
/* 0x19 */ u8 field_0x19;
/* 0x1A */ u8 field_0x1a;
/* 0x1B */ u8 field_0x1B[0x20 - 0x1B];
};
class dKankyo_lightHIO_c : public JORReflexible {
public:
dKankyo_lightHIO_c();
@@ -892,6 +877,22 @@ public:
/* 0x1C */ dKy_flush_info step4;
};
class dKankyo_dungeonlightHIO_c : public JORReflexible {
public:
dKankyo_dungeonlightHIO_c();
void listenPropertyEvent(const JORPropertyEvent*);
void genMessage(JORMContext*);
virtual ~dKankyo_dungeonlightHIO_c() {}
/* 0x4 */ u8 field_0x4;
/* 0x5 */ u8 field_0x5;
/* 0x6 */ u8 displayDebugSphere;
/* 0x7 */ u8 usedLights;
/* 0x8 */ u8 field_0x8;
/* 0x9 */ u8 field_0x9;
};
class dKankyo_demolightHIO_c : public JORReflexible {
public:
dKankyo_demolightHIO_c();
@@ -934,42 +935,6 @@ public:
/* 0x40 */ s16 minigame_high_wind_duration;
};
class dKankyo_dungeonlightHIO_c : public JORReflexible {
public:
dKankyo_dungeonlightHIO_c();
void listenPropertyEvent(const JORPropertyEvent*);
void genMessage(JORMContext*);
virtual ~dKankyo_dungeonlightHIO_c() {}
/* 0x4 */ u8 field_0x4;
/* 0x5 */ u8 field_0x5;
/* 0x6 */ u8 displayDebugSphere;
/* 0x7 */ u8 usedLights;
/* 0x8 */ u8 field_0x8;
/* 0x9 */ u8 field_0x9;
};
class dKankyo_ParticlelightHIO_c : public JORReflexible {
public:
dKankyo_ParticlelightHIO_c();
void listenPropertyEvent(const JORPropertyEvent*);
void genMessage(JORMContext*);
virtual ~dKankyo_ParticlelightHIO_c() {}
/* 0x04 */ u8 field_0x4;
/* 0x05 */ u8 field_0x5;
/* 0x06 */ GXColor prim_col;
/* 0x0A */ GXColor env_col;
/* 0x10 */ f32 blend_ratio;
/* 0x14 */ int field_0x14;
/* 0x18 */ u8 type;
/* 0x19 */ u8 field_0x19;
/* 0x1A */ u8 field_0x1a;
/* 0x1B */ u8 field_0x1B[0x20 - 0x1B];
};
class dKankyo_HIO_c : public JORReflexible {
public:
dKankyo_HIO_c();
+44
View File
@@ -0,0 +1,44 @@
#ifndef D_D_KANKYO_TEV_STR
#define D_D_KANKYO_TEV_STR
#include "JSystem/J3DGraphBase/J3DStruct.h"
#include "m_Do/m_Do_ext.h"
class dKy_tevstr_c {
public:
// Supposedly exists but didn't work. Might be too big to inline.
// See dPa_modelEcallBack::model_c::set.
// inline dKy_tevstr_c& operator=(const dKy_tevstr_c& b);
/* 0x000 */ J3DLightObj mLightObj;
/* 0x074 */ J3DLightObj mLights[6];
/* 0x32C */ cXyz field_0x32c; // some light pos, unsure how it differs
/* 0x338 */ cXyz mLightPosWorld;
/* 0x344 */ f32 field_0x344;
/* 0x348 */ GXColorS10 AmbCol;
/* 0x350 */ GXColorS10 FogCol;
/* 0x358 */ GXColorS10 TevColor;
/* 0x360 */ GXColor TevKColor;
/* 0x364 */ GXColor mLightInf;
/* 0x368 */ f32 mFogStartZ;
/* 0x36C */ f32 mFogEndZ;
/* 0x370 */ f32 pat_ratio;
/* 0x374 */ f32 field_0x374;
/* 0x378 */ u16 Material_id; // Used for some sort of special material handling when non-0
/* 0x37A */ u8 Type;
/* 0x37B */ u8 mInitTimer;
/* 0x37C */ u8 UseCol;
/* 0x37D */ u8 PrevCol;
/* 0x37E */ u8 wether_pat1;
/* 0x37F */ u8 wether_pat0;
/* 0x380 */ s8 room_no; // Room Color
/* 0x381 */ u8 YukaCol; // Floor (Poly) Color
/* 0x382 */ u8 mLightMode;
/* 0x383 */ u8 Material_use_fg;
/* 0x384 */ u8 field_0x384;
/* 0x385 */ u8 field_0x385;
}; // Size = 0x388
STATIC_ASSERT(sizeof(dKy_tevstr_c) == 0x388);
#endif /* D_D_KANKYO_TEV_STR */
+2 -1
View File
@@ -14,10 +14,11 @@
#include "string.h" // IWYU pragma: export
#include "JSystem/JUtility/JUTGamePad.h" // IWYU pragma: export
#include "JSystem/J3DGraphAnimator/J3DMaterialAnm.h" // IWYU pragma: export
#include "JSystem/JHostIO/JORReflexible.h" // IWYU pragma: export
#include "SSystem/SComponent/c_m3d_g_pla.h" // IWYU pragma: export
#include "SSystem/SComponent/c_bg_s_chk.h" // IWYU pragma: export
#include "f_op/f_op_actor.h" // IWYU pragma: export
#include "d/d_bg_s_poly_pass_chk.h" // IWYU pragma: export
#include "d/d_bg_s_gnd_chk.h" // IWYU pragma: export
#include "d/d_bg_s_chk.h" // IWYU pragma: export
#include "d/d_bg_w.h" // IWYU pragma: export
#include "d/d_com_inf_game.h" // IWYU pragma: export
+1 -1
View File
@@ -1,7 +1,7 @@
#ifndef F_OP_ACTOR_H_
#define F_OP_ACTOR_H_
#include "d/d_kankyo.h"
#include "d/d_kankyo_tev_str.h"
#include "f_pc/f_pc_leaf.h"
#include "global.h"