d_lyt_meter_plus_btn OK

This commit is contained in:
robojumper
2025-04-11 22:54:51 +02:00
parent f250e6fa8f
commit 95ef1d3193
15 changed files with 457 additions and 111 deletions
+10
View File
@@ -121,6 +121,10 @@ public:
return &mFader;
}
bool isInLastBoss() const {
return mIsInLastBoss;
}
private:
static void lastExecuteCallback();
@@ -165,6 +169,12 @@ private:
/* 0x88A0 */ u32 field_0x88A0;
/* 0x88A4 */ SizedString<16> mDemoName;
/* 0x88B4 */ u8 _0x88B4[0x88BC - 0x88B4];
/* 0x88BC */ bool field_0x88BC;
/* 0x88BD */ u8 field_0x88BD;
/* 0x88BE */ u8 field_0x88BE;
/* 0x88BF */ u8 field_0x88BF;
/* 0x88C0 */ u8 field_0x88C0;
/* 0x88C1 */ bool mIsInLastBoss;
};
#endif
+2
View File
@@ -35,6 +35,8 @@ public:
DO_BUTTON_NUN_STK = 4,
DO_BUTTON_REMOCON_BG = 5,
DO_BUTTON_NUN_BG = 6,
DO_BUTTON_PLUS = 11,
};
static void set(DoButton_e button, Action_e value) {
+1 -1
View File
@@ -47,7 +47,7 @@ private:
/* 0x170 */ s32 field_0x170;
/* 0x174 */ s32 field_0x174;
/* 0x178 */ BOOL field_0x178;
/* 0x17C */ s32 field_0x17C;
/* 0x17C */ s32 mDisplayedAction;
/* 0x180 */ s32 mOnDelay;
/* 0x184 */ bool field_0x184;
/* 0x185 */ u8 field_0x185;
+33 -6
View File
@@ -2,8 +2,9 @@
#define D_LYT_METER_PLUS_BTN_H
#include "d/lyt/d2d.h"
#include "d/lyt/d_textbox.h"
#include "nw4r/lyt/lyt_pane.h"
#include "s/s_State.hpp"
#include "s/s_StateMgr.hpp"
class dLytMeterPlusBtn_c : public d2d::dSubPane {
public:
@@ -11,12 +12,26 @@ public:
virtual bool build(d2d::ResAccIf_c *resAcc) override;
virtual bool remove() override;
virtual bool execute() override;
virtual nw4r::lyt::Pane *getPane() override;
virtual d2d::LytBase_c *getLyt() override;
virtual const char *getName() const override;
virtual nw4r::lyt::Pane *getPane() override {
return mLyt.getLayout()->GetRootPane();
}
virtual d2d::LytBase_c *getLyt() override {
return &mLyt;
}
virtual const char *getName() const override {
return mLyt.getName();
}
virtual ~dLytMeterPlusBtn_c() {}
bool isCalling() const;
void setCall(bool shouldCall);
private:
void setMessage(s32 id);
bool isMapOpen() const;
static bool hasSpecificMapMark();
STATE_FUNC_DECLARE(dLytMeterPlusBtn_c, Wait);
STATE_FUNC_DECLARE(dLytMeterPlusBtn_c, ToUse);
STATE_FUNC_DECLARE(dLytMeterPlusBtn_c, ToUnuse);
@@ -24,8 +39,20 @@ private:
/* 0x004 */ UI_STATE_MGR_DECLARE(dLytMeterPlusBtn_c);
/* 0x040 */ d2d::dLytSub mLyt;
/* 0x0D8 */ d2d::AnmGroup_c mAnmGroups[3];
/* 0x??? */ u8 padding[0x7A64 - 0x7A38];
/* 0x0D8 */ d2d::AnmGroup_c mAnm[3];
/* 0x198 */ nw4r::lyt::Pane *mpPane[1];
/* 0x19C */ nw4r::lyt::Pane *mpOwnerPane;
/* 0x1A0 */ dTextBox_c *mpTextBoxes[2];
/* 0x1A8 */ dWindow_c *mpWindow[1];
/* 0x1AC */ dTextBox_c *mpSizeBox[1];
/* 0x1B0 */ s32 field_0x1B0;
/* 0x1B4 */ s32 field_0x1B4;
/* 0x1B8 */ s32 mCallCount;
/* 0x1BC */ s32 field_0x1BC;
/* 0x1C0 */ bool field_0x1C0;
/* 0x1C1 */ bool field_0x1C1;
/* 0x1C2 */ bool mShouldCall;
/* 0x1C3 */ bool field_0x1C3;
};
#endif
+16 -3
View File
@@ -1,14 +1,27 @@
#ifndef D_T_MAP_MARK_H
#define D_T_MAP_MARK_H
#include "d/a/d_a_base.h"
#include "d/t/d_tg.h"
class dTgMapMark_c : public dAcBase_c {
class dTgMapMark_c : public dTg_c {
public:
dTgMapMark_c() {}
virtual ~dTgMapMark_c() {}
private:
/* 0x0FC */ u16 mTriggerStoryFlag;
/* 0x0FE */ u16 rotz_shift8_0xff;
/* 0x100 */ u8 shift4_0x8;
/* 0x101 */ u8 shift23_0x8;
/* 0x102 */ u8 shift0_0x3;
/* 0x103 */ u8 shift2_0x3;
/* 0x104 */ u8 shift4_0x3f;
/* 0x105 */ u8 rotz_shift0_0xff;
/* 0x108 */ s32 rotz_shift0_0xf;
/* 0x10C */ bool field_0x10C;
/* 0x10D */ bool field_0x10D;
/* 0x10E */ bool field_0x10E;
/* 0x10F */ u8 rotz_shift10_0x3;
/* 0x110 */ u8 rotz_shift12_0x3;
};
#endif