mirror of
https://github.com/zeldaret/tww.git
synced 2026-05-24 07:10:48 -04:00
work on m_Do_audio and d_com_inf_game (#18)
* fix float issues and add decompctx.py tool * work on m_Do_audio and d_com_inf_game * fix build
This commit is contained in:
@@ -1,6 +1,155 @@
|
||||
#ifndef JAZELAUDIO_JAIZELBASIC_H
|
||||
#define JAZELAUDIO_JAIZELBASIC_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class Vec;
|
||||
class JAISound;
|
||||
class JKRSolidHeap;
|
||||
class JAIZelBasic {
|
||||
public:
|
||||
JAIZelBasic();
|
||||
|
||||
void zeldaGFrameWork();
|
||||
void heartGaugeOn();
|
||||
void processHeartGaugeSound();
|
||||
void gframeProcess();
|
||||
void resetProcess();
|
||||
void resetRecover();
|
||||
void bgmStreamPrepare(u32);
|
||||
void bgmStreamPlay();
|
||||
void bgmStart(u32, u32, s32);
|
||||
void bgmStop(u32, s32);
|
||||
void mainBgmStopOnly(u32);
|
||||
void subBgmStart(u32);
|
||||
void subBgmStop();
|
||||
void subBgmStopInner();
|
||||
void bgmNowBattle(f32);
|
||||
void bgmBattleGFrame();
|
||||
void stopBattleBgm();
|
||||
void bgmNowKaitengiri();
|
||||
void bgmHitSound(s32);
|
||||
void bgmSetSwordUsing(s32);
|
||||
void onEnemyDamage();
|
||||
void mbossBgmMuteProcess();
|
||||
void mbossBgmNearByProcess(f32);
|
||||
void checkBgmPlaying();
|
||||
void checkPlayingMainBgmFlag();
|
||||
void checkSubBgmPlaying();
|
||||
void checkPlayingSubBgmFlag();
|
||||
void checkPlayingStreamBgmFlag();
|
||||
void changeBgmStatus(s32);
|
||||
void changeSubBgmStatus(s32);
|
||||
void bgmMuteMtDragon();
|
||||
void enemyNearBy();
|
||||
void enemyNearByGFrame();
|
||||
void bgmAllMute(u32);
|
||||
void taktModeMute();
|
||||
void taktModeMuteOff();
|
||||
void cbPracticePlay(Vec*);
|
||||
void cbPracticeProcess();
|
||||
void cbPracticeStop();
|
||||
void checkCbPracticePlay();
|
||||
void prepareLandingDemo(s32);
|
||||
void startLandingDemo();
|
||||
void endLandingDemo();
|
||||
void initSe();
|
||||
void seStart(u32, Vec*, u32, s8, f32, f32, f32, f32, u8);
|
||||
void seStop(u32, s32);
|
||||
void checkSePlaying(u32);
|
||||
void seStopActor(Vec*, u32);
|
||||
void seDeleteObject(Vec*);
|
||||
void getLinkVoiceVowel(u32);
|
||||
void linkVoiceStart(u32, Vec*, u8, s8);
|
||||
void monsSeInit();
|
||||
void monsSeStart(u32, Vec*, u32, u32, s8);
|
||||
void kuroboMotionPlay(u32, Vec*, u32, s8);
|
||||
void kuroboVoicePlay(u32, Vec*, s8);
|
||||
void setLevObjSE(u32, Vec*, s8);
|
||||
void processLevObjSE();
|
||||
void initLevObjSE();
|
||||
void charVoicePlay(s32, s32, Vec*, s8);
|
||||
void messageSePlay(u16, Vec*, s8);
|
||||
void shipCruiseSePlay(Vec*, f32);
|
||||
void setShipSailState(s32);
|
||||
void init(JKRSolidHeap*, u32);
|
||||
void setOutputMode(u32);
|
||||
void talkIn();
|
||||
void talkOut();
|
||||
void menuIn();
|
||||
void menuOut();
|
||||
void getCameraInfo(Vec*, f32*[][][][], u32);
|
||||
void getCameraMapInfo(u32);
|
||||
void setCameraPolygonPos(Vec*);
|
||||
void setCameraGroupInfo(u8);
|
||||
void changeSeaBgm();
|
||||
void startIsleBgm();
|
||||
void setLinkGroupInfo(u8);
|
||||
void getMapInfoFxline(u32);
|
||||
void getMapInfoFxParameter(u32);
|
||||
void getMapInfoGround(u32);
|
||||
void setScene(s32, s32, s32, s32);
|
||||
void expandSceneBgmNum(u32);
|
||||
void checkLinkOnSea();
|
||||
void checkLinkOnBoardSea();
|
||||
void setSceneName(char*, s32, s32);
|
||||
void spotNameToId(char*);
|
||||
void sceneChange(u32, u32, u32, s32);
|
||||
void sceneBgmStart();
|
||||
void load1stDynamicWave();
|
||||
void check1stDynamicWave();
|
||||
void load2ndDynamicWave();
|
||||
void loadStaticWaves();
|
||||
void checkFirstWaves();
|
||||
void setLinkHp(s32, s32);
|
||||
void setLinkSwordType(s32, s32);
|
||||
void setLinkShieldType(s32, s32);
|
||||
void setLinkBootsType(s32);
|
||||
void setLinkOnBoard(s32);
|
||||
void bgmMute(JAISound**, u32, s32, u32);
|
||||
void checkStreamPlaying(u32);
|
||||
void stWaterLevelUp();
|
||||
void stWaterLevelDown();
|
||||
void stSkyCloisters();
|
||||
void stSkyCloistersProcess();
|
||||
void getRandomU32(u32);
|
||||
void setEventBit(void*);
|
||||
void checkEventBit(u16);
|
||||
void checkDayTime();
|
||||
void processTime();
|
||||
void processMorningToNormal();
|
||||
void checkOnOuterSea(f32*);
|
||||
void makeSound(u32);
|
||||
void checkSeqIDDemoPlaying(u32);
|
||||
void checkDemoFanfarePlaying();
|
||||
void processDemoFanfareMute();
|
||||
void muteMainBgmAll();
|
||||
void unmuteMainBgmAll();
|
||||
void demoBgmStop(u32);
|
||||
void isDemo();
|
||||
void checkSeaBgmID();
|
||||
void initSeaEnvPos();
|
||||
void registSeaEnvPos(Vec*);
|
||||
void seaEnvSePlay(u32, s8);
|
||||
void calcPosPanLR(Vec*);
|
||||
void calcPosPanSR(Vec*, f32);
|
||||
void calcPosVolume(Vec*, f32);
|
||||
void seaShoreSE(u32, Vec*, u32, s8);
|
||||
void initRiverPos();
|
||||
void registRiverPos(Vec*);
|
||||
void riverSePlay(u8, s8);
|
||||
void waterfallSePlay(u8, Vec*, s8);
|
||||
void initWindowPos();
|
||||
void registWindowPos(Vec*);
|
||||
void rainPlay(s32);
|
||||
|
||||
static JAIZelBasic* getInterface() { return zel_basic; }
|
||||
|
||||
static JAIZelBasic* zel_basic;
|
||||
|
||||
/* 0x0 */ u8 field_0x0[0x20F4];
|
||||
};
|
||||
|
||||
class JAIZelAnime {
|
||||
public:
|
||||
/* 0x0 */ u8 field_0x0[0x98];
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define C_BG_S_CHK_H
|
||||
|
||||
#include "dolphin/mtx/vec.h"
|
||||
#include "global.h"
|
||||
|
||||
struct cBgD_Vtx_t : public Vec {};
|
||||
|
||||
@@ -32,7 +33,9 @@ public:
|
||||
cBgS_PolyPassChk* GetPolyPassChk() const { return mPolyPassChk; }
|
||||
cBgS_GrpPassChk* GetGrpPassChk() const { return mGrpPassChk; }
|
||||
|
||||
virtual ~cBgS_Chk(void);
|
||||
virtual ~cBgS_Chk();
|
||||
}; // Size: 0x14
|
||||
|
||||
STATIC_ASSERT(sizeof(cBgS_Chk) == 0x14);
|
||||
|
||||
#endif /* C_BG_S_CHK_H */
|
||||
|
||||
@@ -24,6 +24,9 @@ private:
|
||||
/* 0x30 */ u32 mFlags;
|
||||
/* 0x34 */ f32 mNowY;
|
||||
/* 0x38 */ u32 mWallPrecheck;
|
||||
/* 0x3C */ u32 mGndPrecheck;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(cBgS_GndChk) == 0x40);
|
||||
|
||||
#endif /* C_BG_S_GND_CHK_H */
|
||||
|
||||
@@ -32,4 +32,6 @@ public:
|
||||
}
|
||||
}; // Size: 0x10
|
||||
|
||||
STATIC_ASSERT(sizeof(cBgS_PolyInfo) == 0x10);
|
||||
|
||||
#endif /* C_BG_S_POLY_INFO_H */
|
||||
|
||||
@@ -186,9 +186,12 @@ public:
|
||||
/* 0x0D0 */ f32 field_0xd8;
|
||||
/* 0x0D4 */ dBgS_GndChk m_gnd;
|
||||
/* 0x128 */ dBgS_RoofChk m_roof;
|
||||
/* 0x16C */ u8 field_0x16c[0x174 - 0x16C];
|
||||
/* 0x174 */ dBgS_WtrChk m_wtr;
|
||||
}; // Size: 0x1C4
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_Acch) == 0x1C4);
|
||||
|
||||
class dBgS_LinkAcch : public dBgS_Acch {
|
||||
public:
|
||||
dBgS_LinkAcch() { /* SetLink(); */ }
|
||||
|
||||
@@ -13,4 +13,6 @@ public:
|
||||
virtual ~dBgS_Chk();
|
||||
}; // Size: 0x14
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_Chk) == 0x14);
|
||||
|
||||
#endif /* D_BG_D_BG_S_CHK_H */
|
||||
@@ -10,6 +10,8 @@ public:
|
||||
/* 800775F0 */ virtual ~dBgS_GndChk();
|
||||
}; // Size: 0x54
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_GndChk) == 0x54);
|
||||
|
||||
class dBgS_LinkGndChk : public dBgS_GndChk {
|
||||
public:
|
||||
dBgS_LinkGndChk() { /* SetLink(); */ }
|
||||
|
||||
@@ -27,4 +27,6 @@ private:
|
||||
/* 0x4 */ u32 mGrp;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_GrpPassChk) == 0x8);
|
||||
|
||||
#endif /* D_BG_D_BG_S_GRP_PASS_CHK_H */
|
||||
@@ -6,6 +6,14 @@
|
||||
class cBgS_PolyPassChk {
|
||||
public:
|
||||
virtual ~cBgS_PolyPassChk();
|
||||
|
||||
/* 0x4 */ u8 mbObjThrough;
|
||||
/* 0x5 */ u8 mbCamThrough;
|
||||
/* 0x6 */ u8 mbLinkThrough;
|
||||
/* 0x7 */ u8 mbArrowsAndLightThrough;
|
||||
/* 0x8 */ u8 mbBombThrough;
|
||||
/* 0x9 */ u8 mbBoomerangThrough;
|
||||
/* 0xA */ u8 mbHookshotThrough;
|
||||
};
|
||||
|
||||
class dBgS_PolyPassChk : public cBgS_PolyPassChk {
|
||||
@@ -14,4 +22,6 @@ public:
|
||||
virtual ~dBgS_PolyPassChk();
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_PolyPassChk) == 0xC);
|
||||
|
||||
#endif /* D_BG_D_BG_S_POLY_PASS_CHK_H */
|
||||
@@ -20,6 +20,8 @@ private:
|
||||
/* 0x38 */ cXyz m_pos;
|
||||
}; // Size: 0x44
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_RoofChk) == 0x44);
|
||||
|
||||
class dBgS_LinkRoofChk : public dBgS_RoofChk {
|
||||
public:
|
||||
dBgS_LinkRoofChk() { /* SetLink(); */ }
|
||||
|
||||
@@ -10,4 +10,6 @@ public:
|
||||
/* 8001DF30 */ virtual ~dBgS_WtrChk();
|
||||
}; // Size: 0x50
|
||||
|
||||
STATIC_ASSERT(sizeof(dBgS_WtrChk) == 0x50);
|
||||
|
||||
#endif /* D_BG_D_BG_S_WTR_CHK_H */
|
||||
@@ -309,7 +309,7 @@ public:
|
||||
class dComIfG_inf_c {
|
||||
public:
|
||||
dComIfG_inf_c() { ct(); }
|
||||
~dComIfG_inf_c();
|
||||
~dComIfG_inf_c() {}
|
||||
|
||||
void ct();
|
||||
|
||||
@@ -344,6 +344,10 @@ inline void dComIfGs_setEventReg(u16 i_reg, u8 i_no) {
|
||||
g_dComIfG_gameInfo.save.getEvent().setEventReg(i_reg, i_no);
|
||||
}
|
||||
|
||||
inline u8 dComIfGs_getEventReg(u16 i_reg) {
|
||||
return g_dComIfG_gameInfo.save.getEvent().getEventReg(i_reg);
|
||||
}
|
||||
|
||||
inline BOOL dComIfGs_isEventBit(u16 id) {
|
||||
return g_dComIfG_gameInfo.save.getEvent().isEventBit(id);
|
||||
}
|
||||
@@ -503,6 +507,18 @@ inline dBgS* dComIfG_Bgsp() {
|
||||
return &g_dComIfG_gameInfo.play.mBgS;
|
||||
}
|
||||
|
||||
inline daShip_c* dComIfGp_getShipActor() {
|
||||
return (daShip_c*)g_dComIfG_gameInfo.play.getPlayerPtr(2);
|
||||
}
|
||||
|
||||
inline void dComIfGp_getIkadaShipBeforePos(Vec* o_pos) {
|
||||
*o_pos = g_dComIfG_gameInfo.play.mIkadaLinkPos;
|
||||
}
|
||||
|
||||
inline dStage_stageDt_c& dComIfGp_getStage() {
|
||||
return g_dComIfG_gameInfo.play.getStage();
|
||||
}
|
||||
|
||||
inline daPy_lk_c* daPy_getPlayerLinkActorClass() {
|
||||
return (daPy_lk_c*)g_dComIfG_gameInfo.play.getPlayerPtr(0);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
#ifndef D_DEMO_H
|
||||
#define D_DEMO_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class dDemo_actor_c;
|
||||
class dDemo_camera_c;
|
||||
class dDemo_ambient_c;
|
||||
class dDemo_light_c;
|
||||
class dDemo_system_c;
|
||||
class TControl;
|
||||
class dMesg_tControl;
|
||||
|
||||
class dDemo_object_c {
|
||||
public:
|
||||
dDemo_object_c();
|
||||
~dDemo_object_c();
|
||||
|
||||
void appendActor(fopAc_ac_c*);
|
||||
void getActor(u8);
|
||||
void createCamera();
|
||||
void getActiveCamera();
|
||||
void createAmbient();
|
||||
void appendLight();
|
||||
void createFog();
|
||||
void remove();
|
||||
|
||||
/* 0x00 */ u8 mNumActor;
|
||||
/* 0x01 */ u8 mNumLight;
|
||||
/* 0x04 */ dDemo_actor_c* mpActors[32];
|
||||
/* 0x84 */ dDemo_camera_c* mpActiveCamera;
|
||||
/* 0x88 */ dDemo_ambient_c* mpAmbient;
|
||||
/* 0x8C */ dDemo_light_c* mpLight[8];
|
||||
/* 0xAC */ u8 field_0xac[4];
|
||||
};
|
||||
|
||||
class dDemo_manager_c {
|
||||
public:
|
||||
dDemo_manager_c();
|
||||
~dDemo_manager_c();
|
||||
|
||||
void create(u8 const*, cXyz*, f32);
|
||||
void remove();
|
||||
void update();
|
||||
|
||||
/* 0x00 */ dDemo_system_c* mpSystem;
|
||||
/* 0x04 */ TControl* mpControl;
|
||||
/* 0x08 */ void* mpStage;
|
||||
/* 0x0C */ void* mpAudio;
|
||||
/* 0x10 */ void* mpParticle;
|
||||
/* 0x14 */ void* field_0x14;
|
||||
/* 0x18 */ dMesg_tControl* mpMesgControl;
|
||||
/* 0x1C */ void* mpMessage;
|
||||
/* 0x20 */ dDemo_object_c mDemoObj;
|
||||
/* 0xD0 */ void* field_0xd0;
|
||||
/* 0xD4 */ void* field_0xd4;
|
||||
/* 0xD8 */ int field_0xd8;
|
||||
/* 0xDC */ int mState;
|
||||
};
|
||||
|
||||
#endif /* D_DEMO_H */
|
||||
+33
-33
@@ -30,53 +30,53 @@ public:
|
||||
|
||||
class dGrass_anm_c {
|
||||
public:
|
||||
dGrass_anm_c();
|
||||
dGrass_anm_c();
|
||||
|
||||
/* 0x00 */ u8 mState;
|
||||
/* 0x02 */ s16 mRotY;
|
||||
/* 0x04 */ s16 mRotX;
|
||||
/* 0x08 */ Mtx mAnimMtx;
|
||||
/* 0x00 */ u8 mState;
|
||||
/* 0x02 */ s16 mRotY;
|
||||
/* 0x04 */ s16 mRotX;
|
||||
/* 0x08 */ Mtx mAnimMtx;
|
||||
};
|
||||
|
||||
class dGrass_room_c {
|
||||
public:
|
||||
void newData(dGrass_data_c*);
|
||||
void deleteData();
|
||||
dGrass_room_c();
|
||||
void newData(dGrass_data_c*);
|
||||
void deleteData();
|
||||
dGrass_room_c();
|
||||
|
||||
/* 0x0 */ dGrass_data_c* mpData;
|
||||
/* 0x0 */ dGrass_data_c* mpData;
|
||||
};
|
||||
|
||||
class dGrass_packet_c : public J3DPacket {
|
||||
public:
|
||||
dGrass_packet_c();
|
||||
|
||||
void calc();
|
||||
void update();
|
||||
void setData(dGrass_data_c*, int, cXyz&, int, s8);
|
||||
void newData(cXyz&, int, s8);
|
||||
void newAnm();
|
||||
void setAnm(int, s16);
|
||||
dGrass_packet_c();
|
||||
|
||||
void calc();
|
||||
void update();
|
||||
void setData(dGrass_data_c*, int, cXyz&, int, s8);
|
||||
void newData(cXyz&, int, s8);
|
||||
void newAnm();
|
||||
void setAnm(int, s16);
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dGrass_packet_c();
|
||||
|
||||
/* 0x00010 */ s16 mRndm;
|
||||
/* 0x00012 */ u8 field_0x00012[0x00014 - 0x00012];
|
||||
/* 0x00014 */ dGrass_data_c mGrassData[1500];
|
||||
/* 0x18E84 */ dGrass_anm_c mGrassAnm[104];
|
||||
/* 0x1A544 */ dGrass_room_c mGrassRoom[64];
|
||||
/* 0x1A644 */ f32* mpPosArr;
|
||||
/* 0x1A648 */ GXColor* mpColorArr;
|
||||
/* 0x1A64C */ f32* mpTexCoordArr;
|
||||
/* 0x1A650 */ void* mpMatDL;
|
||||
/* 0x1A654 */ u32 mMatDLSize;
|
||||
/* 0x1A658 */ void* mpDL;
|
||||
/* 0x1A65C */ u32 mDLSize;
|
||||
/* 0x1A660 */ void* mpDLCut;
|
||||
/* 0x1A664 */ u32 mDLCutSize;
|
||||
/* 0x1A668 */ u16 mCoParticle;
|
||||
/* 0x1A66A */ u16 field_0x1a66a;
|
||||
/* 0x00010 */ s16 mRndm;
|
||||
/* 0x00012 */ u8 field_0x00012[0x00014 - 0x00012];
|
||||
/* 0x00014 */ dGrass_data_c mGrassData[1500];
|
||||
/* 0x18E84 */ dGrass_anm_c mGrassAnm[104];
|
||||
/* 0x1A544 */ dGrass_room_c mGrassRoom[64];
|
||||
/* 0x1A644 */ f32* mpPosArr;
|
||||
/* 0x1A648 */ GXColor* mpColorArr;
|
||||
/* 0x1A64C */ f32* mpTexCoordArr;
|
||||
/* 0x1A650 */ void* mpMatDL;
|
||||
/* 0x1A654 */ u32 mMatDLSize;
|
||||
/* 0x1A658 */ void* mpDL;
|
||||
/* 0x1A65C */ u32 mDLSize;
|
||||
/* 0x1A660 */ void* mpDLCut;
|
||||
/* 0x1A664 */ u32 mDLCutSize;
|
||||
/* 0x1A668 */ u16 mCoParticle;
|
||||
/* 0x1A66A */ u16 field_0x1a66a;
|
||||
};
|
||||
|
||||
#endif /* D_GRASS_H */
|
||||
@@ -62,6 +62,7 @@ extern dScnKy_env_light_c g_env_light;
|
||||
|
||||
int dKy_getdaytime_hour();
|
||||
BOOL dKy_checkEventNightStop();
|
||||
void dKy_set_nexttime(f32);
|
||||
|
||||
|
||||
#endif /* D_KANKYO_D_KANKYO_H */
|
||||
|
||||
+32
-32
@@ -8,53 +8,53 @@
|
||||
class dMagma_ball_c;
|
||||
class dMagma_floor_c {
|
||||
public:
|
||||
void draw();
|
||||
void calc(int);
|
||||
void update();
|
||||
void create(cXyz&, cXyz&, s16, u8, int);
|
||||
void remove();
|
||||
void draw();
|
||||
void calc(int);
|
||||
void update();
|
||||
void create(cXyz&, cXyz&, s16, u8, int);
|
||||
void remove();
|
||||
|
||||
~dMagma_floor_c();
|
||||
dMagma_floor_c();
|
||||
~dMagma_floor_c();
|
||||
dMagma_floor_c();
|
||||
|
||||
/* 0x00 */ dMagma_ball_c** mpBalls;
|
||||
/* 0x04 */ u8 mBallNum;
|
||||
/* 0x05 */ u8 mPathNo;
|
||||
/* 0x06 */ u8 field_0x06[0x08 - 0x06];
|
||||
/* 0x08 */ cXyz mBallPos;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ Mtx mPosMtx;
|
||||
/* 0x4C */ Mtx mTexMtx0;
|
||||
/* 0x7C */ Mtx mBallPostMtx0;
|
||||
/* 0xAC */ dMagma_floor_c* mpNext;
|
||||
/* 0x00 */ dMagma_ball_c** mpBalls;
|
||||
/* 0x04 */ u8 mBallNum;
|
||||
/* 0x05 */ u8 mPathNo;
|
||||
/* 0x06 */ u8 field_0x06[0x08 - 0x06];
|
||||
/* 0x08 */ cXyz mBallPos;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ Mtx mPosMtx;
|
||||
/* 0x4C */ Mtx mTexMtx0;
|
||||
/* 0x7C */ Mtx mBallPostMtx0;
|
||||
/* 0xAC */ dMagma_floor_c* mpNext;
|
||||
};
|
||||
|
||||
class dMagma_room_c{
|
||||
public:
|
||||
void newFloor(dMagma_floor_c*);
|
||||
void deleteFloor();
|
||||
void newFloor(dMagma_floor_c*);
|
||||
void deleteFloor();
|
||||
|
||||
dMagma_room_c();
|
||||
dMagma_room_c();
|
||||
|
||||
/* 0x0 */ dMagma_floor_c* mpFirst;
|
||||
/* 0x0 */ dMagma_floor_c* mpFirst;
|
||||
};
|
||||
|
||||
class dMagma_packet_c : public J3DPacket {
|
||||
public:
|
||||
dMagma_packet_c();
|
||||
void calc();
|
||||
void update();
|
||||
void checkYpos(cXyz&);
|
||||
void newFloor(cXyz&, cXyz&, int, s16);
|
||||
dMagma_packet_c();
|
||||
void calc();
|
||||
void update();
|
||||
void checkYpos(cXyz&);
|
||||
void newFloor(cXyz&, cXyz&, int, s16);
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dMagma_packet_c();
|
||||
|
||||
/* 0x010 */ dMagma_floor_c mFloor[8];
|
||||
/* 0x590 */ dMagma_room_c mRoom[64];
|
||||
/* 0x690 */ GXColor mColor1;
|
||||
/* 0x694 */ f32 mTimer;
|
||||
|
||||
/* 0x010 */ dMagma_floor_c mFloor[8];
|
||||
/* 0x590 */ dMagma_room_c mRoom[64];
|
||||
/* 0x690 */ GXColor mColor1;
|
||||
/* 0x694 */ f32 mTimer;
|
||||
};
|
||||
|
||||
#endif /* D_MAGMA_H */
|
||||
+53
-53
@@ -16,73 +16,73 @@ struct csXyz;
|
||||
|
||||
class dPa_simpleData_c {
|
||||
public:
|
||||
~dPa_simpleData_c();
|
||||
dPa_simpleData_c();
|
||||
~dPa_simpleData_c();
|
||||
dPa_simpleData_c();
|
||||
|
||||
/* 0x00 */ Vec mPos;
|
||||
/* 0x0C */ GXColor mPrmColor;
|
||||
/* 0x10 */ u8 mEnvColor[3];
|
||||
/* 0x13 */ u8 mbAffectedByWind;
|
||||
/* 0x00 */ Vec mPos;
|
||||
/* 0x0C */ GXColor mPrmColor;
|
||||
/* 0x10 */ u8 mEnvColor[3];
|
||||
/* 0x13 */ u8 mbAffectedByWind;
|
||||
};
|
||||
|
||||
class dPa_simpleEcallBack {
|
||||
public:
|
||||
dPa_simpleEcallBack();
|
||||
dPa_simpleEcallBack();
|
||||
~dPa_simpleEcallBack();
|
||||
|
||||
void executeAfter(JPABaseEmitter*);
|
||||
void draw(JPABaseEmitter*);
|
||||
void create(JPAEmitterManager*, u16, u8);
|
||||
void createEmitter(JPAEmitterManager*);
|
||||
void set(cXyz const*, u8, GXColor const&, GXColor const&, int);
|
||||
void executeAfter(JPABaseEmitter*);
|
||||
void draw(JPABaseEmitter*);
|
||||
void create(JPAEmitterManager*, u16, u8);
|
||||
void createEmitter(JPAEmitterManager*);
|
||||
void set(cXyz const*, u8, GXColor const&, GXColor const&, int);
|
||||
|
||||
/* 0x000 */ void* vtbl;
|
||||
/* 0x004 */ JPABaseEmitter* mpBaseEmitter;
|
||||
/* 0x008 */ u16 mResID;
|
||||
/* 0x00A */ u8 mGrpID;
|
||||
/* 0x00B */ u8 mbIsSmoke;
|
||||
/* 0x00C */ s16 mCount;
|
||||
/* 0x00E */ u8 field_0x00E[0x010 - 0x00E];
|
||||
/* 0x010 */ dPa_simpleData_c mSimpleData[32];
|
||||
/* 0x000 */ void* vtbl;
|
||||
/* 0x004 */ JPABaseEmitter* mpBaseEmitter;
|
||||
/* 0x008 */ u16 mResID;
|
||||
/* 0x00A */ u8 mGrpID;
|
||||
/* 0x00B */ u8 mbIsSmoke;
|
||||
/* 0x00C */ s16 mCount;
|
||||
/* 0x00E */ u8 field_0x00E[0x010 - 0x00E];
|
||||
/* 0x010 */ dPa_simpleData_c mSimpleData[32];
|
||||
};
|
||||
|
||||
class dPa_control_c {
|
||||
public:
|
||||
dPa_control_c();
|
||||
dPa_control_c();
|
||||
|
||||
void getRM_ID(u16);
|
||||
void swapFrameBufferTexture();
|
||||
void createCommon(void const*);
|
||||
void createRoomScene(void const*);
|
||||
void readScene(u8, mDoDvdThd_toMainRam_c**);
|
||||
void createScene(void const*);
|
||||
void removeRoomScene();
|
||||
void removeScene();
|
||||
void calc3D();
|
||||
void calc2D();
|
||||
void calcMenu();
|
||||
void draw(JPADrawInfo*, u8);
|
||||
JPABaseEmitter * set(u8, u16, cXyz const*, csXyz const*, cXyz const*, u8, dPa_levelEcallBack*, s8, GXColor const*, GXColor const*, cXyz const*);
|
||||
void setBombSmoke(u16, cXyz const*, csXyz const*, cXyz const*, u8);
|
||||
void setSimpleLand(int, cXyz const*, csXyz const*, f32, f32, f32, dKy_tevstr_c*, int*, int);
|
||||
void setSimpleLand(cBgS_PolyInfo&, cXyz const*, csXyz const*, f32, f32, f32, dKy_tevstr_c*, int*, int);
|
||||
void checkAtrCodeEffect(int);
|
||||
void setNormalStripes(u16, cXyz const*, csXyz const*, cXyz const*, u8, u16);
|
||||
void newSimple(u16, u8);
|
||||
void setSimple(u16, cXyz const*, u8, GXColor const&, GXColor const&, int);
|
||||
void getSimple(u16);
|
||||
void getRM_ID(u16);
|
||||
void swapFrameBufferTexture();
|
||||
void createCommon(void const*);
|
||||
void createRoomScene(void const*);
|
||||
void readScene(u8, mDoDvdThd_toMainRam_c**);
|
||||
void createScene(void const*);
|
||||
void removeRoomScene();
|
||||
void removeScene();
|
||||
void calc3D();
|
||||
void calc2D();
|
||||
void calcMenu();
|
||||
void draw(JPADrawInfo*, u8);
|
||||
JPABaseEmitter * set(u8, u16, cXyz const*, csXyz const*, cXyz const*, u8, dPa_levelEcallBack*, s8, GXColor const*, GXColor const*, cXyz const*);
|
||||
void setBombSmoke(u16, cXyz const*, csXyz const*, cXyz const*, u8);
|
||||
void setSimpleLand(int, cXyz const*, csXyz const*, f32, f32, f32, dKy_tevstr_c*, int*, int);
|
||||
void setSimpleLand(cBgS_PolyInfo&, cXyz const*, csXyz const*, f32, f32, f32, dKy_tevstr_c*, int*, int);
|
||||
void checkAtrCodeEffect(int);
|
||||
void setNormalStripes(u16, cXyz const*, csXyz const*, cXyz const*, u8, u16);
|
||||
void newSimple(u16, u8);
|
||||
void setSimple(u16, cXyz const*, u8, GXColor const&, GXColor const&, int);
|
||||
void getSimple(u16);
|
||||
|
||||
/* 0x0000 */ JKRHeap* mpHeap;
|
||||
/* 0x0004 */ JPAResourceManager* mpCommonResMgr;
|
||||
/* 0x0008 */ dPa_modelControl_c* mModelCtrl;
|
||||
/* 0x000C */ JKRHeap* mpSceneHeap;
|
||||
/* 0x0010 */ void* mpData;
|
||||
/* 0x0014 */ JPAResourceManager* mpSceneResMgr;
|
||||
/* 0x0018 */ u8 mSceneNo;
|
||||
/* 0x0019 */ u8 mCount;
|
||||
/* 0x001A */ u8 mNumSimple;
|
||||
/* 0x001B */ u8 mNumSimpleCommon;
|
||||
/* 0x001C */ dPa_simpleEcallBack mSimpleCallbacks[25];
|
||||
/* 0x0000 */ JKRHeap* mpHeap;
|
||||
/* 0x0004 */ JPAResourceManager* mpCommonResMgr;
|
||||
/* 0x0008 */ dPa_modelControl_c* mModelCtrl;
|
||||
/* 0x000C */ JKRHeap* mpSceneHeap;
|
||||
/* 0x0010 */ void* mpData;
|
||||
/* 0x0014 */ JPAResourceManager* mpSceneResMgr;
|
||||
/* 0x0018 */ u8 mSceneNo;
|
||||
/* 0x0019 */ u8 mCount;
|
||||
/* 0x001A */ u8 mNumSimple;
|
||||
/* 0x001B */ u8 mNumSimpleCommon;
|
||||
/* 0x001C */ dPa_simpleEcallBack mSimpleCallbacks[25];
|
||||
};
|
||||
|
||||
#endif /* D_PARTICLE */
|
||||
+31
-16
@@ -24,9 +24,18 @@ struct stage_stag_info_class {
|
||||
/* 0x1C */ u32 field_0x1c;
|
||||
};
|
||||
|
||||
struct stage_scls_info_class {};
|
||||
struct stage_scls_info_class {
|
||||
/* 0x0 */ char mStage[8];
|
||||
/* 0x8 */ u8 mStart;
|
||||
/* 0x9 */ u8 mRoom;
|
||||
/* 0xA */ u8 field_0xa;
|
||||
/* 0xB */ s8 mWipe;
|
||||
};
|
||||
|
||||
struct stage_scls_info_dummy_class {};
|
||||
struct stage_scls_info_dummy_class {
|
||||
/* 0x00 */ int num;
|
||||
/* 0x04 */ stage_scls_info_class* m_entries;
|
||||
};
|
||||
|
||||
struct stage_lightvec_info_class {};
|
||||
|
||||
@@ -433,22 +442,22 @@ public:
|
||||
dStage_roomControl_c() {}
|
||||
|
||||
void init();
|
||||
dStage_roomStatus_c* getStatusRoomDt(int);
|
||||
bool checkRoomDisp(int) const;
|
||||
int loadRoom(int, u8*);
|
||||
void zoneCountCheck(int) const;
|
||||
void checkDrawArea() const;
|
||||
void getDarkStatus();
|
||||
void getDarkMode();
|
||||
dStage_roomStatus_c* getStatusRoomDt(int);
|
||||
bool checkRoomDisp(int) const;
|
||||
int loadRoom(int, u8*);
|
||||
void zoneCountCheck(int) const;
|
||||
void checkDrawArea() const;
|
||||
void getDarkStatus();
|
||||
void getDarkMode();
|
||||
void getBgW(int);
|
||||
|
||||
static void createMemoryBlock(int, u32);
|
||||
static void destroyMemoryBlock(void);
|
||||
static void SetTimePass(int);
|
||||
static JKRExpHeap* getMemoryBlock(int);
|
||||
static void setStayNo(int);
|
||||
static s8 GetTimePass();
|
||||
static void setZoneNo(int, int);
|
||||
static void createMemoryBlock(int, u32);
|
||||
static void destroyMemoryBlock(void);
|
||||
static void SetTimePass(int);
|
||||
static JKRExpHeap* getMemoryBlock(int);
|
||||
static void setStayNo(int);
|
||||
static s8 GetTimePass();
|
||||
static void setZoneNo(int, int);
|
||||
static int getZoneNo(int i_roomNo);
|
||||
|
||||
static s8 getStayNo() { return mStayNo; }
|
||||
@@ -524,9 +533,15 @@ private:
|
||||
}; // Size: 0xE
|
||||
|
||||
s8 dStage_roomRead_dt_c_GetReverbStage(roomRead_class&, int);
|
||||
int dStage_mapInfo_GetOceanZ(stage_map_info_class*);
|
||||
int dStage_mapInfo_GetOceanX(stage_map_info_class*);
|
||||
|
||||
inline s32 dStage_stagInfo_GetSaveTbl(stage_stag_info_class* i_stagInfo) {
|
||||
return (i_stagInfo->field_0x09 >> 1) & 0x7F;
|
||||
}
|
||||
|
||||
inline u32 dStage_stagInfo_GetSTType(stage_stag_info_class* i_stagInfo) {
|
||||
return (i_stagInfo->field_0x0c >> 16) & 7;
|
||||
}
|
||||
|
||||
#endif /* D_D_STAGE_H */
|
||||
+51
-51
@@ -7,46 +7,46 @@
|
||||
|
||||
class dTree_data_c {
|
||||
public:
|
||||
~dTree_data_c();
|
||||
~dTree_data_c();
|
||||
dTree_data_c();
|
||||
|
||||
void WorkCo(fopAc_ac_c*, u32, int);
|
||||
void WorkAt_NoCutAnim(fopAc_ac_c*, u32, int, dCcMassS_HitInf*, cCcD_Obj*);
|
||||
void WorkAt(fopAc_ac_c*, u32, int, dCcMassS_HitInf*);
|
||||
void hitCheck(fopAc_ac_c*, int);
|
||||
void animation(int);
|
||||
|
||||
/* 0x000 */ u8 field_0x000;
|
||||
/* 0x001 */ u8 field_0x001;
|
||||
/* 0x002 */ u8 mAnimIdx;
|
||||
/* 0x003 */ s8 field_0x003;
|
||||
/* 0x004 */ cXyz mPos;
|
||||
/* 0x010 */ Mtx field_0x010;
|
||||
/* 0x040 */ Mtx field_0x040;
|
||||
/* 0x070 */ Mtx field_0x070;
|
||||
/* 0x0A0 */ Mtx mShadowMtx;
|
||||
/* 0x0D0 */ u8 field_0x0D0[0x100 - 0x0D0];
|
||||
/* 0x100 */ dTree_data_c* mpNext;
|
||||
void WorkCo(fopAc_ac_c*, u32, int);
|
||||
void WorkAt_NoCutAnim(fopAc_ac_c*, u32, int, dCcMassS_HitInf*, cCcD_Obj*);
|
||||
void WorkAt(fopAc_ac_c*, u32, int, dCcMassS_HitInf*);
|
||||
void hitCheck(fopAc_ac_c*, int);
|
||||
void animation(int);
|
||||
|
||||
/* 0x000 */ u8 field_0x000;
|
||||
/* 0x001 */ u8 field_0x001;
|
||||
/* 0x002 */ u8 mAnimIdx;
|
||||
/* 0x003 */ s8 field_0x003;
|
||||
/* 0x004 */ cXyz mPos;
|
||||
/* 0x010 */ Mtx field_0x010;
|
||||
/* 0x040 */ Mtx field_0x040;
|
||||
/* 0x070 */ Mtx field_0x070;
|
||||
/* 0x0A0 */ Mtx mShadowMtx;
|
||||
/* 0x0D0 */ u8 field_0x0D0[0x100 - 0x0D0];
|
||||
/* 0x100 */ dTree_data_c* mpNext;
|
||||
};
|
||||
|
||||
class dTree_anm_c {
|
||||
public:
|
||||
~dTree_anm_c();
|
||||
dTree_anm_c();
|
||||
~dTree_anm_c();
|
||||
dTree_anm_c();
|
||||
|
||||
/* 0x00 */ u8 field_0x00[0x02 - 0x00];
|
||||
/* 0x02 */ s16 field_0x02;
|
||||
/* 0x04 */ s16 field_0x04;
|
||||
/* 0x06 */ u8 field_0x06[0x08 - 0x06];
|
||||
/* 0x08 */ s16 field_0x08;
|
||||
/* 0x0A */ s16 field_0x0a;
|
||||
/* 0x0C */ f32 mAnimTimer;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ f32 field_0x1c;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
/* 0x24 */ Mtx field_0x24;
|
||||
/* 0x00 */ u8 field_0x00[0x02 - 0x00];
|
||||
/* 0x02 */ s16 field_0x02;
|
||||
/* 0x04 */ s16 field_0x04;
|
||||
/* 0x06 */ u8 field_0x06[0x08 - 0x06];
|
||||
/* 0x08 */ s16 field_0x08;
|
||||
/* 0x0A */ s16 field_0x0a;
|
||||
/* 0x0C */ f32 mAnimTimer;
|
||||
/* 0x10 */ f32 field_0x10;
|
||||
/* 0x14 */ f32 field_0x14;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ f32 field_0x1c;
|
||||
/* 0x20 */ f32 field_0x20;
|
||||
/* 0x24 */ Mtx field_0x24;
|
||||
/* 0x54 */ u8 field_0x54[0x84 - 0x54];
|
||||
};
|
||||
|
||||
@@ -54,34 +54,34 @@ class dTree_room_c {
|
||||
public:
|
||||
dTree_room_c();
|
||||
|
||||
void newData(dTree_data_c*);
|
||||
void deleteData();
|
||||
void newData(dTree_data_c*);
|
||||
void deleteData();
|
||||
|
||||
/* 0x0 */ dTree_data_c* mpHead;
|
||||
/* 0x0 */ dTree_data_c* mpHead;
|
||||
};
|
||||
|
||||
class dTree_packet_c : public J3DPacket {
|
||||
public:
|
||||
dTree_packet_c();
|
||||
dTree_packet_c();
|
||||
|
||||
void calc();
|
||||
void update();
|
||||
void setData(dTree_data_c*, int, cXyz&, u8, int);
|
||||
void newData(cXyz&, u8, int);
|
||||
void newAnm(s16);
|
||||
void setAnm(int, s16);
|
||||
void calc();
|
||||
void update();
|
||||
void setData(dTree_data_c*, int, cXyz&, u8, int);
|
||||
void newData(cXyz&, u8, int);
|
||||
void newAnm(s16);
|
||||
void setAnm(int, s16);
|
||||
|
||||
virtual void draw();
|
||||
virtual ~dTree_packet_c();
|
||||
|
||||
/* 0x0010 */ s16 field_0x0010;
|
||||
/* 0x0014 */ dTree_data_c mData[64];
|
||||
/* 0x4114 */ dTree_anm_c mAnm[72];
|
||||
/* 0x6634 */ dTree_room_c mRoom[64];
|
||||
/* 0x6734 */ u8 field_0x6734;
|
||||
/* 0x6736 */ s16 field_0x6736;
|
||||
/* 0x6738 */ s16 field_0x6738;
|
||||
/* 0x673C */ cXyz field_0x673c;
|
||||
/* 0x0010 */ s16 field_0x0010;
|
||||
/* 0x0014 */ dTree_data_c mData[64];
|
||||
/* 0x4114 */ dTree_anm_c mAnm[72];
|
||||
/* 0x6634 */ dTree_room_c mRoom[64];
|
||||
/* 0x6734 */ u8 field_0x6734;
|
||||
/* 0x6736 */ s16 field_0x6736;
|
||||
/* 0x6738 */ s16 field_0x6738;
|
||||
/* 0x673C */ cXyz field_0x673c;
|
||||
};
|
||||
|
||||
#endif /* D_TREE_H */
|
||||
+16
-16
@@ -23,15 +23,15 @@ public:
|
||||
void cc_hit_after_cut(Packet_c*);
|
||||
void proc(Packet_c*);
|
||||
|
||||
/* 0x000 */ cXyz mPos;
|
||||
/* 0x00C */ u8 field_0x00C[0x010 - 0x00C];
|
||||
/* 0x010 */ u32 mFlags;
|
||||
/* 0x014 */ int mAnmIdx;
|
||||
/* 0x018 */ Mtx field_0x018;
|
||||
/* 0x048 */ Mtx field_0x048;
|
||||
/* 0x078 */ Mtx field_0x078;
|
||||
/* 0x0A8 */ Mtx field_0x0a8;
|
||||
/* 0x0D8 */ Unit_c* mpNext;
|
||||
/* 0x000 */ cXyz mPos;
|
||||
/* 0x00C */ u8 field_0x00C[0x010 - 0x00C];
|
||||
/* 0x010 */ u32 mFlags;
|
||||
/* 0x014 */ int mAnmIdx;
|
||||
/* 0x018 */ Mtx field_0x018;
|
||||
/* 0x048 */ Mtx field_0x048;
|
||||
/* 0x078 */ Mtx field_0x078;
|
||||
/* 0x0A8 */ Mtx field_0x0a8;
|
||||
/* 0x0D8 */ Unit_c* mpNext;
|
||||
/* 0x0DC */ u8 field_0xdc[0x18C - 0xDC];
|
||||
};
|
||||
|
||||
@@ -58,11 +58,11 @@ public:
|
||||
void mode_to_norm_init(AnmID_e);
|
||||
void mode_to_norm(Packet_c*);
|
||||
|
||||
/* 0x00 */ u8 field_0x00[0x60 - 0x00];
|
||||
/* 0x60 */ int field_0x60;
|
||||
/* 0x64 */ s16 field_0x64;
|
||||
/* 0x66 */ u8 field_0x66[0x8A - 0x66];
|
||||
/* 0x8A */ u8 field_0x8a;
|
||||
/* 0x00 */ u8 field_0x00[0x60 - 0x00];
|
||||
/* 0x60 */ int field_0x60;
|
||||
/* 0x64 */ s16 field_0x64;
|
||||
/* 0x66 */ u8 field_0x66[0x8A - 0x66];
|
||||
/* 0x8A */ u8 field_0x8a;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(Anm_c) == 0x8C);
|
||||
@@ -73,7 +73,7 @@ public:
|
||||
void entry_unit(Unit_c*);
|
||||
void delete_all_unit();
|
||||
|
||||
/* 0x0 */ Unit_c* mpUnit;
|
||||
/* 0x0 */ Unit_c* mpUnit;
|
||||
};
|
||||
|
||||
class Packet_c : public J3DPacket {
|
||||
@@ -84,7 +84,7 @@ public:
|
||||
void put_unit(const cXyz&, int);
|
||||
void calc_cc();
|
||||
void calc();
|
||||
void update();
|
||||
void update();
|
||||
void search_empty_UnitID() const;
|
||||
void search_anm(Anm_c::Mode_e);
|
||||
|
||||
|
||||
@@ -1,10 +1,46 @@
|
||||
#ifndef M_DO_AUDIO_H
|
||||
#define M_DO_AUDIO_H
|
||||
|
||||
#include "JAZelAudio/JAIZelBasic.h"
|
||||
|
||||
class mDoAud_zelAudio_c : public JAIZelBasic {
|
||||
public:
|
||||
mDoAud_zelAudio_c() {}
|
||||
|
||||
void reset();
|
||||
|
||||
static void calcLoadTimer();
|
||||
|
||||
static bool isResetFlag() { return mResetFlag; }
|
||||
static void onResetFlag() { mResetFlag = true; }
|
||||
|
||||
static bool isInitFlag() { return mInitFlag; }
|
||||
|
||||
static void setLoadTimer(u8 i_timer) { mLoadTimer = i_timer; }
|
||||
static u8 getLoadTimer() { return mLoadTimer; }
|
||||
|
||||
static bool mInitFlag;
|
||||
static bool mResetFlag;
|
||||
static bool mBgmSet;
|
||||
static u8 mLoadTimer;
|
||||
};
|
||||
|
||||
extern mDoAud_zelAudio_c g_mDoAud_zelAudio;
|
||||
|
||||
void mDoAud_setSceneName(const char*, s32, s32);
|
||||
void mDoAud_Execute();
|
||||
|
||||
class JKRSolidHeap;
|
||||
extern JKRSolidHeap* g_mDoAud_audioHeap;
|
||||
|
||||
inline void mDoAud_bgmStop(u32 param_0) {
|
||||
mDoAud_zelAudio_c::getInterface()->bgmStop(param_0, 0);
|
||||
}
|
||||
|
||||
inline void mDoAud_resetProcess() {
|
||||
if (mDoAud_zelAudio_c::isResetFlag()) {
|
||||
mDoAud_zelAudio_c::getInterface()->resetProcess();
|
||||
mDoAud_zelAudio_c::onResetFlag();
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* M_DO_AUDIO_H */
|
||||
|
||||
Reference in New Issue
Block a user