1#pragma once
2
3#include <container/seadPtrArray.h>
4
5struct AchievementInfo {
6public:
7 AchievementInfo(const char* name, s32 num, s32 level, const char* note)
8 : name(name), num(num), level(level), note(note) {}
9
10 const char* name;
11 s32 num;
12 s32 level;
13 const char* note;
14};
15
16class AchievementInfoReader {
17public:
18 AchievementInfoReader();
19 void init();
20 s32 tryFindIndexByName(const char*) const;
21
22 AchievementInfo* get(s32 index) { return mAchievements[index]; }
23
24 AchievementInfo* unsafeAt(s32 index) { return mAchievements.unsafeAt(pos: index); }
25
26 s32 size() { return mAchievements.size(); }
27
28 s32 capacity() { return mAchievements.capacity(); }
29
30private:
31 sead::PtrArray<AchievementInfo> mAchievements;
32};
33