mirror of
https://github.com/zeldaret/tp
synced 2026-07-11 15:28:38 -04:00
all d_ovlp_fade done (#2031)
* ovlp_fade / ovlp_fade2 done * ovlp_fade3 done * remove asm
This commit is contained in:
@@ -65,7 +65,7 @@ public:
|
||||
|
||||
static JFWDisplay* getManager() { return sManager; }
|
||||
|
||||
int startFadeOut(int param_0) {
|
||||
bool startFadeOut(int param_0) {
|
||||
if (mFader != NULL) {
|
||||
return mFader->startFadeOut(param_0);
|
||||
}
|
||||
@@ -86,6 +86,7 @@ public:
|
||||
|
||||
void setDrawDoneMethod(EDrawDone drawDone) { mDrawDoneMethod = drawDone; }
|
||||
void setFader(JUTFader* fader) { mFader = fader; }
|
||||
JUTFader* getFader() const { return mFader; }
|
||||
void setClearColor(JUtility::TColor color) { mClearColor = color; }
|
||||
|
||||
static JFWDisplay* sManager;
|
||||
|
||||
@@ -401,8 +401,9 @@ public:
|
||||
s8 getNextStageLayer() { return mNextStage.getLayer(); }
|
||||
s16 getNextStagePoint() { return mNextStage.getPoint(); }
|
||||
s8 getNextStageWipe() { return mNextStage.getWipe(); }
|
||||
bool isEnableNextStage() { return mNextStage.isEnable(); }
|
||||
BOOL isEnableNextStage() { return mNextStage.isEnable(); }
|
||||
void offEnableNextStage() { mNextStage.offEnable(); }
|
||||
u8 getNextStageWipeSpeed() { return mNextStage.getWipeSpeed(); }
|
||||
void setNextStage(const char* stage, s8 roomNo, s16 point, s8 layer, s8 wipe, u8 wipe_speed) {
|
||||
mNextStage.set(stage, roomNo, point, layer, wipe, wipe_speed);
|
||||
}
|
||||
@@ -2145,10 +2146,14 @@ inline s32 dComIfGp_getNextStageWipe() {
|
||||
return g_dComIfG_gameInfo.play.getNextStageWipe();
|
||||
}
|
||||
|
||||
inline bool dComIfGp_isEnableNextStage() {
|
||||
inline BOOL dComIfGp_isEnableNextStage() {
|
||||
return g_dComIfG_gameInfo.play.isEnableNextStage();
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_getNextStageWipeSpeed() {
|
||||
return g_dComIfG_gameInfo.play.getNextStageWipeSpeed();
|
||||
}
|
||||
|
||||
inline s16 dComIfGp_getNextStagePoint() {
|
||||
return g_dComIfG_gameInfo.play.getNextStagePoint();
|
||||
}
|
||||
|
||||
@@ -33,6 +33,11 @@ public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_snapShot_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 80252ED4 */ virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_effectLine_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 80053E9C */ virtual void draw();
|
||||
|
||||
+2
-1
@@ -890,8 +890,9 @@ public:
|
||||
}
|
||||
void set(const char*, s8, s16, s8, s8, u8);
|
||||
void offEnable() { enabled = 0; }
|
||||
s8 isEnable() const { return enabled; }
|
||||
BOOL isEnable() const { return enabled; }
|
||||
s8 getWipe() const { return wipe; }
|
||||
u8 getWipeSpeed() const { return wipe_speed; }
|
||||
|
||||
private:
|
||||
s8 enabled;
|
||||
|
||||
@@ -1,6 +1,44 @@
|
||||
#ifndef D_OVLP_D_OVLP_FADE2_H
|
||||
#define D_OVLP_D_OVLP_FADE2_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "f_op/f_op_overlap_mng.h"
|
||||
|
||||
class dOvlpFd2_dlst_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 8025247C */ virtual void draw();
|
||||
/* 80252E8C */ virtual ~dOvlpFd2_dlst_c() {}
|
||||
|
||||
MtxP getMtx() { return mMtx; }
|
||||
void entry() { dComIfGd_set2DXlu(this); }
|
||||
|
||||
/* 0x4 */ Mtx mMtx;
|
||||
};
|
||||
|
||||
class dOvlpFd2_c : public overlap_task_class {
|
||||
public:
|
||||
/* 80252990 */ dOvlpFd2_c();
|
||||
/* 802529F4 */ void execFirstSnap();
|
||||
/* 80252A78 */ void execFadeOut();
|
||||
/* 80252BC0 */ void execNextSnap();
|
||||
/* 80252C68 */ void execFadeIn();
|
||||
|
||||
inline void draw();
|
||||
inline void execute();
|
||||
|
||||
typedef void (dOvlpFd2_c::*executeFn)();
|
||||
void setExecute(executeFn i_func) { mExecuteFn = i_func; }
|
||||
|
||||
/* 0x0CC */ executeFn mExecuteFn;
|
||||
/* 0x0D8 */ dDlst_snapShot_c mSnapshot_c;
|
||||
/* 0x0DC */ dOvlpFd2_dlst_c mDlst_c;
|
||||
/* 0x110 */ s16 field_0x110;
|
||||
/* 0x112 */ s16 field_0x112;
|
||||
/* 0x114 */ s16 field_0x114;
|
||||
/* 0x118 */ f32 field_0x118;
|
||||
/* 0x11C */ u8 field_0x11c;
|
||||
/* 0x11D */ s8 mTimer;
|
||||
/* 0x11E */ u8 field_0x11e;
|
||||
};
|
||||
|
||||
#endif /* D_OVLP_D_OVLP_FADE2_H */
|
||||
|
||||
@@ -1,6 +1,45 @@
|
||||
#ifndef D_OVLP_D_OVLP_FADE3_H
|
||||
#define D_OVLP_D_OVLP_FADE3_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "f_op/f_op_overlap_mng.h"
|
||||
|
||||
class dOvlpFd3_dlst_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 80252F28 */ virtual void draw();
|
||||
/* 802538E8 */ virtual ~dOvlpFd3_dlst_c() {}
|
||||
|
||||
MtxP getMtx() { return mMtx; }
|
||||
void entry() { dComIfGd_set2DXlu(this); }
|
||||
|
||||
/* 0x4 */ Mtx mMtx;
|
||||
};
|
||||
|
||||
class dOvlpFd3_c : public overlap_task_class {
|
||||
public:
|
||||
/* 8025343C */ dOvlpFd3_c();
|
||||
/* 80253518 */ void execFirstSnap();
|
||||
/* 802535AC */ void execFadeOut();
|
||||
/* 8025368C */ void execNextSnap();
|
||||
/* 80253730 */ void execFadeIn();
|
||||
|
||||
inline void draw();
|
||||
inline void execute();
|
||||
|
||||
typedef void (dOvlpFd3_c::*executeFn)();
|
||||
void setExecute(executeFn i_func) { mExecuteFn = i_func; }
|
||||
|
||||
/* 0x0CC */ executeFn mExecuteFn;
|
||||
/* 0x0D8 */ dDlst_snapShot_c mSnapshot_c;
|
||||
/* 0x0DC */ dOvlpFd3_dlst_c mDlst_c;
|
||||
/* 0x110 */ s16 field_0x110;
|
||||
/* 0x112 */ s16 field_0x112;
|
||||
/* 0x114 */ s16 field_0x114;
|
||||
/* 0x118 */ f32 field_0x118;
|
||||
/* 0x11C */ u8 field_0x11c;
|
||||
/* 0x11D */ s8 mTimer;
|
||||
/* 0x11E */ u8 field_0x11e;
|
||||
/* 0x11F */ u8 field_0x11f;
|
||||
};
|
||||
|
||||
#endif /* D_OVLP_D_OVLP_FADE3_H */
|
||||
|
||||
@@ -7,9 +7,21 @@
|
||||
class mDoDvdThd_mountXArchive_c;
|
||||
class mDoDvdThd_toMainRam_c;
|
||||
|
||||
class dScnPly_reg_childHIO_c {
|
||||
public:
|
||||
/* 0x00 */ void* vtable;
|
||||
/* 0x04 */ f32 mFloatReg[30];
|
||||
/* 0x7C */ s16 mShortReg[10];
|
||||
};
|
||||
|
||||
class dScnPly_reg_HIO_c {
|
||||
public:
|
||||
/* 8025AD78 */ virtual ~dScnPly_reg_HIO_c();
|
||||
|
||||
#ifdef DEBUG
|
||||
/* 0x4 */ u8 field_0x4[0x8 - 0x4];
|
||||
/* 0x8 */ dScnPly_reg_childHIO_c mChildReg[26];
|
||||
#endif
|
||||
};
|
||||
|
||||
class mDoHIO_entry_c {
|
||||
@@ -79,5 +91,224 @@ public:
|
||||
};
|
||||
|
||||
extern u8 g_envHIO[68];
|
||||
extern u8 g_regHIO[4];
|
||||
|
||||
/**
|
||||
* === Register Usage ===
|
||||
* Short Reg(00-09) ... -32768 - +32768
|
||||
* Float Reg(00-19) ... -100000.0 - +100000.0
|
||||
* Float Reg(20-24) ... 0.0 - 1.0
|
||||
* Float Reg(25-29) ... -1.0 - +1.0
|
||||
*/
|
||||
|
||||
#ifdef DEBUG
|
||||
// Morita
|
||||
#define TREG_F(i) g_regHIO.mChildReg[0].mFloatReg[i]
|
||||
#define TREG_S(i) g_regHIO.mChildReg[0].mShortReg[i]
|
||||
|
||||
// Matsutani
|
||||
#define DREG_F(i) g_regHIO.mChildReg[1].mFloatReg[i]
|
||||
#define DREG_S(i) g_regHIO.mChildReg[1].mShortReg[i]
|
||||
|
||||
// Iwawaki
|
||||
#define IREG_F(i) g_regHIO.mChildReg[2].mFloatReg[i]
|
||||
#define IREG_S(i) g_regHIO.mChildReg[2].mShortReg[i]
|
||||
|
||||
// Sasa
|
||||
#define SREG_F(i) g_regHIO.mChildReg[3].mFloatReg[i]
|
||||
#define SREG_S(i) g_regHIO.mChildReg[3].mShortReg[i]
|
||||
|
||||
// Umemiya
|
||||
#define UREG_F(i) g_regHIO.mChildReg[4].mFloatReg[i]
|
||||
#define UREG_S(i) g_regHIO.mChildReg[4].mShortReg[i]
|
||||
|
||||
// Ogawa
|
||||
#define OREG_F(i) g_regHIO.mChildReg[5].mFloatReg[i]
|
||||
#define OREG_S(i) g_regHIO.mChildReg[5].mShortReg[i]
|
||||
|
||||
// Sakaguchi
|
||||
#define YREG_F(i) g_regHIO.mChildReg[6].mFloatReg[i]
|
||||
#define YREG_S(i) g_regHIO.mChildReg[6].mShortReg[i]
|
||||
|
||||
// Sakai
|
||||
#define KREG_F(i) g_regHIO.mChildReg[7].mFloatReg[i]
|
||||
#define KREG_S(i) g_regHIO.mChildReg[7].mShortReg[i]
|
||||
|
||||
// Hara
|
||||
#define BREG_F(i) g_regHIO.mChildReg[8].mFloatReg[i]
|
||||
#define BREG_S(i) g_regHIO.mChildReg[8].mShortReg[i]
|
||||
|
||||
// Sumiyoshi
|
||||
#define MREG_F(i) g_regHIO.mChildReg[9].mFloatReg[i]
|
||||
#define MREG_S(i) g_regHIO.mChildReg[9].mShortReg[i]
|
||||
|
||||
// Takeshita
|
||||
#define AREG_F(i) g_regHIO.mChildReg[10].mFloatReg[i]
|
||||
#define AREG_S(i) g_regHIO.mChildReg[10].mShortReg[i]
|
||||
|
||||
// Yoshida
|
||||
#define PREG_F(i) g_regHIO.mChildReg[11].mFloatReg[i]
|
||||
#define PREG_S(i) g_regHIO.mChildReg[11].mShortReg[i]
|
||||
|
||||
// Noma
|
||||
#define NREG_F(i) g_regHIO.mChildReg[12].mFloatReg[i]
|
||||
#define NREG_S(i) g_regHIO.mChildReg[12].mShortReg[i]
|
||||
|
||||
// Nishiwaki
|
||||
#define WREG_F(i) g_regHIO.mChildReg[13].mFloatReg[i]
|
||||
#define WREG_S(i) g_regHIO.mChildReg[13].mShortReg[i]
|
||||
|
||||
// Masaro
|
||||
#define JREG_F(i) g_regHIO.mChildReg[14].mFloatReg[i]
|
||||
#define JREG_S(i) g_regHIO.mChildReg[14].mShortReg[i]
|
||||
|
||||
// Hayakawa
|
||||
#define HREG_F(i) g_regHIO.mChildReg[15].mFloatReg[i]
|
||||
#define HREG_S(i) g_regHIO.mChildReg[15].mShortReg[i]
|
||||
|
||||
// Sadamoto
|
||||
#define VREG_F(i) g_regHIO.mChildReg[16].mFloatReg[i]
|
||||
#define VREG_S(i) g_regHIO.mChildReg[16].mShortReg[i]
|
||||
|
||||
// Nishikawa
|
||||
#define XREG_F(i) g_regHIO.mChildReg[17].mFloatReg[i]
|
||||
#define XREG_S(i) g_regHIO.mChildReg[17].mShortReg[i]
|
||||
|
||||
// Suzuki
|
||||
#define ZREG_F(i) g_regHIO.mChildReg[18].mFloatReg[i]
|
||||
#define ZREG_S(i) g_regHIO.mChildReg[18].mShortReg[i]
|
||||
|
||||
// Nakanishi
|
||||
#define nREG_F(i) g_regHIO.mChildReg[19].mFloatReg[i]
|
||||
#define nREG_S(i) g_regHIO.mChildReg[19].mShortReg[i]
|
||||
|
||||
// Kuwajima
|
||||
#define kREG_F(i) g_regHIO.mChildReg[20].mFloatReg[i]
|
||||
#define kREG_S(i) g_regHIO.mChildReg[20].mShortReg[i]
|
||||
|
||||
// Okajima
|
||||
#define oREG_F(i) g_regHIO.mChildReg[21].mFloatReg[i]
|
||||
#define oREG_S(i) g_regHIO.mChildReg[21].mShortReg[i]
|
||||
|
||||
// Yamazaki
|
||||
#define yREG_F(i) g_regHIO.mChildReg[22].mFloatReg[i]
|
||||
#define yREG_S(i) g_regHIO.mChildReg[22].mShortReg[i]
|
||||
|
||||
// Ashida
|
||||
#define aREG_F(i) g_regHIO.mChildReg[23].mFloatReg[i]
|
||||
#define aREG_S(i) g_regHIO.mChildReg[23].mShortReg[i]
|
||||
|
||||
// Okada
|
||||
#define hREG_F(i) g_regHIO.mChildReg[24].mFloatReg[i]
|
||||
#define hREG_S(i) g_regHIO.mChildReg[24].mShortReg[i]
|
||||
|
||||
// Takahashi
|
||||
#define tREG_F(i) g_regHIO.mChildReg[25].mFloatReg[i]
|
||||
#define tREG_S(i) g_regHIO.mChildReg[25].mShortReg[i]
|
||||
#else
|
||||
// Morita
|
||||
#define TREG_F(i)
|
||||
#define TREG_S(i)
|
||||
|
||||
// Matsutani
|
||||
#define DREG_F(i)
|
||||
#define DREG_S(i)
|
||||
|
||||
// Iwawaki
|
||||
#define IREG_F(i)
|
||||
#define IREG_S(i)
|
||||
|
||||
// Sasa
|
||||
#define SREG_F(i)
|
||||
#define SREG_S(i)
|
||||
|
||||
// Umemiya
|
||||
#define UREG_F(i)
|
||||
#define UREG_S(i)
|
||||
|
||||
// Ogawa
|
||||
#define OREG_F(i)
|
||||
#define OREG_S(i)
|
||||
|
||||
// Sakaguchi
|
||||
#define YREG_F(i)
|
||||
#define YREG_S(i)
|
||||
|
||||
// Sakai
|
||||
#define KREG_F(i)
|
||||
#define KREG_S(i)
|
||||
|
||||
// Hara
|
||||
#define BREG_F(i)
|
||||
#define BREG_S(i)
|
||||
|
||||
// Sumiyoshi
|
||||
#define MREG_F(i)
|
||||
#define MREG_S(i)
|
||||
|
||||
// Takeshita
|
||||
#define AREG_F(i)
|
||||
#define AREG_S(i)
|
||||
|
||||
// Yoshida
|
||||
#define PREG_F(i)
|
||||
#define PREG_S(i)
|
||||
|
||||
// Noma
|
||||
#define NREG_F(i)
|
||||
#define NREG_S(i)
|
||||
|
||||
// Nishiwaki
|
||||
#define WREG_F(i)
|
||||
#define WREG_S(i)
|
||||
|
||||
// Masaro
|
||||
#define JREG_F(i)
|
||||
#define JREG_S(i)
|
||||
|
||||
// Hayakawa
|
||||
#define HREG_F(i)
|
||||
#define HREG_S(i)
|
||||
|
||||
// Sadamoto
|
||||
#define VREG_F(i)
|
||||
#define VREG_S(i)
|
||||
|
||||
// Nishikawa
|
||||
#define XREG_F(i)
|
||||
#define XREG_S(i)
|
||||
|
||||
// Suzuki
|
||||
#define ZREG_F(i)
|
||||
#define ZREG_S(i)
|
||||
|
||||
// Nakanishi
|
||||
#define nREG_F(i)
|
||||
#define nREG_S(i)
|
||||
|
||||
// Kuwajima
|
||||
#define kREG_F(i)
|
||||
#define kREG_S(i)
|
||||
|
||||
// Okajima
|
||||
#define oREG_F(i)
|
||||
#define oREG_S(i)
|
||||
|
||||
// Yamazaki
|
||||
#define yREG_F(i)
|
||||
#define yREG_S(i)
|
||||
|
||||
// Ashida
|
||||
#define aREG_F(i)
|
||||
#define aREG_S(i)
|
||||
|
||||
// Okada
|
||||
#define hREG_F(i)
|
||||
#define hREG_S(i)
|
||||
|
||||
// Takahashi
|
||||
#define tREG_F(i)
|
||||
#define tREG_S(i)
|
||||
#endif
|
||||
|
||||
#endif /* D_S_D_S_PLAY_H */
|
||||
|
||||
@@ -154,6 +154,11 @@ inline void GXPosition2s8(s8 x, s8 y) {
|
||||
GFX_FIFO(s8) = y;
|
||||
}
|
||||
|
||||
inline void GXPosition2s16(s16 x, s16 y) {
|
||||
GFX_FIFO(s16) = x;
|
||||
GFX_FIFO(s16) = y;
|
||||
}
|
||||
|
||||
inline void i_GXPosition3s16(s16 x, s16 y, s16 z) {
|
||||
GFX_FIFO(s16) = x;
|
||||
GFX_FIFO(s16) = y;
|
||||
|
||||
@@ -1,7 +1,22 @@
|
||||
#ifndef F_F_OP_OVERLAP_H_
|
||||
#define F_F_OP_OVERLAP_H_
|
||||
|
||||
#include "f_pc/f_pc_leaf.h"
|
||||
|
||||
class overlap_task_class : public leafdraw_class {
|
||||
public:
|
||||
/* 0xC0 */ leafdraw_method_class* field_0xc0;
|
||||
/* 0xC4 */ u8 field_0xc4; // used as both u8 and request_base_class* ??
|
||||
/* 0xC8 */ int field_0xc8;
|
||||
}; // Size: 0xCC
|
||||
|
||||
struct overlap_process_profile_definition {
|
||||
/* 0x00 */ leaf_process_profile_definition base;
|
||||
/* 0x24 */ leafdraw_method_class* mSubMtd;
|
||||
}; // Size: 0x28
|
||||
|
||||
static s32 fopOvlp_Draw(void* param_1);
|
||||
|
||||
extern leafdraw_method_class g_fopOvlp_Method;
|
||||
|
||||
#endif
|
||||
@@ -1,23 +1,11 @@
|
||||
#ifndef F_F_OP_OVERLAP_MNG_H_
|
||||
#define F_F_OP_OVERLAP_MNG_H_
|
||||
|
||||
#include "f_pc/f_pc_leaf.h"
|
||||
#include "f_op/f_op_overlap.h"
|
||||
#include "f_pc/f_pc_manager.h"
|
||||
|
||||
struct request_base_class;
|
||||
|
||||
class overlap_task_class : public leafdraw_class {
|
||||
public:
|
||||
/* 0xC0 */ leafdraw_method_class* field_0xc0;
|
||||
/* 0xC4 */ u8 field_0xc4; // used as both u8 and request_base_class* ??
|
||||
/* 0xC8 */ int field_0xc8;
|
||||
|
||||
}; // Size: 0xD8?
|
||||
|
||||
struct overlap_process_profile_definition {
|
||||
/* 0x00 */ leaf_process_profile_definition base;
|
||||
/* 0x24 */ leafdraw_method_class* mSubMtd;
|
||||
}; // Size: 0x28
|
||||
|
||||
int fopOvlpM_SceneIsStop();
|
||||
int fopOvlpM_SceneIsStart();
|
||||
void fopOvlpM_Management();
|
||||
|
||||
@@ -34,6 +34,8 @@ s32 mDoAud_load1stDynamicWave();
|
||||
static void mDoAud_setLinkGroupInfo(u8 param_0);
|
||||
static void mDoAud_setLinkHp(s32 param_0, s32 param_1);
|
||||
static void mDoAud_seStartLevel(u32 param_0, Vec const* param_1, u32 param_2, s8 param_3);
|
||||
void mDoAud_setFadeInStart(u8 param_0);
|
||||
void mDoAud_setFadeOutStart(u8 param_0);
|
||||
|
||||
inline void mDoAud_bgmSetSwordUsing(s32 id) {
|
||||
Z2AudioMgr::getInterface()->bgmSetSwordUsing(id);
|
||||
|
||||
Reference in New Issue
Block a user