diff --git a/src/toBeSorted/counters/arrow_counter.cpp b/src/toBeSorted/counters/arrow_counter.cpp index a7837350..a770d160 100644 --- a/src/toBeSorted/counters/arrow_counter.cpp +++ b/src/toBeSorted/counters/arrow_counter.cpp @@ -4,12 +4,11 @@ class ArrowCounter : public Counter { public: ArrowCounter(); /* 8016DFA0 */ ~ArrowCounter() {} - virtual u16 getMax() override; + /* 8016E000 */ virtual u16 getMax() override { + return 20; + }; }; /* 80575618 */ ArrowCounter lbl_80575618; /* 8016DFE0 */ ArrowCounter::ArrowCounter() : Counter(0x1f2) {} -/* 8016E000 */ u16 ArrowCounter::getMax() { - return 20; -} diff --git a/src/toBeSorted/counters/bomb_counter.cpp b/src/toBeSorted/counters/bomb_counter.cpp index 4511ea56..02d11af0 100644 --- a/src/toBeSorted/counters/bomb_counter.cpp +++ b/src/toBeSorted/counters/bomb_counter.cpp @@ -4,12 +4,11 @@ class BombCounter : public Counter { public: BombCounter(); /* 8016E020 */ ~BombCounter() {} - virtual u16 getMax() override; + /* 8016E080 */ virtual u16 getMax() override { + return 10; + } }; /* 80575620 */ BombCounter lbl_80575620; /* 8016E060 */ BombCounter::BombCounter(): Counter(0x1f3) { } -/* 8016E080 */ u16 BombCounter::getMax() { - return 10; -} diff --git a/src/toBeSorted/counters/extra_wallet_counter.cpp b/src/toBeSorted/counters/extra_wallet_counter.cpp index 0d8a2f52..342f2e81 100644 --- a/src/toBeSorted/counters/extra_wallet_counter.cpp +++ b/src/toBeSorted/counters/extra_wallet_counter.cpp @@ -4,13 +4,12 @@ class ExtraWalletCounter : public Counter { public: ExtraWalletCounter(); /* 8016E220 */ ~ExtraWalletCounter() {} - virtual u16 getMax() override; + /* 8016E280 */ virtual u16 getMax() override { + return 3; + } }; /* 80575640 */ ExtraWalletCounter lbl_80575640; /* 8016E260 */ ExtraWalletCounter::ExtraWalletCounter(): Counter(0x1fc) { } -/* 8016E280 */ u16 ExtraWalletCounter::getMax() { - return 3; -} diff --git a/src/toBeSorted/counters/key_piece_counter.cpp b/src/toBeSorted/counters/key_piece_counter.cpp index 8a3b6914..55ddded7 100644 --- a/src/toBeSorted/counters/key_piece_counter.cpp +++ b/src/toBeSorted/counters/key_piece_counter.cpp @@ -4,12 +4,11 @@ class KeyPieceCounter : public Counter { public: KeyPieceCounter(); /* 8016E1A0 */ ~KeyPieceCounter() {} - virtual u16 getMax() override; + /* 8016E200 */ virtual u16 getMax() override { + return 5; + } }; /* 80575638 */ KeyPieceCounter lbl_80575638; /* 8016E1E0 */ KeyPieceCounter::KeyPieceCounter() : Counter(0x1f9) {} -/* 8016E200 */ u16 KeyPieceCounter::getMax() { - return 5; -} diff --git a/src/toBeSorted/counters/rupee_counter.cpp b/src/toBeSorted/counters/rupee_counter.cpp index cd754fc6..d1264a74 100644 --- a/src/toBeSorted/counters/rupee_counter.cpp +++ b/src/toBeSorted/counters/rupee_counter.cpp @@ -1,10 +1,15 @@ #include +static u16 getBaseCapacity(); +static u16 getExtraWalletCapacity(); + class RupeeCounter : public Counter { public: RupeeCounter(); /* 8016DEF0 */ ~RupeeCounter() {} - virtual u16 getMax() override; + /* 8016DF50 */ virtual u16 getMax() override { + return (getBaseCapacity() + getExtraWalletCapacity()); + } }; struct WalletStruct { @@ -16,7 +21,7 @@ struct WalletStruct { extern "C" void *lbl_80575400; extern "C" u16 fn_800BF5E0(void *data, u16 flag); -/* 8016DE10 */ u16 getBaseCapacity() { +/* 8016DE10 */ static u16 getBaseCapacity() { int i = 0; /* 804E91B0 */ WalletStruct wallet_definitions[4] = { {0x6c, 500}, @@ -36,14 +41,10 @@ extern "C" u16 fn_800BF5E0(void *data, u16 flag); // TODO main counters class extern "C" u16 fn_8016D730(u16); -/* 8016DEC0 */ u16 getExtraWalletCapacity() { +/* 8016DEC0 */ static u16 getExtraWalletCapacity() { return 300 * fn_8016D730(0x27); } /* 80575610 */ RupeeCounter lbl_80575610; /* 8016DF30 */ RupeeCounter::RupeeCounter() : Counter(0x1f5) {} - -/* 8016DF50 */ u16 RupeeCounter::getMax() { - return (getBaseCapacity() + getExtraWalletCapacity()); -} diff --git a/src/toBeSorted/counters/slingshot_seed_counter.cpp b/src/toBeSorted/counters/slingshot_seed_counter.cpp index 1af7fb6c..797018d6 100644 --- a/src/toBeSorted/counters/slingshot_seed_counter.cpp +++ b/src/toBeSorted/counters/slingshot_seed_counter.cpp @@ -4,12 +4,11 @@ class SlingshotSeedCounter : public Counter { public: SlingshotSeedCounter(); /* 8016E120 */ ~SlingshotSeedCounter() {} - virtual u16 getMax() override; + /* 8016E180 */ virtual u16 getMax() override { + return 20; + }; }; /* 80575630 */ SlingshotSeedCounter lbl_80575630; /* 8016E160 */ SlingshotSeedCounter::SlingshotSeedCounter() : Counter(0x1ed) {} -/* 8016E180 */ u16 SlingshotSeedCounter::getMax() { - return 20; -} diff --git a/src/toBeSorted/counters/tear_counter.cpp b/src/toBeSorted/counters/tear_counter.cpp index edb48276..2a8503cd 100644 --- a/src/toBeSorted/counters/tear_counter.cpp +++ b/src/toBeSorted/counters/tear_counter.cpp @@ -4,12 +4,11 @@ class TearCounter : public Counter { public: TearCounter(); /* 8016E0A0 */ ~TearCounter() {} - virtual u16 getMax() override; + /* 8016E100 */ virtual u16 getMax() override { + return 15; + }; }; /* 80575628 */ TearCounter lbl_80575628; /* 8016E0E0 */ TearCounter::TearCounter(): Counter(0x1f4) { } -/* 8016E100 */ u16 TearCounter::getMax() { - return 15; -}