summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2026-09-28 03:39:31 +0200
committerLéo Lam <leo@leolam.fr>2026-10-06 03:19:39 +0200
commitc4c7c00e85df3137d57cc899302a160ff94fa71b (patch)
tree302fc5bbae0f9b9da17d1e41790b41b8fa44630a /src
parent38905c8c075ec4ed8f8fcf858aef46bc5e05f8e2 (diff)
aoc: Manager is ksys, the DLC managers stay game-side
aoc::Manager is created during engine start-up and called by gdt, map and StarterPackMgr; only game code uses HardModeManager and ChampionBalladManager. (AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
Diffstat (limited to 'src')
-rw-r--r--src/Game/AOC/CMakeLists.txt (renamed from src/Game/DLC/CMakeLists.txt)2
-rw-r--r--src/Game/AOC/aocChampionBalladManager.cpp (renamed from src/Game/DLC/aocChampionBalladManager.cpp)6
-rw-r--r--src/Game/AOC/aocChampionBalladManager.h (renamed from src/Game/DLC/aocChampionBalladManager.h)4
-rw-r--r--src/Game/AOC/aocHardModeManager.cpp (renamed from src/Game/DLC/aocHardModeManager.cpp)2
-rw-r--r--src/Game/AOC/aocHardModeManager.h (renamed from src/Game/DLC/aocHardModeManager.h)0
-rw-r--r--src/Game/Actor/AI/aiCookPotRoot.cpp2
-rw-r--r--src/Game/Actor/Action/actionCurseRRematchCount.cpp8
-rw-r--r--src/Game/Actor/Damage/dmgDamageManagerBase.cpp2
-rw-r--r--src/Game/Actor/Query/queryCheckCurseRRetryEverOnce.cpp8
-rw-r--r--src/Game/CMakeLists.txt2
-rw-r--r--src/Game/UI/uiPauseMenuDataMgr.cpp19
-rw-r--r--src/Game/UI/uiUtils.cpp2
-rw-r--r--src/KingSystem/AOC/CMakeLists.txt4
-rw-r--r--src/KingSystem/AOC/aocManager.cpp (renamed from src/Game/DLC/aocManager.cpp)68
-rw-r--r--src/KingSystem/AOC/aocManager.h (renamed from src/Game/DLC/aocManager.h)46
-rw-r--r--src/KingSystem/CMakeLists.txt1
-rw-r--r--src/KingSystem/GameData/gdtManager.cpp4
-rw-r--r--src/KingSystem/Map/mapLazyTraverseList.cpp8
-rw-r--r--src/KingSystem/Map/mapPlacementMap.cpp10
-rw-r--r--src/KingSystem/System/StarterPackMgr.cpp12
-rw-r--r--src/KingSystem/System/StarterPackMgr.h2
21 files changed, 109 insertions, 103 deletions
diff --git a/src/Game/DLC/CMakeLists.txt b/src/Game/AOC/CMakeLists.txt
index 0b0579b0..20388b21 100644
--- a/src/Game/DLC/CMakeLists.txt
+++ b/src/Game/AOC/CMakeLists.txt
@@ -3,6 +3,4 @@ target_sources(uking PRIVATE
aocChampionBalladManager.h
aocHardModeManager.cpp
aocHardModeManager.h
- aocManager.cpp
- aocManager.h
)
diff --git a/src/Game/DLC/aocChampionBalladManager.cpp b/src/Game/AOC/aocChampionBalladManager.cpp
index 0a0833a0..1600a6f9 100644
--- a/src/Game/DLC/aocChampionBalladManager.cpp
+++ b/src/Game/AOC/aocChampionBalladManager.cpp
@@ -1,6 +1,6 @@
-#include "Game/DLC/aocChampionBalladManager.h"
+#include "Game/AOC/aocChampionBalladManager.h"
-namespace uking {
+namespace uking::aoc {
SEAD_SINGLETON_DISPOSER_IMPL(ChampionBalladManager)
@@ -29,4 +29,4 @@ s8 ChampionBalladManager::getBlightRematchCount(BlightType blight_type) const {
return mBlightCounts[u32(blight_type)];
return 0;
}
-} // namespace uking
+} // namespace uking::aoc
diff --git a/src/Game/DLC/aocChampionBalladManager.h b/src/Game/AOC/aocChampionBalladManager.h
index 22c07b60..4fa8e268 100644
--- a/src/Game/DLC/aocChampionBalladManager.h
+++ b/src/Game/AOC/aocChampionBalladManager.h
@@ -4,7 +4,7 @@
#include <container/seadSafeArray.h>
#include <heap/seadDisposer.h>
-namespace uking {
+namespace uking::aoc {
enum class BlightType : u32 { Wind, Electric, Fire, Water };
@@ -23,4 +23,4 @@ private:
sead::SafeArray<u8, 4> mBlightCounts;
};
-} // namespace uking
+} // namespace uking::aoc
diff --git a/src/Game/DLC/aocHardModeManager.cpp b/src/Game/AOC/aocHardModeManager.cpp
index 9d8faef9..479fef42 100644
--- a/src/Game/DLC/aocHardModeManager.cpp
+++ b/src/Game/AOC/aocHardModeManager.cpp
@@ -1,4 +1,4 @@
-#include "Game/DLC/aocHardModeManager.h"
+#include "Game/AOC/aocHardModeManager.h"
#include <math/seadMathCalcCommon.h>
#include "KingSystem/ActorSystem/actActor.h"
#include "KingSystem/ActorSystem/actActorUtil.h"
diff --git a/src/Game/DLC/aocHardModeManager.h b/src/Game/AOC/aocHardModeManager.h
index 375438a2..375438a2 100644
--- a/src/Game/DLC/aocHardModeManager.h
+++ b/src/Game/AOC/aocHardModeManager.h
diff --git a/src/Game/Actor/AI/aiCookPotRoot.cpp b/src/Game/Actor/AI/aiCookPotRoot.cpp
index da09eec4..0482daf6 100644
--- a/src/Game/Actor/AI/aiCookPotRoot.cpp
+++ b/src/Game/Actor/AI/aiCookPotRoot.cpp
@@ -1,5 +1,5 @@
#include "Game/Actor/AI/aiCookPotRoot.h"
-#include "Game/DLC/aocHardModeManager.h"
+#include "Game/AOC/aocHardModeManager.h"
#include "Game/UI/uiPauseMenuDataMgr.h"
#include "KingSystem/ActorSystem/Attention/actAttention.h"
#include "KingSystem/ActorSystem/actActor.h"
diff --git a/src/Game/Actor/Action/actionCurseRRematchCount.cpp b/src/Game/Actor/Action/actionCurseRRematchCount.cpp
index 2838007a..a1d70ca1 100644
--- a/src/Game/Actor/Action/actionCurseRRematchCount.cpp
+++ b/src/Game/Actor/Action/actionCurseRRematchCount.cpp
@@ -1,5 +1,5 @@
#include "Game/Actor/Action/actionCurseRRematchCount.h"
-#include "Game/DLC/aocChampionBalladManager.h"
+#include "Game/AOC/aocChampionBalladManager.h"
#include "KingSystem/GameData/gdtManager.h"
namespace uking::action {
@@ -19,12 +19,12 @@ void CurseRRematchCount::loadParams_() {
}
bool CurseRRematchCount::oneShot_() {
- auto* manager = ChampionBalladManager::instance();
+ auto* manager = aoc::ChampionBalladManager::instance();
if (!manager)
return false;
- auto blight = BlightType(*mCurseRType_d);
- if (blight > BlightType::Water)
+ auto blight = aoc::BlightType(*mCurseRType_d);
+ if (blight > aoc::BlightType::Water)
return false;
if (*mRematchCount_d == 0)
diff --git a/src/Game/Actor/Damage/dmgDamageManagerBase.cpp b/src/Game/Actor/Damage/dmgDamageManagerBase.cpp
index b99cac50..08557ba6 100644
--- a/src/Game/Actor/Damage/dmgDamageManagerBase.cpp
+++ b/src/Game/Actor/Damage/dmgDamageManagerBase.cpp
@@ -1,6 +1,6 @@
#include "Game/Actor/Damage/dmgDamageManagerBase.h"
+#include "Game/AOC/aocHardModeManager.h"
#include "Game/Actor/Damage/dmgDamageCallback.h"
-#include "Game/DLC/aocHardModeManager.h"
#include "KingSystem/ActorSystem/actActor.h"
#include "KingSystem/ActorSystem/actActorConstDataAccess.h"
#include "KingSystem/ActorSystem/actActorParam.h"
diff --git a/src/Game/Actor/Query/queryCheckCurseRRetryEverOnce.cpp b/src/Game/Actor/Query/queryCheckCurseRRetryEverOnce.cpp
index 57f4377d..c66c959a 100644
--- a/src/Game/Actor/Query/queryCheckCurseRRetryEverOnce.cpp
+++ b/src/Game/Actor/Query/queryCheckCurseRRetryEverOnce.cpp
@@ -1,6 +1,6 @@
#include "Game/Actor/Query/queryCheckCurseRRetryEverOnce.h"
#include <evfl/Query.h>
-#include "Game/DLC/aocChampionBalladManager.h"
+#include "Game/AOC/aocChampionBalladManager.h"
namespace uking::query {
@@ -10,12 +10,12 @@ CheckCurseRRetryEverOnce::CheckCurseRRetryEverOnce(const InitArg& arg)
CheckCurseRRetryEverOnce::~CheckCurseRRetryEverOnce() = default;
int CheckCurseRRetryEverOnce::doQuery() {
- auto* manager = ChampionBalladManager::instance();
+ auto* manager = aoc::ChampionBalladManager::instance();
if (!manager)
return 0;
- auto blight = BlightType(*mCurseRType);
- if (blight <= BlightType::Water)
+ auto blight = aoc::BlightType(*mCurseRType);
+ if (blight <= aoc::BlightType::Water)
return manager->getBlightRematchCount(blight) > 0;
return 0;
}
diff --git a/src/Game/CMakeLists.txt b/src/Game/CMakeLists.txt
index 702f626f..e7a19dc2 100644
--- a/src/Game/CMakeLists.txt
+++ b/src/Game/CMakeLists.txt
@@ -1,7 +1,7 @@
add_subdirectory(Actor)
+add_subdirectory(AOC)
add_subdirectory(AutoPlacement)
add_subdirectory(Cooking)
-add_subdirectory(DLC)
add_subdirectory(Scene)
add_subdirectory(UI)
diff --git a/src/Game/UI/uiPauseMenuDataMgr.cpp b/src/Game/UI/uiPauseMenuDataMgr.cpp
index 53a87310..ec352d31 100644
--- a/src/Game/UI/uiPauseMenuDataMgr.cpp
+++ b/src/Game/UI/uiPauseMenuDataMgr.cpp
@@ -10,10 +10,10 @@
#include "Game/Actor/actPlayerCreateUtils.h"
#include "Game/Actor/actWeapon.h"
#include "Game/Cooking/cookManager.h"
-#include "Game/DLC/aocManager.h"
#include "Game/Scene/gameScene.h"
#include "Game/UI/uiUtils.h"
#include "Game/gameItemUtils.h"
+#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/ActorSystem/actActorConstDataAccess.h"
#include "KingSystem/ActorSystem/actActorHeapUtil.h"
#include "KingSystem/ActorSystem/actActorUtil.h"
@@ -450,7 +450,7 @@ void PauseMenuDataMgr::doLoadFromGameData() {
}
// Add the Travel Medallion (Obj_WarpDLC) to the inventory if it is missing for some reason
- if (aoc::Manager::instance()->hasAoc2() &&
+ if (ksys::aoc::Manager::instance()->hasAoc2() &&
!(found_travel_medallion | !gdt::getFlag_IsGet_Obj_WarpDLC())) {
addToPouch(sValues.Obj_WarpDLC.cstr(), PouchItemType::KeyItem, lists, 1, false, nullptr,
true);
@@ -986,12 +986,12 @@ void PauseMenuDataMgr::doAddToPouch(PouchItemType type, const sead::SafeString&
}
if (item_name_to_add == sValues.Obj_WarpDLC) {
- if (!aoc::Manager::instance()->hasAoc2()) {
+ if (!ksys::aoc::Manager::instance()->hasAoc2()) {
return;
}
}
- if (!aoc::Manager::instance()->hasAoc3()) {
+ if (!ksys::aoc::Manager::instance()->hasAoc3()) {
if (item_name_to_add == sValues.Obj_DLC_HeroSoul_Zora) {
item_name_to_add = sValues.Obj_HeroSoul_Zora;
} else if (item_name_to_add == sValues.Obj_DLC_HeroSoul_Rito) {
@@ -2621,23 +2621,26 @@ bool PauseMenuDataMgr::isHeroSoulEnabled(const sead::SafeString& name) const {
// NOLINTNEXTLINE(readability-convert-member-functions-to-static)
bool PauseMenuDataMgr::hasRitoSoulPlus() const {
- return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Rito() && aoc::Manager::instance()->hasAoc3();
+ return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Rito() &&
+ ksys::aoc::Manager::instance()->hasAoc3();
}
// NOLINTNEXTLINE(readability-convert-member-functions-to-static)
bool PauseMenuDataMgr::hasGoronSoulPlus() const {
- return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Goron() && aoc::Manager::instance()->hasAoc3();
+ return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Goron() &&
+ ksys::aoc::Manager::instance()->hasAoc3();
}
// NOLINTNEXTLINE(readability-convert-member-functions-to-static)
bool PauseMenuDataMgr::hasGerudoSoulPlus() const {
return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Gerudo() &&
- aoc::Manager::instance()->hasAoc3();
+ ksys::aoc::Manager::instance()->hasAoc3();
}
// NOLINTNEXTLINE(readability-convert-member-functions-to-static)
bool PauseMenuDataMgr::hasZoraSoulPlus() const {
- return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Zora() && aoc::Manager::instance()->hasAoc3();
+ return ksys::gdt::getFlag_IsGet_Obj_DLC_HeroSoul_Zora() &&
+ ksys::aoc::Manager::instance()->hasAoc3();
}
int PauseMenuDataMgr::countItemsWithCategoryByType(PouchCategory category) const {
diff --git a/src/Game/UI/uiUtils.cpp b/src/Game/UI/uiUtils.cpp
index 06462c7b..3d4e4979 100644
--- a/src/Game/UI/uiUtils.cpp
+++ b/src/Game/UI/uiUtils.cpp
@@ -1,8 +1,8 @@
#include "Game/UI/uiUtils.h"
+#include "Game/AOC/aocHardModeManager.h"
#include "Game/Actor/Damage/dmgInfoManager.h"
#include "Game/Actor/actPlayerCreateMgr.h"
#include "Game/Actor/actWeapon.h"
-#include "Game/DLC/aocHardModeManager.h"
#include "Game/UI/uiPauseMenuDataMgr.h"
#include "KingSystem/ActorSystem/actInfoCommon.h"
#include "KingSystem/ActorSystem/actInfoData.h"
diff --git a/src/KingSystem/AOC/CMakeLists.txt b/src/KingSystem/AOC/CMakeLists.txt
new file mode 100644
index 00000000..4badc13f
--- /dev/null
+++ b/src/KingSystem/AOC/CMakeLists.txt
@@ -0,0 +1,4 @@
+target_sources(uking PRIVATE
+ aocManager.cpp
+ aocManager.h
+)
diff --git a/src/Game/DLC/aocManager.cpp b/src/KingSystem/AOC/aocManager.cpp
index bb7ca50c..c0c13f77 100644
--- a/src/Game/DLC/aocManager.cpp
+++ b/src/KingSystem/AOC/aocManager.cpp
@@ -1,4 +1,4 @@
-#include "Game/DLC/aocManager.h"
+#include "KingSystem/AOC/aocManager.h"
#include <container/seadBuffer.h>
#include <filedevice/seadFileDeviceMgr.h>
#include <prim/seadStringBuilder.h>
@@ -15,7 +15,7 @@
#include <prim/seadStringUtil.h>
#endif
-namespace uking::aoc {
+namespace ksys::aoc {
namespace {
@@ -24,7 +24,7 @@ struct DungeonInfo {
sead::SafeString flag;
};
-ksys::util::InitConstants sInitConstants;
+util::InitConstants sInitConstants;
DungeonInfo sDungeonInfoData[] = {
{120, "Defeat_OneHitDungeon001"},
{121, "BalladOfHeroGerudo_AppearDungeon03"},
@@ -55,7 +55,7 @@ Manager::Manager() : mVersionFile(), mGdtReinitSlot{this, &Manager::onGdtReinit}
}
Manager::~Manager() {
- if (auto* gdm = ksys::gdt::Manager::instance())
+ if (auto* gdm = gdt::Manager::instance())
gdm->removeReinitCallback(mGdtReinitSlot);
mAocMainFieldPackPrefix.deregister();
@@ -64,23 +64,23 @@ Manager::~Manager() {
if (mFileDevice) {
sead::FileDeviceMgr::instance()->unmount("aoc");
- ksys::util::safeDelete(mFileDevice);
+ util::safeDelete(mFileDevice);
}
#ifdef NNSDK
if (mAocFsCache) {
nn::fs::Unmount("aoc");
- ksys::util::safeDelete(mAocFsCache);
+ util::safeDelete(mAocFsCache);
}
#endif
}
void Manager::resetFlags() {
- mFlagAocVerAtLastPlay = ksys::gdt::InvalidHandle;
- mFlagLatestAocVerPlayed = ksys::gdt::InvalidHandle;
- mFlagHasAocVer1 = ksys::gdt::InvalidHandle;
- mFlagHasAocVer2 = ksys::gdt::InvalidHandle;
- mFlagHasAocVer3 = ksys::gdt::InvalidHandle;
+ mFlagAocVerAtLastPlay = gdt::InvalidHandle;
+ mFlagLatestAocVerPlayed = gdt::InvalidHandle;
+ mFlagHasAocVer1 = gdt::InvalidHandle;
+ mFlagHasAocVer2 = gdt::InvalidHandle;
+ mFlagHasAocVer3 = gdt::InvalidHandle;
}
void Manager::init(sead::Heap* heap) {
@@ -108,7 +108,7 @@ void Manager::loadVersionFile() {
mVersionFileDevPrefix.registerPrefix("Aoc/0010/", mFileDevice, false);
- ksys::res::LoadRequest req;
+ res::LoadRequest req;
req.mRequester = "aocManager";
req._26 = false;
req.mAocFileDevice = mFileDevice;
@@ -116,7 +116,7 @@ void Manager::loadVersionFile() {
mVersionFile.file_handle.requestLoad(path, &req);
}
-void Manager::loadAocMainFieldPack(ksys::OverlayArena* arena) {
+void Manager::loadAocMainFieldPack(OverlayArena* arena) {
if (!hasAoc3())
return;
@@ -124,7 +124,7 @@ void Manager::loadAocMainFieldPack(ksys::OverlayArena* arena) {
if (!device)
return;
- ksys::res::LoadRequest req;
+ res::LoadRequest req;
req.mRequester = "aocManager";
req._8 = true;
req._26 = false;
@@ -166,7 +166,7 @@ sead::FileDevice* Manager::getFileDeviceForMapFile(const sead::SafeString& path)
return nullptr;
}
-bool Manager::getFileDeviceForMap(sead::FileDevice** p_file_device, ksys::res::Handle** p_handle,
+bool Manager::getFileDeviceForMap(sead::FileDevice** p_file_device, res::Handle** p_handle,
const sead::SafeString& path) {
if (!hasAoc2())
return false;
@@ -363,7 +363,7 @@ sead::FileDevice* Manager::getFileDeviceForDungeonPack(const sead::SafeString& p
return device;
}
-void Manager::registerAocPack(ksys::res::Handle* pack) {
+void Manager::registerAocPack(res::Handle* pack) {
mAocPack = pack;
if (pack) {
mAocPackPrefix.registerPrefix("Aoc/0010/", pack->getResource(), true);
@@ -382,7 +382,7 @@ bool Manager::aocPackHasFile(const sead::SafeString& path) const {
sead::FixedStringBuilder<0x81> builder;
builder.copy(path.cstr());
- ksys::res::ResourceMgrTask::instance()->addSExtensionPrefix(builder);
+ res::ResourceMgrTask::instance()->addSExtensionPrefix(builder);
return res->isExistFile(builder);
}
@@ -489,7 +489,7 @@ bool Manager::VersionFile::readVersion() {
void Manager::initGameData() {
reinitFlags();
- ksys::gdt::Manager::instance()->addReinitCallback(mGdtReinitSlot);
+ gdt::Manager::instance()->addReinitCallback(mGdtReinitSlot);
}
static const sead::SafeString& getDungeonFlag(int number) {
@@ -501,23 +501,23 @@ static const sead::SafeString& getDungeonFlag(int number) {
}
void Manager::reinitFlags() {
- mFlagAocVerAtLastPlay = ksys::gdt::Manager::instance()->getS32Handle("AoCVerAtLastPlay");
- mFlagLatestAocVerPlayed = ksys::gdt::Manager::instance()->getS32Handle("LatestAoCVerPlayed");
+ mFlagAocVerAtLastPlay = gdt::Manager::instance()->getS32Handle("AoCVerAtLastPlay");
+ mFlagLatestAocVerPlayed = gdt::Manager::instance()->getS32Handle("LatestAoCVerPlayed");
mFlagHasAocVer1 =
- ksys::gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer1));
+ gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer1));
mFlagHasAocVer2 =
- ksys::gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer2));
+ gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer2));
mFlagHasAocVer3 =
- ksys::gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer3));
+ gdt::Manager::instance()->getBoolHandle(GameDataFlag::text(GameDataFlag::HasAoCVer3));
for (int i = 0; i < mDLCPositions.size(); ++i) {
- ksys::gdt::FlagHandle handle = ksys::gdt::InvalidHandle;
+ gdt::FlagHandle handle = gdt::InvalidHandle;
if (i < NumDungeons) {
- if (mDLCPositions[i].flag_handle == ksys::gdt::InvalidHandle)
+ if (mDLCPositions[i].flag_handle == gdt::InvalidHandle)
continue;
- handle = ksys::gdt::Manager::instance()->getBoolHandle(getDungeonFlag(i + 120));
+ handle = gdt::Manager::instance()->getBoolHandle(getDungeonFlag(i + 120));
}
mDLCPositions[i].flag_handle = handle;
@@ -525,22 +525,22 @@ void Manager::reinitFlags() {
}
void Manager::setGameDataFlags() const {
- ksys::gdt::Manager::instance()->setS32(mVersion, mFlagAocVerAtLastPlay);
+ gdt::Manager::instance()->setS32(mVersion, mFlagAocVerAtLastPlay);
s32 latest_ver;
- if (ksys::gdt::Manager::instance()->getS32(mFlagLatestAocVerPlayed, &latest_ver)) {
+ if (gdt::Manager::instance()->getS32(mFlagLatestAocVerPlayed, &latest_ver)) {
if (u32(latest_ver) < mVersion)
- ksys::gdt::Manager::instance()->setS32(mVersion, mFlagLatestAocVerPlayed);
+ gdt::Manager::instance()->setS32(mVersion, mFlagLatestAocVerPlayed);
}
const auto ver = mVersion;
- ksys::gdt::Manager::instance()->setBool(ver >= 0x100, mFlagHasAocVer1);
- ksys::gdt::Manager::instance()->setBool(ver >= 0x200, mFlagHasAocVer2);
- ksys::gdt::Manager::instance()->setBool(ver >= 0x300, mFlagHasAocVer3);
+ gdt::Manager::instance()->setBool(ver >= 0x100, mFlagHasAocVer1);
+ gdt::Manager::instance()->setBool(ver >= 0x200, mFlagHasAocVer2);
+ gdt::Manager::instance()->setBool(ver >= 0x300, mFlagHasAocVer3);
}
-void Manager::onGdtReinit(ksys::gdt::Manager::ReinitEvent* event) {
+void Manager::onGdtReinit(gdt::Manager::ReinitEvent* event) {
reinitFlags();
}
-} // namespace uking::aoc
+} // namespace ksys::aoc
diff --git a/src/Game/DLC/aocManager.h b/src/KingSystem/AOC/aocManager.h
index 9dd19636..9f1623f3 100644
--- a/src/Game/DLC/aocManager.h
+++ b/src/KingSystem/AOC/aocManager.h
@@ -11,15 +11,15 @@
#include "KingSystem/Resource/resResourceMgrTask.h"
#include "KingSystem/Utils/Types.h"
-namespace ksys {
-class OverlayArena;
-}
-
namespace sead {
class FileDevice;
}
-namespace uking::aoc {
+namespace ksys {
+class OverlayArena;
+}
+
+namespace ksys::aoc {
// TODO
class Manager {
@@ -38,12 +38,12 @@ public:
/// @return Whether the Champion's Ballad DLC is supported.
bool hasAoc3() const { return mVersion >= 0x300; }
- void loadAocMainFieldPack(ksys::OverlayArena* arena);
+ void loadAocMainFieldPack(OverlayArena* arena);
void registerAocMainFieldPack();
void unloadAocMainFieldPack();
sead::FileDevice* getFileDeviceForMapFile(const sead::SafeString& path) const;
- bool getFileDeviceForMap(sead::FileDevice** p_file_device, ksys::res::Handle** p_handle,
+ bool getFileDeviceForMap(sead::FileDevice** p_file_device, res::Handle** p_handle,
const sead::SafeString& path);
sead::FileDevice* getFileDeviceForStaticCompound(const sead::SafeString& path) const;
sead::FileDevice* getFileDeviceForTeraMesh(const sead::SafeString& path) const;
@@ -61,7 +61,7 @@ public:
static bool isAocField(const sead::SafeString& map_type);
sead::FileDevice* getFileDeviceForDungeonPack(const sead::SafeString& path) const;
- void registerAocPack(ksys::res::Handle* pack);
+ void registerAocPack(res::Handle* pack);
bool aocPackHasFile(const sead::SafeString& path) const;
bool changeMoviePath(sead::BufferedSafeString& path) const;
@@ -82,14 +82,14 @@ private:
sead::Vector3f rotate = sead::Vector3f::zero;
sead::Vector3f translate2 = sead::Vector3f::zero;
float scale = 0.0;
- ksys::gdt::FlagHandle flag_handle = ksys::gdt::InvalidHandle;
+ gdt::FlagHandle flag_handle = gdt::InvalidHandle;
};
KSYS_CHECK_SIZE_NX150(DLCPosition, 0x2c);
struct VersionFile {
bool readVersion();
- ksys::res::Handle file_handle;
+ res::Handle file_handle;
sead::FixedSafeString<16> string;
};
KSYS_CHECK_SIZE_NX150(VersionFile, 0x78);
@@ -100,27 +100,27 @@ private:
void resetFlags();
void initGameData();
void reinitFlags();
- void onGdtReinit(ksys::gdt::Manager::ReinitEvent* event);
+ void onGdtReinit(gdt::Manager::ReinitEvent* event);
sead::FileDevice* mFileDevice{};
- ksys::res::FileDevicePrefix mVersionFileDevPrefix;
+ res::FileDevicePrefix mVersionFileDevPrefix;
VersionFile mVersionFile{};
u32 mVersion{};
- ksys::res::Handle mAocMainFieldPack;
- ksys::res::FileDevicePrefix mAocMainFieldPackPrefix;
- ksys::res::Handle* mAocPack{};
- ksys::res::FileDevicePrefix mAocPackPrefix;
+ res::Handle mAocMainFieldPack;
+ res::FileDevicePrefix mAocMainFieldPackPrefix;
+ res::Handle* mAocPack{};
+ res::FileDevicePrefix mAocPackPrefix;
sead::SafeArray<DLCPosition, 20> mDLCPositions;
- ksys::gdt::FlagHandle mFlagAocVerAtLastPlay{};
- ksys::gdt::FlagHandle mFlagLatestAocVerPlayed{};
- ksys::gdt::FlagHandle mFlagHasAocVer1{};
- ksys::gdt::FlagHandle mFlagHasAocVer2{};
- ksys::gdt::FlagHandle mFlagHasAocVer3{};
- ksys::gdt::Manager::ReinitSignal::Slot mGdtReinitSlot;
+ gdt::FlagHandle mFlagAocVerAtLastPlay{};
+ gdt::FlagHandle mFlagLatestAocVerPlayed{};
+ gdt::FlagHandle mFlagHasAocVer1{};
+ gdt::FlagHandle mFlagHasAocVer2{};
+ gdt::FlagHandle mFlagHasAocVer3{};
+ gdt::Manager::ReinitSignal::Slot mGdtReinitSlot;
sead::BitFlag8 mVersionFlags{};
#ifdef NNSDK
@@ -129,4 +129,4 @@ private:
};
KSYS_CHECK_SIZE_NX150(Manager, 0x598);
-} // namespace uking::aoc
+} // namespace ksys::aoc
diff --git a/src/KingSystem/CMakeLists.txt b/src/KingSystem/CMakeLists.txt
index f1d8fddc..93a1d8db 100644
--- a/src/KingSystem/CMakeLists.txt
+++ b/src/KingSystem/CMakeLists.txt
@@ -3,6 +3,7 @@ add_subdirectory(GameData)
add_subdirectory(Resource)
add_subdirectory(ActorSystem)
+add_subdirectory(AOC)
add_subdirectory(Camera)
add_subdirectory(Chemical)
add_subdirectory(Ecosystem)
diff --git a/src/KingSystem/GameData/gdtManager.cpp b/src/KingSystem/GameData/gdtManager.cpp
index c067801d..ff628407 100644
--- a/src/KingSystem/GameData/gdtManager.cpp
+++ b/src/KingSystem/GameData/gdtManager.cpp
@@ -8,7 +8,7 @@
#include <thread/seadThreadUtil.h>
#include <time/seadTickTime.h>
#include <type_traits>
-#include "Game/DLC/aocManager.h"
+#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/GameData/gdtSaveMgr.h"
#include "KingSystem/GameData/gdtTriggerParam.h"
#include "KingSystem/Map/mapMubinIter.h"
@@ -426,7 +426,7 @@ void Manager::fixQuestFlags() {
}
void Manager::fixQuestFlagsDlc2() {
- if (uking::aoc::Manager::instance()->hasAoc3())
+ if (aoc::Manager::instance()->hasAoc3())
return;
enum {
diff --git a/src/KingSystem/Map/mapLazyTraverseList.cpp b/src/KingSystem/Map/mapLazyTraverseList.cpp
index a87d2b94..985628e1 100644
--- a/src/KingSystem/Map/mapLazyTraverseList.cpp
+++ b/src/KingSystem/Map/mapLazyTraverseList.cpp
@@ -1,6 +1,6 @@
#include "KingSystem/Map/mapLazyTraverseList.h"
-#include "Game/DLC/aocManager.h"
+#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/GameData/gdtManager.h"
namespace ksys::map {
@@ -10,9 +10,9 @@ LazyTraverseList::LazyTraverseList(sead::Heap* heap) {
sead::SafeString path = "Map/MainField/LazyTraverseList.mubin";
ksys::res::LoadRequest request;
- if (uking::aoc::Manager::instance())
- uking::aoc::Manager::instance()->getFileDeviceForMap(&request.mAocFileDevice,
- &request.mPackHandle, path);
+ if (aoc::Manager::instance())
+ aoc::Manager::instance()->getFileDeviceForMap(&request.mAocFileDevice, &request.mPackHandle,
+ path);
handle.load(path, &request);
diff --git a/src/KingSystem/Map/mapPlacementMap.cpp b/src/KingSystem/Map/mapPlacementMap.cpp
index e9bf6765..05461527 100644
--- a/src/KingSystem/Map/mapPlacementMap.cpp
+++ b/src/KingSystem/Map/mapPlacementMap.cpp
@@ -1,7 +1,7 @@
#include "KingSystem/Map/mapPlacementMap.h"
#include <prim/seadScopedLock.h>
#include <thread/seadReadWriteLock.h>
-#include "Game/DLC/aocManager.h"
+#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/Map/mapObject.h"
#include "KingSystem/Physics/StaticCompound/physStaticCompound.h"
#include "KingSystem/Physics/StaticCompound/physStaticCompoundRigidBodyGroup.h"
@@ -201,8 +201,8 @@ bool PlacementMap::loadDynamicMap() {
} else {
path.append("_Dynamic_NoGrudgeMerge.mubin");
}
- if (uking::aoc::Manager::instance()) {
- arg.mAocFileDevice = uking::aoc::Manager::instance()->getFileDeviceForMapFile(path);
+ if (aoc::Manager::instance()) {
+ arg.mAocFileDevice = aoc::Manager::instance()->getFileDeviceForMapFile(path);
}
return mDynamicMubinRes.requestLoad(path, &arg, 0);
}
@@ -288,8 +288,8 @@ bool PlacementMap::loadStaticCompound(int hksc_idx, bool auto_gen_mu, bool req_a
path.format("Physics/StaticCompound/%s-%d.hksc", mFolderAndFile.cstr(), hksc_idx);
}
}
- if (uking::aoc::Manager::instance()) {
- arg.mAocFileDevice = uking::aoc::Manager::instance()->getFileDeviceForStaticCompound(path);
+ if (aoc::Manager::instance()) {
+ arg.mAocFileDevice = aoc::Manager::instance()->getFileDeviceForStaticCompound(path);
}
return mRes[hksc_idx].mRes.requestLoad(path, &arg, 0);
diff --git a/src/KingSystem/System/StarterPackMgr.cpp b/src/KingSystem/System/StarterPackMgr.cpp
index 2948f05a..9ca0690b 100644
--- a/src/KingSystem/System/StarterPackMgr.cpp
+++ b/src/KingSystem/System/StarterPackMgr.cpp
@@ -117,8 +117,8 @@ void StarterPackMgr::loadTitleBGPacks() {
}
void StarterPackMgr::loadAocMainFieldPack() {
- if (uking::aoc::Manager::instance())
- uking::aoc::Manager::instance()->loadAocMainFieldPack(mOverlayArena);
+ if (aoc::Manager::instance())
+ aoc::Manager::instance()->loadAocMainFieldPack(mOverlayArena);
}
void StarterPackMgr::unloadBootupGraphicsPack() {
@@ -192,8 +192,8 @@ void StarterPackMgr::setPackToTitleBGPack() {
mTitleBGLangPack.waitForReady();
mTitleBGLangPack.parseResource(nullptr);
- if (uking::aoc::Manager::instance())
- uking::aoc::Manager::instance()->registerAocMainFieldPack();
+ if (aoc::Manager::instance())
+ aoc::Manager::instance()->registerAocMainFieldPack();
res::registerPackExtension(false, "");
res::setResourceMgrPack(&mTitleBGPack);
@@ -207,8 +207,8 @@ void StarterPackMgr::unloadTitleBGAndAocMainFieldPacksAndStuff() {
mTitleBGPack.requestUnload();
mTitleBGLangPack.requestUnload();
- if (uking::aoc::Manager::instance())
- uking::aoc::Manager::instance()->unloadAocMainFieldPack();
+ if (aoc::Manager::instance())
+ aoc::Manager::instance()->unloadAocMainFieldPack();
for (int x = 0; x < 5; x++)
res::ResourceMgrTask::instance()->waitForTaskQueuesToEmpty();
diff --git a/src/KingSystem/System/StarterPackMgr.h b/src/KingSystem/System/StarterPackMgr.h
index a579ac6d..28feb8c2 100644
--- a/src/KingSystem/System/StarterPackMgr.h
+++ b/src/KingSystem/System/StarterPackMgr.h
@@ -3,7 +3,7 @@
#include <devenv/seadEnvUtil.h>
#include <heap/seadExpHeap.h>
#include <prim/seadSafeString.h>
-#include "Game/DLC/aocManager.h"
+#include "KingSystem/AOC/aocManager.h"
#include "KingSystem/Resource/resEntryFactory.h"
#include "KingSystem/Resource/resHandle.h"
#include "KingSystem/Resource/resLoadRequest.h"