From 1b2c71b3eff9e39cbbee44c676c66d0f6fce311a Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Mon, 28 Oct 2024 20:51:21 -0400 Subject: [PATCH] Decomped DoMoveDefendOrder Decomped by anonymous decomp.me user --- ...9_0232E274.inc => overlay_29_0232E2B8.inc} | 12 ++++------ ...ay_29_0232E274.s => overlay_29_0232E2B8.s} | 24 +------------------ include/overlay_29_0232E250.h | 1 + main.lsf | 2 +- src/overlay_29_0232E250.c | 13 ++++++++++ 5 files changed, 21 insertions(+), 31 deletions(-) rename asm/include/{overlay_29_0232E274.inc => overlay_29_0232E2B8.inc} (95%) rename asm/{overlay_29_0232E274.s => overlay_29_0232E2B8.s} (94%) diff --git a/asm/include/overlay_29_0232E274.inc b/asm/include/overlay_29_0232E2B8.inc similarity index 95% rename from asm/include/overlay_29_0232E274.inc rename to asm/include/overlay_29_0232E2B8.inc index 26e030e5..04a0fb23 100644 --- a/asm/include/overlay_29_0232E274.inc +++ b/asm/include/overlay_29_0232E2B8.inc @@ -1,7 +1,5 @@ #pragma once .public AbilityIsActiveVeneer -.public ATK_STAT_IDX -.public BoostDefensiveStat .public BoostOffensiveStat .public BoostSpeedOneStage .public CalcRecoilDamageFixed @@ -13,20 +11,16 @@ .public EndFrozenStatus .public EndNegativeStatusConditionWrapper .public EndSleepClassStatus -.public EntityIsValid__0232E840 .public EntityIsValidMoveEffects__0232E250 +.public EntityIsValid__0232E840 .public FIRE_FANG_CRINGE_CHANCE .public FLARE_BLITZ_BURN_CHANCE .public HEALING_WISH_HP_RESTORATION .public LogMessageByIdWithPopupCheckUserTarget .public LowerOffensiveStat -.public ov29_02318D98 -.public ov29_0234AFFC -.public ov29_02353718 .public ResetHitChanceStat .public RestoreAllMovePP .public SPATK_STAT_IDX -.public sub_02054EC8 .public SubstitutePlaceholderStringTags .public TryIncreaseHp .public TryInflictBurnStatus @@ -34,3 +28,7 @@ .public TryInflictMiracleEyeStatus .public TryInflictTerrifiedStatus .public TryRestoreHp +.public ov29_02318D98 +.public ov29_0234AFFC +.public ov29_02353718 +.public sub_02054EC8 diff --git a/asm/overlay_29_0232E274.s b/asm/overlay_29_0232E2B8.s similarity index 94% rename from asm/overlay_29_0232E274.s rename to asm/overlay_29_0232E2B8.s index 867dc9b0..c7e9f919 100644 --- a/asm/overlay_29_0232E274.s +++ b/asm/overlay_29_0232E2B8.s @@ -1,30 +1,8 @@ .include "asm/macros.inc" - .include "overlay_29_0232E274.inc" + .include "overlay_29_0232E2B8.inc" .text - arm_func_start DoMoveDefendOrder -DoMoveDefendOrder: ; 0x0232E274 - stmdb sp!, {r3, r4, r5, lr} - ldr r2, _0232E2B0 ; =ATK_STAT_IDX - mov r3, #1 - ldr r2, [r2] - mov r5, r0 - mov r4, r1 - bl BoostDefensiveStat - ldr r1, _0232E2B4 ; =SPATK_STAT_IDX - mov r0, r5 - ldr r2, [r1] - mov r1, r4 - mov r3, #1 - bl BoostDefensiveStat - mov r0, #1 - ldmia sp!, {r3, r4, r5, pc} - .align 2, 0 -_0232E2B0: .word ATK_STAT_IDX -_0232E2B4: .word SPATK_STAT_IDX - arm_func_end DoMoveDefendOrder - arm_func_start DoMoveFireFang DoMoveFireFang: ; 0x0232E2B8 stmdb sp!, {r3, r4, r5, r6, r7, lr} diff --git a/include/overlay_29_0232E250.h b/include/overlay_29_0232E250.h index 9a628fa8..b0fd0398 100644 --- a/include/overlay_29_0232E250.h +++ b/include/overlay_29_0232E250.h @@ -7,5 +7,6 @@ // entity: entity pointer // return: bool u8 EntityIsValidMoveEffects__0232E250(struct entity *entity); +BOOL DoMoveDefendOrder(s32 param_1, s32 param_2, s32 param_3, s32 param_4); #endif //PMDSKY_OVERLAY_29_0232E250_H diff --git a/main.lsf b/main.lsf index 0e2d10ef..79fcbad2 100644 --- a/main.lsf +++ b/main.lsf @@ -302,7 +302,7 @@ Overlay OVY_29 Object src/overlay_29_0232C500.o Object asm/overlay_29_0232C524.o Object src/overlay_29_0232E250.o - Object asm/overlay_29_0232E274.o + Object asm/overlay_29_0232E2B8.o Object src/overlay_29_0232E840.o Object asm/overlay_29_0232E864.o Object src/overlay_29_02333FAC.o diff --git a/src/overlay_29_0232E250.c b/src/overlay_29_0232E250.c index 37c6daa5..d6c8eb99 100644 --- a/src/overlay_29_0232E250.c +++ b/src/overlay_29_0232E250.c @@ -1,5 +1,10 @@ #include "overlay_29_0232E250.h" +extern u32 *ATK_STAT_IDX; +extern u32 *SPATK_STAT_IDX; + +extern void BoostDefensiveStat(s32 param_1, s32 param_2, s32 *param_3, BOOL param_4); + u8 EntityIsValidMoveEffects__0232E250(struct entity *entity) { if (entity == NULL) @@ -8,3 +13,11 @@ u8 EntityIsValidMoveEffects__0232E250(struct entity *entity) } return entity->type != ENTITY_NOTHING; } + +BOOL DoMoveDefendOrder(s32 param_1, s32 param_2, s32 param_3, s32 param_4) +{ + BoostDefensiveStat(param_1, param_2, ATK_STAT_IDX, TRUE); + BoostDefensiveStat(param_1, param_2, SPATK_STAT_IDX, TRUE); + + return TRUE; +}