Decomp ItemManager::GetFairyLevel

This commit is contained in:
Aetias
2024-02-18 12:50:30 +01:00
parent 0b3e7ce197
commit 116dffcaa5
3 changed files with 8 additions and 17 deletions
-17
View File
@@ -3,23 +3,6 @@
.text
.global _ZNK11ItemManager13GetFairyLevelEi
arm_func_start _ZNK11ItemManager13GetFairyLevelEi
_ZNK11ItemManager13GetFairyLevelEi: ; 0x020ada48
stmdb sp!, {r3, r4, r5, lr}
mov r4, r1
add r1, r4, #0x1a
mov r5, r0
bl _ZNK11ItemManager7HasItemEj
cmp r0, #0
movne r0, #2
ldmneia sp!, {r3, r4, r5, pc}
mov r0, r5
add r1, r4, #0x17
bl _ZNK11ItemManager7HasItemEj
ldmia sp!, {r3, r4, r5, pc}
arm_func_end _ZNK11ItemManager13GetFairyLevelEi
.global _ZNK11ItemManager7HasItemEj
arm_func_start _ZNK11ItemManager7HasItemEj
_ZNK11ItemManager7HasItemEj: ; 0x020ada78
+2
View File
@@ -26,9 +26,11 @@ enum ItemFlag_ {
ItemFlag_CourageLv1 = 23,
ItemFlag_PowerLv1 = 24,
ItemFlag_WisdomLv1 = 25,
ItemFlag_FAIRY_LV1 = ItemFlag_CourageLv1,
ItemFlag_CourageLv2 = 26,
ItemFlag_PowerLv2 = 27,
ItemFlag_WisdomLv2 = 28,
ItemFlag_FAIRY_LV2 = ItemFlag_CourageLv2,
ItemFlag_Hourglass = 32,
ItemFlag_SeaChartSW = 33,
+6
View File
@@ -351,3 +351,9 @@ ARM u32 ItemManager::GetActiveFairyLevel(FairyId id) const {
if (id == fairy) return this->GetFairyLevel(id);
return 0;
}
ARM u32 ItemManager::GetFairyLevel(FairyId id) const {
if (this->HasItem(ItemFlag_FAIRY_LV2 + id)) return 2;
if (this->HasItem(ItemFlag_FAIRY_LV1 + id)) return 1;
return 0;
}