mirror of
https://github.com/zeldaret/ss
synced 2026-10-27 04:22:39 -04:00
Merge remote-tracking branch 'origin/main' into small-tags-and-rail-end
This commit is contained in:
+1
-1
@@ -2904,7 +2904,7 @@ config.libs = [
|
||||
Rel(NonMatching, "d_t_clef_manager", "REL/d/t/d_t_clef_manager.cpp"),
|
||||
Rel(Matching, "d_t_col_bomb_shield", "REL/d/t/d_t_col_bomb_shield.cpp"),
|
||||
Rel(NonMatching, "d_t_D3_scene_change", "REL/d/t/d_t_D3_scene_change.cpp"),
|
||||
Rel(NonMatching, "d_t_defeat_boss", "REL/d/t/d_t_defeat_boss.cpp"),
|
||||
Rel(Matching, "d_t_defeat_boss", "REL/d/t/d_t_defeat_boss.cpp"),
|
||||
Rel(Matching, "d_t_dowsing", "REL/d/t/d_t_dowsing.cpp"),
|
||||
Rel(Matching, "d_t_drum", "REL/d/t/d_t_drum.cpp"),
|
||||
Rel(NonMatching, "d_t_dungeon_start", "REL/d/t/d_t_dungeon_start.cpp"),
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(TAG_DEFEAT_BOSS, dTgDefeatBoss_c, fProfile::TAG_DEFEAT_BOSS, 0x29E, 0, 0);
|
||||
|
||||
// Taking the index before the manager is needed for regalloc in checkDungeonFlag
|
||||
static inline u16 getDungeonFlag(u32 idx, const DungeonflagManager *mgr) {
|
||||
return mgr->getCounterOrFlag(idx, 8);
|
||||
}
|
||||
|
||||
void dTgDefeatBoss_c::getDungeonFlagIndex(u32 &outFlagIdx) {
|
||||
outFlagIdx = 0x3;
|
||||
@@ -15,7 +19,7 @@ void dTgDefeatBoss_c::getDungeonFlagIndex(u32 &outFlagIdx) {
|
||||
bool dTgDefeatBoss_c::checkDungeonFlag() {
|
||||
u32 dungeonFlagIdx;
|
||||
getDungeonFlagIndex(dungeonFlagIdx);
|
||||
return DungeonflagManager::sInstance->getCounterOrFlag(dungeonFlagIdx, 8) != 0;
|
||||
return getDungeonFlag(dungeonFlagIdx, DungeonflagManager::sInstance) != 0;
|
||||
}
|
||||
|
||||
int dTgDefeatBoss_c::create() {
|
||||
@@ -40,7 +44,6 @@ int dTgDefeatBoss_c::create() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
|
||||
int dTgDefeatBoss_c::actorExecute() {
|
||||
if (checkDungeonFlag()) {
|
||||
switch (mSceneflagPolarity) {
|
||||
@@ -70,10 +73,8 @@ u16 dTgDefeatBoss_c::getSceneflag() {
|
||||
return mParams & 0xff;
|
||||
}
|
||||
|
||||
|
||||
s32 dTgDefeatBoss_c::getSceneflagPolarity() {
|
||||
return mParams >> 0x8 & 0x1;
|
||||
|
||||
}
|
||||
|
||||
u32 dTgDefeatBoss_c::getStoryflag() {
|
||||
@@ -81,8 +82,5 @@ u32 dTgDefeatBoss_c::getStoryflag() {
|
||||
}
|
||||
|
||||
s32 dTgDefeatBoss_c::getStoryflagPolarity() {
|
||||
|
||||
return (mParams >> 0x19) & 0x1;
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user