summaryrefslogtreecommitdiff
path: root/src/toBeSorted/counters/counter.cpp
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2024-09-12 22:23:11 +0200
committerGitHub <noreply@github.com>2024-09-12 16:23:11 -0400
commite2c4bb7be7fa731a335bce4bc22283d899133e39 (patch)
tree91152d84cae384b376f4ce4c87e9e247255ec954 /src/toBeSorted/counters/counter.cpp
parent9aa30ee4995be938e1ea05f6d476d63fcb8cc67e (diff)
Dowsing (#17)
* Dowsing. * d_t_dowsing * d_t_holy_water OK
Diffstat (limited to 'src/toBeSorted/counters/counter.cpp')
-rw-r--r--src/toBeSorted/counters/counter.cpp29
1 files changed, 4 insertions, 25 deletions
diff --git a/src/toBeSorted/counters/counter.cpp b/src/toBeSorted/counters/counter.cpp
index 2c388e44..42729f33 100644
--- a/src/toBeSorted/counters/counter.cpp
+++ b/src/toBeSorted/counters/counter.cpp
@@ -1,26 +1,5 @@
#include <toBeSorted/counters/counter.h>
-
-// TODO use the item flag manager once it exists
-class ItemFlagManager {
-public:
- ItemFlagManager() {}
- /** 0x08 */ virtual ~ItemFlagManager();
- /** 0x0C */ virtual void setFlagszptr();
- /** 0x10 */ virtual void onDirty();
- /** 0x14 */ virtual void copyFlagsFromSave() = 0;
- /** 0x18 */ virtual void setupUnkFlagsStuff() = 0;
- /** 0x1C */ virtual bool doCommit() = 0;
- /** 0x20 */ virtual void setFlag(u16 flag);
- /** 0x24 */ virtual void unsetFlag(u16 flag);
- /** 0x28 */ virtual void setFlagOrCounterToValue(u16 flag, u16 value);
- /** 0x2C */ virtual u16 getCounterOrFlag(u16 flag);
- /** 0x30 */ virtual u16 getUncommittedValue(u16 flag);
- /** 0x34 */ virtual void unk3();
- /** 0x38 */ virtual u16 *getSaveFlagSpace() = 0;
-};
-
-// TODO set up item flag manager
-extern "C" ItemFlagManager *lbl_80575400;
+#include <toBeSorted/item_story_flag_manager.h>
/* 8016cc40 */ s32 Counter::checkedAdd(s32 num) {
@@ -43,13 +22,13 @@ extern "C" ItemFlagManager *lbl_80575400;
}
/* 8016cd30 */ u16 Counter::getCommittedValue() {
- return lbl_80575400->getCounterOrFlag(counterId | 0x4000);
+ return ItemFlagManager::sInstance->getCounterOrFlag(counterId | 0x4000);
}
/* 8016cd50 */ u16 Counter::getUncommittedValue() {
- return lbl_80575400->getUncommittedValue(counterId | 0x4000);
+ return ItemFlagManager::sInstance->getUncommittedValue(counterId | 0x4000);
}
/* 8016cd70 */ void Counter::setValue(u16 num) {
- lbl_80575400->setFlagOrCounterToValue(counterId | 0x4000, num);
+ ItemFlagManager::sInstance->setFlagOrCounterToValue(counterId | 0x4000, num);
}