mirror of
https://github.com/zeldaret/ss
synced 2026-09-04 10:12:14 -04:00
A start
This commit is contained in:
+2
-2
@@ -228,8 +228,8 @@ bool dFlow_c::handleEventInternal(const MsbFlowInfo *element) {
|
||||
switch (element->param3) {
|
||||
case EVENT_SET_STORYFLAG:
|
||||
StoryflagManager::sInstance->setFlag(params1n2);
|
||||
if (params1n2 == 0x52) {
|
||||
dLytMeter_c::GetInstance()->setMeterField_0x13775(true);
|
||||
if (params1n2 == STORYFLAG_HAS_TADTONE_SCROLL) {
|
||||
dLytMeter_c::GetInstance()->setIsCollectingTadtoneScroll(true);
|
||||
}
|
||||
if (dLytMsgWindow_c::fn_800D7B40() != 50013 && dLytMsgWindow_c::fn_800D7B40() != 20061) {
|
||||
if (params1n2 == 100 || params1n2 == 64 || params1n2 == 271 || params1n2 == 81 || params1n2 == 668 ||
|
||||
|
||||
@@ -101,7 +101,7 @@ void dLytForceLineParts_c::initializeState_Move() {
|
||||
void dLytForceLineParts_c::executeState_Move() {
|
||||
bool isDone = false;
|
||||
|
||||
if (dLytMeter_c::getfn_800C9F70()) {
|
||||
if (dLytMeter_c::shouldHideLytClef()) {
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
mMoveRequest = false;
|
||||
mIsDone = true;
|
||||
|
||||
@@ -0,0 +1,724 @@
|
||||
#include "d/lyt/d_lyt_suiryu_score.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "d/d_pad.h"
|
||||
#include "d/d_sc_game.h"
|
||||
#include "d/d_vec.h"
|
||||
#include "d/flag/storyflag_manager.h"
|
||||
#include "d/lyt/d2d.h"
|
||||
#include "d/lyt/d_lyt_force_line.h"
|
||||
#include "d/lyt/meter/d_lyt_meter.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "toBeSorted/arc_managers/layout_arc_manager.h"
|
||||
#include "toBeSorted/misc_actor.h"
|
||||
|
||||
STATE_DEFINE(dLytMeterSuiryuScoreBase_c, None);
|
||||
STATE_DEFINE(dLytMeterSuiryuScoreBase_c, In);
|
||||
STATE_DEFINE(dLytMeterSuiryuScoreBase_c, Wait);
|
||||
STATE_DEFINE(dLytMeterSuiryuScoreBase_c, Out);
|
||||
|
||||
#define SUIRYU_SCORE_BASE_ANIM_IN 0
|
||||
#define SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET 1
|
||||
#define SUIRYU_SCORE_BASE_ANIM_MOVE_1 4
|
||||
#define SUIRYU_SCORE_BASE_ANIM_MOVE_2 5
|
||||
#define SUIRYU_SCORE_BASE_ANIM_MOVE_3 6
|
||||
#define SUIRYU_SCORE_BASE_ANIM_MOVE_123 7
|
||||
#define SUIRYU_SCORE_BASE_ANIM_MOVE_ALL 8
|
||||
#define SUIRYU_SCORE_BASE_ANIM_FIX_COLOR_OFFSET 9
|
||||
#define SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET 26
|
||||
#define SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET 43
|
||||
#define SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET 60
|
||||
#define SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET 77
|
||||
#define SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET 94
|
||||
#define SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET 111
|
||||
#define SUIRYU_SCORE_BASE_ANIM_OUT 128
|
||||
|
||||
#define SUIRYU_SCORE_BASE_NUM_NOTE_ANIMS 17
|
||||
#define SUIRYU_SCORE_BASE_NUM_ALPHA_ANIMS 3
|
||||
#define SUIRYU_SCORE_BASE_NUM_ANIMS 129
|
||||
|
||||
#define SUIRYU_SCORE_BASE_NUM_PANES 77
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::initializeState_None() {}
|
||||
void dLytMeterSuiryuScoreBase_c::executeState_None() {}
|
||||
void dLytMeterSuiryuScoreBase_c::finalizeState_None() {}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::initializeState_In() {}
|
||||
void dLytMeterSuiryuScoreBase_c::executeState_In() {}
|
||||
void dLytMeterSuiryuScoreBase_c::finalizeState_In() {}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::initializeState_Wait() {}
|
||||
void dLytMeterSuiryuScoreBase_c::executeState_Wait() {
|
||||
if (mAnm[SUIRYU_SCORE_BASE_ANIM_IN].isEnabled() && mAnm[SUIRYU_SCORE_BASE_ANIM_IN].isEndReached()) {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setAnimEnable(false);
|
||||
field_0x2264 = 2;
|
||||
}
|
||||
|
||||
if (mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].isEnabled() && mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].isEndReached()) {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setAnimEnable(false);
|
||||
field_0x2264 = 0;
|
||||
dLytMeter_c::setGanbariClefRelated(false);
|
||||
}
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_ALPHA_ANIMS; i++) {
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET].isStop2()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET].setAnimEnable(false);
|
||||
}
|
||||
}
|
||||
|
||||
int i;
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_NOTE_ANIMS; i++) {
|
||||
if (field_0x2251[i] == 0 && mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].isEnabled()) {
|
||||
field_0x2262 = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_NOTE_ANIMS; i++) {
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].setFrame(0.0f);
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].setAnimEnable(false);
|
||||
}
|
||||
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].setFrame(0.0f);
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].setAnimEnable(false);
|
||||
}
|
||||
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].setFrame(0.0f);
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].setAnimEnable(false);
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 0 && mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].isEnabled() &&
|
||||
30.0f < mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].getFrame()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].setFrame(0.0f);
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].setAnimEnable(false);
|
||||
}
|
||||
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET].setAnimEnable(false);
|
||||
field_0x2251[i] = 3;
|
||||
}
|
||||
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET].setAnimEnable(false);
|
||||
field_0x2251[i] = 3;
|
||||
}
|
||||
|
||||
if (mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET].isEnabled() &&
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET].isEndReached()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET].setAnimEnable(false);
|
||||
field_0x2251[i] = 3;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_NOTE_ANIMS; i++) {
|
||||
if (mAnm[field_0x2262 + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].isStartReached() == true) {
|
||||
if (field_0x2251[i] == 0 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOOP_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 0 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 1 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_LOST_LOOP_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 2 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 2 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_P_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
|
||||
if (field_0x2251[i] == 2 && !mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET].isEnabled()) {
|
||||
mAnm[i + SUIRYU_SCORE_BASE_ANIM_FIX_N_LOOP_OFFSET].setAnimEnable(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
void dLytMeterSuiryuScoreBase_c::finalizeState_Wait() {}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::initializeState_Out() {}
|
||||
void dLytMeterSuiryuScoreBase_c::executeState_Out() {}
|
||||
void dLytMeterSuiryuScoreBase_c::finalizeState_Out() {}
|
||||
|
||||
static const d2d::LytBrlanMapping scoreBaseBrlanMap[] = {
|
||||
{ "suiryuScoreBase_00_in.brlan", "G_inOutAll_00"},
|
||||
{ "suiryuScoreBase_00_baseAlpha.brlan", "G_baseAlpha_00"},
|
||||
{ "suiryuScoreBase_00_baseAlpha.brlan", "G_baseAlpha_01"},
|
||||
{ "suiryuScoreBase_00_baseAlpha.brlan", "G_baseAlpha_02"},
|
||||
{ "suiryuScoreBase_00_move1.brlan", "G_scroll_00"},
|
||||
{ "suiryuScoreBase_00_move2.brlan", "G_scroll_00"},
|
||||
{ "suiryuScoreBase_00_move3.brlan", "G_scroll_00"},
|
||||
{ "suiryuScoreBase_00_move123.brlan", "G_scroll_00"},
|
||||
{ "suiryuScoreBase_00_moveAll.brlan", "G_scroll_00"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_00"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_01"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_02"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_03"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_04"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_05"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_06"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_07"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_08"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_09"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_10"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_11"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_12"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_13"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_14"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_15"},
|
||||
{ "suiryuScoreBase_00_noteFixColor.brlan", "G_scoreFixP_16"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_00"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_01"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_02"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_03"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_04"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_05"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_06"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_07"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_08"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_09"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_10"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_11"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_12"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_13"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_14"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_15"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreLoop_16"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_00"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_01"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_02"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_03"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_04"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_05"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_06"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_07"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_08"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_09"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_10"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_11"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_12"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_13"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_14"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_15"},
|
||||
{ "suiryuScoreBase_00_noteLoop.brlan", "G_scoreFixN_16"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_00"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_01"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_02"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_03"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_04"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_05"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_06"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_07"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_08"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_09"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_10"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_11"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_12"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_13"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_14"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_15"},
|
||||
{"suiryuScoreBase_00_noteLostLoopB.brlan", "G_scoreLoop_16"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_00"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_01"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_02"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_03"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_04"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_05"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_06"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_07"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_08"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_09"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_10"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_11"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_12"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_13"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_14"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_15"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreFixN_16"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_00"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_01"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_02"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_03"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_04"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_05"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_06"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_07"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_08"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_09"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_10"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_11"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_12"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_13"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_14"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_15"},
|
||||
{ "suiryuScoreBase_00_noteFixN.brlan", "G_scoreLoop_16"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_00"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_01"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_02"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_03"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_04"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_05"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_06"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_07"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_08"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_09"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_10"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_11"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_12"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_13"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_14"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_15"},
|
||||
{ "suiryuScoreBase_00_noteFixP.brlan", "G_scoreFixP_16"},
|
||||
{ "suiryuScoreBase_00_out.brlan", "G_inOutAll_00"},
|
||||
};
|
||||
|
||||
static const char *scoreBasePanes[] = {
|
||||
"N_scoreA_00", "N_scoreB_00", "N_scoreB_01", "N_scoreB_02", "N_scoreB_03", "N_scoreC_00", "N_scoreC_01",
|
||||
"N_scoreD_00", "N_scoreD_01", "N_scoreD_02", "N_scoreD_03", "N_scoreD_04", "N_scoreD_05", "N_scoreD_06",
|
||||
"N_scoreD_07", "N_scoreE_00", "N_scoreF_00", "N_scoreF_01", "N_scoreF_02", "N_scoreF_03", "N_scoreF_04",
|
||||
"N_scoreF_05", "N_scoreF_06", "N_scoreF_07", "N_scoreG_00", "N_scoreH_00", "N_scoreH_01", "N_scoreH_02",
|
||||
"N_scoreH_03", "N_scoreI_00", "N_scoreI_01", "N_scoreI_02", "N_scoreI_03", "N_scoreI_04", "N_scoreI_05",
|
||||
"N_scoreI_06", "N_scoreI_07", "N_scoreJ_00", "N_scoreK_00", "N_scoreK_01", "N_scoreK_02", "N_scoreK_03",
|
||||
"N_scoreL_00", "N_scoreL_01", "N_scoreL_02", "N_scoreL_03", "N_scoreL_04", "N_scoreL_05", "N_scoreL_06",
|
||||
"N_scoreL_07", "N_scoreM_00", "N_scoreN_00", "N_scoreN_01", "N_scoreN_02", "N_scoreN_03", "N_scoreO_00",
|
||||
"N_scoreO_01", "N_scoreP_00", "N_scoreP_01", "N_scoreP_02", "N_scoreP_03", "N_scoreQ_00", "N_scoreQ_01",
|
||||
"N_scoreQ_02", "N_scoreQ_03", "N_scoreQ_04", "N_scoreQ_05", "N_scoreQ_06", "N_scoreQ_07", "N_scoreQ_08",
|
||||
"N_scoreQ_09", "N_scoreQ_10", "N_scoreQ_11", "N_scoreQ_12", "N_scoreQ_13", "N_scoreQ_14", "N_scoreQ_15",
|
||||
};
|
||||
|
||||
static const char *scoreBasePaneInOutAll = "N_inOutAll_00";
|
||||
|
||||
bool dLytMeterSuiryuScoreBase_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
mLyt.setResAcc(resAcc);
|
||||
mLyt.build("suiryuScoreBase_00.brlyt", nullptr);
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_ANIMS; i++) {
|
||||
mAnm[i].init(scoreBaseBrlanMap[i].mFile, resAcc, mLyt.getLayout(), scoreBaseBrlanMap[i].mName);
|
||||
mAnm[i].bind(false);
|
||||
mAnm[i].setRate(1.0f);
|
||||
mAnm[i].setAnimEnable(false);
|
||||
}
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_PANES; i++) {
|
||||
mpPanes[i] = mLyt.findPane(scoreBasePanes[i]);
|
||||
}
|
||||
|
||||
mpPaneInOutAll = mLyt.findPane(scoreBasePaneInOutAll);
|
||||
mMainTranslate.x = mpPaneInOutAll->GetTranslate().x;
|
||||
mMainTranslate.y = mpPaneInOutAll->GetTranslate().y;
|
||||
|
||||
for (int i = SUIRYU_SCORE_BASE_ANIM_MOVE_1; i <= SUIRYU_SCORE_BASE_ANIM_MOVE_ALL; i++) {
|
||||
mAnm[i].setAnimEnable(false);
|
||||
}
|
||||
|
||||
dLytForceLine_c::initPos(&mLyt, &mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_123]);
|
||||
|
||||
initAnm();
|
||||
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
field_0x2264 = 0;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterSuiryuScoreBase_c::remove() {
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_ANIMS; i++) {
|
||||
mAnm[i].unbind();
|
||||
mAnm[i].remove();
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterSuiryuScoreBase_c::execute() {
|
||||
if (fn_80298600()) {
|
||||
fn_80298B10();
|
||||
}
|
||||
|
||||
if (dScGame_c::isCurrentStage("F103") && dScGame_c::currentSpawnInfo.layer == 13) {
|
||||
mVec2_c t(mMainTranslate.x, mMainTranslate.y + 110.0f);
|
||||
mpPaneInOutAll->SetTranslate(vec2ToVec3XY(t));
|
||||
} else {
|
||||
mpPaneInOutAll->SetTranslate(vec2ToVec3XY(mMainTranslate));
|
||||
}
|
||||
|
||||
mStateMgr.executeState();
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_BASE_NUM_ANIMS; i++) {
|
||||
if (mAnm[i].isEnabled()) {
|
||||
mAnm[i].play();
|
||||
}
|
||||
}
|
||||
|
||||
mLyt.calc();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterSuiryuScoreBase_c::draw() {
|
||||
mLyt.addToDrawList();
|
||||
return true;
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::initAnm() {}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::startIn() {
|
||||
if (field_0x2264 == 0) {
|
||||
if (dScGame_c::isCurrentStage("F103") && dScGame_c::currentSpawnInfo.layer == 13) {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setRate(1.0f / 3.0f);
|
||||
} else {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setRate(1.0f);
|
||||
}
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setForwardOnce();
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setFrame(0.0f);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_IN].setAnimEnable(true);
|
||||
field_0x2264 = 1;
|
||||
dLytMeter_c::setGanbariClefRelated(true);
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::startOut() {
|
||||
if (field_0x2264 == 2) {
|
||||
if (dScGame_c::isCurrentStage("F103") && dScGame_c::currentSpawnInfo.layer == 13) {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setRate(1.0f / 3.0f);
|
||||
} else {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setRate(1.0f);
|
||||
}
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setForwardOnce();
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setFrame(0.0f);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_OUT].setAnimEnable(true);
|
||||
field_0x2264 = 3;
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::setColor0(s32 idx) {
|
||||
s32 actualIdx = idx + SUIRYU_SCORE_BASE_ANIM_FIX_COLOR_OFFSET;
|
||||
mAnm[actualIdx].setFrame(0.0f);
|
||||
mAnm[actualIdx].setAnimEnable(true);
|
||||
mLyt.calc();
|
||||
mAnm[actualIdx].setAnimEnable(false);
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::setColor1(s32 idx) {
|
||||
s32 actualIdx = idx + SUIRYU_SCORE_BASE_ANIM_FIX_COLOR_OFFSET;
|
||||
mAnm[actualIdx].setFrame(1.0f);
|
||||
mAnm[actualIdx].setAnimEnable(true);
|
||||
mLyt.calc();
|
||||
mAnm[actualIdx].setAnimEnable(false);
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::alphaBackwards(s32 idx, f32 rate) {
|
||||
s32 actualIdx = idx + SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET;
|
||||
mAnm[actualIdx].setBackwardsOnce();
|
||||
mAnm[actualIdx].setRate(rate);
|
||||
mAnm[actualIdx].setAnimEnable(true);
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::alphaForwards(s32 idx, f32 rate) {
|
||||
s32 actualIdx = idx + SUIRYU_SCORE_BASE_ANIM_ALPHA_OFFSET;
|
||||
mAnm[actualIdx].setForwardOnce();
|
||||
mAnm[actualIdx].setRate(rate);
|
||||
mAnm[actualIdx].setAnimEnable(true);
|
||||
}
|
||||
|
||||
void dLytMeterSuiryuScoreBase_c::stopMove() {
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_1].setAnimEnable(false);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_2].setAnimEnable(false);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_3].setAnimEnable(false);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_123].setAnimEnable(false);
|
||||
mAnm[SUIRYU_SCORE_BASE_ANIM_MOVE_ALL].setAnimEnable(false);
|
||||
}
|
||||
|
||||
STATE_DEFINE(dLytMeterClefMain_c, None);
|
||||
STATE_DEFINE(dLytMeterClefMain_c, In);
|
||||
STATE_DEFINE(dLytMeterClefMain_c, Wait);
|
||||
STATE_DEFINE(dLytMeterClefMain_c, Out);
|
||||
|
||||
#define SUIRYU_SCORE_NUM_NOTES 24
|
||||
|
||||
void dLytMeterClefMain_c::initializeState_None() {}
|
||||
void dLytMeterClefMain_c::executeState_None() {}
|
||||
void dLytMeterClefMain_c::finalizeState_None() {}
|
||||
|
||||
void dLytMeterClefMain_c::initializeState_In() {}
|
||||
void dLytMeterClefMain_c::executeState_In() {}
|
||||
void dLytMeterClefMain_c::finalizeState_In() {}
|
||||
|
||||
void dLytMeterClefMain_c::initializeState_Wait() {}
|
||||
void dLytMeterClefMain_c::executeState_Wait() {
|
||||
fn_8029A200();
|
||||
fn_8029A2C0();
|
||||
fn_8029A260();
|
||||
fn_8029A440();
|
||||
|
||||
bool b = dPad::ex_c::fn_80059100();
|
||||
if (dScGame_c::isCurrentStage("F103") && dScGame_c::currentSpawnInfo.layer == 13) {
|
||||
b = false;
|
||||
field_0x5F40 = 0;
|
||||
}
|
||||
|
||||
if (dLytMeter_c::GetMain()->fn_800D5380(0) || dLytMeter_c::GetInstance()->isHelpOpen()) {
|
||||
b = true;
|
||||
}
|
||||
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
if (field_0x5E81[i] != 0) {
|
||||
field_0x5E81[i]--;
|
||||
// TODO - ...
|
||||
}
|
||||
}
|
||||
}
|
||||
void dLytMeterClefMain_c::finalizeState_Wait() {}
|
||||
|
||||
void dLytMeterClefMain_c::initializeState_Out() {}
|
||||
void dLytMeterClefMain_c::executeState_Out() {}
|
||||
void dLytMeterClefMain_c::finalizeState_Out() {}
|
||||
|
||||
void dLytMeterClefMain_c::startIn() {
|
||||
if (mStateMgr.isState(StateID_Wait)) {
|
||||
if (!field_0x5E4C) {
|
||||
fn_80299DF0();
|
||||
}
|
||||
mBase.startIn();
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::startOut() {
|
||||
if (mStateMgr.isState(StateID_Wait)) {
|
||||
mBase.startOut();
|
||||
}
|
||||
}
|
||||
|
||||
bool dLytMeterClefMain_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
mBase.build(resAcc);
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_NUM_NOTES; i++) {
|
||||
mNotes[i].mNote.build(resAcc);
|
||||
}
|
||||
|
||||
fn_80299E30();
|
||||
fn_8029A200();
|
||||
fn_8029A2C0();
|
||||
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
field_0x5E70[i] = field_0x5E5F[i];
|
||||
field_0x5E81[i] = field_0x5E5F[i];
|
||||
}
|
||||
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterClefMain_c::remove() {
|
||||
mBase.remove();
|
||||
for (int i = 0; i < SUIRYU_SCORE_NUM_NOTES; i++) {
|
||||
mNotes[i].mNote.remove();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterClefMain_c::execute() {
|
||||
bool hasCollectedAllTadtones = StoryflagManager::sInstance->getFlag(STORYFLAG_ALL_TADTONES_GATHERED);
|
||||
bool hasTadtoneScroll = StoryflagManager::sInstance->getFlag(STORYFLAG_HAS_TADTONE_SCROLL);
|
||||
if (hasCollectedAllTadtones == true) {
|
||||
startOut();
|
||||
} else if (hasTadtoneScroll == true) {
|
||||
if (dLytMeter_c::shouldHideLytClef()) {
|
||||
startOut();
|
||||
} else {
|
||||
startIn();
|
||||
}
|
||||
} else {
|
||||
startOut();
|
||||
}
|
||||
|
||||
mStateMgr.executeState();
|
||||
|
||||
mBase.execute();
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_NUM_NOTES; i++) {
|
||||
mNotes[i].mNote.execute(mBase.getInOutAllPane()->GetAlpha());
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterClefMain_c::draw() {
|
||||
mBase.draw();
|
||||
for (int i = 0; i < SUIRYU_SCORE_NUM_NOTES; i++) {
|
||||
mNotes[i].mNote.draw();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_80299DF0() {
|
||||
fn_8029A050();
|
||||
field_0x5E4C = 1;
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_80299E30() {
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
field_0x5E4E[i] = 0;
|
||||
field_0x5E5F[i] = 0;
|
||||
field_0x5E70[i] = 0;
|
||||
field_0x5E81[i] = 0;
|
||||
field_0x5EA4[i] = 9;
|
||||
}
|
||||
|
||||
for (int i = 0; i < SUIRYU_SCORE_NUM_NOTES; i++) {
|
||||
mNotes[i].field_0x278 = 7;
|
||||
}
|
||||
|
||||
for (int i = 0; i < 77; i++) {
|
||||
field_0x5EE8[i] = 77;
|
||||
}
|
||||
|
||||
field_0x5F35 = 18;
|
||||
field_0x5F36 = 18;
|
||||
field_0x5E4D = 0;
|
||||
|
||||
field_0x5F3C = 60;
|
||||
field_0x5F40 = 0;
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A050() {
|
||||
fn_8029A200();
|
||||
fn_8029A2C0();
|
||||
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
field_0x5E70[i] = field_0x5E5F[i];
|
||||
field_0x5E81[i] = field_0x5E5F[i];
|
||||
}
|
||||
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
if (field_0x5E5F[i] == field_0x5E4E[i]) {
|
||||
field_0x5EA4[i] = 8;
|
||||
field_0x5E81[i] = field_0x5E4E[i];
|
||||
mBase.fn_802978F0(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A200() {
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
unkTadtoneInline2(i, &field_0x5E4E[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A260() {
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
unkTadtoneInline3(i, &field_0x5E92[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A2C0() {
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
u8 *result = field_0x5E5F + i;
|
||||
unkTadtoneInline(i, &field_0x5E5F[i]);
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A3B0() {
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
field_0x5E70[i] = field_0x5E5F[i];
|
||||
}
|
||||
}
|
||||
|
||||
void dLytMeterClefMain_c::fn_8029A440() {
|
||||
s32 num8 = 0;
|
||||
for (int i = 0; i < NUM_TADTONE_GROUPS; i++) {
|
||||
if (field_0x5EA4[i] == 8) {
|
||||
num8++;
|
||||
if (num8 == NUM_TADTONE_GROUPS) {
|
||||
field_0x5E4D = 1;
|
||||
}
|
||||
} else if (field_0x5EA4[i] == 7) {
|
||||
int acc = 0;
|
||||
for (int j = 0; j < NUM_TADTONE_GROUPS; j++) {
|
||||
if (i == j) {
|
||||
break;
|
||||
}
|
||||
acc += field_0x5E4E[j];
|
||||
}
|
||||
bool b = true;
|
||||
for (int j = 0; j < field_0x5E4E[i]; j++) {
|
||||
// TODO cast
|
||||
if ((s32)field_0x5EE8[acc + j] != 77 && !mNotes[field_0x5EE8[acc + j]].mNote.isStateWait()) {
|
||||
b = false;
|
||||
}
|
||||
}
|
||||
|
||||
if (b) {
|
||||
field_0x5EA4[i] = 8;
|
||||
}
|
||||
} else {
|
||||
if ((field_0x5E5F[i] == field_0x5E4E[i]) && (field_0x5E81[i] == field_0x5E4E[i])) {
|
||||
field_0x5EA4[i] = 5;
|
||||
} else if ((field_0x5E5F[i] == 0) && (field_0x5E81[i] == 0)) {
|
||||
field_0x5EA4[i] = 9;
|
||||
} else if (field_0x5EA4[i] != 4) {
|
||||
if (field_0x5E5F[i] != field_0x5E81[i]) {
|
||||
if (field_0x5E81[i] < field_0x5E5F[i]) {
|
||||
field_0x5EA4[i] = 0;
|
||||
field_0x5F35 = i;
|
||||
}
|
||||
if (field_0x5EA4[field_0x5F36] != 3 && field_0x5E5F[i] < field_0x5E81[i]) {
|
||||
field_0x5EA4[i] = 1;
|
||||
}
|
||||
if (field_0x5E5F[i] == field_0x5E4E[i]) {
|
||||
field_0x5F35 = i;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (field_0x5F35 < NUM_TADTONE_GROUPS && field_0x5F36 < NUM_TADTONE_GROUPS && field_0x5F35 != field_0x5F36) {
|
||||
if ((field_0x5EA4[field_0x5F36] < 3 || field_0x5EA4[field_0x5F36] > 5) &&
|
||||
(field_0x5EA4[field_0x5F36] < 7 || field_0x5EA4[field_0x5F36] > 8)) {
|
||||
field_0x5EA4[field_0x5F36] = 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
SPECIAL_BASE_PROFILE(LYT_SUIRYU_SCORE, dLytSuiryuScore_c, fProfile::LYT_SUIRYU_SCORE, 0x2B5, 0x06F9);
|
||||
|
||||
dLytSuiryuScore_c *dLytSuiryuScore_c::sInstance;
|
||||
|
||||
int dLytSuiryuScore_c::create() {
|
||||
void *data = LayoutArcManager::GetInstance()->getLoadedData("Score");
|
||||
mResAcc.attach(data, "");
|
||||
mMain.build(&mResAcc);
|
||||
sInstance = this;
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dLytSuiryuScore_c::doDelete() {
|
||||
mMain.remove();
|
||||
sInstance = nullptr;
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dLytSuiryuScore_c::execute() {
|
||||
mMain.execute();
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dLytSuiryuScore_c::draw() {
|
||||
mMain.draw();
|
||||
return SUCCEEDED;
|
||||
}
|
||||
@@ -567,15 +567,15 @@ bool dLytMeterMain_c::isNotSilentRealmOrLoftwing() {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800C9F70() {
|
||||
if ((fn_800D56B0() && !field_0x13775) || isInModeMap() || isInModePause()) {
|
||||
bool dLytMeterMain_c::shouldHideLytClef() {
|
||||
if ((shouldBeHiddenGeneral() && !mIsCollectingTadtoneScroll) || isInModeMap() || isInModePause()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800C9FE0() {
|
||||
if (fn_800D56B0() || mMode == MODE_MAP_INIT || isInModePause()) {
|
||||
if (shouldBeHiddenGeneral() || mMode == MODE_MAP_INIT || isInModePause()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -857,7 +857,7 @@ bool dLytMeterMain_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
mMode = MODE_NONE;
|
||||
field_0x13770 = 3;
|
||||
mHelpOpen = false;
|
||||
field_0x13775 = 0;
|
||||
mIsCollectingTadtoneScroll = false;
|
||||
field_0x13773 = 0;
|
||||
mTimerVisible = false;
|
||||
mBirdGaugeVisible = false;
|
||||
@@ -1078,7 +1078,7 @@ bool dLytMeterMain_c::isInModePause() {
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dLytMeterMain_c::fn_800D56B0() {
|
||||
bool dLytMeterMain_c::shouldBeHiddenGeneral() {
|
||||
if (dLytSaveMgr_c::GetInstance() != nullptr && dLytSaveMgr_c::GetInstance()->isBusy()) {
|
||||
return true;
|
||||
}
|
||||
@@ -1179,18 +1179,18 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| (MinigameManager::isInMinigameState(MinigameManager::TRIAL_TIME_ATTACK) &&
|
||||
LytDoButtonRelated::get(LytDoButtonRelated::DO_BUTTON_B) == LytDoButtonRelated::ACT_IE_NONE) ||
|
||||
(dLytMeter_c::getField_0x13B66() || (fn_800D56B0() && !mItemSelect.fn_800F02F0() && !isDoingSkyKeepPuzzle()) ||
|
||||
(dLytMeter_c::getField_0x13B66() || (shouldBeHiddenGeneral() && !mItemSelect.fn_800F02F0() && !isDoingSkyKeepPuzzle()) ||
|
||||
isInModeMap() || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_ITEM_SELECT] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle() && !mMinusBtn.fn_800F75E0())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle() && !mMinusBtn.fn_800F75E0())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())) {
|
||||
mPanesVisible[METER_ANIM_MINUS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1198,7 +1198,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_PLUS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1206,7 +1206,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_CROSS_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1214,7 +1214,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_1_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1222,7 +1222,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_2_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1230,7 +1230,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_A_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1238,7 +1238,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_REMOCON_BG] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle() && !mDowsing.fn_800FE490())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle() && !mDowsing.fn_800FE490())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1246,7 +1246,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_DOWSING] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1254,7 +1254,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_Z_BTN] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1262,7 +1262,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_NUN_STK] = false;
|
||||
}
|
||||
|
||||
if ((fn_800D56B0() && !isDoingSkyKeepPuzzle())
|
||||
if ((shouldBeHiddenGeneral() && !isDoingSkyKeepPuzzle())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())
|
||||
|
||||
@@ -1278,7 +1278,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
MinigameManager::isInMinigameState(MinigameManager::TRIAL_TIME_ATTACK) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::PUMPKIN_ARCHERY) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::SPIRAL_CHARGE_TUTORIAL) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER) || fn_800D56B0() || mIsInSwordDrawEvent)
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER) || shouldBeHiddenGeneral() || mIsInSwordDrawEvent)
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() ||
|
||||
(dLytSimpleWindow_c::getInstance() != nullptr && dLytSimpleWindow_c::getInstance()->isOutputText()) ||
|
||||
@@ -1301,7 +1301,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
||
|
||||
(dMessage_c::getInstance()->getField_0x2FC() && mHeart.getField_0x78C() && !dAcPy_c::LINK->isSittingOrUnk0xAE())
|
||||
|
||||
|| (fn_800D56B0() &&
|
||||
|| (shouldBeHiddenGeneral() &&
|
||||
(dMessage_c::getInstance()->getField_0x2FC() == 0 || dMessage_c::getInstance()->getField_0x2FC() == -2)) ||
|
||||
mIsInSwordDrawEvent
|
||||
|
||||
@@ -1326,7 +1326,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
MinigameManager::isInMinigameState(MinigameManager::SPIRAL_CHARGE_TUTORIAL) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::ROLLERCOASTER))
|
||||
|
||||
|| (fn_800D56B0() && mHeart.getField_0x78C() == 0)
|
||||
|| (shouldBeHiddenGeneral() && mHeart.getField_0x78C() == 0)
|
||||
|
||||
|| (dScGame_c::currentSpawnInfo.stageName == "F406" && dScGame_c::currentSpawnInfo.layer == 13)
|
||||
|
||||
@@ -1338,7 +1338,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_HEART] = false;
|
||||
}
|
||||
|
||||
if (!isSilentRealm() || (fn_800D56B0() && !fn_800D5590())
|
||||
if (!isSilentRealm() || (shouldBeHiddenGeneral() && !fn_800D5590())
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || mMode == MODE_MAP_INIT || isInModePause())) {
|
||||
mTimerVisible = false;
|
||||
@@ -1353,7 +1353,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
}
|
||||
|
||||
if ((dAcPy_c::GetLink()->hasvt_0x1C0() || dAcPy_c::GetLink()->checkActionFlagsCont(0x10) ||
|
||||
(fn_800D56B0() && !mHelpOpen) || mGanbariGauge.fn_80104760() ||
|
||||
(shouldBeHiddenGeneral() && !mHelpOpen) || mGanbariGauge.fn_80104760() ||
|
||||
|
||||
MinigameManager::isInMinigameState(MinigameManager::FUN_FUN_ISLAND) ||
|
||||
MinigameManager::isInMinigameState(MinigameManager::THRILL_DIGGER) ||
|
||||
@@ -1365,7 +1365,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
mPanesVisible[METER_ANIM_GANBARI_GAUGE] = false;
|
||||
}
|
||||
|
||||
if ((dAcPy_c::GetLink()->getRidingActorType() != dAcPy_c::RIDING_LOFTWING || fn_800D56B0()) ||
|
||||
if ((dAcPy_c::GetLink()->getRidingActorType() != dAcPy_c::RIDING_LOFTWING || shouldBeHiddenGeneral()) ||
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mSkyGaugeVisible = false;
|
||||
} else if (bird != nullptr && mpSkyGauge != nullptr) {
|
||||
@@ -1382,7 +1382,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
if (dAcPy_c::GetLink()->getRidingActorType() != dAcPy_c::RIDING_LOFTWING || !field_0x13780 ||
|
||||
|
||||
(dLytDobutton_c::getAction() != dLytDobutton_c::ACT_DO_INVALID || fn_800D56B0() ||
|
||||
(dLytDobutton_c::getAction() != dLytDobutton_c::ACT_DO_INVALID || shouldBeHiddenGeneral() ||
|
||||
dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBirdGaugeVisible = false;
|
||||
}
|
||||
@@ -1408,7 +1408,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
}
|
||||
}
|
||||
|
||||
if (!field_0x13781 || fn_800D56B0() ||
|
||||
if (!field_0x13781 || shouldBeHiddenGeneral() ||
|
||||
|
||||
(dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBossGaugeVisible = false;
|
||||
@@ -1436,7 +1436,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
if (dAcItem_c::getKeyPieceCount() == 0 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
SceneflagManager::sInstance->checkSceneflagGlobal(4, 0x21) || MinigameManager::isInAnyMinigame()
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D56B0() || mIsInSwordDrawEvent || fn_800D5420() ||
|
||||
|| (dLytMeter_c::getField_0x13B66() || shouldBeHiddenGeneral() || mIsInSwordDrawEvent || fn_800D5420() ||
|
||||
isInModeMap() || isInModePause())) {
|
||||
mKakeraKeyVisible = false;
|
||||
}
|
||||
@@ -1454,7 +1454,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
|| DungeonflagManager::sInstance->getCounterOrFlag(16, 8) != 0 ||
|
||||
dAcPy_c::GetLink()->getCurrentAction() == 0x8C || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || mIsInSwordDrawEvent
|
||||
MinigameManager::isInAnyMinigame() || shouldBeHiddenGeneral() || mIsInSwordDrawEvent
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mBossKeyVisible = false;
|
||||
@@ -1471,7 +1471,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
if (mpSmallKey != nullptr) {
|
||||
if (dAcItem_c::getSmallKeyCount() == 0 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || fn_800D56B0() || mIsInSwordDrawEvent
|
||||
MinigameManager::isInAnyMinigame() || shouldBeHiddenGeneral() || mIsInSwordDrawEvent
|
||||
|
||||
|| (dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause())) {
|
||||
mSmallKeyVisible = false;
|
||||
@@ -1490,7 +1490,7 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
if (!field_0x137B2 || dLytAreaCaption_c::getVisible() || fn_800D5380(false) ||
|
||||
MinigameManager::isInAnyMinigame() || mIsInSwordDrawEvent
|
||||
|
||||
|| fn_800D56B0() || dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause()) {
|
||||
|| shouldBeHiddenGeneral() || dLytMeter_c::getField_0x13B66() || fn_800D5420() || isInModeMap() || isInModePause()) {
|
||||
mDrinkVisible = false;
|
||||
}
|
||||
|
||||
@@ -1509,8 +1509,8 @@ void dLytMeterMain_c::checkPaneVisibility() {
|
||||
|
||||
bool dLytMeterMain_c::execute() {
|
||||
dLytMeter_c *meter = dLytMeter_c::GetInstance();
|
||||
if (field_0x13775 && !EventManager::isInEvent()) {
|
||||
field_0x13775 = 0;
|
||||
if (mIsCollectingTadtoneScroll && !EventManager::isInEvent()) {
|
||||
mIsCollectingTadtoneScroll = false;
|
||||
}
|
||||
|
||||
if (isSilentRealm()) {
|
||||
|
||||
@@ -332,7 +332,7 @@ bool dLytMeterGanbariGauge_c::build(d2d::ResAccIf_c *resAcc) {
|
||||
field_0x548 = dLytMeter_HIO_c::sInstance->field_0x1C8;
|
||||
|
||||
field_0x558 = 0;
|
||||
field_0x559 = 0;
|
||||
mClefRelated = false;
|
||||
field_0x55B = 0;
|
||||
mpOwnerPane = nullptr;
|
||||
field_0x55A = 0;
|
||||
@@ -483,7 +483,7 @@ bool dLytMeterGanbariGauge_c::execute() {
|
||||
angle = 3;
|
||||
v2.set(-95.0f, -50.0f);
|
||||
scale = 0.9f;
|
||||
} else if (field_0x559 && swimmingRelated()) {
|
||||
} else if (mClefRelated && swimmingRelated()) {
|
||||
angle = 1;
|
||||
v2.set(-65.0f, 0.0f);
|
||||
scale = 1.0f;
|
||||
|
||||
Reference in New Issue
Block a user