Decomp ItemManager::SetUnk_09e

This commit is contained in:
Aetias
2024-02-18 12:18:51 +01:00
parent b990ade652
commit b252bd2035
4 changed files with 14 additions and 37 deletions
+2 -2
View File
@@ -3314,8 +3314,8 @@
.extern func_01ffa0f4
.extern func_0202b418
.extern data_027e10a4
.extern _ZN11ItemManager10SetUnk_09eEjj
.extern _ZN11ItemManager10SetUnk_09eEjj
.extern _ZN11ItemManager10SetUnk_09eEjt
.extern _ZN11ItemManager10SetUnk_09eEjt
.extern func_ov00_020c5d74
.extern func_ov00_0207c444
.extern func_02002c14
-33
View File
@@ -3,39 +3,6 @@
.text
.global _ZN11ItemManager10SetUnk_09eEjj
thumb_func_start _ZN11ItemManager10SetUnk_09eEjj
_ZN11ItemManager10SetUnk_09eEjj: ; 0x020ad96c
push {r3, r4}
add r4, r0, #0
add r4, #0x98
ldrb r3, [r4, r1]
add r3, r3, #1
lsl r3, r3, #0x18
lsr r3, r3, #0x18
cmp r3, #0x63
bls _020ad980
mov r3, #0x63
_020ad980:
strb r3, [r4, r1]
add r0, #0x9e
lsl r3, r1, #1
ldrh r1, [r0, r3]
cmp r2, r1
bls _020ad996
ldr r1, _020ad99c ; =0x0000270f
cmp r2, r1
bls _020ad994
add r2, r1, #0
_020ad994:
strh r2, [r0, r3]
_020ad996:
pop {r3, r4}
bx lr
nop
thumb_func_end _ZN11ItemManager10SetUnk_09eEjj
_020ad99c: .word 0x0000270f
.global _ZNK11ItemManager10GetMaxAmmoEj
thumb_func_start _ZNK11ItemManager10GetMaxAmmoEj
_ZNK11ItemManager10GetMaxAmmoEj: ; 0x020ad9a0
+2 -2
View File
@@ -48309,7 +48309,7 @@ _02148540:
ldr r0, [r0]
ldr r1, [r4, #0x41c]
mov r2, r2, lsr #0x10
blx _ZN11ItemManager10SetUnk_09eEjj
blx _ZN11ItemManager10SetUnk_09eEjt
ldrb r0, [r4, #0x43d]
cmp r0, #0
beq _021485cc
@@ -48337,7 +48337,7 @@ _02148540:
mov r2, r1, lsr #0x10
mov r1, #5
str r3, [ip, #4]
blx _ZN11ItemManager10SetUnk_09eEjj
blx _ZN11ItemManager10SetUnk_09eEjt
_021485cc:
mov r1, #0
str r1, [r4, #0x3fc]
+10
View File
@@ -312,3 +312,13 @@ THUMB s32 ItemManager::GetUnk_09e_Divided(u32 index) const {
if (result < 1) result = 1;
return result;
}
THUMB void ItemManager::SetUnk_09e(u32 index, u16 value) {
u8 count = this->mUnk_098[index] + 1;
if (count > 99) count = 99;
this->mUnk_098[index] = count;
if (value > this->mUnk_09e[index]) {
if (value > 9999) value = 9999;
this->mUnk_09e[index] = value;
}
}