d_lyt_meter_key OK

This commit is contained in:
robojumper
2025-04-16 20:45:35 +02:00
parent 568268a9a8
commit 2d4c0f0468
7 changed files with 374 additions and 64 deletions
+2 -1
View File
@@ -59,7 +59,8 @@ public:
static s32 getTotalSeedCapacity();
static s32 getTotalArrowCapacity();
static bool getKeyPieceCount();
static u32 getKeyPieceCount();
static u32 getSmallKeyCount();
static bool isRupee(ITEM_ID item);
static bool isKeyPiece(ITEM_ID item);
+1 -1
View File
@@ -189,7 +189,7 @@ struct STIF {
/* 0x0F */ u8 field_0x0F;
/* 0x10 */ u8 field_0x10;
/* 0x11 */ u8 field_0x11;
/* 0x12 */ u8 mapNameId;
/* 0x12 */ s8 mapNameId;
/* 0x13 */ u8 field_0x13;
};
+1
View File
@@ -54,6 +54,7 @@ public:
s32 getSTIFunk1() const;
s32 getAreaType() const;
s32 getMapNameId() const;
static dStageMgr_c *GetInstance() {
return sInstance;
+22 -4
View File
@@ -1,6 +1,7 @@
#ifndef D_LYT_METER_KEY_H
#define D_LYT_METER_KEY_H
#include "common.h"
#include "d/lyt/d2d.h"
#include "m/m_vec.h"
#include "nw4r/lyt/lyt_pane.h"
@@ -49,8 +50,11 @@ public:
bool build(d2d::ResAccIf_c *);
bool remove();
bool execute();
bool draw();
void setPosition(s32 position);
private:
STATE_FUNC_DECLARE(dLytMeterBossKey_c, Wait);
STATE_FUNC_DECLARE(dLytMeterBossKey_c, On);
@@ -60,8 +64,13 @@ private:
/* 0x004 */ UI_STATE_MGR_DECLARE(dLytMeterBossKey_c);
/* 0x040 */ d2d::dLytSub mLyt;
/* 0x0D4 */ d2d::AnmGroup_c mAnm[5];
/* 0x214 */ u32 field_0x2D0;
/* 0x218 */ mVec3_c mVecs[4];
/* 0x214 */ nw4r::lyt::Pane *mpPane;
/* 0x218 */ mVec3_c mPanePositions[4];
/* 0x248 */ mVec3_c mPosition;
/* 0x254 */ s32 mPosititionIndex;
/* 0x258 */ s32 mOldPosititionIndex;
/* 0x25C */ s32 mMovementFrame;
/* 0x260 */ u8 mShouldBeVisible;
};
class dLytMeterSmallKey_c {
@@ -74,8 +83,11 @@ public:
bool build(d2d::ResAccIf_c *);
bool remove();
bool execute();
bool draw();
void setPosition(s32 position);
private:
STATE_FUNC_DECLARE(dLytMeterSmallKey_c, Wait);
STATE_FUNC_DECLARE(dLytMeterSmallKey_c, On);
@@ -85,8 +97,14 @@ private:
/* 0x004 */ UI_STATE_MGR_DECLARE(dLytMeterSmallKey_c);
/* 0x040 */ d2d::dLytSub mLyt;
/* 0x0D4 */ d2d::AnmGroup_c mAnm[5];
/* 0x214 */ u32 field_0x2D0;
/* 0x218 */ mVec3_c mVecs[4];
/* 0x214 */ nw4r::lyt::Pane *mpPane;
/* 0x218 */ mVec3_c mPanePositions[4];
/* 0x248 */ mVec3_c mPosition;
/* 0x254 */ s32 mSavedSmallKeyCount;
/* 0x258 */ s32 mPosititionIndex;
/* 0x25C */ s32 mOldPosititionIndex;
/* 0x260 */ s32 mMovementFrame;
/* 0x264 */ u8 mShouldBeVisible;
};
#endif