mirror of
https://github.com/CraftyBoss/SuperMarioOdysseyOnline.git
synced 2024-12-01 15:37:29 +00:00
48 lines
No EOL
2 KiB
C++
48 lines
No EOL
2 KiB
C++
#pragma once
|
|
|
|
#include "al/async/AsyncFunctorThread.h"
|
|
#include "al/hio/HioNode.h"
|
|
#include "game/GameData/GameDataHolder.h"
|
|
#include "heap/seadHeap.h"
|
|
|
|
|
|
class WorldResourceLoader : public al::HioNode {
|
|
public:
|
|
WorldResourceLoader(GameDataHolder *);
|
|
virtual ~WorldResourceLoader();
|
|
|
|
void loadResource(void);
|
|
void cancelLoadWorldResource(void);
|
|
void tryDestroyWorldResource(void);
|
|
bool requestLoadWorldHomeStageResource(int worldIndex, int scenario);
|
|
bool isEndLoadWorldResource(void) const; // { return mResourceLoadThread->isDone(); };
|
|
void requestLoadWorldResourceCommon(int);
|
|
void requestLoadWorldResource(int);
|
|
void createResourcePlayer(void);
|
|
void tryDestroyWorldResourceOnlyCap(void);
|
|
void calcLoadPercent(void);
|
|
void getLoadWorldId(void);
|
|
bool tryLoadResource(char const*,char const*,char const*);
|
|
void loadWorldResource(int,int,bool,char const*);
|
|
void calcWorldResourceHeapSize(void);
|
|
|
|
al::AsyncFunctorThread* mResourceLoadThread; // 0x8
|
|
sead::Heap* mWorldResHeap = nullptr; // 0x10
|
|
sead::Heap* mCapHeap = nullptr; // 0x18
|
|
sead::Heap* mWaterfallHeap = nullptr; // 0x20
|
|
int mCurWorld = -1; // 0x28
|
|
int mCurScenario = -1; // 0x2C
|
|
bool unkBool = true; // 0x30
|
|
bool mIsCancelLoad = true; // 0x31
|
|
void *unkPtr4 = nullptr; // 0x38
|
|
void* unkPtr5 = nullptr; // 0x40
|
|
int unkInt3 = 0; // 0x48
|
|
bool unkBool3 = true; // 0x4C
|
|
int unkInt4 = 0; // 0x50
|
|
int unkInt5 = 1; // 0x5C
|
|
GameDataHolder* mDataHolder; // 0x58
|
|
bool mIsDoneLoadingArcs = false; // 0x60
|
|
int mArcCount = 0; // 0x64
|
|
};
|
|
|
|
static_assert(sizeof(WorldResourceLoader) == 0x68, "WorldResourceLoader size"); |