From 8c5990955fc39ab2b704f3bf7ec841b397a2c620 Mon Sep 17 00:00:00 2001 From: cawtds <38510667+cawtds@users.noreply.github.com> Date: Thu, 1 May 2025 14:40:10 +0200 Subject: [PATCH] update battle anims, battle terrains renamed --- data/battle_anim_scripts.s | 585 +++++++++--------- .../backgrounds/rock_afternoon.pal | 19 + .../battle_anims/backgrounds/rock_day.pal | 19 + .../battle_anims/backgrounds/rock_field.bin | Bin 0 -> 896 bytes .../battle_anims/backgrounds/rock_field.png | Bin 0 -> 2818 bytes .../battle_anims/backgrounds/rock_night.pal | 19 + .../backgrounds/sky_afternoon.pal | 19 - graphics/battle_anims/backgrounds/sky_day.bin | Bin 896 -> 0 bytes graphics/battle_anims/backgrounds/sky_day.pal | 19 - graphics/battle_anims/backgrounds/sky_day.png | Bin 7508 -> 0 bytes .../battle_anims/backgrounds/sky_night.pal | 19 - include/battle.h | 2 +- include/battle_terrain.h | 2 +- include/config/dexnav.h | 2 +- include/config/follower_npc.h | 22 +- include/config/general.h | 9 +- include/config/item.h | 9 +- include/config/overworld.h | 48 +- include/config/pokedex_plus_hgss.h | 11 + include/config/pokemon.h | 3 +- include/config/save.h | 2 +- include/config/summary_screen.h | 30 + include/constants/battle.h | 68 +- include/constants/battle_ai.h | 13 - include/constants/battle_anim.h | 71 +-- include/graphics.h | 10 +- src/battle_anim_normal.c | 36 +- src/battle_anim_utility_funcs.c | 44 +- src/battle_bg.c | 62 +- src/battle_intro.c | 22 +- src/battle_main.c | 8 +- src/battle_script_commands.c | 10 +- src/battle_setup.c | 32 +- src/data/battle_anim.h | 6 +- src/data/battle_terrain.h | 66 +- src/data/pokemon/form_change_tables.h | 16 +- src/debug.c | 2 +- src/evolution_scene.c | 4 +- src/graphics.c | 10 +- src/overworld.c | 2 +- src/pokemon.c | 2 +- src/pokemon_sprite_visualizer.c | 30 +- test/battle/move_animations/all_anims.c | 4 +- 43 files changed, 689 insertions(+), 668 deletions(-) create mode 100644 graphics/battle_anims/backgrounds/rock_afternoon.pal create mode 100644 graphics/battle_anims/backgrounds/rock_day.pal create mode 100644 graphics/battle_anims/backgrounds/rock_field.bin create mode 100644 graphics/battle_anims/backgrounds/rock_field.png create mode 100644 graphics/battle_anims/backgrounds/rock_night.pal delete mode 100644 graphics/battle_anims/backgrounds/sky_afternoon.pal delete mode 100644 graphics/battle_anims/backgrounds/sky_day.bin delete mode 100644 graphics/battle_anims/backgrounds/sky_day.pal delete mode 100644 graphics/battle_anims/backgrounds/sky_day.png delete mode 100644 graphics/battle_anims/backgrounds/sky_night.pal create mode 100644 include/config/pokedex_plus_hgss.h create mode 100644 include/config/summary_screen.h diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index c3afb5a23..cddf07fc6 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -308,7 +308,7 @@ gBattleAnimMove_NaturalGift:: createvisualtask AnimTask_DragonDanceWaver, 5 playsewithpan SE_M_TELEPORT, -64 delay 8 - createvisualtask AnimTask_BlendPalInAndOutByTag, 5, 10249, 19456, 14, 0, 3 + createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, 19456, 14, 0, 3 createsprite gDragonDanceOrbSpriteTemplate, ANIM_ATTACKER, 2, 0 createsprite gDragonDanceOrbSpriteTemplate, ANIM_ATTACKER, 2, 43 createsprite gDragonDanceOrbSpriteTemplate, ANIM_ATTACKER, 2, 85 @@ -932,7 +932,7 @@ gBattleAnimMove_Punishment:: monbg ANIM_TARGET setalpha 12, 8 playsewithpan 155, SOUND_PAN_TARGET - createsprite gPunishmentSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 0 + createsprite gPunishmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 0 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish clearmonbg ANIM_TARGET @@ -952,7 +952,7 @@ gBattleAnimMove_Punishment:: gBattleAnimMove_LastResort:: fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 2, 4, 0, 128, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 2, 0, 128, 0, -1 waitbgfadein loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER @@ -963,19 +963,19 @@ gBattleAnimMove_LastResort:: waitplaysewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER, 8 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 2, 4 waitforvisualfinish - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_TARGET, 2, 1, 0, 16, 16, RGB_WHITE - createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, 0, 20, 0, 0, 4 + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 16, 16, RGB_WHITE + createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 20, 0, 0, 4 delay 3 waitforvisualfinish playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 132, -10, 0, 1, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, 1, -32, 0, 0, 3 waitforvisualfinish - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 0 - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 0 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 1 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 4, 0, 12, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_TARGET, 2, 1, 2, 16, 0, RGB_WHITE + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_WHITE waitforvisualfinish createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_ATTACKER, 1 createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, ANIM_TARGET, 1 @@ -1005,9 +1005,9 @@ gBattleAnimMove_SuckerPunch:: loadspritegfx ANIM_TAG_POISON_JAB loadspritegfx ANIM_TAG_IMPACT createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 20, 0, 0, 4 - createsprite gSuckerPunchSpriteTemplate, ANIM_TARGET, 130, -18, 5, 40, 8, 160, 0 + createsprite gSuckerPunchSpriteTemplate, ANIM_TARGET, 2, -18, 5, 40, 8, 160, 0 delay 4 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 130, -8, 8, 1, 2 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, 1, 2 createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, ANIM_TARGET, 2 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish @@ -1111,11 +1111,11 @@ gBattleAnimGeneral_AquaRingHeal:: createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 setalpha 8, 8 playsewithpan SE_M_MILK_DRINK, SOUND_PAN_ATTACKER - createsprite gGuardRingSpriteTemplate, 2, 0 + createsprite gGuardRingSpriteTemplate, ANIM_ATTACKER, 0 delay 4 - createsprite gGuardRingSpriteTemplate, 2, 0 + createsprite gGuardRingSpriteTemplate, ANIM_ATTACKER, 0 delay 4 - createsprite gGuardRingSpriteTemplate, 2, 0 + createsprite gGuardRingSpriteTemplate, ANIM_ATTACKER, 0 waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATK_SIDE, 0, 2, 0, 10, RGB_WHITE @@ -1198,33 +1198,33 @@ gBattleAnimMove_FlareBlitz:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 22, 1 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, 192, 176, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 192, 176, 40 playsewithpan SE_M_COMET_PUNCH, +63 delay 5 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 24, 8, 1, 0 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, -192, 240, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, -192, 240, 40 playsewithpan SE_M_COMET_PUNCH, +63 delay 5 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -24, -16, 1, 0 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, 192, -160, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 192, -160, 40 playsewithpan SE_M_COMET_PUNCH, +63 delay 5 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 8, 4, 1, 0 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, -192, -112, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, -192, -112, 40 playsewithpan SE_M_COMET_PUNCH, +63 delay 5 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -16, 19, 1, 0 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, 160, 48, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 160, 48, 40 playsewithpan SE_M_COMET_PUNCH, +63 delay 5 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 18, -18, 1, 0 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, -224, -32, 40 - createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 129, 0, 10, 112, -128, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, -224, -32, 40 + createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 112, -128, 40 playsewithpan SE_M_COMET_PUNCH, +63 createvisualtask AnimTask_BlendBattleAnimPal, 10, 4, 2, 0, 0, RGB_BLACK playsewithpan SE_M_COMET_PUNCH, +63 @@ -1246,10 +1246,10 @@ gBattleAnimMove_ForcePalm:: splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET - createsprite gKarateChopSpriteTemplate, ANIM_TARGET, 2, -16, 0, 0, 0, 10, 1, 3, 0 + createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, 1, 3, 0 waitforvisualfinish playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gForcePalmSpriteTemplate, ANIM_TARGET 3, 0, 0, 1, 2 + createsprite gForcePalmSpriteTemplate, ANIM_ATTACKER 3, 0, 0, 1, 2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -1487,17 +1487,17 @@ gBattleAnimMove_AquaTail:: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 delay 4 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET - createsprite gAquaTailKnockOffSpriteTemplate, ANIM_ATTACKER, 130, -16, -16 + createsprite gAquaTailKnockOffSpriteTemplate, ANIM_ATTACKER, 2, -16, -16 delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_TARGET, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 - createsprite gAquaTailHitSpriteTemplate, ANIM_TARGET, 131, 0, 0, 1, 2 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 + createsprite gAquaTailHitSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -12, 10, 0, 3 + createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -12, 10, 0, 3 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 delay 3 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1 delay 5 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 6 delay 10 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -1640,7 +1640,7 @@ gBattleAnimMove_DragonPulse:: clearmonbg ANIM_TARGET end DragonPulseParticle: - createsprite gDragonPulseSpriteTemplate, ANIM_ATTACKER, 130, 16, 0, 0, 0, 13, 0 + createsprite gDragonPulseSpriteTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 13, 0 delay 4 return @@ -1652,21 +1652,21 @@ gBattleAnimMove_DragonRush:: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 delay 4 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET - createsprite gDragonRushSpriteTemplate, ANIM_ATTACKER, 131, -16, -16 + createsprite gDragonRushSpriteTemplate, ANIM_ATTACKER, 3, -16, -16 delay 8 - createsprite gComplexPaletteBlendSpriteTemplate, ANIM_TARGET, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 + createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 5, 1, RGB_WHITE, 10, 0, 0 + createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 1 waitforvisualfinish playsewithpan 131, SOUND_PAN_TARGET - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, 0, 20, 24, 14, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 5, 0, -20, 24, 14, 1 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, 5, 20, -24, 14, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, -5, 0, 20, 24, 14, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, -5, 30, 18, 8, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, -18, 8, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, 0, -30, 18, 8, 2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0, 0, -30, -18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 5, 0, -20, 24, 14, 1 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 5, 20, -24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, -5, 0, 20, 24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 30, 18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, -18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -30, 18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, -30, -18, 8, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 7, 1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -1812,29 +1812,28 @@ gBattleAnimMove_BraveBird:: gBattleAnimMove_EarthPower:: loadspritegfx ANIM_TAG_SMALL_EMBER loadspritegfx ANIM_TAG_FIRE_PLUME - createvisualtask AnimTask_HorizontalShake, 3, ANIM_DEF_PARTNER, 10, 50 createvisualtask AnimTask_HorizontalShake, 3, ANIM_TARGET, 10, 50 playsewithpan SE_M_EARTHQUAKE, SOUND_PAN_TARGET delay 40 loopsewithpan 145, SOUND_PAN_TARGET 11, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 194, 1, 5, 0 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 66, 1, 5, 0 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 194, 1, -10, -15 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 66, 1, -10, -15 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 130, 1, 0, 25 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 2, 1, 0, 25 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 194, 1, 15, 5 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 66, 1, 15, 5 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 194, 1, -25, 0 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 66, 1, -25, 0 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 130, 1, 30, 30 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 2, 1, 30, 30 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 130, 1, -27, 25 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 2, 1, -27, 25 delay 1 - createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 194, 1, 0, 8 + createsprite gDragonRageFirePlumeSpriteTemplate, ANIM_TARGET, 66, 1, 0, 8 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 194, 0, 0, 4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0, 0, 4 waitforvisualfinish end @@ -1898,7 +1897,7 @@ GigaImpactContinuity: createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, 1, 0 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET delay 1 - createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, 1, -16, 0, 0, 4 + createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -16, 0, 0, 4 waitforvisualfinish createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 waitforvisualfinish @@ -1987,17 +1986,17 @@ gBattleAnimMove_Avalanche:: loadspritegfx ANIM_TAG_ROCKS loadspritegfx ANIM_TAG_ICE_CHUNK monbg ANIM_DEF_PARTNER - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_TARGET, 2, 7, 1, 11, 1 - createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 130, -5, 1, -5, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 + createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 - createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 130, 5, 0, 6, 1 + createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 2, 5, 0, 6, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 - createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 130, 19, 1, 10, 1 + createsprite gAvalancheSpriteTemplate, ANIM_TARGET, 2, 19, 1, 10, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 - createsprite gAvalancheSpriteTemplate ANIM_TARGET, 130, -17, 2, -20, 1 + createsprite gAvalancheSpriteTemplate ANIM_TARGET, 2, -17, 2, -20, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 50, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 0, 5, 50, 1 @@ -2320,7 +2319,7 @@ gBattleAnimMove_ZenHeadbutt:: setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 4, 0 waitforvisualfinish - createsprite gZenHeadbuttSpriteTemplate, ANIM_ATTACKER, 66, 0 + createsprite gZenHeadbuttSpriteTemplate, ANIM_ATTACKER, 2, 0 delay 18 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER waitforvisualfinish @@ -2336,7 +2335,7 @@ gBattleAnimMove_ZenHeadbutt:: createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 4, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 1, 2 - createsprite gAquaTailHitSpriteTemplate, ANIM_TARGER, 131, 0, 0, 1, 1 + createsprite gAquaTailHitSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 4, 4, 0, 0 @@ -2354,22 +2353,22 @@ gBattleAnimMove_MirrorShot:: createvisualtask AnimTask_BlendBattleAnimPalExclude, 5, 5, 2, 0, 10, RGB_WHITEALPHA createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_IMPACT, 0, 12, 12, RGB(21, 21, 21) waitforvisualfinish - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 3 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 3 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 3 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 3 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 3 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGER, 131, 1, 2 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 2 createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPalExclude, 5, 5, 2, 10, 0, RGB_WHITEALPHA @@ -2426,27 +2425,27 @@ gBattleAnimMove_RockClimb:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET setalpha 12, 8 - createvisualtask AnimTask_Rollout, 2, 0 + createvisualtask AnimTask_Rollout, 2, 1 waitforvisualfinish - createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, 0, 1, 30, 1, RGB(0, 16, 1) - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, -15, 8, 1, 1 + createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, 0, 1, 30, 1, 0 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, -15, 8, 1, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, -5, -12, 1, 1 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, -5, -12, 1, 1 delay 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 0, -32, 1, 1 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, -32, 1, 1 delay 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 5, -52, 1, 1 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 5, -52, 1, 1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, 1, -25, 16, 1, 4 delay 4 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1 delay 30 createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 6 delay 4 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, 1, 0, 6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 6 clearmonbg ANIM_DEF_PARTNER blendoff end @@ -2543,32 +2542,32 @@ gBattleAnimMove_DracoMeteor:: blendoff end DracoMeteor1: - createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 131, -48, -64, 40, 32, 25 + createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 3, -48, -64, 40, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -48, -64, 40, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -48, -64, 40, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -48, -64, 40, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -48, -64, 40, 32, 25 return DracoMeteor2: - createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 131, -112, -64, -8, 32, 25 + createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 3, -112, -64, -8, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -112, -64, -8, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -112, -64, -8, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -112, -64, -8, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -112, -64, -8, 32, 25 return DracoMeteor3: - createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, 24, 32, 25 + createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, 24, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, 24, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, 24, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, 24, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, 24, 32, 25 return DracoMeteor4: - createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, -8, 32, 25 + createsprite gDracoMeteorRocksSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, -8, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, -8, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, -8, 32, 25 delay 2 - createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 131, -80, -64, -8, 32, 25 + createsprite gDracoMeteorTailSpriteTemplate, ANIM_ATTACKER, 3, -80, -64, -8, 32, 25 return gBattleAnimMove_Discharge:: @@ -2684,14 +2683,14 @@ gBattleAnimMove_LavaPlume:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 32, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 1, 0, 32, 1 waitforvisualfinish - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 0 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 32 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 64 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 96 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 128 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 160 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 192 - createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 130, 224 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 0 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 32 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 64 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 96 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 128 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 160 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 192 + createsprite gLavaPlumeSpriteTemplate, ANIM_ATTACKER, 2, 224 playsewithpan SE_M_SACRED_FIRE, SOUND_PAN_ATTACKER waitforvisualfinish end @@ -2837,7 +2836,7 @@ RockWrecker_1: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 delay 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gRockBlastRockSpriteTemplate, ANIM_ATTACKER, 130, 16, 0, 0, 0, 25, 257 + createsprite gRockBlastRockSpriteTemplate, ANIM_ATTACKER, 130, 16, 0, 0, 0, 25, (1 << 8) | 1 waitforvisualfinish createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 0, 0, 1, 1 playsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET @@ -2855,15 +2854,15 @@ RockWrecker_2: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 delay 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gRockBlastRockSpriteTemplate, ANIM_ATTACKER, 130, 16, 0, 0, 0, 25, 257 + createsprite gRockBlastRockSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 25, 257 waitforvisualfinish - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 0, 0, 1, 1 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 playsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET - createsprite gRockFragmentSpriteTemplate ANIM_TARGET, 130, 0, 0, 20, 24, 14, 2 + createsprite gRockFragmentSpriteTemplate ANIM_TARGET, 2, 0, 0, 20, 24, 14, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 5, 1 - createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 130, 5, 0, -20, 24, 14, 1 - createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 130, 0, 5, 20, -18, 14, 2 - createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 130, -5, 0, -20, -18, 14, 2 + createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 2, 5, 0, -20, 24, 14, 1 + createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 2, 0, 5, 20, -18, 14, 2 + createsprite gRockFragmentSpriteTemplate ANIM_ATTACKER, 2, -5, 0, -20, -18, 14, 2 waitforvisualfinish call UnsetPsychicBg end @@ -2896,7 +2895,7 @@ gBattleAnimMove_GunkShot:: createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1 delay 6 panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 - createvisualtask AnimTask_StartSinAnimTimer, 5, 1, 100 + createvisualtask AnimTask_StartSinAnimTimer, 5, 100 call GunkShotParticles call GunkShotParticles call GunkShotParticles @@ -2968,7 +2967,7 @@ gBattleAnimMove_MagnetBomb:: loadspritegfx ANIM_TAG_SPARK_2 delay 0 playsewithpan 119, 192 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 @@ -3009,22 +3008,22 @@ gBattleAnimMove_MagnetBomb:: loadspritegfx ANIM_TAG_GRAY_SMOKE loadspritegfx ANIM_TAG_BLACK_BALL playsewithpan 177, 63 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, 8, 8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, -8, -8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, 8, -8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, -8, 8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 waitforvisualfinish playsewithpan 177, 63 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, 8, 8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, -8, -8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, 8, -8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 130, -8, 8, 1, 0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 waitforvisualfinish end @@ -3032,55 +3031,54 @@ gBattleAnimMove_StoneEdge:: loadspritegfx ANIM_TAG_STONE_EDGE loadspritegfx ANIM_TAG_IMPACT playsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 528, 30, 13, 50, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 32, 480, 20, 16, -46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 loopsewithpan 131, SOUND_PAN_TARGET 24, 3 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 576, 20, 8, 42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 31, 400, 25, 11, -42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 512, 25, 16, 46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 464, 30, 15, 49, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, 49, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 528, 30, 13, 50, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 32, 480, 20, 16, -46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 576, 20, 8, 42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 31, 400, 25, 11, -42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 512, 25, 16, 46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 464, 30, 15, 49, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, 49, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 528, 30, 13, 50, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 32, 480, 20, 16, -46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 576, 20, 8, 42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 31, 400, 25, 11, -42, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 28, 512, 25, 16, 46, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 130, 0, 33, 464, 30, 15, 49, 1 + createsprite gStoneEdgeSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, 49, 1 delay 2 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, -32, -16, 1, 3 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, -32, -16, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 12, 1 - createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_DEF_PARTNER, 3, 0, 12, 1 delay 4 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 131, 1, 3 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 131, 1, 3 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 32, 20, 1, 3 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 32, 20, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -3124,9 +3122,9 @@ gBattleAnimMove_GrassKnot:: loadspritegfx ANIM_TAG_RAZOR_LEAF loadspritegfx ANIM_TAG_IMPACT createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 20, 0, 0, 4 - createsprite gGrassKnotSpriteTemplate, ANIM_TARGET, 130, -18, 19, 40, 8, 160, 0 + createsprite gGrassKnotSpriteTemplate, ANIM_TARGET, 2, -18, 19, 40, 8, 160, 0 delay 4 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 130, -8, 8, 1, 2 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -8, 8, 1, 2 createvisualtask AnimTask_RotateMonSpriteToSide, 2, 6, 384, ANIM_TARGET, 2 playsewithpan SE_M_VITAL_THROW2 SOUND_PAN_TARGET waitforvisualfinish @@ -3395,6 +3393,7 @@ gBattleAnimMove_AquaJet:: loadspritegfx ANIM_TAG_SPARKLE_6 loadspritegfx ANIM_TAG_ROUND_SHADOW loadspritegfx ANIM_TAG_SPLASH + loadspritegfx ANIM_TAG_SWEAT_BEAD playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER createsprite gDiveBallSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish @@ -3410,7 +3409,7 @@ gBattleAnimMove_AquaJet:: monbg ANIM_DEF_PARTNER setalpha 12, 8 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gDiveWaterSplashSpriteTemplate, ANIM_TARGET, 131, 1 + createsprite gDiveWaterSplashSpriteTemplate, ANIM_TARGET, 3, 1 call DiveAttackWaterDroplets call DiveAttackWaterDroplets call DiveAttackWaterDroplets @@ -3431,39 +3430,39 @@ gBattleAnimMove_AttackOrder:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET playsewithpan SE_M_SWEET_SCENT, SOUND_PAN_TARGET - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 70, 5, 70, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 70, 5, 70, 30 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 55, 6, 60, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 55, 6, 60, 25 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 60, 7, 60, 30 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 55, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 60, 7, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 55, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 100, 50, 4, 50, 26 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 100, 50, 4, 50, 26 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 105, 25, 8, 60, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 105, 25, 8, 60, 20 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 40, 10, 48, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 40, 10, 48, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 30, 6, 45, 25 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 120, 35, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 30, 6, 45, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 35, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 105, 20, 8, 40, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 105, 20, 8, 40, 0 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 20, 255, 15, 32, 0 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 5, 110, 10, 8, 32, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 20, 255, 15, 32, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 110, 10, 8, 32, 20 waitforvisualfinish - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, -32, -16, 1, 3 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, -32, -16, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 12, 1 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 3, 0, 12, 1 delay 4 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 131, 1, 3 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 131, 1, 3 + createsprite gRandomPosHitSplatSpriteTemplate, ANIM_TARGET, 3, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 131, 32, 20, 1, 3 + createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 3, 32, 20, 1, 3 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -3477,30 +3476,30 @@ gBattleAnimMove_DefendOrder:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET playsewithpan SE_M_SWEET_SCENT, SOUND_PAN_TARGET - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 120, 70, 5, 70, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 70, 5, 70, 30 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 55, 6, 60, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 115, 55, 6, 60, 25 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 60, 7, 60, 30 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 55, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 115, 60, 7, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 115, 55, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 100, 50, 4, 50, 26 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 100, 50, 4, 50, 26 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 105, 25, 8, 60, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 105, 25, 8, 60, 20 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 40, 10, 48, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 115, 40, 10, 48, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 120, 30, 6, 45, 25 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 35, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 120, 30, 6, 45, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 115, 35, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 105, 20, 8, 40, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 105, 20, 8, 40, 0 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 20, 255, 15, 32, 0 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 110, 10, 8, 32, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 20, 255, 15, 32, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_TARGET, 2, 110, 10, 8, 32, 20 waitforvisualfinish loadspritegfx ANIM_TAG_BLUE_STAR waitforvisualfinish - clearmonbg ANIM_ATK_PARTNER + clearmonbg ANIM_DEF_PARTNER blendoff delay 1 call BideSetUp @@ -3514,30 +3513,30 @@ gBattleAnimMove_HealOrder:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET playsewithpan SE_M_SWEET_SCENT, SOUND_PAN_TARGET - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 120, 70, 5, 70, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 120, 70, 5, 70, 30 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 55, 6, 60, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 115, 55, 6, 60, 25 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 60, 7, 60, 30 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 55, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 115, 60, 7, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 115, 55, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 100, 50, 4, 50, 26 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 100, 50, 4, 50, 26 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 105, 25, 8, 60, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 105, 25, 8, 60, 20 delay 1 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 40, 10, 48, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 115, 40, 10, 48, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 120, 30, 6, 45, 25 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 115, 35, 10, 60, 30 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 120, 30, 6, 45, 25 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 115, 35, 10, 60, 30 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 105, 20, 8, 40, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 105, 20, 8, 40, 0 delay 3 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 20, 255, 15, 32, 0 - createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 130, 110, 10, 8, 32, 20 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 20, 255, 15, 32, 0 + createsprite gAttackOrderParticleSpriteTemplate, ANIM_ATTACKER, 2, 110, 10, 8, 32, 20 waitforvisualfinish loadspritegfx ANIM_TAG_BLUE_STAR waitforvisualfinish - clearmonbg ANIM_ATK_PARTNER + clearmonbg ANIM_DEF_PARTNER blendoff delay 1 call HealingEffect @@ -3577,6 +3576,10 @@ gBattleAnimMove_DoubleHit:: playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 8 waitforvisualfinish + @ why does the anim hit twice? + @ that just means the anim plays 4 times + @ which doesn't make sense + @ I don't know, but I'm not gonna argue with it createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 6 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 2 @@ -3668,7 +3671,7 @@ gBattleAnimMove_LunarDance:: loadspritegfx ANIM_TAG_GREEN_SPARKLE loadspritegfx ANIM_TAG_HOLLOW_ORB setalpha 0, 16 - createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 16, 0 + createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 16, RGB_BLACK waitforvisualfinish createsprite gMoonSpriteTemplate, ANIM_ATTACKER, 2, 120, 56 createvisualtask AnimTask_AlphaFadeIn, 3, 0, 16, 16, 0, 1 @@ -3684,8 +3687,8 @@ gBattleAnimMove_LunarDance:: delay 30 createsprite gMoonlightSparkleSpriteTemplate, ANIM_ATTACKER, 40, 10, 0 delay 20 - createvisualtask AnimTask_MoonlightEndFade, 2, 0 - createvisualtask AnimTask_DragonDanceWaver, 5, 0 + createvisualtask AnimTask_MoonlightEndFade, 2 + createvisualtask AnimTask_DragonDanceWaver, 5 playsewithpan 203, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(0, 0, 19), 14, 0, 3 @@ -3700,7 +3703,6 @@ gBattleAnimMove_LunarDance:: delay 30 playsewithpan 203, SOUND_PAN_ATTACKER waitforvisualfinish - clearmonbg ANIM_ATTACKER delay 1 end @@ -3877,7 +3879,7 @@ gBattleAnimMove_OminousWind:: delay 0 createvisualtask AnimTask_BlendBattleAnimPalExclude, 10, 1, 0, 0, 0, 0 delay 0 - createvisualtask AnimTask_GetAttackerSide, 2, 0 + createvisualtask AnimTask_GetAttackerSide, 2 jumpargeq 7, 1, OminousWindFadeToBg fadetobg BG_GHOST waitbgfadeout @@ -5731,7 +5733,6 @@ gBattleAnimMove_Bulldoze:: gBattleAnimMove_FrostBreath:: loadspritegfx ANIM_TAG_ICE_CHUNK loadspritegfx ANIM_TAG_SMALL_EMBER - loadspritegfx ANIM_TAG_FIRE_PLUME fadetobg BG_ICE waitbgfadeout createvisualtask AnimTask_StartSlidingBg, 0x5, 0x300, 0x0, 0x0, 0xffff @@ -5743,6 +5744,8 @@ gBattleAnimMove_FrostBreath:: waitforvisualfinish createsprite gFrostBreathBlueBreathTemplate, ANIM_TARGET, 2, 0x1e, 0xf, 0x0, 0xa, 0xa waitforvisualfinish + unloadspritegfx ANIM_TAG_SMALL_EMBER + loadspritegfx ANIM_TAG_FIRE_PLUME loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 0xb, 0x3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0x5, 0x0 @@ -7826,7 +7829,6 @@ gBattleAnimMove_ParabolicCharge:: loadspritegfx ANIM_TAG_SPARK loadspritegfx ANIM_TAG_LIGHTNING loadspritegfx ANIM_TAG_ORBS - loadspritegfx ANIM_TAG_BLUE_STAR monbg ANIM_ATTACKER setalpha 12, 8 createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 0, 6, RGB(18, 16, 3) @@ -7849,6 +7851,11 @@ gBattleAnimMove_ParabolicCharge:: createvisualtask AnimTask_BlendBattleAnimPal, 5, 4, 0, 0, 0, RGB_BLACK ParabolicChargeHeal: waitforvisualfinish + unloadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT + unloadspritegfx ANIM_TAG_ELECTRIC_ORBS + unloadspritegfx ANIM_TAG_SPARK + unloadspritegfx ANIM_TAG_LIGHTNING + loadspritegfx ANIM_TAG_BLUE_STAR clearmonbg ANIM_ATTACKER waitforvisualfinish call HealingEffect @@ -12078,7 +12085,7 @@ PrismaticLaserRain: return gBattleAnimMove_SpectralThief:: - choosetwoturnanim SpectralThiefSteal SpectralThiefUnleash + choosetwoturnanim SpectralThiefUnleash SpectralThiefSteal SpectralThiefUnleash: loadspritegfx ANIM_TAG_HANDS_AND_FEET @Black Colour loadspritegfx ANIM_TAG_QUICK_GUARD_HAND @Black Colour @@ -12422,14 +12429,11 @@ ZingZapSparks2: return gBattleAnimMove_NaturesMadness:: - loadspritegfx ANIM_TAG_ICE_CRYSTALS @small circles - loadspritegfx ANIM_TAG_THIN_RING @ring - loadspritegfx ANIM_TAG_SPARKLE_2 @stars - loadspritegfx ANIM_TAG_PINK_PETAL @pink - loadspritegfx ANIM_TAG_ICE_CHUNK @blue green - loadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT @charge - loadspritegfx ANIM_TAG_TEAL_ALERT @charge particles - loadspritegfx ANIM_TAG_ECLIPSING_ORB @blue green + loadspritegfx ANIM_TAG_ICE_CRYSTALS @small circles CrystalsTemplate + loadspritegfx ANIM_TAG_THIN_RING @ring PinkRingTemplate, GrayRingTemplate + loadspritegfx ANIM_TAG_SPARKLE_2 @stars PinkStarsTemplate + loadspritegfx ANIM_TAG_PINK_PETAL @pink PinkRingTemplate, PinkStarsTemplate + loadspritegfx ANIM_TAG_ICE_CHUNK @blue green CrystalsTemplate monbg ANIM_ATTACKER setalpha 14, 8 delay 0x1 @@ -12465,6 +12469,8 @@ gBattleAnimMove_NaturesMadness:: delay 0x1 monbg ANIM_TARGET waitforvisualfinish + unloadspritegfx ANIM_TAG_SPARKLE_2 + loadspritegfx ANIM_TAG_ECLIPSING_ORB @blue green grayRing createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER delay 0xe @@ -12474,6 +12480,8 @@ gBattleAnimMove_NaturesMadness:: createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER waitforvisualfinish + unloadspritegfx ANIM_TAG_ECLIPSING_ORB + loadspritegfx ANIM_TAG_SPARKLE_2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1F, 0x8 createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x1 @@ -12978,7 +12986,7 @@ gBattleAnimMove_GlitzyGlow:: createsprite gSynchronoiseYellowRingTemplate, ANIM_ATTACKER, 0, 25, 0, 0, 0, 0, 0, 1 delay 36 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, 0 @Darken waitforvisualfinish @@ -13248,7 +13256,6 @@ gBattleAnimMove_StuffCheeks:: loadspritegfx ANIM_TAG_BERRY_NORMAL loadspritegfx ANIM_TAG_SHARP_TEETH loadspritegfx ANIM_TAG_THIN_RING - loadspritegfx ANIM_TAG_SPARKLE_2 playsewithpan SE_M_METRONOME, 0xc0 createsprite gFloatingBerryTemplate, ANIM_ATTACKER, 1, 0x0 delay 0x45 @@ -13346,7 +13353,7 @@ gBattleAnimMove_MagicPowder:: gBattleAnimMove_DragonDarts:: loadspritegfx ANIM_TAG_DREEPY_SHINY loadspritegfx ANIM_TAG_DREEPY - loadspritegfx ANIM_TAG_AIR_WAVE + loadspritegfx ANIM_TAG_AIR_WAVE loadspritegfx ANIM_TAG_EXPLOSION playsewithpan SE_FALL, SOUND_PAN_ATTACKER createdragondartsprite ANIM_TARGET, 2, 0x0, 0x0, 0x19 @@ -13792,7 +13799,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 - createvisualtask AnimTask_ShakeBattleTerrain, 0x2, 0x1, 0x0, 0x6, 0x1 + createvisualtask AnimTask_ShakeBattlePlatforms, 0x2, 0x1, 0x0, 0x6, 0x1 createvisualtask SoundTask_WaitForCry, 0x5 return @@ -14142,9 +14149,9 @@ gBattleAnimMove_ExpandingForce:: createvisualtask AnimTask_BlendColorCycle, 2, F_PAL_ATTACKER, F_PAL_ATTACKER, 2, 0, 8, RGB(31, 23, 0) waitforvisualfinish playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET - choosetwoturnanim EXPANDING_FORCE_SINGLE_TARGET EXPANDING_FORCE_BOTH_TARGETS + choosetwoturnanim ExpandingForceSingleTarget ExpandingForceBothTargets -EXPANDING_FORCE_SINGLE_TARGET: +ExpandingForceSingleTarget: createsprite gSpriteTemplate_SpiritBreakChargeBall, ANIM_TARGET, 1, ANIM_TARGET waitforvisualfinish createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 0x2, 0x0, 0x1, 0x18, 0x1, 0x0 @@ -14154,7 +14161,7 @@ EXPANDING_FORCE_SINGLE_TARGET: clearmonbg ANIM_DEF_PARTNER end -EXPANDING_FORCE_BOTH_TARGETS: +ExpandingForceBothTargets: createsprite gSpriteTemplate_SpiritBreakChargeBall, ANIM_TARGET, 1, ANIM_TARGET createsprite gSpriteTemplate_SpiritBreakChargeBall, ANIM_TARGET, 1, ANIM_DEF_PARTNER waitforvisualfinish @@ -14286,9 +14293,9 @@ gBattleAnimMove_MeteorBeam:: loadspritegfx ANIM_TAG_ROCKS fadetobg BG_COSMIC waitbgfadeout - choosetwoturnanim METEOR_BEAM_CHARGE METEOR_BEAM_BLAST + choosetwoturnanim MeteorBeamCharge MeteorBeamBlast -METEOR_BEAM_CHARGE: +MeteorBeamCharge: createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xFC00, FALSE, 0xffff waitbgfadein monbg ANIM_ATK_PARTNER @@ -14301,7 +14308,7 @@ METEOR_BEAM_CHARGE: call UnsetPsychicBg end -METEOR_BEAM_BLAST: +MeteorBeamBlast: createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf700, 0x0, TRUE, 0xffff @;Scroll right/left waitbgfadein monbg ANIM_TARGET @@ -14428,7 +14435,7 @@ gBattleAnimMove_RisingVoltage:: loadspritegfx ANIM_TAG_LIGHTNING monbg ANIM_ATTACKER setalpha 12, 8 - createvisualtask AnimTask_GetBattleTerrain, 0x5, + createvisualtask AnimTask_GetBattleEnvironment, 0x5, jumpargeq 0x0, BG_ELECTRIC_TERRAIN, ANIM_RISING_VOLTAGE_STRONGER ANIM_RISING_VOLTAGE_NORMAL: createvisualtask AnimTask_BlendBattleAnimPal, 0x2, F_PAL_BG, 0x1, 0x0, 0x4, 0x0 @;To black @@ -15397,7 +15404,7 @@ gBattleAnimMove_AstralBarrage:: setalpha 12, 8 fadetobg BG_GHOST waitbgfadein - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 5, 20, 0, 5 createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120 delay 8 @@ -16269,7 +16276,6 @@ SandsearStormFireSpin: gBattleAnimMove_LunarBlessing:: loadspritegfx ANIM_TAG_BLUE_STAR loadspritegfx ANIM_TAG_MOON - loadspritegfx ANIM_TAG_SPARKLE_2 loadspritegfx ANIM_TAG_GUARD_RING loadspritegfx ANIM_TAG_SMALL_EMBER @Yellow colour for ring monbg ANIM_ATK_PARTNER @@ -16610,7 +16616,7 @@ gBattleAnimMove_AlluringVoice:: createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1 createvisualtask SoundTask_WaitForCry, 5 delay 0xA createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 26, 1 @@ -16865,6 +16871,7 @@ gBattleAnimMove_JetPunch:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB_BLUE delay 8 createvisualtask AnimTask_ExtremeSpeedMonReappear, 2 + setarg 0x7, 0x1000 createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0x14, 0xffec, 0x14, ANIM_TARGET createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0xa, 0xa, 0x14, ANIM_TARGET createsprite gFistFootSpriteTemplate, ANIM_TARGET, 3, 0, 0, 8, 1, 0 @@ -17219,7 +17226,7 @@ TorchSongEffect: createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1 createvisualtask SoundTask_WaitForCry, 5 return @@ -17700,7 +17707,7 @@ gBattleAnimMove_MakeItRain:: jumprettrue MakingItRainOnPlayer MakingItRainContinue: waitbgfadeout - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 loopsewithpan SE_M_PAY_DAY, SOUND_PAN_TARGET, 8, 15 createsprite gMakingItRainTemplate, ANIM_TARGET, 2, -5, 0, -5, 1 delay 2 @@ -20066,7 +20073,7 @@ gBattleAnimMove_MeanLook:: gBattleAnimMove_RockThrow:: loadspritegfx ANIM_TAG_ROCKS - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_TARGET, 2, 6, 1, 15, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 0 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 6 @@ -20088,7 +20095,7 @@ gBattleAnimMove_RockThrow:: gBattleAnimMove_RockSlide:: loadspritegfx ANIM_TAG_ROCKS monbg ANIM_DEF_PARTNER - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 7, 1, 11, 1 createsprite gFallingRockSpriteTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 @@ -20882,7 +20889,7 @@ gBattleAnimMove_Barrage:: createvisualtask AnimTask_BarrageBall, 3 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 24 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 40, 1 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 @@ -21220,7 +21227,7 @@ gBattleAnimMove_Rollout:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET setalpha 12, 8 - createvisualtask AnimTask_Rollout, 2 + createvisualtask AnimTask_Rollout, 2, 0 waitforvisualfinish createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, FALSE, 1, 30, 1, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, ANIM_TARGET, 2 @@ -21629,7 +21636,7 @@ gBattleAnimMove_Superpower:: createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 20 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 180, 1 createvisualtask SoundTask_PlaySE2WithPanning, 5, SE_M_EARTHQUAKE, 0 delay 40 createsprite gSuperpowerRockSpriteTemplate, ANIM_ATTACKER, 41, 200, 96, 1, 120 @@ -22980,7 +22987,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 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 14, 0, 0 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 @@ -24828,7 +24835,7 @@ gBattleAnimMove_AncientPower:: loadspritegfx ANIM_TAG_IMPACT monbg ANIM_DEF_PARTNER setalpha 12, 8 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, 4, 1, 10, 1 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 @@ -25253,14 +25260,14 @@ gBattleAnimMove_MetalClaw:: playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 delay 8 createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 6, 4 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 waitforvisualfinish end @@ -26476,7 +26483,7 @@ HyperVoiceEffect: createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 6, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 6, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 1, 0, 6, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 1, 0, 6, 1 createvisualtask SoundTask_WaitForCry, 5 return @@ -26598,7 +26605,7 @@ gBattleAnimMove_DragonClaw:: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, -10, 10, 0 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 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 @@ -26611,7 +26618,7 @@ gBattleAnimMove_DragonClaw:: createvisualtask SoundTask_PlaySE1WithPanning, 5, SE_M_RAZOR_WIND, SOUND_PAN_TARGET createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, -10, 1 createsprite gClawSlashSpriteTemplate, ANIM_TARGET, 2, 10, 10, 1 - createsprite gShakeMonOrTerrainSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 + createsprite gShakeMonOrPlatformSpriteTemplate, ANIM_ATTACKER, 2, -4, 1, 10, 3, 1 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 @@ -27072,7 +27079,7 @@ gBattleAnimMove_BlastBurn:: createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 2, -4, 3, ANIM_TARGET, 0 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 12, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 @@ -27086,32 +27093,32 @@ gBattleAnimMove_BlastBurn:: gBattleAnimMove_RockTomb:: loadspritegfx ANIM_TAG_X_SIGN loadspritegfx ANIM_TAG_ROCKS - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 waitforvisualfinish createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, 20, 12, 64, 114, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -20, 12, 64, 98, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 66, 3, 6, 64, 82, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 8 createsprite gRockTombRockSpriteTemplate, ANIM_TARGET, 2, -3, 13, 64, 66, 0 delay 8 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 0, 2, 3, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 0, 2, 3, 1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET delay 24 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET createsprite gRedXSpriteTemplate, ANIM_TARGET, 5, ANIM_TARGET, 50 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 3, 0, 20, 1 - createvisualtask AnimTask_ShakeBattleTerrain, 2, 2, 0, 10, 1 + createvisualtask AnimTask_ShakeBattlePlatforms, 2, 2, 0, 10, 1 waitforvisualfinish end @@ -27609,42 +27616,42 @@ gBattleAnimMove_SecretPower:: jumpargeq 0, STATUS_FIELD_GRASSY_TERRAIN, gBattleAnimMove_NeedleArm jumpargeq 0, STATUS_FIELD_ELECTRIC_TERRAIN, gBattleAnimMove_ThunderShock jumpargeq 0, STATUS_FIELD_PSYCHIC_TERRAIN, gBattleAnimMove_Confusion - createvisualtask AnimTask_GetBattleTerrain, 5 - jumpargeq 0, BATTLE_TERRAIN_GRASS, gBattleAnimMove_NeedleArm - jumpargeq 0, BATTLE_TERRAIN_LONG_GRASS, gBattleAnimMove_MagicalLeaf - jumpargeq 0, BATTLE_TERRAIN_SAND, gBattleAnimMove_MudShot - jumpargeq 0, BATTLE_TERRAIN_UNDERWATER, gBattleAnimMove_Waterfall - jumpargeq 0, BATTLE_TERRAIN_WATER, gBattleAnimMove_Surf - jumpargeq 0, BATTLE_TERRAIN_POND, gBattleAnimMove_BubbleBeam - jumpargeq 0, BATTLE_TERRAIN_MOUNTAIN, gBattleAnimMove_RockThrow - jumpargeq 0, BATTLE_TERRAIN_CAVE, gBattleAnimMove_Bite - jumpargeq 0, BATTLE_TERRAIN_BUILDING, gBattleAnimMove_Strength - jumpargeq 0, BATTLE_TERRAIN_SOARING, gBattleAnimMove_Gust - jumpargeq 0, BATTLE_TERRAIN_SKY_PILLAR, gBattleAnimMove_Gust - jumpargeq 0, BATTLE_TERRAIN_BURIAL_GROUND, gBattleAnimMove_ShadowSneak - jumpargeq 0, BATTLE_TERRAIN_PUDDLE, gBattleAnimMove_MudShot - jumpargeq 0, BATTLE_TERRAIN_MARSH, gBattleAnimMove_MudShot - jumpargeq 0, BATTLE_TERRAIN_SWAMP, gBattleAnimMove_MudShot - jumpargeq 0, BATTLE_TERRAIN_ICE, gBattleAnimMove_IceShard - jumpargeq 0, BATTLE_TERRAIN_VOLCANO, gBattleAnimMove_Incinerate - jumpargeq 0, BATTLE_TERRAIN_DISTORTION_WORLD, gBattleAnimMove_Pound - jumpargeq 0, BATTLE_TERRAIN_SPACE, gBattleAnimMove_Swift - jumpargeq 0, BATTLE_TERRAIN_ULTRA_SPACE, gBattleAnimMove_Psywave + createvisualtask AnimTask_GetBattleEnvironment, 5 + jumpargeq 0, BATTLE_ENVIRONMENT_GRASS, gBattleAnimMove_NeedleArm + jumpargeq 0, BATTLE_ENVIRONMENT_LONG_GRASS, gBattleAnimMove_MagicalLeaf + jumpargeq 0, BATTLE_ENVIRONMENT_SAND, gBattleAnimMove_MudShot + jumpargeq 0, BATTLE_ENVIRONMENT_UNDERWATER, gBattleAnimMove_Waterfall + jumpargeq 0, BATTLE_ENVIRONMENT_WATER, gBattleAnimMove_Surf + jumpargeq 0, BATTLE_ENVIRONMENT_POND, gBattleAnimMove_BubbleBeam + jumpargeq 0, BATTLE_ENVIRONMENT_MOUNTAIN, gBattleAnimMove_RockThrow + jumpargeq 0, BATTLE_ENVIRONMENT_CAVE, gBattleAnimMove_Bite + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, gBattleAnimMove_Strength + jumpargeq 0, BATTLE_ENVIRONMENT_SOARING, gBattleAnimMove_Gust + jumpargeq 0, BATTLE_ENVIRONMENT_SKY_PILLAR, gBattleAnimMove_Gust + jumpargeq 0, BATTLE_ENVIRONMENT_BURIAL_GROUND, gBattleAnimMove_ShadowSneak + jumpargeq 0, BATTLE_ENVIRONMENT_PUDDLE, gBattleAnimMove_MudShot + jumpargeq 0, BATTLE_ENVIRONMENT_MARSH, gBattleAnimMove_MudShot + jumpargeq 0, BATTLE_ENVIRONMENT_SWAMP, gBattleAnimMove_MudShot + jumpargeq 0, BATTLE_ENVIRONMENT_ICE, gBattleAnimMove_IceShard + jumpargeq 0, BATTLE_ENVIRONMENT_VOLCANO, gBattleAnimMove_Incinerate + jumpargeq 0, BATTLE_ENVIRONMENT_DISTORTION_WORLD, gBattleAnimMove_Pound + jumpargeq 0, BATTLE_ENVIRONMENT_SPACE, gBattleAnimMove_Swift + jumpargeq 0, BATTLE_ENVIRONMENT_ULTRA_SPACE, gBattleAnimMove_Psywave .if B_SECRET_POWER_ANIMATION >= GEN_7 - jumpargeq 0, BATTLE_TERRAIN_SNOW, gBattleAnimMove_IceShard - jumpargeq 0, BATTLE_TERRAIN_BUILDING, gBattleAnimMove_SpitUp + jumpargeq 0, BATTLE_ENVIRONMENT_SNOW, gBattleAnimMove_IceShard + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, gBattleAnimMove_SpitUp goto gBattleAnimMove_SpitUp .elseif B_SECRET_POWER_ANIMATION >= GEN_6 - jumpargeq 0, BATTLE_TERRAIN_SNOW, gBattleAnimMove_Avalanche - jumpargeq 0, BATTLE_TERRAIN_BUILDING, gBattleAnimMove_BodySlam + jumpargeq 0, BATTLE_ENVIRONMENT_SNOW, gBattleAnimMove_Avalanche + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, gBattleAnimMove_BodySlam goto gBattleAnimMove_BodySlam .elseif B_SECRET_POWER_ANIMATION >= GEN_4 - jumpargeq 0, BATTLE_TERRAIN_SNOW, gBattleAnimMove_Avalanche - jumpargeq 0, BATTLE_TERRAIN_BUILDING, gBattleAnimMove_BodySlam + jumpargeq 0, BATTLE_ENVIRONMENT_SNOW, gBattleAnimMove_Avalanche + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, gBattleAnimMove_BodySlam goto gBattleAnimMove_MudSlap .else - jumpargeq 0, BATTLE_TERRAIN_SNOW, gBattleAnimMove_Avalanche - jumpargeq 0, BATTLE_TERRAIN_BUILDING, gBattleAnimMove_Strength + jumpargeq 0, BATTLE_ENVIRONMENT_SNOW, gBattleAnimMove_Avalanche + jumpargeq 0, BATTLE_ENVIRONMENT_BUILDING, gBattleAnimMove_Strength goto gBattleAnimMove_Slam .endif @@ -29802,13 +29809,13 @@ gBattleAnimMove_ContinentalCrush:: jumpargeq 0x0 0x0 ContinentalCrushDay jumpargeq 0x0 0x2 ContinentalCrushAfternoon ContinentalCrushNight: - fadetobg BG_BLUE_SKY_NIGHT + fadetobg BG_ROCK_FIELD_NIGHT goto FinishContinentalCrush ContinentalCrushDay: - fadetobg BG_BLUE_SKY_DAY + fadetobg BG_ROCK_FIELD_DAY goto FinishContinentalCrush ContinentalCrushAfternoon: - fadetobg BG_BLUE_SKY_AFTERNOON + fadetobg BG_ROCK_FIELD_AFTERNOON FinishContinentalCrush: delay 0x18 invisible ANIM_TARGET @@ -31596,13 +31603,15 @@ gBattleAnimMove_BlackHoleEclipse:: delay 0x8 createsprite gBlackHoleEclipseHoleShrinkSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_TARGET, 0x0 waitforvisualfinish + unloadspritegfx ANIM_TAG_THIN_RING + unloadspritegfx ANIM_TAG_ICE_CHUNK loadspritegfx ANIM_TAG_SPARKLE_4 @detect createsprite gTargetTwinkleSpriteTemplate, ANIM_ATTACKER, 13, 0x0, 0x0, ANIM_TARGET @detect star delay 0x2 + unloadspritegfx ANIM_TAG_VERTICAL_HEX @red unloadspritegfx ANIM_TAG_SHADOW_BALL - unloadspritegfx ANIM_TAG_THIN_RING - unloadspritegfx ANIM_TAG_ICE_CHUNK unloadspritegfx ANIM_TAG_BLACK_BALL_2 + unloadspritegfx ANIM_TAG_FOCUS_ENERGY loadspritegfx ANIM_TAG_EXPLOSION_2 call BlackHoleEclipseExplosion createvisualtask AnimTask_BlendBattleAnimPal, 0xa, (F_PAL_BG | F_PAL_BATTLERS_2), 0x1, 0x0, 0x10, 0x7fff @ bg to white pal @@ -31831,13 +31840,13 @@ gBattleAnimMove_Catastropika:: jumpargeq 0x0 0x0 CatastropikaDaytime jumpargeq 0x0 0x2 CatastropikaAfternoon CatastropikaNight: - fadetobg BG_BLUE_SKY_NIGHT + fadetobg BG_MAX_LIGHTNING goto CatastropikaFinish CatastropikaDaytime: - fadetobg BG_BLUE_SKY_DAY + fadetobg BG_MAX_LIGHTNING goto CatastropikaFinish CatastropikaAfternoon: - fadetobg BG_BLUE_SKY_AFTERNOON + fadetobg BG_MAX_LIGHTNING CatastropikaFinish: waitbgfadeout visible ANIM_ATTACKER @@ -32273,12 +32282,12 @@ gBattleAnimMove_StokedSparksurfer:: jumpargeq 0x0 0x0 StokedSparksurferDay jumpargeq 0x0 0x2 StokedSparksurferAfternoon StokedSparksurferNight: - fadetobg BG_BLUE_SKY_NIGHT + fadetobg BG_MAX_LIGHTNING goto StokedSparksurferFinish StokedSparksurferAfternoon: - fadetobg BG_BLUE_SKY_AFTERNOON + fadetobg BG_MAX_LIGHTNING StokedSparksurferDay: - fadetobg BG_BLUE_SKY_DAY + fadetobg BG_MAX_LIGHTNING StokedSparksurferFinish: waitbgfadeout visible ANIM_ATTACKER @@ -33434,20 +33443,24 @@ OceanicOperettaExplosion: gBattleAnimMove_SplinteredStormshards:: + createvisualtask AnimTask_GetLycanrocForm, 0x2 + jumpargeq 0x0 0x0 SplinteredStormshardsDayForme + jumpargeq 0x0 0x2 SplinteredStormshardsDuskForme +SplinteredStormshardsNightForme: + fadetobg BG_ROCK_FIELD_NIGHT + goto SplinteredStormshardsFinishFade +SplinteredStormshardsDayForme: + fadetobg BG_ROCK_FIELD_DAY + goto SplinteredStormshardsFinishFade +SplinteredStormshardsDuskForme: + fadetobg BG_ROCK_FIELD_AFTERNOON +SplinteredStormshardsFinishFade: + waitbgfadeout + waitforvisualfinish loadspritegfx ANIM_TAG_ROCKS @rock loadspritegfx ANIM_TAG_ICICLE_SPEAR @spear createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA waitforvisualfinish - createvisualtask AnimTask_GetLycanrocForm, 0x2 - jumpargeq 0x0 0x1 SplinteredStormshardsNightForme -SplinteredStormshardsDayForme: - createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x1, 0x0, 0xc, 0x5bff - goto SplinteredStormshardsFinishFade -SplinteredStormshardsNightForme: - createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x1, 0x0, 0xc, 0x0000 -SplinteredStormshardsFinishFade: - waitforvisualfinish - setalpha 12, 8 playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_IsTargetPlayerSide, 0x2 jumpargeq 0x7 ANIM_TARGET SplinteredStormshardsByOpponent @@ -33456,7 +33469,6 @@ SplinteredStormshardsByPlayer: call SplinteredStormshardsPlayer_Rising1 delay 0x2 loadspritegfx ANIM_TAG_ROUND_SHADOW @fly - invisible ANIM_TARGET playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 call SplinteredStormshardsPlayer_Rising1 @@ -33471,8 +33483,6 @@ SplinteredStormshardsByPlayer: call SplinteredStormshardsPlayer_Rising1 delay 16 waitforvisualfinish - visible ANIM_TARGET - call SplinteredStormshardsFixBackgroundFade waitforvisualfinish loadspritegfx ANIM_TAG_METEOR @superpower loadspritegfx ANIM_TAG_EXPLOSION @explosion @@ -33500,6 +33510,8 @@ SplinteredStormshardsEnd: waitforvisualfinish createvisualtask AnimTask_AllBattlersVisible, 0xA waitforvisualfinish + restorebg + waitbgfadein waitforvisualfinish end SplinteredStormshardsExplosionOpponent: @@ -33539,7 +33551,6 @@ SplinteredStormshardsByOpponent: call SplinteredStormshardsOpponent_Rising1 delay 0x2 loadspritegfx ANIM_TAG_ROUND_SHADOW @fly - invisible ANIM_TARGET createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 call SplinteredStormshardsOpponent_Rising1 call SplinteredStormshardsOpponent_Rising2 @@ -33553,10 +33564,6 @@ SplinteredStormshardsByOpponent: call SplinteredStormshardsOpponent_Rising1 delay 16 waitforvisualfinish - visible ANIM_TARGET - call SplinteredStormshardsFixBackgroundFade - waitforvisualfinish - visible ANIM_TARGET loadspritegfx ANIM_TAG_METEOR @superpower loadspritegfx ANIM_TAG_EXPLOSION @explosion playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER @@ -33680,16 +33687,6 @@ SplinteredStormshardsOpponent_Rising2: createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xdc, 0x40, 0xdc, 0x0, 0x30 delay 0x2 return -SplinteredStormshardsFixBackgroundFade: - createvisualtask AnimTask_GetLycanrocForm, 0x2 - jumpargeq 0x0 0x1 SplinteredStormshardsNightFormeReturn -SplinteredStormshardsDayFormeReturn: - createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x1, 0xc, 0x0, 0x5bff - goto SplinteredStormshardsFinishFadeReturn -SplinteredStormshardsNightFormeReturn: - createvisualtask AnimTask_BlendBattleAnimPal, 0xa, F_PAL_BG, 0x1, 0xc, 0x0, 0x0000 -SplinteredStormshardsFinishFadeReturn: - return gBattleAnimMove_LetsSnuggleForever:: diff --git a/graphics/battle_anims/backgrounds/rock_afternoon.pal b/graphics/battle_anims/backgrounds/rock_afternoon.pal new file mode 100644 index 000000000..eb8aaa190 --- /dev/null +++ b/graphics/battle_anims/backgrounds/rock_afternoon.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 255 +246 189 49 +246 172 41 +238 156 32 +222 131 24 +205 115 8 +246 172 41 +246 172 41 +246 172 41 +246 172 41 +167 81 31 +139 74 49 +123 65 32 +98 49 32 +82 32 16 +74 24 8 diff --git a/graphics/battle_anims/backgrounds/rock_day.pal b/graphics/battle_anims/backgrounds/rock_day.pal new file mode 100644 index 000000000..a67974fd0 --- /dev/null +++ b/graphics/battle_anims/backgrounds/rock_day.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +0 0 255 +129 196 237 +152 208 243 +174 221 250 +240 186 88 +232 144 39 +152 208 243 +152 208 243 +255 255 255 +255 241 188 +212 111 53 +227 148 56 +197 101 18 +163 70 36 +128 57 35 +113 41 18 diff --git a/graphics/battle_anims/backgrounds/rock_field.bin b/graphics/battle_anims/backgrounds/rock_field.bin new file mode 100644 index 0000000000000000000000000000000000000000..3395d4c51a2dee32caeebba8752c9ea776e54a36 GIT binary patch literal 896 zcmbu7RcuvJ5Jh?QQg<(F+P=CgZE<%CR$KzX3GP}n5Zpbu1$W8A-7OH@ibHUh^Dg)G zi$AiGnSIWlJ?DO01BU;?3Ttez#SVKMaHJ?sIOBpVZn)!tr@{+weDK8&e*)BOAVCBZ zLMX)mA&hV$RJUOKhcbJSL=jC4vBVKi0*M$&BAFCYNh6(%!klH3kV%$)n@tY6l%OP~ zC`}p4QcicuQ-O+9Qm4v=8!X>Yg{oB3Z>v*-n$)5;b*M`{?Y2G*XhC9jzvzW~s<}#1@EMOsvw5i1`VJXX4 z&I(qtiq))PE$djXxf@j7$R;+kg{^F3J3ACR*~M=5uvfYJ*pG<=9ORJdCJu9iqa4%p zaZadyl2e@K3}-pVc`k5~OI+p(SGlI#>)g<0Z*q&Ps&9G6dp_`yPkiPJU$vw;{f+PZ;3vQMO%X9j0ajuyHe#!=6MJzG zM{yEoaS>N>6L;~Dzpq-Vr^*<_OT5KL%z15?Itk|o6@TXG~<{s3zG-PZsB literal 0 HcmV?d00001 diff --git a/graphics/battle_anims/backgrounds/rock_field.png b/graphics/battle_anims/backgrounds/rock_field.png new file mode 100644 index 0000000000000000000000000000000000000000..c3545338ef232a48ebc05b42f9f7a47643aa7ded GIT binary patch literal 2818 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 Z=Xy7|(M@i4i(B31c6YebUG8>|{{R5J02=@R diff --git a/graphics/battle_anims/backgrounds/sky_day.pal b/graphics/battle_anims/backgrounds/sky_day.pal deleted file mode 100644 index c0ea00a0a..000000000 --- a/graphics/battle_anims/backgrounds/sky_day.pal +++ /dev/null @@ -1,19 +0,0 @@ -JASC-PAL -0100 -16 -0 0 0 -211 216 222 -198 208 221 -184 199 218 -170 191 215 -156 181 212 -142 172 207 -128 162 203 -117 154 198 -104 147 199 -101 141 189 -89 137 194 -82 127 179 -77 128 190 -63 117 184 -52 106 169 diff --git a/graphics/battle_anims/backgrounds/sky_day.png b/graphics/battle_anims/backgrounds/sky_day.png deleted file mode 100644 index c03ce283bbeb982978b3c751f4cae35af3389e06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7508 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 e<>2Zc!TUeBf!?Ut`OR