mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-28 01:03:10 -04:00
Merge remote-tracking branch 'origin/main' into 26-04-04-config
This commit is contained in:
+60
-24
@@ -17,6 +17,13 @@
|
||||
#include "m_Do/m_Do_main.h"
|
||||
#include "f_op/f_op_overlap_mng.h"
|
||||
#include "dusk/memory.h"
|
||||
#include "dusk/settings.h"
|
||||
|
||||
#if TARGET_PC
|
||||
#define SHOW_TV_SETTINGS_SCREEN (this->mShowTvSettingsScreen)
|
||||
#else
|
||||
#define SHOW_TV_SETTINGS_SCREEN (1)
|
||||
#endif
|
||||
|
||||
static dSn_HIO_c g_snHIO;
|
||||
|
||||
@@ -293,13 +300,27 @@ void dScnName_c::FileSelectMain() {
|
||||
}
|
||||
|
||||
void dScnName_c::FileSelectMainNormal() {
|
||||
#if TARGET_PC
|
||||
mShowTvSettingsScreen = !dusk::settings::game::hideTvSettingsScreen;
|
||||
#endif
|
||||
|
||||
switch(dFs_c->isSelectEnd()) {
|
||||
case 1:
|
||||
mWaitTimer = 15;
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
mDoGph_gInf_c::startFadeOut(15);
|
||||
if (SHOW_TV_SETTINGS_SCREEN) {
|
||||
mWaitTimer = 15;
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
mDoGph_gInf_c::startFadeOut(15);
|
||||
} else {
|
||||
mWaitTimer = 1;
|
||||
}
|
||||
|
||||
mProc = dScnName_PROC_FileSelectClose;
|
||||
field_0x420 = 1;
|
||||
|
||||
if (!SHOW_TV_SETTINGS_SCREEN) {
|
||||
mDoAud_seStart(Z2SE_ENTER_GAME, NULL, 0, 0);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -308,12 +329,17 @@ void dScnName_c::FileSelectClose() {
|
||||
mWaitTimer--;
|
||||
|
||||
if (mWaitTimer == 0) {
|
||||
mProc = dScnName_PROC_BrightCheckOpen;
|
||||
mWaitTimer = 15;
|
||||
mDrawProc = 1;
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
mDoGph_gInf_c::startFadeIn(15);
|
||||
field_0x420 = 0;
|
||||
if (SHOW_TV_SETTINGS_SCREEN) {
|
||||
mProc = dScnName_PROC_BrightCheckOpen;
|
||||
mWaitTimer = 15;
|
||||
mDrawProc = 1;
|
||||
mDoGph_gInf_c::setFadeColor(*(JUtility::TColor*)&g_blackColor);
|
||||
mDoGph_gInf_c::startFadeIn(15);
|
||||
field_0x420 = 0;
|
||||
} else {
|
||||
doPreLoadSetup();
|
||||
field_0x420 = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -330,24 +356,34 @@ void dScnName_c::brightCheck() {
|
||||
mBrightCheck->_move();
|
||||
|
||||
if (mBrightCheck->isEnd()) {
|
||||
dComIfGs_setSaveTotalTime(dComIfGs_getTotalTime());
|
||||
dComIfGs_setSaveStartTime(OSGetTime());
|
||||
mDoAud_bgmStop(45);
|
||||
|
||||
field_0x41f = 0;
|
||||
mProc = dScnName_PROC_ChangeGameScene;
|
||||
|
||||
// Reset rupee "first-time collection" flags so the collection cutscene will play again
|
||||
dComIfGs_offItemFirstBit(dItemNo_GREEN_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_BLUE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_YELLOW_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_RED_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_PURPLE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_ORANGE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_SILVER_RUPEE_e);
|
||||
doPreLoadSetup();
|
||||
}
|
||||
}
|
||||
|
||||
void dScnName_c::doPreLoadSetup() {
|
||||
dComIfGs_setSaveTotalTime(dComIfGs_getTotalTime());
|
||||
dComIfGs_setSaveStartTime(OSGetTime());
|
||||
mDoAud_bgmStop(45);
|
||||
|
||||
field_0x41f = 0;
|
||||
mProc = dScnName_PROC_ChangeGameScene;
|
||||
|
||||
#if TARGET_PC
|
||||
if (dusk::settings::game::disableRupeeCutscenes) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
// Reset rupee "first-time collection" flags so the collection cutscene will play again
|
||||
dComIfGs_offItemFirstBit(dItemNo_GREEN_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_BLUE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_YELLOW_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_RED_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_PURPLE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_ORANGE_RUPEE_e);
|
||||
dComIfGs_offItemFirstBit(dItemNo_SILVER_RUPEE_e);
|
||||
}
|
||||
|
||||
void dScnName_c::changeGameScene() {
|
||||
if (!mDoRst::isReset() && !fopOvlpM_IsPeek()) {
|
||||
dComIfGs_gameStart();
|
||||
|
||||
Reference in New Issue
Block a user