d_lyt_meter_nunchaku_bg OK

This commit is contained in:
robojumper
2025-04-15 00:32:30 +02:00
parent 3403907ba6
commit ba4a58df23
5 changed files with 53 additions and 22 deletions
+18 -18
View File
@@ -31362,20 +31362,20 @@ lbl_80514D60 = .data:0x80514D60; // type:object size:0xF data:string
lbl_80514D70 = .data:0x80514D70; // type:object size:0x13 data:string
__vt__20dLytMeterRemoconBg_c = .data:0x80514D84; // type:object size:0x34
__vt__35sFStateID_c<20dLytMeterRemoconBg_c> = .data:0x80514EDC; // type:object size:0x34
lbl_80514F10 = .data:0x80514F10; // type:object size:0x18
lbl_80514F28 = .data:0x80514F28; // type:object size:0xC
lbl_80514F34 = .data:0x80514F34; // type:object size:0x1C
lbl_80514F10 = .data:0x80514F10; // type:object size:0x15 data:string
lbl_80514F28 = .data:0x80514F28; // type:object size:0xB data:string
lbl_80514F34 = .data:0x80514F34; // type:object size:0x16 data:string
lbl_80514F50 = .data:0x80514F50; // type:object size:0x10 data:string
lbl_80514F60 = .data:0x80514F60; // type:object size:0x14 data:string
lbl_80514F74 = .data:0x80514F74; // type:object size:0xC
lbl_80514F80 = .data:0x80514F80; // type:object size:0xC
lbl_80514F8C = .data:0x80514F8C; // type:object size:0x10
lbl_80514F9C = .data:0x80514F9C; // type:object size:0x10
lbl_80514FAC = .data:0x80514FAC; // type:object size:0xC
lbl_80514FB8 = .data:0x80514FB8; // type:object size:0x10
lbl_80514FC8 = .data:0x80514FC8; // type:object size:0x10
lbl_80514FD8 = .data:0x80514FD8; // type:object size:0x10
__vt__21dLytMeterNunchakuBg_c = .data:0x80514FE8; // type:object size:0x158
lbl_80514F74 = .data:0x80514F74; // type:object size:0xA data:string
lbl_80514F80 = .data:0x80514F80; // type:object size:0xB data:string
lbl_80514F8C = .data:0x80514F8C; // type:object size:0xE data:string
lbl_80514F9C = .data:0x80514F9C; // type:object size:0xF data:string
lbl_80514FAC = .data:0x80514FAC; // type:object size:0x9 data:string
lbl_80514FB8 = .data:0x80514FB8; // type:object size:0xF data:string
lbl_80514FC8 = .data:0x80514FC8; // type:object size:0xE data:string
lbl_80514FD8 = .data:0x80514FD8; // type:object size:0xD data:string
__vt__21dLytMeterNunchakuBg_c = .data:0x80514FE8; // type:object size:0x34
__vt__36sFStateID_c<21dLytMeterNunchakuBg_c> = .data:0x80515140; // type:object size:0x34
lbl_80515178 = .data:0x80515178; // type:object size:0x16 data:string
lbl_80515190 = .data:0x80515190; // type:object size:0xB data:string
@@ -38134,9 +38134,9 @@ lbl_805723A0 = .sdata:0x805723A0; // type:object size:0x8 data:4byte
lbl_805723A8 = .sdata:0x805723A8; // type:object size:0x4 data:4byte
lbl_805723AC = .sdata:0x805723AC; // type:object size:0x5 data:string
lbl_805723B8 = .sdata:0x805723B8; // type:object size:0x4 data:4byte
lbl_805723C0 = .sdata:0x805723C0; // type:object size:0x8 data:4byte
lbl_805723C0 = .sdata:0x805723C0; // type:object size:0x4 data:4byte
lbl_805723C8 = .sdata:0x805723C8; // type:object size:0x8 data:4byte
lbl_805723D0 = .sdata:0x805723D0; // type:object size:0x8 data:4byte
lbl_805723D0 = .sdata:0x805723D0; // type:object size:0x4 data:4byte
lbl_805723D8 = .sdata:0x805723D8; // type:object size:0x4 data:4byte
lbl_805723E0 = .sdata:0x805723E0; // type:object size:0x8 data:4byte
lbl_805723E8 = .sdata:0x805723E8; // type:object size:0x4 data:4byte
@@ -48663,10 +48663,10 @@ StateID_Move__16dLytMeterDrink_c = .bss:0x805AA960; // type:object size:0x30 dat
StateID_Out__16dLytMeterDrink_c = .bss:0x805AA9A0; // type:object size:0x30 data:4byte
lbl_805AA9D0 = .bss:0x805AA9D0; // type:object size:0xC
LytMeterRemoconBg__STATE_WAIT = .bss:0x805AA9E0; // type:object size:0x30 data:4byte
lbl_805AAAD0 = .bss:0x805AAAD0; // type:object size:0x10
LytMeterNunchakuBg__STATE_WAIT = .bss:0x805AAAE0; // type:object size:0x40 data:4byte
LytMeterNunchakuBg__STATE_ON = .bss:0x805AAB20; // type:object size:0x40 data:4byte
LytMeterNunchakuBg__STATE_ACTIVE = .bss:0x805AAB60; // type:object size:0x40 data:4byte
lbl_805AAAD0 = .bss:0x805AAAD0; // type:object size:0xC
LytMeterNunchakuBg__STATE_WAIT = .bss:0x805AAAE0; // type:object size:0x30 data:4byte
LytMeterNunchakuBg__STATE_ON = .bss:0x805AAB20; // type:object size:0x30 data:4byte
LytMeterNunchakuBg__STATE_ACTIVE = .bss:0x805AAB60; // type:object size:0x30 data:4byte
LytMeterNunchakuBg__STATE_OFF = .bss:0x805AABA0; // type:object size:0x30 data:4byte
lbl_805AABD0 = .bss:0x805AABD0; // type:object size:0xC
LytMeterNunStk__STATE_WAIT = .bss:0x805AABE0; // type:object size:0x30 data:4byte
+1 -1
View File
@@ -391,7 +391,7 @@ config.libs = [
Object(NonMatching, "d/lyt/meter/d_lyt_meter_key.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_drink.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_remocon_bg.cpp"),
Object(NonMatching, "d/lyt/meter/d_lyt_meter_nunchaku_bg.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_nunchaku_bg.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_nun_stk.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_item_select.cpp"),
Object(Matching, "d/lyt/meter/d_lyt_meter_plus_btn.cpp"),
+8 -2
View File
@@ -43,7 +43,7 @@ public:
bool build(d2d::ResAccIf_c *resAcc);
bool remove();
bool draw();
bool fn_800D5380(u8);
bool fn_800D5650();
bool fn_800D5680();
@@ -218,7 +218,13 @@ public:
}
}
static u8 getDowsing0x550A() {
if (sInstance != nullptr) {
return sInstance->mMeter.mDowsing.getField_0x550A();
} else {
return 0;
}
}
private:
/* 0x00004 */ d2d::ResAccIf_c mResAcc;
@@ -152,6 +152,10 @@ public:
bool fn_800FE4B0() const;
bool fn_800FE610();
u8 getField_0x550A() const {
return field_0x550A;
}
private:
void setItemName(s32 id);
void setMessage(s32 id);
+22 -1
View File
@@ -204,7 +204,28 @@ bool dLytMeterNunchakuBg_c::execute() {
field_0x1B4 = LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_NUN_BG);
field_0x1B8 = LytDoButtonRelated::getHas(LytDoButtonRelated::DO_BUTTON_NUN_BG);
bool hasZ = LytDoButtonRelated::getHas(LytDoButtonRelated::DO_BUTTON_Z);
bool hasNunStk = LytDoButtonRelated::getHas(LytDoButtonRelated::DO_BUTTON_NUN_STK);
u8 val = dLytMeterContainer_c::getDowsing0x550A();
if (hasNunStk != field_0x1C5 || val != field_0x1C6) {
field_0x1C5 = hasNunStk;
field_0x1C6 = val;
if (hasNunStk) {
mAnm[NUN_BG_ANIM_ARROWV].setFrame(1.0f);
mAnm[NUN_BG_ANIM_ARROWV].setAnimEnable(true);
dLytMeterContainer_c::GetMeter()->getNunStk()->getBgPane()->SetVisible(true);
} else {
if (val) {
mAnm[NUN_BG_ANIM_ARROWV].setFrame(1.0f);
mAnm[NUN_BG_ANIM_ARROWV].setAnimEnable(true);
} else {
mAnm[NUN_BG_ANIM_ARROWV].setFrame(0.0f);
mAnm[NUN_BG_ANIM_ARROWV].setAnimEnable(true);
setMessage(field_0x1B4);
}
dLytMeterContainer_c::GetMeter()->getNunStk()->getBgPane()->SetVisible(false);
}
}
mStateMgr.executeState();
for (int i = 0; i < NUN_BG_NUM_ANIMS; i++) {