botw/src/KingSystem/Map/mapAutoPlacementFlowMgr.cpp

62 lines
2.0 KiB
C++

#include "KingSystem/Map/mapAutoPlacementFlowMgr.h"
#include <container/seadBuffer.h>
#include <evfl/ResActor.h>
#include "KingSystem/Resource/resLoadRequest.h"
namespace ksys::map {
const char* sFlowResNamesData[] = {
"AutoPlacement_Animal.bfevfl",
"AutoPlacement_Bird.bfevfl",
"AutoPlacement_Enemy_Golem_Little.bfevfl",
"AutoPlacement_Enemy_Keese.bfevfl",
"AutoPlacement_Enemy_Lizalfos.bfevfl",
"AutoPlacement_Enemy_Octarock.bfevfl",
"AutoPlacement_Enemy_Wizzrobe.bfevfl",
"AutoPlacement_Enemy_Fish.bfevfl",
"AutoPlacement_Enemy_Insect.bfevfl",
"AutoPlacement_Enemy_Material.bfevfl",
};
sead::Buffer<const char*> sFlowResNames{sFlowResNamesData};
const char* sFlowNearResNamesData[] = {
"AutoPlacementNear_Enemy_Assassin_Middle.bfevfl",
"AutoPlacementNear_Enemy_Assassin_Shooter_Junior.bfevfl",
"AutoPlacementNear_Enemy_Chuchu.bfevfl",
"AutoPlacementNear_Enemy_Dragon.bfevfl",
"AutoPlacementNear_Enemy_Lizalfos.bfevfl",
"AutoPlacementNear_Enemy_Octarock.bfevfl",
"AutoPlacementNear_Enemy_Stal.bfevfl",
};
sead::Buffer<const char*> sFlowNearResNames{sFlowNearResNamesData};
void AutoPlacementFlowMgr::loadEventFlows() {
for (int i = 0; i < mFlowArray.size(); i++) {
auto& flow = mFlowArray[i];
flow.evfl_name = sFlowResNames[i];
flow.idx = 0xFF;
sead::FixedSafeString<128> path;
path.format("EventFlow/%s", flow.evfl_name.cstr());
res::LoadRequest req;
req.mRequester = "AutoPlacementFlow";
flow.handle.requestLoad(path, &req);
}
for (int i = 0; i < mFlowNearArray.size(); i++) {
auto& flow = mFlowNearArray[i];
flow.evfl_name = sFlowResNames[i];
flow.idx = 0xFF;
sead::FixedSafeString<128> path;
path.format("EventFlow/%s", flow.evfl_name.cstr());
res::LoadRequest req;
req.mRequester = "AutoPlacementFlow";
flow.handle.requestLoad(path, &req);
}
}
} // namespace ksys::map