diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 6780e8e228..7e1bbd33d9 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -3823,8 +3823,37 @@ BattleScript_EffectBatonPass:: goto BattleScript_MoveEnd BattleScript_EffectRapidSpin:: + attackcanceler + accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE + attackstring + ppreduce + critcalc + damagecalc + adjustdamage + attackanimation + waitanimation + effectivenesssound + hitanimation BS_TARGET + waitstate + healthbarupdate BS_TARGET + datahpupdate BS_TARGET + critmessage + waitmessage 0x40 + resultmessage + waitmessage 0x40 setmoveeffect MOVE_EFFECT_RAPIDSPIN | MOVE_EFFECT_AFFECTS_USER | MOVE_EFFECT_CERTAIN - goto BattleScript_EffectHit + seteffectwithchance + setstatchanger STAT_SPEED, 1, FALSE + statbuffchange MOVE_EFFECT_AFFECTS_USER | STAT_BUFF_ALLOW_PTR, BattleScript_EffectRapidSpinEnd + jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x2, BattleScript_EffectRapidSpinEnd + setgraphicalstatchangevalues + playanimation BS_ATTACKER, B_ANIM_STATS_CHANGE, sB_ANIM_ARG1 + printfromtable gStatUpStringIds + waitmessage 0x40 +BattleScript_EffectRapidSpinEnd:: + tryfaintmon BS_TARGET, FALSE, NULL + moveendall + end BattleScript_EffectSonicboom:: attackcanceler diff --git a/src/data/battle_moves.h b/src/data/battle_moves.h index 2582272bb3..a76feb849c 100644 --- a/src/data/battle_moves.h +++ b/src/data/battle_moves.h @@ -202,7 +202,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .power = 0, .type = TYPE_NORMAL, .accuracy = 0, - .pp = 30, + .pp = 20, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, .priority = 0, @@ -262,7 +262,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = -6, - .flags = FLAG_MIRROR_MOVE_AFFECTED, + .flags = FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, .split = SPLIT_STATUS, }, @@ -495,7 +495,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .effect = EFFECT_TRAP, .power = 15, .type = TYPE_NORMAL, - .accuracy = 85, + .accuracy = 90, .pp = 20, .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, @@ -1409,7 +1409,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 20, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, - .priority = 0, + .priority = -6, .flags = 0, .split = SPLIT_STATUS, }, @@ -1725,10 +1725,10 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = [MOVE_SMOG] = { .effect = EFFECT_POISON_HIT, - .power = 20, + .power = 30, .type = TYPE_POISON, .accuracy = 70, - .pp = 30, + .pp = 20, .secondaryEffectChance = 40, .target = MOVE_TARGET_SELECTED, .priority = 0, @@ -1954,7 +1954,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .accuracy = 90, .pp = 40, .secondaryEffectChance = 0, - .target = MOVE_TARGET_SELECTED, + .target = MOVE_TARGET_BOTH, .priority = 0, .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, .split = SPLIT_STATUS, @@ -2321,7 +2321,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_KINGSROCK_AFFECTED, .split = SPLIT_PHYSICAL, }, @@ -2501,7 +2501,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .accuracy = 100, .pp = 40, .secondaryEffectChance = 0, - .target = MOVE_TARGET_SELECTED, + .target = MOVE_TARGET_BOTH, .priority = 0, .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_POWDER, .split = SPLIT_STATUS, @@ -2558,7 +2558,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, - .priority = 3, + .priority = 4, .flags = FLAG_PROTECTION_MOVE, .split = SPLIT_STATUS, }, @@ -2601,7 +2601,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, .split = SPLIT_PHYSICAL, }, @@ -2768,7 +2768,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 5, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, - .priority = 3, + .priority = 4, .flags = FLAG_PROTECTION_MOVE, .split = SPLIT_STATUS, }, @@ -2852,7 +2852,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, - .priority = 3, + .priority = 4, .flags = FLAG_PROTECTION_MOVE, .split = SPLIT_STATUS, }, @@ -3210,7 +3210,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = [MOVE_RAPID_SPIN] = { .effect = EFFECT_RAPID_SPIN, - .power = 20, + .power = 50, .type = TYPE_NORMAL, .accuracy = 100, .pp = 40, @@ -3413,7 +3413,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_DEPENDS, .priority = -5, - .flags = FLAG_MIRROR_MOVE_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED, .split = SPLIT_SPECIAL, }, @@ -3427,7 +3427,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_SNATCH_AFFECTED, + .flags = 0, .split = SPLIT_STATUS, }, @@ -3455,7 +3455,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 10, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_SHEER_FORCE_BOOST, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_SPECIAL, }, @@ -3538,7 +3538,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 10, .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, - .priority = 1, + .priority = 3, .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_SHEER_FORCE_BOOST, .split = SPLIT_PHYSICAL, }, @@ -3735,7 +3735,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .pp = 20, .secondaryEffectChance = 0, .target = MOVE_TARGET_USER, - .priority = 3, + .priority = 2, .flags = 0, .split = SPLIT_STATUS, }, @@ -3778,7 +3778,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MAGICCOAT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, .split = SPLIT_STATUS, }, @@ -4184,7 +4184,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_DANCE, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_DANCE, .split = SPLIT_STATUS, }, @@ -4279,7 +4279,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .type = TYPE_POISON, .accuracy = 100, .pp = 15, - .secondaryEffectChance = 30, + .secondaryEffectChance = 50, .target = MOVE_TARGET_SELECTED, .priority = 0, .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_SHEER_FORCE_BOOST | FLAG_STRONG_JAW_BOOST, @@ -4422,7 +4422,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_KINGSROCK_AFFECTED, .split = SPLIT_SPECIAL, }, @@ -4815,7 +4815,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 100, .target = MOVE_TARGET_SELECTED, .priority = 0, - .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, .split = SPLIT_PHYSICAL, }, @@ -5167,7 +5167,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 0, .target = MOVE_TARGET_DEPENDS, .priority = 0, - .flags = 0, + .flags = FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, .split = SPLIT_PHYSICAL, }, @@ -6806,7 +6806,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .power = 120, .type = TYPE_PSYCHIC, .accuracy = 100, - .pp = 15, + .pp = 10, .secondaryEffectChance = 0, .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, @@ -9433,7 +9433,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = [MOVE_MULTI_ATTACK] = { .effect = EFFECT_PLACEHOLDER, - .power = 90, + .power = 120, .type = TYPE_NORMAL, .accuracy = 100, .pp = 10, @@ -9496,7 +9496,7 @@ const struct BattleMove gBattleMoves[MOVES_COUNT] = .secondaryEffectChance = 30, .target = MOVE_TARGET_FOES_AND_ALLY, .priority = 0, - .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED, + .flags = FLAG_MAKES_CONTACT | FLAG_PROTECT_AFFECTED | FLAG_MIRROR_MOVE_AFFECTED | FLAG_DMG_MINIMIZE, .split = SPLIT_PHYSICAL, },