mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-09-03 00:53:47 -04:00
d_vibration / JUTGamePad matched + linked (#2256)
* d_vibration done * JUTGamePad done * cleanup JUTGamePad * d_menu_window cleanup
This commit is contained in:
+11
-15
@@ -4,6 +4,8 @@
|
||||
#include "d/d_drawlist.h"
|
||||
#include "f_op/f_op_msg.h"
|
||||
#include "m_Do/m_Do_graphic.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "JSystem/JUtility/JUTTexture.h"
|
||||
|
||||
struct CSTControl;
|
||||
class STControl;
|
||||
@@ -29,7 +31,7 @@ BOOL dMw_START_TRIGGER();
|
||||
|
||||
class dDlst_MENU_CAPTURE_c : public dDlst_base_c {
|
||||
public:
|
||||
/* 801FDFCC */ virtual void draw();/* {
|
||||
virtual void draw() {
|
||||
if (getDrawFlag() == 1) {
|
||||
setDrawFlag();
|
||||
dComIfGp_onPauseFlag();
|
||||
@@ -50,7 +52,7 @@ public:
|
||||
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};
|
||||
const GXColor color = {0, 0, 0, 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);
|
||||
@@ -84,8 +86,9 @@ public:
|
||||
GXTexCoord2s8(0, 1);
|
||||
GXEnd();
|
||||
}
|
||||
} */
|
||||
/* 801FE2E8 */ virtual ~dDlst_MENU_CAPTURE_c();
|
||||
}
|
||||
|
||||
virtual ~dDlst_MENU_CAPTURE_c() {}
|
||||
|
||||
dDlst_MENU_CAPTURE_c() {
|
||||
mFlag = 0;
|
||||
@@ -256,6 +259,7 @@ public:
|
||||
|
||||
void onPauseWindow() { mPauseWindow = true; }
|
||||
void offPauseWindow() { mPauseWindow = false; }
|
||||
bool isPauseWindow() { return mPauseWindow != false; }
|
||||
void onShowFlag() { mShowFlag |= 1; }
|
||||
void offShowFlag() { mShowFlag &= ~1; }
|
||||
bool isShowFlag() { return mShowFlag & 1 != 0; }
|
||||
@@ -277,12 +281,12 @@ private:
|
||||
/* 0x12C */ dMenu_Fishing_c* mpMenuFishing;
|
||||
/* 0x130 */ dMenu_Skill_c* mpMenuSkill;
|
||||
/* 0x134 */ dMenu_Insect_c* mpMenuInsect;
|
||||
/* 0x138 */ s32 mMemSize;
|
||||
/* 0x138 */ int mMemSize;
|
||||
/* 0x13C */ f32 mFmapStageTransX;
|
||||
/* 0x140 */ f32 mFmapStageTransZ;
|
||||
/* 0x144 */ u8 field_0x144;
|
||||
/* 0x145 */ u8 mButtons;
|
||||
/* 0x146 */ u8 mMenuStatus;
|
||||
/* 0x145 */ u8 mButtonBits;
|
||||
/* 0x146 */ u8 mMenuProc;
|
||||
/* 0x147 */ u8 mShowFlag;
|
||||
/* 0x148 */ s8 field_0x148;
|
||||
/* 0x149 */ u8 field_0x149;
|
||||
@@ -302,12 +306,4 @@ private:
|
||||
BOOL dMw_LEFT_TRIGGER();
|
||||
BOOL dMw_RIGHT_TRIGGER();
|
||||
|
||||
static int dMw_Draw(dMw_c*);
|
||||
static int dMw_Execute(dMw_c*);
|
||||
static int dMw_IsDelete(dMw_c*);
|
||||
static int dMw_Delete(dMw_c*);
|
||||
static int dMw_Create(msg_class*);
|
||||
|
||||
typedef int (*dMw_Method)(dMw_c*);
|
||||
|
||||
#endif /* D_MENU_D_MENU_WINDOW_H */
|
||||
|
||||
@@ -191,6 +191,7 @@ public:
|
||||
f32 get2DHeight() { return m2DHeight; }
|
||||
u8 getTableMapRegionNo() { return mTableMapRegionNo; }
|
||||
u8 getGoldWolfMapType() { return mGoldWolfMapType; }
|
||||
bool isWindowAccept(int param_0) { return mWindowAccept & (1 << param_0); }
|
||||
|
||||
public:
|
||||
/* 0x04 */ u8 unk4[4];
|
||||
@@ -789,6 +790,10 @@ inline u8 dMeter2Info_getGoldWolfMapType() {
|
||||
return g_meter2_info.getGoldWolfMapType();
|
||||
}
|
||||
|
||||
inline bool dMeter2Info_isWindowAccept(int param_0) {
|
||||
return g_meter2_info.isWindowAccept(param_0);
|
||||
}
|
||||
|
||||
const char* dMeter2Info_getPlusTextureName();
|
||||
const char* dMeter2Info_getNumberTextureName(int pIndex);
|
||||
int dMeter2Info_recieveLetter();
|
||||
|
||||
@@ -3,11 +3,6 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class dVibration_pattern {
|
||||
public:
|
||||
u16 field_0x00;
|
||||
u16 field_0x02;
|
||||
u32 field_0x04;
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_D_VIB_PATTERN_H */
|
||||
|
||||
+76
-33
@@ -2,15 +2,59 @@
|
||||
#define D_D_VIBRATION_H
|
||||
|
||||
#include "SSystem/SComponent/c_xyz.h"
|
||||
#include "d/d_vib_pattern.h"
|
||||
|
||||
struct vib_pattern {
|
||||
/* 0x0 */ u16 rounds;
|
||||
/* 0x2 */ u16 length;
|
||||
/* 0x4 */ u32 bits;
|
||||
};
|
||||
|
||||
class dVibration_c {
|
||||
public:
|
||||
enum {
|
||||
MODE_PAUSE = -1,
|
||||
MODE_WAIT,
|
||||
MODE_RUN,
|
||||
};
|
||||
|
||||
enum VIBMODE_SHOCK {
|
||||
VIBMODE_S_NONE = -1,
|
||||
VIBMODE_S_CUSTOM,
|
||||
VIBMODE_S_POWER1,
|
||||
VIBMODE_S_POWER2,
|
||||
VIBMODE_S_POWER3,
|
||||
VIBMODE_S_POWER4,
|
||||
VIBMODE_S_POWER5,
|
||||
VIBMODE_S_POWER6,
|
||||
VIBMODE_S_POWER7,
|
||||
VIBMODE_S_POWER8,
|
||||
VIBMODE_S_DOKUTT,
|
||||
VIBMODE_S_FOR2D,
|
||||
|
||||
VIBMODE_S_MAX
|
||||
};
|
||||
|
||||
enum VIBMODE_QUAKE {
|
||||
VIBMODE_Q_NONE = -1,
|
||||
VIBMODE_Q_CUSTOM,
|
||||
VIBMODE_Q_POWER1,
|
||||
VIBMODE_Q_POWER2,
|
||||
VIBMODE_Q_POWER3,
|
||||
VIBMODE_Q_POWER4,
|
||||
VIBMODE_Q_POWER5,
|
||||
VIBMODE_Q_POWER6,
|
||||
VIBMODE_Q_POWER7,
|
||||
VIBMODE_Q_POWER8,
|
||||
VIBMODE_Q_HORSE,
|
||||
|
||||
VIBMODE_Q_MAX
|
||||
};
|
||||
|
||||
/* 8006F268 */ int Run();
|
||||
/* 8006FA24 */ bool StartShock(int i_strength, int, cXyz);
|
||||
/* 8006FC0C */ bool StartQuake(u8 const*, int, int, cXyz);
|
||||
/* 8006FB10 */ bool StartQuake(int, int, cXyz);
|
||||
/* 8006FD94 */ int StopQuake(int);
|
||||
/* 8006FA24 */ bool StartShock(int i_vibmode, int i_flags, cXyz i_pos);
|
||||
/* 8006FC0C */ bool StartQuake(const u8* i_pattern, int i_rounds, int i_flags, cXyz i_pos);
|
||||
/* 8006FB10 */ bool StartQuake(int i_vibmode, int i_flags, cXyz i_pos);
|
||||
/* 8006FD94 */ int StopQuake(int i_flags);
|
||||
/* 8006FE00 */ void Kill();
|
||||
/* 8006FE5C */ bool CheckQuake();
|
||||
/* 8006FE84 */ void setDefault();
|
||||
@@ -18,10 +62,10 @@ public:
|
||||
/* 8006FF38 */ void Pause();
|
||||
/* 8006FFF8 */ void Remove();
|
||||
|
||||
static dVibration_pattern const MS_patt[11];
|
||||
static dVibration_pattern const CS_patt[11];
|
||||
static dVibration_pattern const MQ_patt[10];
|
||||
static dVibration_pattern const CQ_patt[10];
|
||||
static const vib_pattern MS_patt[VIBMODE_S_MAX];
|
||||
static const vib_pattern CS_patt[VIBMODE_S_MAX];
|
||||
static const vib_pattern MQ_patt[VIBMODE_Q_MAX];
|
||||
static const vib_pattern CQ_patt[VIBMODE_Q_MAX];
|
||||
|
||||
private:
|
||||
class {
|
||||
@@ -29,31 +73,30 @@ private:
|
||||
class {
|
||||
public:
|
||||
/* 0x00 */ u32 field_0x0;
|
||||
/* 0x04 */ s32 field_0x4;
|
||||
/* 0x08 */ s32 field_0x8;
|
||||
/* 0x0C */ s32 field_0xc;
|
||||
/* 0x10 */ s32 field_0x10;
|
||||
/* 0x14 */ s32 field_0x14;
|
||||
/* 0x18 */ cXyz field_0x18;
|
||||
/* 0x24 */ s32 field_0x24;
|
||||
/* 0x04 */ int mVibMode;
|
||||
/* 0x08 */ u32 mPattern;
|
||||
/* 0x0C */ s32 mLength;
|
||||
/* 0x10 */ s32 mRounds;
|
||||
/* 0x14 */ s32 mFlags;
|
||||
/* 0x18 */ cXyz mPos;
|
||||
/* 0x24 */ s32 mFrame;
|
||||
} mShock, mQuake;
|
||||
} /* 0x00 */ field_0x0;
|
||||
/* 0x50 */ u32 field_0x50;
|
||||
/* 0x54 */ int field_0x54;
|
||||
/* 0x58 */ s32 field_0x58;
|
||||
/* 0x5C */ s32 field_0x5c;
|
||||
/* 0x60 */ s32 field_0x60;
|
||||
/* 0x64 */ s32 field_0x64;
|
||||
/* 0x68 */ s32 field_0x68;
|
||||
/* 0x6C */ u32 field_0x6c;
|
||||
/* 0x70 */ s32 field_0x70;
|
||||
/* 0x74 */ u32 field_0x74;
|
||||
/* 0x78 */ u32 field_0x78;
|
||||
/* 0x7C */ s32 field_0x7c;
|
||||
/* 0x80 */ s32 field_0x80;
|
||||
/* 0x84 */ s32 field_0x84;
|
||||
/* 0x88 */ s32 field_0x88;
|
||||
/* 0x8C */ s32 field_0x8c;
|
||||
} /* 0x00 */ mCamera;
|
||||
class {
|
||||
public:
|
||||
class {
|
||||
public:
|
||||
/* 0x00 */ u32 field_0x0;
|
||||
/* 0x04 */ int mVibMode;
|
||||
/* 0x08 */ u32 mPattern;
|
||||
/* 0x0C */ s32 mLength;
|
||||
/* 0x10 */ s32 mRounds;
|
||||
/* 0x14 */ s32 mFrame;
|
||||
/* 0x18 */ s32 mStopFrame;
|
||||
} mShock, mQuake;
|
||||
} /* 0x50 */ mMotor;
|
||||
/* 0x88 */ s32 mFrame;
|
||||
/* 0x8C */ s32 mMode;
|
||||
}; // Size: 0x90
|
||||
|
||||
#endif /* D_D_VIBRATION_H */
|
||||
|
||||
Reference in New Issue
Block a user