summaryrefslogtreecommitdiff
path: root/src/KingSystem/Ecosystem/ecoLevelSensor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/KingSystem/Ecosystem/ecoLevelSensor.cpp')
-rw-r--r--src/KingSystem/Ecosystem/ecoLevelSensor.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/KingSystem/Ecosystem/ecoLevelSensor.cpp b/src/KingSystem/Ecosystem/ecoLevelSensor.cpp
index f7db37fd..a5b74df2 100644
--- a/src/KingSystem/Ecosystem/ecoLevelSensor.cpp
+++ b/src/KingSystem/Ecosystem/ecoLevelSensor.cpp
@@ -1,4 +1,5 @@
#include "KingSystem/Ecosystem/ecoLevelSensor.h"
+#include "KingSystem/Resource/resLoadRequest.h"
#include "KingSystem/Utils/Byaml/Byaml.h"
namespace ksys::eco {
@@ -7,8 +8,16 @@ LevelSensor::LevelSensor() = default;
LevelSensor::~LevelSensor() {
mResHandle.requestUnload2();
- if (mBymlIter)
- delete mBymlIter;
+ if (mRootIter)
+ delete mRootIter;
+}
+
+void LevelSensor::init(sead::Heap* heap) {
+ res::LoadRequest req;
+ req.mRequester = "LevelSensor";
+ mResHandle.load("Ecosystem/LevelSensor.byml", &req);
+ auto* res = sead::DynamicCast<sead::DirectResource>(mResHandle.getResource());
+ mRootIter = new (heap) al::ByamlIter(res->getRawData());
}
} // namespace ksys::eco