diff --git a/asm/ov00/Item/ItemManager.inc b/asm/ov00/Item/ItemManager.inc index a7050c86..96d69948 100644 --- a/asm/ov00/Item/ItemManager.inc +++ b/asm/ov00/Item/ItemManager.inc @@ -1,24 +1,10 @@ #pragma once -.extern LoadTreasureItemFanfare -.extern _ZN10MapManager10GetNumKeysEv -.extern _ZN10MapManager10SetNumKeysEi .extern _ZN11ItemManager12GetEquipItemEi -.extern _ZN14AdventureFlags3GetEj -.extern _ZN14AdventureFlags3SetEjb +.extern _ZN11ItemManager15SetEquippedItemEi .extern _ZNK11ItemManager10GetMaxAmmoEi -.extern _ZNK11ItemManager12GetMaxRupeesEv -.extern gMapManager .extern data_027e0f78 -.extern data_027e103c .extern data_ov00_020eec68 .extern func_020196bc .extern func_020196fc -.extern func_ov00_020cf374 .extern func_ov00_020d73bc -.extern func_ov05_02104004 -.extern func_ov00_02079ffc -.extern func_ov09_0211c700 -.extern func_ov09_0211ca20 -.extern gAdventureFlags .extern gItemManager -.extern strcat diff --git a/asm/ov00/Item/ItemManager.s b/asm/ov00/Item/ItemManager.s index eef1c36f..302226a6 100644 --- a/asm/ov00/Item/ItemManager.s +++ b/asm/ov00/Item/ItemManager.s @@ -3,17 +3,6 @@ .text - .global _ZN11ItemManager15SetEquippedItemEi - arm_func_start _ZN11ItemManager15SetEquippedItemEi -_ZN11ItemManager15SetEquippedItemEi: ; 0x020ae3a8 - ldr r3, [r0] - mov r2, #2 - stmia r0, {r1, r3} - strh r2, [r0, #0x20] - mov r0, #1 - bx lr - arm_func_end _ZN11ItemManager15SetEquippedItemEi - .global _ZN11ItemManager17EquipPreviousItemEv arm_func_start _ZN11ItemManager17EquipPreviousItemEv _ZN11ItemManager17EquipPreviousItemEv: ; 0x020ae3c0 diff --git a/src/00_Core/Item/ItemManager.cpp b/src/00_Core/Item/ItemManager.cpp index 892478c3..7c5c64b2 100644 --- a/src/00_Core/Item/ItemManager.cpp +++ b/src/00_Core/Item/ItemManager.cpp @@ -793,6 +793,13 @@ THUMB void ItemManager::GiveKeys(u32 amount) { } ARM ItemFlag ItemManager::GetEquippedItem() const { - if (this->mForcedItem != ItemFlag_None) return this->mForcedItem; - return this->mEquippedItem; + if (mForcedItem != ItemFlag_None) return mForcedItem; + return mEquippedItem; +} + +ARM bool ItemManager::SetEquippedItem(ItemFlag equipId) { + mPrevEquippedItem = mEquippedItem; + mEquippedItem = equipId; + mEquipLoadTimer = 2; + return true; }