mirror of
https://github.com/zeldaret/ph
synced 2026-05-23 23:05:17 -04:00
Match 10 ItemManager functions
This commit is contained in:
@@ -700,8 +700,8 @@
|
||||
.extern data_02050f54
|
||||
.extern func_ov00_020a9bec
|
||||
.extern func_ov00_020b4944
|
||||
.extern _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
.extern _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
.extern _ZN11ItemManager15Shield_vfunc_38Ej
|
||||
.extern _ZN11ItemManager18EquipItem_vfunc_38Ej
|
||||
.extern gItemManager
|
||||
.extern func_ov00_020d7b20
|
||||
.extern data_ov00_020dc878
|
||||
|
||||
@@ -3271,7 +3271,7 @@
|
||||
.extern func_ov00_02083ee0
|
||||
.extern data_027e0e60
|
||||
.extern func_ov00_020b4944
|
||||
.extern _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
.extern _ZN11ItemManager18EquipItem_vfunc_38Ej
|
||||
.extern gItemManager
|
||||
.extern func_ov05_02102c2c
|
||||
.extern data_ov00_020e9370
|
||||
|
||||
@@ -3,140 +3,6 @@
|
||||
|
||||
.text
|
||||
|
||||
.global _ZN11ItemManager18func_ov00_020ad528Ev
|
||||
arm_func_start _ZN11ItemManager18func_ov00_020ad528Ev
|
||||
_ZN11ItemManager18func_ov00_020ad528Ev: ; 0x020ad528
|
||||
bx lr
|
||||
arm_func_end _ZN11ItemManager18func_ov00_020ad528Ev
|
||||
|
||||
.global _ZN11ItemManager12GetItemModelEj
|
||||
arm_func_start _ZN11ItemManager12GetItemModelEj
|
||||
_ZN11ItemManager12GetItemModelEj: ; 0x020ad52c
|
||||
add r0, r0, r1, lsl #2
|
||||
ldr r0, [r0, #0xc0]
|
||||
bx lr
|
||||
arm_func_end _ZN11ItemManager12GetItemModelEj
|
||||
|
||||
.global _ZNK11ItemManager18func_ov00_020ad538Ej
|
||||
arm_func_start _ZNK11ItemManager18func_ov00_020ad538Ej
|
||||
_ZNK11ItemManager18func_ov00_020ad538Ej: ; 0x020ad538
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _020ad55c ; =data_027e0fc4
|
||||
mov r4, r1
|
||||
ldr r0, [r0]
|
||||
mov r1, #6
|
||||
blx func_ov00_020bb3a8
|
||||
mov r1, r4
|
||||
bl func_ov00_020c0bdc
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
arm_func_end _ZNK11ItemManager18func_ov00_020ad538Ej
|
||||
_020ad55c: .word data_027e0fc4
|
||||
|
||||
.global _ZNK11ItemManager18func_ov00_020ad560Ej
|
||||
arm_func_start _ZNK11ItemManager18func_ov00_020ad560Ej
|
||||
_ZNK11ItemManager18func_ov00_020ad560Ej: ; 0x020ad560
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _020ad584 ; =data_027e0fc4
|
||||
mov r4, r1
|
||||
ldr r0, [r0]
|
||||
mov r1, #7
|
||||
blx func_ov00_020bb3a8
|
||||
mov r1, r4
|
||||
bl func_ov00_020c0bdc
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
arm_func_end _ZNK11ItemManager18func_ov00_020ad560Ej
|
||||
_020ad584: .word data_027e0fc4
|
||||
|
||||
.global _ZN11ItemManager19GetDungeonItemModelEj
|
||||
arm_func_start _ZN11ItemManager19GetDungeonItemModelEj
|
||||
_ZN11ItemManager19GetDungeonItemModelEj: ; 0x020ad588
|
||||
add r0, r0, r1, lsl #2
|
||||
ldr r0, [r0, #0x100]
|
||||
bx lr
|
||||
arm_func_end _ZN11ItemManager19GetDungeonItemModelEj
|
||||
|
||||
.global _ZNK11ItemManager18func_ov00_020ad594Ej
|
||||
arm_func_start _ZNK11ItemManager18func_ov00_020ad594Ej
|
||||
_ZNK11ItemManager18func_ov00_020ad594Ej: ; 0x020ad594
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _020ad5b8 ; =data_027e0fc4
|
||||
mov r4, r1
|
||||
ldr r0, [r0]
|
||||
mov r1, #0xb
|
||||
blx func_ov00_020bb3a8
|
||||
mov r1, r4
|
||||
bl func_ov00_020c0bdc
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
arm_func_end _ZNK11ItemManager18func_ov00_020ad594Ej
|
||||
_020ad5b8: .word data_027e0fc4
|
||||
|
||||
.global _ZN11ItemManager13Sword_vfunc_38Ev
|
||||
arm_func_start _ZN11ItemManager13Sword_vfunc_38Ev
|
||||
_ZN11ItemManager13Sword_vfunc_38Ev: ; 0x020ad5bc
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, [r0, #0xac]
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r0]
|
||||
ldr r2, [r2, #0x38]
|
||||
blx r2
|
||||
ldmia sp!, {r3, pc}
|
||||
arm_func_end _ZN11ItemManager13Sword_vfunc_38Ev
|
||||
|
||||
.global _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
arm_func_start _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
_ZN11ItemManager14Shield_vfunc_38Ev: ; 0x020ad5d8
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, [r0, #0xac]
|
||||
ldr r0, [r0, #4]
|
||||
ldr r2, [r0]
|
||||
ldr r2, [r2, #0x38]
|
||||
blx r2
|
||||
ldmia sp!, {r3, pc}
|
||||
arm_func_end _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
|
||||
.global _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
arm_func_start _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
_ZN11ItemManager17EquipItem_vfunc_38Ev: ; 0x020ad5f4
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
ldr r2, _020ad670 ; =data_027e0618
|
||||
mov r5, r0
|
||||
ldr r2, [r2]
|
||||
mov r4, r1
|
||||
cmp r2, #6
|
||||
beq _020ad620
|
||||
bl _ZN11ItemManager13Sword_vfunc_38Ev
|
||||
mov r0, r5
|
||||
mov r1, r4
|
||||
bl _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
_020ad620:
|
||||
ldr r0, _020ad674 ; =data_027e0d38
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, #0x14]
|
||||
cmp r0, #1
|
||||
ldmeqia sp!, {r3, r4, r5, pc}
|
||||
mov r0, r5
|
||||
bl _ZNK11ItemManager15GetEquippedItemEv
|
||||
mvn r1, #0
|
||||
cmp r0, r1
|
||||
ldmeqia sp!, {r3, r4, r5, pc}
|
||||
ldrh r1, [r5, #0x20]
|
||||
cmp r1, #0
|
||||
ldmneia sp!, {r3, r4, r5, pc}
|
||||
ldr r2, [r5, #0xac]
|
||||
mov r1, r4
|
||||
ldr r0, [r2, r0, lsl #2]
|
||||
ldr r2, [r0]
|
||||
ldr r2, [r2, #0x38]
|
||||
blx r2
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
arm_func_end _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
_020ad670: .word data_027e0618
|
||||
_020ad674: .word data_027e0d38
|
||||
|
||||
.global _ZN11ItemManager18func_ov00_020ad678Ejjj
|
||||
arm_func_start _ZN11ItemManager18func_ov00_020ad678Ejjj
|
||||
_ZN11ItemManager18func_ov00_020ad678Ejjj: ; 0x020ad678
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
func_ov00_020ad434: // 0x020ad434
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
mov r5, r0
|
||||
bl _ZNK11ItemManager15GetEquippedItemEv
|
||||
ldrh r1, [r5, #0x20]
|
||||
mov r4, r0
|
||||
cmp r1, #0
|
||||
beq _020ad4b4
|
||||
sub r0, r1, #1
|
||||
strh r0, [r5, #0x20]
|
||||
ldrh r0, [r5, #0x20]
|
||||
cmp r0, #0
|
||||
bne _020ad4b4
|
||||
mvn r0, #0
|
||||
cmp r4, r0
|
||||
beq _020ad4b4
|
||||
lda r0, data_027e0d38
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, #0x14]
|
||||
cmp r0, #1
|
||||
beq _020ad4b4
|
||||
lda r0, gOverlayManager
|
||||
mov r1, r4
|
||||
bl _ZN14OverlayManager13LoadEquipItemEj
|
||||
lda r0, gPlayerAnimHandler
|
||||
mov r1, r4
|
||||
ldr r0, [r0]
|
||||
bl LoadEquipItemModel
|
||||
ldr r0, [r5, #0xac]
|
||||
ldr r0, [r0, r4, lsl #2]
|
||||
ldr r1, [r0]
|
||||
ldr r1, [r1]
|
||||
dcd 0xe12fff31 // blx r1
|
||||
_020ad4b4:
|
||||
ldr r0, [r5, #0xac]
|
||||
ldr r0, [r0]
|
||||
ldr r1, [r0]
|
||||
ldr r1, [r1, #0x30]
|
||||
dcd 0xe12fff31 // blx r1
|
||||
ldr r0, [r5, #0xac]
|
||||
ldr r0, [r0, #4]
|
||||
ldr r1, [r0]
|
||||
ldr r1, [r1, #0x30]
|
||||
dcd 0xe12fff31 // blx r1
|
||||
lda r0, data_027e0d38
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0, #0x14]
|
||||
cmp r0, #1
|
||||
mvnne r0, #0
|
||||
cmpne r4, r0
|
||||
ldmeqia sp!, {r3, r4, r5, pc}
|
||||
ldrh r0, [r5, #0x20]
|
||||
cmp r0, #0
|
||||
ldmneia sp!, {r3, r4, r5, pc}
|
||||
ldr r0, [r5, #0xac]
|
||||
ldr r0, [r0, r4, lsl #2]
|
||||
ldr r1, [r0]
|
||||
ldr r1, [r1, #0x30]
|
||||
dcd 0xe12fff31 // blx r1
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
@@ -79,3 +79,5 @@
|
||||
.extern func_ov00_020d73bc
|
||||
.extern gItemManager
|
||||
.extern data_ov00_020eec68
|
||||
.extern _ZN11ItemManager14Sword_vfunc_38Ej
|
||||
.extern _ZN11ItemManager15Shield_vfunc_38Ej
|
||||
|
||||
+2
-2
@@ -10803,12 +10803,12 @@ func_ov12_0211b8bc: ; 0x0211b8bc
|
||||
ldr r0, _0211b994 ; =gItemManager
|
||||
mov r1, r4
|
||||
ldr r0, [r0]
|
||||
bl _ZN11ItemManager14Shield_vfunc_38Ev
|
||||
bl _ZN11ItemManager15Shield_vfunc_38Ej
|
||||
_0211b96c:
|
||||
ldr r0, _0211b994 ; =gItemManager
|
||||
mov r1, r4
|
||||
ldr r0, [r0]
|
||||
bl _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
bl _ZN11ItemManager18EquipItem_vfunc_38Ej
|
||||
_0211b97c:
|
||||
ldr r0, [r5, #0x230]
|
||||
mov r1, #0
|
||||
|
||||
+1
-1
@@ -42817,7 +42817,7 @@ func_ov14_021419d8: ; 0x021419d8
|
||||
ldr r0, _02141a70 ; =gItemManager
|
||||
ldrb r1, [r4, #0x4c0]
|
||||
ldr r0, [r0]
|
||||
bl _ZN11ItemManager17EquipItem_vfunc_38Ev
|
||||
bl _ZN11ItemManager18EquipItem_vfunc_38Ej
|
||||
ldrb r0, [r4, #0x4c0]
|
||||
cmp r0, #0
|
||||
ldmneia sp!, {r4, pc}
|
||||
|
||||
@@ -248,10 +248,10 @@ public:
|
||||
void ClearPrevEquippedItem();
|
||||
void TickEquipItem();
|
||||
ItemFlag GetEquippedItem() const;
|
||||
void Sword_vfunc_38();
|
||||
void Shield_vfunc_38();
|
||||
void EquipItem_vfunc_38(unk32 param1, unk32 param2, unk32 param3);
|
||||
void func_ov00_020ad678(unk32 *param1, ItemFlag equipId);
|
||||
void Sword_vfunc_38(unk32 param1);
|
||||
void Shield_vfunc_38(unk32 param1);
|
||||
void EquipItem_vfunc_38(unk32 param1);
|
||||
void func_ov00_020ad678(Vec3p *param1, ItemFlag equipId);
|
||||
void EquipItem_vfunc_2c(ItemFlag equipId);
|
||||
EquipItem* GetEquipItem(ItemFlag equipId);
|
||||
unk32 func_ov00_020ad790(unk32 param1);
|
||||
|
||||
@@ -22,7 +22,7 @@ public:
|
||||
/* 18 */ virtual void vfunc_18() override; // func_ov55_02198d8c
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov55_02198da4
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov55_2198df8
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov55_2198df8
|
||||
/* 50 */ virtual void vfunc_50(); // func_ov14_0213d228
|
||||
/* 54 */
|
||||
};
|
||||
|
||||
@@ -38,6 +38,6 @@ public:
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov58_0219906c
|
||||
/* 34 */ virtual void vfunc_34(unk16 *param1) override; // func_ov58_0213ecb4
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov58_02199170
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov58_02199170
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
@@ -27,6 +27,6 @@ public:
|
||||
/* 1c */ virtual void vfunc_1c() override; // func_ov53_021990d0
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov53_0219913c
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov53_02199318
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov53_02199318
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
@@ -24,6 +24,6 @@ public:
|
||||
/* 18 */ virtual void vfunc_18() override; // func_ov56_02198d84
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov56_02198de4
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov56_02198df8
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov56_02198df8
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
@@ -30,7 +30,7 @@ public:
|
||||
|
||||
/* 2c */ virtual unk32 vfunc_2c() override; // func_ov59_02198fcc
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov59_02198e6c
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_0v59_02198fc8
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_0v59_02198fc8
|
||||
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const override; // func_ov14_0213ee10
|
||||
/* 4c */ virtual unk32 vfunc_4c() const override; // func_ov14_0213eea8
|
||||
/* 50 */
|
||||
|
||||
@@ -31,7 +31,7 @@ public:
|
||||
/* 2c */ virtual u32 vfunc_2c(); // func_ov00_020be964
|
||||
/* 30 */ virtual void vfunc_30() = 0;
|
||||
/* 34 */ virtual void vfunc_34(unk16 *param1); // func_ov00_020be96c
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) = 0;
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) = 0;
|
||||
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const; // func_ov00_020beb90
|
||||
/* 40 */ virtual unk32 vfunc_40() const; // func_ov00_020be970
|
||||
/* 44 */ virtual unk32 vfunc_44(unk32 param1) const; // func_ov00_020be978
|
||||
|
||||
@@ -21,7 +21,7 @@ public:
|
||||
/* 1c */ virtual void vfunc_1c() override; // func_ov55_021991b0
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov55_02199274
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_0v55_02199278
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_0v55_02199278
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
|
||||
@@ -34,6 +34,6 @@ public:
|
||||
/* 1c */ virtual void vfunc_1c() override; // func_ov57_0219935c
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov57_02199744
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov57_021998f0
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov57_021998f0
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
@@ -18,7 +18,7 @@ public:
|
||||
/* 18 */ virtual void vfunc_18() override; // func_0v54_02198d2c
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov54_02198e04
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov54_02198e4c
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov54_02198e4c
|
||||
/* 40 */ virtual unk32 vfunc_40() const override; // func_ov54_02198d30
|
||||
/* 44 */ virtual unk32 vfunc_44(unk32 param1) const override; // func_ov54_02198d38
|
||||
/* 48 */ virtual unk32 vfunc_48(unk32 param1) const override; // func_ov54_02198d48
|
||||
|
||||
@@ -29,7 +29,7 @@ public:
|
||||
/* 1c */ virtual void vfunc_1c(); // func_ov00_020c07f8
|
||||
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov00_020c0804
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020c086c
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov00_020c086c
|
||||
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const; // func_ov00_020c0a88
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
@@ -52,7 +52,7 @@ public:
|
||||
/* 28 */ virtual bool UpdateInUse(unk32 param1) override;
|
||||
/* 2c */ virtual u32 vfunc_2c() override; // func_ov00_020c0674
|
||||
/* 30 */ virtual void vfunc_30() override; // func_ov00_020bf538
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1, unk32 param2, unk32 param3) override; // func_ov00_020bff94
|
||||
/* 38 */ virtual void vfunc_38(unk32 param1) override; // func_ov00_020bff94
|
||||
/* 3c */ virtual bool vfunc_3c(void *param1, unk32 param2, unk32 param3) const override; // func_ov00_020c01dc
|
||||
/* 50 */
|
||||
};
|
||||
|
||||
+55
-6
@@ -160,17 +160,13 @@ FairyId ItemManager::GetEquippedFairy() const {
|
||||
Navi* ItemManager::GetFairy(FairyId id) const {
|
||||
return this->mFairies[id];
|
||||
}
|
||||
#pragma interworking off
|
||||
|
||||
extern UnkStruct_027e0d38 *data_027e0d38;
|
||||
extern unk32 gPlayerAnimHandler;
|
||||
extern "C" void LoadEquipItemModel(unk32 param1, ItemFlag param2);
|
||||
extern "C" void _ZNK11ItemManager15GetEquippedItemEv();
|
||||
extern "C" void _ZN14OverlayManager13LoadEquipItemEj();
|
||||
NONMATCH void ItemManager::TickEquipItem(void) {
|
||||
#ifndef NONMATCHING
|
||||
#include "../asm/ov00/ItemManager/ItemManager_TickEquipItem.inc"
|
||||
#else
|
||||
void ItemManager::TickEquipItem(void) {
|
||||
ItemFlag equip = this->GetEquippedItem();
|
||||
if (this->mEquipLoadTimer != 0) {
|
||||
this->mEquipLoadTimer -= 1;
|
||||
@@ -186,5 +182,58 @@ NONMATCH void ItemManager::TickEquipItem(void) {
|
||||
if (equip != ItemFlag_None && this->mEquipLoadTimer == 0) {
|
||||
(*this->mEquipItems)[equip]->vfunc_30();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void ItemManager::func_ov00_020ad528() {}
|
||||
|
||||
ItemModel* ItemManager::GetItemModel(ItemModelId id) {
|
||||
return this->mItemModels[id];
|
||||
}
|
||||
#pragma interworking off
|
||||
|
||||
extern unk32 data_027e0fc4;
|
||||
extern "C" void* func_ov00_020bb3a8(unk32 param1, u32 index);
|
||||
extern "C" void func_ov00_020c0bdc(void *param1, unk32 param2);
|
||||
void ItemManager::func_ov00_020ad538(unk32 param1) const {
|
||||
void* unk1 = func_ov00_020bb3a8(data_027e0fc4, 6);
|
||||
func_ov00_020c0bdc(unk1, param1);
|
||||
}
|
||||
|
||||
void ItemManager::func_ov00_020ad560(unk32 param1) const {
|
||||
void* unk1 = func_ov00_020bb3a8(data_027e0fc4, 7);
|
||||
func_ov00_020c0bdc(unk1, param1);
|
||||
}
|
||||
|
||||
#pragma interworking on
|
||||
ItemModel* ItemManager::GetDungeonItemModel(u32 index) {
|
||||
return this->mDungeonItemModels[index];
|
||||
}
|
||||
#pragma interworking off
|
||||
|
||||
void ItemManager::func_ov00_020ad594(unk32 param1) const {
|
||||
void* unk1 = func_ov00_020bb3a8(data_027e0fc4, 11);
|
||||
func_ov00_020c0bdc(unk1, param1);
|
||||
}
|
||||
|
||||
void ItemManager::Sword_vfunc_38(unk32 param1) {
|
||||
(*this->mEquipItems)[ItemFlag_OshusSword]->vfunc_38(param1);
|
||||
}
|
||||
|
||||
void ItemManager::Shield_vfunc_38(unk32 param1) {
|
||||
(*this->mEquipItems)[ItemFlag_WoodenShield]->vfunc_38(param1);
|
||||
}
|
||||
|
||||
extern unk32 data_027e0618;
|
||||
void ItemManager::EquipItem_vfunc_38(unk32 param1) {
|
||||
if (data_027e0618 != 6) {
|
||||
this->Sword_vfunc_38(param1);
|
||||
this->Shield_vfunc_38(param1);
|
||||
}
|
||||
if (data_027e0d38->mUnk_14 == 1) return;
|
||||
|
||||
ItemFlag equip = this->GetEquippedItem();
|
||||
if (equip == ItemFlag_None) return;
|
||||
if (this->mEquipLoadTimer > 0) return;
|
||||
|
||||
(*this->mEquipItems)[equip]->vfunc_38(param1);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user