mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-18 21:18:23 -04:00
Merge pull request #66 from TakaRikka/ky2
d_kankyo_wether almost done, d_kankyo_data / d_kankyo_demo OK
This commit is contained in:
+2
-2
@@ -363,10 +363,10 @@ config.libs = [
|
||||
Object(Matching, "d/d_particle_name.cpp"),
|
||||
Object(NonMatching, "d/d_path.cpp"),
|
||||
Object(NonMatching, "d/d_drawlist.cpp"),
|
||||
Object(NonMatching, "d/d_kankyo_data.cpp"),
|
||||
Object(Matching, "d/d_kankyo_data.cpp"),
|
||||
Object(NonMatching, "d/d_kankyo_wether.cpp"),
|
||||
Object(NonMatching, "d/d_kankyo_rain.cpp"),
|
||||
Object(NonMatching, "d/d_kankyo_demo.cpp"),
|
||||
Object(Matching, "d/d_kankyo_demo.cpp"),
|
||||
Object(NonMatching, "d/d_detect.cpp"),
|
||||
Object(NonMatching, "d/d_vibration.cpp"),
|
||||
Object(NonMatching, "d/d_vib_pattern.cpp"),
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#define JAZELAUDIO_JAIZELBASIC_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JAZelAudio/JAZelAudio_SE.h"
|
||||
#include "JAZelAudio/JAZelAudio_BGM.h"
|
||||
|
||||
class Vec;
|
||||
class JAISound;
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
#ifndef JAZELAUDIO_BGM_H
|
||||
#define JAZELAUDIO_BGM_H
|
||||
|
||||
enum {
|
||||
JA_BGM_SE_SEQUENCE = 0x0800,
|
||||
JA_BGM_ISLAND_LINK = 0x0001,
|
||||
JA_BGM_ITEM_GET = 0x0002,
|
||||
JA_BGM_GOMA = 0x0003,
|
||||
JA_BGM_BATTLE_NORM = 0x0004,
|
||||
JA_BGM_KINDAN_BOSS = 0x0005,
|
||||
JA_BGM_D_RYU_MT = 0x0006,
|
||||
JA_BGM_I_MAJU = 0x0007,
|
||||
JA_BGM_HOUSE = 0x0008,
|
||||
JA_BGM_OPEN_BOX = 0x0009,
|
||||
JA_BGM_DIE_LINK = 0x000A,
|
||||
JA_BGM_SEA_GAME = 0x000B,
|
||||
JA_BGM_SEA_GOAL = 0x000C,
|
||||
JA_BGM_SEA_FAIL = 0x000D,
|
||||
JA_BGM_ISLAND_LINK_2 = 0x000E,
|
||||
JA_BGM_I_MAJU_JAIL = 0x000F,
|
||||
JA_BGM_GOMA_2 = 0x0010,
|
||||
JA_BGM_JI_TRAINING = 0x0011,
|
||||
JA_BGM_TETRA_MEET = 0x0012,
|
||||
JA_BGM_BK_FLY_DOWN = 0x0013,
|
||||
JA_BGM_DK_BATTLE = 0x0014,
|
||||
JA_BGM_MJ_TOWER_BATTLE = 0x0015,
|
||||
JA_BGM_FIND_TETRA = 0x0016,
|
||||
JA_BGM_I_LINK_FOREST = 0x0017,
|
||||
JA_BGM_HOUSE_G = 0x0018,
|
||||
JA_BGM_MBOSS = 0x0019,
|
||||
JA_BGM_MBOSS_S = 0x001A,
|
||||
JA_BGM_BOAT_SHOP = 0x001B,
|
||||
JA_BGM_SEA_ENEMY = 0x001C,
|
||||
JA_BGM_MORNING = 0x001D,
|
||||
JA_BGM_SELECT = 0x001E,
|
||||
JA_BGM_MEDRI_AWAKE = 0x001F,
|
||||
JA_BGM_MAKORE_AWAKE = 0x0020,
|
||||
JA_BGM_TAKT_MAKORE = 0x0021,
|
||||
JA_BGM_TAKT_MEDRI = 0x0022,
|
||||
JA_BGM_BST_BATTLE = 0x0023,
|
||||
JA_BGM_GET_HEART = 0x0024,
|
||||
JA_BGM_ITEM_GET_S = 0x0025,
|
||||
JA_BGM_D_FOREST = 0x0026,
|
||||
JA_BGM_GET_SONG = 0x0027,
|
||||
JA_BGM_KAMI_TOWER = 0x0028,
|
||||
JA_BGM_RANE_BATTLE = 0x0029,
|
||||
JA_BGM_PIRATE = 0x002A,
|
||||
JA_BGM_DIOCTA_BATTLE = 0x002B,
|
||||
JA_BGM_PIRATE_C = 0x002C,
|
||||
JA_BGM_D_EARTH = 0x002D,
|
||||
JA_BGM_SEA = 0x002E,
|
||||
JA_BGM_D_WIND = 0x002F,
|
||||
JA_BGM_TAKT_CHUYA = 0x0030,
|
||||
JA_BGM_TAKT_KAZE = 0x0031,
|
||||
JA_BGM_TAKT_SHIPPU = 0x0032,
|
||||
JA_BGM_TETRA_MEET_B = 0x0033,
|
||||
JA_BGM_HYRULE_OFF = 0x0034,
|
||||
JA_BGM_HYRULE_ON = 0x0035,
|
||||
JA_BGM_CB_NEXTYEAR = 0x0036,
|
||||
JA_BGM_CB_NEXTYEAR_W = 0x0037,
|
||||
JA_BGM_ISLAND_LINK_0 = 0x0038,
|
||||
JA_BGM_ISLAND_WOOD = 0x0039,
|
||||
JA_BGM_ISLAND_DRAGON = 0x003A,
|
||||
JA_BGM_ISLAND_TAURA = 0x003B,
|
||||
JA_BGM_SEA_STORM = 0x003C,
|
||||
JA_BGM_PIRATE_DEMO5 = 0x003D,
|
||||
JA_BGM_JI_TRAINING_2 = 0x003E,
|
||||
JA_BGM_I_WOOD_INNER = 0x003F,
|
||||
JA_BGM_DRUG_STORE = 0x0040,
|
||||
JA_BGM_P_GANON_1 = 0x0041,
|
||||
JA_BGM_D_GANON_1 = 0x0042,
|
||||
JA_BGM_D_GANON_2 = 0x0043,
|
||||
JA_BGM_BAACHAN = 0x0044,
|
||||
JA_BGM_DEKU_PINCH = 0x0045,
|
||||
JA_BGM_DIOCTA_2 = 0x0046,
|
||||
JA_BGM_P_GANON_2 = 0x0047,
|
||||
JA_BGM_BIG_POW = 0x0048,
|
||||
JA_BGM_PAST_BIG_POW = 0x0049,
|
||||
JA_BGM_PAST_BKM = 0x004A,
|
||||
JA_BGM_PAST_GOMA = 0x004B,
|
||||
JA_BGM_PAST_RANE = 0x004C,
|
||||
JA_BGM_GANON_BATTLE = 0x004D,
|
||||
JA_BGM_MASTER_SWORD = 0x004E,
|
||||
JA_BGM_GET_PEARL = 0x004F,
|
||||
JA_BGM_BIRDMAN = 0x0050,
|
||||
JA_BGM_BIRDMAN_GOAL = 0x0051,
|
||||
JA_BGM_BIRDMAN_FAIL = 0x0052,
|
||||
JA_BGM_ELF = 0x0053,
|
||||
JA_BGM_PAST_GOMA_2 = 0x0054,
|
||||
JA_BGM_ISLAND_LINK_3 = 0x0055,
|
||||
JA_BGM_DEATH_VALLEY = 0x0056,
|
||||
JA_BGM_JABOO_CAVE = 0x0057,
|
||||
JA_BGM_SUB_DUNGEON = 0x0058,
|
||||
JA_BGM_BGN_KUGUTSU = 0x0059,
|
||||
JA_BGM_BGN_TARABA = 0x005A,
|
||||
JA_BGM_BGN_HAYAMUSHI = 0x005B,
|
||||
JA_BGM_BGN_TARABA_IN = 0x005C,
|
||||
JA_BGM_BGN_GET_BOX = 0x005D,
|
||||
JA_BGM_I_MAJU_2ND = 0x005E,
|
||||
JA_BGM_MAKORE_TAKT_8 = 0x005F,
|
||||
JA_BGM_MEDORI_TAKT_8 = 0x0060,
|
||||
JA_BGM_TRIFORCE_DEMO = 0x0061,
|
||||
};
|
||||
|
||||
#endif /* JAZELAUDIO_BGM_H */
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,6 +16,16 @@ class JPACallBackBase;
|
||||
class JPACallBackBase2;
|
||||
class JPADataBlockLinkInfo;
|
||||
|
||||
enum {
|
||||
JPAEmtrStts_StopEmit = 0x01,
|
||||
JPAEmtrStts_StopCalc = 0x02,
|
||||
JPAEmtrStts_StopDraw = 0x04,
|
||||
JPAEmtrStts_EnableDeleteEmitter = 0x08,
|
||||
JPAEmtrStts_FirstEmit = 0x10,
|
||||
JPAEmtrStts_RateStepEmit = 0x20,
|
||||
JPAEmtrStts_Immortal = 0x40,
|
||||
};
|
||||
|
||||
class JPABaseEmitter {
|
||||
public:
|
||||
typedef void (JPABaseEmitter::*VolumeFunc)();
|
||||
@@ -45,12 +55,21 @@ public:
|
||||
void calcgReRDirection();
|
||||
void getPivotX();
|
||||
void getPivotY();
|
||||
|
||||
void setStatus(u32 status) { mFlags |= status; }
|
||||
|
||||
u8 getGlobalAlpha() { return mGlobalPrmColor.a; }
|
||||
void setGlobalAlpha(u8 alpha) { mGlobalPrmColor.a = alpha; }
|
||||
void setGlobalRTMatrix(MtxP mtx) {
|
||||
JPASetRMtxTVecfromMtx(mtx, mGlobalRotation, mGlobalTranslation);
|
||||
}
|
||||
|
||||
void stopCreateParticle() { setStatus(JPAEmtrStts_StopEmit); }
|
||||
|
||||
void becomeInvalidEmitter() {
|
||||
mMaxFrame = -1;
|
||||
stopCreateParticle();
|
||||
}
|
||||
|
||||
/* 0x000 */ VolumeFunc mVolumeFunc;
|
||||
/* 0x00C */ cXyz mEmitterScale;
|
||||
|
||||
+18
-1
@@ -49,7 +49,6 @@ double modf(double, double*);
|
||||
double pow(double, double);
|
||||
double sin(double);
|
||||
float sinf(float);
|
||||
double sqrt(double);
|
||||
double tan(double);
|
||||
float tanf(float);
|
||||
|
||||
@@ -72,6 +71,24 @@ extern inline float sqrtf(float x) {
|
||||
return x;
|
||||
}
|
||||
|
||||
extern inline double sqrt(double x) {
|
||||
if(x > 0.0)
|
||||
{
|
||||
double guess = __frsqrte(x); /* returns an approximation to */
|
||||
guess = .5*guess*(3.0 - guess*guess*x); /* now have 8 sig bits */
|
||||
guess = .5*guess*(3.0 - guess*guess*x); /* now have 16 sig bits */
|
||||
guess = .5*guess*(3.0 - guess*guess*x); /* now have 32 sig bits */
|
||||
guess = .5*guess*(3.0 - guess*guess*x); /* now have > 53 sig bits */
|
||||
return x*guess ;
|
||||
}
|
||||
else if ( x == 0 )
|
||||
return 0;
|
||||
else if ( x )
|
||||
return NAN;
|
||||
|
||||
return HUGE_VALF;
|
||||
}
|
||||
|
||||
inline float atan2f(float y, float x) {
|
||||
return (float)atan2(y, x);
|
||||
}
|
||||
|
||||
@@ -170,6 +170,7 @@ public:
|
||||
|
||||
void setLkDemoAnmArchive(JKRArchive* i_arc) { mpLkDArc = i_arc; }
|
||||
void setStatus(u16 status) { mStatus = status; }
|
||||
s32 checkStatus(u16 flags) { return flags & mStatus; }
|
||||
|
||||
void setShipId(u8 i_id) { mShipId = i_id; }
|
||||
void setShipRoomId(u8 i_id) { mShipRoomId = i_id; }
|
||||
@@ -243,7 +244,7 @@ public:
|
||||
/* 0x483C */ dFlower_packet_c* mpFlowerPacket;
|
||||
/* 0x4840 */ s8 mLkDArcIdx;
|
||||
/* 0x4841 */ u8 field_0x4841;
|
||||
/* 0x4842 */ s16 mStatus;
|
||||
/* 0x4842 */ u16 mStatus;
|
||||
/* 0x4844 */ dDlst_window_c mDlstWindow[1];
|
||||
/* 0x4870 */ dComIfG_camera_info_class mCameraInfo[1];
|
||||
/* 0x48A4 */ daPy_py_c* mpPlayer[1];
|
||||
@@ -659,6 +660,22 @@ inline BOOL dComIfGs_isGetItem(int i_field, u8 i_item) {
|
||||
return g_dComIfG_gameInfo.save.getPlayer().getGetItem().isItem(i_field, i_item);
|
||||
}
|
||||
|
||||
inline s16 dComIfGs_getWindY() {
|
||||
return g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusB().getWindY();
|
||||
}
|
||||
|
||||
inline s16 dComIfGs_getWindX() {
|
||||
return g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusB().getWindX();
|
||||
}
|
||||
|
||||
inline void dComIfGs_setWindY(s16 i_windY) {
|
||||
g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusB().setWindY(i_windY);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setWindX(s16 i_windX) {
|
||||
g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusB().setWindX(i_windX);
|
||||
}
|
||||
|
||||
/**
|
||||
* === PLAY ===
|
||||
*/
|
||||
@@ -987,6 +1004,10 @@ inline void dComIfGp_setMessageCountNumber(s16 num) {
|
||||
g_dComIfG_gameInfo.play.setMessageCountNumber(num);
|
||||
}
|
||||
|
||||
inline s32 dComIfGp_checkStatus(u16 flags) {
|
||||
return g_dComIfG_gameInfo.play.checkStatus(flags);
|
||||
}
|
||||
|
||||
inline s16 dComIfGp_getItemMagicCount() {
|
||||
return g_dComIfG_gameInfo.play.getItemMagicCount();
|
||||
}
|
||||
@@ -1135,6 +1156,28 @@ inline s32 dComIfGd_getLightModelNum() {
|
||||
return g_dComIfG_gameInfo.drawlist.getLightModelNum();
|
||||
}
|
||||
|
||||
inline J3DDrawBuffer* dComIfGd_getListFilter() {
|
||||
return g_dComIfG_gameInfo.drawlist.getOpaListFilter();
|
||||
}
|
||||
|
||||
inline void dComIfGd_setList() {
|
||||
g_dComIfG_gameInfo.drawlist.setOpaList();
|
||||
g_dComIfG_gameInfo.drawlist.setXluList();
|
||||
}
|
||||
|
||||
inline void dComIfGd_setListSky() {
|
||||
g_dComIfG_gameInfo.drawlist.setOpaListSky();
|
||||
g_dComIfG_gameInfo.drawlist.setXluListSky();
|
||||
}
|
||||
|
||||
inline void dComIfGd_setXluListBG() {
|
||||
g_dComIfG_gameInfo.drawlist.setXluListBG();
|
||||
}
|
||||
|
||||
inline void dComIfGd_entryZSortXluList(J3DPacket* i_packet, cXyz& param_1) {
|
||||
g_dComIfG_gameInfo.drawlist.entryZSortXluList(i_packet, param_1);
|
||||
}
|
||||
|
||||
/**
|
||||
* === RESOURCE ===
|
||||
*/
|
||||
|
||||
+30
-25
@@ -1,6 +1,7 @@
|
||||
#ifndef D_D_DRAWLIST_H
|
||||
#define D_D_DRAWLIST_H
|
||||
|
||||
#include "JSystem/J3DGraphBase/J3DDrawBuffer.h"
|
||||
#include "f_op/f_op_view.h"
|
||||
#include "global.h"
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
@@ -171,21 +172,20 @@ struct dDlst_alphaModelData_c;
|
||||
struct dDlst_alphaModel_c {
|
||||
public:
|
||||
enum Type {
|
||||
TYPE_SPHERE = 0,
|
||||
TYPE_TWO_SPHERES = 1,
|
||||
TYPE_SEARCHLIGHT = 2,
|
||||
TYPE_CUBE = 3,
|
||||
TYPE_SMALL_SPHERE = 4,
|
||||
TYPE_SPHERE = 0,
|
||||
TYPE_TWO_SPHERES = 1,
|
||||
TYPE_SEARCHLIGHT = 2,
|
||||
TYPE_CUBE = 3,
|
||||
TYPE_SMALL_SPHERE = 4,
|
||||
TYPE_THREE_SPHERES = 5,
|
||||
};
|
||||
|
||||
|
||||
dDlst_alphaModel_c();
|
||||
void create(int);
|
||||
void set(u8 type, Mtx mtx, u8 alpha);
|
||||
void draw(MtxP);
|
||||
s32 getNum() {
|
||||
return mNum;
|
||||
}
|
||||
s32 getNum() { return mNum; }
|
||||
|
||||
public:
|
||||
/* 0x00 */ _GXColor mColor;
|
||||
/* 0x04 */ s16 mCapacity;
|
||||
@@ -208,6 +208,21 @@ public:
|
||||
void calcWipe();
|
||||
void set2DOpa(dDlst_base_c*);
|
||||
|
||||
J3DDrawBuffer* getOpaListFilter() { return mpWetherFxBuffer; }
|
||||
|
||||
void setXluDrawList(J3DDrawBuffer* buffer) { j3dSys.setDrawBuffer(buffer, XLU_BUFFER); }
|
||||
void setOpaDrawList(J3DDrawBuffer* buffer) { j3dSys.setDrawBuffer(buffer, OPA_BUFFER); }
|
||||
void setOpaList() { setOpaDrawList(mpBufInvisibleModelOpa); }
|
||||
void setXluList() { setXluDrawList(mpBufInvisibleModelXlu); }
|
||||
void setOpaListSky() { setOpaDrawList(mpBufSkyOpa); }
|
||||
void setXluListSky() { setXluDrawList(mpBufSkyXlu); }
|
||||
void setOpaListBG() { setOpaDrawList(mpBufWorldOpa); }
|
||||
void setXluListBG() { setXluDrawList(mpBufWorldXlu); }
|
||||
|
||||
void entryZSortXluList(J3DPacket* i_packet, cXyz& param_1) {
|
||||
entryZSortXluDrawList(mpBufInvisibleModelXlu, i_packet, param_1);
|
||||
}
|
||||
|
||||
int setSimpleShadow(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3, s16 param_4,
|
||||
f32 param_5, _GXTexObj* param_6) {
|
||||
return mShadowControl.setSimple(param_0, param_1, param_2, param_3, param_4, param_5,
|
||||
@@ -217,22 +232,12 @@ public:
|
||||
dKy_tevstr_c* pTevStr) {
|
||||
return mShadowControl.setReal2(id, param_2, pModel, pPos, param_5, param_6, pTevStr);
|
||||
}
|
||||
|
||||
void setAlphaModel(u8 type, Mtx mtx, u8 alpha) {
|
||||
mpAlphaModel->set(type, mtx, alpha);
|
||||
}
|
||||
void setSpotModel(u8 type, Mtx mtx, u8 alpha) {
|
||||
mpSpotModel->set(type, mtx, alpha);
|
||||
}
|
||||
void setLightModel(u8 type, Mtx mtx, u8 alpha) {
|
||||
mpLightModel->set(type, mtx, alpha);
|
||||
}
|
||||
s32 getSpotModelNum() {
|
||||
return mpSpotModel->getNum();
|
||||
}
|
||||
s32 getLightModelNum() {
|
||||
return mpLightModel->getNum();
|
||||
}
|
||||
|
||||
void setAlphaModel(u8 type, Mtx mtx, u8 alpha) { mpAlphaModel->set(type, mtx, alpha); }
|
||||
void setSpotModel(u8 type, Mtx mtx, u8 alpha) { mpSpotModel->set(type, mtx, alpha); }
|
||||
void setLightModel(u8 type, Mtx mtx, u8 alpha) { mpLightModel->set(type, mtx, alpha); }
|
||||
s32 getSpotModelNum() { return mpSpotModel->getNum(); }
|
||||
s32 getLightModelNum() { return mpLightModel->getNum(); }
|
||||
|
||||
static void offWipe() { mWipe = false; }
|
||||
|
||||
|
||||
+21
-17
@@ -35,7 +35,7 @@ struct WIND_INFLUENCE {
|
||||
/* 0x18 */ f32 mRadius;
|
||||
/* 0x1C */ f32 mStrength;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
/* 0x24 */ u32 field_0x24;
|
||||
/* 0x24 */ int field_0x24;
|
||||
/* 0x28 */ u8 mbConstant;
|
||||
};
|
||||
|
||||
@@ -50,9 +50,7 @@ struct WIND_INF_ENTITY {
|
||||
struct GB_WIND_INFLUENCE {
|
||||
/* 0x00 */ cXyz mWindVec;
|
||||
/* 0x04 */ cXyz* mpWindVecOverride;
|
||||
/* 0x08 */ f32 field_0x8;
|
||||
/* 0x0C */ f32 field_0xc;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x08 */ cXyz field_0x8;
|
||||
/* 0x14 */ f32 mWindPower;
|
||||
/* 0x18 */ f32 mWindStrengthOverride;
|
||||
/* 0x1C */ f32 mCustomWindPower;
|
||||
@@ -107,6 +105,12 @@ struct WAVE_INFO {
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
};
|
||||
|
||||
struct DEMO_PLIGHT {
|
||||
/* 0x00 */ int field_0x00;
|
||||
/* 0x04 */ int field_0x04;
|
||||
/* 0x08 */ LIGHT_INFLUENCE mLightInfluence;
|
||||
};
|
||||
|
||||
class dKy_tevstr_c {
|
||||
public:
|
||||
/* 0x00 */ J3DLightObj mLightObj;
|
||||
@@ -148,13 +152,6 @@ enum TevType {
|
||||
TEV_TYPE_ACTOR_NOLIGHT,
|
||||
};
|
||||
|
||||
struct dScnKy__Schedule {
|
||||
/* 0x0 */ f32 mTimeEnd;
|
||||
/* 0x4 */ f32 mTimeBegin;
|
||||
/* 0x8 */ u8 mPalIdx0;
|
||||
/* 0x9 */ u8 mPalIdx1;
|
||||
};
|
||||
|
||||
class dKankyo_sun_Packet;
|
||||
class dKankyo_sunlenz_Packet;
|
||||
class dKankyo_rain_Packet;
|
||||
@@ -163,13 +160,15 @@ class dKankyo_housi_Packet;
|
||||
class dKankyo_cloud_Packet;
|
||||
class dKankyo_vrkumo_Packet;
|
||||
class dKankyo_wave_Packet;
|
||||
class dKyr__wind_Packet;
|
||||
class dKankyo_poison_Packet;
|
||||
class WINDEFF_SET;
|
||||
class dKankyo_star_Packet;
|
||||
class stage_palet_info_class;
|
||||
class stage_pselect_info_class;
|
||||
class stage_envr_info_class;
|
||||
class stage_vrbox_info_class;
|
||||
class stage_plight_info_class;
|
||||
struct dKyd_Schedule;
|
||||
|
||||
class dScnKy_env_light_c {
|
||||
public:
|
||||
@@ -203,7 +202,7 @@ public:
|
||||
/* 0x008 */ stage_pselect_info_class* mpPselectInfo;
|
||||
/* 0x00C */ stage_envr_info_class* mpEnvrInfo;
|
||||
/* 0x010 */ stage_vrbox_info_class* mpVrboxInfo;
|
||||
/* 0x014 */ dScnKy__Schedule* mpSchejule;
|
||||
/* 0x014 */ dKyd_Schedule* mpSchejule;
|
||||
/* 0x018 */ LIGHT_INFLUENCE mBaseLightInfluence;
|
||||
/* 0x038 */ LIGHT_INFLUENCE mLightInfluence[30];
|
||||
/* 0x3F8 */ LIGHT_INFLUENCE* mpPLights[200];
|
||||
@@ -229,8 +228,10 @@ public:
|
||||
/* 0x9D8 */ int mStarCount;
|
||||
/* 0x9DC */ f32 mStarCountTarget;
|
||||
/* 0x9E0 */ dKankyo_star_Packet* mpStarPacket;
|
||||
/* 0x9E4 */ u8 field_0x9E4[0x9F0 - 0x9E4];
|
||||
/* 0x9F0 */ u8 mbHouseInitialized;
|
||||
/* 0x9E4 */ u8 mbPoisonInitialized;
|
||||
/* 0x9E8 */ int mPoisonCount;
|
||||
/* 0x9EC */ dKankyo_poison_Packet* mpPoisonPacket;
|
||||
/* 0x9F0 */ u8 mbHousiInitialized;
|
||||
/* 0x9F4 */ int mHousiCount;
|
||||
/* 0x9F8 */ dKankyo_housi_Packet* mpHousiPacket;
|
||||
/* 0x9FC */ u8 mMoyaInitialized;
|
||||
@@ -242,11 +243,11 @@ public:
|
||||
/* 0xA10 */ f32 mVrkumoStrength;
|
||||
/* 0xA14 */ dKankyo_vrkumo_Packet* mpVrkumoPacket;
|
||||
/* 0xA18 */ u8 mWaveInitialized;
|
||||
/* 0xA19 */ u8 field_0xA19[0xA20 - 0xA19];
|
||||
/* 0xA1C */ int field_0xa1c;
|
||||
/* 0xA20 */ dKankyo_wave_Packet* mpWavePacket;
|
||||
/* 0xA24 */ u8 mbWindlineInitialized;
|
||||
/* 0xA28 */ int mWindlineCount;
|
||||
/* 0xA2C */ dKyr__wind_Packet* mpWind;
|
||||
/* 0xA2C */ WINDEFF_SET* mpWind;
|
||||
/* 0xA30 */ EF_THUNDER mThunderEff;
|
||||
/* 0xA68 */ WAVE_INFO* mpWaveInfl[10];
|
||||
/* 0xA90 */ cXyz mLightDir;
|
||||
@@ -392,6 +393,9 @@ void dKy_Sound_set(cXyz i_pos, int param_1, unsigned int i_actorID, int param_3)
|
||||
void dKy_itudemo_se();
|
||||
void dKy_actor_addcol_set(s16, s16, s16, f32);
|
||||
void dKy_plight_set(LIGHT_INFLUENCE*);
|
||||
void dKy_efplight_set(LIGHT_INFLUENCE* param_0);
|
||||
void dKy_plight_cut(LIGHT_INFLUENCE* param_0);
|
||||
void dKy_efplight_cut(LIGHT_INFLUENCE* param_0);
|
||||
void dKy_fog_startendz_set(f32, f32, f32);
|
||||
void dKy_vrbox_addcol_set(s16, s16, s16, f32);
|
||||
BOOL dKy_daynight_check();
|
||||
|
||||
@@ -7,15 +7,21 @@ struct stage_vrbox_info_class;
|
||||
struct stage_pselect_info_class;
|
||||
struct stage_envr_info_class;
|
||||
struct stage_palet_info_class;
|
||||
struct dScnKy__Schedule;
|
||||
|
||||
struct dKyd_Schedule {
|
||||
/* 0x0 */ f32 mTimeEnd;
|
||||
/* 0x4 */ f32 mTimeBegin;
|
||||
/* 0x8 */ u8 mPalIdx0;
|
||||
/* 0x9 */ u8 mPalIdx1;
|
||||
};
|
||||
|
||||
stage_palet_info_class* dKyd_dmpalet_getp();
|
||||
stage_pselect_info_class* dKyd_dmpselect_getp();
|
||||
stage_envr_info_class* dKyd_dmenvr_getp();
|
||||
stage_vrbox_info_class* dKyd_dmvrbox_getp();
|
||||
dScnKy__Schedule* dKyd_schejule_getp();
|
||||
dScnKy__Schedule* dKyd_schejule_boss_getp();
|
||||
void dKyd_schejule_menu_getp();
|
||||
dKyd_Schedule* dKyd_schejule_getp();
|
||||
dKyd_Schedule* dKyd_schejule_boss_getp();
|
||||
dKyd_Schedule* dKyd_schejule_menu_getp();
|
||||
void dKyd_xfog_table_set(u8);
|
||||
|
||||
#endif /* D_KANKYO_DATA_H */
|
||||
@@ -1,7 +1,48 @@
|
||||
#ifndef D_KANKYO_D_KANKYO_RAIN_H
|
||||
#define D_KANKYO_D_KANKYO_RAIN_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "dolphin/gx/GX.h"
|
||||
|
||||
struct DOUBLE_POS {
|
||||
f64 x, y, z;
|
||||
};
|
||||
|
||||
class cXyz;
|
||||
|
||||
void dKyr_drawSun(Mtx, cXyz*, GXColor&, u8**);
|
||||
void dKyr_drawLenzflare(Mtx, cXyz*, GXColor&, u8**);
|
||||
void dKyr_drawRain(Mtx, u8**);
|
||||
void dKyr_drawSibuki(Mtx, u8**);
|
||||
void drawPoison(Mtx, u8**);
|
||||
void dKyr_drawHousi(Mtx, u8**);
|
||||
void dKyr_drawKazanbai(Mtx, u8**);
|
||||
void dKyr_drawSnow(Mtx, u8**);
|
||||
void dKyr_drawStar(Mtx, u8**);
|
||||
void drawWave(Mtx, u8**);
|
||||
void drawCloudShadow(Mtx, u8**);
|
||||
void drawVrkumo(Mtx, GXColor&, u8**);
|
||||
void dKyr_thunder_init();
|
||||
void dKyr_thunder_move();
|
||||
void dKyr_poison_light_colision();
|
||||
void dKyr_wind_init();
|
||||
void dKyr_wind_move();
|
||||
void dKyr_sun_move();
|
||||
void dKyr_lenzflare_move();
|
||||
void dKyr_rain_init();
|
||||
void dKyr_rain_move();
|
||||
void dKyr_snow_move();
|
||||
void dKyr_kazanbai_move();
|
||||
void dKyr_snow_init();
|
||||
void dKyr_star_init();
|
||||
void dKyr_star_move();
|
||||
void poison_init();
|
||||
void poison_move();
|
||||
void dKyr_housi_move();
|
||||
void cloud_shadow_move();
|
||||
void vrkumo_move();
|
||||
void wave_move();
|
||||
void dKyr_get_vectle_calc(cXyz*, cXyz*, cXyz*);
|
||||
BOOL dKyr_poison_live_check();
|
||||
BOOL dKyr_moon_arrival_check();
|
||||
|
||||
|
||||
@@ -1,9 +1,341 @@
|
||||
#ifndef D_KANKYO_WETHER_H
|
||||
#define D_KANKYO_WETHER_H
|
||||
|
||||
#include "JSystem/J3DGraphBase/J3DPacket.h"
|
||||
#include "SSystem/SComponent/c_xyz.h"
|
||||
|
||||
class JUTTexture;
|
||||
class JPABaseEmitter;
|
||||
class WIND_INFLUENCE;
|
||||
|
||||
class dKankyo_sun_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_sun_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_sun_Packet();
|
||||
|
||||
/* 0x10 */ cXyz mPos[2];
|
||||
/* 0x28 */ u32 mVizChkData[5];
|
||||
/* 0x3C */ u8 field_0x3c;
|
||||
/* 0x3D */ bool field_0x3d;
|
||||
/* 0x40 */ f32 mVisibility;
|
||||
/* 0x44 */ f32 mSunAlpha;
|
||||
/* 0x48 */ f32 mMoonAlpha;
|
||||
/* 0x4C */ GXColor mColor;
|
||||
/* 0x50 */ u8* mpTextureData[5];
|
||||
};
|
||||
|
||||
class dKankyo_sunlenz_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_sunlenz_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_sunlenz_Packet();
|
||||
|
||||
/* 0x10 */ GXColor mColorTmp;
|
||||
/* 0x14 */ u8* mpTexSnow01;
|
||||
/* 0x18 */ u8* mpTexLensHalf;
|
||||
/* 0x1C */ u8* mpTexRingHalf;
|
||||
/* 0x20 */ cXyz mPositions[8];
|
||||
/* 0x80 */ f32 field_0x80;
|
||||
/* 0x84 */ f32 field_0x84;
|
||||
/* 0x88 */ f32 field_0x88;
|
||||
/* 0x8C */ f32 field_0x8c;
|
||||
/* 0x90 */ f32 mAngleDeg;
|
||||
/* 0x94 */ f32 mDistFalloff;
|
||||
/* 0x98 */ s16 field_0x98;
|
||||
/* 0x9A */ bool mbDrawLenzInSky;
|
||||
};
|
||||
|
||||
struct RAIN_EFF {
|
||||
RAIN_EFF();
|
||||
~RAIN_EFF();
|
||||
|
||||
/* 0x00 */ u8 mStatus;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ cXyz mBasePos;
|
||||
/* 0x1C */ f32 field_0x1c;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
/* 0x24 */ f32 field_0x24;
|
||||
/* 0x28 */ f32 mAlpha;
|
||||
/* 0x2C */ f32 field_0x2c;
|
||||
/* 0x30 */ f32 field_0x30;
|
||||
/* 0x34 */ s16 mTimer;
|
||||
};
|
||||
|
||||
class dKankyo_rain_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_rain_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_rain_Packet();
|
||||
|
||||
/* 0x0010 */ u8* mpTxSnow01;
|
||||
/* 0x0014 */ u8* mpTxRingAHalf;
|
||||
/* 0x0018 */ RAIN_EFF mRainEff[250];
|
||||
/* 0x36C8 */ f32 field_0x36c8;
|
||||
/* 0x36CC */ f32 field_0x36cc;
|
||||
/* 0x36D0 */ s16 mRainCount;
|
||||
/* 0x36D2 */ u8 field_0x36D2[0x36D8 - 0x36D2];
|
||||
/* 0x36D8 */ cXyz mCamEyePos;
|
||||
/* 0x36E4 */ cXyz mCamCenterPos;
|
||||
/* 0x36F0 */ cXyz mCenterDelta;
|
||||
/* 0x36FC */ f32 mCenterDeltaMul;
|
||||
/* 0x3700 */ f32 field_0x3700;
|
||||
/* 0x3704 */ f32 mSibukiAlpha;
|
||||
/* 0x3708 */ f32 mOverheadFade;
|
||||
/* 0x370C */ f32 mFwd1Fade;
|
||||
/* 0x3710 */ f32 mFwdFade2;
|
||||
/* 0x3714 */ u8 mStatus;
|
||||
};
|
||||
|
||||
struct SNOW_EFF {
|
||||
SNOW_EFF();
|
||||
~SNOW_EFF();
|
||||
|
||||
/* 0x00 */ u8 mStatus;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ cXyz mBasePos;
|
||||
/* 0x1C */ f32 mPosWaveX;
|
||||
/* 0x20 */ f32 mPosWaveZ;
|
||||
/* 0x24 */ f32 mGravity;
|
||||
/* 0x28 */ f32 mWindSpeed;
|
||||
/* 0x2C */ f32 mScale;
|
||||
/* 0x30 */ u8 field_0x30[0x34 - 0x30];
|
||||
/* 0x34 */ s16 mTimer;
|
||||
};
|
||||
|
||||
class dKankyo_snow_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_snow_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_snow_Packet();
|
||||
|
||||
/* 0x0010 */ u8* mpTexture;
|
||||
/* 0x0014 */ SNOW_EFF mEff[250];
|
||||
/* 0x36C4 */ cXyz mOldEyePos;
|
||||
/* 0x36D0 */ f32 field_0x36d0;
|
||||
/* 0x36D4 */ f32 field_0x36d4;
|
||||
/* 0x36D8 */ s16 mEffCount;
|
||||
/* 0x36DA */ s16 mTamariStart;
|
||||
};
|
||||
|
||||
struct STAR_EFF {
|
||||
STAR_EFF();
|
||||
~STAR_EFF();
|
||||
|
||||
/* 0x00 */ u8 field_0x00[0x1C - 0x00];
|
||||
/* 0x1C */ f32 mAnimCounter;
|
||||
/* 0x20 */ u8 field_0x20[0x28 - 0x20];
|
||||
/* 0x28 */ f32 mSin;
|
||||
/* 0x2C */ u8 field_0x2c[0x34 - 0x2C];
|
||||
};
|
||||
|
||||
class dKankyo_star_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_star_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_star_Packet();
|
||||
|
||||
/* 0x10 */ u8* field_0x10;
|
||||
/* 0x14 */ STAR_EFF mStarEff[1];
|
||||
/* 0x48 */ s16 mCount;
|
||||
};
|
||||
|
||||
struct POISON_EFF {
|
||||
POISON_EFF();
|
||||
~POISON_EFF();
|
||||
|
||||
/* 0x0 */ u8 field_0x0[0x30];
|
||||
};
|
||||
|
||||
class dKankyo_poison_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_poison_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_poison_Packet();
|
||||
|
||||
/* 0x0010 */ POISON_EFF mPoisonEff[1000];
|
||||
/* 0xBB90 */ u8 field_0xbb90[0xBB9C - 0xBB90];
|
||||
/* 0xBB9C */ cXyz field_0xbb9c;
|
||||
/* 0xBBA8 */ u8 field_0xbba8[0xBBAC - 0xBBA8];
|
||||
/* 0xBBAC */ u8* field_0xbbac;
|
||||
};
|
||||
|
||||
struct CLOUD_EFF {
|
||||
CLOUD_EFF();
|
||||
~CLOUD_EFF();
|
||||
|
||||
/* 0x00 */ u8 mStatus;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ cXyz mBasePos;
|
||||
/* 0x1C */ cXyz mPntWindVel;
|
||||
/* 0x28 */ cXyz mVelRndm;
|
||||
/* 0x34 */ f32 field_0x34;
|
||||
/* 0x38 */ f32 mWindSpeed;
|
||||
/* 0x3C */ s16 mAnimCounter;
|
||||
/* 0x40 */ f32 mAlpha;
|
||||
/* 0x44 */ f32 mSize;
|
||||
/* 0x48 */ f32 mInitialSize;
|
||||
};
|
||||
|
||||
class dKankyo_cloud_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_cloud_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_cloud_Packet();
|
||||
|
||||
/* 0x0010 */ u8* mpTexture;
|
||||
/* 0x0014 */ int mCount;
|
||||
/* 0x0018 */ CLOUD_EFF mEff[100];
|
||||
};
|
||||
|
||||
struct HOUSI_EFF {
|
||||
HOUSI_EFF();
|
||||
~HOUSI_EFF();
|
||||
|
||||
/* 0x00 */ u8 mState;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ cXyz mBasePos;
|
||||
/* 0x1C */ cXyz mVel;
|
||||
/* 0x28 */ cXyz mScale;
|
||||
/* 0x34 */ f32 field_0x34;
|
||||
/* 0x38 */ u8 field_0x38[0x3C - 0x38];
|
||||
/* 0x3C */ s16 field_0x3c;
|
||||
/* 0x3E */ u8 field_0x3E[0x40 - 0x3E];
|
||||
/* 0x40 */ f32 mAlpha;
|
||||
/* 0x44 */ u8 field_0x44[0x48 - 0x44];
|
||||
/* 0x48 */ f32 field_0x48;
|
||||
/* 0x4C */ s16 field_0x4c;
|
||||
};
|
||||
|
||||
class dKankyo_housi_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_housi_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_housi_Packet();
|
||||
|
||||
/* 0x0010 */ u8* mpTex;
|
||||
/* 0x0014 */ HOUSI_EFF mEff[300];
|
||||
/* 0x5DD4 */ u8 field_0x5DD4[0x5DDC - 0x5DD4];
|
||||
/* 0x5DDC */ f32 field_0x5ddc;
|
||||
/* 0x5DE0 */ s16 mCount;
|
||||
/* 0x5DE2 */ u8 field_0x5de2[0x5DE8 - 0x5DE2];
|
||||
};
|
||||
|
||||
struct VRKUMO_EFF {
|
||||
VRKUMO_EFF();
|
||||
~VRKUMO_EFF();
|
||||
|
||||
/* 0x00 */ u8 mStatus;
|
||||
/* 0x01 */ u8 field_0x01[0x04 - 0x01];
|
||||
/* 0x04 */ cXyz mPosition;
|
||||
/* 0x10 */ u8 field_0x10[0x1C - 0x10];
|
||||
/* 0x1C */ f32 mHeight;
|
||||
/* 0x20 */ f32 mAlpha;
|
||||
/* 0x24 */ f32 mDistFalloff;
|
||||
/* 0x28 */ f32 mSpeed;
|
||||
};
|
||||
|
||||
class dKankyo_vrkumo_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_vrkumo_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_vrkumo_Packet();
|
||||
|
||||
/* 0x0010 */ GXColor mColorTmp;
|
||||
/* 0x0014 */ u8* mpCloudTx1;
|
||||
/* 0x0018 */ u8* mpCloudTx2;
|
||||
/* 0x001C */ u8* mpCloudTx3;
|
||||
/* 0x0020 */ VRKUMO_EFF mInst[100];
|
||||
};
|
||||
|
||||
struct WAVE_EFF {
|
||||
WAVE_EFF();
|
||||
~WAVE_EFF();
|
||||
|
||||
/* 0x00 */ cXyz mPos;
|
||||
/* 0x0C */ cXyz mBasePos;
|
||||
/* 0x18 */ f32 mSpeed;
|
||||
/* 0x1C */ f32 mScale;
|
||||
/* 0x20 */ f32 mCounterSpeed;
|
||||
/* 0x24 */ f32 mCounter;
|
||||
/* 0x28 */ f32 mStrengthWind;
|
||||
/* 0x2C */ f32 mStrengthEnv;
|
||||
/* 0x30 */ s16 field_0x30;
|
||||
/* 0x32 */ s16 field_0x32;
|
||||
/* 0x34 */ u8 mState;
|
||||
};
|
||||
|
||||
class dKankyo_wave_Packet : public J3DPacket {
|
||||
public:
|
||||
dKankyo_wave_Packet() {}
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dKankyo_wave_Packet();
|
||||
|
||||
/* 0x0010 */ u8* mpTexUsonami;
|
||||
/* 0x0014 */ u8* mpTexUsonamiM;
|
||||
/* 0x0018 */ WAVE_EFF mpWaveEff[300];
|
||||
/* 0x41B8 */ f32 mSkewWidth;
|
||||
/* 0x41BC */ f32 mSkewDir;
|
||||
};
|
||||
|
||||
struct KAMOME_EFF {
|
||||
KAMOME_EFF();
|
||||
~KAMOME_EFF();
|
||||
|
||||
/* 0x00 */ JPABaseEmitter* mpBaseEmitter;
|
||||
/* 0x04 */ cXyz mPos;
|
||||
/* 0x10 */ s16 field_0x10;
|
||||
/* 0x12 */ s16 field_0x12;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ u8 field_0x18[0x1E - 0x18];
|
||||
/* 0x1E */ u8 field_0x1e;
|
||||
};
|
||||
|
||||
struct WIND_EFF {
|
||||
WIND_EFF();
|
||||
~WIND_EFF();
|
||||
|
||||
/* 0x00 */ JPABaseEmitter* mpEmitter;
|
||||
/* 0x04 */ cXyz mBasePos;
|
||||
/* 0x10 */ cXyz mRandomPos;
|
||||
/* 0x1C */ f32 mStateTimer;
|
||||
/* 0x20 */ f32 mAlpha;
|
||||
/* 0x24 */ int mState;
|
||||
/* 0x28 */ int field_0x28;
|
||||
/* 0x2C */ s16 field_0x2c;
|
||||
/* 0x2E */ s16 mAngleY;
|
||||
/* 0x30 */ s16 mAngleXZ;
|
||||
/* 0x32 */ u8 field_0x32;
|
||||
};
|
||||
|
||||
// is this the correct name?
|
||||
struct WINDEFF_SET {
|
||||
/* 0x000 */ WIND_EFF mWindEff[30];
|
||||
/* 0x618 */ KAMOME_EFF mKamomeEff[10];
|
||||
/* 0x758 */ u8 mbHasCustomWindPower;
|
||||
/* 0x759 */ u8 field_0x759;
|
||||
};
|
||||
|
||||
void dKyw_wether_proc();
|
||||
void dKyw_rain_set(int);
|
||||
void dKyw_wind_set();
|
||||
void dKyw_wind_init();
|
||||
void dKyw_pntwind_init();
|
||||
void dKy_wave_chan_init();
|
||||
f32 dKyw_get_wind_pow();
|
||||
f32* dKyw_get_wind_power();
|
||||
void squal_proc();
|
||||
void dKyw_pntwind_set(WIND_INFLUENCE*);
|
||||
void dKyw_pntwind_cut(WIND_INFLUENCE*);
|
||||
|
||||
#endif /* D_KANKYO_WETHER_H */
|
||||
@@ -39,6 +39,10 @@ public:
|
||||
void setDate(u16 i_date) { mDate = i_date; }
|
||||
void setTime(f32 i_time) { mTime = i_time; }
|
||||
s64 getDateIpl() const { return mDateIPL; }
|
||||
s16 getWindY() { return mTactWindAngleY; }
|
||||
s16 getWindX() { return mTactWindAngleX; }
|
||||
void setWindY(s16 i_windY) { mTactWindAngleY = i_windY; }
|
||||
void setWindX(s16 i_windX) { mTactWindAngleX = i_windX; }
|
||||
|
||||
/* 0x00 */ u64 mDateIPL;
|
||||
/* 0x08 */ f32 field_0x8;
|
||||
|
||||
@@ -956,4 +956,12 @@ inline s32 dStage_sclsInfo_getWipe(stage_scls_info_class* p_info) {
|
||||
return p_info->mWipe;
|
||||
}
|
||||
|
||||
inline int dStage_FileList_dt_ChkPathWindEffect(dStage_FileList_dt_c* i_fili) {
|
||||
return i_fili->mParam & 0x100000;
|
||||
}
|
||||
|
||||
inline int dStage_FileList_dt_GlobalWindLevel(dStage_FileList_dt_c* i_fili) {
|
||||
return (i_fili->mParam >> 0x12) & 3;
|
||||
}
|
||||
|
||||
#endif /* D_D_STAGE_H */
|
||||
@@ -82,4 +82,8 @@ inline void mDoAud_setWeekday(s32 day) {
|
||||
mDoAud_zelAudio_c::getInterface()->setWeekday(day);
|
||||
}
|
||||
|
||||
inline void mDoAud_rainPlay(s32 param_0) {
|
||||
mDoAud_zelAudio_c::getInterface()->rainPlay(param_0);
|
||||
}
|
||||
|
||||
#endif /* M_DO_AUDIO_H */
|
||||
|
||||
+1
-1
@@ -640,7 +640,7 @@ void dScnKy_env_light_c::setLight_palno_get(u8* i_envrSel0, u8* i_envrSel1, u8*
|
||||
}
|
||||
}
|
||||
|
||||
dScnKy__Schedule* schedule_p;
|
||||
dKyd_Schedule* schedule_p;
|
||||
for (int i = 0; i < 11; i++) {
|
||||
schedule_p = &mpSchejule[i];
|
||||
if (mCurTime >= schedule_p->mTimeEnd && mCurTime <= schedule_p->mTimeBegin) {
|
||||
|
||||
+422
-23
@@ -1,48 +1,447 @@
|
||||
//
|
||||
// Generated by dtk
|
||||
// Translation Unit: d_kankyo_data.cpp
|
||||
//
|
||||
/**
|
||||
* d_kankyo_data.cpp
|
||||
* Environment Data
|
||||
*/
|
||||
|
||||
#include "d_kankyo_data.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/d_kankyo_data.h"
|
||||
#include "d/d_stage.h"
|
||||
|
||||
static dKyd_Schedule l_time_attribute[] = {
|
||||
{0.0f, 90.0f, 5, 5}, {90.0f, 105.0f, 5, 0}, {105.0f, 120.0f, 0, 1}, {120.0f, 150.0f, 1, 2},
|
||||
{150.0f, 270.0f, 2, 2}, {270.0f, 285.0f, 2, 3}, {285.0f, 300.0f, 3, 4}, {300.0f, 315.0f, 4, 5},
|
||||
{315.0f, 360.0f, 5, 5}, {360.0f, 360.0f, 5, 5}, {360.0f, 360.0f, 5, 5},
|
||||
};
|
||||
|
||||
static dKyd_Schedule l_time_attribute_boss[] = {
|
||||
{0.0f, 45.0f, 0, 1}, {45.0f, 90.0f, 1, 2}, {90.0f, 180.0f, 2, 3}, {180.0f, 225.0f, 3, 4},
|
||||
{225.0f, 270.0f, 4, 5}, {270.0f, 360.0f, 5, 0}, {360.0f, 360.0f, 5, 5}, {360.0f, 360.0f, 5, 5},
|
||||
{360.0f, 360.0f, 5, 5}, {360.0f, 360.0f, 5, 5}, {360.0f, 360.0f, 5, 5},
|
||||
};
|
||||
|
||||
static dKyd_Schedule l_time_attribute_menu[] = {
|
||||
{0.0f, 60.0f, 5, 5}, {60.0f, 75.0f, 5, 0}, {75.0f, 90.0f, 0, 0}, {90.0f, 105.0f, 0, 1},
|
||||
{105.0f, 150.0f, 1, 2}, {150.0f, 225.0f, 2, 2}, {225.0f, 240.0f, 2, 3}, {240.0f, 255.0f, 3, 4},
|
||||
{255.0f, 270.0f, 4, 5}, {270.0f, 300.0f, 5, 5}, {300.0f, 360.0f, 5, 5},
|
||||
};
|
||||
|
||||
static stage_palet_info_class l_field_data[] = {
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
0,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
1,
|
||||
40000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
2,
|
||||
10000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
3,
|
||||
8000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
4,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
5,
|
||||
40000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
6,
|
||||
10000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
7,
|
||||
8000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
0,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
1,
|
||||
40000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
2,
|
||||
10000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
3,
|
||||
8000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
0,
|
||||
-5000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
1,
|
||||
40000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
2,
|
||||
10000.0f,
|
||||
50000.0f,
|
||||
},
|
||||
{
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF},
|
||||
3,
|
||||
8000.0f,
|
||||
30000.0f,
|
||||
},
|
||||
};
|
||||
|
||||
static stage_pselect_info_class l_pselect_default[] = {
|
||||
{
|
||||
{0, 0, 1, 2, 2, 3, 0, 0},
|
||||
0.0f,
|
||||
},
|
||||
{
|
||||
{4, 4, 5, 6, 6, 7, 0, 0},
|
||||
0.0f,
|
||||
},
|
||||
};
|
||||
|
||||
static stage_envr_info_class l_envr_default[] = {
|
||||
{
|
||||
{0, 1, 2, 3, 0, 0, 0, 0},
|
||||
},
|
||||
{
|
||||
{4, 5, 6, 7, 0, 0, 0, 0},
|
||||
},
|
||||
};
|
||||
|
||||
static stage_vrbox_info_class l_vr_box_data[] = {
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0x4A, 0x47, 0x4F, 0xC0},
|
||||
{0x6C, 0x60, 0x5C, 0xFF},
|
||||
{0x4F, 0x46, 0x4E},
|
||||
{0x71, 0x5A, 0x49},
|
||||
{0xB4, 0x8E, 0x79},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0xF7, 0xE8, 0xD8, 0xA3},
|
||||
{0xFF, 0xF1, 0xDF, 0xFF},
|
||||
{0xB4, 0xBC, 0xC9},
|
||||
{0xC1, 0xBE, 0xC5},
|
||||
{0xF1, 0xE6, 0xDC},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0xFF, 0xFF, 0xFF, 0xFF},
|
||||
{0xFF, 0xFF, 0xFF, 0xFF},
|
||||
{0x50, 0x78, 0xFF},
|
||||
{0x50, 0x78, 0xFF},
|
||||
{0xA3, 0xD2, 0xFF},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0xE9, 0xB1, 0x6C, 0xD4},
|
||||
{0xD0, 0x9B, 0x62, 0xFF},
|
||||
{0xE5, 0xA4, 0x6D},
|
||||
{0xC8, 0xA0, 0x64},
|
||||
{0xFF, 0xD1, 0x93},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0x60, 0x55, 0x5A, 0x5F},
|
||||
{0x75, 0x5E, 0x5B, 0xFF},
|
||||
{0x64, 0x50, 0x4E},
|
||||
{0x67, 0x58, 0x4F},
|
||||
{0xE7, 0xC7, 0x96},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0x34, 0x56, 0x78, 0x64},
|
||||
{0x3A, 0x64, 0x86, 0xFF},
|
||||
{0x0A, 0x32, 0x55},
|
||||
{0x00, 0x31, 0x4A},
|
||||
{0x3C, 0x4B, 0x64},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0x25, 0x3C, 0x4B, 0xFF},
|
||||
{0x25, 0x3C, 0x4B, 0xFF},
|
||||
{0x0E, 0x14, 0x2C},
|
||||
{0x00, 0x00, 0x00},
|
||||
{0x13, 0x2B, 0x4D},
|
||||
},
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0x00, 0x0A, 0x0A, 0x32},
|
||||
{0x00, 0x0A, 0x0A, 0x32},
|
||||
{0x00, 0x0A, 0x1E},
|
||||
{0x00, 0x5A, 0x50},
|
||||
{0x00, 0x1E, 0x26},
|
||||
},
|
||||
};
|
||||
|
||||
static GXFogAdjTable S_xfog_table_data[] = {
|
||||
{
|
||||
{260, 260, 270, 280, 290, 300, 310, 320, 330, 340},
|
||||
},
|
||||
{
|
||||
{250, 260, 280, 320, 350, 400, 480, 550, 600, 800},
|
||||
},
|
||||
};
|
||||
|
||||
/* 80086EE0-80086EEC .text dKyd_dmpalet_getp__Fv */
|
||||
void dKyd_dmpalet_getp() {
|
||||
/* Nonmatching */
|
||||
stage_palet_info_class* dKyd_dmpalet_getp() {
|
||||
return l_field_data;
|
||||
}
|
||||
|
||||
/* 80086EEC-80086EF8 .text dKyd_dmpselect_getp__Fv */
|
||||
void dKyd_dmpselect_getp() {
|
||||
/* Nonmatching */
|
||||
stage_pselect_info_class* dKyd_dmpselect_getp() {
|
||||
return l_pselect_default;
|
||||
}
|
||||
|
||||
/* 80086EF8-80086F04 .text dKyd_dmenvr_getp__Fv */
|
||||
void dKyd_dmenvr_getp() {
|
||||
/* Nonmatching */
|
||||
stage_envr_info_class* dKyd_dmenvr_getp() {
|
||||
return l_envr_default;
|
||||
}
|
||||
|
||||
/* 80086F04-80086F10 .text dKyd_dmvrbox_getp__Fv */
|
||||
void dKyd_dmvrbox_getp() {
|
||||
/* Nonmatching */
|
||||
stage_vrbox_info_class* dKyd_dmvrbox_getp() {
|
||||
return l_vr_box_data;
|
||||
}
|
||||
|
||||
/* 80086F10-80086F1C .text dKyd_schejule_getp__Fv */
|
||||
void dKyd_schejule_getp() {
|
||||
/* Nonmatching */
|
||||
dKyd_Schedule* dKyd_schejule_getp() {
|
||||
return l_time_attribute;
|
||||
}
|
||||
|
||||
/* 80086F1C-80086F28 .text dKyd_schejule_boss_getp__Fv */
|
||||
void dKyd_schejule_boss_getp() {
|
||||
/* Nonmatching */
|
||||
dKyd_Schedule* dKyd_schejule_boss_getp() {
|
||||
return l_time_attribute_boss;
|
||||
}
|
||||
|
||||
/* 80086F28-80086F34 .text dKyd_schejule_menu_getp__Fv */
|
||||
void dKyd_schejule_menu_getp() {
|
||||
/* Nonmatching */
|
||||
dKyd_Schedule* dKyd_schejule_menu_getp() {
|
||||
return l_time_attribute_menu;
|
||||
}
|
||||
|
||||
/* 80086F34-80086F74 .text dKyd_xfog_table_set__FUc */
|
||||
void dKyd_xfog_table_set(unsigned char) {
|
||||
/* Nonmatching */
|
||||
void dKyd_xfog_table_set(u8 i_idx) {
|
||||
for (int i = 0; i < 10; i++) {
|
||||
u16 fogAdjTableEntry = S_xfog_table_data[i_idx].r[i];
|
||||
g_env_light.mFogAdjTable.r[i] = fogAdjTableEntry;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+56
-13
@@ -1,23 +1,66 @@
|
||||
//
|
||||
// Generated by dtk
|
||||
// Translation Unit: d_kankyo_demo.cpp
|
||||
//
|
||||
/**
|
||||
* d_kankyo_demo.cpp
|
||||
*
|
||||
*/
|
||||
|
||||
#include "d_kankyo_demo.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/d_kankyo.h"
|
||||
|
||||
/* 8009BE64-8009BF6C .text dKydm_demo_plight_entry__FP11DEMO_PLIGHTP4cXyziUc */
|
||||
void dKydm_demo_plight_entry(DEMO_PLIGHT*, cXyz*, int, unsigned char) {
|
||||
/* Nonmatching */
|
||||
void dKydm_demo_plight_entry(DEMO_PLIGHT* i_plight, cXyz* i_pos, int param_2, u8 param_3) {
|
||||
if (param_2 >= 0) {
|
||||
i_plight->mLightInfluence.mPos = *i_pos;
|
||||
i_plight->field_0x04 = param_2 + param_3 * 100;
|
||||
|
||||
if (i_plight->field_0x04 < 100) {
|
||||
// idk if this is fake but it's needed to match...
|
||||
switch (i_plight->field_0x04) {
|
||||
case 0:
|
||||
break;
|
||||
}
|
||||
|
||||
i_plight->mLightInfluence.mColor.r = 255;
|
||||
i_plight->mLightInfluence.mColor.g = 255;
|
||||
i_plight->mLightInfluence.mColor.b = 128;
|
||||
i_plight->mLightInfluence.mPower = 500.0f;
|
||||
i_plight->mLightInfluence.mFluctuation = 255.0f;
|
||||
dKy_plight_set(&i_plight->mLightInfluence);
|
||||
} else {
|
||||
if (i_plight->field_0x04 != 103) {
|
||||
i_plight->mLightInfluence.mColor.r = 255;
|
||||
i_plight->mLightInfluence.mColor.g = 255;
|
||||
i_plight->mLightInfluence.mColor.b = 120;
|
||||
i_plight->mLightInfluence.mPower = 437.0f;
|
||||
i_plight->mLightInfluence.mFluctuation = 55.0f;
|
||||
} else {
|
||||
i_plight->mLightInfluence.mColor.r = 255;
|
||||
i_plight->mLightInfluence.mColor.g = 255;
|
||||
i_plight->mLightInfluence.mColor.b = 120;
|
||||
i_plight->mLightInfluence.mPower = 532.0f;
|
||||
i_plight->mLightInfluence.mFluctuation = 71.0f;
|
||||
}
|
||||
|
||||
dKy_efplight_set(&i_plight->mLightInfluence);
|
||||
}
|
||||
|
||||
i_plight->field_0x00 = 0;
|
||||
i_plight->field_0x04 = param_2;
|
||||
}
|
||||
}
|
||||
|
||||
/* 8009BF6C-8009BFB0 .text dKydm_demo_plight_delete__FP11DEMO_PLIGHT */
|
||||
void dKydm_demo_plight_delete(DEMO_PLIGHT*) {
|
||||
/* Nonmatching */
|
||||
void dKydm_demo_plight_delete(DEMO_PLIGHT* i_plight) {
|
||||
if (i_plight != NULL) {
|
||||
if (i_plight->field_0x04 < 100) {
|
||||
dKy_plight_cut(&i_plight->mLightInfluence);
|
||||
} else {
|
||||
dKy_efplight_cut(&i_plight->mLightInfluence);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* 8009BFB0-8009BFD4 .text dKydm_demo_plight_execute__FP11DEMO_PLIGHTP4cXyz */
|
||||
void dKydm_demo_plight_execute(DEMO_PLIGHT*, cXyz*) {
|
||||
/* Nonmatching */
|
||||
void dKydm_demo_plight_execute(DEMO_PLIGHT* i_plight, cXyz* i_pos) {
|
||||
if (i_plight != NULL) {
|
||||
i_plight->mLightInfluence.mPos = *i_pos;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+82
-78
@@ -3,37 +3,87 @@
|
||||
// Translation Unit: d_kankyo_rain.cpp
|
||||
//
|
||||
|
||||
#include "d_kankyo_rain.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/d_kankyo_rain.h"
|
||||
#include "d/d_bg_s_gnd_chk.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_kankyo.h"
|
||||
#include "f_op/f_op_camera_mng.h"
|
||||
|
||||
/* 8008AA30-8008AB3C .text vectle_calc__FP10DOUBLE_POSP4cXyz */
|
||||
void vectle_calc(DOUBLE_POS*, cXyz*) {
|
||||
/* Nonmatching */
|
||||
void vectle_calc(DOUBLE_POS* i_pos, cXyz* o_out) {
|
||||
double s = sqrt(i_pos->x * i_pos->x + i_pos->y * i_pos->y + i_pos->z * i_pos->z);
|
||||
|
||||
if (s != 0.0) {
|
||||
o_out->x = i_pos->x / s;
|
||||
o_out->y = i_pos->y / s;
|
||||
o_out->z = i_pos->z / s;
|
||||
} else {
|
||||
o_out->x = 0.0;
|
||||
o_out->y = 0.0;
|
||||
o_out->z = 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
/* 8008AB3C-8008AB94 .text get_vectle_calc__FP4cXyzP4cXyzP4cXyz */
|
||||
void get_vectle_calc(cXyz*, cXyz*, cXyz*) {
|
||||
/* Nonmatching */
|
||||
void get_vectle_calc(cXyz* param_0, cXyz* param_1, cXyz* param_2) {
|
||||
DOUBLE_POS pos;
|
||||
pos.x = param_1->x - param_0->x;
|
||||
pos.y = param_1->y - param_0->y;
|
||||
pos.z = param_1->z - param_0->z;
|
||||
|
||||
vectle_calc(&pos, param_2);
|
||||
}
|
||||
|
||||
/* 8008AB94-8008ABB4 .text dKyr_get_vectle_calc__FP4cXyzP4cXyzP4cXyz */
|
||||
void dKyr_get_vectle_calc(cXyz*, cXyz*, cXyz*) {
|
||||
/* Nonmatching */
|
||||
void dKyr_get_vectle_calc(cXyz* param_0, cXyz* param_1, cXyz* param_2) {
|
||||
get_vectle_calc(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
/* 8008ABB4-8008AC64 .text dKy_set_eyevect_calc__FP12camera_classP3Vecff */
|
||||
void dKy_set_eyevect_calc(camera_class*, Vec*, float, float) {
|
||||
/* Nonmatching */
|
||||
void dKy_set_eyevect_calc(camera_class* i_camera, Vec* param_1, f32 param_2, f32 param_3) {
|
||||
cXyz tmp;
|
||||
get_vectle_calc(&i_camera->mLookat.mEye, &i_camera->mLookat.mCenter, &tmp);
|
||||
param_1->x = i_camera->mLookat.mEye.x + tmp.x * param_2;
|
||||
param_1->y = (i_camera->mLookat.mEye.y + tmp.y * param_3) - 200.0f;
|
||||
param_1->z = i_camera->mLookat.mEye.z + tmp.z * param_2;
|
||||
}
|
||||
|
||||
/* 8008AC64-8008AD60 .text dKy_set_eyevect_calc2__FP12camera_classP3Vecff */
|
||||
void dKy_set_eyevect_calc2(camera_class*, Vec*, float, float) {
|
||||
/* Nonmatching */
|
||||
void dKy_set_eyevect_calc2(camera_class* i_camera, Vec* param_1, f32 param_2, f32 param_3) {
|
||||
cXyz tmp;
|
||||
DOUBLE_POS pos;
|
||||
|
||||
pos.x = i_camera->mLookat.mCenter.x - i_camera->mLookat.mEye.x;
|
||||
if (param_3 != 0.0f) {
|
||||
pos.y = i_camera->mLookat.mCenter.y - i_camera->mLookat.mEye.y;
|
||||
} else {
|
||||
pos.y = 0.0f;
|
||||
}
|
||||
pos.z = i_camera->mLookat.mCenter.z - i_camera->mLookat.mEye.z;
|
||||
|
||||
vectle_calc(&pos, &tmp);
|
||||
|
||||
param_1->x = i_camera->mLookat.mEye.x + tmp.x * param_2;
|
||||
param_1->y = i_camera->mLookat.mEye.y + tmp.y * param_3;
|
||||
param_1->z = i_camera->mLookat.mEye.z + tmp.z * param_2;
|
||||
|
||||
if (param_3 == 0.0f) {
|
||||
param_1->y = 0.0f;
|
||||
}
|
||||
}
|
||||
|
||||
/* 8008AD60-8008AE54 .text dKyr_set_btitex__FP9_GXTexObjP7ResTIMG */
|
||||
void dKyr_set_btitex(_GXTexObj*, ResTIMG*) {
|
||||
/* Nonmatching */
|
||||
void dKyr_set_btitex(GXTexObj* i_obj, ResTIMG* i_img) {
|
||||
GXInitTexObj(i_obj, (&i_img->format + i_img->imageOffset), i_img->width, i_img->height,
|
||||
(GXTexFmt)i_img->format, (GXTexWrapMode)i_img->wrapS, (GXTexWrapMode)i_img->wrapT,
|
||||
(GXBool)(i_img->mipmapCount > 1));
|
||||
|
||||
GXInitTexObjLOD(i_obj, (GXTexFilter)i_img->minFilter, (GXTexFilter)i_img->magFilter,
|
||||
i_img->minLOD * 0.125f, i_img->maxLOD * 0.125f, i_img->LODBias * 0.01f,
|
||||
(GXBool)i_img->biasClamp, (GXBool)i_img->doEdgeLOD,
|
||||
(GXAnisotropy)i_img->maxAnisotropy);
|
||||
|
||||
GXLoadTexObj(i_obj, GX_TEXMAP0);
|
||||
}
|
||||
|
||||
/* 8008AE54-8008B44C .text dKyr_kamome_move__Fv */
|
||||
@@ -51,18 +101,13 @@ void dKyr_wind_move() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008C4BC-8008C624 .text __dt__18dBgS_ObjGndChk_AllFv */
|
||||
dBgS_ObjGndChk_All::~dBgS_ObjGndChk_All() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008C624-8008C888 .text dKyr_lenzflare_move__Fv */
|
||||
void dKyr_lenzflare_move() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008C888-8008C8B8 .text dKyr_moon_arrival_check__Fv */
|
||||
void dKyr_moon_arrival_check() {
|
||||
BOOL dKyr_moon_arrival_check() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -86,13 +131,8 @@ void overhead_bg_chk() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008D53C-8008D638 .text __dt__12dBgS_RoofChkFv */
|
||||
dBgS_RoofChk::~dBgS_RoofChk() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008D638-8008DAF0 .text forward_overhead_bg_chk__FP4cXyzf */
|
||||
void forward_overhead_bg_chk(cXyz*, float) {
|
||||
void forward_overhead_bg_chk(cXyz*, f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -152,7 +192,7 @@ void light_at_hit_check(cXyz*) {
|
||||
}
|
||||
|
||||
/* 80092310-80092330 .text dKyr_poison_live_check__Fv */
|
||||
void dKyr_poison_live_check() {
|
||||
BOOL dKyr_poison_live_check() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -186,63 +226,63 @@ void snap_sunmoon_proc(cXyz*, int) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009428C-8009514C .text dKyr_drawSun__FPA4_fP4cXyzR8_GXColorPPUc */
|
||||
void dKyr_drawSun(float(*)[4], cXyz*, _GXColor&, unsigned char**) {
|
||||
/* 8009428C-8009514C .text dKyr_drawSun__FPA4_fP4cXyzR8GXColorPPUc */
|
||||
void dKyr_drawSun(Mtx, cXyz*, GXColor&, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009514C-80095E8C .text dKyr_drawLenzflare__FPA4_fP4cXyzR8_GXColorPPUc */
|
||||
void dKyr_drawLenzflare(float(*)[4], cXyz*, _GXColor&, unsigned char**) {
|
||||
/* 8009514C-80095E8C .text dKyr_drawLenzflare__FPA4_fP4cXyzR8GXColorPPUc */
|
||||
void dKyr_drawLenzflare(Mtx, cXyz*, GXColor&, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80095E8C-8009682C .text dKyr_drawRain__FPA4_fPPUc */
|
||||
void dKyr_drawRain(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawRain(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009682C-80096D18 .text dKyr_drawSibuki__FPA4_fPPUc */
|
||||
void dKyr_drawSibuki(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawSibuki(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80096D18-800973CC .text drawPoison__FPA4_fPPUc */
|
||||
void drawPoison(float(*)[4], unsigned char**) {
|
||||
void drawPoison(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800973CC-80097AD0 .text dKyr_drawHousi__FPA4_fPPUc */
|
||||
void dKyr_drawHousi(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawHousi(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80097AD0-800987B8 .text dKyr_drawKazanbai__FPA4_fPPUc */
|
||||
void dKyr_drawKazanbai(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawKazanbai(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800987B8-80098FF0 .text dKyr_drawSnow__FPA4_fPPUc */
|
||||
void dKyr_drawSnow(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawSnow(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80098FF0-80099D38 .text dKyr_drawStar__FPA4_fPPUc */
|
||||
void dKyr_drawStar(float(*)[4], unsigned char**) {
|
||||
void dKyr_drawStar(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80099D38-8009A5D4 .text drawWave__FPA4_fPPUc */
|
||||
void drawWave(float(*)[4], unsigned char**) {
|
||||
void drawWave(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009A5D4-8009AB88 .text drawCloudShadow__FPA4_fPPUc */
|
||||
void drawCloudShadow(float(*)[4], unsigned char**) {
|
||||
void drawCloudShadow(Mtx, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009AB88-8009B9C4 .text drawVrkumo__FPA4_fR8_GXColorPPUc */
|
||||
void drawVrkumo(float(*)[4], _GXColor&, unsigned char**) {
|
||||
/* 8009AB88-8009B9C4 .text drawVrkumo__FPA4_fR8GXColorPPUc */
|
||||
void drawVrkumo(Mtx, GXColor&, u8**) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -255,39 +295,3 @@ void dKyr_thunder_init() {
|
||||
void dKyr_thunder_move() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BDEC-8009BDF4 .text @20@__dt__18dBgS_ObjGndChk_AllFv */
|
||||
void @20@__dt__18dBgS_ObjGndChk_AllFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BDF4-8009BDFC .text @76@__dt__18dBgS_ObjGndChk_AllFv */
|
||||
void @76@__dt__18dBgS_ObjGndChk_AllFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BDFC-8009BE04 .text @64@__dt__18dBgS_ObjGndChk_AllFv */
|
||||
void @64@__dt__18dBgS_ObjGndChk_AllFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BE04-8009BE0C .text @16@__dt__12dBgS_RoofChkFv */
|
||||
void @16@__dt__12dBgS_RoofChkFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BE0C-8009BE14 .text @48@__dt__12dBgS_RoofChkFv */
|
||||
void @48@__dt__12dBgS_RoofChkFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BE14-8009BE1C .text @36@__dt__12dBgS_RoofChkFv */
|
||||
void @36@__dt__12dBgS_RoofChkFv {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8009BE1C-8009BE64 .text __dt__9dSnap_ObjFv */
|
||||
dSnap_Obj::~dSnap_Obj() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
|
||||
+1041
-210
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user