diff --git a/asm/macros/battle_anim_script.inc b/asm/macros/battle_anim_script.inc index 17d0ca3e7f..720dbb92aa 100644 --- a/asm/macros/battle_anim_script.inc +++ b/asm/macros/battle_anim_script.inc @@ -460,6 +460,10 @@ createsprite gPoisonPowderParticleSpriteTemplate, \anim_battler, \subpriority_offset, \x, \y, \duration, 256 * \y_velocity, \wave_amplitude, \wave_speed .endm + .macro create_magic_powder_particle_sprite anim_battler:req, subpriority_offset:req, x:req, y:req, duration:req, y_velocity:req, wave_amplitude:req, wave_speed:req + createsprite gMagicPowderBluePowderTemplate, \anim_battler, \subpriority_offset, \x, \y, \duration, 256 * \y_velocity, \wave_amplitude, \wave_speed + .endm + .macro create_power_absorption_orb_sprite anim_battler:req, subpriority_offset:req, x:req, y:req, duration:req createsprite gPowerAbsorptionOrbSpriteTemplate, \anim_battler, \subpriority_offset, \x, \y, \duration .endm diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index e482825d8c..4f70efcde9 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -297,12 +297,7 @@ gBattleAnimMove_NaturalGift:: playsewithpan SE_M_TELEPORT, -64 delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(0, 0, 19), 14, 0, 3 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=43/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=85/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=128/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=170/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=213/256 + call CreateDragonDanceOrbs delay 30 playsewithpan SE_M_TELEPORT, -64 delay 30 @@ -1864,21 +1859,7 @@ gBattleAnimMove_EarthPower:: waitbgfadein loopsewithpan 145, SOUND_PAN_TARGET 11, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=5, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-10, y=-15 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=0, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=15, y=5 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-25, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=30, y=30 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=-27, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=0, y=8 + call CreateDragonRageFirePlumes waitforvisualfinish createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0, 0, 4 waitforvisualfinish @@ -1893,29 +1874,7 @@ gBattleAnimMove_Switcheroo:: waitbgfadein loadspritegfx ANIM_TAG_ITEM_BAG loadspritegfx ANIM_TAG_SPEED_DUST - create_trick_bag_sprite ANIM_ATTACKER, 2, initial_y=-39, wave_offset=80 - create_trick_bag_sprite ANIM_ATTACKER, 2, initial_y=-39, wave_offset=208 - delay 16 - playsewithpan SE_M_SKETCH, 0 - createvisualtask AnimTask_StretchTargetUp, 3 - createvisualtask AnimTask_StretchAttackerUp, 3 - delay 30 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 24 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 16 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 16 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 16 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 16 - playsewithpan SE_M_DOUBLE_TEAM, 0 - delay 16 - playsewithpan SE_M_ATTRACT, 0 - createvisualtask AnimTask_ShakeMon, 3, ANIM_ATTACKER, 5, 0, 7, 2 - createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 5, 0, 7, 2 - waitforvisualfinish + call SwapItems restorebg waitbgfadein end @@ -2037,7 +1996,7 @@ gBattleAnimMove_Avalanche:: loadspritegfx ANIM_TAG_ROCKS loadspritegfx ANIM_TAG_ICE_CHUNK monbg ANIM_DEF_PARTNER - shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=1 + shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=SHAKE_BG_Y createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 @@ -2120,12 +2079,10 @@ gBattleAnimMove_ShadowClaw:: createsprite gHorizontalLungeSpriteTemplate ANIM_ATTACKER, 2, 6, 4 delay 4 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 18, 1 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=10, animation=0 + call CreateClawSlashes1 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 12 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=10, animation=1 + call CreateClawSlashes2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish restorebg @@ -2151,9 +2108,7 @@ gBattleAnimMove_ThunderFang:: delay 1 createsprite gLightningSpriteTemplate, ANIM_ATTACKER, 2, 0, 16 delay 1 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 + call CreateBite delay 1 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET invert_screen_color scenery=0x1 | 0x2 | 0x4 @@ -2188,9 +2143,7 @@ gBattleAnimMove_IceFang:: createsprite gIceCrystalSpiralInwardLarge, ANIM_ATTACKER, 2, 96 createsprite gIceCrystalSpiralInwardLarge, ANIM_ATTACKER, 2, 160 createsprite gIceCrystalSpiralInwardLarge, ANIM_ATTACKER, 2, 224 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 + call CreateBite waitforvisualfinish create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 7, 1 @@ -2217,9 +2170,7 @@ gBattleAnimMove_FireFang:: createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 64 createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 128 createsprite gFireSpiralInwardSpriteTemplate, ANIM_TARGET, 1, 196 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET + call CreateBite delay 10 waitforvisualfinish create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 @@ -2246,7 +2197,7 @@ gBattleAnimMove_ShadowSneak:: waitforvisualfinish playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 3 - attacker_fade_to_invisible priority=0x2, step_delay=0x1 + attacker_fade_to_invisible step_delay=1 waitforvisualfinish clearmonbg ANIM_ATTACKER invisible ANIM_ATTACKER @@ -3736,12 +3687,7 @@ gBattleAnimMove_LunarDance:: playsewithpan 203, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(0, 0, 19), 14, 0, 3 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=43/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=85/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=128/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=170/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=213/256 + call CreateDragonDanceOrbs delay 30 playsewithpan 203, SOUND_PAN_ATTACKER delay 30 @@ -3882,22 +3828,19 @@ gBattleAnimMove_SeedFlare:: delay 30 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 40, 1 createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 10, 0x900, 0x60, 1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=20, target_both=1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=-20, target_both=1 + call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x5a, 0x800, 0x60, 1 delay 8 createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x32, 0xa00, 0x60, 1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=20, target_both=1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=-20, target_both=1 + call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 20, 0x900, 0x60, 1 delay 8 createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x46, 0x7c0, 0x60, 1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=20, target_both=1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=0x16, wave_amplitude=-20, target_both=1 + call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 8 @@ -4408,7 +4351,7 @@ FlameBurstSpread: gBattleAnimMove_SludgeWave:: - panse SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 create_surf_wave palette=ANIM_SURF_PAL_SLUDGE_WAVE waitforvisualfinish end @@ -4421,12 +4364,7 @@ gBattleAnimMove_QuiverDance:: playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB_GREEN, 14, 0, 3 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=43/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=85/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=128/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=170/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=213/256 + call CreateDragonDanceOrbs delay 30 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 30 @@ -4602,20 +4540,11 @@ FlameChargeSwirl: gBattleAnimMove_Coil:: loadspritegfx ANIM_TAG_TENDRILS - loopsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET, 0x6, 0x4 - create_constrict_binding_sprite ANIM_TARGET, 4, initial_x=0x0, initial_y=0x10, affine_animation=0x0, squeezes=0x2 - delay 7 - create_constrict_binding_sprite ANIM_TARGET, 3, initial_x=0x0, initial_y=0x0, affine_animation=0x0, squeezes=0x2 - create_constrict_binding_sprite ANIM_TARGET, 2, initial_x=0x0, initial_y=0x8, affine_animation=0x1, squeezes=0x2 - delay 7 - create_constrict_binding_sprite ANIM_TARGET, 3, initial_x=0x0, initial_y=0xfff8, affine_animation=0x1, squeezes=0x2 - delay 8 - createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1 - delay 20 + call CreateConstrictBinding createvisualtask AnimTask_ShakeMon2, 131, ANIM_TARGET, 4, 0, 5, 1 - createvisualtask AnimTask_StretchTargetUp, 0x3 + createvisualtask AnimTask_StretchTargetUp, 3 playsewithpan SE_M_BIND, SOUND_PAN_TARGET - setarg 0x7 0xffff + setarg 7, -1 waitforvisualfinish end @@ -5945,50 +5874,7 @@ gBattleAnimMove_DrillRun:: fadetobg BG_FISSURE waitbgfadeout createvisualtask AnimTask_PositionFissureBgOnBattler, 5, ANIM_TARGET, 5, -1 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x0 - playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - waitforvisualfinish - delay 2 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x1 - createsprite gHornHitSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0xc - waitforvisualfinish - playse 0x14 - createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1 - createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x0, y=0x0, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x0, y=0x2, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0xfffc, y=0x3, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0xfff8, y=0xfffb, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x4, y=0xfff4, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x10, y=0x0, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x5, y=0x12, relative_to=0x1, animation=0x3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0xffef, y=0xc, relative_to=0x1, animation=0x2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0xffeb, y=0xfff1, relative_to=0x1, animation=0x2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x8, y=0xffe5, relative_to=0x1, animation=0x2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x20, y=0x0, relative_to=0x1, animation=0x2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x2 + call CreateSharpDrill waitforvisualfinish call UnsetPsychicBg end @@ -6037,7 +5923,7 @@ gBattleAnimMove_HornLeech:: createsprite gHornLeechHornTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x25 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x0, y=0x0, relative_to=0x1, animation=0x1 + create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET call GigaDrainAbsorbEffect waitforvisualfinish @@ -6322,7 +6208,7 @@ gBattleAnimMove_HeadCharge:: createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 2, 0, 4, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x2 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x0, y=0x0, relative_to=0x1, animation=0x1 + create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish restorebg @@ -7435,8 +7321,8 @@ gBattleAnimMove_VCreate:: createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, 0x1, 0x1 waitforvisualfinish createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 - create_claw_slash_sprite ANIM_TARGET, 2, x=0xfff6, y=0xfff6, animation=0x0 - create_claw_slash_sprite ANIM_TARGET, 2, x=0xa, y=0xfff6, animation=0x1 + create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 + create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 waitforvisualfinish createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 waitforvisualfinish @@ -7971,9 +7857,9 @@ gBattleAnimMove_PetalBlizzard:: playsewithpan SE_M_TWISTER, SOUND_PAN_TARGET create_twister_leaf_sprite ANIM_TARGET, 2, duration=120, distance_y=70, wave_period=5, wave_amplitude=70, speed_up_on_frame=30 delay 1 - create_twister_leaf_sprite ANIM_TARGET, 2, duration=0x73, distance_y=0x37, wave_period=0x6, wave_amplitude=0x3c, speed_up_on_frame=0x19 + create_twister_leaf_sprite ANIM_TARGET, 2, duration=115, distance_y=55, wave_period=6, wave_amplitude=60, speed_up_on_frame=25 delay 1 - create_twister_leaf_sprite ANIM_TARGET, 2, duration=0x73, distance_y=0x3c, wave_period=0x7, wave_amplitude=0x3c, speed_up_on_frame=0x1e + create_twister_leaf_sprite ANIM_TARGET, 2, duration=115, distance_y=60, wave_period=7, wave_amplitude=60, speed_up_on_frame=30 createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x73, 0x37, 0xA, 0x3c, 0x1e delay 3 createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x64, 0x32, 0x4, 0x32, 0x1A @@ -7983,12 +7869,12 @@ gBattleAnimMove_PetalBlizzard:: createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x73, 0x28, 0xA, 0x30, 0x1E delay 3 createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x78, 0x1E, 0x6, 0x2d, 0x19 - create_twister_leaf_sprite ANIM_TARGET, 2, duration=0x73, distance_y=0x23, wave_period=0xA, wave_amplitude=0x3c, speed_up_on_frame=0x1e + create_twister_leaf_sprite ANIM_TARGET, 2, duration=115, distance_y=35, wave_period=10, wave_amplitude=60, speed_up_on_frame=30 delay 3 createsprite gPetalBlizzardTwister2Template, ANIM_TARGET, 2, 0x69, 0x14, 0x8, 0x28, 0x0 delay 3 - create_twister_leaf_sprite ANIM_TARGET, 2, duration=0x14, distance_y=0xff, wave_period=0xf, wave_amplitude=0x20, speed_up_on_frame=0x0 - create_twister_leaf_sprite ANIM_TARGET, 2, duration=0x6e, distance_y=0xA, wave_period=0x8, wave_amplitude=0x20, speed_up_on_frame=0x14 + create_twister_leaf_sprite ANIM_TARGET, 2, duration=20, distance_y=255, wave_period=15, wave_amplitude=32, speed_up_on_frame=0 + create_twister_leaf_sprite ANIM_TARGET, 2, duration=110, distance_y=10, wave_period=8, wave_amplitude=32, speed_up_on_frame=20 waitforvisualfinish create_basic_hitsplat_sprite ANIM_TARGET, 3, x=-32, y=-16, relative_to=ANIM_TARGET, animation=3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET @@ -8188,23 +8074,7 @@ gBattleAnimMove_FlowerShield:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB(29, 19, 27) waitforvisualfinish playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER - create_petal_dance_big_flower_sprite ANIM_ATTACKER, 2, initial_x=0x0, initial_y=0xffe8, target_y=0x8, duration=0x8c - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0x10, initial_y=0xffe8, target_y=0x8, duration=0x64 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0xfff0, initial_y=0xffe8, target_y=0x8, duration=0x64 - delay 15 - create_petal_dance_big_flower_sprite ANIM_ATTACKER, 2, initial_x=0x0, initial_y=0xffe8, target_y=0x8, duration=0x8c - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0x20, initial_y=0xffe8, target_y=0x8, duration=0x64 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0xffe0, initial_y=0xffe8, target_y=0x8, duration=0x64 - delay 15 - create_petal_dance_big_flower_sprite ANIM_ATTACKER, 2, initial_x=0x0, initial_y=0xffe8, target_y=0x8, duration=0x8c - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0x18, initial_y=0xffe8, target_y=0x8, duration=0x64 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0xffe8, initial_y=0xffe8, target_y=0x8, duration=0x64 - delay 30 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0x10, initial_y=0xffe8, target_y=0x0, duration=0x64 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0xfff0, initial_y=0xffe8, target_y=0x0, duration=0x64 - delay 30 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0x14, initial_y=0xfff0, target_y=0xe, duration=0x50 - create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=0xffec, initial_y=0xfff2, target_y=0x10, duration=0x50 + call CreatePetals waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 0, RGB(29, 19, 27) waitforvisualfinish @@ -10495,9 +10365,8 @@ gBattleAnimMove_Leafage:: loadspritegfx ANIM_TAG_IMPACT @hit monbg ANIM_DEF_PARTNER playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=0x14, initial_y=0xfff6, target_x=0x14, target_y=0x0, duration=0x16, wave_amplitude=0x14, target_both=0x1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=0x14, initial_y=0xfff6, target_x=0x14, target_y=0x0, duration=0x16, wave_amplitude=0xffec, target_both=0x1 - create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=0x14, initial_y=0xfff6, target_x=0x14, target_y=0x0, duration=0x16, wave_amplitude=0x0, target_both=0x1 + call CreateRazorLeafCutters + create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=22, wave_amplitude=0, target_both=1 delay 20 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gLeafageImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x2 @@ -11894,17 +11763,11 @@ PsychicFangsShatteredWall: goto PsychicFangsEnd PsychicFangsCommon: - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=-32, animation=1, x_velocity=819/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=32, animation=5, x_velocity=-819/256, y_velocity=-819/256, half_duration=10 - delay 10 + call CreateCrunch1 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=-8, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 7, 5, 2 delay 16 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=-32, animation=7, x_velocity=-819/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=32, animation=3, x_velocity=819/256, y_velocity=-819/256, half_duration=10 - delay 10 + call CreateCrunch2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=8, y=0, relative_to=ANIM_TARGET, animation=1 return @@ -12412,15 +12275,15 @@ gBattleAnimMove_TearfulLook:: delay 53 loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 0xC, 0x2 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x0 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x1 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x2 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x3 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=0 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=1 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=2 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=3 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x0 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x1 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x2 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0x1, type=0x3 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=0 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=1 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=2 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_TARGET, type=3 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 5, 0, RGB(0, 15, 31) waitforvisualfinish @@ -12751,8 +12614,8 @@ gBattleAnimMove_PhotonGeyser:: setalpha 12, 8 createsprite gPhotonGeyserChargeTemplate, ANIM_ATTACKER, 2, 0x0 call PhotonGeyserSparks1 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0xffd8, y=0xffd8, duration=0x10 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0x0, y=0x28, duration=0x10 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=-40, y=-40, duration=16 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0, y=40, duration=16 delay 10 call PhotonGeyserSparks2 delay 10 @@ -12761,8 +12624,8 @@ gBattleAnimMove_PhotonGeyser:: call PhotonGeyserSparks2 delay 10 call PhotonGeyserSparks1 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0x0, y=0xffd8, duration=0x10 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0x28, y=0x14, duration=0x10 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0, y=-40, duration=16 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=40, y=20, duration=16 delay 10 call PhotonGeyserSparks2 delay 10 @@ -12771,8 +12634,8 @@ gBattleAnimMove_PhotonGeyser:: call PhotonGeyserSparks2 delay 10 call PhotonGeyserSparks1 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0xffd8, y=0x0, duration=0x10 - create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=0x28, y=0x0, duration=0x10 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=-40, y=0, duration=16 + create_power_absorption_orb_sprite ANIM_ATTACKER, 2, x=40, y=0, duration=16 delay 10 call PhotonGeyserSparks2 delay 10 @@ -13235,7 +13098,7 @@ gBattleAnimMove_DoubleIronBash:: loadspritegfx ANIM_TAG_GUST loadspritegfx ANIM_TAG_IMPACT loopsewithpan SE_M_HARDEN, SOUND_PAN_ATTACKER, 0x1c, 0x2 - metallic_shine priority=0x5, permanent=0x0 + metallic_shine permanent=0 waitforvisualfinish monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET @@ -13290,7 +13153,7 @@ gBattleAnimMove_DynamaxCannon:: waitbgfadein blend_color_cycle selector=F_PAL_TARGET, delay=4, num_blends=4, initial_blend_y=0, target_blend_y=12, color=RGB(31, 4, 10)@Pinkish Red panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER SOUND_PAN_TARGET 2 0 - shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=180, type=1 + shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=180, type=SHAKE_BG_Y createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 87, 1 call DynamaxCannonLaunch call DynamaxCannonLaunch @@ -13392,14 +13255,14 @@ POST_BERRY_EAT: waitforvisualfinish end BitePlayer: - playsewithpan SE_M_BITE, 0x3f - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0x27, y=0xffD0, animation=0x0, x_velocity=0x0/256, y_velocity=0x333/256, half_duration=0xa - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0x27, y=0x10, animation=0x4, x_velocity=0x0/256, y_velocity=0xfccd/256, half_duration=0xa + playsewithpan SE_M_BITE, SOUND_PAN_TARGET + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=39, y=-48, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=39, y=16, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 return BiteOpponent: - playsewithpan SE_M_BITE, 0x3f - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0xffDF, y=0xffD0, animation=0x0, x_velocity=0x0/256, y_velocity=0x333/256, half_duration=0xa - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0xffDF, y=0x10, animation=0x4, x_velocity=0x0/256, y_velocity=0xfccd/256, half_duration=0xa + playsewithpan SE_M_BITE, SOUND_PAN_TARGET + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=33, y=-48, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=33, y=16, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 return gBattleAnimMove_NoRetreat:: @@ -13423,7 +13286,7 @@ gBattleAnimMove_TarShot:: delay 15 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 10, 1 blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=16, color=RGB_BLACK@;Black - createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0xffe6, 0xffe8, 0x0, 0xf, 0x37 + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, -26, -24, 0, 15, 55 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0xf, 0xffe5, 0x0, 0xC, 0x32 @@ -13439,24 +13302,24 @@ gBattleAnimMove_MagicPowder:: loadspritegfx ANIM_TAG_POISON_POWDER loadspritegfx ANIM_TAG_WATER_GUN loopsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER 0xE 0x8 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0xffe2, y=0xffea, duration=0x75, y_velocity=0x50/256, wave_amplitude=0x5, wave_speed=0x1 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0xa, 0xffea, 0x75, 0x50, 0xfffb, 0x1 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0xffe7, y=0xffea, duration=0x75, y_velocity=0x70/256, wave_amplitude=0x5, wave_speed=0x3 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=-30, y=-22, duration=117, y_velocity=80/256, wave_amplitude=5, wave_speed=1 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=10, y=-22, duration=117, y_velocity=80/256, wave_amplitude=-5, wave_speed=1 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=-25, y=-22, duration=117, y_velocity=112/256, wave_amplitude=5, wave_speed=3 delay 15 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0xfffb, 0xffea, 0x75, 0x50, 0xfffb, 0x1 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0x5, y=0xffea, duration=0x75, y_velocity=0x60/256, wave_amplitude=0x5, wave_speed=0x1 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0x0, 0xffea, 0x75, 0x45, 0xfffb, 0x1 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0xfff1, y=0xffea, duration=0x75, y_velocity=0x70/256, wave_amplitude=0x5, wave_speed=0x2 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=-5, y=-22, duration=117, y_velocity=80/256, wave_amplitude=-5, wave_speed=1 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=5, y=-22, duration=117, y_velocity=96/256, wave_amplitude=5, wave_speed=1 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=0, y=-22, duration=117, y_velocity=69/256, wave_amplitude=-5, wave_speed=1 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=-15, y=-22, duration=117, y_velocity=112/256, wave_amplitude=5, wave_speed=2 delay 30 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0xfff1, 0xffea, 0x75, 0x70, 0x5, 0x2 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0xf, y=0xffea, duration=0x75, y_velocity=0x50/256, wave_amplitude=0xfffb, wave_speed=0x1 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0xfff6, 0xffea, 0x75, 0x60, 0x7, 0x2 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0xfffb, y=0xffea, duration=0x75, y_velocity=0x5a/256, wave_amplitude=0xfff8, wave_speed=0x0 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=-15, y=-22, duration=117, y_velocity=112/256, wave_amplitude=5, wave_speed=2 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=15, y=-22, duration=117, y_velocity=80/256, wave_amplitude=-5, wave_speed=1 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=-10, y=-22, duration=117, y_velocity=96/256, wave_amplitude=7, wave_speed=2 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=-5, y=-22, duration=117, y_velocity=90/256, wave_amplitude=-8, wave_speed=0 delay 20 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0xfff6, 0xffea, 0x75, 0x50, 0xfffb, 0x1 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0x0, y=0xffea, duration=0x75, y_velocity=0x59/256, wave_amplitude=0x5, wave_speed=0x2 - createsprite gMagicPowderBluePowderTemplate, ANIM_TARGET, 2, 0x14, 0xffea, 0x75, 0x70, 0xfff8, 0x2 - create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0x5, y=0xffea, duration=0x75, y_velocity=0x50/256, wave_amplitude=0x5, wave_speed=0x1 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=-10, y=-22, duration=117, y_velocity=80/256, wave_amplitude=-5, wave_speed=1 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=0, y=-22, duration=117, y_velocity=89/256, wave_amplitude=5, wave_speed=2 + create_magic_powder_particle_sprite ANIM_TARGET, 2, x=20, y=-22, duration=117, y_velocity=112/256, wave_amplitude=-8, wave_speed=2 + create_poison_powder_particle_sprite ANIM_TARGET, 2, x=5, y=-22, duration=117, y_velocity=80/256, wave_amplitude=5, wave_speed=1 waitforvisualfinish playsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET createvisualtask AnimTask_ScaleMonAndRestore, 5, -6, -6, 15, ANIM_TARGET, 1 @@ -13494,19 +13357,10 @@ gBattleAnimMove_Teatime:: gBattleAnimMove_Octolock:: loadspritegfx ANIM_TAG_TENDRILS createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_TENDRILS, 0, 12, 12, RGB(24, 12, 15) @Pinkish Red - loopsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET 0x6 0x4 - create_constrict_binding_sprite ANIM_TARGET, 4, initial_x=0x0, initial_y=0x10, affine_animation=0x0, squeezes=0x2 - delay 7 - create_constrict_binding_sprite ANIM_TARGET, 3, initial_x=0x0, initial_y=0x0, affine_animation=0x0, squeezes=0x2 - create_constrict_binding_sprite ANIM_TARGET, 2, initial_x=0x0, initial_y=0x8, affine_animation=0x1, squeezes=0x2 - delay 7 - create_constrict_binding_sprite ANIM_TARGET, 3, initial_x=0x0, initial_y=0xfff8, affine_animation=0x1, squeezes=0x2 - delay 8 - createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1 - delay 20 + call CreateConstrictBinding blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=8, color=RGB_RED playsewithpan SE_M_BIND, SOUND_PAN_TARGET - setarg 0x7 0xffff + setarg 7, -1 waitforvisualfinish end @@ -13524,7 +13378,7 @@ gBattleAnimMove_BoltBeak:: delay 4 createsprite gHornHitSpriteTemplate, 0x84, 0x3, 0x8, 0x8, 0xa waitforvisualfinish - create_flashing_hitsplat_sprite 0x83, 0x4, x=0x0, y=0x0, relative_to=0x1, animation=0x1 + create_flashing_hitsplat_sprite 131, 4, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish @@ -13711,10 +13565,10 @@ gBattleAnimMove_DrumBeating:: call BellyDrumLeft createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x3, 0x0 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER - create_frenzy_plant_root_sprite ANIM_ATTACKER, 2, interpolate_percent=0x55, offset_x=0x10, offset_y=0x6, subpriority=0x0, animation=0x3, duration=0x50 + create_frenzy_plant_root_sprite ANIM_ATTACKER, 2, interpolate_percent=85, offset_x=16, offset_y=6, subpriority=0, animation=3, duration=80 playsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET delay 5 - create_frenzy_plant_root_sprite ANIM_ATTACKER, 2, interpolate_percent=0x55, offset_x=0xfff0, offset_y=0xfffa, subpriority=0x0, animation=0x2, duration=0x4b + create_frenzy_plant_root_sprite ANIM_ATTACKER, 2, interpolate_percent=85, offset_x=-16, offset_y=-6, subpriority=0, animation=2, duration=75 playsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET delay 5 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=-10, y=-10, relative_to=ANIM_TARGET, animation=3 @@ -13748,9 +13602,7 @@ gBattleAnimMove_SnapTrap:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SHARP_TEETH, 0, 10, 10, RGB(8, 20, 1) monbg ANIM_TARGET setalpha 12, 8 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 + call CreateBite createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 10 @@ -14077,7 +13929,7 @@ gBattleAnimMove_BranchPoke:: createsprite gBranchPokeBranchTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x25 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0x0, y=0x0, relative_to=0x1, animation=0x1 + create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET waitforvisualfinish end @@ -14104,7 +13956,7 @@ OverdriveRings: createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 - shake_battle_platforms priority=0x2, x_offset=0x1, y_offset=0x0, shakes=0x6, delay=0x1 + shake_battle_platforms priority=2, x_offset=1, y_offset=0, shakes=6, delay=1 createvisualtask SoundTask_WaitForCry, 0x5 return @@ -14309,7 +14161,7 @@ gBattleAnimMove_FalseSurrender:: delay 0 playsewithpan SE_M_FAINT_ATTACK, 0xc0 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 3 - attacker_fade_to_invisible priority=0x2, step_delay=0x1 + attacker_fade_to_invisible priority=2, step_delay=1 waitforvisualfinish clearmonbg ANIM_ATTACKER invisible ANIM_ATTACKER @@ -14330,7 +14182,7 @@ gBattleAnimMove_FalseSurrender:: delay 1 createvisualtask AnimTask_InitAttackerFadeFromInvisible, 0x2, monbg ANIM_ATTACKER - attacker_fade_from_invisible priority=0x2, step_delay=0x1 + attacker_fade_from_invisible step_delay=1 waitforvisualfinish clearmonbg ANIM_ATTACKER delay 1 @@ -15148,7 +15000,7 @@ gBattleAnimMove_CorrosiveGas:: loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER, 0x8, 0x3 delay 0 blend_color_cycle selector=F_PAL_ATTACKER, delay=1, num_blends=2, initial_blend_y=0, target_blend_y=15, color=RGB(15, 15, 6)@;Garbage green - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x7a, 0x3, 0xfff2, 0x12, 0x2e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 122, 3, -14, 18, 46 delay 0 createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x79, 0x3, 0xe, 0xfff2, 0x2e delay 0 @@ -15329,30 +15181,8 @@ gBattleAnimMove_JungleHealing:: loadspritegfx ANIM_TAG_SPARKLE_2 fadetobg BG_SNUGGLE_FOREVER waitbgfadeout - create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=0x10, offset_y=0x1a, subpriority=0xffff, animation=0x2, duration=0x96 - playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - delay 10 - create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=0xffe0, offset_y=0x14, subpriority=0x1, animation=0x1, duration=0x8c - playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - delay 10 - create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=0x20, offset_y=0x16, subpriority=0x1, animation=0x0, duration=0x82 - playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - delay 10 - create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=0xfff0, offset_y=0x19, subpriority=0xffff, animation=0x3, duration=0x78 - playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - delay 40 - create_ingrain_orb_sprite ANIM_ATTACKER, 3, initial_x=0x20, initial_y=0x1a, velocity_x=0xffff, wave_amplitude=0x3, duration=0x1e - delay 5 - playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER - delay 5 - create_ingrain_orb_sprite ANIM_ATTACKER, 3, initial_x=0xffd0, initial_y=0x14, velocity_x=0x1, wave_amplitude=0x2, duration=0x1e - playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER - delay 5 - playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER - delay 5 - create_ingrain_orb_sprite ANIM_ATTACKER, 3, initial_x=0x30, initial_y=0x1a, velocity_x=0xfffe, wave_amplitude=0x3, duration=0x12 - playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER - delay 10 + call CreateIngrainRoots + call CreateIngrainOrbs playsewithpan SE_M_STAT_INCREASE, 0xc0 createvisualtask AnimTask_StatusClearedEffect, 0x2, 0x1 waitforvisualfinish @@ -16234,20 +16064,13 @@ MountainGaleIceRock: createsprite gSpriteTemplate_MountainGaleRock, ANIM_ATTACKER, 2, 0x14, 0xfff8, 0xfff8, 0xfff8, 0x14, 0xffe0 return - - gBattleAnimMove_VictoryDance:: loadspritegfx ANIM_TAG_HOLLOW_ORB createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 40, 6, 3, 3 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(29, 24, 2), 14, 0, 3 @;Light orange - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0x0/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0x2b/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0x55/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0x80/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0xaa/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0xd5/256 + call CreateDragonDanceOrbs delay 30 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 30 @@ -18114,7 +17937,7 @@ gBattleAnimMove_MakeItRain:: jumprettrue MakingItRainOnPlayer MakingItRainContinue: waitbgfadeout - shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=1 + shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=SHAKE_BG_Y loopsewithpan SE_M_PAY_DAY, SOUND_PAN_TARGET, 8, 15 createsprite gMakingItRainTemplate, ANIM_TARGET, 2, -5, 0, -5, 1 delay 2 @@ -18172,50 +17995,7 @@ gBattleAnimMove_HyperDrill:: loadspritegfx ANIM_TAG_HORN_HIT fadetobgfromset BG_GUILLOTINE_OPPONENT, BG_GUILLOTINE_PLAYER, BG_GUILLOTINE_CONTESTS waitbgfadein - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0 - playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - waitforvisualfinish - delay 2 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 1 - createsprite gHornHitSpriteTemplate, ANIM_TARGET, 4, 0, 0, 12 - waitforvisualfinish - playse 20 - createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 40, 1 - createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 40, 1 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=2, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=-4, y=3, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=-8, y=-5, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=4, y=-12, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=16, y=0, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=5, y=18, relative_to=1, animation=3 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=-17, y=12, relative_to=1, animation=2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=-21, y=-15, relative_to=1, animation=2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=8, y=-27, relative_to=1, animation=2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=32, y=0, relative_to=1, animation=2 - playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - delay 4 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 2 + call CreateSharpDrill complex_palette_blend selector=F_PAL_BG | F_PAL_BATTLERS, delay=3, num_blends=1, color1=RGB_BLACK, blend_y1=8, color2=RGB_BLACK, blend_y2=0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish @@ -20008,21 +19788,7 @@ TeraBlastGround: delay 40 loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET 11, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=5, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-10, y=-15 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=0, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=15, y=5 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-25, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=30, y=30 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=-27, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=0, y=8 + call CreateDragonRageFirePlumes delay 1 loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET 11, 3 create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=5, y=0 @@ -20042,21 +19808,7 @@ TeraBlastGround: loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET 11, 3 create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=0, y=8 delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=5, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-10, y=-15 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=0, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=15, y=5 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-25, y=0 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=30, y=30 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=-27, y=25 - delay 1 - create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=0, y=8 + call CreateDragonRageFirePlumes createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 50, 1 call EternabeamGeyser delay 5 @@ -22838,7 +22590,7 @@ gBattleAnimMove_MeanLook:: gBattleAnimMove_RockThrow:: loadspritegfx ANIM_TAG_ROCKS - shake_mon_or_platform unused_anim_battler=ANIM_TARGET, velocity=6, shake_timer=1, shake_duration=15, type=1 + shake_mon_or_platform unused_anim_battler=ANIM_TARGET, velocity=6, shake_timer=1, shake_duration=15, type=SHAKE_BG_Y createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 0 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 6 @@ -22860,7 +22612,7 @@ gBattleAnimMove_RockThrow:: gBattleAnimMove_RockSlide:: loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=1 + shake_mon_or_platform velocity=7, shake_timer=1, shake_duration=11, type=SHAKE_BG_Y createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 @@ -23213,6 +22965,21 @@ gBattleAnimMove_HornDrill:: HornDrillContinue: waitbgfadein setalpha 12, 8 + call CreateSharpDrill + waitforvisualfinish + restorebg + waitbgfadeout + setarg 7, 0xFFFF + waitbgfadein + end + +HornDrillInContest: + fadetobg BG_DRILL_CONTESTS + waitbgfadeout + createvisualtask AnimTask_StartSlidingBg, 5, 2304, 768, 0, -1 + goto HornDrillContinue + +CreateSharpDrill: createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER waitforvisualfinish @@ -23257,18 +23024,7 @@ HornDrillContinue: playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET delay 4 createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 2 - waitforvisualfinish - restorebg - waitbgfadeout - setarg 7, 0xFFFF - waitbgfadein - end - -HornDrillInContest: - fadetobg BG_DRILL_CONTESTS - waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 2304, 768, 0, -1 - goto HornDrillContinue + return gBattleAnimMove_Thrash:: loadspritegfx ANIM_TAG_IMPACT @@ -23654,7 +23410,7 @@ gBattleAnimMove_Barrage:: createvisualtask AnimTask_BarrageBall, 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 24 - shake_mon_or_platform velocity=8, shake_timer=1, shake_duration=40, type=1 + shake_mon_or_platform velocity=8, shake_timer=1, shake_duration=40, type=SHAKE_BG_Y createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 0, 4, 20, 1 createvisualtask AnimTask_ShakeMon, 3, ANIM_DEF_PARTNER, 0, 4, 20, 1 loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 8, 2 @@ -24401,7 +24157,7 @@ gBattleAnimMove_Superpower:: createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 20 - shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=180, type=1 + shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=180, type=SHAKE_BG_Y createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_EARTHQUAKE, 0 delay 40 createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120 @@ -24849,18 +24605,26 @@ gBattleAnimMove_CrushClaw:: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 4 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 18, 1 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=10, animation=0 + call CreateClawSlashes1 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 12 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=10, animation=1 + call CreateClawSlashes2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish blendoff clearmonbg ANIM_TARGET end +CreateClawSlashes1: + create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 + create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=10, animation=0 + return + +CreateClawSlashes2: + create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 + create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=10, animation=1 + return + gBattleAnimMove_Aromatherapy:: playsewithpan SE_M_PETAL_DANCE, 0 loadspritegfx ANIM_TAG_FLOWER @@ -24909,17 +24673,17 @@ gBattleAnimMove_FakeTears:: createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 1 loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 12, 4 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=0 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=1 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=0 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=1 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=2 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=3 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=2 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=3 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=0 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=1 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=0 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=1 delay 8 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=2 - create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=0, type=3 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=2 + create_tear_drop_sprite ANIM_ATTACKER, 2, relative_to=ANIM_ATTACKER, type=3 waitforvisualfinish end @@ -25227,7 +24991,7 @@ gBattleAnimMove_CalmMind:: gBattleAnimMove_LeafBlade:: loadspritegfx ANIM_TAG_LEAF loadspritegfx ANIM_TAG_CROSS_IMPACT - create_leaf_blade_task + create_leaf_blade_task delay 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 playsewithpan SE_M_CUT, SOUND_PAN_TARGET @@ -25258,12 +25022,7 @@ gBattleAnimMove_DragonDance:: playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(0, 0, 19), 14, 0, 3 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=43/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=85/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=128/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=170/256 - create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=213/256 + call CreateDragonDanceOrbs delay 30 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER delay 30 @@ -25273,6 +25032,15 @@ gBattleAnimMove_DragonDance:: delay 1 end +CreateDragonDanceOrbs: + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=0/256 + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=43/256 + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=85/256 + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=128/256 + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=170/256 + create_dragon_dance_orb_sprite ANIM_ATTACKER, 2, angle=213/256 + return + gBattleAnimMove_ShockWave:: loadspritegfx ANIM_TAG_ELECTRIC_ORBS loadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT @@ -25744,7 +25512,7 @@ SnoreEffect: playsewithpan SE_M_SNORE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 7, ANIM_ATTACKER, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 7, 1 - shake_mon_or_platform velocity=6, shake_timer=1, shake_duration=14, type=0 + shake_mon_or_platform velocity=6, shake_timer=1, shake_duration=14, type=SHAKE_BG_X createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -42, -38, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, -42, 24, 0, 0 createsprite gSnoreZSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, -38, 24, 0, 0 @@ -25979,6 +25747,13 @@ gBattleAnimMove_DragonRage:: waitforvisualfinish loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET, 11, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 + call CreateDragonRageFirePlumes + waitforvisualfinish + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0, 0, 4 + waitforvisualfinish + end + +CreateDragonRageFirePlumes: create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=5, y=0 delay 1 create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=-10, y=-15 @@ -25994,10 +25769,7 @@ gBattleAnimMove_DragonRage:: create_dragon_rage_fire_plume_sprite ANIM_TARGET, 2, relative_to=1, x=-27, y=25 delay 1 create_dragon_rage_fire_plume_sprite ANIM_TARGET, 66, relative_to=1, x=0, y=8 - waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0, 0, 4 - waitforvisualfinish - end + return gBattleAnimMove_RainDance:: loadspritegfx ANIM_TAG_RAIN_DROPS @@ -26018,9 +25790,7 @@ gBattleAnimMove_Bite:: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET setalpha 12, 8 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 + call CreateBite delay 10 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 7, 1 @@ -26030,6 +25800,12 @@ gBattleAnimMove_Bite:: delay 1 end +CreateBite: + playsewithpan SE_M_BITE, SOUND_PAN_TARGET + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=-32, animation=0, x_velocity=0/256, y_velocity=819/256, half_duration=10 + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=0, y=32, animation=4, x_velocity=0/256, y_velocity=-819/256, half_duration=10 + return + gBattleAnimMove_Crunch:: loadspritegfx ANIM_TAG_SHARP_TEETH loadspritegfx ANIM_TAG_IMPACT @@ -26037,17 +25813,11 @@ gBattleAnimMove_Crunch:: fadetobg BG_DARK waitbgfadein setalpha 12, 8 - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=-32, animation=1, x_velocity=819/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=32, animation=5, x_velocity=-819/256, y_velocity=-819/256, half_duration=10 - delay 10 + call CreateCrunch1 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=-8, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 7, 5, 2 waitforvisualfinish - playsewithpan SE_M_BITE, SOUND_PAN_TARGET - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=-32, animation=7, x_velocity=-819/256, y_velocity=819/256, half_duration=10 - create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=32, animation=3, x_velocity=819/256, y_velocity=-819/256, half_duration=10 - delay 10 + call CreateCrunch2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=8, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 8, 4, 2 waitforvisualfinish @@ -26058,14 +25828,26 @@ gBattleAnimMove_Crunch:: waitbgfadein end +CreateCrunch1: + playsewithpan SE_M_BITE, SOUND_PAN_TARGET + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=-32, animation=1, x_velocity=819/256, y_velocity=819/256, half_duration=10 + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=32, animation=5, x_velocity=-819/256, y_velocity=-819/256, half_duration=10 + delay 10 + return + +CreateCrunch2: + playsewithpan SE_M_BITE, SOUND_PAN_TARGET + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=32, y=-32, animation=7, x_velocity=-819/256, y_velocity=819/256, half_duration=10 + create_sharp_teeth_sprite ANIM_ATTACKER, 2, x=-32, y=32, animation=3, x_velocity=819/256, y_velocity=-819/256, half_duration=10 + delay 10 + return + gBattleAnimMove_Clamp:: loadspritegfx ANIM_TAG_CLAMP loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET setalpha 12, 8 - playsewithpan SE_M_VICEGRIP, SOUND_PAN_TARGET - create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=-32, y=0, animation=2, x_velocity=819/256, y_velocity=0/256, half_duration=10 - create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=32, y=0, animation=6, x_velocity=-819/256, y_velocity=0/256, half_duration=10 + call CreateClampJaw delay 10 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1 @@ -26075,6 +25857,12 @@ gBattleAnimMove_Clamp:: waitforvisualfinish end +CreateClampJaw: + playsewithpan SE_M_VICEGRIP, SOUND_PAN_TARGET + create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=-32, y=0, animation=2, x_velocity=819/256, y_velocity=0/256, half_duration=10 + create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=32, y=0, animation=6, x_velocity=-819/256, y_velocity=0/256, half_duration=10 + return + gBattleAnimMove_IceBeam:: monbg ANIM_TARGET splitbgprio ANIM_TARGET @@ -27517,6 +27305,22 @@ gBattleAnimMove_PetalDance:: setalpha 12, 8 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 6, 3 + call CreatePetals + waitforvisualfinish + createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 5 + delay 3 + playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET + create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=0 + createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 6, 0, 8, 1 + waitforvisualfinish + delay 8 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 7 + waitforvisualfinish + clearmonbg ANIM_DEF_PARTNER + blendoff + end + +CreatePetals: create_petal_dance_big_flower_sprite ANIM_ATTACKER, 2, initial_x=0, initial_y=-24, target_y=8, duration=140 create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=16, initial_y=-24, target_y=8, duration=100 create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=-16, initial_y=-24, target_y=8, duration=100 @@ -27534,19 +27338,7 @@ gBattleAnimMove_PetalDance:: delay 30 create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=20, initial_y=-16, target_y=14, duration=80 create_petal_dance_small_flower_sprite ANIM_ATTACKER, 2, initial_x=-20, initial_y=-14, target_y=16, duration=80 - waitforvisualfinish - createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 5 - delay 3 - playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET - create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=0 - createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 6, 0, 8, 1 - waitforvisualfinish - delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 7 - waitforvisualfinish - clearmonbg ANIM_DEF_PARTNER - blendoff - end + return gBattleAnimMove_RazorLeaf:: loadspritegfx ANIM_TAG_LEAF @@ -27556,6 +27348,20 @@ gBattleAnimMove_RazorLeaf:: setalpha 12, 8 delay 1 loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_ATTACKER, 10, 5 + call CreateRazorLeaves + delay 60 + playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER + call CreateRazorLeafCutters + delay 20 + playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET + createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 + createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 8, 1 + waitforvisualfinish + clearmonbg ANIM_DEF_PARTNER + blendoff + end + +CreateRazorLeaves: create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-3, upward_delta_y=-2, upward_duration=10 delay 2 create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-1, upward_delta_y=-1, upward_duration=15 @@ -27575,18 +27381,12 @@ gBattleAnimMove_RazorLeaf:: create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=2, upward_delta_y=-6, upward_duration=11 delay 2 create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-3, upward_delta_y=-5, upward_duration=8 - delay 60 - playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER + return + +CreateRazorLeafCutters: create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=22, wave_amplitude=20, target_both=1 create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=22, wave_amplitude=-20, target_both=1 - delay 20 - playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 - createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 8, 1 - waitforvisualfinish - clearmonbg ANIM_DEF_PARTNER - blendoff - end + return gBattleAnimMove_NaturePower:: @ No actual animation, uses the animation of a move from src/data/battle_environment.h instead @@ -27596,7 +27396,7 @@ gBattleAnimMove_AncientPower:: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 8 - shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=10, type=1 + shake_mon_or_platform velocity=4, shake_timer=1, shake_duration=10, type=SHAKE_BG_Y createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 20, 32, -48, 50, 2 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, -38, 25, 5 createsprite gAncientPowerRockSpriteTemplate, ANIM_ATTACKER, 2, 32, 32, -28, 40, 3 @@ -28019,16 +27819,14 @@ gBattleAnimMove_MetalClaw:: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=10, animation=0 - shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=3, battler_selector=1 + call CreateClawSlashes1 + shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=SHAKE_MON_Y, battler_selector=SHAKE_MON_TARGET delay 8 createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=10, animation=1 - shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=3, battler_selector=1 + call CreateClawSlashes2 + shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=SHAKE_MON_Y, battler_selector=SHAKE_MON_TARGET waitforvisualfinish end @@ -28345,6 +28143,13 @@ gBattleAnimMove_Mimic:: gBattleAnimMove_Constrict:: loadspritegfx ANIM_TAG_TENDRILS + call CreateConstrictBinding + playsewithpan SE_M_BIND, SOUND_PAN_TARGET + setarg 7, -1 + waitforvisualfinish + end + +CreateConstrictBinding: loopsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET, 6, 4 create_constrict_binding_sprite ANIM_TARGET, 4, initial_x=0, initial_y=16, affine_animation=0, squeezes=2 delay 7 @@ -28355,10 +28160,7 @@ gBattleAnimMove_Constrict:: delay 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 6, 1 delay 20 - playsewithpan SE_M_BIND, SOUND_PAN_TARGET - setarg 7, 0xFFFF - waitforvisualfinish - end + return gBattleAnimMove_Curse:: choosetwoturnanim CurseGhost, CurseStats @@ -28559,6 +28361,12 @@ gBattleAnimMove_FurySwipes:: gBattleAnimMove_Ingrain:: loadspritegfx ANIM_TAG_ROOTS loadspritegfx ANIM_TAG_ORBS + call CreateIngrainRoots + call CreateIngrainOrbs + waitforvisualfinish + end + +CreateIngrainRoots: create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=16, offset_y=26, subpriority=-1, animation=2, duration=150 playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER delay 10 @@ -28571,6 +28379,9 @@ gBattleAnimMove_Ingrain:: create_ingrain_root_sprite ANIM_ATTACKER, 2, offset_x=-16, offset_y=25, subpriority=-1, animation=3, duration=120 playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER delay 40 + return + +CreateIngrainOrbs: create_ingrain_orb_sprite ANIM_ATTACKER, 3, initial_x=32, initial_y=26, velocity_x=-1, wave_amplitude=3, duration=30 delay 5 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER @@ -28583,8 +28394,7 @@ gBattleAnimMove_Ingrain:: create_ingrain_orb_sprite ANIM_ATTACKER, 3, initial_x=48, initial_y=26, velocity_x=-2, wave_amplitude=3, duration=18 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 10 - waitforvisualfinish - end + return gBattleAnimMove_Present:: loadspritegfx ANIM_TAG_ITEM_BAG @@ -28850,6 +28660,10 @@ gBattleAnimMove_Encore:: gBattleAnimMove_Trick:: loadspritegfx ANIM_TAG_ITEM_BAG loadspritegfx ANIM_TAG_SPEED_DUST + call SwapItems + end + +SwapItems: create_trick_bag_sprite ANIM_ATTACKER, 2, initial_y=-40, wave_offset=80 create_trick_bag_sprite ANIM_ATTACKER, 2, initial_y=-40, wave_offset=208 delay 16 @@ -28873,7 +28687,7 @@ gBattleAnimMove_Trick:: createvisualtask AnimTask_ShakeMon, 3, ANIM_ATTACKER, 5, 0, 7, 2 createvisualtask AnimTask_ShakeMon, 3, ANIM_TARGET, 5, 0, 7, 2 waitforvisualfinish - end + return gBattleAnimMove_Wish:: loadspritegfx ANIM_TAG_GOLD_STARS @@ -29365,9 +29179,8 @@ gBattleAnimMove_DragonClaw:: createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=-10, animation=0 - create_claw_slash_sprite ANIM_TARGET, 2, x=-10, y=10, animation=0 - shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=3, battler_selector=1 + call CreateClawSlashes1 + shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=SHAKE_MON_Y, battler_selector=SHAKE_MON_TARGET createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER @@ -29378,9 +29191,8 @@ gBattleAnimMove_DragonClaw:: createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=-10, animation=1 - create_claw_slash_sprite ANIM_TARGET, 2, x=10, y=10, animation=1 - shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=3, battler_selector=1 + call CreateClawSlashes2 + shake_mon_or_platform velocity=-4, shake_timer=1, shake_duration=10, type=SHAKE_MON_Y, battler_selector=SHAKE_MON_TARGET createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 createsprite gFireSpinSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER @@ -30430,25 +30242,7 @@ gBattleAnimMove_MagicalLeaf:: delay 1 loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_ATTACKER, 10, 5 createvisualtask AnimTask_CycleMagicalLeafPal, 5 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-3, upward_delta_y=-2, upward_duration=10 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-1, upward_delta_y=-1, upward_duration=15 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-4, upward_delta_y=-4, upward_duration=7 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=3, upward_delta_y=-3, upward_duration=11 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-1, upward_delta_y=-6, upward_duration=8 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=2, upward_delta_y=-1, upward_duration=12 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-3, upward_delta_y=-4, upward_duration=13 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=4, upward_delta_y=-5, upward_duration=7 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=2, upward_delta_y=-6, upward_duration=11 - delay 2 - create_razor_leaf_particle_sprite ANIM_ATTACKER, 2, upward_delta_x=-3, upward_delta_y=-5, upward_duration=8 + call CreateRazorLeaves delay 60 playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER create_razor_leaf_cutter_sprite ANIM_TARGET, 3, initial_x=20, initial_y=-10, target_x=20, target_y=0, duration=32, wave_amplitude=20, target_both=0 @@ -31179,9 +30973,7 @@ Status_Clamp: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_TARGET setalpha 12, 8 - playsewithpan SE_M_VICEGRIP, SOUND_PAN_TARGET - create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=-32, y=0, animation=2, x_velocity=819/256, y_velocity=0/256, half_duration=10 - create_clamp_jaw_sprite ANIM_ATTACKER, 2, x=32, y=0, animation=6, x_velocity=-819/256, y_velocity=0/256, half_duration=10 + call CreateClampJaw delay 10 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 5, 1 @@ -32497,7 +32289,7 @@ FinishAcidDownpour: createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0xd2 delay 32 panse SE_M_WHIRLPOOL, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - create_surf_wave priority=0x2, palette=ANIM_SURF_PAL_SLUDGE_WAVE + create_surf_wave palette=ANIM_SURF_PAL_SLUDGE_WAVE createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, (RGB(28, 3, 22) | RGB_ALPHA) createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 50, 1 call AcidDownpourFlare @@ -33392,7 +33184,7 @@ gBattleAnimMove_HydroVortex:: loadspritegfx ANIM_TAG_WATER_ORB @whirlpool createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA waitforvisualfinish - create_surf_wave priority=0x2, palette=0x0 + create_surf_wave palette=ANIM_SURF_PAL_SURF delay 24 panse SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 waitforvisualfinish @@ -36667,11 +36459,11 @@ gBattleAnimMove_LetsSnuggleForever:: end LetsSnuggleForeverTears: playsewithpan SE_M_TAIL_WHIP, SOUND_PAN_TARGET - create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=0x0 - create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=0x1 + create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=0 + create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=1 delay 8 - create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=0x2 - create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=0x3 + create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=2 + create_tear_drop_sprite ANIM_TARGET, 2, relative_to=ANIM_TARGET, type=3 return LetsSnuggleForeverImpacts: create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=-12, relative_to=ANIM_TARGET, animation=0