Files
st/include/System/OverlayManager.hpp
T
Yanis002 e20137b303 progress
2025-03-20 13:49:10 +01:00

164 lines
3.0 KiB
C++

#pragma once
#include "types.h"
// #include "Item/Item.hpp"
typedef u32 ItemFlag;
typedef u32 OverlayId;
enum OverlayId_ {
OverlayId_None = -1,
OverlayId_Core,
OverlayId_01,
OverlayId_02,
OverlayId_03,
OverlayId_04,
OverlayId_05,
OverlayId_06,
OverlayId_07,
OverlayId_08,
OverlayId_09,
OverlayId_10,
OverlayId_11,
OverlayId_12,
OverlayId_13,
OverlayId_14,
OverlayId_15,
OverlayId_16,
OverlayId_17,
OverlayId_18,
OverlayId_19,
OverlayId_20,
OverlayId_21,
OverlayId_22,
OverlayId_23,
OverlayId_24,
OverlayId_25,
OverlayId_26,
OverlayId_27,
OverlayId_28,
OverlayId_29,
OverlayId_30,
OverlayId_31,
OverlayId_32,
OverlayId_33,
OverlayId_34,
OverlayId_35,
OverlayId_36,
OverlayId_37,
OverlayId_38,
OverlayId_39,
OverlayId_40,
OverlayId_41,
OverlayId_42,
OverlayId_43,
OverlayId_44,
OverlayId_45,
OverlayId_46,
OverlayId_47,
OverlayId_48,
OverlayId_49,
OverlayId_50,
OverlayId_51,
OverlayId_52,
OverlayId_53,
OverlayId_54,
OverlayId_55,
OverlayId_56,
OverlayId_57,
OverlayId_58,
OverlayId_59,
OverlayId_60,
OverlayId_61,
OverlayId_62,
OverlayId_63,
OverlayId_64,
OverlayId_65,
OverlayId_66,
OverlayId_67,
OverlayId_68,
OverlayId_69,
OverlayId_70,
OverlayId_71,
OverlayId_72,
OverlayId_73,
OverlayId_74,
OverlayId_75,
OverlayId_76,
OverlayId_77,
OverlayId_78,
OverlayId_79,
OverlayId_80,
OverlayId_81,
OverlayId_82,
OverlayId_83,
OverlayId_84,
OverlayId_85,
OverlayId_86,
OverlayId_87,
OverlayId_88,
OverlayId_89,
OverlayId_90,
OverlayId_91,
OverlayId_92,
OverlayId_93,
OverlayId_94,
OverlayId_95,
OverlayId_96,
OverlayId_97,
OverlayId_98,
OverlayId_99,
OverlayId_100,
OverlayId_101,
OverlayId_102,
OverlayId_103,
OverlayId_104,
OverlayId_105,
OverlayId_106,
OverlayId_107,
OverlayId_108,
OverlayId_109,
OverlayId_110,
OverlayId_111,
OverlayId_112,
OverlayId_113,
};
typedef u32 OverlayIndex;
enum OverlayIndex_ {
OverlayIndex_Core,
OverlayIndex_1,
OverlayIndex_2,
OverlayIndex_3,
OverlayIndex_4,
OverlayIndex_5,
OverlayIndex_6,
OverlayIndex_7,
OverlayIndex_8,
OverlayIndex_9,
OverlayIndex_10,
OverlayIndex_11,
OverlayIndex_12,
OverlayIndex_13,
OverlayIndex_14,
OverlayIndex_15,
OverlayIndex_16,
OverlayIndex_17,
OverlayIndex_COUNT,
};
class OverlayManager {
public:
OverlayId mLoadedOverlays[OverlayIndex_COUNT];
void Load(OverlayIndex index, OverlayId id);
void LoadIfNotLoaded(OverlayIndex index, OverlayId id);
void Unload(OverlayIndex index);
void LoadOverlaySetup(s32 index);
void UnloadOverlaySetup();
void LoadEquipItem(ItemFlag equipId);
};
extern OverlayManager gOverlayManager;