diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 9c1cb1587a..52a32f3ffd 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -426,6 +426,57 @@ gBattleScriptsForMoveEffects:: .4byte BattleScript_EffectTripleArrows @ EFFECT_TRIPLE_ARROWS .4byte BattleScript_EffectInfernalParade @ EFFECT_INFERNAL_PARADE .4byte BattleScript_EffectTakeHeart @ EFFECT_TAKE_HEART + .4byte BattleScript_EffectAxeKick @ EFFECT_AXE_KICK + +BattleScript_EffectAxeKick:: + attackcanceler + accuracycheck BattleScript_AxeKickMissedDoDamage, ACC_CURR_MOVE + typecalc + jumpifhalfword CMP_COMMON_BITS, gMoveResultFlags, MOVE_RESULT_DOESNT_AFFECT_FOE, BattleScript_AxeKickMissedDoDamage + goto BattleScript_AxeKickHitFromAtkString +BattleScript_AxeKickMissedDoDamage:: + jumpifability BS_ATTACKER, ABILITY_MAGIC_GUARD, BattleScript_PrintMoveMissed + attackstring + ppreduce + pause B_WAIT_TIME_LONG + resultmessage + waitmessage B_WAIT_TIME_LONG + printstring STRINGID_PKMNCRASHED + waitmessage B_WAIT_TIME_LONG + damagecalc + typecalc + adjustdamage + manipulatedamage DMG_RECOIL_FROM_MISS + bichalfword gMoveResultFlags, MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE + orword gHitMarker, HITMARKER_IGNORE_SUBSTITUTE | HITMARKER_IGNORE_DISGUISE + healthbarupdate BS_ATTACKER + datahpupdate BS_ATTACKER + tryfaintmon BS_ATTACKER + orhalfword gMoveResultFlags, MOVE_RESULT_MISSED | MOVE_RESULT_DOESNT_AFFECT_FOE + goto BattleScript_MoveEnd + +BattleScript_AxeKickHitFromAtkString: + attackstring + ppreduce + critcalc + damagecalc + adjustdamage + attackanimation + waitanimation + effectivenesssound + hitanimation BS_TARGET + waitstate + healthbarupdate BS_TARGET + datahpupdate BS_TARGET + critmessage + waitmessage B_WAIT_TIME_LONG + resultmessage + waitmessage B_WAIT_TIME_LONG + setmoveeffect MOVE_EFFECT_CONFUSION + seteffectwithchance + tryfaintmon BS_TARGET + moveendall + end BattleScript_EffectTakeHeart:: @ TO DO: Use modifybattlerstatstage here once PR #2470 is merged. diff --git a/include/constants/battle_move_effects.h b/include/constants/battle_move_effects.h index 4188c341bd..c0aa6c6976 100644 --- a/include/constants/battle_move_effects.h +++ b/include/constants/battle_move_effects.h @@ -407,7 +407,8 @@ #define EFFECT_TRIPLE_ARROWS 401 #define EFFECT_INFERNAL_PARADE 402 #define EFFECT_TAKE_HEART 403 +#define EFFECT_AXE_KICK 404 -#define NUM_BATTLE_MOVE_EFFECTS 404 +#define NUM_BATTLE_MOVE_EFFECTS 405 #endif // GUARD_CONSTANTS_BATTLE_MOVE_EFFECTS_H diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index 66b9c0dc5d..9eeacac4b2 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -12895,12 +12895,12 @@ const struct BattleMove gBattleMoves[MOVES_COUNT_Z] = [MOVE_AXE_KICK] = { - .effect = EFFECT_PLACEHOLDER, // EFFECT_RECOIL_IF_MISS + 30% chance to confuse + .effect = EFFECT_AXE_KICK, .power = 120, .type = TYPE_FIGHTING, .accuracy = 90, .pp = 10, - .secondaryEffectChance = 0, + .secondaryEffectChance = 30, .target = MOVE_TARGET_SELECTED, .priority = 0, .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGS_ROCK_AFFECTED | FLAG_SHEER_FORCE_BOOST,