mirror of
https://github.com/zeldaret/ss
synced 2026-06-04 02:46:25 -04:00
d_t_sword_battle_game Linked
This commit is contained in:
@@ -12,7 +12,7 @@ __dt__36sFStateFct_c<20dTgSwordBattleGame_c>Fv = .text:0x000002A0; // type:funct
|
||||
__dt__89sStateMgr_c<20dTgSwordBattleGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x00000310; // type:function size:0xA0
|
||||
__dt__59sFStateMgr_c<20dTgSwordBattleGame_c,20sStateMethodUsr_FI_c>Fv = .text:0x000003B0; // type:function size:0xA4
|
||||
create__20dTgSwordBattleGame_cFv = .text:0x00000460; // type:function size:0x70
|
||||
checkInBossRushMinigame__20dTgSwordBattleGame_cFv = .text:0x000004D0; // type:function size:0x8
|
||||
checkInBossRush__15MinigameManagerFv = .text:0x000004D0; // type:function size:0x8
|
||||
changeState__89sStateMgr_c<20dTgSwordBattleGame_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x000004E0; // type:function size:0x10
|
||||
doDelete__20dTgSwordBattleGame_cFv = .text:0x000004F0; // type:function size:0x44
|
||||
actorExecute__20dTgSwordBattleGame_cFv = .text:0x00000540; // type:function size:0x184
|
||||
|
||||
+1
-1
@@ -2958,7 +2958,7 @@ config.libs = [
|
||||
Rel(NonMatching, "d_t_sparks", "REL/d/t/d_t_sparks.cpp"),
|
||||
Rel(NonMatching, "d_t_spore", "REL/d/t/d_t_spore.cpp"),
|
||||
Rel(Matching, "d_t_stream", "REL/d/t/d_t_stream.cpp"),
|
||||
Rel(NonMatching, "d_t_sword_battle_game", "REL/d/t/d_t_sword_battle_game.cpp"),
|
||||
Rel(Matching, "d_t_sword_battle_game", "REL/d/t/d_t_sword_battle_game.cpp"),
|
||||
Rel(Matching, "d_t_sw_area", "REL/d/t/d_t_sw_area.cpp"),
|
||||
Rel(Matching, "d_t_tackle", "REL/d/t/d_t_tackle.cpp"),
|
||||
Rel(Matching, "d_t_telop", "REL/d/t/d_t_telop.cpp"),
|
||||
|
||||
@@ -24,12 +24,10 @@ public:
|
||||
|
||||
bool checkInEvent(const char *eventName);
|
||||
|
||||
static bool checkInBossRushFlag();
|
||||
bool checkInBossRushFlag();
|
||||
void unsetInBossRushFlag();
|
||||
void setInBossRushFlag();
|
||||
|
||||
static bool checkInBossRushMinigame();
|
||||
|
||||
void unsetEarlyFightFlags() const;
|
||||
void unsetImprisonedFightFlags() const;
|
||||
void unsetDemiseFightFlag() const;
|
||||
|
||||
@@ -28,6 +28,13 @@ public:
|
||||
static void destroy();
|
||||
static void execute();
|
||||
|
||||
static MinigameManager *GetInstance() {
|
||||
return sInstance;
|
||||
}
|
||||
static bool checkInBossRush() {
|
||||
return isInMinigameState(BOSS_RUSH);
|
||||
}
|
||||
|
||||
private:
|
||||
MinigameManager() {}
|
||||
virtual ~MinigameManager() {}
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
#include "d/d_sc_game.h"
|
||||
#include "d/flag/storyflag_manager.h"
|
||||
#include "d/lyt/d_lyt_mini_game.h"
|
||||
#include "egg/prim/eggBitFlag.h"
|
||||
#include "f/f_base.h"
|
||||
#include "f/f_profile_name.h"
|
||||
#include "sized_string.h"
|
||||
@@ -24,7 +23,7 @@ STATE_VIRTUAL_DEFINE(dTgSwordBattleGame_c, Manage);
|
||||
SPECIAL_ACTOR_PROFILE(TAG_SWORD_BATTLE_GAME, dTgSwordBattleGame_c, fProfile::TAG_SWORD_BATTLE_GAME, 0x6F, 0, 4);
|
||||
|
||||
int dTgSwordBattleGame_c::create() {
|
||||
if (!checkInBossRushFlag() && !checkInBossRushMinigame()) {
|
||||
if (!checkInBossRushFlag() && !MinigameManager::GetInstance()->checkInBossRush()) {
|
||||
return FAILED;
|
||||
}
|
||||
|
||||
@@ -32,10 +31,6 @@ int dTgSwordBattleGame_c::create() {
|
||||
mStateMgr.changeState(StateID_Wait);
|
||||
return SUCCEEDED;
|
||||
}
|
||||
// This needs to be emitted before the change state function...
|
||||
bool dTgSwordBattleGame_c::checkInBossRushMinigame() {
|
||||
return MinigameManager::isInMinigameState(MinigameManager::BOSS_RUSH);
|
||||
}
|
||||
|
||||
int dTgSwordBattleGame_c::doDelete() {
|
||||
fBase_c::doDelete();
|
||||
@@ -132,7 +127,7 @@ int dTgSwordBattleGame_c::draw() {
|
||||
|
||||
void dTgSwordBattleGame_c::initializeState_Wait() {}
|
||||
void dTgSwordBattleGame_c::executeState_Wait() {
|
||||
if (checkInBossRushMinigame()) {
|
||||
if (MinigameManager::GetInstance()->checkInBossRush()) {
|
||||
if (field_0x1A8) {
|
||||
mStateMgr.changeState(StateID_Manage);
|
||||
} else {
|
||||
@@ -167,7 +162,7 @@ void dTgSwordBattleGame_c::executeState_Manage() {
|
||||
void dTgSwordBattleGame_c::finalizeState_Manage() {}
|
||||
|
||||
void dTgSwordBattleGame_c::init() {
|
||||
if (checkInBossRushMinigame()) {
|
||||
if (MinigameManager::GetInstance()->checkInBossRush()) {
|
||||
createBase(fProfile::LYT_MINI_GAME, this, 8, OTHER);
|
||||
}
|
||||
mTimer.vt_0x0C();
|
||||
|
||||
Reference in New Issue
Block a user