mirror of
https://github.com/zeldaret/tp
synced 2026-09-02 18:02:55 -04:00
work on daalink, fop actor, mDo machine, msg_scrn, + various (#201)
* work on fop actor / actor mng, daalink, d_a_obj_item * d_a_title mostly decompiled * daalink / d_event / JMessage / dmsg_out_font work * msg_scrn_base / msg_scrn_boss * some work on mDo machine, d_menu_save, d_tresure, and various * remove asm * progress
This commit is contained in:
+543
-298
File diff suppressed because it is too large
Load Diff
@@ -4,7 +4,21 @@
|
||||
#include "dolphin/types.h"
|
||||
#include "rel/d/a/e/d_a_e_wb/d_a_e_wb.h"
|
||||
|
||||
class daTagHstop_c {
|
||||
class daTagHstop_c : public fopAc_ac_c {
|
||||
public:
|
||||
static daTagHstop_c* getTop() { return m_top; }
|
||||
|
||||
daTagHstop_c* getNext() { return mpNext; }
|
||||
bool getActiveFlg() const { return mActive; }
|
||||
|
||||
/* 0x568 */ daTagHstop_c* mpNext;
|
||||
/* 0x56C */ daTagHstop_c* field_0x56c;
|
||||
/* 0x570 */ u8 field_0x570;
|
||||
/* 0x571 */ bool mActive;
|
||||
/* 0x572 */ u8 field_0x572;
|
||||
/* 0x573 */ u8 field_0x573;
|
||||
/* 0x574 */ int field_0x574;
|
||||
|
||||
static daTagHstop_c* m_top;
|
||||
};
|
||||
|
||||
|
||||
@@ -3,20 +3,145 @@
|
||||
|
||||
#include "SSystem/SComponent/c_lib.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/a/d_a_itembase.h"
|
||||
#include "d/a/d_a_itembase_static.h"
|
||||
#include "d/particle/d_particle.h"
|
||||
|
||||
class daItem_c {
|
||||
class daItem_c;
|
||||
typedef void (daItem_c::*procFunc)();
|
||||
|
||||
class daItem_c : public daItemBase_c {
|
||||
public:
|
||||
daItem_c() : field_0x998(0, 0) {}
|
||||
/* 8015B0C4 */ void initBaseMtx();
|
||||
/* 8015B108 */ void setBaseMtx();
|
||||
/* 8015B190 */ void setBaseMtx_0();
|
||||
/* 8015B1C8 */ void setBaseMtx_1();
|
||||
/* 8015B3D8 */ void CreateInit();
|
||||
/* 8015B7BC */ void setCullInfo();
|
||||
/* 8015B7D4 */ int _daItem_create();
|
||||
/* 8015BA9C */ void _daItem_execute();
|
||||
/* 8015BD84 */ int _daItem_draw();
|
||||
/* 8015BDE8 */ int _daItem_delete();
|
||||
/* 8015BE60 */ void procInitNormal();
|
||||
/* 8015BEA4 */ void procMainNormal();
|
||||
/* 8015BFE8 */ void procMainEnemyCarry();
|
||||
/* 8015BFEC */ void procInitForceGet();
|
||||
/* 8015C038 */ void procMainForceGet();
|
||||
/* 8015C058 */ void procInitSimpleGetDemo();
|
||||
/* 8015C134 */ void procMainSimpleGetDemo();
|
||||
/* 8015C200 */ void procInitGetDemoEvent();
|
||||
/* 8015C2A4 */ void procWaitGetDemoEvent();
|
||||
/* 8015C3BC */ void procMainGetDemoEvent();
|
||||
/* 8015C41C */ void procInitBoomerangCarry();
|
||||
/* 8015C514 */ void procMainBoomerangCarry();
|
||||
/* 8015C5F4 */ void procInitSwOnWait();
|
||||
/* 8015C648 */ void procMainSwOnWait();
|
||||
/* 8015C708 */ void procInitBoomHitWait();
|
||||
/* 8015C738 */ void procMainBoomHitWait();
|
||||
/* 8015CAB8 */ void move_proc_call();
|
||||
/* 8015CC4C */ void mode_wait_init();
|
||||
/* 8015CC88 */ void mode_water_init();
|
||||
/* 8015CCD0 */ void mode_wait();
|
||||
/* 8015CDCC */ void mode_water();
|
||||
/* 8015CEEC */ void itemGetNextExecute();
|
||||
/* 8015D0A8 */ void itemGet();
|
||||
/* 8015D370 */ BOOL checkCountTimer();
|
||||
/* 8015D3CC */ bool checkPlayerGet();
|
||||
/* 8015D410 */ void checkYogan();
|
||||
/* 8015D480 */ void deleteItem();
|
||||
/* 8015D4AC */ int itemActionForRupee();
|
||||
/* 8015D56C */ void itemActionForHeart();
|
||||
/* 8015D688 */ void itemActionForArrow();
|
||||
/* 8015D700 */ void itemActionForBoomerang();
|
||||
/* 8015D734 */ void bg_check();
|
||||
/* 8015D834 */ void set_bound_se();
|
||||
/* 8015D95C */ int CountTimer();
|
||||
/* 8015D9F0 */ int initAction();
|
||||
/* 8015DAAC */ void initFlag();
|
||||
/* 8015DBF0 */ void initScale();
|
||||
/* 8015DC40 */ void initSpeed(int);
|
||||
/* 8015DE38 */ void initAngle();
|
||||
u32 startCtrl();
|
||||
u32 startControl();
|
||||
u32 endControl();
|
||||
|
||||
void setFlag(u8 pFlag) { cLib_onBit(unk2376, pFlag); }
|
||||
/* 8015CE94 */ virtual void setTevStr();
|
||||
virtual void unk0() = 0;
|
||||
virtual void unk1() = 0;
|
||||
virtual void unk2() = 0;
|
||||
virtual void unk3() = 0;
|
||||
virtual void unk4() = 0;
|
||||
virtual void unk5() = 0;
|
||||
virtual void unk6() = 0;
|
||||
virtual void unk7() = 0;
|
||||
virtual void unk8() = 0;
|
||||
virtual void unk9() = 0;
|
||||
virtual void unk10() = 0;
|
||||
virtual void unk11() = 0;
|
||||
virtual void unk12() = 0;
|
||||
virtual void unk13() = 0;
|
||||
virtual void unk14() = 0;
|
||||
virtual void unk15() = 0;
|
||||
virtual void unk16() = 0;
|
||||
virtual void unk17() = 0;
|
||||
virtual void unk18() = 0;
|
||||
virtual void unk19() = 0;
|
||||
virtual void unk20() = 0;
|
||||
virtual void unk21() = 0;
|
||||
virtual void unk22() = 0;
|
||||
virtual void unk23() = 0;
|
||||
virtual void unk24() = 0;
|
||||
virtual void unk25() = 0;
|
||||
virtual void unk26() = 0;
|
||||
virtual void unk27() = 0;
|
||||
virtual void unk28() = 0;
|
||||
virtual void unk29() = 0;
|
||||
virtual void unk30() = 0;
|
||||
virtual void unk31() = 0;
|
||||
virtual void unk32() = 0;
|
||||
virtual void unk33() = 0;
|
||||
virtual void unk34() = 0;
|
||||
virtual void unk35() = 0;
|
||||
|
||||
private:
|
||||
u8 unk0[0x948];
|
||||
u8 unk2376;
|
||||
u8 unk2377;
|
||||
u8 unk2378;
|
||||
};
|
||||
void setFlag(u8 pFlag) { cLib_onBit(mFlag, pFlag); }
|
||||
void setStatus(u8 status) { mStatus = status; }
|
||||
u8 getStatus() { return mStatus; }
|
||||
bool checkFlag(u8 flag) { return cLib_checkBit(mFlag, flag); }
|
||||
void clrFlag(u8 flag) { cLib_offBit(mFlag, flag); }
|
||||
|
||||
static u8 mFuncPtr[120];
|
||||
//static procFunc mFuncPtr[9];
|
||||
static u8 m_cyl_src[68];
|
||||
static s32 m_timer_max;
|
||||
|
||||
/* 0x92C */ s16 field_0x92c;
|
||||
/* 0x92E */ u16 field_0x92e;
|
||||
/* 0x930 */ cXyz field_0x930;
|
||||
/* 0x93C */ u32 field_0x93c;
|
||||
/* 0x940 */ u16 field_0x940;
|
||||
/* 0x942 */ s16 field_0x942;
|
||||
/* 0x944 */ s16 field_0x944;
|
||||
/* 0x946 */ s16 field_0x946;
|
||||
/* 0x948 */ u8 mFlag;
|
||||
/* 0x949 */ u8 field_0x949;
|
||||
/* 0x94A */ u8 mStatus;
|
||||
/* 0x94B */ u8 field_0x94b;
|
||||
/* 0x94C */ u32 m_item_id;
|
||||
/* 0x950 */ cXyz field_0x950;
|
||||
/* 0x95C */ u8 field_0x95c;
|
||||
/* 0x95D */ bool field_0x95d;
|
||||
/* 0x95E */ u8 mBoomWindTgTimer;
|
||||
/* 0x95F */ u8 field_0x95f;
|
||||
/* 0x960 */ u8 field_0x960[0xC];
|
||||
/* 0x96C */ cXyz field_0x96c;
|
||||
/* 0x978 */ Z2SoundObjSimple field_0x978;
|
||||
/* 0x998 */ dPa_followEcallBack field_0x998;
|
||||
/* 0x9AC */ cXyz field_0x9ac;
|
||||
/* 0x9B8 */ u32 field_0x9b8;
|
||||
/* 0x9BC */ u8 field_0x9bc[4];
|
||||
/* 0x9C0 */ u8 field_0x9c0;
|
||||
/* 0x9C1 */ u8 field_0x9c1;
|
||||
}; // Size: 0x9C4
|
||||
|
||||
#endif /* D_A_D_A_ITEM_STATIC_H */
|
||||
|
||||
+14
-13
@@ -8,7 +8,7 @@
|
||||
#include "f_op/f_op_actor.h"
|
||||
|
||||
struct daItemBase_data {
|
||||
/* 0x00 */ f32 field_0x0;
|
||||
/* 0x00 */ f32 mGravity;
|
||||
/* 0x04 */ f32 field_0x4;
|
||||
/* 0x08 */ f32 field_0x8;
|
||||
/* 0x0C */ f32 field_0xc;
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
int DeleteBase(char const*);
|
||||
void setListEnd();
|
||||
void animPlay(f32, f32, f32, f32, f32, f32);
|
||||
daItemBase_data& getData();
|
||||
const daItemBase_data& getData();
|
||||
|
||||
virtual int DrawBase();
|
||||
virtual void setListStart();
|
||||
@@ -61,20 +61,21 @@ public:
|
||||
|
||||
static daItemBase_data const m_data;
|
||||
|
||||
private:
|
||||
/* 0x56C */ request_of_phase_process_class mPhase;
|
||||
/* 0x574 */ J3DModel* mpModel;
|
||||
/* 0x578 */ mDoExt_btkAnm* field_0x578;
|
||||
/* 0x57C */ mDoExt_bpkAnm* field_0x57c;
|
||||
/* 0x580 */ mDoExt_brkAnm* field_0x580;
|
||||
/* 0x584 */ mDoExt_bckAnm* field_0x584;
|
||||
/* 0x588 */ mDoExt_btpAnm* field_0x588;
|
||||
/* 0x58C */ dBgS_ObjAcch field_0x58c;
|
||||
/* 0x764 */ dBgS_AcchCir field_0x764;
|
||||
/* 0x7A4 */ dCcD_Stts field_0x7a4;
|
||||
/* 0x7E0 */ dCcD_Cyl field_0x7e0;
|
||||
/* 0x578 */ mDoExt_btkAnm* mpBtkAnm;
|
||||
/* 0x57C */ mDoExt_bpkAnm* mpBpkAnm;
|
||||
/* 0x580 */ mDoExt_brkAnm* mpBrkAnm;
|
||||
/* 0x584 */ mDoExt_bckAnm* mpBckAnm;
|
||||
/* 0x588 */ mDoExt_btpAnm* mpBtpAnm;
|
||||
/* 0x58C */ dBgS_ObjAcch mAcch;
|
||||
/* 0x764 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x7A4 */ dCcD_Stts mColStatus;
|
||||
/* 0x7E0 */ dCcD_Cyl mCollider;
|
||||
/* 0x91C */ u32 field_0x91c;
|
||||
/* 0x920 */ u8 field_0x920[0xA];
|
||||
/* 0x920 */ u32 field_0x920;
|
||||
/* 0x924 */ int field_0x924;
|
||||
/* 0x928 */ s16 field_0x928;
|
||||
/* 0x92A */ u8 m_itemNo;
|
||||
/* 0x92B */ u8 field_0x92b;
|
||||
};
|
||||
|
||||
@@ -4,4 +4,6 @@
|
||||
#include "d/a/d_a_itembase.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
void CheckFieldItemCreateHeap(fopAc_ac_c* actor);
|
||||
|
||||
#endif /* D_A_D_A_ITEMBASE_STATIC_H */
|
||||
|
||||
@@ -514,4 +514,7 @@ public:
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpcF_c) == 0xB48);
|
||||
|
||||
void daNpcF_getPlayerInfoFromPlayerList(int param_0, int param_1, cXyz& param_2,
|
||||
csXyz& param_3);
|
||||
|
||||
#endif /* D_A_D_A_NPC_H */
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef A_NPC_D_A_NPC_CD_H
|
||||
#define A_NPC_D_A_NPC_CD_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#endif /* A_NPC_D_A_NPC_CD_H */
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef A_NPC_D_A_NPC_CD2_H
|
||||
#define A_NPC_D_A_NPC_CD2_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#endif /* A_NPC_D_A_NPC_CD2_H */
|
||||
@@ -0,0 +1,24 @@
|
||||
#ifndef A_OBJ_D_A_OBJ_ITEM_H
|
||||
#define A_OBJ_D_A_OBJ_ITEM_H
|
||||
|
||||
#include "d/a/d_a_item_static.h"
|
||||
|
||||
namespace daItem_prm {
|
||||
static inline u8 getItemNo(daItem_c* item) {
|
||||
return fopAcM_GetParam(item);
|
||||
}
|
||||
|
||||
static inline u32 getItemBitNo(daItem_c* item) {
|
||||
return (fopAcM_GetParam(item) >> 8) & 0xFF;
|
||||
}
|
||||
|
||||
static inline u16 getSwOnWaitTimer(daItem_c* item) {
|
||||
return item->field_0x92e & 0x3F;
|
||||
}
|
||||
|
||||
static inline u8 checkInWater(daItem_c* item) {
|
||||
return fopAcM_GetParamBit(item, 0x1C, 4);
|
||||
}
|
||||
};
|
||||
|
||||
#endif /* A_OBJ_D_A_OBJ_ITEM_H */
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef A_OBJ_D_A_OBJ_SS_BASE_H
|
||||
#define A_OBJ_D_A_OBJ_SS_BASE_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daObj_SSBase_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* 8015E3F8 */ daObj_SSBase_c();
|
||||
|
||||
/* 8015E450 */ virtual ~daObj_SSBase_c();
|
||||
/* 8015E4C8 */ virtual void setSoldOut();
|
||||
/* 8015E4B0 */ virtual u32 getProcessID();
|
||||
|
||||
private:
|
||||
/* 0x56C */ void* mpParentPtr;
|
||||
/* 0x570 */ u16 field_0x570;
|
||||
/* 0x572 */ u16 mFlowNodeNum;
|
||||
/* 0x574 */ u16 mValueNum;
|
||||
};
|
||||
|
||||
#endif /* A_OBJ_D_A_OBJ_SS_BASE_H */
|
||||
@@ -46,7 +46,13 @@ private:
|
||||
|
||||
class daPy_anmHeap_c {
|
||||
public:
|
||||
enum daAlinkHEAP_TYPE {};
|
||||
enum daAlinkHEAP_TYPE {
|
||||
HEAP_TYPE_1 = 1,
|
||||
HEAP_TYPE_2,
|
||||
HEAP_TYPE_3,
|
||||
HEAP_TYPE_4,
|
||||
HEAP_TYPE_5,
|
||||
};
|
||||
|
||||
/* 80140DCC */ void __defctor(); // supposed to be the ctor?
|
||||
|
||||
@@ -67,6 +73,8 @@ public:
|
||||
void resetArcNo() { mArcNo = 0xffff; }
|
||||
bool checkNoSetArcNo() const { return mArcNo == 0xFFFF; }
|
||||
void setBufferSize(u32 size) { mBufferSize = size; }
|
||||
void setBuffer(u8* buf) { mBuffer = buf; }
|
||||
u8* getBuffer() { return mBuffer; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ u16 mIdx;
|
||||
@@ -74,7 +82,7 @@ private:
|
||||
/* 0x04 */ u16 mArcNo;
|
||||
/* 0x06 */ u16 field_0x06;
|
||||
/* 0x08 */ u32 mBufferSize;
|
||||
/* 0x0C */ void* mBuffer;
|
||||
/* 0x0C */ u8* mBuffer;
|
||||
/* 0x10 */ JKRSolidHeap* mAnimeHeap;
|
||||
}; // Size = 0x14
|
||||
|
||||
@@ -130,7 +138,11 @@ public:
|
||||
void setDemoMode(u32 mode) { mDemoMode = mode; }
|
||||
u32 getDemoMode() const { return mDemoMode; }
|
||||
int getParam1() const { return mParam1; }
|
||||
void setOriginalDemoType() { setDemoType(3); }
|
||||
void i_setSpecialDemoType() { setDemoType(5); }
|
||||
void setStick(f32 stick) { mStick = stick; }
|
||||
void setMoveAngle(s16 angle) { mDemoMoveAngle = angle; }
|
||||
s16 getMoveAngle() const { return mDemoMoveAngle; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ u16 mDemoType;
|
||||
@@ -164,9 +176,10 @@ public:
|
||||
/* 0x058C */ u32 mEndResetFlg1;
|
||||
/* 0x0590 */ u32 mEndResetFlg2;
|
||||
/* 0x0594 */ f32 field_0x594;
|
||||
/* 0x0598 */ u8 field_0x598[0x4];
|
||||
/* 0x0598 */ f32 field_0x598;
|
||||
/* 0x059C */ s16 mLookAngleY;
|
||||
/* 0x059E */ u8 field_0x59e[0x6];
|
||||
/* 0x059E */ s16 field_0x59e;
|
||||
/* 0x05A0 */ u8 field_0x5a0[0x4];
|
||||
/* 0x05A4 */ cXyz mHeadTopPos;
|
||||
/* 0x05B0 */ cXyz mItemPos;
|
||||
/* 0x05BC */ cXyz mSwordTopPos;
|
||||
@@ -187,6 +200,7 @@ public:
|
||||
FLG0_UNK_80000 = 0x80000,
|
||||
FLG0_UNK_20000 = 0x20000,
|
||||
FLG0_UNK_8000 = 0x8000,
|
||||
FLG0_UNK_4000 = 0x4000,
|
||||
MAGNE_BOOTS_ON = 0x1000,
|
||||
FLG0_UNK_80 = 0x80,
|
||||
FLG0_UNK_40 = 0x40,
|
||||
@@ -199,16 +213,20 @@ public:
|
||||
};
|
||||
enum daPy_FLG1 { IS_WOLF = 0x2000000, FLG1_UNK_10000 = 0x10000, THROW_DAMAGE = 0x4000 };
|
||||
enum daPy_FLG2 {
|
||||
FLG2_UNK_20000000 = 0x20000000,
|
||||
FLG2_UNK_4080000 = 0x4080000,
|
||||
FLG2_UNK_2080000 = 0x2080000,
|
||||
BOAR_SINGLE_BATTLE = 0x1800000,
|
||||
STATUS_WINDOW_DRAW = 0x400000,
|
||||
UNK_ARMOR = 0x80000,
|
||||
SCENE_CHANGE_START = 0x8000,
|
||||
FLG2_UNK_4000 = 0x4000,
|
||||
UNK_FLG2_2 = 2,
|
||||
UNK_DAPY_FLG2_1 = 1
|
||||
};
|
||||
enum daPy_FLG3 {
|
||||
FLG3_UNK_2000000 = 0x2000000,
|
||||
FLG3_UNK_1000000 = 0x1000000,
|
||||
FLG3_UNK_100000 = 0x100000,
|
||||
COPY_ROD_THROW_AFTER = 0x40000
|
||||
};
|
||||
@@ -337,6 +355,15 @@ public:
|
||||
/* 80182AC4 */ void checkCopyRodThrowAfter() const;
|
||||
/* 80182AD8 */ void checkRide() const;
|
||||
/* 80182B9C */ void getRightHandPos() const;
|
||||
/* 8015DFD8 */ const cXyz getItemPos() const;
|
||||
/* 8015DFF4 */ const cXyz& getLeftHandPos() const;
|
||||
|
||||
/* const cXyz* getItemPos() const {
|
||||
return &mItemPos;
|
||||
}
|
||||
const cXyz* getLeftHandPos() const {
|
||||
return &mLeftHandPos;
|
||||
} */
|
||||
|
||||
virtual cXyz* getMidnaAtnPos() const;
|
||||
virtual void setMidnaMsgNum(fopAc_ac_c*, u16);
|
||||
@@ -526,6 +553,7 @@ public:
|
||||
u8 getCutType() const { return mCutType; }
|
||||
u16 getSwordAtUpTime() const { return mSwordUpTimer; }
|
||||
bool checkWaterInMove() const { return i_checkNoResetFlg0(UNDER_WATER_MOVEMENT); }
|
||||
bool checkSceneChangeAreaStart() const { return i_checkNoResetFlg2(SCENE_CHANGE_START); }
|
||||
|
||||
// some functions use these function as an inline
|
||||
// is there a better way to handle this?
|
||||
@@ -555,12 +583,14 @@ public:
|
||||
void i_onPlayerNoDraw() { i_onNoResetFlg0(PLAYER_NO_DRAW); }
|
||||
void i_offPlayerNoDraw() { i_offNoResetFlg0(PLAYER_NO_DRAW); }
|
||||
|
||||
inline static u32 i_getLastSceneMode();
|
||||
inline static u32 getLastSceneMode();
|
||||
inline static bool checkWoodSwordEquip();
|
||||
inline BOOL i_checkSwordGet();
|
||||
inline bool i_checkShieldGet() const;
|
||||
inline static BOOL checkNowWolf();
|
||||
inline bool checkZoraWearFlg() const;
|
||||
inline bool checkMagicArmorWearFlg() const;
|
||||
|
||||
static daMidna_c* getMidnaActor() { return m_midnaActor; }
|
||||
|
||||
|
||||
@@ -74,13 +74,13 @@ public:
|
||||
bool ChkMoveBG_NoDABg(cBgS_PolyInfo const&);
|
||||
s32 GetExitId(cBgS_PolyInfo const&);
|
||||
s32 GetPolyColor(cBgS_PolyInfo const&);
|
||||
bool GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
BOOL GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
bool GetSpecialCode(cBgS_PolyInfo const&);
|
||||
bool GetMagnetCode(cBgS_PolyInfo const&);
|
||||
int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
bool GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
bool GetUnderwaterRoofCode(cBgS_PolyInfo const&);
|
||||
s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
bool GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
BOOL GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
bool GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
bool GetGroundCode(cBgS_PolyInfo const&);
|
||||
s32 GetCamMoveBG(cBgS_PolyInfo const&);
|
||||
|
||||
@@ -62,6 +62,7 @@ public:
|
||||
/* 0x000080 */ GROUND_LANDING = (1 << 7),
|
||||
/* 0x000100 */ GROUND_AWAY = (1 << 8),
|
||||
/* 0x000200 */ ROOF_HIT = (1 << 9),
|
||||
/* 0x000400 */ WATER_NONE = (1 << 10),
|
||||
/* 0x000800 */ WATER_HIT = (1 << 11),
|
||||
/* 0x001000 */ WATER_IN = (1 << 12),
|
||||
/* 0x002000 */ LINE_CHECK = (1 << 13),
|
||||
@@ -139,6 +140,14 @@ public:
|
||||
void SetGroundAway() { m_flags |= GROUND_AWAY; }
|
||||
const u32 MaskWaterHit() { return m_flags & WATER_HIT; }
|
||||
const bool ChkWaterHit() { return MaskWaterHit(); }
|
||||
void ClrWaterNone() { m_flags &= ~WATER_NONE; }
|
||||
void SetWaterCheckOffset(f32 offset) { m_wtr_chk_offset = offset; }
|
||||
void OnLineCheck() { m_flags |= LINE_CHECK; }
|
||||
void ClrRoofNone() { m_flags &= ~ROOF_NONE; }
|
||||
void SetRoofCrrHeight(f32 height) { m_roof_crr_height = height; }
|
||||
void SetWtrChkMode(int mode) { m_wtr_mode = mode; }
|
||||
void SetGrndNone() { m_flags |= GRND_NONE; }
|
||||
void ClrGrndNone() { m_flags &= ~GRND_NONE; }
|
||||
|
||||
// inline dupe
|
||||
void i_ClrGroundHit() { m_flags &= ~GROUND_HIT; }
|
||||
@@ -187,6 +196,11 @@ public:
|
||||
};
|
||||
|
||||
class dBgS_ObjAcch : public dBgS_Acch {
|
||||
public:
|
||||
dBgS_ObjAcch() {
|
||||
SetObj();
|
||||
}
|
||||
|
||||
/* 80BB336C */ virtual ~dBgS_ObjAcch();
|
||||
};
|
||||
|
||||
|
||||
@@ -109,10 +109,10 @@ public:
|
||||
/* 8007B0E4 */ virtual s32 GetGrpRoomIndex(cBgS_PolyInfo const&) const;
|
||||
virtual s32 GetExitId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetPolyColor(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetHorseNoEntry(cBgS_PolyInfo const&) = 0;
|
||||
virtual BOOL GetHorseNoEntry(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetSpecialCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetSpecialCode(int) = 0;
|
||||
virtual bool GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyObjThrough(int) = 0;
|
||||
virtual void GetPolyCamThrough(int) = 0;
|
||||
virtual void GetPolyLinkThrough(int) = 0;
|
||||
@@ -125,7 +125,7 @@ public:
|
||||
virtual bool GetUnderwaterRoofCode(int) = 0;
|
||||
virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual BOOL GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetIronBallThrough(int) = 0;
|
||||
@@ -208,10 +208,10 @@ public:
|
||||
/* 8007DF00 */ virtual void SphChk(dBgS_SphChk*, virtual void*);
|
||||
/* 8007B3AC */ virtual s32 GetExitId(cBgS_PolyInfo const&);
|
||||
/* 8007B3D8 */ virtual s32 GetPolyColor(cBgS_PolyInfo const&);
|
||||
/* 8007B404 */ virtual bool GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
/* 8007B404 */ virtual BOOL GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
/* 8007B430 */ virtual bool GetSpecialCode(cBgS_PolyInfo const&);
|
||||
/* 8007B460 */ virtual void GetSpecialCode(int);
|
||||
/* 8007B488 */ virtual bool GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 8007B488 */ virtual int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 8007B4E0 */ virtual void GetPolyObjThrough(int);
|
||||
/* 8007B504 */ virtual void GetPolyCamThrough(int);
|
||||
/* 8007B52C */ virtual void GetPolyLinkThrough(int);
|
||||
@@ -225,7 +225,7 @@ public:
|
||||
/* 8007B4B4 */ virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 8007B6AC */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 8007B6D8 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 8007B704 */ virtual bool GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 8007B704 */ virtual BOOL GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 8007B734 */ virtual bool GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 8007B760 */ virtual bool GetGroundCode(cBgS_PolyInfo const&);
|
||||
/* 8007B7DC */ virtual void GetIronBallThrough(int);
|
||||
|
||||
@@ -49,10 +49,10 @@ public:
|
||||
virtual s32 GetGrpRoomIndex(cBgS_PolyInfo const&) const = 0;
|
||||
virtual s32 GetExitId(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetPolyColor(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetHorseNoEntry(cBgS_PolyInfo const&) = 0;
|
||||
virtual BOOL GetHorseNoEntry(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetSpecialCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetSpecialCode(int) = 0;
|
||||
virtual bool GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual int GetMagnetCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetPolyObjThrough(int) = 0;
|
||||
virtual void GetPolyCamThrough(int) = 0;
|
||||
virtual void GetPolyLinkThrough(int) = 0;
|
||||
@@ -66,7 +66,7 @@ public:
|
||||
virtual bool GetMonkeyBarsCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetLinkNo(cBgS_PolyInfo const&) = 0;
|
||||
virtual s32 GetWallCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual BOOL GetPolyAtt0(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetPolyAtt1(cBgS_PolyInfo const&) = 0;
|
||||
virtual bool GetGroundCode(cBgS_PolyInfo const&) = 0;
|
||||
virtual void GetIronBallThrough(int) = 0;
|
||||
|
||||
@@ -48,7 +48,7 @@ public:
|
||||
/* 80082A80 */ virtual void GetHorseNoEntry(cBgS_PolyInfo const&);
|
||||
/* 80082AB0 */ virtual void GetSpecialCode(cBgS_PolyInfo const&);
|
||||
/* 80082AE0 */ virtual void GetSpecialCode(int);
|
||||
/* 80082B0C */ virtual void GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 80082B0C */ virtual int GetMagnetCode(cBgS_PolyInfo const&);
|
||||
/* 80082B6C */ virtual void GetPolyObjThrough(int);
|
||||
/* 80082B98 */ virtual void GetPolyCamThrough(int);
|
||||
/* 80082BC4 */ virtual void GetPolyLinkThrough(int);
|
||||
@@ -62,7 +62,7 @@ public:
|
||||
/* 80082B3C */ virtual void GetMonkeyBarsCode(cBgS_PolyInfo const&);
|
||||
/* 80082D24 */ virtual void GetLinkNo(cBgS_PolyInfo const&);
|
||||
/* 80082D54 */ virtual s32 GetWallCode(cBgS_PolyInfo const&);
|
||||
/* 80082D84 */ virtual void GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80082D84 */ virtual BOOL GetPolyAtt0(cBgS_PolyInfo const&);
|
||||
/* 80082DB4 */ virtual void GetPolyAtt1(cBgS_PolyInfo const&);
|
||||
/* 80082DE4 */ virtual void GetGroundCode(cBgS_PolyInfo const&);
|
||||
/* 80082E14 */ virtual void GetIronBallThrough(int);
|
||||
|
||||
+14
-6
@@ -91,13 +91,13 @@ enum dCcG_At_Spl {
|
||||
};
|
||||
|
||||
class dCcD_GObjInf;
|
||||
typedef void (*dCcD_AtHitCallback)(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
typedef void (*dCcD_HitCallback)(fopAc_ac_c*, dCcD_GObjInf*, fopAc_ac_c*, dCcD_GObjInf*);
|
||||
|
||||
class dCcD_GAtTgCoCommonBase {
|
||||
public:
|
||||
/* 0x00 */ u32 mGFlag;
|
||||
/* 0x04 */ u32 mRPrm;
|
||||
/* 0x08 */ dCcD_AtHitCallback mHitCallback;
|
||||
/* 0x08 */ dCcD_HitCallback mHitCallback;
|
||||
/* 0x0C */ u32 mApid;
|
||||
/* 0x10 */ fopAc_ac_c* mAc;
|
||||
/* 0x14 */ s8 mEffCounter;
|
||||
@@ -124,7 +124,7 @@ public:
|
||||
void OnSPrm(u32 flag) { mGFlag |= flag; }
|
||||
void OffSPrm(u32 flag) { mGFlag &= ~flag; }
|
||||
bool ChkRPrm(u32 flag) const { return MskRPrm(flag); }
|
||||
void SetHitCallback(dCcD_AtHitCallback callback) { mHitCallback = callback; }
|
||||
void SetHitCallback(dCcD_HitCallback callback) { mHitCallback = callback; }
|
||||
}; // Size = 0x1C
|
||||
|
||||
class dCcD_GObjAt : public dCcD_GAtTgCoCommonBase {
|
||||
@@ -157,6 +157,8 @@ public:
|
||||
/* 80083BE8 */ virtual ~dCcD_GObjTg() {}
|
||||
void SetVec(cXyz& vec) { mVec = vec; }
|
||||
cXyz& GetVec() { return mVec; }
|
||||
void SetShieldFrontRangeYAngle(s16* angle) { mShieldFrontRangeYAngle = angle; }
|
||||
void SetMtrl(u8 mtrl) { mMtrl = mtrl; }
|
||||
|
||||
private:
|
||||
/* 0x1C */ u8 mSe;
|
||||
@@ -186,7 +188,7 @@ public:
|
||||
/* 800843A8 */ cCcD_GObjInf* GetAtHitGObj();
|
||||
/* 800843DC */ bool ChkAtNoGuard();
|
||||
/* 800843FC */ void ClrTgHit();
|
||||
/* 80084460 */ bool ChkTgHit();
|
||||
/* 80084460 */ u32 ChkTgHit();
|
||||
/* 800844B8 */ void ResetTgHit();
|
||||
/* 800844F8 */ cCcD_Obj* GetTgHitObj();
|
||||
/* 80084548 */ dCcD_GObjInf* GetTgHitGObj();
|
||||
@@ -202,21 +204,27 @@ public:
|
||||
bool ChkAtNoMass() const { return mGObjAt.ChkSPrm(8); }
|
||||
void OnAtNoHitMark() { mGObjAt.OnSPrm(2); }
|
||||
void OffAtNoHitMark() { mGObjAt.OffSPrm(2); }
|
||||
void OnTgNoHitMark() { mGObjTg.OnSPrm(4); }
|
||||
void OnAtNoConHit() { mGObjAt.OnSPrm(1); }
|
||||
void OffAtNoConHit() { mGObjAt.OffSPrm(1); }
|
||||
void OnTgNoConHit() { mGObjTg.OnSPrm(2); }
|
||||
void SetAtHitMark(u8 mark) { mGObjAt.SetHitMark(mark); }
|
||||
void SetAtSe(u8 se) { mGObjAt.SetSe(se); }
|
||||
void SetAtMtrl(u8 mtrl) { mGObjAt.SetMtrl(mtrl); }
|
||||
void SetTgMtrl(u8 mtrl) { mGObjTg.SetMtrl(mtrl); }
|
||||
fopAc_ac_c* GetAtHitAc() { return mGObjAt.GetAc(); }
|
||||
bool ChkAtShieldHit() { return mGObjAt.ChkRPrm(1); }
|
||||
cXyz* GetAtVecP() { return mGObjAt.GetVecP(); }
|
||||
void SetAtSpl(dCcG_At_Spl spl) { mGObjAt.SetAtSpl(spl); }
|
||||
void SetAtHitCallback(dCcD_AtHitCallback callback) { mGObjAt.SetHitCallback(callback); }
|
||||
void SetAtHitCallback(dCcD_HitCallback callback) { mGObjAt.SetHitCallback(callback); }
|
||||
void SetTgHitCallback(dCcD_HitCallback callback) { mGObjTg.SetHitCallback(callback); }
|
||||
void SetCoHitCallback(dCcD_HitCallback callback) { mGObjCo.SetHitCallback(callback); }
|
||||
u8 GetAtSe() { return mGObjAt.GetSe(); }
|
||||
s32 GetAtSpl() { return mGObjAt.GetSpl(); }
|
||||
u8 GetAtMtrl() { return mGObjAt.GetMtrl(); }
|
||||
fopAc_ac_c* GetTgHitAc() { return mGObjTg.GetAc(); }
|
||||
|
||||
void SetTgShieldFrontRangeYAngle(s16* angle) { mGObjTg.SetShieldFrontRangeYAngle(angle); }
|
||||
|
||||
static u32 const m_hitSeID[24];
|
||||
|
||||
protected:
|
||||
|
||||
@@ -3,4 +3,16 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class dComIfAc_info_c {
|
||||
public:
|
||||
/* 0x0 */ int field_0x0;
|
||||
/* 0x4 */ bool mPause;
|
||||
};
|
||||
|
||||
extern dComIfAc_info_c g_dComIfAc_gameInfo;
|
||||
|
||||
inline bool dComIfA_PauseCheck() {
|
||||
return g_dComIfAc_gameInfo.mPause;
|
||||
}
|
||||
|
||||
#endif /* D_COM_D_COM_INF_ACTOR_H */
|
||||
|
||||
@@ -52,7 +52,9 @@ public:
|
||||
|
||||
/* 0x00 */ camera_class* mCamera;
|
||||
/* 0x04 */ u8 field_0x4;
|
||||
/* 0x05 */ u8 field_0x5[3];
|
||||
/* 0x05 */ u8 field_0x5;
|
||||
/* 0x06 */ s8 field_0x6;
|
||||
/* 0x07 */ u8 field_0x7;
|
||||
/* 0x08 */ u32 mCameraAttentionStatus;
|
||||
/* 0x0C */ f32 mCameraZoomScale;
|
||||
/* 0x10 */ f32 mCameraZoomForcus;
|
||||
@@ -326,8 +328,11 @@ public:
|
||||
JKRExpHeap* getMsgExpHeap() { return mMsgExpHeap; }
|
||||
JKRExpHeap* getSubExpHeap2D(int idx) { return mSubExpHeap2D[idx]; }
|
||||
void setSubExpHeap2D(int idx, void* heap) { mSubExpHeap2D[idx] = (JKRExpHeap*)heap; }
|
||||
void setExpHeap2D(void* heap) { mExpHeap2D = (JKRExpHeap*)heap; }
|
||||
void setMsgExpHeap(void* heap) { mMsgExpHeap = (JKRExpHeap*)heap; }
|
||||
|
||||
JKRArchive* getMsgDtArchive(int idx) { return mMsgDtArchive[idx]; }
|
||||
JKRArchive* getMsgArchive(int idx) { return mMsgArchive[idx]; }
|
||||
JKRArchive* getMain2DArchive() { return mMain2DArchive; }
|
||||
JKRArchive* getAnmArchive() { return mAnmArchive; }
|
||||
JKRArchive* getCollectResArchive() { return mCollectResArchive; }
|
||||
@@ -355,8 +360,11 @@ public:
|
||||
void setRubyArchive(JKRArchive* arc) { mRubyArchive = arc; }
|
||||
void setMain2DArchive(JKRArchive* arc) { mMain2DArchive = arc; }
|
||||
void setItemTable(void* data) { mItemTable = data; }
|
||||
void* getItemTable() { return mItemTable; }
|
||||
|
||||
void setPlayerPtr(int i, fopAc_ac_c* ptr) { mPlayerPtr[i] = ptr; }
|
||||
void setPlayer(int i, fopAc_ac_c* player) { mPlayer[i] = (daAlink_c*)player; }
|
||||
void setPlayerInfo(int i, fopAc_ac_c* ptr, int camIdx) { mPlayer[i] = (daAlink_c*)ptr; mPlayerCameraID[camIdx] = 0; }
|
||||
void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] |= flag; }
|
||||
void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[i] &= ~flag; }
|
||||
bool checkPlayerStatus(int param_0, int i, u32 flag) { return flag & mPlayerStatus[i]; }
|
||||
@@ -368,12 +376,21 @@ public:
|
||||
BOOL checkCameraAttentionStatus(int i, u32 flag) {
|
||||
return mCameraInfo[i].mCameraAttentionStatus & flag;
|
||||
}
|
||||
void setCameraAttentionStatus(int i, u32 flag) { mCameraInfo[i].mCameraAttentionStatus = flag; }
|
||||
void setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) {
|
||||
mCameraInfo[camIdx].mCamera = p_cam;
|
||||
mCameraInfo[camIdx].field_0x4 = param_2;
|
||||
mCameraInfo[camIdx].field_0x5 = param_3;
|
||||
mCameraInfo[camIdx].field_0x6 = param_4;
|
||||
setCameraAttentionStatus(camIdx, 0);
|
||||
}
|
||||
|
||||
void setStatus(u16 status) { mStatus = status; }
|
||||
s32 checkStatus(u16 flags) { return flags & mStatus; }
|
||||
|
||||
bool& isPauseFlag() { return mPauseFlag; }
|
||||
void offPauseFlag() { mPauseFlag = false; }
|
||||
void onPauseFlag() { mPauseFlag = true; }
|
||||
void show2dOn() { mShow2D = 1; }
|
||||
s8 getLayerOld() { return mLayerOld; }
|
||||
void setMesgCancelButton(u8 button) { mMesgCancelButton = button; }
|
||||
@@ -389,6 +406,10 @@ public:
|
||||
mWindow[i].setMode(mode);
|
||||
}
|
||||
|
||||
void setLastPlayStageName(char* name) {
|
||||
strncpy(mLastPlayStageName, name, 7);
|
||||
mLastPlayStageName[7] = 0;
|
||||
}
|
||||
char* getLastPlayStageName() { return mLastPlayStageName; }
|
||||
|
||||
u8 getGameoverStatus() { return mGameoverStatus; }
|
||||
@@ -440,7 +461,7 @@ public:
|
||||
/* 0x04E3C */ dComIfG_camera_info_class mCameraInfo[1];
|
||||
/* 0x04E74 */ daAlink_c* mPlayer[1];
|
||||
/* 0x04E78 */ s8 mPlayerCameraID[4];
|
||||
/* 0x04E7C */ void* mPlayerPtr[2]; // 0: Player, 1: Horse ; type may be wrong
|
||||
/* 0x04E7C */ fopAc_ac_c* mPlayerPtr[2]; // 0: Player, 1: Horse ; type may be wrong
|
||||
/* 0x04E84 */ dMsgObject_c* mMsgObjectClass;
|
||||
/* 0x04E88 */ f32 mItemLifeCount;
|
||||
/* 0x04E8C */ s32 mItemRupeeCount;
|
||||
@@ -656,9 +677,7 @@ void dComIfG_get_timelayer(int* layer);
|
||||
int dComIfG_resDelete(request_of_phase_process_class* i_phase, char const* resName);
|
||||
int dComIfG_changeOpeningScene(scene_class* scene, s16 procName);
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* arc_name);
|
||||
BOOL dComIfGs_isStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_onStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_offStageSwitch(int i_stageNo, int i_no);
|
||||
int dComIfG_resLoad(request_of_phase_process_class* i_phase, char const* resName, JKRHeap* heap);
|
||||
|
||||
inline void dComIfG_setBrightness(u8 brightness) {
|
||||
g_dComIfG_gameInfo.mFadeBrightness = brightness;
|
||||
@@ -765,6 +784,17 @@ void dComIfGs_offOneZoneSwitch(int param_0, int param_1);
|
||||
s8 dComIfGp_getReverb(int roomNo);
|
||||
void dComIfGs_gameStart();
|
||||
int dComIfGs_wolfeye_effect_check();
|
||||
BOOL dComIfGs_Wolf_Change_Check();
|
||||
void dComIfGs_onVisitedRoom(int param_0);
|
||||
void dComIfGs_setWarpItemData(char const* stage, cXyz pos, s16 angle, s8 roomNo, u8 param_4,
|
||||
u8 param_5);
|
||||
BOOL dComIfGs_isStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_onStageSwitch(int i_stageNo, int i_no);
|
||||
void dComIfGs_offStageSwitch(int i_stageNo, int i_no);
|
||||
|
||||
inline void dComIfGs_init() {
|
||||
g_dComIfG_gameInfo.info.init();
|
||||
}
|
||||
|
||||
inline void dComIfGs_onDungeonItemMap() {
|
||||
g_dComIfG_gameInfo.info.getMemory().getBit().onDungeonItemMap();
|
||||
@@ -866,6 +896,10 @@ inline void dComIfGs_setEmptyBombBagItemIn(u8 newBomb, bool setNum) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getItem().setEmptyBombBagItemIn(newBomb, setNum);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setEmptyBombBagItemIn(u8 newBomb, u8 bombNum, bool setNum) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getItem().setEmptyBombBagItemIn(newBomb, bombNum, setNum);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setEmptyBottle() {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getItem().setEmptyBottle();
|
||||
}
|
||||
@@ -1051,6 +1085,10 @@ inline s32 dComIfGs_isDungeonItemWarp() {
|
||||
return g_dComIfG_gameInfo.info.getMemory().getBit().isDungeonItemWarp();
|
||||
}
|
||||
|
||||
inline s32 dComIfGs_isStageBossEnemy() {
|
||||
return g_dComIfG_gameInfo.info.getMemory().getBit().isStageBossEnemy();
|
||||
}
|
||||
|
||||
inline void dComIfGs_setKeyNum(u8 keyNum) {
|
||||
g_dComIfG_gameInfo.info.getMemory().getBit().setKeyNum(keyNum);
|
||||
}
|
||||
@@ -1369,6 +1407,38 @@ inline void* dComIfGs_getPEventBit() {
|
||||
return g_dComIfG_gameInfo.info.getEvent().getPEventBit();
|
||||
}
|
||||
|
||||
inline bool dComIfGs_isItem(int bitNo, int roomNo) {
|
||||
return g_dComIfG_gameInfo.info.isItem(bitNo, roomNo);
|
||||
}
|
||||
|
||||
inline void dComIfGs_onItem(int bitNo, int roomNo) {
|
||||
g_dComIfG_gameInfo.info.onItem(bitNo, roomNo);
|
||||
}
|
||||
|
||||
inline void dComIfGs_onActor(int bitNo, int roomNo) {
|
||||
g_dComIfG_gameInfo.info.onActor(bitNo, roomNo);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setLastWarpAcceptStage(s8 param_0) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerLastMarkInfo().setWarpAcceptStage(param_0);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setOptPointer(u8 i_pointer) {
|
||||
g_dComIfG_gameInfo.info.getPlayer().getConfig().setPointer(i_pointer);
|
||||
}
|
||||
|
||||
inline u8 dComIfGs_getNewFile() {
|
||||
return g_dComIfG_gameInfo.info.getNewFile();
|
||||
}
|
||||
|
||||
inline void dComIfGs_setInitDataToCard(u8* p_saveData, int dataNum) {
|
||||
g_dComIfG_gameInfo.info.initdata_to_card((char*)p_saveData, dataNum);
|
||||
}
|
||||
|
||||
inline void dComIfGs_setMemoryToCard(u8* p_saveData, int dataNum) {
|
||||
g_dComIfG_gameInfo.info.memory_to_card((char*)p_saveData, dataNum);
|
||||
}
|
||||
|
||||
void dComIfGp_setItemLifeCount(f32 amount, u8 type);
|
||||
void dComIfGp_setItemRupeeCount(long amount);
|
||||
void dComIfGp_setSelectItem(int index);
|
||||
@@ -1396,6 +1466,7 @@ u8 dComIfGp_world_dark_get();
|
||||
JKRExpHeap* dComIfGp_getSubHeap2D(int flag);
|
||||
void dComIfGp_world_dark_set(u8);
|
||||
u8 dComIfGp_getNowLevel();
|
||||
void dComIfGp_calcNowRegion();
|
||||
|
||||
inline dStage_startStage_c* dComIfGp_getStartStage() {
|
||||
return g_dComIfG_gameInfo.play.getStartStage();
|
||||
@@ -1457,6 +1528,10 @@ inline JKRArchive* dComIfGp_getMsgDtArchive(int idx) {
|
||||
return g_dComIfG_gameInfo.play.getMsgDtArchive(idx);
|
||||
}
|
||||
|
||||
inline JKRArchive* dComIfGp_getMsgArchive(int idx) {
|
||||
return g_dComIfG_gameInfo.play.getMsgArchive(idx);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setFieldMapArchive2(JKRArchive* arc) {
|
||||
g_dComIfG_gameInfo.play.setFieldMapArchive2(arc);
|
||||
}
|
||||
@@ -1537,6 +1612,10 @@ inline void dComIfGp_setItemTable(void* data) {
|
||||
g_dComIfG_gameInfo.play.setItemTable(data);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_getItemTable() {
|
||||
return g_dComIfG_gameInfo.play.getItemTable();
|
||||
}
|
||||
|
||||
inline JKRExpHeap* dComIfGp_getExpHeap2D() {
|
||||
return g_dComIfG_gameInfo.play.getExpHeap2D();
|
||||
}
|
||||
@@ -1605,6 +1684,10 @@ inline s16 dComIfGp_getNextStagePoint() {
|
||||
return g_dComIfG_gameInfo.play.getNextStagePoint();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setLastPlayStageName(char* name) {
|
||||
g_dComIfG_gameInfo.play.setLastPlayStageName(name);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_getNowVibration() {
|
||||
return g_dComIfG_gameInfo.play.getNowVibration();
|
||||
}
|
||||
@@ -1801,6 +1884,14 @@ inline void dComIfGp_setSubExpHeap2D(int idx, void* heap) {
|
||||
g_dComIfG_gameInfo.play.setSubExpHeap2D(idx, heap);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setExpHeap2D(void* heap) {
|
||||
g_dComIfG_gameInfo.play.setExpHeap2D(heap);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setMsgExpHeap(void* heap) {
|
||||
g_dComIfG_gameInfo.play.setMsgExpHeap(heap);
|
||||
}
|
||||
|
||||
inline void dComIfGp_offEnableNextStage() {
|
||||
g_dComIfG_gameInfo.play.offEnableNextStage();
|
||||
}
|
||||
@@ -1825,10 +1916,22 @@ inline void dComIfGp_setStatus(u16 status) {
|
||||
g_dComIfG_gameInfo.play.setStatus(status);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setLinkPlayer(fopAc_ac_c* ptr) {
|
||||
g_dComIfG_gameInfo.play.setPlayerPtr(0, ptr);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setPlayerPtr(int i, fopAc_ac_c* ptr) {
|
||||
g_dComIfG_gameInfo.play.setPlayerPtr(i, ptr);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setPlayer(int i, fopAc_ac_c* player) {
|
||||
g_dComIfG_gameInfo.play.setPlayer(i, player);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setPlayerInfo(int plyrIdx, fopAc_ac_c* ptr, int camIdx) {
|
||||
g_dComIfG_gameInfo.play.setPlayerInfo(plyrIdx, ptr, camIdx);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setPlayerStatus0(int param_0, u32 flag) {
|
||||
g_dComIfG_gameInfo.play.setPlayerStatus(param_0, 0, flag);
|
||||
}
|
||||
@@ -1841,6 +1944,10 @@ inline BOOL dComIfGp_checkCameraAttentionStatus(int i, u32 flag) {
|
||||
return g_dComIfG_gameInfo.play.checkCameraAttentionStatus(i, flag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_setCameraInfo(int camIdx, camera_class* p_cam, int param_2, int param_3, int param_4) {
|
||||
g_dComIfG_gameInfo.play.setCameraInfo(camIdx, p_cam, param_2, param_3, param_4);
|
||||
}
|
||||
|
||||
inline void dComIfGp_clearPlayerStatus0(int param_0, u32 flag) {
|
||||
g_dComIfG_gameInfo.play.clearPlayerStatus(param_0, 0, flag);
|
||||
}
|
||||
@@ -2015,6 +2122,14 @@ inline JKRAramArchive* dComIfGp_getFieldMapArchive2() {
|
||||
return g_dComIfG_gameInfo.play.getFieldMapArchive2();
|
||||
}
|
||||
|
||||
inline void dComIfGp_onPauseFlag() {
|
||||
g_dComIfG_gameInfo.play.onPauseFlag();
|
||||
}
|
||||
|
||||
inline void dComIfGp_createSimpleModel() {
|
||||
g_dComIfG_gameInfo.play.createSimpleModel();
|
||||
}
|
||||
|
||||
inline s32 dComIfGp_roomControl_getStayNo() {
|
||||
return dStage_roomControl_c::getStayNo();
|
||||
}
|
||||
@@ -2063,10 +2178,55 @@ inline BOOL dComIfGp_event_compulsory(void* param_0, const char* param_1, u16 pa
|
||||
return g_dComIfG_gameInfo.play.getEvent().compulsory(param_0, param_1, param_2);
|
||||
}
|
||||
|
||||
inline int dComIfGp_event_moveApproval(void* actor) {
|
||||
return g_dComIfG_gameInfo.play.getEvent().moveApproval(actor);
|
||||
}
|
||||
|
||||
inline int dComIfGp_event_order(u16 eventType, u16 priority, u16 flag, u16 param_3, void* param_4,
|
||||
void* param_5, s16 eventID, u8 infoIdx) {
|
||||
return g_dComIfG_gameInfo.play.getEvent().order(eventType, priority, flag, param_3, param_4, param_5, eventID, infoIdx);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_setGtItm(int i_itemNo) {
|
||||
g_dComIfG_gameInfo.play.getEvent().setGtItm(i_itemNo);
|
||||
}
|
||||
|
||||
inline void dComIfGp_evmng_cutEnd(int param_0) {
|
||||
dComIfGp_getPEvtManager()->cutEnd(param_0);
|
||||
}
|
||||
|
||||
inline BOOL dComIfGp_evmng_endCheck(const char* event) {
|
||||
return g_dComIfG_gameInfo.play.getEvtManager().endCheckOld(event);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_setItemPartnerId(unsigned int id) {
|
||||
g_dComIfG_gameInfo.play.getEvent().setPtI_Id(id);
|
||||
}
|
||||
|
||||
inline int dComIfGp_evmng_startDemo(int param_0) {
|
||||
return dComIfGp_getPEvtManager()->setStartDemo(param_0);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_event_getTalkPartner() {
|
||||
u32 t = g_dComIfG_gameInfo.play.getEvent().mPtT;
|
||||
return g_dComIfG_gameInfo.play.getEvent().convPId(t);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_event_getItemPartner() {
|
||||
u32 i = g_dComIfG_gameInfo.play.getEvent().mPtI;
|
||||
return g_dComIfG_gameInfo.play.getEvent().convPId(i);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_event_getPt1() {
|
||||
u32 pt1 = g_dComIfG_gameInfo.play.getEvent().mPt1;
|
||||
return g_dComIfG_gameInfo.play.getEvent().convPId(pt1);
|
||||
}
|
||||
|
||||
inline void* dComIfGp_event_getPt2() {
|
||||
u32 pt2 = g_dComIfG_gameInfo.play.getEvent().mPt2;
|
||||
return g_dComIfG_gameInfo.play.getEvent().convPId(pt2);
|
||||
}
|
||||
|
||||
inline int i_dComIfGp_evmng_getMyStaffId(const char* pName, fopAc_ac_c* pActor, int param_2) {
|
||||
return dComIfGp_getPEvtManager()->getMyStaffId(pName, pActor, param_2);
|
||||
}
|
||||
@@ -2111,6 +2271,10 @@ inline void dComIfGp_particle_create() {
|
||||
g_dComIfG_gameInfo.play.createParticle();
|
||||
}
|
||||
|
||||
inline void dComIfGp_particle_createScene(const void* param_0) {
|
||||
g_dComIfG_gameInfo.play.getParticle()->createScene(param_0);
|
||||
}
|
||||
|
||||
inline JKRExpHeap* dComIfGp_particle_getResHeap() {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->getResHeap();
|
||||
}
|
||||
@@ -2145,6 +2309,15 @@ inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2,
|
||||
param_10, param_11, 1.0f);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4, u8 param_5, dPa_levelEcallBack* param_6,
|
||||
s8 param_7, const GXColor* param_8, const GXColor* param_9,
|
||||
const cXyz* param_10) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->setNormal(
|
||||
param_0, param_1, param_2, NULL, param_3, param_4, param_5, param_6, param_7, param_8,
|
||||
param_9, param_10, 1.0f);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u16 param_1, const cXyz* param_2, const dKy_tevstr_c* param_3,
|
||||
const csXyz* param_4, const cXyz* param_5, u8 param_6,
|
||||
dPa_levelEcallBack* param_7, s8 param_8, const GXColor* param_9,
|
||||
@@ -2160,11 +2333,23 @@ inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const csXyz*
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u16 param_0, const cXyz* param_1, const dKy_tevstr_c* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4) {
|
||||
return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_particle_set(u32 param_0, u16 param_1, const cXyz* param_2, const csXyz* param_3,
|
||||
const cXyz* param_4) {
|
||||
return dComIfGp_particle_set(param_0, param_1, param_2, param_3, param_4, 0xFF, NULL, -1, NULL,
|
||||
NULL, NULL);
|
||||
}
|
||||
|
||||
inline void dComIfGp_particle_levelEmitterOnEventMove(u32 param_0) {
|
||||
g_dComIfG_gameInfo.play.getParticle()->forceOnEventMove(param_0);
|
||||
}
|
||||
|
||||
inline dPa_control_c::level_c::emitter_c* dComIfGp_particle_getEmitter(u32 param_0) {
|
||||
inline JPABaseEmitter* dComIfGp_particle_getEmitter(u32 param_0) {
|
||||
return g_dComIfG_gameInfo.play.getParticle()->getEmitter(param_0);
|
||||
}
|
||||
|
||||
@@ -2232,6 +2417,11 @@ inline void dComIfGd_setList() {
|
||||
g_dComIfG_gameInfo.drawlist.setXluList();
|
||||
}
|
||||
|
||||
inline void dComIfGd_setListItem3D() {
|
||||
g_dComIfG_gameInfo.drawlist.setOpaListItem3D();
|
||||
g_dComIfG_gameInfo.drawlist.setXluListItem3D();
|
||||
}
|
||||
|
||||
inline void dComIfGd_setXluList2DScreen() {
|
||||
g_dComIfG_gameInfo.drawlist.setXluList2DScreen();
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
|
||||
/* 80031248 */ void newData(s8, cXyz const&, cXyz const&, u8, u8, u8);
|
||||
/* 800313BC */ void reset();
|
||||
/* 800314D4 */ void check(fopAc_ac_c*);
|
||||
/* 800314D4 */ static void check(fopAc_ac_c*);
|
||||
/* 80031434 */ static bool check(s8, cXyz const&);
|
||||
/* 800315A4 */ static void execute();
|
||||
|
||||
|
||||
+53
-3
@@ -14,11 +14,20 @@ struct dCamMapToolData {
|
||||
/* 8015FEB8 */ void Set(s32, s32, fopAc_ac_c*, u16, u8);
|
||||
};
|
||||
|
||||
struct dCamera_c {
|
||||
struct dCamInfo_c {
|
||||
class dCamera_c {
|
||||
public:
|
||||
class dCamInfo_c {
|
||||
public:
|
||||
/* 8018291C */ dCamInfo_c();
|
||||
/* 80182920 */ ~dCamInfo_c();
|
||||
};
|
||||
|
||||
private:
|
||||
/* 0x00 */ cXyz field_0x0;
|
||||
/* 0x0C */ cXyz field_0xc;
|
||||
/* 0x18 */ f32 field_0x18;
|
||||
/* 0x1C */ cSAngle field_0x1c;
|
||||
/* 0x1E */ s16 field_0x1e;
|
||||
}; // Size: 0x20
|
||||
|
||||
/* 8008908C */ void getEvIntData(int*, char*, int);
|
||||
/* 80088CB0 */ void getEvIntData(int*, char*);
|
||||
@@ -185,9 +194,50 @@ struct dCamera_c {
|
||||
/* 80182980 */ void chkFlag(u32);
|
||||
/* 801829AC */ void Bank();
|
||||
|
||||
bool Active() { return field_0x24 == 0; }
|
||||
|
||||
static u8 engine_tbl[240];
|
||||
|
||||
/* 0x000 */ cXyz field_0x0;
|
||||
/* 0x00C */ cXyz field_0xc;
|
||||
/* 0x018 */ f32 field_0x18;
|
||||
/* 0x01C */ cSAngle field_0x1c;
|
||||
/* 0x01E */ s16 field_0x1e;
|
||||
/* 0x020 */ u8 field_0x20;
|
||||
/* 0x021 */ u8 field_0x21;
|
||||
/* 0x022 */ u8 field_0x22[0x24 - 0x22];
|
||||
/* 0x024 */ int field_0x24;
|
||||
/* 0x028 */ u8 field_0x28[0x30 - 0x28];
|
||||
/* 0x030 */ cXyz field_0x30;
|
||||
/* 0x03C */ cXyz field_0x3c;
|
||||
/* 0x048 */ cXyz field_0x48;
|
||||
/* 0x054 */ cSAngle field_0x54;
|
||||
/* 0x058 */ f32 field_0x58;
|
||||
class {
|
||||
public:
|
||||
/* 0x00 */ cSGlobe field_0x0;
|
||||
/* 0x08 */ cXyz field_0x8;
|
||||
/* 0x14 */ cXyz field_0x14;
|
||||
/* 0x20 */ cSAngle field_0x20;
|
||||
}
|
||||
/* 0x05C */ field_0x5c;
|
||||
/* 0x07C */ u8 field_0x7c[0x8C - 0x7C];
|
||||
/* 0x08C */ cSAngle field_0x8c;
|
||||
/* 0x090 */ cXyz field_0x90;
|
||||
/* 0x09C */ cXyz field_0x9c;
|
||||
/* 0x0A8 */ u8 field_0xa8[0xB0 - 0xA8];
|
||||
/* 0x0B0 */ dCamInfo_c field_0xb0;
|
||||
/* 0x0D0 */ dCamInfo_c field_0xd0[2];
|
||||
class {
|
||||
public:
|
||||
/* 0x00 */ u8 field_0x0[8];
|
||||
/* 0x08 */ dCamInfo_c field_0x8;
|
||||
/* 0x28 */ cXyz field_0x28;
|
||||
}
|
||||
/* 0x110 */ field_0x110;
|
||||
};
|
||||
|
||||
dCamera_c* dCam_getBody();
|
||||
dCamera_c* dCam_getCamera();
|
||||
|
||||
#endif /* D_D_CAMERA_H */
|
||||
|
||||
+53
-6
@@ -4,18 +4,65 @@
|
||||
#include "JSystem/JStudio/JStudio/stb.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class cXyz;
|
||||
struct dDemo_c {
|
||||
/* 80039678 */ void create();
|
||||
struct cXyz;
|
||||
struct Vec;
|
||||
struct fopAc_ac_c;
|
||||
class dDemo_actor_c;
|
||||
|
||||
class dDemo_object_c {
|
||||
public:
|
||||
/* 80038F54 */ dDemo_object_c();
|
||||
/* 80038F70 */ ~dDemo_object_c();
|
||||
/* 80038FC0 */ void appendActor(fopAc_ac_c*);
|
||||
/* 80039088 */ static dDemo_actor_c* getActor(u8);
|
||||
/* 800390AC */ void createCamera();
|
||||
/* 80039128 */ void getActiveCamera();
|
||||
/* 8003913C */ void createAmbient();
|
||||
/* 800391B8 */ void appendLight();
|
||||
/* 80039258 */ void createFog();
|
||||
/* 800392D4 */ void remove();
|
||||
};
|
||||
|
||||
class dDemo_actor_c {
|
||||
public:
|
||||
/* 80038020 */ dDemo_actor_c();
|
||||
/* 80038098 */ ~dDemo_actor_c();
|
||||
/* 80038128 */ void getActor();
|
||||
/* 8003815C */ void setActor(fopAc_ac_c*);
|
||||
/* 8003819C */ void getPrm_Morf();
|
||||
/* 80038338 */ void getDemoIDData(int*, int*, int*, u16*, u8*);
|
||||
/* 800387EC */ void JSGSetData(u32, void const*, u32);
|
||||
/* 80038920 */ void JSGSetTranslation(Vec const&);
|
||||
/* 80038980 */ void JSGSetScaling(Vec const&);
|
||||
/* 800389A8 */ void JSGSetRotation(Vec const&);
|
||||
/* 80038A0C */ void JSGSetShape(u32);
|
||||
/* 80038A20 */ void JSGSetAnimation(u32);
|
||||
/* 80038A40 */ void JSGSetAnimationFrame(f32);
|
||||
/* 80038A54 */ void JSGSetAnimationTransition(f32);
|
||||
/* 80038A68 */ void JSGSetTextureAnimation(u32);
|
||||
/* 80038A7C */ void JSGSetTextureAnimationFrame(f32);
|
||||
/* 8003A05C */ void JSGFindNodeID(char const*) const;
|
||||
/* 8003A088 */ void JSGGetNodeTransformation(u32, f32 (*)[4]) const;
|
||||
/* 8003A0C8 */ void JSGGetAnimationFrameMax() const;
|
||||
/* 8003A0D0 */ void JSGGetTextureAnimationFrameMax() const;
|
||||
/* 8003A0D8 */ void JSGGetTranslation(Vec*) const;
|
||||
/* 8003A0F4 */ void JSGGetScaling(Vec*) const;
|
||||
/* 8003A110 */ void JSGGetRotation(Vec*) const;
|
||||
};
|
||||
|
||||
class dDemo_c {
|
||||
public:
|
||||
/* 80039678 */ static void create();
|
||||
/* 80039910 */ void remove();
|
||||
/* 80039B6C */ static void start(u8 const*, cXyz*, f32);
|
||||
/* 80039B6C */ void start(u8 const*, cXyz*, f32);
|
||||
/* 80039CF8 */ static void end();
|
||||
/* 80039D4C */ void branch();
|
||||
/* 80039DA4 */ void update();
|
||||
/* 80039DA4 */ static void update();
|
||||
/* 80039EDC */ void setBranchType(u16);
|
||||
/* 80039EEC */ void setBranchId(u16, s16);
|
||||
/* 80039F04 */ void reset();
|
||||
|
||||
static dDemo_actor_c* getActor(u8 param_0) { return m_object->getActor(param_0); }
|
||||
static u32 getFrameNoMsg() { return m_frameNoMsg; }
|
||||
static s32 getMode() { return m_mode; }
|
||||
static JStudio::stb::TControl* getControl() { return m_control; }
|
||||
@@ -29,7 +76,7 @@ struct dDemo_c {
|
||||
static u8 m_message[4];
|
||||
static u8 m_factory[4];
|
||||
static u8 m_mesgControl[4];
|
||||
static u8 m_object[4];
|
||||
static dDemo_object_c* m_object;
|
||||
static u8 m_data[4];
|
||||
static u8 m_frame[4];
|
||||
static u8 m_translation[4];
|
||||
|
||||
@@ -239,6 +239,8 @@ public:
|
||||
void setOpaListDark() { setOpaDrawList(mOpaListDark); }
|
||||
void setOpaList() { setOpaDrawList(mOpaList); }
|
||||
void setXluList() { setXluDrawList(mXluList); }
|
||||
void setOpaListItem3D() { setOpaDrawList(mOpaListItem3d); }
|
||||
void setXluListItem3D() { setXluDrawList(mXluListItem3d); }
|
||||
void setXluListBG() { setXluDrawList(mXluListBG); }
|
||||
void setOpaListBG() { setOpaDrawList(mOpaListBG); }
|
||||
void setXluList2DScreen() { setXluDrawList(mList2DScreen); }
|
||||
|
||||
+2
-1
@@ -385,8 +385,9 @@ s32 item_getcheck_func_KEY_OF_FILONE();
|
||||
s32 item_getcheck_func_noentry();
|
||||
|
||||
s32 checkItemGet(u8, int);
|
||||
BOOL isHeart(u8 item_no);
|
||||
s32 isBomb(u8);
|
||||
s32 isArrow(u8);
|
||||
void addBombCount(u8, u8);
|
||||
int addBombCount(u8, u8);
|
||||
|
||||
#endif /* D_D_ITEM_H */
|
||||
|
||||
@@ -54,6 +54,8 @@ struct dItem_data {
|
||||
|
||||
static s8 getBtpFrm(u8 index) { return item_resource[index].mBtpFrm; }
|
||||
|
||||
static s16 getTexture(u8 index) { return item_resource[index].mTexture; }
|
||||
|
||||
static char* getFieldArc(u8 index) { return field_item_res[index].mFieldArc; }
|
||||
|
||||
static s16 getItemBmdName(u8 index) { return field_item_res[index].mItemBmdName; }
|
||||
@@ -78,6 +80,8 @@ struct dItem_data {
|
||||
|
||||
static u8 getR(u8 index) { return item_info[index].mR; }
|
||||
|
||||
static u16 getFieldHeapSize(u8 index) { return field_item_res[index].mHeapSize; }
|
||||
|
||||
static dItem_itemResource item_resource[255];
|
||||
static dItem_fieldItemResource field_item_res[255];
|
||||
static dItem_itemInfo item_info[255];
|
||||
|
||||
+18
-6
@@ -12,14 +12,26 @@ struct STControl {
|
||||
init();
|
||||
}
|
||||
|
||||
/* 80032044 */ STControl(s16, s16, s16, s16, f32, f32, s16, s16);
|
||||
enum EStickDir {
|
||||
TRIG_LEFT = 1,
|
||||
TRIG_RIGHT,
|
||||
TRIG_UP = 4,
|
||||
TRIG_UP_LEFT,
|
||||
TRIG_UP_RIGHT,
|
||||
TRIG_DOWN = 8,
|
||||
TRIG_DOWN_LEFT,
|
||||
TRIG_DOWN_RIGHT,
|
||||
};
|
||||
|
||||
/* 80032044 */ STControl(s16 delayY, s16 delayX, s16 param_2, s16 param_3, f32 threshold,
|
||||
f32 param_5, s16 param_6, s16 param_7);
|
||||
/* 80032088 */ void setWaitParm(s16, s16, s16, s16, f32, f32, s16, s16);
|
||||
/* 800320AC */ void init();
|
||||
/* 800320FC */ void Xinit();
|
||||
/* 8003212C */ void Yinit();
|
||||
/* 8003215C */ virtual f32 getValueStick();
|
||||
/* 8003216C */ virtual s16 getAngleStick();
|
||||
/* 8003219C */ void checkTrigger();
|
||||
/* 8003219C */ u8 checkTrigger();
|
||||
/* 8003242C */ bool checkLeftTrigger();
|
||||
/* 800324A8 */ bool checkRightTrigger();
|
||||
/* 80032524 */ bool checkUpTrigger();
|
||||
@@ -27,14 +39,14 @@ struct STControl {
|
||||
|
||||
void setFirstWaitTime(s16 time) { mFirstWaitTime = time; }
|
||||
|
||||
/* 0x04 */ f32 field_0x04;
|
||||
/* 0x04 */ f32 mThreshold;
|
||||
/* 0x08 */ f32 field_0x08;
|
||||
/* 0x0C */ u8 field_0x0c;
|
||||
/* 0x0C */ u8 mDirectionTrig;
|
||||
/* 0x0D */ u8 field_0x0d;
|
||||
/* 0x0E */ s16 field_0x0e;
|
||||
/* 0x10 */ s16 field_0x10;
|
||||
/* 0x12 */ s16 field_0x12;
|
||||
/* 0x14 */ s16 field_0x14;
|
||||
/* 0x12 */ s16 mRepeatDelayY;
|
||||
/* 0x14 */ s16 mRepeatDelayX;
|
||||
/* 0x16 */ s16 field_0x16;
|
||||
/* 0x18 */ s16 mXwaitTimer;
|
||||
/* 0x1A */ s16 mYwaitTimer;
|
||||
|
||||
+1
-1
@@ -41,7 +41,7 @@ public:
|
||||
/* 8009C6DC */ dMdl_c* search(J3DModelData*, u16, dKy_tevstr_c*);
|
||||
/* 8009C724 */ dMdl_c* entry(J3DModelData*, u16, dKy_tevstr_c*);
|
||||
/* 8009C8D8 */ dMdl_c* entry(J3DModelData*, u16, int);
|
||||
/* 8009C7AC */ void create();
|
||||
/* 8009C7AC */ static void create();
|
||||
/* 8009C864 */ void remove();
|
||||
/* 8009C8C0 */ void reset();
|
||||
|
||||
|
||||
@@ -3,4 +3,6 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
u16* dPath_GetRoomPath(int param_0, int param_1);
|
||||
|
||||
#endif /* D_D_PATH_H */
|
||||
|
||||
+23
-2
@@ -210,6 +210,7 @@ public:
|
||||
/* 0x0C */ f32 field_0xc;
|
||||
/* 0x10 */ u8 field_0x10[10];
|
||||
/* 0x1A */ u8 mDefaultCamera;
|
||||
/* 0x1B */ u8 mBitSw;
|
||||
/* 0x1C */ u16 mMsg;
|
||||
}; // Size: 0x20
|
||||
|
||||
@@ -244,7 +245,9 @@ struct dStage_MapEvent_dt_c {
|
||||
u8 mType;
|
||||
u8 field_0x1[3 - 1];
|
||||
u8 field_0x3;
|
||||
u8 field_0x4[7 - 4];
|
||||
u8 field_0x4;
|
||||
u8 field_0x5;
|
||||
u8 field_0x6;
|
||||
u8 field_0x7;
|
||||
u8 field_0x8;
|
||||
u8 field_0x9;
|
||||
@@ -715,6 +718,7 @@ public:
|
||||
static void offNoChangeRoom() { data_80450D68 = false; }
|
||||
static void setProcID(u32 id) { mProcID = id; }
|
||||
static u32 getProcID() { return mProcID; }
|
||||
static int getStatusProcID(int i_roomNo) { return mStatus[i_roomNo].mProcID; }
|
||||
static void setFileList2(int i_roomNo, dStage_FileList2_dt_c* list) {
|
||||
mStatus[i_roomNo].mRoomDt.mFileList2Info = list;
|
||||
}
|
||||
@@ -855,6 +859,10 @@ s8 dStage_roomRead_dt_c_GetReverbStage(roomRead_class&, int);
|
||||
int dStage_changeScene(int, f32, u32, s8, s16, int);
|
||||
void dStage_infoCreate();
|
||||
u8 dStage_stagInfo_GetParticleNo(stage_stag_info_class* p_info, int layer);
|
||||
int dStage_changeSceneExitId(cBgS_PolyInfo& param_0, f32 speed, u32 mode, s8 roomNo, s16 angle);
|
||||
int dStage_changeScene4Event(int i_exitId, s8 room_no, int i_wipe, bool param_3, f32 speed,
|
||||
u32 mode, s16 angle, int param_7);
|
||||
void dStage_Create();
|
||||
|
||||
inline s32 dStage_roomRead_dt_c_GetVrboxswitch(roomRead_data_class& data) {
|
||||
return data.field_0x2 & 8;
|
||||
@@ -895,11 +903,16 @@ inline s16 dStage_stagInfo_GetUpButton(stage_stag_info_class* p_info) {
|
||||
inline u32 dStage_stagInfo_GetArg0(stage_stag_info_class* p_info) {
|
||||
return (p_info->field_0x0c >> 0x14) & 0xFF;
|
||||
}
|
||||
|
||||
inline int dStage_stagInfo_GetMsgGroup(stage_stag_info_class* p_info) {
|
||||
return p_info->mMsgGroup;
|
||||
}
|
||||
|
||||
inline u32 dStage_sclsInfo_getSceneLayer(stage_scls_info_class* p_info) {
|
||||
return p_info->field_0xb & 0xF;
|
||||
}
|
||||
|
||||
inline s8 dStage_sclsInfo_getWipe(stage_scls_info_class* p_info) {
|
||||
inline s32 dStage_sclsInfo_getWipe(stage_scls_info_class* p_info) {
|
||||
return p_info->mWipe;
|
||||
}
|
||||
|
||||
@@ -915,6 +928,14 @@ inline u32 dStage_FileList_dt_getMiniMap(dStage_FileList_dt_c* p_fList) {
|
||||
return p_fList->mParameters >> 3 & 7;
|
||||
}
|
||||
|
||||
inline u32 dStage_FileList_dt_GetEnemyAppear1Flag(dStage_FileList_dt_c* p_fList) {
|
||||
return p_fList->mParameters & 0x20000000;
|
||||
}
|
||||
|
||||
inline int dStage_FileList_dt_GetBitSw(dStage_FileList_dt_c* p_fList) {
|
||||
return p_fList->mBitSw;
|
||||
}
|
||||
|
||||
inline int dStage_MapEvent_dt_c_getEventSCutSW(dStage_MapEvent_dt_c* event) {
|
||||
return event->field_0x8 & 1;
|
||||
}
|
||||
|
||||
+26
-13
@@ -21,8 +21,17 @@ public:
|
||||
class typeGroupData_c {
|
||||
public:
|
||||
data_s* getDataPointer() { return &mData; }
|
||||
typeGroupData_c* getNextDataPointer() const { return mNextData; }
|
||||
void setNextDataPointer(typeGroupData_c* data) { mNextData = data; }
|
||||
void setTypeGroupNo(u8 no) { mTypeGroupNo = no; }
|
||||
u8 getNo() const { return mData.mNo; }
|
||||
u8 getStatus() const { return mData.mStatus; }
|
||||
void setStatus(u8 status) { mData.mStatus = status; }
|
||||
void setRoomNo(s8 roomNo) { mData.mRoomNo = roomNo; }
|
||||
s8 getRoomNo() const { return mData.mRoomNo; }
|
||||
void setPos(const Vec& pos) { mData.mPos = pos; }
|
||||
u8 getSwBit() const { return mData.mSwBit; }
|
||||
const Vec* getPos() const { return &mData.mPos; }
|
||||
|
||||
/* 0x00 */ data_s mData;
|
||||
/* 0x14 */ typeGroupData_c* mNextData;
|
||||
@@ -30,28 +39,32 @@ public:
|
||||
}; // Size: 0x1C
|
||||
|
||||
struct list_class {
|
||||
/* 0x0 */ int field_0x0;
|
||||
/* 0x0 */ typeGroupData_c* field_0x0;
|
||||
/* 0x4 */ typeGroupData_c* field_0x4;
|
||||
/* 0x8 */ u8 field_0x8;
|
||||
/* 0x8 */ u8 mNumber;
|
||||
};
|
||||
|
||||
/* 8009BBD8 */ static int createWork();
|
||||
/* 8009BC18 */ static void create();
|
||||
/* 8009BC60 */ void remove();
|
||||
/* 8009BC60 */ static void remove();
|
||||
/* 8009BC6C */ static void reset();
|
||||
/* 8009BCB4 */ static void addData(dTres_c::list_class*, s8);
|
||||
/* 8009BE28 */ static void checkTreasureBox(dTres_c::data_s*);
|
||||
/* 8009C168 */ void onStatus(u8, int, int);
|
||||
/* 8009C1F0 */ void offStatus(u8, int, int);
|
||||
/* 8009C27C */ void getBossIconFloorNo(int*);
|
||||
/* 8009C360 */ void getFirstData(u8);
|
||||
/* 8009C39C */ void getNextData(dTres_c::typeGroupData_c*);
|
||||
/* 8009C3B4 */ void getNextData(dTres_c::typeGroupData_c const*);
|
||||
/* 8009C3CC */ void setPosition(int, u8, Vec const*, int);
|
||||
/* 8009C49C */ void getTypeGroupNoToType(u8);
|
||||
/* 8009C4B0 */ static u8 getTypeToTypeGroupNo(u8);
|
||||
/* 8009C168 */ static void onStatus(u8, int, int);
|
||||
/* 8009C1F0 */ static void offStatus(u8, int, int);
|
||||
/* 8009C27C */ static int getBossIconFloorNo(int*);
|
||||
/* 8009C360 */ static typeGroupData_c* getFirstData(u8);
|
||||
/* 8009C39C */ static typeGroupData_c* getNextData(dTres_c::typeGroupData_c*);
|
||||
/* 8009C3B4 */ static typeGroupData_c* getNextData(dTres_c::typeGroupData_c const*);
|
||||
/* 8009C3CC */ static void setPosition(int, u8, Vec const*, int);
|
||||
/* 8009C49C */ static int getTypeGroupNoToType(u8);
|
||||
/* 8009C4B0 */ static int getTypeToTypeGroupNo(u8);
|
||||
|
||||
static u8 const typeToTypeGroup[34];
|
||||
static int getTypeGroupNumber(int index) {
|
||||
return mTypeGroupListAll[index].mNumber;
|
||||
}
|
||||
|
||||
static u8 const typeToTypeGroup[17][2];
|
||||
static list_class mTypeGroupListAll[17];
|
||||
static typeGroupData_c* mTypeGroupData;
|
||||
static u16 mNum;
|
||||
|
||||
+38
-31
@@ -13,15 +13,15 @@ public:
|
||||
~dEvt_order_c() {}
|
||||
dEvt_order_c();
|
||||
|
||||
/* 0x00 */ u16 mEventType;
|
||||
/* 0x02 */ u16 mFlag;
|
||||
/* 0x04 */ s16 field_0x04;
|
||||
/* 0x08 */ fopAc_ac_c* mActor1;
|
||||
/* 0x0C */ fopAc_ac_c* mActor2;
|
||||
/* 0x10 */ s16 mEventId;
|
||||
/* 0x12 */ s16 mPriority;
|
||||
/* 0x14 */ u8 mNextOrderIdx;
|
||||
/* 0x15 */ u8 mEventInfoIdx;
|
||||
/* 0x00 */ u16 mEventType;
|
||||
/* 0x02 */ u16 mFlag;
|
||||
/* 0x04 */ u16 field_0x04;
|
||||
/* 0x08 */ fopAc_ac_c* mActor1;
|
||||
/* 0x0C */ fopAc_ac_c* mActor2;
|
||||
/* 0x10 */ s16 mEventId;
|
||||
/* 0x12 */ u16 mPriority;
|
||||
/* 0x14 */ s8 mNextOrderIdx;
|
||||
/* 0x15 */ u8 mEventInfoIdx;
|
||||
}; // Size = 0x18
|
||||
|
||||
STATIC_ASSERT(sizeof(dEvt_order_c) == 0x18);
|
||||
@@ -31,24 +31,25 @@ typedef int (*SkipFunc)(void*, int);
|
||||
class dEvt_control_c {
|
||||
public:
|
||||
dEvt_control_c();
|
||||
bool orderOld(u16, u16, u16, u16, void*, void*, void const*);
|
||||
bool order(u16, u16, u16, u16, void*, void*, s16, u8);
|
||||
s32 orderOld(u16, u16, u16, u16, void*, void*, void const*);
|
||||
s32 order(u16 eventType, u16 priority, u16 flag, u16 param_3, void* param_4,
|
||||
void* param_5, s16 eventID, u8 infoIdx);
|
||||
void setParam(dEvt_order_c*);
|
||||
s32 beforeFlagProc(dEvt_order_c*);
|
||||
void afterFlagProc(dEvt_order_c*);
|
||||
int commonCheck(dEvt_order_c*, u16, u16);
|
||||
void talkCheck(dEvt_order_c*);
|
||||
void talkXyCheck(dEvt_order_c*);
|
||||
void catchCheck(dEvt_order_c*);
|
||||
int talkCheck(dEvt_order_c*);
|
||||
int talkXyCheck(dEvt_order_c*);
|
||||
int catchCheck(dEvt_order_c*);
|
||||
void talkEnd();
|
||||
void demoCheck(dEvt_order_c*);
|
||||
int demoCheck(dEvt_order_c*);
|
||||
void demoEnd();
|
||||
s32 potentialCheck(dEvt_order_c*);
|
||||
void doorCheck(dEvt_order_c*);
|
||||
int potentialCheck(dEvt_order_c*);
|
||||
int doorCheck(dEvt_order_c*);
|
||||
int itemCheck(dEvt_order_c*);
|
||||
int endProc();
|
||||
void change();
|
||||
void entry();
|
||||
int change();
|
||||
int entry();
|
||||
void reset(void*);
|
||||
void reset();
|
||||
void clearSkipSystem();
|
||||
@@ -57,9 +58,9 @@ public:
|
||||
void setSkipZev(void*, char*);
|
||||
void onSkipFade();
|
||||
void offSkipFade();
|
||||
void skipper();
|
||||
void Step();
|
||||
void moveApproval(void*);
|
||||
bool skipper();
|
||||
int Step();
|
||||
int moveApproval(void*);
|
||||
BOOL compulsory(void*, char const*, u16);
|
||||
void remove();
|
||||
dStage_MapEvent_dt_c* getStageEventDt();
|
||||
@@ -80,17 +81,23 @@ public:
|
||||
void isOrderOK();
|
||||
|
||||
u16 chkFlag2(u16 flag) { return flag & mFlag2; }
|
||||
bool runCheck() { return field_0xe5 != 0; }
|
||||
bool runCheck() { return mEventStatus != 0; }
|
||||
u16 chkEventFlag(u16 flag) { return flag & mEventFlag; }
|
||||
void onEventFlag(u16 flag) { mEventFlag |= flag; }
|
||||
void offEventFlag(u16 flag) { mEventFlag &= ~flag; }
|
||||
u8 getMode() const { return mMode; }
|
||||
u16 checkHind(u16 flag) { return flag & mHindFlag; }
|
||||
u8 checkCompulsory() { return mCompulsory; }
|
||||
u8 getMapToolId() { return mMapToolId; }
|
||||
void onFlag2(u16 flag) { mFlag2 |= flag; }
|
||||
void offFlag2(u16 flag) { mFlag2 &= ~flag; }
|
||||
void setCullRate(f32 f) { mCullRate = f; }
|
||||
|
||||
bool i_isOrderOK() { return field_0xe5 == 0 || field_0xe5 == 2; }
|
||||
bool i_isOrderOK() { return mEventStatus == 0 || mEventStatus == 2; }
|
||||
void* getPt1() { return convPId(mPt1); }
|
||||
void* getPt2() { return convPId(mPt2); }
|
||||
void* getPtT() { return convPId(mPtT); }
|
||||
bool isChangeOK(void* param_0) { return mChangeOK == param_0; }
|
||||
|
||||
public:
|
||||
/* 0x000 */ u8 field_0x0[4];
|
||||
@@ -105,10 +112,10 @@ public:
|
||||
/* 0x0DC */ u16 mHindFlag;
|
||||
/* 0x0DE */ s16 mSpecifiedEvent; // name maybe wrong
|
||||
/* 0x0E0 */ s16 field_0xe0;
|
||||
/* 0x0E2 */ u8 mNum;
|
||||
/* 0x0E3 */ u8 field_0xe3;
|
||||
/* 0x0E2 */ s8 mNum;
|
||||
/* 0x0E3 */ s8 field_0xe3;
|
||||
/* 0x0E4 */ u8 mMode;
|
||||
/* 0x0E5 */ u8 field_0xe5;
|
||||
/* 0x0E5 */ u8 mEventStatus;
|
||||
/* 0x0E6 */ u8 field_0xe6;
|
||||
/* 0x0E7 */ u8 field_0xe7;
|
||||
/* 0x0E8 */ u8 field_0xe8;
|
||||
@@ -119,19 +126,19 @@ public:
|
||||
/* 0x0ED */ u8 field_0xed;
|
||||
/* 0x0EE */ u8 mPreItemNo;
|
||||
/* 0x0EF */ u8 mGtItm;
|
||||
/* 0x0F0 */ float mCullRate;
|
||||
/* 0x0F0 */ f32 mCullRate;
|
||||
/* 0x0F4 */ dStage_MapEvent_dt_c* mStageEventDt;
|
||||
/* 0x0F8 */ void* mChangeOK;
|
||||
/* 0x0FC */ u8 field_0xfc[4];
|
||||
/* 0x100 */ SkipFunc mSkipFunc;
|
||||
/* 0x104 */ u32 field_0x104;
|
||||
/* 0x108 */ u32 field_0x108;
|
||||
/* 0x10C */ u32 field_0x10c;
|
||||
/* 0x108 */ int mSkipTimer;
|
||||
/* 0x10C */ int field_0x10c;
|
||||
/* 0x110 */ int mSkipFade;
|
||||
/* 0x114 */ char mSkipEventName[20];
|
||||
/* 0x128 */ u8 mCompulsory;
|
||||
/* 0x129 */ bool field_0x129;
|
||||
/* 0x12C */ int field_0x12c;
|
||||
/* 0x12C */ int mRoomNo;
|
||||
}; // Size = 0x130
|
||||
|
||||
int dEv_defaultSkipProc(void* param_0, int param_1);
|
||||
|
||||
@@ -67,11 +67,11 @@ public:
|
||||
int ChkPresentEnd();
|
||||
int checkStartDemo();
|
||||
|
||||
void setStartDemo(int param_0) { mEventException.setStartDemo(param_0); }
|
||||
int setStartDemo(int param_0) { return mEventException.setStartDemo(param_0); }
|
||||
void setCameraPlay(int status) { mCameraPlay = status; }
|
||||
dEvDtBase_c& getBase() { return mEventList[mCurrentEventType]; }
|
||||
|
||||
void setFlag(int flag) { mFlags.flagSet(flag); }
|
||||
bool dataLoaded() { return mDataLoaded; }
|
||||
int flagCheck(int flag) { return mFlags.flagCheck(flag); }
|
||||
|
||||
static int getIndexCompositId(s16 param_0) { return param_0 != -1 ? (u8)param_0 : -1; }
|
||||
|
||||
@@ -1,6 +1,25 @@
|
||||
#ifndef D_FILE_D_FILE_SEL_WARNING_H
|
||||
#define D_FILE_D_FILE_SEL_WARNING_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
|
||||
class dFile_warning_c {
|
||||
public:
|
||||
/* 80191BAC */ dFile_warning_c(JKRArchive*, u8);
|
||||
/* 80191CF4 */ void screenSet();
|
||||
/* 80191F18 */ void _move();
|
||||
/* 80191F90 */ void modeWait();
|
||||
/* 80191F94 */ void modeMove();
|
||||
/* 80191FD4 */ void baseMoveAnm();
|
||||
/* 801920B8 */ void openInit();
|
||||
/* 8019210C */ void closeInit();
|
||||
/* 80192160 */ void init();
|
||||
/* 80192190 */ void _draw();
|
||||
/* 801921CC */ void drawSelf();
|
||||
/* 801921F8 */ void setText(u32);
|
||||
/* 80192240 */ void setFontColor(JUtility::TColor, JUtility::TColor);
|
||||
|
||||
/* 80191C18 */ virtual ~dFile_warning_c();
|
||||
};
|
||||
|
||||
#endif /* D_FILE_D_FILE_SEL_WARNING_H */
|
||||
|
||||
@@ -24,6 +24,7 @@ s32 dKy_daynight_check();
|
||||
void dKy_clear_game_init();
|
||||
void dKy_setLight_init();
|
||||
u8 dKy_pol_sound_get(cBgS_PolyInfo const* param_0);
|
||||
void dKy_depth_dist_set(void* param_0);
|
||||
void dKy_instant_rainchg();
|
||||
void dKy_instant_timechg(f32);
|
||||
|
||||
@@ -507,5 +508,8 @@ void dKy_setLight_nowroom(char);
|
||||
void dKy_setLight_nowroom_actor(dKy_tevstr_c*);
|
||||
void dKy_setLight_again();
|
||||
void dKy_GxFog_tevstr_set(dKy_tevstr_c*);
|
||||
void dKy_plight_set(LIGHT_INFLUENCE* param_0);
|
||||
void dKy_tevstr_init(dKy_tevstr_c* param_0, s8 param_1, u8 param_2);
|
||||
SND_INFLUENCE* dKy_Sound_get();
|
||||
|
||||
#endif /* D_KANKYO_D_KANKYO_H */
|
||||
|
||||
@@ -13,7 +13,7 @@ public:
|
||||
/* 8003F7E8 */ static void createWork();
|
||||
/* 8003FA40 */ void setPointer(s8, void*, int);
|
||||
/* 8003F810 */ void setPointer(dDrawPath_c::room_class*, s8*, s8*);
|
||||
/* 8003FB70 */ void create();
|
||||
/* 8003FB70 */ static void create();
|
||||
/* 8003FBD0 */ void reset();
|
||||
/* 8003FC70 */ void remove();
|
||||
|
||||
|
||||
+133
-42
@@ -5,37 +5,133 @@
|
||||
#include "d/d_lib.h"
|
||||
#include "d/d_select_cursor.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "m_Do/m_Do_dvd_thread.h"
|
||||
|
||||
class dMsgString_c;
|
||||
class mDoDvdThd_command_c;
|
||||
class dFile_warning_c;
|
||||
class dFile_info_c;
|
||||
class dMsgScrnExplain_c;
|
||||
|
||||
class dDlst_MenuSaveExplain_c : public dDlst_base_c {
|
||||
public:
|
||||
dDlst_MenuSaveExplain_c() { mpScrn = NULL; }
|
||||
|
||||
/* 801F6ADC */ virtual void draw();
|
||||
/* 801F6B8C */ virtual ~dDlst_MenuSaveExplain_c();
|
||||
|
||||
void setScrnExplain(dMsgScrnExplain_c* p_scrn) { mpScrn = p_scrn; }
|
||||
|
||||
private:
|
||||
/* 0x4 */ int field_0x4;
|
||||
/* 0x4 */ dMsgScrnExplain_c* mpScrn;
|
||||
};
|
||||
|
||||
class dDlst_MenuSave_c : public dDlst_base_c {
|
||||
public:
|
||||
dDlst_MenuSave_c() {
|
||||
Scr = NULL;
|
||||
mMsgString = NULL;
|
||||
}
|
||||
|
||||
/* 801F6B0C */ virtual void draw();
|
||||
/* 801F6B44 */ virtual ~dDlst_MenuSave_c();
|
||||
|
||||
/* 0x04 */ J2DScreen* Scr;
|
||||
/* 0x08 */ JUTFont* font[2];
|
||||
/* 0x10 */ dMsgString_c* mMsgString;
|
||||
};
|
||||
|
||||
class dMs_HIO_c {
|
||||
public:
|
||||
/* 801EF654 */ dMs_HIO_c();
|
||||
/* 801F6BD4 */ virtual ~dMs_HIO_c();
|
||||
|
||||
/* 0x4 */ s8 field_0x4;
|
||||
/* 0x5 */ u8 mDisplayWaitFrames;
|
||||
/* 0x6 */ u8 mCardWaitFrames;
|
||||
/* 0x7 */ u8 mEffectDispFrames;
|
||||
/* 0x8 */ u8 mCharSwitchFrames;
|
||||
/* 0x9 */ u8 mSelectIcon;
|
||||
/* 0xA */ u8 mSelectFrames;
|
||||
/* 0xB */ u8 mFadeOutTimer;
|
||||
/* 0xC */ bool mTitleMsgCheck;
|
||||
/* 0xD */ u8 field_0xd;
|
||||
/* 0xE */ bool mErrorMsgCheck;
|
||||
/* 0xF */ u8 field_0xf;
|
||||
};
|
||||
|
||||
class dMenu_save_c {
|
||||
public:
|
||||
enum {
|
||||
/* 0x00 */ PROC_SAVE_QUESTION,
|
||||
/* 0x01 */ PROC_SAVE_QUESTION2,
|
||||
/* 0x02 */ PROC_SAVE_QUESTION21,
|
||||
/* 0x03 */ PROC_SAVE_QUESTION3,
|
||||
/* 0x04 */ PROC_SAVE_QUESTION4,
|
||||
/* 0x05 */ PROC_SAVE_GUIDE,
|
||||
/* 0x06 */ PROC_MEMCARD_CHECK,
|
||||
/* 0x07 */ PROC_BACK_SAVE_QUESTION,
|
||||
/* 0x08 */ PROC_BACK_SAVE_QUESTION2,
|
||||
/* 0x09 */ PROC_MEMCARD_ERRMSG_WAIT_KEY,
|
||||
/* 0x0A */ PROC_IPL_SELECT_DISP1,
|
||||
/* 0x0B */ PROC_IPL_SELECT_DISP2,
|
||||
/* 0x0C */ PROC_MEMCARD_ERR_GO_IPL_SEL,
|
||||
/* 0x0D */ PROC_IPL_SELECT2_DISP,
|
||||
/* 0x0E */ PROC_MEMCARD_ERR_GO_IPL_SEL2,
|
||||
/* 0x0F */ PROC_MEMCARD_ERR_GOTO_IPL,
|
||||
/* 0x10 */ PROC_MEMCARD_ERRMSG_WAIT_FORMAT_SEL,
|
||||
/* 0x11 */ PROC_CARD_FORMAT_YES_SEL_DISP,
|
||||
/* 0x12 */ PROC_CARD_FORMAT_NO_SEL_DISP,
|
||||
/* 0x13 */ PROC_MEMCARD_ERRMSG_WAIT_FORMAT_SEL2,
|
||||
/* 0x14 */ PROC_CARD_FORMAT_YES_SEL2_DISP,
|
||||
/* 0x15 */ PROC_MEMCARD_FORMAT,
|
||||
/* 0x16 */ PROC_MEMCARD_FORMAT_WAIT,
|
||||
/* 0x17 */ PROC_MAKE_GAME_FILE_SEL_DISP,
|
||||
/* 0x18 */ PROC_MEMCARD_MAKE_GAME_FILE_SEL,
|
||||
/* 0x19 */ PROC_MAKE_GAME_FILE_DISP,
|
||||
/* 0x1A */ PROC_MEMCARD_MAKE_GAME_FILE,
|
||||
/* 0x1B */ PROC_MEMCARD_MAKE_GAME_FILE_WAIT,
|
||||
/* 0x1C */ PROC_MEMCARD_COMMAND_END,
|
||||
/* 0x1D */ PROC_MEMCARD_COMMAND_END2,
|
||||
/* 0x1E */ PROC_MEMCARD_DATA_LOAD_WAIT,
|
||||
/* 0x1F */ PROC_MEMCARD_DATA_SAVE_WAIT,
|
||||
/* 0x20 */ PROC_MEMCARD_DATA_SAVE_WAIT2,
|
||||
/* 0x21 */ PROC_GAME_CONTINUE_DISP,
|
||||
/* 0x22 */ PROC_GAME_CONTINUE,
|
||||
/* 0x23 */ PROC_GAME_CONTINUE2,
|
||||
/* 0x24 */ PROC_GAME_CONTINUE3,
|
||||
/* 0x25 */ PROC_SAVE_END,
|
||||
/* 0x26 */ PROC_ENDING_NO_SAVE,
|
||||
/* 0x27 */ PROC_ENDING_NO_SAVE2,
|
||||
/* 0x28 */ PROC_ENDING_DATA_CHECK,
|
||||
/* 0x29 */ PROC_SAVE_WAIT,
|
||||
/* 0x2A */ PROC_MESSAGE_CHANGE,
|
||||
/* 0x2B */ PROC_RETRY_QUESTION0,
|
||||
/* 0x2C */ PROC_RETRY_QUESTION1,
|
||||
/* 0x2D */ PROC_RETRY_QUESTION2,
|
||||
/* 0x2E */ PROC_OPEN_SAVE_SELECT,
|
||||
/* 0x2F */ PROC_OPEN_SAVE_SELECT2,
|
||||
/* 0x30 */ PROC_OPEN_SAVE_SELECT3,
|
||||
/* 0x31 */ PROC_SAVE_SELECT,
|
||||
/* 0x32 */ PROC_SAVE_SELECT_MOVE_ANM,
|
||||
/* 0x33 */ PROC_SELECT_DATA_OPEN_MOVE,
|
||||
/* 0x34 */ PROC_SAVE_YES_NO_SELECT,
|
||||
/* 0x35 */ PROC_YES_NO_CURSOR_MOVE_ANM,
|
||||
/* 0x36 */ PROC_SAVE_YES_NO_CANCEL_MOVE,
|
||||
/* 0x37 */ PROC_SAVE_MOVE_DISP,
|
||||
/* 0x38 */ PROC_SAVE_MOVE_DISP2,
|
||||
/* 0x39 */ PROC_MSG_WINDOW_INIT_OPEN,
|
||||
/* 0x3A */ PROC_MSG_WINDOW_OPEN,
|
||||
/* 0x3B */ PROC_MSG_WINDOW_CLOSE,
|
||||
/* 0x3C */ PROC_ERR_YES_NO_CURSOR_MOVE_ANM,
|
||||
};
|
||||
|
||||
/* 801EF6A0 */ dMenu_save_c();
|
||||
/* 801EF7AC */ void _create();
|
||||
/* 801EF904 */ void screenSet();
|
||||
/* 801F0938 */ void initialize();
|
||||
/* 801F0958 */ void displayInit();
|
||||
/* 801F09AC */ bool _open();
|
||||
/* 801F0B10 */ void _close();
|
||||
/* 801F0B10 */ int _close();
|
||||
/* 801F0B28 */ void _delete();
|
||||
/* 801F1048 */ void _move();
|
||||
/* 801F1100 */ void saveSelAnm();
|
||||
@@ -96,7 +192,7 @@ public:
|
||||
/* 801F30B8 */ void restartInit();
|
||||
/* 801F31B0 */ void saveWait();
|
||||
/* 801F31B4 */ void messageChange();
|
||||
/* 801F328C */ void YesNoSelect();
|
||||
/* 801F328C */ int YesNoSelect();
|
||||
/* 801F34BC */ void msgTxtSet(u16, bool);
|
||||
/* 801F3588 */ void openSaveSelect();
|
||||
/* 801F36B4 */ void openSaveSelect2();
|
||||
@@ -120,11 +216,11 @@ public:
|
||||
/* 801F4B84 */ void msgWindowInitOpen();
|
||||
/* 801F4D10 */ void msgWindowOpen();
|
||||
/* 801F4DAC */ void msgWindowClose();
|
||||
/* 801F4E48 */ void errYesNoSelect(u8, u8);
|
||||
/* 801F4E48 */ bool errYesNoSelect(u8, u8);
|
||||
/* 801F4FB4 */ void errCurMove(u8, u8);
|
||||
/* 801F5054 */ void errYesNoCursorMoveAnm();
|
||||
/* 801F50C4 */ void errorTxtSet(u16);
|
||||
/* 801F5190 */ void errorTxtChangeAnm();
|
||||
/* 801F5190 */ bool errorTxtChangeAnm();
|
||||
/* 801F5278 */ void saveSelectOpenInit();
|
||||
/* 801F533C */ void selectDataBaseMoveAnmInitSet(int, int);
|
||||
/* 801F53D4 */ void selectDataBaseMoveAnm();
|
||||
@@ -132,7 +228,7 @@ public:
|
||||
/* 801F5508 */ void selectDataMoveAnmInitSet(int, int);
|
||||
/* 801F5600 */ void selectDataMoveAnm();
|
||||
/* 801F5744 */ void yesnoMenuMoveAnmInitSet(int, int, u8);
|
||||
/* 801F58C8 */ void yesnoMenuMoveAnm();
|
||||
/* 801F58C8 */ bool yesnoMenuMoveAnm();
|
||||
/* 801F5AE4 */ void yesnoSelectMoveAnm(u8);
|
||||
/* 801F5D84 */ void yesnoCursorShow();
|
||||
/* 801F5EF4 */ void errorMoveAnmInitSet(int, int);
|
||||
@@ -140,7 +236,7 @@ public:
|
||||
/* 801F60A4 */ void modoruTxtDispAnmInit(u8);
|
||||
/* 801F6120 */ void modoruTxtDispAnm();
|
||||
/* 801F61FC */ void ketteiTxtDispAnmInit(u8);
|
||||
/* 801F6278 */ void ketteiTxtDispAnm();
|
||||
/* 801F6278 */ bool ketteiTxtDispAnm();
|
||||
/* 801F6354 */ void selectWakuAlpahAnmInit(u8, u8, u8, u8);
|
||||
/* 801F6390 */ void selectWakuAlpahAnm(u8);
|
||||
/* 801F6458 */ void selFileCursorShow();
|
||||
@@ -157,38 +253,33 @@ public:
|
||||
u8 getSaveStatus() { return mSaveStatus; }
|
||||
void setUseType(u8 type) { mUseType = type; }
|
||||
|
||||
struct SaveSel {
|
||||
/* 0x00 */ J2DScreen* Scr;
|
||||
/* 0x04 */ JUTFont* font[2];
|
||||
/* 0x0C */ dMsgString_c* mMsgString;
|
||||
}; // Size: 0x10
|
||||
|
||||
private:
|
||||
/* 0x0004 */ JKRArchive* field_0x4;
|
||||
/* 0x0008 */ mDoDvdThd_command_c* field_0x8;
|
||||
/* 0x0004 */ JKRArchive* mpArchive;
|
||||
/* 0x0008 */ mDoDvdThd_mountArchive_c* mpMount;
|
||||
/* 0x000C */ STControl* stick;
|
||||
/* 0x0010 */ dDlst_MenuSaveExplain_c field_0x10;
|
||||
/* 0x0018 */ dDlst_MenuSave_c field_0x18;
|
||||
/* 0x001C */ SaveSel mSaveSel;
|
||||
/* 0x0010 */ dDlst_MenuSaveExplain_c mMenuSaveExplain;
|
||||
/* 0x0018 */ dDlst_MenuSave_c mMenuSave;
|
||||
/* 0x002C */ dSelect_cursor_c* mSelIcon;
|
||||
/* 0x0030 */ dFile_warning_c* field_0x30;
|
||||
/* 0x0034 */ dFile_info_c* field_0x34[3];
|
||||
/* 0x0040 */ void* field_0x40;
|
||||
/* 0x0044 */ void* field_0x44;
|
||||
/* 0x0048 */ void* field_0x48;
|
||||
/* 0x004C */ void* field_0x4c;
|
||||
/* 0x0030 */ dFile_warning_c* mWarning;
|
||||
/* 0x0034 */ dFile_info_c* mFileInfo[3];
|
||||
/* 0x0040 */ J2DAnmTransformKey* field_0x40;
|
||||
/* 0x0044 */ J2DAnmTransformKey* field_0x44;
|
||||
/* 0x0048 */ J2DAnmTransformKey* field_0x48;
|
||||
/* 0x004C */ J2DAnmTransformKey* field_0x4c;
|
||||
/* 0x0050 */ s32 field_0x50;
|
||||
/* 0x0054 */ u8 field_0x54;
|
||||
/* 0x0058 */ CPaneMgr* field_0x58;
|
||||
/* 0x005C */ int field_0x5c;
|
||||
/* 0x0060 */ int field_0x60;
|
||||
/* 0x0064 */ u8 field_0x64;
|
||||
/* 0x0064 */ u8 field_0x65;
|
||||
/* 0x0065 */ u8 field_0x65;
|
||||
/* 0x0068 */ CPaneMgr* field_0x68[3];
|
||||
/* 0x0074 */ u8 field_0x74[0x10];
|
||||
/* 0x0084 */ CPaneMgr* field_0x84[2];
|
||||
/* 0x008C */ u8 field_0x8c[0x10];
|
||||
/* 0x009C */ u8 field_0x9c;
|
||||
/* 0x009D */ u8 field_0x9d;
|
||||
/* 0x009E */ u8 field_0x9e;
|
||||
/* 0x00A0 */ int field_0xa0;
|
||||
/* 0x00A4 */ u8 field_0xa4[0x10];
|
||||
/* 0x00B4 */ J2DPane* field_0xb4;
|
||||
@@ -197,7 +288,7 @@ private:
|
||||
/* 0x00C0 */ CPaneMgr* field_0xc0[2];
|
||||
/* 0x00C8 */ char* field_0xc8[2];
|
||||
/* 0x00D0 */ u8 field_0xd0;
|
||||
/* 0x00D2 */ u8 field_0xd1;
|
||||
/* 0x00D1 */ u8 field_0xd1;
|
||||
/* 0x00D2 */ u8 field_0xd2;
|
||||
/* 0x00D3 */ u8 field_0xd3;
|
||||
/* 0x00D4 */ CPaneMgr* field_0xd4[3];
|
||||
@@ -215,22 +306,24 @@ private:
|
||||
/* 0x0132 */ u8 field_0x132[2];
|
||||
/* 0x0134 */ u8 field_0x134[2];
|
||||
/* 0x0138 */ CPaneMgr* field_0x138[2];
|
||||
/* 0x0140 */ void* field_0x140;
|
||||
/* 0x0140 */ J2DAnmColorKey* field_0x140;
|
||||
/* 0x0144 */ int field_0x144;
|
||||
/* 0x0148 */ void* field_0x148;
|
||||
/* 0x0148 */ J2DAnmTextureSRTKey* field_0x148;
|
||||
/* 0x014C */ int field_0x14c;
|
||||
/* 0x0150 */ void* field_0x150;
|
||||
/* 0x0150 */ J2DAnmColorKey* field_0x150;
|
||||
/* 0x0154 */ int field_0x154;
|
||||
/* 0x0158 */ void* field_0x158;
|
||||
/* 0x0158 */ J2DAnmTextureSRTKey* field_0x158;
|
||||
/* 0x015C */ int field_0x15c;
|
||||
/* 0x0160 */ void* field_0x160;
|
||||
/* 0x0160 */ J2DAnmTevRegKey* field_0x160;
|
||||
/* 0x0164 */ int field_0x164;
|
||||
/* 0x0168 */ CPaneMgr* field_0x168[2];
|
||||
/* 0x0170 */ u8 field_0x170[8];
|
||||
/* 0x0170 */ char* field_0x170[2];
|
||||
/* 0x0178 */ u8 field_0x178;
|
||||
/* 0x0179 */ u8 field_0x179;
|
||||
/* 0x017A */ u8 field_0x17a;
|
||||
/* 0x017B */ u8 field_0x17b[0x19];
|
||||
/* 0x017B */ u8 field_0x17b;
|
||||
/* 0x017C */ CPaneMgr* field_0x17c[3];
|
||||
/* 0x0188 */ CPaneMgr* field_0x188[3];
|
||||
/* 0x0194 */ CPaneMgr* field_0x194;
|
||||
/* 0x0198 */ CPaneMgr* field_0x198;
|
||||
/* 0x019C */ u8 field_0x19c;
|
||||
@@ -243,7 +336,7 @@ private:
|
||||
/* 0x01AD */ u8 field_0x1ad[3];
|
||||
/* 0x01B0 */ u8 field_0x1b0;
|
||||
/* 0x01B1 */ u8 field_0x1b1;
|
||||
/* 0x01B2 */ u8 field_0x1b2;
|
||||
/* 0x01B2 */ u8 mMenuProc;
|
||||
/* 0x01B3 */ u8 field_0x1b3;
|
||||
/* 0x01B4 */ u8 field_0x1b4;
|
||||
/* 0x01B5 */ u8 field_0x1b5;
|
||||
@@ -254,21 +347,19 @@ private:
|
||||
/* 0x01BA */ u8 mSaveStatus;
|
||||
/* 0x01BB */ u8 mEndStatus;
|
||||
/* 0x01BC */ u8 mUseType;
|
||||
/* 0x01BD */ u8 field_0x1bd;
|
||||
/* 0x01BD */ u8 mWaitTimer;
|
||||
/* 0x01BE */ u8 field_0x1be;
|
||||
/* 0x01BF */ u8 field_0x1bf;
|
||||
/* 0x01C0 */ u8 field_0x1c0;
|
||||
/* 0x01C4 */ int field_0x1c4;
|
||||
/* 0x01C8 */ int field_0x1c8;
|
||||
/* 0x01CC */ void* field_0x1cc;
|
||||
/* 0x01D0 */ u8 field_0x1d0[0xA94 * 3];
|
||||
/* 0x01CC */ void (dMenu_save_c::*field_0x1cc)();
|
||||
/* 0x01D0 */ u8 mSaveBuffer[0xA94 * 3];
|
||||
/* 0x218C */ dMsgScrnExplain_c* mpScrnExplain;
|
||||
/* 0x2190 */ u8 field_0x2190;
|
||||
/* 0x2192 */ u16 field_0x2192;
|
||||
/* 0x2194 */ u8 field_0x2194;
|
||||
/* 0x2195 */ u8 field_0x2195;
|
||||
/* 0x2198 */ int field_0x2198;
|
||||
/* 0x219C */ u8 field_0x219c;
|
||||
/* 0x2198 */ int mCmdState;
|
||||
/* 0x219C */ bool field_0x219c;
|
||||
/* 0x219D */ u8 field_0x219d;
|
||||
/* 0x219E */ u8 field_0x219e;
|
||||
/* 0x219F */ u8 field_0x219f;
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "dolphin/types.h"
|
||||
#include "m_Do/m_Do_controller_pad.h"
|
||||
#include "m_Do/m_Do_graphic.h"
|
||||
#include "m_Do/m_Do_mtx.h"
|
||||
|
||||
class dMenu_Ring_c;
|
||||
class dMenu_Dmap_c;
|
||||
@@ -15,7 +16,62 @@ class dMenu_Fmap_c;
|
||||
|
||||
class dDlst_MENU_CAPTURE_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 801FDFCC */ virtual void draw();
|
||||
/* 801FDFCC */ virtual void draw();/* {
|
||||
if (getDrawFlag() == 1) {
|
||||
setDrawFlag();
|
||||
dComIfGp_onPauseFlag();
|
||||
GXSetTexCopySrc(0, 0, 608, 448);
|
||||
GXSetTexCopyDst(304, 224, (GXTexFmt)mDoGph_gInf_c::getFrameBufferTimg()->format, GX_ENABLE);
|
||||
GXCopyTex(mDoGph_gInf_c::getFrameBufferTex(), GX_FALSE);
|
||||
GXPixModeSync();
|
||||
} else {
|
||||
GXTexObj tex;
|
||||
GXInitTexObj(&tex, mDoGph_gInf_c::getFrameBufferTex(), 304, 224,
|
||||
(GXTexFmt)mDoGph_gInf_c::getFrameBufferTimg()->format, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
||||
GXInitTexObjLOD(&tex, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_FALSE, GX_ANISO_1);
|
||||
GXLoadTexObj(&tex, GX_TEXMAP0);
|
||||
GXSetNumChans(0);
|
||||
GXSetNumTexGens(1);
|
||||
GXSetTexCoordGen2(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 60, GX_FALSE, 125);
|
||||
GXSetNumTevStages(1);
|
||||
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD0, GX_TEXMAP0, GX_COLOR_NULL);
|
||||
GXSetTevColorIn(GX_TEVSTAGE0, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO, GX_CC_TEXC);
|
||||
GXSetTevColorOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXColor color = {0xFF, 0xFF, 0xFF, mAlpha};
|
||||
GXSetTevColor(GX_TEVREG0, color);
|
||||
GXSetTevAlphaIn(GX_TEVSTAGE0, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO, GX_CA_A0);
|
||||
GXSetTevAlphaOp(GX_TEVSTAGE0, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
|
||||
GXSetZCompLoc(GX_TRUE);
|
||||
GXSetZMode(GX_FALSE, GX_ALWAYS, GX_FALSE);
|
||||
GXSetBlendMode(GX_BM_BLEND, GX_BL_SRC_ALPHA, GX_BL_INV_SRC_ALPHA, GX_LO_OR);
|
||||
GXSetAlphaCompare(GX_ALWAYS, 0, GX_AOP_OR, GX_ALWAYS, 0);
|
||||
GXSetFog(GX_FOG_NONE, 0.0f, 0.0f, 0.0f, 0.0f, g_clearColor);
|
||||
GXSetFogRangeAdj(GX_FALSE, 0, NULL);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXSetDither(GX_TRUE);
|
||||
GXLoadPosMtxImm(g_mDoMtx_identity, GX_PNMTX0);
|
||||
GXSetCurrentMtx(0);
|
||||
GXClearVtxDesc();
|
||||
GXSetVtxDesc(GX_VA_POS, GX_DIRECT);
|
||||
GXSetVtxDesc(GX_VA_TEX0, GX_DIRECT);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_POS, GX_CLR_RGBA, GX_RGBA4, 0);
|
||||
GXSetVtxAttrFmt(GX_VTXFMT0, GX_VA_TEX0, GX_CLR_RGBA, GX_RGB8, 0);
|
||||
|
||||
GXBegin(GX_QUADS, GX_VTXFMT0, 4);
|
||||
GXPosition3s16(mDoGph_gInf_c::getMinX(), mDoGph_gInf_c::getMinY(), 0);
|
||||
GXTexCoord2s8(0, 0);
|
||||
|
||||
GXPosition3s16(mDoGph_gInf_c::getMaxX(), mDoGph_gInf_c::getMinY(), 0);
|
||||
GXTexCoord2s8(1, 0);
|
||||
|
||||
GXPosition3s16(mDoGph_gInf_c::getMaxX(), mDoGph_gInf_c::getMaxY(), 0);
|
||||
GXTexCoord2s8(1, 1);
|
||||
|
||||
GXPosition3s16(mDoGph_gInf_c::getMinX(), mDoGph_gInf_c::getMaxY(), 0);
|
||||
GXTexCoord2s8(0, 1);
|
||||
GXEnd();
|
||||
}
|
||||
} */
|
||||
/* 801FE2E8 */ virtual ~dDlst_MENU_CAPTURE_c();
|
||||
|
||||
dDlst_MENU_CAPTURE_c() {
|
||||
@@ -28,6 +84,8 @@ public:
|
||||
bool checkDraw() { return mFlag; }
|
||||
u8 getAlpha() { return mAlpha; }
|
||||
u8 getTopFlag() { return mTopFlag; }
|
||||
u8 getDrawFlag() { return mFlag; }
|
||||
void setDrawFlag() { mFlag = 3; }
|
||||
|
||||
private:
|
||||
/* 0x4 */ u8 mFlag;
|
||||
|
||||
@@ -222,6 +222,9 @@ public:
|
||||
void onRupeeSoundBit(int bit) { mRupeeSound |= (1 << bit); }
|
||||
void offRupeeSoundBit(int bit) { mRupeeSound &= ~(1 << bit); }
|
||||
bool isRupeeSoundBit(int bit) { return mRupeeSound & (1 << bit); }
|
||||
s16 getNowLifeGauge() { return mNowLifeGauge; }
|
||||
u8 getSubContents() { return mSubContents; }
|
||||
u16 getSubContentsStringType() { return mSubContentsStringType; }
|
||||
|
||||
private:
|
||||
/* 0x100 */ JKRExpHeap* mpHeap;
|
||||
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
virtual ~dMeter2Info_c();
|
||||
void init(void);
|
||||
int setFloatingMessage(u16, s16, bool);
|
||||
void setFloatingFlow(u16, s16, bool);
|
||||
int setFloatingFlow(u16, s16, bool);
|
||||
int isFloatingMessageVisible(void);
|
||||
int decFloatingMessageTimer(void);
|
||||
void resetFloatingMessage(void);
|
||||
@@ -73,8 +73,8 @@ public:
|
||||
void getString(u32, char*, JMSMesgEntry_c*); // define JMSMesgEntry
|
||||
void getStringKana(u32, char*, JMSMesgEntry_c*);
|
||||
void getStringKanji(u32, char*, JMSMesgEntry_c*);
|
||||
double getStringLength(J2DTextBox*, char*); // define J2DTextBox
|
||||
dMeter2Info_c* getStringLength(JUTFont*, f32, f32, char*);
|
||||
f32 getStringLength(J2DTextBox*, char*);
|
||||
f32 getStringLength(JUTFont*, f32, f32, char*);
|
||||
void onDirectUseItem(int);
|
||||
bool isDirectUseItem(int);
|
||||
int setMeterString(s32);
|
||||
@@ -84,12 +84,12 @@ public:
|
||||
void resetMeterString(void);
|
||||
void setWarpInfo(const char*, const cXyz&, s16, u8, u8, u8);
|
||||
u8 getItemType(u8);
|
||||
u8 readItemTexture(u8, void*, J2DPicture*, void*, J2DPicture*, void*, J2DPicture*, void*,
|
||||
J2DPicture*, int); // define J2DPicture
|
||||
int readItemTexture(u8, void*, J2DPicture*, void*, J2DPicture*, void*, J2DPicture*, void*,
|
||||
J2DPicture*, int);
|
||||
void setItemColor(u8, J2DPicture*, J2DPicture*, J2DPicture*, J2DPicture*);
|
||||
s8 get2ndTexture(u8);
|
||||
s8 get3rdTexture(u8);
|
||||
s8 get4thTexture(u8);
|
||||
s16 get2ndTexture(u8);
|
||||
s16 get3rdTexture(u8);
|
||||
s16 get4thTexture(u8);
|
||||
void set1stColor(u8, J2DPicture*);
|
||||
void set2ndColor(u8, J2DPicture*);
|
||||
void set3rdColor(u8, J2DPicture*);
|
||||
@@ -150,8 +150,11 @@ public:
|
||||
const char* getSaveStageName() { return mSaveStageName; }
|
||||
void onShopTalkFlag() { mShopTalkFlag = true; }
|
||||
void setLightDropGetFlag(int index, u8 flag) { mLightDropGetFlag[index] = flag; }
|
||||
u8 getRentalBombBag() { return mRentalBombBag; }
|
||||
u8 getRentalBombBag() { return mRentalBombBagIdx; }
|
||||
void setTableMapRegionNo(u8 regionNo) { mTableMapRegionNo = regionNo; }
|
||||
dMeter2_c* getMeterClass() { return mMeterClass; }
|
||||
u8 getMiniGameItemSetFlag() { return mMiniGameItemSetFlag; }
|
||||
s16 getMsgKeyWaitTimer() { return mMsgKeyWaitTimer; }
|
||||
|
||||
public:
|
||||
/* 0x04 */ u8 unk4[4];
|
||||
@@ -178,7 +181,7 @@ public:
|
||||
/* 0x80 */ f32 unk128;
|
||||
/* 0x84 */ u32 mTimeMs;
|
||||
/* 0x88 */ u32 mMsgTimeMs;
|
||||
/* 0x8C */ u32 mMeterString;
|
||||
/* 0x8C */ s32 mMeterString;
|
||||
/* 0x90 */ u32 mTempBits;
|
||||
/* 0x94 */ s16 mMsgKeyWaitTimer;
|
||||
/* 0x96 */ u16 mHorseLifeCount;
|
||||
@@ -207,19 +210,19 @@ public:
|
||||
/* 0xC1 */ u8 mPauseStatus;
|
||||
/* 0xC2 */ u8 mGameOverType;
|
||||
/* 0xC3 */ u8 mInsectSelectType;
|
||||
/* 0xC4 */ u8 unk196[4];
|
||||
/* 0xC8 */ u8 unk200[4];
|
||||
/* 0xCC */ u8 unk204;
|
||||
/* 0xCD */ u8 unk205; // arrow num
|
||||
/* 0xCE */ u8 unk206; // item 1
|
||||
/* 0xCF */ u8 unk207; // item 2
|
||||
/* 0xD0 */ u8 unk208[4];
|
||||
/* 0xD4 */ u8 unk212[4];
|
||||
/* 0xD8 */ u8 unk216; // bomb num
|
||||
/* 0xD9 */ u8 unk217; // arrow num?
|
||||
/* 0xDA */ u8 unk218; // item 1?
|
||||
/* 0xDB */ u8 unk219; // item 2
|
||||
/* 0xDC */ u8 mRentalBombBag;
|
||||
/* 0xC4 */ u8 mSaveSelItemIdx[4];
|
||||
/* 0xC8 */ u8 mSaveMixItemIdx[4];
|
||||
/* 0xCC */ u8 mSaveBombNum;
|
||||
/* 0xCD */ u8 mSaveArrowNum;
|
||||
/* 0xCE */ u8 mSaveBowItem;
|
||||
/* 0xCF */ u8 mSaveBombItem;
|
||||
/* 0xD0 */ u8 mSaveSelItemIdxMG[4];
|
||||
/* 0xD4 */ u8 mSaveMixItemIdxMG[4];
|
||||
/* 0xD8 */ u8 mSaveBombNumMG;
|
||||
/* 0xD9 */ u8 mSaveArrowNumMG;
|
||||
/* 0xDA */ u8 mSaveBowItemMG;
|
||||
/* 0xDB */ u8 mSaveBombItemMG;
|
||||
/* 0xDC */ u8 mRentalBombBagIdx;
|
||||
/* 0xDD */ u8 mMiniGameItemSetFlag; // 1: rented in game, 3: rented not in game
|
||||
/* 0xDE */ u8 mMiniGameCount;
|
||||
/* 0xDF */ u8 mCollectCursorPosX;
|
||||
@@ -239,6 +242,8 @@ public:
|
||||
extern dMeter2Info_c g_meter2_info;
|
||||
|
||||
void dMeter2Info_setSword(u8, bool);
|
||||
void dMeter2Info_setCloth(u8 i_clothId, bool param_1);
|
||||
void dMeter2Info_setShield(u8 i_itemId, bool param_1);
|
||||
void dMeter2Info_set2DVibration();
|
||||
void dMeter2Info_set2DVibrationM();
|
||||
|
||||
@@ -446,6 +451,10 @@ inline u8 dMeter2Info_getRentalBombBag() {
|
||||
return g_meter2_info.getRentalBombBag();
|
||||
}
|
||||
|
||||
inline u8 dMeter2Info_getMiniGameItemSetFlag() {
|
||||
return g_meter2_info.getMiniGameItemSetFlag();
|
||||
}
|
||||
|
||||
inline void dMeter2Info_resetMiniGameItem(bool param_0) {
|
||||
g_meter2_info.resetMiniGameItem(param_0);
|
||||
}
|
||||
@@ -458,6 +467,22 @@ inline void dMeter2Info_changeWater(u8 bottleIdx) {
|
||||
g_meter2_info.changeWater(bottleIdx);
|
||||
}
|
||||
|
||||
inline void dMeter2Info_warpInProc() {
|
||||
g_meter2_info.warpInProc();
|
||||
}
|
||||
|
||||
inline void dMeter2Info_warpOutProc() {
|
||||
g_meter2_info.warpOutProc();
|
||||
}
|
||||
|
||||
inline dMeter2_c* dMeter2Info_getMeterClass() {
|
||||
return g_meter2_info.getMeterClass();
|
||||
}
|
||||
|
||||
inline s16 dMeter2Info_getMsgKeyWaitTimer() {
|
||||
return g_meter2_info.getMsgKeyWaitTimer();
|
||||
}
|
||||
|
||||
char* dMeter2Info_getNumberTextureName(int pIndex);
|
||||
void dMeter2Info_recieveLetter();
|
||||
u8 dMeter2Info_getNewLetterNum();
|
||||
|
||||
@@ -4,10 +4,8 @@
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor.h"
|
||||
|
||||
class msg_class {
|
||||
class msg_class : public leafdraw_class {
|
||||
public:
|
||||
/* 0x00 */ base_process_class field_0x0;
|
||||
/* 0xB8 */ u8 field_0xb8[8];
|
||||
/* 0xC0 */ int field_0xc0;
|
||||
/* 0xC4 */ create_tag_class field_0xc4;
|
||||
/* 0xD8 */ leafdraw_method_class* field_0xd8;
|
||||
|
||||
+219
-12
@@ -10,6 +10,7 @@
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class COutFont_c;
|
||||
class dMsgScrnBase_c;
|
||||
|
||||
class dMsgObject_c : public msg_class {
|
||||
public:
|
||||
@@ -23,7 +24,7 @@ public:
|
||||
/* 80233FD8 */ void getRevoMessageIndex(u32);
|
||||
/* 802340D4 */ void getMessageIndexAlways(u32);
|
||||
/* 80234128 */ void getMessageIDAlways(u32);
|
||||
/* 8023413C */ void getMessageGroup(u32);
|
||||
/* 8023413C */ static s16 getMessageGroup(u32);
|
||||
/* 80234150 */ void waitProc();
|
||||
/* 80234318 */ void openProc();
|
||||
/* 802349D8 */ void outnowProc();
|
||||
@@ -50,9 +51,9 @@ public:
|
||||
/* 80236D0C */ void changeGroupLocal(s16);
|
||||
/* 80236DE4 */ void getStringLocal(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, char*,
|
||||
char*, char*, s16*);
|
||||
/* 802370A8 */ void isGetItemMessage();
|
||||
/* 802370BC */ void isKanbanMessage();
|
||||
/* 802370E8 */ void isHowlMessage();
|
||||
/* 802370A8 */ BOOL isGetItemMessage();
|
||||
/* 802370BC */ BOOL isKanbanMessage();
|
||||
/* 802370E8 */ BOOL isHowlMessage();
|
||||
/* 802370FC */ bool isMidonaMessage();
|
||||
/* 80237138 */ void isMidonaNormalTalkWait();
|
||||
/* 802371B0 */ void isMidonaTalkWait();
|
||||
@@ -78,19 +79,19 @@ public:
|
||||
/* 8023759C */ void getBombBuyPriceLocal(u8);
|
||||
/* 802375E4 */ void addSelectBomBag(u8);
|
||||
/* 80237610 */ void resetSelectBomBag();
|
||||
/* 8023763C */ void getSelectBombBagIDLocal();
|
||||
/* 8023768C */ void getSelectBombPriceLocal();
|
||||
/* 8023763C */ u8 getSelectBombBagIDLocal();
|
||||
/* 8023768C */ s16 getSelectBombPriceLocal();
|
||||
/* 8023773C */ void setEquipBombInfoLocal();
|
||||
/* 80237748 */ void updateEquipBombInfoLocal();
|
||||
/* 802378B8 */ static void setShopWaitTimer(u8);
|
||||
/* 802378CC */ void setSelectWordFlagLocal(u8);
|
||||
/* 802378D4 */ void isHowlHearingModeLocal();
|
||||
/* 802378D4 */ bool isHowlHearingModeLocal();
|
||||
/* 80237934 */ void isCameraCancelFlag();
|
||||
/* 80237950 */ void onCameraCancelFlag();
|
||||
/* 80237968 */ void offCameraCancelFlag();
|
||||
/* 80237980 */ static bool isKillMessageFlag();
|
||||
/* 80237994 */ static void onKillMessageFlag();
|
||||
/* 802379AC */ void setKillMessageFlag();
|
||||
/* 802379AC */ static void setKillMessageFlag();
|
||||
/* 802379D8 */ void setKillMessageFlagLocal();
|
||||
/* 80237A74 */ void setTalkPartner(fopAc_ac_c*);
|
||||
/* 80237A88 */ void setNowTalkFlowNo(s16);
|
||||
@@ -109,9 +110,11 @@ public:
|
||||
/* 80237F10 */ void setTalkActorLocal(fopAc_ac_c*);
|
||||
/* 8023800C */ static void readMessageGroup(mDoDvdThd_mountXArchive_c**);
|
||||
/* 8023803C */ static void changeFlowGroup(s32);
|
||||
/* 8023806C */ void demoMessageGroup();
|
||||
/* 80238098 */ static void endFlowGroup();
|
||||
/* 802380C4 */ static void changeGroup(s16);
|
||||
/* 8023806C */ static void demoMessageGroup();
|
||||
/* 80238098 */ void endFlowGroup();
|
||||
/* 802380C4 */ void changeGroup(s16);
|
||||
/* 802380F4 */ void getString(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, char*,
|
||||
char*, char*, s16*);
|
||||
/* 80238174 */ static u8* getMsgDtPtr();
|
||||
@@ -146,19 +149,21 @@ public:
|
||||
/* 80238528 */ void getSelectWord(int);
|
||||
/* 80238544 */ void setSelectWordFlag(u8);
|
||||
/* 80238574 */ void getSelectWordFlag();
|
||||
/* 80238588 */ void isHowlHearingMode();
|
||||
/* 80238588 */ bool isHowlHearingMode();
|
||||
/* 802385B4 */ static u8 getSelectBombBagID();
|
||||
/* 802385E0 */ static s16 getSelectBombPrice();
|
||||
/* 8023860C */ void setEquipBombInfo();
|
||||
/* 80238638 */ void getItemEquipButton();
|
||||
/* 80238638 */ u8 getItemEquipButton();
|
||||
/* 8023864C */ static void setSelectCancelPos(u8);
|
||||
|
||||
void setShopWaitTimerLocal(u8 timer) { mShopWaitTimer = timer; }
|
||||
void setSelectCancelPosLocal(u8 pos) { mSelectCancelPos = pos; }
|
||||
u8 getItemEquipButtonLocal() { return mItemEquipButton; }
|
||||
u8 getSelectPushFlag() { return mSelectPushFlag; }
|
||||
u8 getSelectCancelPos() { return mSelectCancelPos; }
|
||||
|
||||
/* 0x100 */ msg_class* field_0x100;
|
||||
/* 0x104 */ int mpScrnDraw;
|
||||
/* 0x104 */ dMsgScrnBase_c* mpScrnDraw;
|
||||
/* 0x108 */ dMsgString_c* mpMsgString;
|
||||
/* 0x10C */ COutFont_c* mpOutFont;
|
||||
/* 0x110 */ JMessage::TResourceContainer* mpResCont;
|
||||
@@ -282,4 +287,206 @@ inline void dMsgObject_setTalkActor(fopAc_ac_c* actor) {
|
||||
}
|
||||
}
|
||||
|
||||
inline void dMsgObject_onKillMessageFlag() {
|
||||
dMsgObject_c::onKillMessageFlag();
|
||||
}
|
||||
|
||||
inline void dMsgObject_setKillMessageFlag() {
|
||||
dMsgObject_c::setKillMessageFlag();
|
||||
}
|
||||
|
||||
inline void dMsgObject_endFlowGroup() {
|
||||
dMsgObject_c::endFlowGroup();
|
||||
}
|
||||
|
||||
|
||||
class dMsgObject_HowlHIO_c {
|
||||
public:
|
||||
/* 80232AEC */ dMsgObject_HowlHIO_c();
|
||||
/* 80238B94 */ virtual ~dMsgObject_HowlHIO_c() {}
|
||||
|
||||
/* 0x04 */ s8 field_0x4;
|
||||
/* 0x08 */ JUtility::TColor mHowlLineStartCol;
|
||||
/* 0x0C */ JUtility::TColor mHowlLineEndCol;
|
||||
/* 0x10 */ f32 mHighlightScale;
|
||||
/* 0x14 */ JUtility::TColor mHighlightMoyaR0;
|
||||
/* 0x18 */ JUtility::TColor mHighlightMoyaR1;
|
||||
/* 0x1C */ JUtility::TColor mHighlightMoyabsR0;
|
||||
/* 0x20 */ JUtility::TColor mHighlightMoyabsR1;
|
||||
/* 0x24 */ JUtility::TColor mHighlightPikaR0;
|
||||
/* 0x28 */ JUtility::TColor mHighlightPikaR1;
|
||||
/* 0x2C */ f32 mAnmSpeed;
|
||||
/* 0x30 */ JUtility::TColor mGuideUpperBlack;
|
||||
/* 0x34 */ JUtility::TColor mGuideUpperWhite;
|
||||
/* 0x38 */ JUtility::TColor mGuideMidBlack;
|
||||
/* 0x3C */ JUtility::TColor mGuideMidWhite;
|
||||
/* 0x40 */ JUtility::TColor mGuideLowerBlack;
|
||||
/* 0x44 */ JUtility::TColor mGuideLowerWhite;
|
||||
/* 0x48 */ JUtility::TColor mAnswerUpperBlack;
|
||||
/* 0x4C */ JUtility::TColor mAnswerUpperWhite;
|
||||
/* 0x50 */ JUtility::TColor mAnswerMidBlack;
|
||||
/* 0x54 */ JUtility::TColor mAnswerMidWhite;
|
||||
/* 0x58 */ JUtility::TColor mAnswerLowerBlack;
|
||||
/* 0x5C */ JUtility::TColor mAnswerLowerWhite;
|
||||
/* 0x60 */ JUtility::TColor mDotBlack;
|
||||
/* 0x64 */ JUtility::TColor mDotWhite;
|
||||
/* 0x68 */ f32 mDotScale;
|
||||
/* 0x6C */ f32 mDrawInterval;
|
||||
/* 0x70 */ f32 mLineThickness;
|
||||
/* 0x74 */ f32 mCrossPosX;
|
||||
/* 0x78 */ f32 mCrossPosY;
|
||||
/* 0x7C */ f32 mCrossScale;
|
||||
/* 0x80 */ f32 mWindowPosX;
|
||||
/* 0x84 */ f32 mWindowPosY;
|
||||
/* 0x88 */ f32 mWindowScale;
|
||||
/* 0x8C */ f32 mInputStartPoint;
|
||||
/* 0x90 */ f32 mGuideUpperAlpha;
|
||||
/* 0x94 */ f32 mGuideMidAlpha;
|
||||
/* 0x98 */ f32 mGuideLowerAlpha;
|
||||
/* 0x9C */ f32 mAnswerUpperAlpha;
|
||||
/* 0xA0 */ f32 mAnswerMidAlpha;
|
||||
/* 0xA4 */ f32 mAnswerLowerAlpha;
|
||||
/* 0xA8 */ f32 mLineSpaceOffset;
|
||||
/* 0xAC */ u16 mWaveformThickness;
|
||||
/* 0xAE */ u16 mWaveformLineLen;
|
||||
/* 0xB0 */ u16 mWaveformDotLen;
|
||||
};
|
||||
|
||||
class dMsgObject_HIO_c {
|
||||
public:
|
||||
/* 80232D6C */ dMsgObject_HIO_c();
|
||||
/* 80238BDC */ virtual ~dMsgObject_HIO_c() {}
|
||||
|
||||
/* 0x004 */ s8 field_0x4;
|
||||
/* 0x008 */ f32 mBoxMidna_fontSizeX;
|
||||
/* 0x00C */ f32 field_0xc;
|
||||
/* 0x010 */ f32 mBoxMidna_fontSizeY;
|
||||
/* 0x014 */ f32 field_0x14;
|
||||
/* 0x018 */ f32 mBoxTalkAlphaP;
|
||||
/* 0x01C */ f32 mBoxNaviAlphaP;
|
||||
/* 0x020 */ f32 mBoxMidnaAlphaP;
|
||||
/* 0x024 */ f32 mBoxItemAlphaP;
|
||||
/* 0x028 */ f32 mBoxStoneAlphaP;
|
||||
/* 0x02C */ f32 mBoxWoodAlphaP;
|
||||
/* 0x030 */ f32 mBoxBookAlphaP;
|
||||
/* 0x034 */ f32 mBoxWolfAlphaP;
|
||||
/* 0x038 */ f32 mSubtitleAlphaP;
|
||||
/* 0x03C */ f32 field_0x3c;
|
||||
/* 0x040 */ f32 mBoxNaviAnmSpeed;
|
||||
/* 0x044 */ f32 field_0x44;
|
||||
/* 0x048 */ f32 mBoxItemAnmSpeed;
|
||||
/* 0x04C */ f32 field_0x4c;
|
||||
/* 0x050 */ f32 field_0x50;
|
||||
/* 0x054 */ f32 field_0x54;
|
||||
/* 0x058 */ f32 mBoxWolfAnmSpeed;
|
||||
/* 0x05C */ f32 mBoxItemHaloAlpha;
|
||||
/* 0x060 */ f32 mBoxNaviHaloAlpha;
|
||||
/* 0x064 */ f32 mBoxMidnaHaloAlpha;
|
||||
/* 0x068 */ f32 mBoxWolfHaloAlpha;
|
||||
/* 0x06C */ f32 mBoxTalkHaloAlpha;
|
||||
/* 0x070 */ f32 mBoxTalkScaleX;
|
||||
/* 0x074 */ f32 mBoxNaviScaleX;
|
||||
/* 0x078 */ f32 mBoxMidnaScaleX;
|
||||
/* 0x07C */ f32 mBoxItemScaleX;
|
||||
/* 0x080 */ f32 mBoxStoneScaleX;
|
||||
/* 0x084 */ f32 mBoxWoodScaleX;
|
||||
/* 0x088 */ f32 mBoxBookScaleX;
|
||||
/* 0x08C */ f32 mBoxWolfScaleX;
|
||||
/* 0x090 */ f32 mStageTitleScaleX;
|
||||
/* 0x094 */ f32 mSubtitleScaleX;
|
||||
/* 0x098 */ f32 mBossNameScaleX;
|
||||
/* 0x09C */ f32 mBoxTalkScaleY;
|
||||
/* 0x0A0 */ f32 mBoxNaviScaleY;
|
||||
/* 0x0A4 */ f32 mBoxMidnaScaleY;
|
||||
/* 0x0A8 */ f32 mBoxItemScaleY;
|
||||
/* 0x0AC */ f32 mBoxStoneScaleY;
|
||||
/* 0x0B0 */ f32 mBoxWoodScaleY;
|
||||
/* 0x0B4 */ f32 mBoxBookScaleY;
|
||||
/* 0x0B8 */ f32 mBoxWolfScaleY;
|
||||
/* 0x0BC */ f32 mStageTitleScaleY;
|
||||
/* 0x0C0 */ f32 mSubtitleScaleY;
|
||||
/* 0x0C4 */ f32 mBossNameScaleY;
|
||||
/* 0x0C8 */ f32 mBoxItemSizeX;
|
||||
/* 0x0CC */ f32 mBoxItemSizeY;
|
||||
/* 0x0D0 */ f32 mBoxItemPosX;
|
||||
/* 0x0D4 */ f32 mBoxItemPosY;
|
||||
/* 0x0D8 */ f32 mBoxItemTextSizeX;
|
||||
/* 0x0DC */ f32 mBoxItemTextSizeY;
|
||||
/* 0x0E0 */ f32 mBoxItemTextPosX;
|
||||
/* 0x0E4 */ f32 mBoxItemTextPosY;
|
||||
/* 0x0E8 */ JUtility::TColor mBoxStartBlack[10]; // talk, navi, midna, item, stone, wood, book, wolf,
|
||||
/* 0x110 */ JUtility::TColor mBoxEndBlack[10];
|
||||
/* 0x138 */ JUtility::TColor mBoxStartWhite[10];
|
||||
/* 0x160 */ JUtility::TColor mBoxEndWhite[10];
|
||||
/* 0x188 */ JUtility::TColor mSelMsgInactiveCol;
|
||||
/* 0x18C */ f32 mStageTitleCharPosX;
|
||||
/* 0x190 */ f32 mBossNameCharPosX;
|
||||
/* 0x194 */ f32 mStageTitleCharPosY;
|
||||
/* 0x198 */ f32 mBossNameCharPosY;
|
||||
/* 0x19C */ f32 mStageTitleCharSizeX;
|
||||
/* 0x1A0 */ f32 mBossNameCharSizeX;
|
||||
/* 0x1A4 */ f32 mStageTitleCharSizeY;
|
||||
/* 0x1A8 */ f32 mBossNameCharSizeY;
|
||||
/* 0x1AC */ f32 mStageTitleBasePosX;
|
||||
/* 0x1B0 */ f32 mBossNameBasePosX;
|
||||
/* 0x1B4 */ f32 mStageTitleBasePosY;
|
||||
/* 0x1B8 */ f32 mBossNameBasePosY;
|
||||
/* 0x1BC */ f32 mStageTitleBaseSizeX;
|
||||
/* 0x1C0 */ f32 mBossNameBaseSizeX;
|
||||
/* 0x1C4 */ f32 mStageTitleBaseSizeY;
|
||||
/* 0x1C8 */ f32 mBossNameBaseSizeY;
|
||||
/* 0x1CC */ f32 mStageTitleBaseAlpha;
|
||||
/* 0x1D0 */ f32 mBossNameBaseAlpha;
|
||||
/* 0x1D4 */ f32 mChoicePos[3][10]; // down, mid, top
|
||||
/* 0x24C */ f32 mBoxPos[3][10]; // down, mid, top // talk, navi, midna, item, stone, wood, book, wolf,
|
||||
/* 0x2C4 */ f32 mPortalIconScale;
|
||||
/* 0x2C8 */ f32 mTextPosX;
|
||||
/* 0x2CC */ f32 mTextPosY;
|
||||
/* 0x2D0 */ f32 mPikariScale;
|
||||
/* 0x2D4 */ JUtility::TColor mPikariMoyaR0;
|
||||
/* 0x2D8 */ JUtility::TColor mPikariMoyaR1;
|
||||
/* 0x2DC */ JUtility::TColor mPikariMoyabsR0;
|
||||
/* 0x2E0 */ JUtility::TColor mPikariMoyabsR1;
|
||||
/* 0x2E4 */ JUtility::TColor mPikariPikaR0;
|
||||
/* 0x2E8 */ JUtility::TColor mPikariPikaR1;
|
||||
/* 0x2EC */ f32 mPikariAnmSpeed;
|
||||
/* 0x2F0 */ u16 mPikariHaloDelay_spirit;
|
||||
/* 0x2F2 */ u8 mStageTitleDisplayType;
|
||||
/* 0x2F4 */ u16 mMsgIndex;
|
||||
/* 0x2F6 */ u16 mFlowIndex;
|
||||
/* 0x2F8 */ u16 mSaveSeqMsgIndex;
|
||||
/* 0x2FA */ u16 mSelWeightFrame;
|
||||
/* 0x2FC */ u16 mBoxAppearBound;
|
||||
/* 0x2FE */ u16 mBoxAppearFrame;
|
||||
/* 0x300 */ u16 mWaitFrame;
|
||||
/* 0x302 */ u16 mLightAppearFrame;
|
||||
/* 0x304 */ u16 field_0x304;
|
||||
/* 0x306 */ u16 mStageTitleFadeIn;
|
||||
/* 0x308 */ u16 mStageTitleFadeOut;
|
||||
/* 0x30A */ u16 mBossNameFadeIn;
|
||||
/* 0x30C */ u16 mBossNameFadeOut;
|
||||
/* 0x30E */ u16 mStageTitleDisplayTime;
|
||||
/* 0x310 */ u16 mBossNameDisplayTime;
|
||||
/* 0x312 */ u16 mBatchDisplayWeight_3;
|
||||
/* 0x314 */ u16 mCharDisplayWeight_5;
|
||||
/* 0x316 */ u16 mBatchDisplayWeight_8;
|
||||
/* 0x318 */ u16 mBatchDisplayWeight_9;
|
||||
/* 0x31A */ u16 mHaloDelayFrame;
|
||||
/* 0x31C */ u16 mHaloDelayFrameSpirit;
|
||||
/* 0x31E */ bool mSaveSeqMsgDebug;
|
||||
/* 0x31F */ bool mMsgDebug;
|
||||
/* 0x320 */ u8 field_0x320;
|
||||
/* 0x320 */ bool mTextColorDebug;
|
||||
/* 0x321 */ u8 mTextColorUpperR[9]; // Default, Red, Green, Blue, Yellow, L.Blue, Purple, Grey, Orange,
|
||||
/* 0x32A */ u8 mTextColorUpperG[9];
|
||||
/* 0x333 */ u8 mTextColorUpperB[9];
|
||||
/* 0x33C */ u8 mTextColorLowerR[9]; // Default, Red, Green, Blue, Yellow, L.Blue, Purple, Grey, Orange,
|
||||
/* 0x345 */ u8 mTextColorLowerG[9];
|
||||
/* 0x34E */ u8 mTextColorLowerB[9];
|
||||
/* 0x357 */ u8 mDisplaySpeed;
|
||||
/* 0x358 */ u8 mDisplaySpeedSpirit;
|
||||
/* 0x359 */ u8 mMessageDisplay;
|
||||
/* 0x35C */ dMsgObject_HowlHIO_c mHowlHIO;
|
||||
};
|
||||
|
||||
#endif /* D_MSG_D_MSG_OBJECT_H */
|
||||
|
||||
@@ -2,5 +2,63 @@
|
||||
#define D_MSG_D_MSG_OUT_FONT_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/J2DGraph/J2DTextBox.h"
|
||||
#include "JSystem/J2DGraph/J2DPicture.h"
|
||||
|
||||
class COutFontSet_c {
|
||||
public:
|
||||
/* 80225BB8 */ COutFontSet_c();
|
||||
/* 80225C3C */ void initialize();
|
||||
/* 80225C70 */ void drawFont(J2DTextBox*, u8, f32, f32, f32, f32, u32, u8);
|
||||
|
||||
/* 80225BF4 */ virtual ~COutFontSet_c();
|
||||
|
||||
u8 getType() { return mType; }
|
||||
u32 getColor() { return mColor; }
|
||||
f32 getPosX() { return mPosX; }
|
||||
f32 getPosY() { return mPosY; }
|
||||
f32 getSizeX() { return mSizeX; }
|
||||
f32 getSizeY() { return mSizeY; }
|
||||
J2DTextBox* getTextBoxPtr() { return mpTextBoxPtr; }
|
||||
void setTextBoxPtr(J2DTextBox* p_textBox) { mpTextBoxPtr = p_textBox; }
|
||||
void resetType() { mType = 0x47; }
|
||||
|
||||
private:
|
||||
/* 0x04 */ J2DTextBox* mpTextBoxPtr;
|
||||
/* 0x08 */ f32 mPosX;
|
||||
/* 0x0C */ f32 mPosY;
|
||||
/* 0x10 */ f32 mSizeX;
|
||||
/* 0x14 */ f32 mSizeY;
|
||||
/* 0x18 */ u32 mColor;
|
||||
/* 0x1C */ u8 mAlpha;
|
||||
/* 0x1D */ u8 mType;
|
||||
};
|
||||
|
||||
class COutFont_c {
|
||||
public:
|
||||
/* 80225C94 */ COutFont_c(u8);
|
||||
/* 80226CF8 */ void initialize();
|
||||
/* 80228490 */ void setBlendAnime(J2DPicture*, s16);
|
||||
/* 80228530 */ const char* getBtiName(int);
|
||||
|
||||
/* 80225D60 */ virtual ~COutFont_c();
|
||||
/* 80225E7C */ virtual void setPane(J2DPicture*);
|
||||
/* 80225EA8 */ virtual void createPane();
|
||||
/* 80226DB0 */ virtual void draw(J2DTextBox*, f32, f32, f32);
|
||||
/* 80228448 */ virtual void reset(J2DTextBox*);
|
||||
/* 80226D4C */ virtual void drawFont(J2DTextBox*, u8, f32, f32, f32, f32, u32, u8);
|
||||
/* 80226DA8 */ virtual void setAlphaRatio(f32);
|
||||
|
||||
private:
|
||||
/* 0x004 */ COutFontSet_c* mpOfs[35];
|
||||
/* 0x090 */ J2DPicture* mpPane[70];
|
||||
/* 0x1A8 */ f32 mAlphaRatio;
|
||||
/* 0x1AC */ f32 field_0x1ac;
|
||||
/* 0x1B0 */ f32 field_0x1b0;
|
||||
/* 0x1B4 */ s16 field_0x1b4[70];
|
||||
/* 0x240 */ bool field_0x240;
|
||||
/* 0x241 */ u8 mRupeeColor;
|
||||
/* 0x242 */ u8 field_0x242;
|
||||
};
|
||||
|
||||
#endif /* D_MSG_D_MSG_OUT_FONT_H */
|
||||
|
||||
@@ -1,6 +1,26 @@
|
||||
#ifndef D_MSG_D_MSG_STRING_H
|
||||
#define D_MSG_D_MSG_STRING_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/msg/d_msg_string_base.h"
|
||||
#include "d/msg/d_msg_out_font.h"
|
||||
|
||||
class dMsgString_c {
|
||||
public:
|
||||
|
||||
/* 80249C20 */ dMsgString_c();
|
||||
/* 80249CA0 */ dMsgString_c(u8);
|
||||
/* 80249D28 */ ~dMsgString_c();
|
||||
|
||||
/* 80191B6C */ virtual void getString(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, u8);
|
||||
/* 801E1D10 */ virtual void getStringPage(u32, u8, u8, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*,
|
||||
u8);
|
||||
/* 80249DB4 */ virtual void resetStringLocal(J2DTextBox*);
|
||||
/* 80249DE4 */ virtual void drawOutFontLocal(J2DTextBox*, f32);
|
||||
/* 80249ED0 */ virtual void drawFontLocal(J2DTextBox*, u8, f32, f32, f32, f32, u32, u8);
|
||||
|
||||
private:
|
||||
/* 0x24 */ COutFont_c* mpOutFont;
|
||||
/* 0x28 */ u8 field_0x28;
|
||||
};
|
||||
|
||||
#endif /* D_MSG_D_MSG_STRING_H */
|
||||
|
||||
@@ -1,6 +1,41 @@
|
||||
#ifndef D_MSG_D_MSG_STRING_BASE_H
|
||||
#define D_MSG_D_MSG_STRING_BASE_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/msg/d_msg_object.h"
|
||||
|
||||
struct jmessage_string_tControl;
|
||||
struct jmessage_string_tReference;
|
||||
struct jmessage_string_tSequenceProcessor;
|
||||
struct jmessage_string_tRenderingProcessor;
|
||||
|
||||
class dMsgStringBase_c {
|
||||
public:
|
||||
/* 802493B4 */ dMsgStringBase_c();
|
||||
/* 80249528 */ ~dMsgStringBase_c();
|
||||
/* 80249700 */ void getResource();
|
||||
/* 80249768 */ void getStringLocal(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, u8);
|
||||
/* 802498D8 */ void getStringPageLocal(u32, u8, u8, J2DTextBox*, J2DTextBox*, JUTFont*,
|
||||
COutFont_c*, u8);
|
||||
/* 80249A48 */ void getPageMax(int);
|
||||
/* 80249A70 */ void getMessageLocal(u32, char*);
|
||||
|
||||
/* 80249BB0 */ virtual void getString(u32, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*, u8);
|
||||
/* 80249BD0 */ virtual void getStringPage(u32, u8, u8, J2DTextBox*, J2DTextBox*, JUTFont*, COutFont_c*,
|
||||
u8);
|
||||
/* 80249BF8 */ virtual void getMessage(u32, char*);
|
||||
/* 80249C18 */ virtual void resetStringLocal(J2DTextBox*);
|
||||
/* 80249C1C */ virtual void drawOutFontLocal(J2DTextBox*, f32);
|
||||
/* 80249BAC */ virtual void drawFontLocal(J2DTextBox*, u8, f32, f32, f32, f32, u32, u8);
|
||||
|
||||
private:
|
||||
/* 0x04 */ JMessage::TResourceContainer* mpResCont;
|
||||
/* 0x08 */ jmessage_string_tControl* mpCtrl;
|
||||
/* 0x0C */ jmessage_string_tReference* mpRefer;
|
||||
/* 0x10 */ jmessage_string_tSequenceProcessor* mpSeqProc;
|
||||
/* 0x14 */ jmessage_string_tRenderingProcessor* mpRenProc;
|
||||
/* 0x18 */ JMessage::TParse* mpParse;
|
||||
/* 0x1C */ void* field_0x1c;
|
||||
/* 0x20 */ u16 field_0x20;
|
||||
};
|
||||
|
||||
#endif /* D_MSG_D_MSG_STRING_BASE_H */
|
||||
|
||||
@@ -39,6 +39,7 @@ public:
|
||||
J2DPane* getPanePtr() { return (J2DPane*)mWindow; }
|
||||
u8 getAlpha() { return getPanePtr()->getAlpha(); }
|
||||
s16 getAlphaTimer() { return mAlphaTimer; }
|
||||
void alphaAnimeStart(s16 start) { mAlphaTimer = start; }
|
||||
|
||||
/* 0x04 */ J2DWindow* mWindow;
|
||||
/* 0x08 */ JKRExpHeap* heap;
|
||||
|
||||
@@ -53,6 +53,28 @@ public:
|
||||
/* 0x10 */ void* mData;
|
||||
}; // Size: 0x14
|
||||
|
||||
class dPa_followEcallBack : public dPa_levelEcallBack {
|
||||
public:
|
||||
/* 80049580 */ dPa_followEcallBack(u8, u8);
|
||||
|
||||
/* 80050200 */ virtual ~dPa_followEcallBack();
|
||||
/* 800495BC */ virtual void execute(JPABaseEmitter*);
|
||||
/* 800496B0 */ virtual void draw(JPABaseEmitter*);
|
||||
/* 800496B4 */ virtual void setup(JPABaseEmitter*, cXyz const*, csXyz const*, s8);
|
||||
/* 80050284 */ virtual void cleanup();
|
||||
/* 8004974C */ virtual void end();
|
||||
|
||||
void remove() { end(); }
|
||||
|
||||
/* 0x04 */ JPABaseEmitter* mpEmitter;
|
||||
/* 0x08 */ cXyz* field_0x8;
|
||||
/* 0x0C */ csXyz* field_0xc;
|
||||
/* 0x10 */ u8 field_0x10;
|
||||
/* 0x11 */ u8 field_0x11;
|
||||
/* 0x12 */ u8 field_0x12;
|
||||
/* 0x13 */ u8 field_0x13;
|
||||
};
|
||||
|
||||
extern u8 data_80450EC4;
|
||||
|
||||
class dPa_control_c {
|
||||
@@ -66,6 +88,8 @@ public:
|
||||
/* 8004B5AC */ void cleanup();
|
||||
/* 8004FBFC */ emitter_c();
|
||||
|
||||
JPABaseEmitter* getEmitter() { return mEmitter; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ u32 mId;
|
||||
/* 0x04 */ u16 mNameId;
|
||||
@@ -83,7 +107,7 @@ public:
|
||||
/* 8004B874 */ void get(u32);
|
||||
/* 8004B8B4 */ void forceOnEventMove(u32);
|
||||
/* 8004B8E8 */ void allForceOnEventMove();
|
||||
/* 8004B918 */ emitter_c* getEmitter(u32);
|
||||
/* 8004B918 */ JPABaseEmitter* getEmitter(u32);
|
||||
/* 8004B94C */ void entry(u16, JPABaseEmitter*, dPa_levelEcallBack*);
|
||||
/* 8004BA40 */ void addTable(dPa_control_c::level_c::emitter_c*);
|
||||
/* 8004BA74 */ void cutTable(dPa_control_c::level_c::emitter_c*);
|
||||
@@ -136,7 +160,7 @@ public:
|
||||
dKy_tevstr_c const*, u32, u32, csXyz const*, cXyz const*, s8);
|
||||
|
||||
void forceOnEventMove(u32 param_0) { field_0x210.forceOnEventMove(param_0); }
|
||||
level_c::emitter_c* getEmitter(u32 param_0) { return field_0x210.getEmitter(param_0); }
|
||||
JPABaseEmitter* getEmitter(u32 param_0) { return field_0x210.getEmitter(param_0); }
|
||||
|
||||
u32 setNormal(u32 param_0, u16 param_1, const cXyz* param_2, const dKy_tevstr_c* param_3,
|
||||
const csXyz* param_4, const cXyz* param_5, u8 param_6,
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "d/com/d_com_inf_game.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "SSystem/SComponent/c_lib.h"
|
||||
|
||||
class dLog_HIO_c {
|
||||
public:
|
||||
@@ -119,7 +120,4 @@ static int phase_0(dScnLogo_c* logo);
|
||||
static int phase_1(dScnLogo_c* logo);
|
||||
static int phase_2(dScnLogo_c* logo);
|
||||
|
||||
template <typename T>
|
||||
T cLib_calcTimer(T* val);
|
||||
|
||||
#endif /* D_S_D_S_LOGO_H */
|
||||
|
||||
@@ -384,7 +384,7 @@ public:
|
||||
int isMagicFlag(u8 i_magic) const;
|
||||
|
||||
u16 getMaxLife() { return mMaxLife; }
|
||||
u16 getLife() { return mLife; }
|
||||
u16 getLife() const { return mLife; }
|
||||
u16 getRupee() { return mRupee; }
|
||||
u16 getOil() { return mOil; }
|
||||
u16 getMaxOil() const { return mMaxOil; }
|
||||
@@ -515,6 +515,7 @@ public:
|
||||
s8 getRoomNo() { return mRoomNo; }
|
||||
char getWarpAcceptStage() { return mWarpAcceptStage; }
|
||||
void resetWarpAcceptStage() { mWarpAcceptStage = -1; }
|
||||
void setWarpAcceptStage(s8 accept) { mWarpAcceptStage = accept; }
|
||||
|
||||
private:
|
||||
/* 0x00 */ cXyz mPos;
|
||||
@@ -522,7 +523,7 @@ private:
|
||||
/* 0x0E */ char mName[8];
|
||||
/* 0x16 */ u8 mSpawnId;
|
||||
/* 0x17 */ s8 mRoomNo;
|
||||
/* 0x18 */ char mWarpAcceptStage;
|
||||
/* 0x18 */ s8 mWarpAcceptStage;
|
||||
/* 0x19 */ u8 unk25[3];
|
||||
}; // Size: 0x1C
|
||||
|
||||
@@ -813,6 +814,7 @@ public:
|
||||
onDungeonItem(STAGE_BOSS_ENEMY);
|
||||
onDungeonItem(OOCCOO_NOTE);
|
||||
}
|
||||
s32 isStageBossEnemy() const { return isDungeonItem(STAGE_BOSS_ENEMY); }
|
||||
s32 isDungeonItemWarp() const { return isDungeonItem(OOCCOO_NOTE); }
|
||||
void onStageLife() { onDungeonItem(STAGE_LIFE); }
|
||||
|
||||
@@ -1085,6 +1087,7 @@ public:
|
||||
u8 getDataNum() const { return mDataNum; }
|
||||
void removeZone(int zoneNo) { mZone[zoneNo].reset(); }
|
||||
void setNoFile(u8 file) { mNoFile = file; }
|
||||
u8 getNewFile() const { return mNewFile; }
|
||||
|
||||
static const int MEMORY_SWITCH = 0x80;
|
||||
static const int DAN_SWITCH = 0x40;
|
||||
|
||||
@@ -201,8 +201,7 @@ public:
|
||||
|
||||
/* 8025C6FC */ virtual ~dSvBit_HIO_c();
|
||||
|
||||
private:
|
||||
/* 0x004 */ u8 field_0x4;
|
||||
/* 0x004 */ s8 field_0x4;
|
||||
/* 0x008 */ dSvBit_childSwitchHIO_c mSwitch;
|
||||
/* 0x210 */ dSvBit_childItemHIO_c mItem;
|
||||
/* 0x3D8 */ dSvBit_childTreasureHIO_c mTreasure;
|
||||
|
||||
Reference in New Issue
Block a user