Implement CMemoryCardSys::GetAreaAndWorldIdForSave

This commit is contained in:
Phillip Stephens 2020-10-20 02:40:02 -07:00
parent 01d94367dc
commit 3ffa15cfa3
Signed by: Antidote
GPG Key ID: F8BEE4C83DACA60D
2 changed files with 12 additions and 2 deletions

View File

@ -148,7 +148,17 @@ bool CMemoryCardSys::InitializePump() {
return false;
}
std::pair<TAreaId, s32> CMemoryCardSys::GetAreaAndWorldIdForSaveId(s32 saveId) const { return {kInvalidAreaId, -1}; }
std::pair<CAssetId, TAreaId> CMemoryCardSys::GetAreaAndWorldIdForSaveId(s32 saveId) const {
for (const auto& [mlvl, saveWorld] : xc_memoryWorlds) {
for (TAreaId areaId = 0; areaId < saveWorld.xc_areaIds.size(); ++areaId) {
if (saveWorld.xc_areaIds[areaId] == saveId) {
return {mlvl, areaId};
}
}
}
return {{}, kInvalidAreaId};
}
void CMemoryCardSys::CCardFileInfo::LockBannerToken(CAssetId bannerTxtr, CSimplePool& sp) {
x3c_bannerTex = bannerTxtr;

View File

@ -151,7 +151,7 @@ public:
}
};
std::pair<TAreaId, s32> GetAreaAndWorldIdForSaveId(s32 saveId) const;
std::pair<CAssetId, TAreaId> GetAreaAndWorldIdForSaveId(s32 saveId) const;
static kabufuda::ProbeResults CardProbe(kabufuda::ECardSlot port);
static ECardResult MountCard(kabufuda::ECardSlot port);
static ECardResult UnmountCard(kabufuda::ECardSlot port);