mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
Decomp UpdateScriptVarWithVar
This commit is contained in:
parent
86c6e15f7c
commit
40adda7593
|
|
@ -1,5 +1,4 @@
|
|||
#pragma once
|
||||
.public CalcScriptVariables
|
||||
.public CompareScriptVariables
|
||||
.public DEBUG_SPECIAL_EPISODE_NUMBER
|
||||
.public Debug_Print
|
||||
|
|
@ -627,8 +627,8 @@
|
|||
.public sub_0204AEE0
|
||||
.public sub_0204B3D0
|
||||
.public CalcScriptVariablesVeneer
|
||||
.public UpdateScriptVariable
|
||||
.public sub_0204BF10
|
||||
.public UpdateScriptVarWithParam
|
||||
.public UpdateScriptVarWithVar
|
||||
.public sub_0204BF5C
|
||||
.public sub_0204BF68
|
||||
.public sub_0204BF88
|
||||
|
|
|
|||
|
|
@ -1,31 +1,8 @@
|
|||
.include "asm/macros.inc"
|
||||
.include "main_0204BF10.inc"
|
||||
.include "main_0204BF5C.inc"
|
||||
|
||||
.text
|
||||
|
||||
arm_func_start sub_0204BF10
|
||||
sub_0204BF10: ; 0x0204BF10
|
||||
stmdb sp!, {r4, r5, r6, r7, r8, lr}
|
||||
mov r8, r0
|
||||
mov r6, r2
|
||||
mov r7, r1
|
||||
mov r5, r3
|
||||
bl LoadScriptVariableValue
|
||||
mov r4, r0
|
||||
mov r0, r8
|
||||
mov r1, r6
|
||||
bl LoadScriptVariableValue
|
||||
mov r1, r0
|
||||
mov r0, r4
|
||||
mov r2, r5
|
||||
bl CalcScriptVariables
|
||||
mov r2, r0
|
||||
mov r0, r8
|
||||
mov r1, r7
|
||||
bl SaveScriptVariableValue
|
||||
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
||||
arm_func_end sub_0204BF10
|
||||
|
||||
arm_func_start sub_0204BF5C
|
||||
sub_0204BF5C: ; 0x0204BF5C
|
||||
ldr ip, _0204BF64 ; =CompareScriptVariables
|
||||
|
|
@ -3196,7 +3196,7 @@ _022DEDC4: ; 0x022DEDC4
|
|||
mov r3, r5
|
||||
mov r2, r0
|
||||
add r0, r4, #0x6c
|
||||
bl UpdateScriptVariable
|
||||
bl UpdateScriptVarWithParam
|
||||
b _022E2474
|
||||
_022DEE00: ; 0x022DEE00
|
||||
ldrh r0, [r6]
|
||||
|
|
@ -3214,7 +3214,7 @@ _022DEE00: ; 0x022DEE00
|
|||
add r0, r4, #0x6c
|
||||
mov r2, r2, lsl #0x10
|
||||
mov r2, r2, asr #0x10
|
||||
bl sub_0204BF10
|
||||
bl UpdateScriptVarWithVar
|
||||
b _022E2474
|
||||
_022DEE44: ; 0x022DEE44
|
||||
ldrh r0, [r6]
|
||||
|
|
@ -14712,7 +14712,7 @@ _022E8AE4:
|
|||
mov r1, #0x2a
|
||||
mov r2, #1
|
||||
mov r3, #2
|
||||
bl UpdateScriptVariable
|
||||
bl UpdateScriptVarWithParam
|
||||
bl sub_0204F034
|
||||
mov r4, r0
|
||||
bl sub_0204F050
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ s32 ScriptVariablesEqual(union script_var_value sv_val_ptr_local[], enum script_
|
|||
s32 CalcScriptVariables(s32 param_1, s32 param_2, enum script_calc_operation operation);
|
||||
bool8 CompareScriptVariables(s32 param_1, s32 param_2, enum compare_operation operation);
|
||||
s32 CalcScriptVariablesVeneer(s32 param_1, s32 param_2, enum script_calc_operation operation);
|
||||
void UpdateScriptVariable(union script_var_value sv_local[], const enum script_var_id script_var_id, s32 param, enum script_calc_operation operation);
|
||||
void UpdateScriptVarWithParam(union script_var_value sv_local[], const enum script_var_id script_var_id, s32 param, enum script_calc_operation operation);
|
||||
void UpdateScriptVarWithVar(union script_var_value sv_local[], enum script_var_id sv_id_1, enum script_var_id sv_id_2, enum script_calc_operation operation);
|
||||
|
||||
#endif //PMDSKY_SCRIPTING_H
|
||||
|
|
|
|||
2
main.lsf
2
main.lsf
|
|
@ -82,7 +82,7 @@ Static main
|
|||
Object asm/main_0204B018.o
|
||||
Object src/scripting.o
|
||||
Object asm/main_rodata_0209CECC.o
|
||||
Object asm/main_0204BF10.o
|
||||
Object asm/main_0204BF5C.o
|
||||
Object src/main_0204C938.o
|
||||
Object asm/main_0204C94C.o
|
||||
Object src/dungeon_recruitment_3.o
|
||||
|
|
|
|||
|
|
@ -447,14 +447,17 @@ s32 CalcScriptVariablesVeneer(s32 param_1, s32 param_2, enum script_calc_operati
|
|||
return CalcScriptVariables(param_1, param_2, operation);
|
||||
}
|
||||
|
||||
void UpdateScriptVariable(union script_var_value sv_local[], const enum script_var_id script_var_id, s32 param, enum script_calc_operation operation)
|
||||
void UpdateScriptVarWithParam(union script_var_value sv_local[], const enum script_var_id script_var_id, s32 param, enum script_calc_operation operation)
|
||||
{
|
||||
SaveScriptVariableValue(sv_local,
|
||||
script_var_id,
|
||||
CalcScriptVariables(
|
||||
LoadScriptVariableValue(
|
||||
sv_local,
|
||||
script_var_id),
|
||||
param,
|
||||
operation));
|
||||
}
|
||||
s32 value = LoadScriptVariableValue(sv_local, script_var_id);
|
||||
s32 result = CalcScriptVariables(value, param, operation);
|
||||
SaveScriptVariableValue(sv_local, script_var_id, result);
|
||||
}
|
||||
|
||||
void UpdateScriptVarWithVar(union script_var_value sv_local[], enum script_var_id sv_id_1, enum script_var_id sv_id_2, enum script_calc_operation operation)
|
||||
{
|
||||
s32 value_1 = LoadScriptVariableValue(sv_local, sv_id_1);
|
||||
s32 value_2 = LoadScriptVariableValue(sv_local, sv_id_2);
|
||||
s32 result = CalcScriptVariables(value_1, value_2, operation);
|
||||
SaveScriptVariableValue(sv_local, sv_id_1, result);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user