diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3b4a1ea13f..a37a6e49e9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -7,69 +7,217 @@ on: - upcoming pull_request: +env: + GAME_REVISION: 0 + GAME_LANGUAGE: ENGLISH + COMPARE: 0 + UNUSED_ERROR: 1 + DEPRECATED_ERROR: 1 + jobs: - build: + build-emerald: if: github.actor != 'allcontributors[bot]' runs-on: ubuntu-latest - env: - GAME_REVISION: 0 - GAME_LANGUAGE: ENGLISH - COMPARE: 0 - UNUSED_ERROR: 1 - DEPRECATED_ERROR: 1 steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Install binutils run: | - sudo apt update - sudo apt install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 - # build-essential and git are already installed + sudo apt-get update + sudo apt-get install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 + + - name: Cache build tools + uses: actions/cache@v4 + with: + path: | + tools/bin2c/bin2c + tools/gbafix/gbafix + tools/gbagfx/gbagfx + tools/jsonproc/jsonproc + tools/mapjson/mapjson + tools/mid2agb/mid2agb + tools/preproc/preproc + tools/ramscrgen/ramscrgen + tools/rsfont/rsfont + tools/scaninc/scaninc + tools/trainerproc/trainerproc + tools/compresSmol/compresSmol + tools/compresSmol/compresSmolTilemap + tools/wav2agb/wav2agb + key: tools-${{ runner.os }}-${{ hashFiles('tools/*/Makefile', 'tools/**/*.c', 'tools/**/*.cpp', 'tools/**/*.h') }} - name: ROM (Emerald) env: - COMPARE: 0 GAME_VERSION: EMERALD - run: make -j${nproc} -O all + run: make -j$(nproc) -O all + + build-firered: + if: github.actor != 'allcontributors[bot]' + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install binutils + run: | + sudo apt-get update + sudo apt-get install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 + + - name: Cache build tools + uses: actions/cache@v4 + with: + path: | + tools/bin2c/bin2c + tools/gbafix/gbafix + tools/gbagfx/gbagfx + tools/jsonproc/jsonproc + tools/mapjson/mapjson + tools/mid2agb/mid2agb + tools/preproc/preproc + tools/ramscrgen/ramscrgen + tools/rsfont/rsfont + tools/scaninc/scaninc + tools/trainerproc/trainerproc + tools/compresSmol/compresSmol + tools/compresSmol/compresSmolTilemap + tools/wav2agb/wav2agb + key: tools-${{ runner.os }}-${{ hashFiles('tools/*/Makefile', 'tools/**/*.c', 'tools/**/*.cpp', 'tools/**/*.h') }} - name: ROM (Firered) - env: - COMPARE: 0 + run: make firered -j$(nproc) -O + + build-leafgreen: + if: github.actor != 'allcontributors[bot]' + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install binutils run: | - make firered -j${nproc} -O + sudo apt-get update + sudo apt-get install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 + + - name: Cache build tools + uses: actions/cache@v4 + with: + path: | + tools/bin2c/bin2c + tools/gbafix/gbafix + tools/gbagfx/gbagfx + tools/jsonproc/jsonproc + tools/mapjson/mapjson + tools/mid2agb/mid2agb + tools/preproc/preproc + tools/ramscrgen/ramscrgen + tools/rsfont/rsfont + tools/scaninc/scaninc + tools/trainerproc/trainerproc + tools/compresSmol/compresSmol + tools/compresSmol/compresSmolTilemap + tools/wav2agb/wav2agb + key: tools-${{ runner.os }}-${{ hashFiles('tools/*/Makefile', 'tools/**/*.c', 'tools/**/*.cpp', 'tools/**/*.h') }} - name: ROM (Leafgreen) - env: - COMPARE: 0 + run: make leafgreen -j$(nproc) -O + + release: + if: github.actor != 'allcontributors[bot]' + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install binutils run: | - make leafgreen -j${nproc} -O + sudo apt-get update + sudo apt-get install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 + + - name: Cache build tools + uses: actions/cache@v4 + with: + path: | + tools/bin2c/bin2c + tools/gbafix/gbafix + tools/gbagfx/gbagfx + tools/jsonproc/jsonproc + tools/mapjson/mapjson + tools/mid2agb/mid2agb + tools/preproc/preproc + tools/ramscrgen/ramscrgen + tools/rsfont/rsfont + tools/scaninc/scaninc + tools/trainerproc/trainerproc + tools/compresSmol/compresSmol + tools/compresSmol/compresSmolTilemap + tools/wav2agb/wav2agb + key: tools-${{ runner.os }}-${{ hashFiles('tools/*/Makefile', 'tools/**/*.c', 'tools/**/*.cpp', 'tools/**/*.h') }} - name: Release env: GAME_VERSION: EMERALD + run: make -j$(nproc) release + + test: + if: github.actor != 'allcontributors[bot]' + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install binutils run: | - make tidy - make -j${nproc} release - # make tidy to purge previous build + sudo apt-get update + sudo apt-get install -y binutils-arm-none-eabi gcc-arm-none-eabi libnewlib-arm-none-eabi libpng-dev python3 + + - name: Cache build tools + uses: actions/cache@v4 + with: + path: | + tools/bin2c/bin2c + tools/gbafix/gbafix + tools/gbagfx/gbagfx + tools/jsonproc/jsonproc + tools/mapjson/mapjson + tools/mid2agb/mid2agb + tools/preproc/preproc + tools/ramscrgen/ramscrgen + tools/rsfont/rsfont + tools/scaninc/scaninc + tools/trainerproc/trainerproc + tools/compresSmol/compresSmol + tools/compresSmol/compresSmolTilemap + tools/wav2agb/wav2agb + tools/patchelf/patchelf + tools/mgba-rom-test-hydra/mgba-rom-test-hydra + key: tools-check-${{ runner.os }}-${{ hashFiles('tools/*/Makefile', 'tools/**/*.c', 'tools/**/*.cpp', 'tools/**/*.h') }} - name: Test env: GAME_VERSION: EMERALD TEST: 1 - run: | - make -j${nproc} check + run: make -j$(nproc) check + + # Gate job: satisfies the "build" branch protection rule. + # Passes only when all parallel build/test jobs succeed. + build: + if: github.actor != 'allcontributors[bot]' + runs-on: ubuntu-latest + needs: [build-emerald, build-firered, build-leafgreen, release, test] + steps: + - name: All builds passed + run: echo "All builds and tests passed." docs_validate: if: github.actor != 'allcontributors[bot]' runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: Check that SUMMARY.md includes markdown doc files - run: | - .github/docs_validate/inclusive_summary.py + run: .github/docs_validate/inclusive_summary.py allcontributors: if: github.actor == 'allcontributors[bot]' @@ -78,4 +226,3 @@ jobs: steps: - name: Automatically pass for allcontributors run: echo "CI automatically passes for allcontributors" && exit 0 - diff --git a/Makefile b/Makefile index be29b2ea1e..c699272399 100644 --- a/Makefile +++ b/Makefile @@ -529,7 +529,7 @@ ifneq ($(NODEP),1) endif $(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s - $(PREPROC) $< charmap.txt | $(CPP) $(CPPFLAGS) $(INCLUDE_SCANINC_ARGS) - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@ + $(PREPROC) -s $< charmap.txt | $(CPP) $(CPPFLAGS) $(INCLUDE_SCANINC_ARGS) - | $(PREPROC) -ie $< charmap.txt | $(AS) $(ASFLAGS) -o $@ $(DATA_ASM_BUILDDIR)/%.d: $(DATA_ASM_SUBDIR)/%.s $(SCANINC) -M $@ $(INCLUDE_SCANINC_ARGS) -I "" $< diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 20d7de41a1..b2d6d4d9bb 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -155,7 +155,7 @@ gBattleAnimMove_Gravity:: createvisualtask AnimTask_ShakeMon, 2, ANIM_ATK_PARTNER, 3, 0, 1, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 1, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 1, 1 - setarg 0x7, 0xffff + setarg 7, -1 waitbgfadein waitforvisualfinish end @@ -507,7 +507,7 @@ gBattleAnimMove_CloseCombat:: clearmonbg ANIM_DEF_PARTNER blendoff delay 1 - setarg 7, 0x1000 + setarg 7, 4096 delay 1 end @@ -701,13 +701,13 @@ gBattleAnimMove_WringOut:: end gBattleAnimMove_PowerTrick:: - loopsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET 0xa 0x3 - createvisualtask AnimTask_UproarDistortion 0x2, 0x0 + loopsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET 10 3 + createvisualtask AnimTask_UproarDistortion 2, 0 createsprite gPowerTrickSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 0, SOUND_PAN_TARGET, 0 delay 16 - createvisualtask AnimTask_UproarDistortion 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion 2, 0 delay 16 - createvisualtask AnimTask_UproarDistortion 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion 2, 0 waitforvisualfinish end @@ -786,7 +786,7 @@ gBattleAnimMove_MeFirst:: delay 15 create_mimic_orb_sprite ANIM_TARGET, 2, initial_x=-12, initial_y=24 delay 10 - setarg 7, 0xFFFF + setarg 7, -1 waitforvisualfinish playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_WHITE @@ -1084,27 +1084,27 @@ gBattleAnimMove_MagnetRise:: blend_color_cycle selector=(F_PAL_BG | F_PAL_BATTLERS), delay=0, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 20) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -12, 4, 10, 10, 12, 6 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 4 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_BATTLERS), delay=0, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 20) delay 20 @@ -1347,7 +1347,7 @@ gBattleAnimMove_DarkPulse:: fadetobg BG_DARK waitbgfadein loopsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET, 20, 3 - createvisualtask AnimTask_SwayMon, ANIM_TARGET, 0, 6, 0x0800, 8, ANIM_TARGET + createvisualtask AnimTask_SwayMon, ANIM_TARGET, 0, 6, 2048, 8, ANIM_TARGET blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=4, initial_blend_y=0, target_blend_y=12, color=RGB(30, 10, 13) call DarkPulseParticle call DarkPulseParticle @@ -1958,7 +1958,7 @@ gBattleAnimMove_ThunderFang:: setalpha 12, 8 simple_palette_blend selector=F_PAL_BG, delay=2, initial_blend_y=0, target_blend_y=16, color=RGB_BLACK waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, -48 delay 1 @@ -1969,7 +1969,7 @@ gBattleAnimMove_ThunderFang:: call CreateBite delay 1 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=2 @@ -2049,16 +2049,16 @@ gBattleAnimMove_ShadowSneak:: clearmonbg ANIM_ATTACKER invisible ANIM_ATTACKER delay 1 - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x30 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 delay 48 blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=15, color=RGB_BLACK - createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 call ShadowSneakMovement - createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 10, 20, 0 call ShadowSneakMovement - createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, -5, 10, 0 call ShadowSneakMovement - createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gShadowSneakImpactSpriteTemplate, ANIM_TARGET, 2, 17, -12, 0 call ShadowSneakMovement waitforvisualfinish visible ANIM_ATTACKER @@ -2227,7 +2227,7 @@ gBattleAnimMove_FlashCannon:: loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 6, 5 waitforvisualfinish playsewithpan SE_M_PAY_DAY, SOUND_PAN_ATTACKER - createsprite gFlashCannonBallMovementTemplate, ANIM_TARGET, 2, 0, 0, 0x15 + createsprite gFlashCannonBallMovementTemplate, ANIM_TARGET, 2, 0, 0, 21 clearmonbg ANIM_ATTACKER waitforvisualfinish playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER @@ -2310,7 +2310,7 @@ gBattleAnimMove_DracoMeteor:: setalpha 12, 8 waitforvisualfinish playsewithpan SE_FALL, SOUND_PAN_ATTACKER - @setblends 0x80C + @setblends 2060 call DracoMeteor1 delay 7 call DracoMeteor2 @@ -2388,17 +2388,17 @@ gBattleAnimMove_Discharge:: delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 20) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 20) delay 10 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 20) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 waitbgfadein monbg ANIM_ATTACKER setalpha 12, 8 @@ -2644,7 +2644,7 @@ PowerWhipContinue: gBattleAnimMove_RockWrecker:: fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0xF000, 0, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -4096, 0, 0, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 @@ -2763,16 +2763,16 @@ gBattleAnimMove_IronHead:: gBattleAnimMove_MagnetBomb:: delay 0 playsewithpan 119, 192 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 playsewithpan 119, 192 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 playsewithpan 152, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 @@ -2922,30 +2922,30 @@ gBattleAnimMove_Chatter:: createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_GROWL - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 0x1d, -12, 0 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0xffe3, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 29, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, -29, 1 delay 16 createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_GROWL - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 12, 0xffe3, 1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 0xffe3, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 12, -29, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -29, -12, 0 delay 16 createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_GROWL - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 0x18, 0xffe8, 1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 0xffe8, 0xffe8, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, -24, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, -24, 0 waitforvisualfinish createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, -10, -10, 0 delay 4 createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 10, 20, 0 delay 4 - createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 0xfffb, 10, 0 + createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, -5, 10, 0 delay 4 - createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 0x11, -12, 0 + createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 17, -12, 0 delay 4 - createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 0xfff1, 15, 0 + createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, -15, 15, 0 delay 4 createsprite gChatterSingNotesTemplate, ANIM_TARGET, 2, 0, 0, 0 delay 4 @@ -3001,46 +3001,46 @@ gBattleAnimMove_Judgment:: clearmonbg ANIM_TARGET end JudgmentOutwardSpikes: - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0, 0xFF90, 16 @up - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 95, 0xFF9D, 16 @upper right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0x73, 0, 16 @right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0x4F, 0x37, 16 @lower right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0, 0x53, 16 @down - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFFB0, 0x43, 16 @lower left - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFF60, 0, 16 @left - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFFAA, 0xFF94, 16 @upper left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0, -112, 16 @up + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 95, -99, 16 @upper right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 115, 0, 16 @right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 79, 55, 16 @lower right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0, 83, 16 @down + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -80, 67, 16 @lower left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -160, 0, 16 @left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -86, -108, 16 @upper left playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER return JudgmentOutwardSpikes2: - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0x2D, 0xFF9D, 16 @between up and upper right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xDF, 0xFF9D, 16 @between right and upper right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0x9F, 0x37, 16 @between right and lower right - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0x1F, 0x37, 16 @between lower right and down - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFFE0, 0x43, 16 @between lower left and down - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFF60, 0x43, 16 @between left and lower left - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFF2A, 0xFFAA, 16 @between left and upper left - createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 0xFFDA, 0xFF94, 16 @between up and upper left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 45, -99, 16 @between up and upper right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 223, -99, 16 @between right and upper right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 159, 55, 16 @between right and lower right + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, 31, 55, 16 @between lower right and down + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -32, 67, 16 @between lower left and down + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -160, 67, 16 @between left and lower left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -214, -86, 16 @between left and upper left + createsprite gJudgmentGrayOutwardSpikesTemplate, ANIM_TARGET, 2, 1, 1, -38, -108, 16 @between up and upper left playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER return JudgmentInwardSpikes: - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0, 0xFF90, 16 @up - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 95, 0xFF9D, 16 @upper right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0x73, 0, 16 @right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0x4F, 0x37, 16 @lower right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0, 0x53, 16 @down - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFFB0, 0x43, 16 @lower left - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFF60, 0, 16 @left - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFFAA, 0xFF94, 16 @upper left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0, -112, 16 @up + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 95, -99, 16 @upper right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 115, 0, 16 @right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 79, 55, 16 @lower right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0, 83, 16 @down + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -80, 67, 16 @lower left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -160, 0, 16 @left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -86, -108, 16 @upper left return JudgmentInwardSpikes2: - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0x2D, 0xFF9D, 16 @between up and upper right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xDF, 0xFF9D, 16 @between right and upper right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0x9F, 0x37, 16 @between right and lower right - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0x1F, 0x37, 16 @between lower right and down - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFFE0, 0x43, 16 @between lower left and down - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFF60, 0x43, 16 @between left and lower left - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFF2A, 0xFFAA, 16 @between left and upper left - createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 0xFFDA, 0xFF94, 16 @between up and upper left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 45, -99, 16 @between up and upper right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 223, -99, 16 @between right and upper right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 159, 55, 16 @between right and lower right + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, 31, 55, 16 @between lower right and down + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -32, 67, 16 @between lower left and down + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -160, 67, 16 @between left and lower left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -214, -86, 16 @between left and upper left + createsprite gJudgmentGrayInwardOrbsTemplate, ANIM_TARGET, 2, 1, 0, -38, -108, 16 @between up and upper left return gBattleAnimMove_BugBite:: @@ -3136,7 +3136,7 @@ gBattleAnimMove_WoodHammer:: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 call WoodHammerImpact waitforvisualfinish @@ -3174,12 +3174,12 @@ gBattleAnimMove_AquaJet:: call RisingWaterHitEffect waitforvisualfinish createvisualtask AnimTask_ExtremeSpeedMonReappear, 2 - setarg 0x7, 0x1000 + setarg 7, 4096 waitforvisualfinish visible ANIM_ATTACKER clearmonbg ANIM_DEF_PARTNER blendoff - setarg 7, 0x1000 + setarg 7, 4096 end gBattleAnimMove_AttackOrder:: @@ -3338,7 +3338,7 @@ gBattleAnimMove_RoarOfTime:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK delay 32 monbg ANIM_ATK_PARTNER - setalpha 0xc, 0x8 + setalpha 12, 8 loopsewithpan 133, SOUND_PAN_ATTACKER 13 3 call RecoverAbsorbEffect waitforvisualfinish @@ -3354,19 +3354,19 @@ gBattleAnimMove_RoarOfTime:: createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 delay 6 playsewithpan 170, SOUND_PAN_TARGET - createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, 1, 1 + createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, 24, -24, 1, 1 delay 6 playsewithpan 170, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 16, 1, 1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, 1, 1 delay 6 playsewithpan 170, SOUND_PAN_TARGET - createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, 0xffe8, -12, 1, 1 + createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, -24, -12, 1, 1 delay 6 playsewithpan 170, SOUND_PAN_TARGET createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, 1, 1 delay 6 playsewithpan 170, SOUND_PAN_TARGET - createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, 0xffe8, 0x18, 1, 1 + createsprite gRoarOfTimeBombTemplate, ANIM_ATTACKER, 3, -24, 24, 1, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 0, RGB_WHITEALPHA waitforvisualfinish @@ -3377,24 +3377,24 @@ gBattleAnimMove_SpacialRend:: setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK loopsewithpan 133, SOUND_PAN_ATTACKER 13 2 - createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 0x38, 0 + createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 delay 2 - createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 0x38, 4 + createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 delay 2 - createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 0x38, 8 + createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 delay 2 - createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 0x38, 12 + createsprite gSpacialRendBladesTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 waitforvisualfinish fadetobgfromset BG_SPACIAL_REND_OPPONENT BG_SPACIAL_REND_PLAYER BG_SPACIAL_REND_OPPONENT waitbgfadein loopsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET, 3, 5 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, SOUND_PAN_ATTACKER, 0xb0, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 0xff40, 0xf0, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, SOUND_PAN_ATTACKER, 0xff60, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 0xff40, 0xff90, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 0xa0, 0x30, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 0xff20, 0xffe0, 0x28 - createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 0x70, 0xff80, 0x28 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, SOUND_PAN_ATTACKER, 176, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, -192, 240, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, SOUND_PAN_ATTACKER, -160, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, -192, -112, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 160, 48, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, -224, -32, 40 + createsprite gSpacialRendBladesTemplate2, ANIM_TARGET, 1, 0, 10, 112, -128, 40 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 waitforvisualfinish restorebg @@ -3438,19 +3438,19 @@ gBattleAnimMove_LunarDance:: gBattleAnimMove_CrushGrip:: setalpha 15, 0 - createsprite gCrushGripHandTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 25, 0x101 + createsprite gCrushGripHandTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 25, 257 waitforvisualfinish createvisualtask AnimTask_CompressTargetHorizontally, 2 createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 0, 0, 1, 1 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 0x18, 0xffe8, 1, 1 + createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 24, -24, 1, 1 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 0xfff0, 16, 1, 1 + createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, -16, 16, 1, 1 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 0xffe8, -12, 1, 1 + createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, -24, -12, 1, 1 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER createsprite gCrushGripExplosionTemplate, ANIM_TARGET, 0, 16, 16, 1, 1 @@ -3474,7 +3474,7 @@ gBattleAnimMove_MagmaStorm:: call FireSpinEffect restorebg waitbgfadeout - setarg 7, 0xFFF + setarg 7, 4095 waitbgfadein clearmonbg ANIM_DEF_PARTNER blendoff @@ -3483,9 +3483,9 @@ gBattleAnimMove_MagmaStorm:: gBattleAnimMove_DarkVoid:: fadetobg BG_DARK_VOID waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0, 0xFFA0, 1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -96, 1, -1 waitbgfadein - createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 0x30 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 loopsewithpan SE_M_CONFUSE_RAY, SOUND_PAN_ATTACKER, 5, 2 delay 48 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -768, 21, 0, 112 @Last is duration @@ -3510,70 +3510,70 @@ gBattleAnimMove_SeedFlare:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_WHITE waitforvisualfinish playsewithpan 133, SOUND_PAN_ATTACKER - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 0x28, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 0xffd8, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, -20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, 20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, -20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 2 createsprite gSeedFlareGreenChargeTemplate, ANIM_ATTACKER 2, 0 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, 20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, 20, 16 delay 2 createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -20, 30, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 20, 0xffe2, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 20, -30, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -20, 0xffe2, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -20, -30, 16 delay 2 createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 20, 30, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, 0, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, 0, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, 0, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, 0, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 0x28, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, 0xffd8, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, -20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0x28, 20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, 0xffd8, -20, 16 + createsprite gSeedFlareGreenCirclesTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 30 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 40, 1 - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 10, 0x900, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 10, 2304, 96, 1 call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x5a, 0x800, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 90, 2048, 96, 1 delay 8 - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x32, 0xa00, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 50, 2560, 96, 1 call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 20, 0x900, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 20, 2304, 96, 1 delay 8 - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x46, 0x7c0, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 70, 1984, 96, 1 call CreateRazorLeafCutters delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 8 - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0, 0xb00, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 0, 2816, 96, 1 delay 10 - createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 0x28, 0x3c, 0xa00, 0x60, 1 + createsprite gSeedFlareGreenWavesTemplate, ANIM_ATTACKER, 40, 60, 2560, 96, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_WHITE waitforvisualfinish @@ -3715,38 +3715,38 @@ gBattleAnimMove_WideGuard:: monbg ANIM_ATTACKER setalpha 12, 8 createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 3, 0 - waitplaysewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 0x10 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xffe8, 0xffe8 + waitplaysewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 16 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -24, -24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xfff8, 0xffe8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -8, -24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x8, 0xffe8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 8, -24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x18, 0xffe8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 24, -24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xffe8, 0xfff8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -24, -8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xfff8, 0xfff8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -8, -8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x8, 0xfff8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 8, -8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x18, 0xfff8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 24, -8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xffe8, 0x8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -24, 8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xfff8, 0x8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -8, 8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x8, 0x8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 8, 8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x18, 0x8 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 24, 8 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xffe8, 0x18 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -24, 24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0xfff8, 0x18 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, -8, 24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x8, 0x18 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 8, 24 delay 3 - createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 0x2, 0x18, 0x18 + createsprite gWideGuardBlueConversionTemplate, ANIM_ATTACKER, 2, 24, 24 delay 20 playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_TARGET createvisualtask AnimTask_ConversionAlphaBlend, 5 @@ -3757,7 +3757,7 @@ gBattleAnimMove_WideGuard:: gBattleAnimMove_GuardSplit:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK - loopsewithpan SE_M_LOCK_ON, SOUND_PAN_ATTACKER, 0x18, 0x3 + loopsewithpan SE_M_LOCK_ON, SOUND_PAN_ATTACKER, 24, 3 call GuardSplitLaunch call GuardSplitLaunch call GuardSplitLaunch @@ -3773,14 +3773,14 @@ gBattleAnimMove_GuardSplit:: waitforvisualfinish end GuardSplitLaunch: - createsprite gGuardSwapOrbs1Template, ANIM_TARGET, 2, 0xfff4, 0x0 - createsprite gGuardSwapOrbs2Template, ANIM_TARGET, 0, 0x0, 0x0, 0x0, 0x0, 0x1E, 0x0 + createsprite gGuardSwapOrbs1Template, ANIM_TARGET, 2, -12, 0 + createsprite gGuardSwapOrbs2Template, ANIM_TARGET, 0, 0, 0, 0, 0, 30, 0 delay 5 return gBattleAnimMove_PowerSplit:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK - loopsewithpan SE_M_LOCK_ON, SOUND_PAN_ATTACKER, 0x18, 0x3 + loopsewithpan SE_M_LOCK_ON, SOUND_PAN_ATTACKER, 24, 3 call PowerSplitLaunch call PowerSplitLaunch call PowerSplitLaunch @@ -3796,8 +3796,8 @@ gBattleAnimMove_PowerSplit:: waitforvisualfinish end PowerSplitLaunch: - createsprite gPowerSplitOrbs1Template, ANIM_TARGET, 2, 0xfff4, 0x0 - createsprite gPowerSplitOrbs2Template, ANIM_TARGET, 0, 0x0, 0x0, 0x0, 0x0, 0x1E, 0x0 + createsprite gPowerSplitOrbs1Template, ANIM_TARGET, 2, -12, 0 + createsprite gPowerSplitOrbs2Template, ANIM_TARGET, 0, 0, 0, 0, 0, 30, 0 delay 5 return @@ -3916,19 +3916,19 @@ gBattleAnimMove_Autotomize:: setalpha 12, 8 monbg ANIM_ATK_PARTNER createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 24, 6, 4, 4 - createvisualtask AnimTask_TraceMonBlended 0x2, 0x0, 0x4, 0x7, 0xa + createvisualtask AnimTask_TraceMonBlended 2, 0, 4, 7, 10 playsewithpan SE_ELEVATOR, SOUND_PAN_ATTACKER - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x0 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x1 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 0 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 1 delay 12 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x2 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x3 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 2 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 3 delay 12 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x0 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x1 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 0 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 1 delay 12 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x2 - createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 0x2, 0x0, 0x3 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 2 + createsprite gAutotomizeMetalShardsTemplate, ANIM_ATTACKER, 2, 0, 3 delay 24 waitforvisualfinish stopsound @@ -3939,7 +3939,7 @@ gBattleAnimMove_Autotomize:: gBattleAnimMove_RagePowder:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET - loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 0x12, 0xa + loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 18, 10 call RagePowderSprinkle call RagePowderSprinkle call RagePowderSprinkle @@ -3948,11 +3948,11 @@ gBattleAnimMove_RagePowder:: clearmonbg ANIM_DEF_PARTNER end RagePowderSprinkle: - createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 0x2, 0x0, 0xffec, 0x55, 0x50, 0x0 + createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 2, 0, -20, 85, 80, 0 delay 12 - createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 0x2, 0x0, 0xfff6, 0xaa, 0x50, 0x0 + createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 2, 0, -10, 170, 80, 0 delay 12 - createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 0x2, 0x0, 0xfff1, 0x0, 0x50, 0x0 + createsprite gRagePowderRedPowderTemplate, ANIM_ATTACKER, 2, 0, -15, 0, 80, 0 delay 12 return @@ -3962,9 +3962,9 @@ gBattleAnimMove_Telekinesis:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 9, RGB_WHITE delay 18 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 0xd, 0x14, 0xffec + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 20, -20 waitforvisualfinish - loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 0xa, 0x3 + loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 3 createvisualtask AnimTask_SwayMon, 5, 1, 24, 208, 1, ANIM_TARGET waitforvisualfinish delay 10 @@ -3987,9 +3987,9 @@ gBattleAnimGeneral_MagicRoom:: gBattleAnimMove_SmackDown:: playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - createsprite gRockBlastRockSpriteTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x0, 0x0, 0x15, 0xffe7 + createsprite gRockBlastRockSpriteTemplate, ANIM_TARGET, 2, 20, 0, 0, 0, 21, -25 waitforvisualfinish - createvisualtask AnimTask_SmokescreenImpact, 0x8, 0x400, 0x1902 + createvisualtask AnimTask_SmokescreenImpact, 8, 1024, 6402 fadetobg BG_IN_AIR waitbgfadeout createvisualtask AnimTask_SeismicTossBgAccelerateDownAtEnd, 3 @@ -4105,28 +4105,28 @@ gBattleAnimMove_Synchronoise:: splitbgprio_foes ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK @Darken waitforvisualfinish - panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - createsprite gSynchronoiseVioletRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + createsprite gSynchronoiseVioletRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 1 - createsprite gSynchronoiseBlueRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + createsprite gSynchronoiseBlueRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 1 - createsprite gSynchronoiseYellowRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + createsprite gSynchronoiseYellowRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 37 - panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - createsprite gSynchronoiseBlueRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + createsprite gSynchronoiseBlueRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 1 - createsprite gSynchronoiseVioletRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + createsprite gSynchronoiseVioletRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 1 - createsprite gSynchronoiseYellowRingTemplate, ANIM_ATTACKER, 0x0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + createsprite gSynchronoiseYellowRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 waitforvisualfinish - loopsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET, 0x3, 0x5 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, SOUND_PAN_ATTACKER, 0xb0, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, 0xff40, 0xf0, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, SOUND_PAN_ATTACKER, 0xff60, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, 0xff40, 0xff90, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, 0xa0, 0x30, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, 0xff20, 0xffe0, 0x28 - createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0x0, 0xffef, 0x70, 0xff80, 0x28 + loopsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET, 3, 5 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, SOUND_PAN_ATTACKER, 176, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, -192, 240, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, SOUND_PAN_ATTACKER, -160, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, -192, -112, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, 160, 48, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, -224, -32, 40 + createsprite gSynchronoiseAeroWheelTemplate, ANIM_TARGET, 1, 0, -17, 112, -128, 40 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK @Darken waitforvisualfinish @@ -4145,7 +4145,7 @@ gBattleAnimMove_ElectroBall:: delay 15 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 6 - loopsewithpan SE_M_CHARGE, 0xC, 0x6, 0x5 + loopsewithpan SE_M_CHARGE, 12, 6, 5 waitforvisualfinish createsprite gElectroBallCannonBallTemplate, ANIM_TARGET, 2, 16, 16, 8 waitforvisualfinish @@ -4192,7 +4192,7 @@ gBattleAnimMove_Soak:: gBattleAnimMove_FlameCharge:: monbg ANIM_TARGET - loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 0x20, 0x6 + loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 32, 6 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 6, 3 call FlameChargeSwirl delay 9 @@ -4213,12 +4213,12 @@ gBattleAnimMove_FlameCharge:: playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_ATTACKER waitforvisualfinish delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 7 waitforvisualfinish clearmonbg ANIM_TARGET end FlameChargeSwirl: - createsprite gFlameChargeEmberTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gFlameChargeEmberTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 return gBattleAnimMove_Coil:: @@ -4268,17 +4268,17 @@ gBattleAnimMove_AcidSpray:: gBattleAnimMove_FoulPlay:: monbg ANIM_TARGET setalpha 12, 8 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 6 - createsprite gFoulPlayImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x1 + createsprite gFoulPlayImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_VITAL_THROW SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 3, 10, 0, RGB_BLACK - createsprite gFoulPlayRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gFoulPlayRingTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 delay 8 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 3, 10, 0, RGB_BLACK - createsprite gFoulPlayRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gFoulPlayRingTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -4299,9 +4299,9 @@ gBattleAnimMove_SimpleBeam:: call SimpleBeamWithRings call SimpleBeamWithRings call SimpleBeamWithRings - createsprite gSimpleBeamBrownRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1F, 0x8 + createsprite gSimpleBeamBrownRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 2 - createsprite gSimpleBeamPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1F, 0x8 + createsprite gSimpleBeamPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 2 stopsound waitforvisualfinish @@ -4312,17 +4312,17 @@ gBattleAnimMove_SimpleBeam:: blendoff end SimpleBeamsRegular: - createsprite gSimpleBeamBrownTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0xd, 0x0 + createsprite gSimpleBeamBrownTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 13, 0 delay 2 - createsprite gSimpleBeamPinkTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0xd, 0x0 + createsprite gSimpleBeamPinkTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 13, 0 delay 2 return SimpleBeamWithRings: - createsprite gSimpleBeamBrownTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0xd, 0x0 - createsprite gSimpleBeamBrownRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1F, 0x8 + createsprite gSimpleBeamBrownTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 13, 0 + createsprite gSimpleBeamBrownRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 2 - createsprite gSimpleBeamPinkTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0xd, 0x0 - createsprite gSimpleBeamPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1F, 0x8 + createsprite gSimpleBeamPinkTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 13, 0 + createsprite gSimpleBeamPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 2 return @@ -4344,12 +4344,12 @@ gBattleAnimMove_Entrainment:: gBattleAnimMove_AfterYou:: createvisualtask AnimTask_SwayMon, 5, 1, 15, 1536, 2, ANIM_ATTACKER delay 1 - createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0x0, 0xffec, 0xffe0 - createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xffe5 + createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0, -20, -32 + createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0, -5, -27 playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER delay 20 - createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0x0, 0x14, 0xffe0 - createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0x0, 0x23, 0xffe5 + createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0, 20, -32 + createsprite gAfterYouGreenRageTemplate, ANIM_ATTACKER, 2, 0, 35, -27 playsewithpan SE_M_SWAGGER2, SOUND_PAN_ATTACKER waitforvisualfinish end @@ -4390,7 +4390,7 @@ gBattleAnimMove_EchoedVoice:: end MetalSoundPlayNote: panse SE_M_UPROAR, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 - createsprite gMetalSoundSpriteTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0x1e, 0x0 + createsprite gMetalSoundSpriteTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0 delay 2 return @@ -4481,14 +4481,14 @@ gBattleAnimMove_QuickGuard:: createsprite gQuickGuardArmImpactTemplate, ANIM_TARGET, 3, -14, 0, 8, ANIM_ATTACKER, 0 waitforvisualfinish playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0x0, 0xffe3 @up - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0x16, 0xffec @upper right - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0x1D, 0x0 @right - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0xffe9, 0xffec @upper left - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0xffe2, 0x0 @left - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0x0, 0x1c @down - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0x16, 0x13 @lower left - createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0xffea, 0x13 @lower right + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0, -29 @up + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 22, -20 @upper right + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 29, 0 @right + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, -23, -20 @upper left + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, -30, 0 @left + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 0, 28 @down + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, 22, 19 @lower left + createsprite gSpinningSparkleSpriteTemplate, ANIM_ATTACKER, 13, -22, 19 @lower right waitforvisualfinish blendoff clearmonbg ANIM_ATTACKER @@ -4605,7 +4605,7 @@ gBattleAnimMove_Hex:: splitbgprio_all playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER waitbgfadein - createvisualtask AnimTask_PurpleFlamesOnTarget, 0x3 + createvisualtask AnimTask_PurpleFlamesOnTarget, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 2, 0, 37, 1 playsewithpan SE_M_NIGHTMARE, SOUND_PAN_TARGET delay 32 @@ -4624,11 +4624,11 @@ SkyDropSetup: invisible ANIM_ATTACKER delay 0 playsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER - createsprite gSkyDropFlyBallTemplate, ANIM_TARGET, 0, 0x0, 0x0, 0x0, 0x0, 0x1e, 0x0 + createsprite gSkyDropFlyBallTemplate, ANIM_TARGET, 0, 0, 0, 0, 0, 30, 0 waitforvisualfinish invisible ANIM_TARGET playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gSkyDropTargetFlyingTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSkyDropTargetFlyingTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 end SkyDropUnleash: visible ANIM_TARGET @@ -4648,8 +4648,8 @@ SkyDropUnleash: gBattleAnimMove_ShiftGear:: monbg ANIM_ATTACKER playsewithpan SE_ESCALATOR, SOUND_PAN_ATTACKER - createsprite gShiftGearGearsTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xFFF3, 0x8, 0x65, 0xa - createsprite gShiftGearGearsTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xE, 0xFFF8, 0x65, 0xa + createsprite gShiftGearGearsTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -13, 8, 101, 10 + createsprite gShiftGearGearsTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 14, -8, 101, 10 waitforvisualfinish clearmonbg ANIM_ATTACKER end @@ -4663,16 +4663,16 @@ gBattleAnimMove_CircleThrow:: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 20, 0, 0, 4 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 - createsprite gCircleThrowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gCircleThrowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -24, 0, 0, 4 - createsprite gCircleThrowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gCircleThrowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 waitforvisualfinish delay 3 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 7 delay 11 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0xa + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 10 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -4722,10 +4722,10 @@ gBattleAnimMove_Quash:: waitbgfadein setalpha 12, 8 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gQuashArmHitTemplate, ANIM_TARGET, 3, 0x0, 0xffe0, 0xf + createsprite gQuashArmHitTemplate, ANIM_TARGET, 3, 0, -32, 15 delay 19 playsewithpan SE_M_MINIMIZE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -4809,11 +4809,11 @@ gBattleAnimMove_ReflectType:: monbg ANIM_TARGET setalpha 8, 8 playsewithpan SE_M_STRING_SHOT2, SOUND_PAN_TARGET - createsprite gReflectTypeBlueStringTemplate, ANIM_TARGET, 2, 0x0, 0xa + createsprite gReflectTypeBlueStringTemplate, ANIM_TARGET, 2, 0, 10 delay 4 - createsprite gReflectTypeVioletStringTemplate, ANIM_TARGET, 2, 0x0, 0xfffe + createsprite gReflectTypeVioletStringTemplate, ANIM_TARGET, 2, 0, -2 delay 4 - createsprite gReflectTypeWhiteStringTemplate, ANIM_TARGET, 2, 0x0, 0x16 + createsprite gReflectTypeWhiteStringTemplate, ANIM_TARGET, 2, 0, 22 waitforvisualfinish clearmonbg ANIM_TARGET delay 31 @@ -4842,12 +4842,12 @@ gBattleAnimMove_ReflectType:: gBattleAnimMove_Retaliate:: monbg ANIM_DEF_PARTNER setalpha 9, 8 - createvisualtask AnimTask_AttackerPunchWithTrace, 0x2, 0x7128, 0xa + createvisualtask AnimTask_AttackerPunchWithTrace, 2, 28968, 10 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK waitforvisualfinish playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 0x1 + createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 0 + createsprite gGuillotineSpriteTemplate, ANIM_ATTACKER, 2, 1 delay 56 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 16, RGB(29, 1, 1) @@ -4866,7 +4866,7 @@ gBattleAnimMove_FinalGambit:: blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=8, color=RGB_WHITE waitforvisualfinish playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_ATTACKER - createsprite gFinalGambitBlueYawnTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x25 + createsprite gFinalGambitBlueYawnTemplate, ANIM_ATTACKER, 2, 0, 0, 37 delay 4 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 15, 1 @@ -4875,7 +4875,7 @@ gBattleAnimMove_FinalGambit:: monbg ANIM_TARGET delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gFinalGambitExplosionTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gFinalGambitExplosionTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 waitforvisualfinish clearmonbg ANIM_TARGET @@ -4886,8 +4886,8 @@ gBattleAnimMove_FinalGambit:: gBattleAnimMove_Bestow:: monbg ANIM_TARGET splitbgprio ANIM_TARGET - panse SE_M_METRONOME, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - createvisualtask AnimTask_CreateBestowItem, 0x2, 0x14, 0x0, 0x0, 0x0, 0x28, 0xffe7 + panse SE_M_METRONOME, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + createvisualtask AnimTask_CreateBestowItem, 2, 20, 0, 0, 0, 40, -25 waitforvisualfinish unloadspritegfx ANIM_TAG_ITEM_BAG @;The generated item sprite uses this tag unloadspritepal ANIM_TAG_ITEM_BAG @;The generated item sprite uses this tag @@ -5297,11 +5297,11 @@ gBattleAnimMove_StruggleBug:: createvisualtask AnimTask_FlailMovement, 2, ANIM_ATTACKER createsprite gMovementWavesSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 2 createsprite gMovementWavesSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 2 - loopsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER, 0x8, 0x2 + loopsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER, 8, 2 waitforvisualfinish create_random_pos_hitsplat_sprite ANIM_TARGET, 3, relative_to=ANIM_TARGET, animation=1 - createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, FALSE, 1, 0x1e, 1, 0 - createvisualtask AnimTask_ShakeTargetPartnerBasedOnMovePowerOrDmg, 2, FALSE, 1, 0x1e, 1, 0 + createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, FALSE, 1, 30, 1, 0 + createvisualtask AnimTask_ShakeTargetPartnerBasedOnMovePowerOrDmg, 2, FALSE, 1, 30, 1, 0 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB(31, 16, 2) delay 5 @@ -5321,36 +5321,36 @@ gBattleAnimMove_Bulldoze:: gBattleAnimMove_FrostBreath:: fadetobg BG_ICE waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x300, 0x0, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 768, 0, 0, -1 waitbgfadein playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 40, 1 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, ANIM_ATTACKER, 15, 0, 0, 4 waitforvisualfinish - createsprite gFrostBreathBlueBreathTemplate, ANIM_TARGET, 2, 0x1e, 0xf, 0x0, 0xa, 0xa + createsprite gFrostBreathBlueBreathTemplate, ANIM_TARGET, 2, 30, 15, 0, 10, 10 waitforvisualfinish unloadspritegfx ANIM_TAG_SMALL_EMBER unloadspritepal ANIM_TAG_SMALL_EMBER - loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 0xb, 0x3 + loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 11, 3 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 3, 25, 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0x5, 0x0 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 1, 5, 0 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0xfff6, 0xfff1 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 1, -10, -15 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x19 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 1, 0, 25 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0xf, 0x5 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 1, 15, 5 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0xffe7, 0x0 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 1, -25, 0 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 0x1, 0x1e, 0x1e + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 1, 30, 30 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 0x1, 0xffe5, 0x19 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 2, 1, -27, 25 delay 1 - createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 0x1, 0x0, 0x8 + createsprite gFrostBreathBlueRageTemplate, ANIM_TARGET, 66, 1, 0, 8 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0x0, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 66, 0, 0, 4 waitforvisualfinish call UnsetPsychicBg end @@ -5368,13 +5368,13 @@ gBattleAnimMove_DragonTail:: playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -12, 10, 0, 3 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 call TailWhackDown delay 3 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 0, 3, 6, 1 waitforvisualfinish delay 5 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 6 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -5382,7 +5382,7 @@ gBattleAnimMove_DragonTail:: TailWhackDown: create_basic_hitsplat_sprite ANIM_TARGET, 3, x=-10, y=-8, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -12, 0x1b, 2, 3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -12, 27, 2, 3 createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 8, 28, 3, 4 createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -4, 30, 2, 3 createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 12, 25, 4, 4 @@ -5447,13 +5447,13 @@ gBattleAnimMove_WildCharge:: createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 2 @electric circle delay 30 waitforvisualfinish - loopsewithpan SE_M_HARDEN, SOUND_PAN_ATTACKER, 0x1c, 0x2 + loopsewithpan SE_M_HARDEN, SOUND_PAN_ATTACKER, 28, 2 call ScreenFlash waitforvisualfinish call ScreenFlash waitforvisualfinish playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER - createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 0x6, 0x1, 0x0 + createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 0 waitforvisualfinish delay 11 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 26, 0, 0, 5 @@ -5463,7 +5463,7 @@ gBattleAnimMove_WildCharge:: playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET call ElectricityEffect waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -5487,14 +5487,14 @@ gBattleAnimMove_DualChop:: splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 6 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 0, 0, 10, 1, 3, 0 @left createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, 1301, 0, 0, 0, 10, 1, 3, 0 @right waitforvisualfinish playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gDualChopImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gDualChopImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -5503,19 +5503,19 @@ gBattleAnimMove_DualChop:: gBattleAnimMove_HeartStamp:: monbg ANIM_TARGET - loopsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER, 0xc, 0x3 - createsprite gHeartStampSpinningHeartTemplate, ANIM_TARGET, 0, 0x0, 0x0, 0x1, 0x1e + loopsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER, 12, 3 + createsprite gHeartStampSpinningHeartTemplate, ANIM_TARGET, 0, 0, 0, 1, 30 delay 30 clearmonbg ANIM_TARGET playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon2, 131, ANIM_TARGET, 4, 0, 5, 1 - createvisualtask AnimTask_StretchTargetUp, 0x3 + createvisualtask AnimTask_StretchTargetUp, 3 waitforvisualfinish end gBattleAnimMove_HornLeech:: playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - createsprite gHornLeechHornTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x25 + createsprite gHornLeechHornTemplate, ANIM_TARGET, 2, 0, 0, 37 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 @@ -5530,7 +5530,7 @@ gBattleAnimMove_SacredSword:: monbg ANIM_ATTACKER setalpha 12, 8 playsewithpan SE_M_SWORDS_DANCE, SOUND_PAN_ATTACKER - createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 + createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0, 0 delay 22 flash_anim_tag_with_color tag=ANIM_TAG_SWORD, delay=2, num_blends=2, color1=RGB(18, 31, 31), blend_y1=16, color2=0, blend_y2=0 waitforvisualfinish @@ -5538,8 +5538,8 @@ gBattleAnimMove_SacredSword:: delay 1 monbg ANIM_TARGET playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSacredSwordBladesTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xFF00, 0xA - createsprite gSacredSwordCutTemplate, ANIM_ATTACKER, 2, 0x28, 0xffe0, 0x0 + createsprite gSacredSwordBladesTemplate, ANIM_TARGET, 1, 0, 10, 0, -256, 10 + createsprite gSacredSwordCutTemplate, ANIM_ATTACKER, 2, 40, -32, 0 delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 waitforvisualfinish @@ -5550,9 +5550,9 @@ gBattleAnimMove_SacredSword:: gBattleAnimMove_RazorShell:: monbg ANIM_TARGET - createsprite gRazorShellTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x0, 25, 0 + createsprite gRazorShellTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 0, 25, 0 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 1, 0x28, 0xffe0, 0x0 + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 1, 40, -32, 0 delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 waitforvisualfinish @@ -5564,7 +5564,7 @@ gBattleAnimMove_HeatCrash:: monbg ANIM_TARGET setalpha 12, 8 playsewithpan SE_SUCCESS, SOUND_PAN_TARGET - createsprite gHeatCrashEruptionRockTemplate, ANIM_ATTACKER, 3, 0x0, 0xffe0, 0xf + createsprite gHeatCrashEruptionRockTemplate, ANIM_ATTACKER, 3, 0, -32, 15 delay 19 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=-8, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 4, 9, 1 @@ -5573,10 +5573,10 @@ gBattleAnimMove_HeatCrash:: create_basic_hitsplat_sprite ANIM_TARGET, 3, x=10, y=-8, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 5, 1 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfff4, 0x20, 0x3, 0x4 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0x8, 0x1f, 0x2, 0x2 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfffc, 0x1c, 0x2, 0x3 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xc, 0x1e, 0x4, 0x3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -12, 32, 3, 4 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 8, 31, 2, 2 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -4, 28, 2, 3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 12, 30, 4, 3 clearmonbg ANIM_TARGET blendoff end @@ -5586,8 +5586,8 @@ gBattleAnimMove_LeafTornado:: splitbgprio ANIM_TARGET playsewithpan SE_M_GUST, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 47, 1 - createsprite gEllipticalGustSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 - createvisualtask AnimTask_AnimateGustTornadoPalette, 0x5, 0x1, 0x46 + createsprite gEllipticalGustSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 + createvisualtask AnimTask_AnimateGustTornadoPalette, 5, 1, 70 call LeafTornadoVortex call LeafTornadoVortex call LeafTornadoVortex @@ -5596,17 +5596,17 @@ gBattleAnimMove_LeafTornado:: clearmonbg ANIM_TARGET end LeafTornadoVortex: - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, 0x1 + createsprite gLeafTornadoVortexTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, 1 delay 2 return @@ -5638,7 +5638,7 @@ gBattleAnimMove_Steamroller:: gBattleAnimMove_CottonGuard:: monbg ANIM_ATK_PARTNER setalpha 12, 8 - loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET 0x12 0x6 + loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET 18 6 call CreateCottonSpores call CottonSporesSpiralInward call CottonSporesSpiralInward @@ -5648,19 +5648,19 @@ gBattleAnimMove_CottonGuard:: blendoff end CottonSporesSpiralInward: - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0x28, 0xfff6, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 40, -10, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0xffdd, 0xfff6, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, -35, -10, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0xf, 0xffd8, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 15, -40, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xffe0, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, -10, -32, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0x19, 0xffec, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 25, -20, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, -40, -20, 13 delay 3 - createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 0x5, 0xffd8, 0xd + createsprite gCottonGuardSporeTemplate, ANIM_ATTACKER, 2, 5, -40, 13 delay 3 return @@ -5668,25 +5668,25 @@ gBattleAnimMove_NightDaze:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish playsewithpan SE_ORB, SOUND_PAN_ATTACKER - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x0 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x20 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x40 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x60 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x80 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0xa0 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0x0 - createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0xe0 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 32 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 64 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 96 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 128 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 160 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 0 + createsprite gNightDazeVioletCirclesTemplate, ANIM_TARGET, 2, 224 delay 1 - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 1 - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 15 - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 1 - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 1 - createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gNightDazeVioletRingsTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 31, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB(2, 0, 8) @@ -5705,12 +5705,12 @@ gBattleAnimMove_Psystrike:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1 blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=8, color=RGB_RED waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 3 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 15, 1 createvisualtask AnimTask_ScaleMonAndRestore, 5, -9, -9, 15, ANIM_TARGET, 1 waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -5728,10 +5728,10 @@ TailSlapContinue: blendoff end TailSlapRight: - createsprite gTailSlapTemplate, ANIM_ATTACKER, 2, 0xfff8, 0x0, 0x1, 0x0 + createsprite gTailSlapTemplate, ANIM_ATTACKER, 2, -8, 0, 1, 0 goto TailSlapContinue TailSlapLeft: - createsprite gTailSlapTemplate, ANIM_ATTACKER, 2, 0x8, 0x0, 0x1, 0x0 + createsprite gTailSlapTemplate, ANIM_ATTACKER, 2, 8, 0, 1, 0 goto TailSlapContinue gBattleAnimMove_Hurricane:: @@ -5740,7 +5740,7 @@ gBattleAnimMove_Hurricane:: setalpha 12, 8 fadetobg BG_HURRICANE waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x1000, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 4096, 0, 1, -1 waitbgfadein playsewithpan SE_M_GUST, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 64, 1 @@ -5773,15 +5773,15 @@ HurricaneGustCentered: gBattleAnimMove_HeadCharge:: fadetobgfromset BG_GIGA_IMPACT_OPPONENT, BG_GIGA_IMPACT_PLAYER, BG_GIGA_IMPACT_OPPONENT waitbgfadein - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER waitforvisualfinish delay 2 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x1 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 1 waitforvisualfinish 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 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 2 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 @@ -5793,14 +5793,14 @@ gBattleAnimMove_GearGrind:: monbg ANIM_TARGET setalpha 12, 8 playsewithpan SE_ESCALATOR, SOUND_PAN_ATTACKER - createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xffe0, 0x0, 0x333, 0x333, 0xa - createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 0x20, 0x20, 0x0, 0xfccd, 0xfccd, 0xa + createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, -32, -32, 0, 819, 819, 10 + createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 32, 32, 0, -819, -819, 10 delay 10 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 - createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 0x20, 0xffe0, 0x0, 0xfccd, 0x333, 0xa - createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x20, 0x0, 0x333, 0xfccd, 0xa + createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, 32, -32, 0, -819, 819, 10 + createsprite gGearGrindTemplate, ANIM_ATTACKER, 2, -32, 32, 0, 819, -819, 10 delay 10 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 @@ -5824,7 +5824,7 @@ gBattleAnimMove_SearingShot:: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 30 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gSearingShotRedChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gSearingShotRedChargeTemplate, ANIM_ATTACKER, 2, 0 delay 25 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 20 @@ -5833,38 +5833,38 @@ gBattleAnimMove_SearingShot:: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER waitforvisualfinish playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x1e, 0x19, 0xffec - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x20, 0x1e, 0x19, 0xffec - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x40, 0x1e, 0x19, 0xffec + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 0, 30, 25, -20 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 32, 30, 25, -20 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 64, 30, 25, -20 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x60, 0x1e, 0x19, 0xffec - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x80, 0x1e, 0x19, 0xffec + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 96, 30, 25, -20 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 128, 30, 25, -20 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xa0, 0x1e, 0x19, 0xffec - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xa0, 0x1e, 0x19, 0xffec + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 160, 30, 25, -20 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 160, 30, 25, -20 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xe0, 0x1e, 0x19, 0xffec + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 224, 30, 25, -20 delay 15 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x1e, 0x19, 0x0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 0, 30, 25, 0 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x20, 0x1e, 0x19, 0x0 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x40, 0x1e, 0x19, 0x0 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x60, 0x1e, 0x19, 0x0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 32, 30, 25, 0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 64, 30, 25, 0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 96, 30, 25, 0 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 0x1, 0x80, 0x1e, 0x19, 0x0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 2, 1, 128, 30, 25, 0 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xa0, 0x1e, 0x19, 0x0 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xa0, 0x1e, 0x19, 0x0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 160, 30, 25, 0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 160, 30, 25, 0 delay 2 - createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 0x1, 0xe0, 0x1e, 0x19, 0x0 + createsprite gSearingShotEruptionRockTemplate, ANIM_ATTACKER, 66, 1, 224, 30, 25, 0 delay 21 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB_RED clearmonbg ANIM_ATTACKER fadetobg BG_FIRE waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xA00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein delay 30 monbg ANIM_ATK_PARTNER @@ -5874,12 +5874,12 @@ gBattleAnimMove_SearingShot:: createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 27, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATK_PARTNER, 3, 0, 27, 1 playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 0x1, 0x1E, ANIM_TARGET - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 0x1, 0x1E, ANIM_TARGET - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 0x1, 0x1E, ANIM_DEF_PARTNER - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 0x1, 0x1E, ANIM_DEF_PARTNER - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 0x1, 0x1E, ANIM_ATK_PARTNER - createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 0x1, 0x1E, ANIM_ATK_PARTNER + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 1, 30, ANIM_TARGET + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 1, 30, ANIM_TARGET + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 1, 30, ANIM_DEF_PARTNER + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 1, 30, ANIM_DEF_PARTNER + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, -5, -5, 1, 30, ANIM_ATK_PARTNER + createsprite gSearingShotEruptionImpactTemplate, ANIM_TARGET, 3, 5, 10, 1, 30, ANIM_ATK_PARTNER delay 30 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER waitforvisualfinish @@ -5892,69 +5892,69 @@ gBattleAnimMove_SearingShot:: end gBattleAnimMove_TechnoBlast:: - createvisualtask AnimTask_TechnoBlast, 0x5 - jumpargeq 0x0, TYPE_FIRE, TechnoBlastFire - jumpargeq 0x0, TYPE_WATER, TechnoBlastWater - jumpargeq 0x0, TYPE_ELECTRIC, TechnoBlastElectric - jumpargeq 0x0, TYPE_ICE, TechnoBlastIce + createvisualtask AnimTask_TechnoBlast, 5 + jumpargeq 0, TYPE_FIRE, TechnoBlastFire + jumpargeq 0, TYPE_WATER, TechnoBlastWater + jumpargeq 0, TYPE_ELECTRIC, TechnoBlastElectric + jumpargeq 0, TYPE_ICE, TechnoBlastIce TechnoBlastNormal: monbg ANIM_ATTACKER setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 0xE, 0x8 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 0x10 + loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 14, 8 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0x28, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x14, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 2 - createsprite gTechnoBlastWhiteChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gTechnoBlastWhiteChargeTemplate, ANIM_ATTACKER, 2, 0 call TechnoBlastWhiteCircles call TechnoBlastWhiteCircles - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0x28, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x14, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 2 waitforvisualfinish playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gTechnoBlastWhiteBlastTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gTechnoBlastWhiteBlastTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gTechnoBlastWhiteSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x1, 0x0 + createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 delay 2 - createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 + createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 delay 2 - createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 + createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 delay 2 - createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 + createsprite gTechnoBlastWhiteSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -5962,33 +5962,33 @@ TechnoBlastNormal: clearmonbg ANIM_ATTACKER end TechnoBlastWhiteCircles: - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, 20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x1e, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -20, 30, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x14, 0xffe2, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 20, -30, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffec, 0xffe2, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -20, -30, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x14, 0x1e, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 20, 30, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x0, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, 0, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x0, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 0, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0x28, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd8, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0x28, 0x14, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0x10 + createsprite gTechnoBlastWhiteCircleTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 2 return @@ -5997,8 +5997,8 @@ TechnoBlastElectric: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 0xE, 0x8 - createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 14, 8 + createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0 call TechnoBlastCharging1 delay 15 call TechnoBlastCharging2 @@ -6017,33 +6017,33 @@ TechnoBlastElectric: delay 15 waitforvisualfinish playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gTechnoBlastYellowBlastTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gTechnoBlastYellowBlastTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gTechnoBlastYellowSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x1, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x5, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x5, 0x1 + createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 5, 0, 5, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -5, 10, 5, 1 delay 2 - createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xf, 0x14, 0x5, 0x2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xfff6, 0x5, 0x0 + createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 15, 20, 5, 2 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -15, -10, 5, 0 delay 2 - createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x19, 0x0, 0x5, 0x1 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x5, 0x2 + createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 25, 0, 5, 1 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -8, 8, 5, 2 delay 2 - createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x2, 0xfff8, 0x5, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xf, 0x5, 0x1 + createsprite gTechnoBlastYellowSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 2, -8, 5, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -20, 15, 5, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -6052,17 +6052,17 @@ TechnoBlastElectric: end TechnoBlastCharging1: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 return TechnoBlastCharging2: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 return TechnoBlastWater: @@ -6070,108 +6070,108 @@ TechnoBlastWater: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB(1, 0, 0) waitforvisualfinish - createsprite gTechnoBlastBlueChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gTechnoBlastBlueChargeTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 waitforvisualfinish playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gTechnoBlastBlueBlastTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gTechnoBlastBlueBlastTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gTechnoBlastBlueSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x1, 0x0 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x1 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x1 + createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 1 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 1 delay 2 - createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x1 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x1 + createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 1 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 1 delay 2 - createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x1 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x1 + createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 1 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 1 delay 2 - createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x1 - createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x1 + createsprite gTechnoBlastBlueSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 1 + createsprite gTechnoBlastBlueBubbleTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -6184,26 +6184,26 @@ TechnoBlastFire: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - createsprite gTechnoBlastRedChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gTechnoBlastRedChargeTemplate, ANIM_ATTACKER, 2, 0 delay 5 call TechnoBlastFireSpiral call TechnoBlastFireSpiral call TechnoBlastFireSpiral waitforvisualfinish playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gTechnoBlastRedBlastTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gTechnoBlastRedBlastTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gTechnoBlastRedSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x1, 0x0 + createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 192, 176, 40 createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, -192, 240, 40 createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 192, -160, 40 @@ -6212,11 +6212,11 @@ TechnoBlastFire: createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, -224, -32, 40 createsprite gFireSpreadSpriteTemplate, ANIM_TARGET, 1, 0, 10, 112, -128, 40 delay 2 - createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 + createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 delay 2 - createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 + createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 delay 2 - createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 + createsprite gTechnoBlastRedSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -6224,25 +6224,25 @@ TechnoBlastFire: clearmonbg ANIM_ATTACKER end TechnoBlastFireSpiral: - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x14 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x18 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 return @@ -6251,136 +6251,136 @@ TechnoBlastIce: monbg ANIM_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - createsprite gTechnoBlastIceChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gTechnoBlastIceChargeTemplate, ANIM_ATTACKER, 2, 0 delay 5 call TechnoBlastIceChargeParticles call TechnoBlastIceChargeParticles call TechnoBlastIceChargeParticles - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xfff6, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, -10, -10, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xa, 0x14, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 10, 20, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xfffb, 0xa, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, -5, 10, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0x11, 0xfff4, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 17, -12, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET waitforvisualfinish playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gTechnoBlastIceBlastTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gTechnoBlastIceBlastTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gTechnoBlastIceSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish playsewithpan SE_M_EMBER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x1, 0x0 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 delay 2 - createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 10, 20, 0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -5, 10, 0 delay 2 - createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xf, 0x0 + createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 17, -12, 0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, -15, 15, 0 delay 2 - createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0x14, 0x2, 0x0 + createsprite gTechnoBlastIceSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 20, 2, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish clearmonbg ANIM_ATTACKER end TechnoBlastIceChargeParticles: - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xfff6, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, -10, -10, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xa, 0x14, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 10, 20, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xfffb, 0xa, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, -5, 10, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0x11, 0xfff4, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 17, -12, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xf, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, -15, 15, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 0x14, 0x2, 0x0, 0x2 + createsprite gTechnoBlastIceCrystalsTemplate, ANIM_ATTACKER, 2, 20, 2, 0, 2 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 return gBattleAnimMove_RelicSong:: monbg ANIM_DEF_PARTNER - createvisualtask AnimTask_MusicNotesRainbowBlend, 0x2 + createvisualtask AnimTask_MusicNotesRainbowBlend, 2 waitforvisualfinish createvisualtask SoundTask_PlayCryWithEcho, 2, FALSE - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1d, 0xfff4, 0x0 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0xffe3, 0x1 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x7, 0x0, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 29, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, -29, 1 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 7, 0, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x6, 0x1, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 6, 1, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xc, 0xffe3, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe3, 0xfff4, 0x0 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x2, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 12, -29, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -29, -12, 0 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 1, 2, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x2, 0x3, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 2, 3, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x18, 0xffe8, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0xffe8, 0x0 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x3, 0x0, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, -24, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, -24, 0 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 3, 0, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x2, 0x1, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 2, 1, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1d, 0xfff4, 0x0 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0xffe3, 0x1 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x5, 0x2, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 29, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, -29, 1 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 5, 2, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x6, 0x3, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 6, 3, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xc, 0xffe3, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe3, 0xfff4, 0x0 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x2, 0x0, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 12, -29, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -29, -12, 0 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 2, 0, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x2, 0x1, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 2, 1, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x18, 0xffe8, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0xffe8, 0x0 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x2, 0xc + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, -24, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, -24, 0 + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 1, 2, 12 delay 5 - createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 0x5, 0x3, 0xc + createsprite gWavyMusicNotesSpriteTemplate, ANIM_TARGET, 2, 5, 3, 12 delay 5 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1d, 0xfff4, 0x0 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0xffe3, 0x1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 29, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, -29, 1 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 @@ -6397,7 +6397,7 @@ gBattleAnimMove_RelicSong:: playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_DEF_PARTNER - createvisualtask AnimTask_MusicNotesClearRainbowBlend, 0x2 + createvisualtask AnimTask_MusicNotesClearRainbowBlend, 2 waitforvisualfinish end @@ -6406,7 +6406,7 @@ gBattleAnimMove_SecretSword:: setalpha 12, 8 playsewithpan SE_M_SWORDS_DANCE, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 16, RGB_BLACK - createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 + createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0, 0 delay 22 flash_anim_tag_with_color tag=ANIM_TAG_SWORD, delay=2, num_blends=2, color1=RGB(18, 31, 31), blend_y1=16, color2=0, blend_y2=0 waitforvisualfinish @@ -6414,8 +6414,8 @@ gBattleAnimMove_SecretSword:: delay 1 monbg ANIM_TARGET playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSecretSwordBladesTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xFF00, 0xA - createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 0x28, 0xffe0, 0x0 + createsprite gSecretSwordBladesTemplate, ANIM_TARGET, 1, 0, 10, 0, -256, 10 + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 0 delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 waitforvisualfinish @@ -6432,18 +6432,18 @@ gBattleAnimMove_Glaciate:: fadetobg BG_ICE waitbgfadeout playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x68, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x48, 0x1, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x38, 0x1, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x58, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x38, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x58, 0x1, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x48, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x68, 0x1, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x48, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x38, 0x1, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x50, 0x0, 0x4b - createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x48, 0x1, 0x4b + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, -12, 104, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, -12, 72, 1, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, -6, 56, 1, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, -6, 88, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 0, 56, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 0, 88, 1, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 6, 72, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 6, 104, 1, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 12, 72, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 12, 56, 1, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 18, 80, 0, 75 + createsprite gGlaciateSmokeTemplate, ANIM_TARGET, 4, 0, 18, 72, 1, 75 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_DEF_SIDE, 2, 0, 10, RGB_WHITE call IceCrystalEffectLong @@ -6466,7 +6466,7 @@ gBattleAnimMove_BoltStrike:: waitforvisualfinish clearmonbg ANIM_ATTACKER playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - waitplaysewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER, 0x8 + waitplaysewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER, 8 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 2, 4 delay 10 fadetobg BG_BOLT_STRIKE @@ -6480,7 +6480,7 @@ gBattleAnimMove_BoltStrike:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 32, 1 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET call ElectricityEffect - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB(30, 31, 1) playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET call ElectricityEffect @@ -6495,31 +6495,31 @@ gBattleAnimMove_BoltStrike:: gBattleAnimMove_BlueFlare:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 16, RGB_BLACK - loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 0x7, 0x9 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe0, 0x10 + loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 7, 9 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 0, -32, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x16, 0xffea, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 22, -22, 16 delay 2 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 9, RGB_RED - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x1e, 0x0, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 30, 0, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x14, 0x14, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 20, 20, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x1c, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 0, 28, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffed, 0x13, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, -19, 19, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffe5, 0x0, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, -27, 0, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffee, 0xffee, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, -18, -18, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe7, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 0, -25, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x11, 0xffef, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 17, -17, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x17, 0x0, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 23, 0, 16 delay 2 - createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x10, 0x10, 0x10 + createsprite gBlueFlareFlameJabTemplate, ANIM_TARGET, 2, 1, 0, 16, 16, 16 waitforvisualfinish playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET call BlueFlareFireSpin @@ -6527,7 +6527,7 @@ gBattleAnimMove_BlueFlare:: call BlueFlareFireSpin fadetobg BG_FIRE_2 waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x1000, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, 4096, 0, 0, -1 waitbgfadein playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER call BlueFlareFlameSpreadEffect @@ -6538,27 +6538,27 @@ gBattleAnimMove_BlueFlare:: waitforvisualfinish end BlueFlareFireSpin: - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, 0x1 + createsprite gBlueFlareFlameSwirlTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, 1 delay 2 return BlueFlareFlameSpreadEffect: - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xb0, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff40, 0xf0, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xff60, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff40, 0xff90, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xa0, 0x30, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff20, 0xffe0, 0x28 - createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x70, 0xff80, 0x28 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, 0, 176, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, -192, 240, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, 0, -160, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, -192, -112, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, 160, 48, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, -224, -32, 40 + createsprite gBlueFlareBurnTemplate, ANIM_TARGET, 1, 0, 10, 112, -128, 40 return gBattleAnimMove_FieryDance:: @@ -6592,24 +6592,24 @@ FreezeShockCharge: waitforvisualfinish end FreezeShockAttack: - loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 0x5, 0x5 + loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 5, 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK monbg ANIM_TARGET waitforvisualfinish playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_ATTACKER - createsprite gFreezeShockIceBallTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gFreezeShockIceBallTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 delay 15 - waitplaysewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 0x13 + waitplaysewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 19 call ElectricityEffect waitforvisualfinish clearmonbg ANIM_TARGET @@ -6624,7 +6624,7 @@ gBattleAnimMove_IceBurn:: IceBurnCharge: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 0x4, 0x3 + loopsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET, 4, 3 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 8, 0, RGB_BLACK createvisualtask AnimTask_HorizontalShake, 5, ANIM_ATTACKER, 2, 16 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 15, RGB_WHITE @@ -6639,39 +6639,39 @@ IceBurnUnleash: fadetobg BG_ICE waitbgfadeout createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB_WHITE - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x68, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x48, 0x1, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x38, 0x1, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x58, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x38, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x58, 0x1, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x48, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x68, 0x1, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x48, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x38, 0x1, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x50, 0x0, 0x4b - createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x48, 0x1, 0x4b + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, -12, 104, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, -12, 72, 1, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, -6, 56, 1, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, -6, 88, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 0, 56, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 0, 88, 1, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 6, 72, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 6, 104, 1, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 12, 72, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 12, 56, 1, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 18, 80, 0, 75 + createsprite gIceBurnSmokeTemplate, ANIM_TARGET, 4, 0, 18, 72, 1, 75 call FireSpreadEffect playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 10, 20, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -5, 10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 17, -12, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xf, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, -15, 15, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 4 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0x14, 0x2, 0x0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 20, 2, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 9, 0, RGB_WHITE waitforvisualfinish @@ -6683,23 +6683,23 @@ gBattleAnimMove_Snarl:: monbg ANIM_DEF_PARTNER fadetobg BG_DARK waitbgfadeout - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1d, 0xfff4, 0x0 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0xffe3, 0x1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 29, -12, 0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, -29, 1 delay 16 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xc, 0xffe3, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe3, 0xfff4, 0x0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 12, -29, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -29, -12, 0 delay 16 - createvisualtask AnimTask_UproarDistortion, 0x2, 0x0 + createvisualtask AnimTask_UproarDistortion, 2, 0 createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x18, 0xffe8, 0x1 - createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0xffe8, 0x0 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, -24, 1 + createsprite gJaggedMusicNoteSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, -24, 0 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 @@ -6724,16 +6724,16 @@ gBattleAnimMove_IcicleCrash:: fadetobg BG_ICE waitbgfadein monbg ANIM_DEF_PARTNER - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xfffb, 0x0, 0xfffb, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -5, 0, -5, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x6, 0x1 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 5, 0, 6, 1 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0x13, 0x0, 0xa, 0x01 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 19, 0, 10, 1 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xffe9, 0x0, 0xfff6, 0x1 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -23, 0, -10, 1 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 50, 1 delay 2 @@ -6745,28 +6745,28 @@ gBattleAnimMove_IcicleCrash:: waitbgfadeout end LaunchIcicleCrashSpear: - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -20, 0, -10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0x1c, 0x0, 0xa, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 28, 0, 10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xfff6, 0x0, 0xfffb, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -10, 0, -5, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x6, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 10, 0, 6, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0x18, 0x0, 0xa, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 24, 0, 10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xffe0, 0x0, 0xfff6, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -32, 0, -10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, -20, 0, -10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 - createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 0x1e, 0x0, 0xa, 0x0 + createsprite gIcicleCrashSpearTemplate, ANIM_TARGET, 2, 30, 0, 10, 0 playsewithpan SE_M_ICY_WIND, SOUND_PAN_TARGET delay 2 return @@ -6774,10 +6774,10 @@ LaunchIcicleCrashSpear: gBattleAnimMove_VCreate:: monbg ANIM_ATK_PARTNER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK @Darken - createsprite gVCreateRedOrbTemplate, ANIM_ATTACKER, 2, 0x0, 0x11, 0x0, 0x1 + createsprite gVCreateRedOrbTemplate, ANIM_ATTACKER, 2, 0, 17, 0, 1 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 2 - createsprite gVCreateRedRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gVCreateRedRingTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 9, RGB_RED playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET @@ -6803,7 +6803,7 @@ gBattleAnimMove_VCreate:: clearmonbg ANIM_ATK_PARTNER fadetobg BG_FIRE @Mr. DS Fire waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xA00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10 @@ -6811,21 +6811,21 @@ gBattleAnimMove_VCreate:: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 50, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB_RED playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, 1, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, 1, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, 1, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, 1, 1 waitforvisualfinish - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 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 @@ -6834,7 +6834,7 @@ gBattleAnimMove_VCreate:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB_RED createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 9, 0, RGB_RED delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER call UnsetPsychicBg @@ -6842,8 +6842,8 @@ gBattleAnimMove_VCreate:: waitforvisualfinish end VCreateFlames: - createsprite gVCreateFlameTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x16, 0xFFEA, 0x10 @upperright - createsprite gVCreateFlameTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFEE, 0xFFEE, 0x10 @upperleft + createsprite gVCreateFlameTemplate, ANIM_TARGET, 2, 0, 1, 22, -22, 16 @upperright + createsprite gVCreateFlameTemplate, ANIM_TARGET, 2, 0, 1, -18, -18, 16 @upperleft delay 3 return @@ -6858,26 +6858,26 @@ gBattleAnimMove_FusionFlare:: delay 8 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 - createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 0x8, 0x1, 0x0 + createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 8, 1, 0 delay 8 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER createsprite gFusionFlareRedBallUpTemplate, ANIM_ATTACKER, 2 delay 32 - createsprite gFusionFlareRedBallTemplate, ANIM_ATTACKER, 3, 0x0, 0xffA0, 0x2F - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x64, 0x64, 0x8, 0x1, 0x14, 0x28, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x14, 0x64, 0x10, 0x2, 0xa, 0x23, 0x1 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0xc8, 0x50, 0x8, 0x1, 0x28, 0x14, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x50, 0x3c, 0xa, 0x3, 0x14, 0x32, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x8c, 0x64, 0x10, 0x1, 0x14, 0x1e, 0x1 + createsprite gFusionFlareRedBallTemplate, ANIM_ATTACKER, 3, 0, -96, 47 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 200, 80, 8, 1, 40, 20, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 80, 60, 10, 3, 20, 50, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 140, 100, 16, 1, 20, 30, 1 delay 41 blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_RED delay 5 - createsprite gFusionFlareRedRingTemplate, ANIM_ATTACKER, 3, 0x1, 0x1, 0x1, 0x1, 0x1F, 0x8 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x64, 0x64, 0x8, 0x1, 0x14, 0x28, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x14, 0x64, 0x10, 0x2, 0xa, 0x23, 0x1 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0xc8, 0x50, 0x8, 0x1, 0x28, 0x14, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x50, 0x3c, 0xa, 0x3, 0x14, 0x32, 0x0 - createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 0x8c, 0x64, 0x10, 0x1, 0x14, 0x1e, 0x1 + createsprite gFusionFlareRedRingTemplate, ANIM_ATTACKER, 3, 1, 1, 1, 1, 31, 8 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 200, 80, 8, 1, 40, 20, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 80, 60, 10, 3, 20, 50, 0 + createsprite gFusionFlareRedBubblesTemplate, ANIM_ATTACKER, 66, 140, 100, 16, 1, 20, 30, 1 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 2, 16 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER @@ -6888,15 +6888,15 @@ gBattleAnimMove_FusionFlare:: blendoff end FusionFlareBuff: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return gBattleAnimMove_FusionBolt:: @@ -6910,34 +6910,34 @@ gBattleAnimMove_FusionBolt:: invisible ANIM_ATTACKER waitforvisualfinish delay 8 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x0 + createvisualtask AnimTask_VoltTackleBolt, 5, 0 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x1 + createvisualtask AnimTask_VoltTackleBolt, 5, 1 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x2 + createvisualtask AnimTask_VoltTackleBolt, 5, 2 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x3 + createvisualtask AnimTask_VoltTackleBolt, 5, 3 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET waitforvisualfinish - createsprite gFusionBoltBallTemplate, ANIM_TARGET, 2, 0x10 + createsprite gFusionBoltBallTemplate, ANIM_TARGET, 2, 16 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER delay 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 10, 0, 18, 1 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x10, 0x10 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 1, 16, 16 delay 2 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0xfff0, 0xfff0 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 1, -16, -16 delay 8 - createvisualtask AnimTask_VoltTackleAttackerReappear, 0x5 + createvisualtask AnimTask_VoltTackleAttackerReappear, 5 waitforvisualfinish createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 3, 0, 9, 1 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x10 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 16 delay 2 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0, 0xfff0 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -16, -16 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 14, 0, RGB_BLACK waitforvisualfinish end @@ -6946,30 +6946,30 @@ gBattleAnimMove_FusionBolt:: gBattleAnimMove_FlyingPress:: setalpha 15, 0 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish delay 15 playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET createsprite gBounceBallLandSpriteTemplate, ANIM_TARGET, 3 delay 2 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 5 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0x8, 0x8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 8, 8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0xfff8, 0xfff8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, -8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0x8, 0xfff8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0xfff8, 0x8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, -8, 8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0x8, 0x8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 8, 8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0xfff8, 0xfff8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, -8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0x8, 0xfff8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 8, -8, 1, 0 delay 2 - createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, 0xfff8, 0x8, 0x1, 0x0 + createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 0, -8, 8, 1, 0 waitforvisualfinish blendoff end @@ -6980,22 +6980,22 @@ gBattleAnimMove_MatBlock:: setalpha 16, 0 delay 0 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0x18 - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0x18 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, -8, 24 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 8, 24 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0x8 - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0x8 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, -8, 8 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 8, 8 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0xfff8 - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0xfff8 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, -8, -8 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 8, -8 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0xffe8 - createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0xffe8 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, -8, -24 + createsprite gMatBlockGreenConversionTemplate, ANIM_ATTACKER, 2, 8, -24 delay 20 - createvisualtask AnimTask_ConversionAlphaBlend, 0x5 + createvisualtask AnimTask_ConversionAlphaBlend, 5 waitforvisualfinish delay 1 clearmonbg ANIM_ATK_PARTNER @@ -7007,26 +7007,26 @@ gBattleAnimMove_Belch:: splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_SUCCESS, SOUND_PAN_ATTACKER - createsprite gBelchBerryTemplate, ANIM_ATTACKER, 2, 0x14, 0xfff8, 0xfff8, 0xfff8, 0x14, 0xffe0 + createsprite gBelchBerryTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32 delay 19 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 10, 0, 20, 1 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, 1, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, 1, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, 1, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, 1, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0x18, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, 24, 1, 1 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -7035,8 +7035,8 @@ gBattleAnimMove_Belch:: gBattleAnimMove_Rototiller:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB(12, 9, 4) waitforvisualfinish - createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0x0, 0x0, 0xb4 - createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0x0, 0x1, 0xb4 + createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 0, 180 + createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 1, 180 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 6, 4, 2, 4 call DigThrowDirt call DigThrowDirt @@ -7134,8 +7134,8 @@ PhantomForceAttack: waitforvisualfinish delay 10 playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER - createvisualtask AnimTask_PurpleFlamesOnTarget, 0x3 - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x30 + createvisualtask AnimTask_PurpleFlamesOnTarget, 3 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 delay 30 createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_IMPACT, 0, 12, 12, RGB(0, 0, 23) waitforvisualfinish @@ -7289,25 +7289,25 @@ gBattleAnimMove_ForestsCurse:: waitforvisualfinish playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 8, RGB(3, 23, 0) - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x64, 0x64, 0x8, 0x1, 0x14, 0x28, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x14, 0x64, 0x10, 0x2, 0xa, 0x23, 0x1 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0xc8, 0x50, 0x8, 0x1, 0x28, 0x14, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x50, 0x3c, 0xa, 0x3, 0x14, 0x32, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x8c, 0x64, 0x10, 0x1, 0x14, 0x1e, 0x1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 200, 80, 8, 1, 40, 20, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 80, 60, 10, 3, 20, 50, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 140, 100, 16, 1, 20, 30, 1 waitforvisualfinish playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x64, 0x64, 0x8, 0x1, 0x14, 0x28, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x14, 0x64, 0x10, 0x2, 0xa, 0x23, 0x1 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0xc8, 0x50, 0x8, 0x1, 0x28, 0x14, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x50, 0x3c, 0xa, 0x3, 0x14, 0x32, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x8c, 0x64, 0x10, 0x1, 0x14, 0x1e, 0x1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 200, 80, 8, 1, 40, 20, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 80, 60, 10, 3, 20, 50, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 140, 100, 16, 1, 20, 30, 1 waitforvisualfinish playsewithpan SE_M_SCRATCH, SOUND_PAN_ATTACKER - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x64, 0x64, 0x8, 0x1, 0x14, 0x28, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x14, 0x64, 0x10, 0x2, 0xa, 0x23, 0x1 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0xc8, 0x50, 0x8, 0x1, 0x28, 0x14, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x50, 0x3c, 0xa, 0x3, 0x14, 0x32, 0x0 - createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 0x8c, 0x64, 0x10, 0x1, 0x14, 0x1e, 0x1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 100, 100, 8, 1, 20, 40, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 20, 100, 16, 2, 10, 35, 1 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 200, 80, 8, 1, 40, 20, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 80, 60, 10, 3, 20, 50, 0 + createsprite gForestsCurseIngrainTemplate, ANIM_ATTACKER, 66, 140, 100, 16, 1, 20, 30, 1 waitforvisualfinish createsprite gCurseGhostSpriteTemplate, ANIM_TARGET, 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 14, 1 @@ -7328,18 +7328,18 @@ gBattleAnimMove_PetalBlizzard:: 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=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 + createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 115, 55, 10, 60, 30 delay 3 - createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x64, 0x32, 0x4, 0x32, 0x1A + createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 100, 50, 4, 50, 26 delay 1 - createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x69, 0x19, 0x8, 0x3c, 0x14 + createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 105, 25, 8, 60, 20 delay 1 - createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x73, 0x28, 0xA, 0x30, 0x1E + createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 115, 40, 10, 48, 30 delay 3 - createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 0x78, 0x1E, 0x6, 0x2d, 0x19 + createsprite gPetalBlizzardTwister1Template, ANIM_TARGET, 2, 120, 30, 6, 45, 25 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 + createsprite gPetalBlizzardTwister2Template, ANIM_TARGET, 2, 105, 20, 8, 40, 0 delay 3 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 @@ -7405,7 +7405,7 @@ gBattleAnimMove_DisarmingVoice:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 26, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 26, 1 waitforvisualfinish - createvisualtask SoundTask_WaitForCry, 0x5 + createvisualtask SoundTask_WaitForCry, 5 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 0, RGB(29, 19, 27) waitforvisualfinish @@ -7477,45 +7477,45 @@ gBattleAnimMove_CraftyShield:: setalpha 16, 0 delay 0 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xffe8, 0xffe8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -24, -24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0xffe8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -8, -24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0xffe8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 8, -24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x18, 0xffe8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 24, -24 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xffe8, 0xfff8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -24, -8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0xfff8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -8, -8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0xfff8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 8, -8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x18, 0xfff8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 24, -8 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xffe8, 0x8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -24, 8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0x8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -8, 8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0x8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 8, 8 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x18, 0x8 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 24, 8 delay 3 playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xffe8, 0x18 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -24, 24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0xfff8, 0x18 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, -8, 24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x8, 0x18 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 8, 24 delay 3 - createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 0x18, 0x18 + createsprite gCraftyShieldPinkConversionTemplate, ANIM_ATTACKER, 2, 24, 24 delay 20 playsewithpan SE_M_BARRIER, SOUND_PAN_ATTACKER flash_anim_tag_with_color tag=ANIM_TAG_CONVERSION, delay=1, num_blends=1, color1=RGB(31, 31, 13), blend_y1=12, color2=0, blend_y2=0 delay 6 - createvisualtask AnimTask_ConversionAlphaBlend, 0x5 + createvisualtask AnimTask_ConversionAlphaBlend, 5 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 5, 0, RGB(31, 13, 19) waitforvisualfinish @@ -7553,7 +7553,7 @@ gBattleAnimMove_GrassyTerrain:: createsprite gGrassyTerrainOrbsTemplate, ANIM_ATTACKER, 2, 26, 210 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 4, RGB(11, 26, 11) delay 52 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 createsprite gGrassyTerrainStarTemplate, ANIM_TARGET, 2, 0 @@ -7564,7 +7564,7 @@ gBattleAnimMove_GrassyTerrain:: createsprite gGrassyTerrainStarTemplate, ANIM_TARGET, 2, 160 createsprite gGrassyTerrainStarTemplate, ANIM_TARGET, 2, 192 createsprite gGrassyTerrainStarTemplate, ANIM_TARGET, 2, 224 - panse_adjustnone SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0x0 + panse_adjustnone SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +1, 0 waitforvisualfinish delay 4 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 4, 0, RGB(31, 24, 31) @@ -7588,7 +7588,7 @@ gBattleAnimMove_MistyTerrain:: createsprite gMistyTerrainOrbsTemplate, ANIM_ATTACKER, 2, 26, 210 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 7, RGB(31, 24, 31) delay 52 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 createsprite gMistyTerrainStarTemplate, ANIM_TARGET, 2, 0 @@ -7608,28 +7608,28 @@ gBattleAnimMove_MistyTerrain:: gBattleAnimMove_Electrify:: monbg ANIM_ATTACKER - loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET 0xa 0x4 + loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET 10 4 createsprite gElectrifyRingTemplate, ANIM_ATTACKER, 2 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 4 createsprite gElectrifyRingTemplate, ANIM_ATTACKER, 2 delay 4 createsprite gElectrifyRingTemplate, ANIM_ATTACKER, 2 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 waitforvisualfinish playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_ATTACKER - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0, 0x28, 0x2 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 delay 10 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 11, RGB(27, 28, 0) createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 3, RGB(27, 28, 0) @@ -7638,25 +7638,25 @@ gBattleAnimMove_Electrify:: delay 1 monbg ANIM_DEF_PARTNER playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET - createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 + createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x5, 0x0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 5, 0, 5, 0 delay 1 - createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 + createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 1 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x5, 0x1 - createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -5, 10, 5, 1 + createsprite gElectrifyYellowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 delay 1 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xf, 0x14, 0x5, 0x2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xfff6, 0x5, 0x0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 15, 20, 5, 2 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -15, -10, 5, 0 delay 2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x19, 0x0, 0x5, 0x1 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 25, 0, 5, 1 delay 2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x5, 0x2 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -8, 8, 5, 2 delay 2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x2, 0xfff8, 0x5, 0x0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 2, -8, 5, 0 delay 2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xf, 0x5, 0x1 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -20, 15, 5, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(27, 28, 0) createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 3, 0, RGB(27, 28, 0) @@ -7668,51 +7668,51 @@ gBattleAnimMove_PlayRough:: monbg ANIM_DEF_PARTNER setalpha 12, 8 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0xa - waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 0x14 - waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0x1e - waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 0x28 - waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0x32 - waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 0x3c - waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0x46 - waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 0x50 - waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0x5a - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x0, 0xffee, 0x6, 0x6, 0x4 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x1, 0x12, 0x6, 0x6, 0x4 - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0xff00, 0xffd6 - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0x80, 0xfff2 - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0x1a0, 0xffda - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0xff80, 0xffea + waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 10 + waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 20 + waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 30 + waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 40 + waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 50 + waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 60 + waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 70 + waitplaysewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER, 80 + waitplaysewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 90 + createvisualtask AnimTask_TranslateMonElliptical, 2, 0, -18, 6, 6, 4 + createvisualtask AnimTask_TranslateMonElliptical, 2, 1, 18, 6, 6, 4 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, -256, -42 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 128, -14 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 416, -38 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, -128, -22 delay 0 call SubmissionHit playsewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xa0, 0xffe0 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff00, 0xffd8 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x80, 0xfff0 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x1a0, 0xffda - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff80, 0xffea - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xfe80, 0xffe1 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 160, -32 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -256, -40 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 128, -16 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 416, -38 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -128, -22 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -384, -31 delay 0 call SubmissionHit playsewithpan SE_M_DIVE, SOUND_PAN_TARGET - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0xff00, 0xffd6 - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0x80, 0xfff2 - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0x1a0, 0xffda - createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 0xff80, 0xffea + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, -256, -42 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 128, -14 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, 416, -38 + createsprite gPinkHeartSpriteTemplate, ANIM_TARGET, 3, -128, -22 delay 0 playsewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xa0, 0xffe0 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff00, 0xffd8 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x80, 0xfff0 - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x1a0, 0xffda - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff80, 0xffea - createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xfe80, 0xffe1 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 160, -32 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -256, -40 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 128, -16 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, 416, -38 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -128, -22 + createsprite gDizzyPunchDuckSpriteTemplate, ANIM_TARGET, 3, 16, 8, -384, -31 delay 0 call SubmissionHit waitforvisualfinish delay 13 stopsound - clearmonbg 0x3 + clearmonbg 3 blendoff waitforvisualfinish end @@ -7723,16 +7723,16 @@ gBattleAnimMove_FairyWind:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB(29, 19, 27) waitforvisualfinish playsewithpan SE_M_GUST, SOUND_PAN_TARGET - createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 0x14, 0xfff6, 0x14, 0x0, 0x16, 0x14, 0x1 + createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, 20, 1 delay 5 - createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 0x14, 0xfff6, 0x14, 0x5, 0x16, 0xffee, 0x1 + createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 20, -10, 20, 5, 22, -18, 1 delay 5 - createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 0x14, 0xfff6, 0x14, 0xfff6, 0x16, 0xf, 0x1 + createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 20, -10, 20, -10, 22, 15, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 18, 1 delay 5 - createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 0x14, 0xfff6, 0x14, 0x0, 0x16, 0xffec, 0x1 + createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, -20, 1 delay 5 - createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 0x14, 0xfff6, 0x14, 0x0, 0x16, 0xc, 0x1 + createsprite gFairyWindCloudTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, 12, 1 delay 5 waitforvisualfinish stopsound @@ -7763,7 +7763,7 @@ gBattleAnimMove_Moonblast:: end gBattleAnimMove_Boomburst:: - invert_screen_color scenery=0x1 | 0x4 | 0x8 | 0x10 + invert_screen_color scenery=1 | 4 | 8 | 16 createvisualtask SoundTask_PlayCryWithEcho, 5, FALSE createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 @@ -7789,7 +7789,7 @@ gBattleAnimMove_Boomburst:: createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, 1, 1 Boomburst_Last: delay 4 - invert_screen_color scenery=0x1 | 0x4 | 0x8 | 0x10 + invert_screen_color scenery=1 | 4 | 8 | 16 waitforvisualfinish end Boomburst_Doubles: @@ -7816,14 +7816,14 @@ gBattleAnimMove_FairyLock:: monbg ANIM_ATK_PARTNER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB(31, 24, 26) waitforvisualfinish - loopsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET, 0x6, 0x9 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x7 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x33 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x2 + loopsewithpan SE_M_SCRATCH, SOUND_PAN_TARGET, 6, 9 + createvisualtask AnimTask_VoltTackleBolt, 5, 7 + createvisualtask AnimTask_VoltTackleBolt, 5, 51 + createvisualtask AnimTask_VoltTackleBolt, 5, 2 waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x32 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x6 - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x35 + createvisualtask AnimTask_VoltTackleBolt, 5, 50 + createvisualtask AnimTask_VoltTackleBolt, 5, 6 + createvisualtask AnimTask_VoltTackleBolt, 5, 53 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 0, RGB(31, 24, 26) waitforvisualfinish @@ -7836,15 +7836,15 @@ gBattleAnimMove_KingsShield:: goto gBattleAnimMove_Protect gBattleAnimMove_PlayNice:: - loopsewithpan SE_M_SANDSTORM, SOUND_PAN_ATTACKER, 0xc, 0x3 + loopsewithpan SE_M_SANDSTORM, SOUND_PAN_ATTACKER, 12, 3 createvisualtask AnimTask_SwayMon, 5, 0, 12, 4096, 4, ANIM_ATTACKER delay 15 - createsprite gRedHeartProjectileSpriteTemplate, ANIM_TARGET, 3, 0x14, 0xfff8 + createsprite gRedHeartProjectileSpriteTemplate, ANIM_TARGET, 3, 20, -8 end gBattleAnimMove_Confide:: createvisualtask AnimTask_Splash, 2, ANIM_ATTACKER, 3 - createsprite gConfideBubbleTemplate, ANIM_ATTACKER, 11, 0x0, 0x64 + createsprite gConfideBubbleTemplate, ANIM_ATTACKER, 11, 0, 100 playsewithpan SE_M_METRONOME, SOUND_PAN_ATTACKER waitforvisualfinish end @@ -7855,49 +7855,49 @@ gBattleAnimMove_DiamondStorm:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 15, RGB(8, 4, 6) createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_ICE_CRYSTALS, 0, 13, 13, RGB(30, 14, 31) @Pink waitforvisualfinish - panse SE_M_BLIZZARD, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0, 0x50, 0x0, 0x0, 0x1 + panse SE_M_BLIZZARD, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff1, 0x0, 0xfff1, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -15, 0, -15, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xfffb, 0x0, 0xfffb, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0xa, 0x0, 0xa, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -5, 0, -5, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, 10, 0, 10, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0xf, 0x0, 0xf, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, 15, 0, 15, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff1, 0x0, 0xfff1, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -15, 0, -15, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 80, 0, 0, 1 delay 3 - createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xffe7, 0x0, 0xffe7, 0x48, 0x1 - createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0x0, 0x14, 0x0, 0x14, 0x50, 0x0, 0x0, 0x1 + createsprite gSwirlingSnowballSpriteTemplate, ANIM_ATTACKER, 40, 0, -25, 0, -25, 72, 1 + createsprite gDiamondStormBlizzardTemplate, ANIM_ATTACKER, 40, 0, 20, 0, 20, 80, 0, 0, 1 delay 3 playsewithpan SE_M_TWISTER, SOUND_PAN_TARGET - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x78, 0x46, 0x5, 0x46, 0x1e + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 120, 70, 5, 70, 30 delay 1 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x73, 0x37, 0x6, 0x3c, 0x19 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 115, 55, 6, 60, 25 delay 1 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x73, 0x3c, 0x7, 0x3c, 0x1e - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x73, 0x37, 0xa, 0x3c, 0x1e + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 115, 60, 7, 60, 30 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 115, 55, 10, 60, 30 delay 3 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x64, 0x32, 0x4, 0x32, 0x1a + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 100, 50, 4, 50, 26 delay 1 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x69, 0x19, 0x8, 0x3c, 0x14 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 105, 25, 8, 60, 20 delay 1 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x73, 0x28, 0xa, 0x30, 0x1e + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 115, 40, 10, 48, 30 delay 3 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x78, 0x1e, 0x6, 0x2d, 0x19 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x73, 0x23, 0xa, 0x3c, 0x1e + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 120, 30, 6, 45, 25 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 115, 35, 10, 60, 30 delay 3 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x69, 0x14, 0x8, 0x28, 0x0 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 105, 20, 8, 40, 0 delay 3 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x14, 0xff, 0xf, 0x20, 0x0 - createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 0x6e, 0xa, 0x8, 0x20, 0x14 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 20, 255, 15, 32, 0 + createsprite gDiamondStormDiamondsTemplate, ANIM_TARGET, 2, 110, 10, 8, 32, 20 waitforvisualfinish @this is the buffet part create_basic_hitsplat_sprite ANIM_TARGET, 3, x=-32, y=-16, relative_to=ANIM_TARGET, animation=3 @@ -7925,7 +7925,7 @@ gBattleAnimMove_SteamEruption:: delay 32 monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET - panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 call SteamEruptionBreath call SteamEruptionBreath createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 9, RGB_RED @@ -7955,7 +7955,7 @@ gBattleAnimMove_SteamEruption:: waitforvisualfinish end SteamEruptionBreath: - createsprite gSteamEruptionBreathTemplate, ANIM_TARGET, 2, 0x0, 0x5, 0x0, 0x5, 0x14 + createsprite gSteamEruptionBreathTemplate, ANIM_TARGET, 2, 0, 5, 0, 5, 20 delay 1 return @@ -7973,21 +7973,21 @@ gBattleAnimMove_HyperspaceHole:: delay 1 invisible ANIM_ATTACKER waitsound - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x30 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 delay 23 - createvisualtask AnimTask_IsTargetSameSide, 0x2 - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 + createvisualtask AnimTask_IsTargetSameSide, 2 + createvisualtask AnimTask_SnatchOpposingMonMove, 2 delay 25 visible ANIM_ATTACKER invisible ANIM_ATTACKER delay 5 - createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, -10, -10, 0 call HyperspaceHoleMovement - createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 10, 20, 0 call HyperspaceHoleMovement - createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, -5, 10, 0 call HyperspaceHoleMovement - createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gHyperspaceHoleImpactTemplate, ANIM_TARGET, 2, 17, -12, 0 call HyperspaceHoleMovement waitforvisualfinish visible ANIM_ATTACKER @@ -8034,28 +8034,28 @@ gBattleAnimMove_WaterShuriken:: gBattleAnimMove_MysticalFire:: call SetPsychicBackground setalpha 8, 8 - playse 0xb1 + playse 177 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 10, 1 blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=8, color=RGB_WHITE waitforvisualfinish waitsound blendoff - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0xffff, 0x0 + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, -1, 0 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0x0, 0x1 + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, 0, 1 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0xffff, 0xffff + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, -1, -1 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0x2, 0x1 + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, 2, 1 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0x1, 0xffff + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, 1, -1 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0xffff, 0x1 + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, -1, 1 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0x1, 0xfffe + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, 1, -2 delay 1 - createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x1e, 0x3, 0x1 - playse 0x8c + createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, 3, 1 + playse 140 waitforvisualfinish call UnsetPsychicBg end @@ -8063,32 +8063,32 @@ gBattleAnimMove_MysticalFire:: gBattleAnimMove_SpikyShield:: monbg ANIM_ATK_PARTNER splitbgprio ANIM_ATTACKER - waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 0x10 - createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 0x18, 0x0, 0x5a + waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16 + createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90 delay 15 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x0, 0xFFE0, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, -32, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x16, 0xFFEA, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 22, -22, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x1E, 0x0, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 30, 0, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x14, 0x14, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 20, 20, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x0, 0x1C, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, 28, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFED, 0x13, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, -19, 19, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFE5, 0x0, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, -27, 0, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFEE, 0xFFEE, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, -18, -18, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x0, 0xFFE7, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 0, -25, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x11, 0xFFEF, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 17, -17, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x17, 0x0, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 23, 0, 16 delay 2 - createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x10, 0x10, 0x10 + createsprite gNeedleArmSpikeSpriteTemplate, ANIM_TARGET, 2, 0, 1, 16, 16, 16 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER end @@ -8096,11 +8096,11 @@ gBattleAnimMove_SpikyShield:: gBattleAnimMove_AromaticMist:: playsewithpan SE_M_SWEET_SCENT, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB(29, 19, 27) - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x64 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 100 delay 25 - setpan 0x0 + setpan 0 call SweetScentEffect - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x37, 0x0 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 55, 0 setpan SOUND_PAN_TARGET blend_color_cycle selector=F_PAL_DEF_SIDE, delay=1, num_blends=5, initial_blend_y=5, target_blend_y=13, color=RGB(31, 21, 21) call SweetScentEffect @@ -8111,9 +8111,9 @@ gBattleAnimMove_AromaticMist:: gBattleAnimMove_EerieImpulse:: monbg ANIM_DEF_PARTNER - waitplaysewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET 0x13 + waitplaysewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET 19 delay 4 - createsprite gEerieImpulseRingTemplate, ANIM_ATTACKER, 0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + createsprite gEerieImpulseRingTemplate, ANIM_ATTACKER, 0, 45, 0, 0, 0, 0, 0, 1 delay 11 createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 1 @@ -8129,37 +8129,37 @@ gBattleAnimMove_EerieImpulse:: createsprite gZapCannonSparkSpriteTemplate, ANIM_TARGET, 4, 10, 0, 48, 30, 0, 40, 2 waitforvisualfinish playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0x1, 0x0, 0x20, 0x10 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x5, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x5, 0x1 + createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 0, -5, 1, 0, 32, 16 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 5, 0, 5, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -5, 10, 5, 1 delay 7 - createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xa, 0x1, 0x0, 0x20, 0x10 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xf, 0x14, 0x5, 0x2 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xfff6, 0x5, 0x0 + createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, -15, 10, 1, 0, 32, 16 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 15, 20, 5, 2 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -15, -10, 5, 0 delay 7 - createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xfff1, 0x1, 0x0, 0x20, 0x10 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x19, 0x0, 0x5, 0x1 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x5, 0x2 + createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, -15, -15, 1, 0, 32, 16 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 25, 0, 5, 1 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -8, 8, 5, 2 delay 7 - createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 0xa, 0xfffb, 0x1, 0x0, 0x20, 0x10 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0x2, 0xfff8, 0x5, 0x0 - createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xf, 0x5, 0x1 + createsprite gEerieImpulseImpactTemplate, ANIM_ATTACKER, 2, 10, -5, 1, 0, 32, 16 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, 2, -8, 5, 0 + createsprite gElectricitySpriteTemplate, ANIM_TARGET, 2, -20, 15, 5, 1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end gBattleAnimMove_VenomDrench:: monbg ANIM_DEF_PARTNER - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xfffb, 0x1, 0xfffb, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -5, 1, -5, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 5, 0, 6, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0x13, 0x1, 0xa, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 19, 1, 10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xffe9, 0x2, 0xfff6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -23, 2, -10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 call AcidDrench @@ -8168,28 +8168,28 @@ gBattleAnimMove_VenomDrench:: clearmonbg ANIM_DEF_PARTNER end AcidDrench: - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -20, 0, -10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0x1c, 0x1, 0xa, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 28, 1, 10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xfff6, 0x1, 0xfffb, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -10, 1, -5, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 10, 0, 6, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0x18, 0x1, 0xa, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 24, 1, 10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xffe0, 0x2, 0xfff6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -32, 2, -10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, -20, 0, -10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 - createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 0x1e, 0x2, 0xa, 1 + createsprite gVenomDrenchAcidTemplate, ANIM_TARGET, 2, 30, 2, 10, 1 playsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET delay 2 return @@ -8197,7 +8197,7 @@ AcidDrench: gBattleAnimMove_Powder:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET - loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 0x12, 0xa + loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 18, 10 call POWDER_SPORE call POWDER_SPORE call POWDER_SPORE @@ -8205,11 +8205,11 @@ gBattleAnimMove_Powder:: clearmonbg ANIM_DEF_PARTNER end POWDER_SPORE: - createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0x0, 0xffec, 0x55, 0x50, 0x0 + createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0, -20, 85, 80, 0 delay 12 - createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0xaa, 0x50, 0x0 + createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0, -10, 170, 80, 0 delay 12 - createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff1, 0x0, 0x50, 0x0 + createsprite gPowderBlackSporeTemplate, ANIM_ATTACKER, 2, 0, -15, 0, 80, 0 delay 12 return @@ -8236,50 +8236,50 @@ GeomancyChargeUp: clearmonbg ANIM_ATK_PARTNER end GeomancyRingBuff: - createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x0 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, 0 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x0 + createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, 0 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x0 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, 0 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 2 - createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x0 + createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, 0 delay 2 - createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x0 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, 0 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, 0x0 + createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, 0 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x0 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, 0 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 2 - createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x0 + createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, 0 delay 2 - createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x0 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gGeomancyBlueCellVortexTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, 0 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x0 + createsprite gGeomancyRedCellVortexTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, 0 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 createsprite gGeomancyRingTemplate, ANIM_ATTACKER, 2 delay 1 - createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x0 + createsprite gGeomancyGreenCellVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, 0 delay 2 return GeomancyUnleash: @@ -8301,12 +8301,12 @@ GeomancyUnleash: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 16, RGB(1, 8, 19) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 37, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 5, RGB_RED - createsprite gGeomancyRedCellRaiseTemplate, ANIM_ATTACKER, 2, 0x14, 0x20, 0xffd0, 0x32, 0x1 - createsprite gGeomancyGreenCellRaiseTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0xffda, 0x19, 0x1 - createsprite gGeomancyBlueCellRaiseTemplate, ANIM_ATTACKER, 2, 0x20, 0x20, 0xffe4, 0x28, 0x1 - createsprite gGeomancyRedCellRaiseTemplate, ANIM_ATTACKER, 2, 0xffec, 0x20, 0xffd0, 0x32, 0x1 - createsprite gGeomancyGreenCellRaiseTemplate, ANIM_ATTACKER, 2, 0x14, 0x20, 0xffe4, 0x3c, 0x1 - createsprite gGeomancyBlueCellRaiseTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0xffe4, 0x1e, 0x1 + createsprite gGeomancyRedCellRaiseTemplate, ANIM_ATTACKER, 2, 20, 32, -48, 50, 1 + createsprite gGeomancyGreenCellRaiseTemplate, ANIM_ATTACKER, 2, 0, 32, -38, 25, 1 + createsprite gGeomancyBlueCellRaiseTemplate, ANIM_ATTACKER, 2, 32, 32, -28, 40, 1 + createsprite gGeomancyRedCellRaiseTemplate, ANIM_ATTACKER, 2, -20, 32, -48, 50, 1 + createsprite gGeomancyGreenCellRaiseTemplate, ANIM_ATTACKER, 2, 20, 32, -28, 60, 1 + createsprite gGeomancyBlueCellRaiseTemplate, ANIM_ATTACKER, 2, 0, 32, -28, 30, 1 call GeomancyRageBuff call GeomancyRageBuff waitforvisualfinish @@ -8317,63 +8317,63 @@ GeomancyUnleash: clearmonbg ANIM_ATK_PARTNER end GeomancyRageBuff: - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0x0, 0x5, 0x0 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0, 5, 0 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0x0, 0xfff6, 0xfff1 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0, -10, -15 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x19 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0, 0, 25 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0x0, 0xf, 0x5 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0, 15, 5 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0x0, 0xffe7, 0x0 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0, -25, 0 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0x0, 0x1e, 0x1e + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0, 30, 30 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0x0, 0xffe5, 0x19 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 2, 0, -27, 25 delay 1 - createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0x0, 0x0, 0x8 + createsprite gGeomancyYellowRageTemplate, ANIM_TARGET, 66, 0, 0, 8 delay 1 return gBattleAnimMove_MagneticFlux:: createvisualtask AnimTask_BlendBattleAnimPal 10, (F_PAL_TARGET | F_PAL_ATK_SIDE), 2, 0, 9, RGB(27, 1, 9) - loopsewithpan SE_M_TRI_ATTACK, SOUND_PAN_ATTACKER, 0x12, 0x3 - createvisualtask AnimTask_DefenseCurlDeformMon, 0x5 + loopsewithpan SE_M_TRI_ATTACK, SOUND_PAN_ATTACKER, 18, 3 + createvisualtask AnimTask_DefenseCurlDeformMon, 5 call MagneticFluxSparks1 delay 10 call MagneticFluxSparks2 delay 10 call MagneticFluxSparks1 delay 10 - createsprite gMagneticFluxUproarTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1f, 0x8 + createsprite gMagneticFluxUproarTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 call MagneticFluxSparks2 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal 10, (F_PAL_TARGET | F_PAL_ATK_SIDE), 2, 9, 0, RGB(27, 1, 9) waitforvisualfinish end MagneticFluxSparks1: - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 return MagneticFluxSparks2: - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 return gBattleAnimMove_HappyHour:: monbg ANIM_ATTACKER - loopsewithpan SE_M_PAY_DAY, SOUND_PAN_TARGET, 0x8, 10 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xfffb, 0x0, 0xfffb, 0x1 + loopsewithpan SE_M_PAY_DAY, SOUND_PAN_TARGET, 8, 10 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -5, 0, -5, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 5, 0, 6, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0x13, 0x0, 0xa, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 19, 0, 10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xffe9, 0x0, 0xfff6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -23, 0, -10, 1 delay 2 call CoinShower call CoinShower @@ -8381,21 +8381,21 @@ gBattleAnimMove_HappyHour:: clearmonbg ANIM_ATTACKER end CoinShower: - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -20, 0, -10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0x1c, 0x0, 0xa, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 28, 0, 10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xfff6, 0x0, 0xfffb, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -10, 0, -5, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 10, 0, 6, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0x18, 0x0, 0xa, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 24, 0, 10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xffe0, 0x0, 0xfff6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -32, 0, -10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0xffec, 0x0, 0xfff6, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, -20, 0, -10, 1 delay 2 - createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 0x1e, 0x0, 0xa, 0x1 + createsprite gHappyHourCoinShowerTemplate, ANIM_TARGET, 2, 30, 0, 10, 1 delay 2 return @@ -8416,7 +8416,7 @@ gBattleAnimMove_ElectricTerrain:: createsprite gElectricTerrainOrbsTemplate, ANIM_ATTACKER, 2, 26, 210 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 4, RGB(28, 28, 0) delay 52 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 createsprite gElectricTerrainFlyingBallTemplate, ANIM_TARGET, 2, 0 @@ -8427,7 +8427,7 @@ gBattleAnimMove_ElectricTerrain:: createsprite gElectricTerrainFlyingBallTemplate, ANIM_TARGET, 2, 160 createsprite gElectricTerrainFlyingBallTemplate, ANIM_TARGET, 2, 192 createsprite gElectricTerrainFlyingBallTemplate, ANIM_TARGET, 2, 224 - loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 0x16, 0x3 + loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 22, 3 waitforvisualfinish delay 2 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 4, 0, RGB(28, 28, 0) @@ -8463,53 +8463,53 @@ gBattleAnimMove_DazzlingGleam:: waitforvisualfinish simple_palette_blend selector=F_PAL_BG, delay=0, initial_blend_y=13, target_blend_y=0, color=RGB(31, 25, 25) waitforvisualfinish - clearmonbg 0x0 + clearmonbg 0 blendoff end gBattleAnimMove_Celebrate:: - createsprite gCelebrateBagTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gCelebrateBagTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER delay 18 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER delay 71 - loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER 0x16 0x3 + loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER 22 3 end gBattleAnimMove_HoldHands:: playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 6, 3 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 delay 8 - createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gHoldHandsHeartTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 waitforvisualfinish - createvisualtask AnimTask_HelpingHandAttackerMovement, 0x5 - createsprite gHelpingHandClapSpriteTemplate, ANIM_ATTACKER, 40, 0x0 - createsprite gHelpingHandClapSpriteTemplate, ANIM_ATTACKER, 40, 0x1 + createvisualtask AnimTask_HelpingHandAttackerMovement, 5 + createsprite gHelpingHandClapSpriteTemplate, ANIM_ATTACKER, 40, 0 + createsprite gHelpingHandClapSpriteTemplate, ANIM_ATTACKER, 40, 1 delay 19 - playsewithpan SE_M_ENCORE, 0x0 + playsewithpan SE_M_ENCORE, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 5, 1 delay 14 - playsewithpan SE_M_ENCORE, 0x0 + playsewithpan SE_M_ENCORE, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 5, 1 delay 20 - playsewithpan SE_M_ENCORE, 0x0 + playsewithpan SE_M_ENCORE, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 3, 0, 10, 1 createvisualtask AnimTask_BlendMonInAndOut, 2, ANIM_ATK_PARTNER, RGB_YELLOW, 12, 1, 1 end @@ -8519,7 +8519,7 @@ gBattleAnimMove_BabyDollEyes:: monbg ANIM_DEF_PARTNER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 10, RGB_WHITE waitforvisualfinish - createsprite gOpeningEyeSpriteTemplate, ANIM_ATTACKER, 5, 0x0, 0x0, 0x1, 0x0 + createsprite gOpeningEyeSpriteTemplate, ANIM_ATTACKER, 5, 0, 0, 1, 0 delay 32 playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 10, ANIM_ATTACKER, 1 @@ -8535,13 +8535,13 @@ gBattleAnimMove_BabyDollEyes:: gBattleAnimMove_Nuzzle:: createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x14 + createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, 0, 20 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER delay 15 - createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, 0xffec, 0x14 + createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, -20, 20 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER delay 15 - createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, 0x14, 0x14 + createsprite gMagentaHeartSpriteTemplate, ANIM_ATTACKER, 3, 20, 20 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER waitforvisualfinish playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET @@ -8554,17 +8554,17 @@ gBattleAnimMove_HoldBack:: monbg ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET - createsprite gHoldBackSwipeTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1 + createsprite gHoldBackSwipeTemplate, ANIM_TARGET, 2, 0, 0, 1 waitforvisualfinish createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 10, 1 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 - createsprite gHoldBackRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xa0, 0xffe0 - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x80, 0xfff0 - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x1a0, 0xffda - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff80, 0xffea - createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xfe80, 0xffe1 + createsprite gHoldBackRingTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, 160, -32 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, -256, -40 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, 128, -16 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, 416, -38 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, -128, -22 + createsprite gHoldBackStarsTemplate, ANIM_TARGET, 3, -16, -8, -384, -31 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -8576,7 +8576,7 @@ gBattleAnimMove_Infestation:: splitbgprio ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB(0, 25, 28) createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 79, 1 - loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0x0, 0x4F + loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0, 79 call InfestationVortex call InfestationVortex call InfestationVortex @@ -8588,17 +8588,17 @@ gBattleAnimMove_Infestation:: clearmonbg ANIM_DEF_PARTNER end InfestationVortex: - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 1 - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 1 - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 1 - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 1 - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 1 - createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, 0x1 + createsprite gInfestationBubbleTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, 1 delay 1 return @@ -8620,7 +8620,7 @@ gBattleAnimMove_OblivionWing:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_HYDRO_PUMP, 0, 12, 12, RGB(31, 4, 10) @Pinkish Red createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_ROUND_SHADOW, 0, 13, 13, RGB(31, 4, 10) @Pinkish Red playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 14, RGB_BLACK @Black waitforvisualfinish @@ -8647,9 +8647,9 @@ gBattleAnimMove_OblivionWing:: waitforvisualfinish end OblivionWingBeam: - createsprite gOblivionWingBeamTemplate, ANIM_TARGET, 2, 0, -90, 0, 20, 0x15, 0x0 + createsprite gOblivionWingBeamTemplate, ANIM_TARGET, 2, 0, -90, 0, 20, 21, 0 delay 2 - createsprite gOblivionWingBeamTemplate, ANIM_TARGET, 2, 0, -90, 0, 20, 0x15, 0x0 + createsprite gOblivionWingBeamTemplate, ANIM_TARGET, 2, 0, -90, 0, 20, 21, 0 delay 2 return @@ -8658,7 +8658,7 @@ gBattleAnimMove_ThousandArrows:: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - createsprite gThousandArrowsGreenChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gThousandArrowsGreenChargeTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 24 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER @@ -8670,14 +8670,14 @@ gBattleAnimMove_ThousandArrows:: call ThousandArrowsHexes call ThousandArrowsHexes call ThousandArrowsHexes - createsprite gThousandArrowsGreenDischargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x10 + createsprite gThousandArrowsGreenDischargeTemplate, ANIM_ATTACKER, 2, 0, 16, 16 delay 2 - createsprite gThousandArrowsGreenDischargeTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0, 0xfff0 + createsprite gThousandArrowsGreenDischargeTemplate, ANIM_ATTACKER, 2, 0, -16, -16 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER waitforvisualfinish delay 48 - createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 0x32 - createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 0x32 + createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 50 + createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 call ThousandArrowsDown call ThousandArrowsDown call ThousandArrowsDown @@ -8689,48 +8689,48 @@ gBattleAnimMove_ThousandArrows:: blendoff end ThousandArrowsHexes: - createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0x0, 0xfffc, 0xfff0 + createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0, -4, -16 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0x0, 0x100D, 0xfff0 + createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0, 4109, -16 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0x0, 0x4, 0xfff4 + createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0, 4, -12 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0x0, 0xfff0, 0xfff0 + createsprite gThousandArrowsGreenHexTemplate, ANIM_TARGET, 2, 0, -16, -16 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 return ThousandArrowsDown: - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0xdc, 0x3c + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 220, 60 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x3c, 0x64 + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 60, 100 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x8c, 0x37 + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 140, 55 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0xb4, 0x32 + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 180, 50 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x14, 0x5a + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 20, 90 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x5a, 0x5a + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 90, 90 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0xa0, 0x3c + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 160, 60 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x1e, 0x5a + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 30, 90 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0x78, 0x3c + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 120, 60 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER delay 2 - createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 0x1, 0xc8, 0x28 + createsprite gThousandArrowsGreenArrowTemplate, ANIM_TARGET, 2, 1, 200, 40 playsewithpan SE_M_DIG, SOUND_PAN_ATTACKER return @@ -8740,56 +8740,56 @@ gBattleAnimMove_ThousandWaves:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0x2b - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0x55 - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0x80 - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0xaa - createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0xd5 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 0 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 43 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 85 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 128 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 170 + createsprite gThousandWavesGreenWheelTemplate, ANIM_ATTACKER, 2, 213 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER @I placed this one here, because it ruins the teleport animation - loopsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0x3, 0x15 + loopsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 3, 21 call ThousandWavesRecover - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0xfff6, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, -10, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffdd, 0x8, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -35, 8, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffdd, 0xfff6, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -35, -10, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0x8, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, 8, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xf, 0xffd8, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 15, -40, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xffe0, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -10, -32, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x5, 0x27, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 5, 39, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x19, 0xffec, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 25, -20, 13 delay 3 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -40, -20, 13 delay 3 - createvisualtask AnimTask_AttackerStretchAndDisappear, 0x2 + createvisualtask AnimTask_AttackerStretchAndDisappear, 2 playsewithpan SE_M_TELEPORT, SOUND_PAN_ATTACKER - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x5, 0xffd8, 0xd + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 5, -40, 13 waitforvisualfinish - panse SE_M_HYPER_BEAM2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_HYPER_BEAM2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 delay 4 - createvisualtask AnimTask_MoveHeatWaveTargets, 0x5 + createvisualtask AnimTask_MoveHeatWaveTargets, 5 delay 12 monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0xa, 0x900, 0x60, 0x1 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 10, 2304, 96, 1 delay 2 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x5a, 0x800, 0x60, 0x1 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 90, 2048, 96, 1 delay 2 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x32, 0xa00, 0x60, 0x1 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 50, 2560, 96, 1 delay 2 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x14, 0x900, 0x60, 0x1 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 20, 2304, 96, 1 delay 2 call ThousandWavesRotatingImpact call ThousandWavesRotatingImpact waitforvisualfinish - createvisualtask AnimTask_ExtremeSpeedMonReappear, 0x2 + createvisualtask AnimTask_ExtremeSpeedMonReappear, 2 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_WHITEALPHA waitforvisualfinish @@ -8797,66 +8797,66 @@ gBattleAnimMove_ThousandWaves:: clearmonbg ANIM_DEF_PARTNER end ThousandWavesRecover: - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0x28, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, 40, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffd8, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -40, -40, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x0, 0x28, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0, 40, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd8, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0, -40, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0xffec, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, -20, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0x14, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, 20, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xffec, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -40, -20, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -40, 20, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffec, 0x1e, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -20, 30, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x14, 0xffe2, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 20, -30, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffec, 0xffe2, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -20, -30, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x14, 0x1e, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 20, 30, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x0, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, -40, 0, 16 delay 2 - createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 0x28, 0x0, 0x10 + createsprite gThousandWavesGreenRecoverTemplate, ANIM_ATTACKER, 2, 40, 0, 16 delay 2 return ThousandWavesRotatingImpact: - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x1c, 0x180, 0x32, 0x8, 0x32, 0x1 @1 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x46, 0x7c0, 0x60, 0x1 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 28, 384, 50, 8, 50, 1 @1 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 70, 1984, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x3 - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x20, 0xf0, 0x28, 0xb, 0xffd2, 0x1 @2 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x0, 0xb00, 0x60, 0x1 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, 0, 0, 3 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 32, 240, 40, 11, -46, 1 @2 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0, 2816, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0x5, 0xfff4, 0x3 - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x21, 0x1a0, 0x28, 0x4, 0x2a, 0x1 @3 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x3c, 0xa00, 0x60, 0x1 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, 5, -12, 3 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 33, 416, 40, 4, 42, 1 @3 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 60, 2560, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0xfffa, 0x9, 0x3 - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, 0x1 @4 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0xa, 0x900, 0x60, 0x1 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, -6, 9, 3 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 31, 288, 45, 6, -42, 1 @4 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 10, 2304, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0xfffa, 0xfff4, 0x3 - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, 0x1 @5 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x5a, 0x800, 0x60, 0x1 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, -6, -12, 3 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 28, 448, 45, 11, 46, 1 @5 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 90, 2048, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0x5, 0x9, 0x3 - createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 0x23, 0x21, 0x1d0, 0x32, 0xa, 0xffce, 0x1 @6 - createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 0x32, 0xa00, 0x60, 0x1 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, 5, 9, 3 + createsprite gThousandWavesRotatingImpactTemplate, ANIM_TARGET, 2, 35, 33, 464, 50, 10, -50, 1 @6 + createsprite gThousandWavesGreenWaveTemplate, ANIM_ATTACKER, 40, 50, 2560, 96, 1 delay 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 0x1, 0xfffa, 0x0, 0x3 + createsprite gThousandWavesPoundImpactTemplate, ANIM_TARGET, 2, 1, -6, 0, 3 return gBattleAnimMove_LandsWrath:: @@ -8870,9 +8870,9 @@ gBattleAnimMove_LandsWrath:: waitforvisualfinish fadetobg BG_FISSURE waitbgfadeout - playsewithpan SE_M_EARTHQUAKE, 0x0 - createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 0x32 - createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 0x32 + playsewithpan SE_M_EARTHQUAKE, 0 + createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 50 + createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 createvisualtask AnimTask_PositionFissureBgOnBattler, 5, ANIM_TARGET, 5, -1 waitbgfadein waitforvisualfinish @@ -8882,17 +8882,17 @@ gBattleAnimMove_LandsWrath:: end LandsWrathVortex: playsewithpan SE_M_SACRED_FIRE2 SOUND_PAN_TARGET - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, 0 delay 2 - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, 0 delay 2 - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, 0 delay 2 - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, 0 delay 2 - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, 0 delay 2 - createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, 0x0 + createsprite gLandsWrathVortexTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, 0 delay 2 return @@ -8900,7 +8900,7 @@ gBattleAnimMove_LightOfRuin:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_ELECTRIC_ORBS, 0, 12, 12, RGB(30, 14, 27) @Pink waitforvisualfinish createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 20, 0, 2 - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 15, RGB(31, 24, 26) createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 50, 1 flash_anim_tag_with_color tag=ANIM_TAG_ORBS, delay=1, num_blends=12, color1=RGB_RED, blend_y1=16, color2=0, blend_y2=0 @@ -8933,12 +8933,12 @@ gBattleAnimMove_LightOfRuin:: call LightOfRuinBeam delay 32 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gLightOfRuinPinkDischargeTemplate, ANIM_ATTACKER, 2, 0x1, 0x10, 0x10 + createsprite gLightOfRuinPinkDischargeTemplate, ANIM_ATTACKER, 2, 1, 16, 16 delay 2 - createsprite gLightOfRuinPinkDischargeTemplate, ANIM_ATTACKER, 2, 0x1, 0xfff0, 0xfff0 + createsprite gLightOfRuinPinkDischargeTemplate, ANIM_ATTACKER, 2, 1, -16, -16 delay 5 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 11, 1 - createsprite gLightOfRuinPinkExplosionTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gLightOfRuinPinkExplosionTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 1 delay 16 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 0, RGB_WHITE waitforvisualfinish @@ -8955,63 +8955,63 @@ gBattleAnimMove_OriginPulse:: setalpha 8, 8 fadetobg BG_WATER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x400, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 1024, 0, 1, -1 waitbgfadein - createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER delay 16 - createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 16 - createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 playsewithpan SE_INTRO_BLAST, SOUND_PAN_ATTACKER waitforvisualfinish - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0x2b - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0x55 - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0x80 - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0xaa - createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0xd5 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 0 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 43 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 85 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 128 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 170 + createsprite gOriginPulseOrbTemplate, ANIM_ATTACKER, 2, 213 delay 53 - createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 delay 16 - createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 + createsprite gOriginPulseRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 waitforvisualfinish delay 47 - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xFF90, 0x10 @up - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x5F, 0xFF9D, 0x10 @upper right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x73, 0x0, 0x10 @right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x4F, 0x37, 0x10 @lower right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x53, 0x10 @down - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFB0, 0x43, 0x10 @lower left - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFF60, 0x0, 0x10 @left - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFAA, 0xFF94, 0x10 @upper left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 0, -112, 16 @up + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 95, -99, 16 @upper right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 115, 0, 16 @right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 79, 55, 16 @lower right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 0, 83, 16 @down + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -80, 67, 16 @lower left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -160, 0, 16 @left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -86, -108, 16 @upper left delay 5 - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x2D, 0xFF9D, 0x10 @between up and upper right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xDF, 0xFF9D, 0x10 @between right and upper right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x9F, 0x37, 0x10 @between right and lower right - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x1F, 0x37, 0x10 @between lower right and down - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFE0, 0x43, 0x10 @between lower left and down - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFF60, 0x43, 0x10 @between left and lower left - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFF2A, 0xFFAA, 0x10 @between left and upper left - createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFDA, 0xFF94, 0x10 @between up and upper left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 45, -99, 16 @between up and upper right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 223, -99, 16 @between right and upper right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 159, 55, 16 @between right and lower right + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, 31, 55, 16 @between lower right and down + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -32, 67, 16 @between lower left and down + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -160, 67, 16 @between left and lower left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -214, -86, 16 @between left and upper left + createsprite gOriginPulseOrbInwardTemplate, ANIM_TARGET, 2, 1, 0, -38, -108, 16 @between up and upper left waitforvisualfinish createvisualtaskontargets AnimTask_ShakeMon2, 5, 0, ANIM_TARGET, 2, 0, 18, 1 monbg ANIM_DEF_PARTNER - createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, 0xffb0, 0xfff0, 0x1, 0x1 + createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, -80, -16, 1, 1 stopsound playsewithpan SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER delay 5 - createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 1, 1 delay 5 - createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 delay 5 - createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 1, 1 delay 5 - createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, 0xffc0, 0x14, 0x1, 0x1 + createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, -64, 20, 1, 1 delay 5 - createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gOriginPulseBlueImpactTemplate, ANIM_TARGET, 3, 1, 1 delay 5 - createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, 0xffe0, 0x5, 0x1, 0x1 + createsprite gOriginPulseBasicSplatTemplate, ANIM_TARGET, 3, -32, 5, 1, 1 waitsound call UnsetPsychicBg clearmonbg ANIM_DEF_PARTNER @@ -9023,22 +9023,22 @@ gBattleAnimMove_PrecipiceBlades:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET setalpha 12, 8 - fadetobg 0x15 + fadetobg 21 waitbgfadeout createvisualtask AnimTask_PositionFissureBgOnBattler, 5, ANIM_TARGET, 5, -1 - createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 0x5 - createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 0x5 - playsewithpan SE_M_EARTHQUAKE, 0x0 - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7, ANIM_TARGET, PrecipiceBladesOpponent + createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 5 + createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 5 + playsewithpan SE_M_EARTHQUAKE, 0 + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7, ANIM_TARGET, PrecipiceBladesOpponent PrecipiceBladesPlayer: - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 3, ANIM_ATTACKER, -45, 5, 145, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 3, ANIM_ATTACKER, -45, 5, 145, 0 delay 10 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 3, ANIM_ATTACKER, 10, 7, 135, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 3, ANIM_ATTACKER, 10, 7, 135, 0 delay 10 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 4, ANIM_ATTACKER, -30, 15, 125, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 4, ANIM_ATTACKER, -30, 15, 125, 0 delay 5 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 5, ANIM_ATTACKER, -10, 17, 120, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 5, ANIM_ATTACKER, -10, 17, 120, 0 PrecipiceBladesContinue: delay 16 createsprite gPrecipiceBladesPlumeTemplate, ANIM_TARGET, 2, -15, 18, ANIM_TARGET @@ -9049,44 +9049,44 @@ PrecipiceBladesContinue: delay 32 stopsound playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET - createsprite gPrecipiceBladesLargeSpikeTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, -25, 40, 0x0 - createsprite gPrecipiceBladesLargeSpikeTemplate, ANIM_TARGET, 2, ANIM_DEF_PARTNER, 0, -25, 40, 0x0 + createsprite gPrecipiceBladesLargeSpikeTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, -25, 40, 0 + createsprite gPrecipiceBladesLargeSpikeTemplate, ANIM_TARGET, 2, ANIM_DEF_PARTNER, 0, -25, 40, 0 delay 6 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -20, 0, 6, 1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, ANIM_DEF_PARTNER, -20, 0, 6, 1 delay 34 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x6 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, ANIM_DEF_PARTNER, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_TARGET, 2, ANIM_DEF_PARTNER, 0, 6 waitforvisualfinish call UnsetPsychicBg clearmonbg ANIM_DEF_PARTNER blendoff end PrecipiceBladesOpponent: - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 67, ANIM_ATTACKER, 35, -5, 145, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 67, ANIM_ATTACKER, 35, -5, 145, 0 delay 10 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 67, ANIM_ATTACKER, -20, -7, 135, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 67, ANIM_ATTACKER, -20, -7, 135, 0 delay 10 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 68, ANIM_ATTACKER, 20, -15, 125, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 68, ANIM_ATTACKER, 20, -15, 125, 0 delay 5 - createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 69, ANIM_ATTACKER, 0, -17, 120, 0x0 + createsprite gPrecipiceBladesSpikeTemplate, ANIM_ATTACKER, 69, ANIM_ATTACKER, 0, -17, 120, 0 goto PrecipiceBladesContinue gBattleAnimMove_DragonAscent:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_IMPACT, 0, 11, 11, RGB(16, 31, 16) fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x2, 0, 128, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 2, 0, 128, 0, -1 waitbgfadein playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER invisible ANIM_ATTACKER - createsprite gDragonAscentFlyUpTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x400, 0x24, 0x15, 0x1, ANIM_ATTACKER + createsprite gDragonAscentFlyUpTemplate, ANIM_ATTACKER, 2, 0, 0, 1024, 36, 21, 1, ANIM_ATTACKER waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_ATTACKER | F_PAL_BG | F_PAL_ANIM_1 | F_PAL_ANIM_2), 4, 0, 14, RGB(21, 31, 27) playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER waitforvisualfinish playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createvisualtask AnimTask_StartSlidingBg, 0x5, -7304, -784, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -7304, -784, 1, -1 delay 2 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_ATTACKER | F_PAL_BG | F_PAL_ANIM_1 | F_PAL_ANIM_2), 0, 14, 0, RGB(21, 31, 27) waitforvisualfinish @@ -9114,60 +9114,60 @@ gBattleAnimMove_HyperspaceFury:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 10, RGB_BLACK waitforvisualfinish playsewithpan SE_M_NIGHTMARE, SOUND_PAN_ATTACKER - createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 delay 5 - createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 delay 5 - createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 delay 5 - createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc + createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 delay 5 - createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gHyperspaceFuryRingTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 delay 21 invisible ANIM_ATTACKER waitforvisualfinish fadetobg BG_HYPERSPACE_FURY waitbgfadeout - createvisualtask AnimTask_SetPsychicBackground, 0x5 + createvisualtask AnimTask_SetPsychicBackground, 5 waitbgfadein - loopsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET, 0x2, 0x10 + loopsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET, 2, 16 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 32, 1 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe0, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 0, -32, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x16, 0xffea, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 22, -22, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x1e, 0x0, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 30, 0, 16 call HyperspaceFuryRandomImpact delay 2 - createvisualtask AnimTask_IsTargetSameSide, 0x2 - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x14, 0x14, 0x10 + createvisualtask AnimTask_IsTargetSameSide, 2 + createvisualtask AnimTask_SnatchOpposingMonMove, 2 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 20, 20, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x1c, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 0, 28, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffed, 0x13, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, -19, 19, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffe5, 0x0, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, -27, 0, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffee, 0xffee, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, -18, -18, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe7, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 0, -25, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x11, 0xffef, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 17, -17, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x17, 0x0, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 23, 0, 16 call HyperspaceFuryRandomImpact delay 2 - createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x10, 0x10, 0x10 + createsprite gHyperspaceFuryHandTemplate, ANIM_TARGET, 2, 1, 0, 16, 16, 16 call HyperspaceFuryRandomImpact delay 7 createvisualtask SoundTask_PlayDoubleCry, 2, ANIM_ATTACKER, DOUBLE_CRY_GROWL @@ -9189,54 +9189,54 @@ gBattleAnimMove_HyperspaceFury:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 0, RGB_BLACK end HyperspaceFuryRandomImpact: - createsprite gHyperspaceFuryImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gHyperspaceFuryImpactTemplate, ANIM_TARGET, 3, 1, 1 return @@@@@@@@@@@@@@@@@@@@@@@ GEN 7 @@@@@@@@@@@@@@@@@@@@@@@ gBattleAnimMove_ShoreUp:: - playsewithpan SE_M_SANDSTORM, 0x0 - createvisualtask AnimTask_LoadSandstormBackground, 0x5, 0x0 + playsewithpan SE_M_SANDSTORM, 0 + createvisualtask AnimTask_LoadSandstormBackground, 5, 0 delay 16 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0xa, 0x900, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 10, 2304, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x5a, 0x800, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 90, 2048, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x32, 0xa00, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 50, 2560, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x14, 0x900, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 20, 2304, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x46, 0x7c0, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 70, 1984, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0xb00, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0, 2816, 96, 0 delay 10 - createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 0x3c, 0xa00, 0x60, 0x0 + createsprite gFlyingSandCrescentSpriteTemplate, ANIM_ATTACKER, 40, 60, 2560, 96, 0 call HealingEffect waitforvisualfinish end gBattleAnimMove_FirstImpression:: - createsprite gSprayWaterDropletSpriteTemplate, ANIM_TARGET, 5, 0x0, 0x1 + createsprite gSprayWaterDropletSpriteTemplate, ANIM_TARGET, 5, 0, 1 playsewithpan SE_M_SKETCH, SOUND_PAN_TARGET - createsprite gSprayWaterDropletSpriteTemplate, ANIM_TARGET, 5, 0x1, 0x1 + createsprite gSprayWaterDropletSpriteTemplate, ANIM_TARGET, 5, 1, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 - createvisualtask AnimTask_StretchTargetUp, 0x3 + createvisualtask AnimTask_StretchTargetUp, 3 waitforvisualfinish delay 25 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x6 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 waitforvisualfinish monbg ANIM_TARGET @This is placed here on purpose (to not ruin astonishs animation) delay 1 - createsprite gFirstImpressionPoundTemplate, ANIM_ATTACKER, 4, 0xfff6, 0x0, 0x1, 0x0 - loopsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET 0xA 0x2 + createsprite gFirstImpressionPoundTemplate, ANIM_ATTACKER, 4, -10, 0, 1, 0 + loopsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET 10 2 delay 1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -28, 0, 0, 3 waitforvisualfinish createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_TARGET, 4, 0, 12, 1 waitforvisualfinish delay 10 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 6 delay 5 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 6 waitforvisualfinish clearmonbg ANIM_TARGET end @@ -9244,23 +9244,23 @@ gBattleAnimMove_FirstImpression:: gBattleAnimMove_BanefulBunker:: monbg ANIM_ATK_PARTNER splitbgprio ANIM_ATTACKER - waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER 0x10 - createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 0x18, 0x0, 0x5a - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER 16 + createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 - createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gBanefulBunkerPoisonBubbleTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER end @@ -9280,7 +9280,7 @@ gBattleAnimMove_SpiritShackle:: delay 3 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 delay 20 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_BIND, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -9290,22 +9290,22 @@ gBattleAnimMove_SpiritShackle:: gBattleAnimMove_DarkestLariat:: fadetobg BG_DARK waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x0, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, 0, 0, -1 waitbgfadein monbg ANIM_DEF_PARTNER setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0xa - waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 0x14 - waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0x1e - waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 0x28 - waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0x32 - waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 0x3c - waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0x46 - waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 0x50 - waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 0x5a - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x0, 0xffee, 0x6, 0x6, 0x4 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x1, 0x12, 0x6, 0x6, 0x4 + waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 10 + waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 20 + waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 30 + waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 40 + waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 50 + waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 60 + waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 70 + waitplaysewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER, 80 + waitplaysewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET, 90 + createvisualtask AnimTask_TranslateMonElliptical, 2, 0, -18, 6, 6, 4 + createvisualtask AnimTask_TranslateMonElliptical, 2, 1, 18, 6, 6, 4 call DarkestLariatImpact call DarkestLariatImpact call DarkestLariatImpact @@ -9315,11 +9315,11 @@ gBattleAnimMove_DarkestLariat:: call UnsetPsychicBg end DarkestLariatImpact: - createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0xfff4, 0x1, 0x1 + createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, 0, -12, 1, 1 delay 8 - createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, 0xfff4, 0x8, 0x1, 0x1 + createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, -12, 8, 1, 1 delay 8 - createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, 0xc, 0x0, 0x1, 0x1 + createsprite gDarkestLariatImpactTemplate, ANIM_ATTACKER, 3, 12, 0, 1, 1 delay 8 return @@ -9328,7 +9328,7 @@ gBattleAnimMove_SparklingAria:: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 14, RGB_BLACK waitforvisualfinish - createsprite gSparklingAriaBlueChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gSparklingAriaBlueChargeTemplate, ANIM_ATTACKER, 2, 0 call SparklingAriaCharge call SparklingAriaCharge call SparklingAriaCharge @@ -9344,71 +9344,71 @@ gBattleAnimMove_SparklingAria:: blendoff end SparklingAriaRain: - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0xdc, 0x3c + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 220, 60 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 0x1, 0x3c, 0x64 + createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 1, 60, 100 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0x8c, 0x37 + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 140, 55 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0xb4, 0x32 + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 180, 50 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0x14, 0x5a + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 20, 90 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 0x1, 0x5a, 0x5a + createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 1, 90, 90 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0xa0, 0x3c + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 160, 60 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0x1e, 0x5a + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 30, 90 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 0x1, 0x78, 0x3c + createsprite gSparklingAriaRainTemplate, ANIM_TARGET, 2, 1, 120, 60 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 - createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 0x1, 0xc8, 0x28 + createsprite gSparklingAriaBubbleRainTemplate, ANIM_TARGET, 2, 1, 200, 40 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 3, 0, 6, 1 delay 2 return SparklingAriaCharge: playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_ATTACKER - createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gSparklingAriaBubblesTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 delay 4 return @@ -9420,19 +9420,19 @@ gBattleAnimMove_IceHammer:: createsprite gIceHammerPunchStompTemplate, ANIM_TARGET, 3, 0, -32, 15 delay 19 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET - createvisualtask AnimTask_SquishTarget, 0x2 - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x68, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x48, 0x1, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x38, 0x1, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x58, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x38, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x58, 0x1, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x48, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x68, 0x1, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x48, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x38, 0x1, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x50, 0x0, 0x4b - createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x48, 0x1, 0x4b + createvisualtask AnimTask_SquishTarget, 2 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, -12, 104, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, -12, 72, 1, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, -6, 56, 1, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, -6, 88, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 0, 56, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 0, 88, 1, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 6, 72, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 6, 104, 1, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 12, 72, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 12, 56, 1, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 18, 80, 0, 75 + createsprite gIceHammerSmokesTemplate, ANIM_TARGET, 4, 0, 18, 72, 1, 75 call IceCrystalEffectShort createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -9445,97 +9445,97 @@ gBattleAnimMove_FloralHealing:: call CIRCLES_LEAVES call CIRCLES_LEAVES waitforvisualfinish - panse SE_M_COMET_PUNCH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - playsewithpan SE_M_TWISTER, 0x0 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x46, 0x1, 0x40 + panse SE_M_COMET_PUNCH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + playsewithpan SE_M_TWISTER, 0 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 70, 1, 64 clearmonbg ANIM_ATTACKER delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3c, 0x0, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 60, 0, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0x1, 0x40 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 80, 1, 64 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3a, 0x0, 0x78 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 58, 0, 120 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x5a, 0x0, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 90, 0, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0x0, 0x40 @2 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 48, 0, 64 @2 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x5f, 0x1, 0x50 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 95, 1, 80 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x4b, 0x1, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 75, 1, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x55, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 85, 0, 120 delay 2 - loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 0x12, 0xa + loopsewithpan SE_M_POISON_POWDER, SOUND_PAN_TARGET, 18, 10 monbg ANIM_TARGET call FloralHealingSpores call FloralHealingSpores call FloralHealingSpores waitforvisualfinish playsewithpan SE_M_ABSORB_2, SOUND_PAN_ATTACKER - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 16, 0xfff1, 0x0, 0x1, 0x0, 0x20, 0x3c, 0x1 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 16, -15, 0, 1, 0, 32, 60, 1 delay 8 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 16, 0xc, 0xfffb, 0x1, 0x0, 0x20, 0x3c, 0x1 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 16, 12, -5, 1, 0, 32, 60, 1 waitforvisualfinish clearmonbg ANIM_TARGET end FloralHealingSpores: - createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0x0, 0xffec, 0x55, 0x50, 0x0 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x46, 0x1, 0x40 + createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0, -20, 85, 80, 0 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 70, 1, 64 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3c, 0x0, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 60, 0, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0x1, 0x40 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 80, 1, 64 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3a, 0x0, 0x78 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 58, 0, 120 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x5a, 0x0, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 90, 0, 64 delay 3 - createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0xaa, 0x50, 0x0 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0x0, 0x40 + createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0, -10, 170, 80, 0 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 48, 0, 64 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x5f, 0x1, 0x50 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 95, 1, 80 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x4b, 0x1, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 75, 1, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x55, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 85, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x46, 0x1, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 70, 1, 64 delay 3 - createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff1, 0x0, 0x50, 0x0 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3c, 0x0, 0x40 + createsprite gFloralHealingFlowerTemplate, ANIM_ATTACKER, 2, 0, -15, 0, 80, 0 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 60, 0, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0x1, 0x40 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 80, 1, 64 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x3a, 0x0, 0x78 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 58, 0, 120 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x64, 0x0, 0x78 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 100, 0, 120 delay 2 - createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 0x5a, 0x0, 0x40 + createsprite gFloralHealingWindLeavesTemplate, ANIM_ATTACKER, 2, 90, 0, 64 delay 2 - createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0x0, 0x40 + createsprite gSweetScentPetalSpriteTemplate, ANIM_ATTACKER, 2, 48, 0, 64 delay 3 return CIRCLES_LEAVES: - createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, 0x0 + createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, 0 delay 2 - createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, 0x0 + createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, 0 delay 2 - createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, 0x0 + createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, 0 delay 2 - createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, 0x0 + createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, 0 delay 2 - createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, 0x0 + createsprite gFloralHealingOrbsTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, 0 delay 2 - createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, 0x0 + createsprite gFloralHealingLeavesTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, 0 delay 2 return @@ -9545,7 +9545,7 @@ gBattleAnimMove_HighHorsepower:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 16, RGB_BLACK setalpha 12, 8 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET - createsprite gHighHorsepowerHorseshoeTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x32 + createsprite gHighHorsepowerHorseshoeTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 50 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_WHITE delay 50 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET @@ -9565,60 +9565,60 @@ gBattleAnimMove_HighHorsepower:: gBattleAnimMove_StrengthSap:: monbg ANIM_DEF_PARTNER playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x3, 0x1, 0x0 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x46, 0x0, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x28, 0x28, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xa, 0xffc4, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffce, 0xffd8, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffd8, 0x28, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x32, 0xffce, 0x6 + createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 8, 3, 1, 0 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 70, 0, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 40, 40, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 10, -60, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -50, -40, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -40, 40, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 50, -50, 6 delay 2 - createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x1, 0x0 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x32, 0xffe2, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x3c, 0xa, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x0, 0x3c, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x0, 0xffd8, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffc4, 0x14, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffc4, 0xffe2, 0x6 + createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, -8, -8, 1, 0 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 50, -30, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 60, 10, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0, 60, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0, -40, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -60, 20, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -60, -30, 6 delay 2 - createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x1, 0x0 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffce, 0x32, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffc4, 0x14, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0xffd8, 0xffd8, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x14, 0xffc4, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x32, 0xffce, 0x6 - createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 0x23, 0x28, 0x6 + createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 8, -8, 1, 0 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -50, 50, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -60, 20, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, -40, -40, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 20, -60, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 50, -50, 6 + createsprite gStrengthSapRedInwardTemplate, ANIM_ATTACKER, 4, 35, 40, 6 delay 2 - createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x1, 0x0 + createsprite gStrengthSapRedSmokeTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 3, RGB(29, 31, 1) delay 5 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0x0, 0x5, 0x8, 0x1a + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0, 5, 8, 26 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0xa, 0xfffb, 0xfff8, 0x1a + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 10, -5, -8, 26 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0xfffb, 0xf, 0x10, 0x21 + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, -5, 15, 16, 33 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0x0, 0xfff1, 0xfff0, 0x24 + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0, -15, -16, 36 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0x0, 0x5, 0x8, 0x1a + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0, 5, 8, 26 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0xa, 0xfffb, 0xfff8, 0x1a + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 10, -5, -8, 26 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0xfff6, 0x14, 0x14, 0x27 + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, -10, 20, 20, 39 delay 4 playsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET - createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 0x5, 0xffee, 0xffec, 0x23 + createsprite gStrengthSapAbsorbTemplate, ANIM_ATTACKER, 3, 5, -18, -20, 35 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 3, 0, RGB(29, 31, 1) - loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 0x10, 0x3 + loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 16, 3 call GrantingStarsEffect waitforvisualfinish clearmonbg ANIM_DEF_PARTNER @@ -9633,7 +9633,7 @@ SolarBladeUnleash: waitforvisualfinish playsewithpan SE_M_SWORDS_DANCE, SOUND_PAN_ATTACKER createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 16, 6, 1, 4 - createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 + createsprite gSwordsDanceBladeSpriteTemplate, ANIM_ATTACKER, 2, 0, 0 call SolarBladeSunRays call SolarBladeSunRays call SolarBladeSunRays @@ -9642,7 +9642,7 @@ SolarBladeUnleash: waitforvisualfinish call SetSolarBeamBg playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSolarBladeImpactTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1 + createsprite gSolarBladeImpactTemplate, ANIM_TARGET, 2, 0, 0, 1 delay 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 12, 1 waitforvisualfinish @@ -9664,21 +9664,21 @@ gBattleAnimMove_Leafage:: 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 + createsprite gLeafageImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 2 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end gBattleAnimMove_Spotlight:: - createvisualtask AnimTask_CreateSpotlight, 0x2 - createvisualtask AnimTask_HardwarePaletteFade, 0x2, 0xf8, 0x3, 0x0, 0xa, 0x0 + createvisualtask AnimTask_CreateSpotlight, 2 + createvisualtask AnimTask_HardwarePaletteFade, 2, 248, 3, 0, 10, 0 waitforvisualfinish playsewithpan SE_CONTEST_ICON_CHANGE, SOUND_PAN_ATTACKER - createsprite gSpotlightSpriteTemplate, ANIM_TARGET, 2, 0x0, 0xfff8 + createsprite gSpotlightSpriteTemplate, ANIM_TARGET, 2, 0, -8 delay 64 - createvisualtask AnimTask_HardwarePaletteFade, 0x2, 0xf8, 0x3, 0xa, 0x0, 0x1 + createvisualtask AnimTask_HardwarePaletteFade, 2, 248, 3, 10, 0, 1 waitforvisualfinish - createvisualtask AnimTask_RemoveSpotlight, 0x2 + createvisualtask AnimTask_RemoveSpotlight, 2 end gBattleAnimMove_ToxicThread:: @@ -9688,7 +9688,7 @@ gBattleAnimMove_ToxicThread:: delay 0 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 9, RGB_BLACK waitforvisualfinish - loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 0x9, 0x6 + loopsewithpan SE_M_STRING_SHOT, SOUND_PAN_ATTACKER, 9, 6 call SpiderWebThread call SpiderWebThread call SpiderWebThread @@ -9709,11 +9709,11 @@ gBattleAnimMove_ToxicThread:: call SpiderWebThread waitforvisualfinish playsewithpan SE_M_STRING_SHOT2, SOUND_PAN_TARGET - createsprite gToxicThreadString, ANIM_TARGET, 2, 0x0, 0xa + createsprite gToxicThreadString, ANIM_TARGET, 2, 0, 10 delay 4 - createsprite gToxicThreadString, ANIM_TARGET, 2, 0x0, 0xfffe + createsprite gToxicThreadString, ANIM_TARGET, 2, 0, -2 delay 4 - createsprite gToxicThreadString, ANIM_TARGET, 2, 0x0, 0x16 + createsprite gToxicThreadString, ANIM_TARGET, 2, 0, 22 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER delay 1 @@ -9725,10 +9725,10 @@ gBattleAnimMove_LaserFocus:: monbg ANIM_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - createsprite gLaserFocusRedEyesTemplate, ANIM_ATTACKER, 5, 0x0, 0x0, 0x0, 0x0 + createsprite gLaserFocusRedEyesTemplate, ANIM_ATTACKER, 5, 0, 0, 0, 0 waitforvisualfinish playsewithpan SE_M_LEER, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x18, 0xfff4 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 24, -12 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK waitforvisualfinish @@ -9737,52 +9737,52 @@ gBattleAnimMove_LaserFocus:: gBattleAnimMove_GearUp:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 9, RGB(27, 28, 0) - createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c + createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 15 playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 15 playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gGearUpGearsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 15 playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER call GearUpSparks call GearUpSparks call GearUpSparks playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB(27, 28, 0) waitforvisualfinish end GearUpSparks: playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 15 playsewithpan SE_ROULETTE_BALL2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 15 return @@ -9793,79 +9793,79 @@ gBattleAnimMove_ThroatChop:: playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET createsprite gKarateChopSpriteTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, 1, 3, 0 waitforvisualfinish - invert_screen_color scenery=0x101 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + invert_screen_color scenery=257 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 delay 3 - createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x2 + createsprite gThroatChopRedImpactTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 waitforvisualfinish - invert_screen_color scenery=0x101 + invert_screen_color scenery=257 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff end gBattleAnimMove_PollenPuff:: - createvisualtask AnimTask_IsTargetSameSide, 0x5 - jumpargeq 0x0, 0x1, PollenPuffAlly + createvisualtask AnimTask_IsTargetSameSide, 5 + jumpargeq 0, 1, PollenPuffAlly PollenPuffOpponent: monbg ANIM_ATTACKER setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER clearmonbg ANIM_ATTACKER waitforvisualfinish stopsound monbg ANIM_TARGET - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0xA0, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x110, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xB0, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x100, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x90, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x110, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xB0, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x100, 0x28, 0x0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 160, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 272, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 176, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 256, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 144, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 272, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 176, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 256, 40, 0 delay 1 playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET - createsprite gPollenPuffSporeTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x0, 0x0, 0x19, 0xffe0 + createsprite gPollenPuffSporeTemplate, ANIM_TARGET, 2, 10, 0, 0, 0, 25, -32 waitforvisualfinish playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0xFFE0, 0x10 @up - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0xFFEE, 0xFFEE, 0x10 @upperleft - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0x1C, 0x10 @down + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, 0, -32, 16 @up + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, -18, -18, 16 @upperleft + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, 0, 28, 16 @down delay 4 - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0xFFE5, 0x0, 0x10 @left - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0x14, 0x14, 0x10 @lowerright - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0xFFED, 0x13, 0x10 @lowerleft + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, -27, 0, 16 @left + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, 20, 20, 16 @lowerright + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, -19, 19, 16 @lowerleft delay 4 - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0x1E, 0x0, 0x10 @right - createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 0x1, 0x1, 0x16, 0xFFEA, 0x10 @upperright + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, 30, 0, 16 @right + createsprite gPollenPuffImpactTemplates, ANIM_TARGET, 2, 1, 1, 22, -22, 16 @upperright waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 0, RGB_BLACK waitforvisualfinish @@ -9878,43 +9878,43 @@ PollenPuffAlly: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 8, RGB_BLACK waitforvisualfinish createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 13 - createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gPollenPuffPinkStarTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 playsewithpan SE_M_ABSORB_2, SOUND_PAN_ATTACKER clearmonbg ANIM_ATTACKER waitforvisualfinish stopsound playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_ATTACKER monbg ANIM_TARGET - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0xa0, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x120, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x90, 0x28, 0x0 - createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x110, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0xa0, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x120, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x90, 0x28, 0x0 - createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x110, 0x28, 0x0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 160, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 288, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 144, 40, 0 + createsprite gPollenPuffPinkSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 272, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 160, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 288, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 144, 40, 0 + createsprite gPollenPuffYellowSparkleTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 272, 40, 0 delay 1 - createsprite gPollenPuffSporeTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x0, 0x0, 0x19, 0xffe0 + createsprite gPollenPuffSporeTemplate, ANIM_TARGET, 2, 10, 0, 0, 0, 25, -32 waitforvisualfinish unloadspritegfx ANIM_TAG_SPARKLE_2 @stars unloadspritepal ANIM_TAG_SPARKLE_2 @stars playsewithpan SE_M_ABSORB_2, SOUND_PAN_ATTACKER - createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0x1, 0x0 + createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 0, -5, 1, 0 delay 7 - createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xa, 0x1, 0x0 + createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, -15, 10, 1, 0 delay 7 - createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xfff1, 0x1, 0x0 + createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, -15, -15, 1, 0 delay 7 - createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 0xa, 0xfffb, 0x1, 0x0 + createsprite gPollenPuffHealTemplate, ANIM_ATTACKER, 2, 10, -5, 1, 0 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 1, RGB_BLACK waitforvisualfinish @@ -9925,19 +9925,19 @@ PollenPuffAlly: gBattleAnimMove_AnchorShot:: playsewithpan SE_FALL SOUND_PAN_TARGET monbg ANIM_TARGET - createsprite gAnchorShotAngledAnchorTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x35 + createsprite gAnchorShotAngledAnchorTemplate, ANIM_ATTACKER, 2, 0, 0, 53 waitforvisualfinish - createsprite gAnchorShotAnchorTemplate, ANIM_ATTACKER, 3, 0x0, 0xffe0, 0xf + createsprite gAnchorShotAnchorTemplate, ANIM_ATTACKER, 3, 0, -32, 15 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 delay 37 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 waitforvisualfinish - loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER 0x1c 0x2 - createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, 0xfff0, 0xfff0 + loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER 28 2 + createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, -16, -16 delay 4 - createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, 0xfff0, 0x0 + createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, -16, 0 delay 4 - createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, 0xfff0, 0x10 + createsprite gAnchorShotChainTemplate, ANIM_TARGET, 2, -16, 16 waitforvisualfinish clearmonbg ANIM_TARGET end @@ -9959,7 +9959,7 @@ gBattleAnimMove_PsychicTerrain:: createsprite gPsychicTerrainOrbsTemplate, ANIM_ATTACKER, 2, 26, 210 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 0, 4, RGB(27, 0, 13) delay 52 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 createsprite gPsychicTerrainStarTemplate, ANIM_TARGET, 2, 0 @@ -9970,7 +9970,7 @@ gBattleAnimMove_PsychicTerrain:: createsprite gPsychicTerrainStarTemplate, ANIM_TARGET, 2, 160 createsprite gPsychicTerrainStarTemplate, ANIM_TARGET, 2, 192 createsprite gPsychicTerrainStarTemplate, ANIM_TARGET, 2, 224 - loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 0xa, 0x3 + loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 3 waitforvisualfinish delay 4 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 3, 4, 0, RGB(27, 0, 13) @@ -9980,7 +9980,7 @@ gBattleAnimMove_PsychicTerrain:: gBattleAnimMove_Lunge:: monbg ANIM_ATK_PARTNER createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 3, 0, 240, 0 - loopsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 0xe, 0xa + loopsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 14, 10 createsprite gLungeGreenChargeTemplate, ANIM_ATTACKER, 2 delay 110 delay 62 @@ -9990,34 +9990,34 @@ gBattleAnimMove_Lunge:: invisible ANIM_ATTACKER waitforvisualfinish playsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER - createsprite gLungeGreenBubbleTemplate, ANIM_TARGET, 2, 0xa, 0x0, 0x0, 0x0, 0x19, 0xffe0 + createsprite gLungeGreenBubbleTemplate, ANIM_TARGET, 2, 10, 0, 0, 0, 25, -32 delay 15 monbg ANIM_DEF_PARTNER delay 1 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x46, 0x0, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x28, 0x28, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xa, 0xffc4, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffce, 0xffd8, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffd8, 0x28, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x32, 0xffce, 0x6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 70, 0, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 40, 40, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 10, -60, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -50, -40, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -40, 40, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 50, -50, 6 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 11, 1 delay 2 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x32, 0xffe2, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x3c, 0xa, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x3c, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0xffd8, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffc4, 0x14, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffc4, 0xffe2, 0x6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 50, -30, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 60, 10, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0, 60, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0, -40, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -60, 20, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -60, -30, 6 delay 2 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffce, 0x32, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffc4, 0x14, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0xffd8, 0xffd8, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x14, 0xffc4, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x32, 0xffce, 0x6 - createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 0x23, 0x28, 0x6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -50, 50, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -60, 20, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, -40, -40, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 20, -60, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 50, -50, 6 + createsprite gTealAlertSpriteTemplate, ANIM_ATTACKER, 4, 35, 40, 6 waitforvisualfinish playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gLungeGreenImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x2 + createsprite gLungeGreenImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 2 waitforvisualfinish visible ANIM_ATTACKER clearmonbg ANIM_DEF_PARTNER @@ -10026,25 +10026,25 @@ gBattleAnimMove_Lunge:: gBattleAnimMove_FireLash:: monbg ANIM_DEF_PARTNER splitbgprio_foes ANIM_TARGET - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x14 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x18 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 6 @@ -10052,14 +10052,14 @@ gBattleAnimMove_FireLash:: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 8, 1 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_TARGET, RGB_RED, 12, 1, 1 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET - createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, 0x1, 0xfff8, 0x0 + createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, 1, -8, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 4 - createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x8, 0x0 + createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, 1, 8, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 18, 1 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 7 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x9 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 9 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end @@ -10076,29 +10076,29 @@ gBattleAnimMove_PowerTrip:: call PowerTripBuffUp waitforvisualfinish playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, 0xFFF5, 0xA, 0x1, 0x2 + createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, -11, 10, 1, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 5 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0xFFF5, 0x1, 0x2 + createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, 0, -11, 1, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 5 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, 0xA, 0x0, 0x1, 0x2 + createsprite gPowerTripImpactTemplate, ANIM_ATTACKER, 2, 10, 0, 1, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER end PowerTripBuffUp: - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return gBattleAnimMove_BurnUp:: @@ -10106,18 +10106,18 @@ gBattleAnimMove_BurnUp:: setalpha 12, 18 fadetobg BG_FIRE waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xA00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 5, RGB(28, 0, 0) waitforvisualfinish - createvisualtask AnimTask_AllocBackupPalBuffer, 0x5 + createvisualtask AnimTask_AllocBackupPalBuffer, 5 waitforvisualfinish - createvisualtask AnimTask_CopyPalUnfadedToBackup, 0x5, 0x0, 0x1 + createvisualtask AnimTask_CopyPalUnfadedToBackup, 5, 0, 1 delay 1 - createvisualtask AnimTask_CopyPalFadedToUnfaded, 0x5, 0x0 + createvisualtask AnimTask_CopyPalFadedToUnfaded, 5, 0 delay 1 - loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER 0x9 0x2 - createvisualtask AnimTask_CopyPalUnfadedToBackup, 0x5, 0x1, 0x0 + loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER 9 2 + createvisualtask AnimTask_CopyPalUnfadedToBackup, 5, 1, 0 delay 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 13, RGB(28, 0, 0) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 2, 0, 15, 1 @@ -10126,20 +10126,20 @@ gBattleAnimMove_BurnUp:: createsprite gUproarRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, RGB_RED, 8 waitforvisualfinish playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER - createsprite gBurnUpRedYawnTemplate, ANIM_TARGET, 0, 0x0, 0x0, 0x0, 0x0, 0x1e, 0x0 + createsprite gBurnUpRedYawnTemplate, ANIM_TARGET, 0, 0, 0, 0, 0, 30, 0 delay 1 - createvisualtask AnimTask_CopyPalFadedToUnfaded, 0x5, 0x1 + createvisualtask AnimTask_CopyPalFadedToUnfaded, 5, 1 delay 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 0, 13, RGB(18, 18, 18) createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 3, 0, 15, 1 delay 15 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 12, RGB(28, 0, 0) delay 1 - createvisualtask AnimTask_CopyPalUnfadedFromBackup, 0x5, 0x0, 0x1 + createvisualtask AnimTask_CopyPalUnfadedFromBackup, 5, 0, 1 delay 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 5, 0, RGB(28, 0, 0) delay 1 - createvisualtask AnimTask_CopyPalUnfadedFromBackup, 0x5, 0x1, 0x0 + createvisualtask AnimTask_CopyPalUnfadedFromBackup, 5, 1, 0 delay 1 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 2, 0, 15, 1 @@ -10147,7 +10147,7 @@ gBattleAnimMove_BurnUp:: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 13, 0, RGB(18, 18, 18) delay 1 - createvisualtask AnimTask_FreeBackupPalBuffer, 0x5 + createvisualtask AnimTask_FreeBackupPalBuffer, 5 delay 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 12, 0, RGB(28, 0, 0) @@ -10159,59 +10159,59 @@ gBattleAnimMove_BurnUp:: gBattleAnimMove_SpeedSwap:: monbg ANIM_TARGET - panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 0xfd, 0x0 + panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 253, 0 delay 15 - createsprite gSpeedSwapCircleTemplate, ANIM_TARGET, 2, 0xfff4, 0x18 + createsprite gSpeedSwapCircleTemplate, ANIM_TARGET, 2, -12, 24 delay 5 - createsprite gSpeedSwapRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xFFE0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x16, 0xFFEA, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x1E, 0x0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x14, 0x14, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x1C, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFED, 0x13, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFE5, 0x0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xFFEE, 0xFFEE, 0x10 + createsprite gSpeedSwapRingTemplate, ANIM_ATTACKER, 40, 0, 0, 1, 0 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, 0, -32, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, 22, -22, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, 30, 0, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, 20, 20, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, 0, 28, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, -19, 19, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, -27, 0, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 1, 0, -18, -18, 16 waitforvisualfinish - panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 0xfd, 0x0 - createsprite gSpeedSwapOrbMissileTemplate, ANIM_TARGET, 0, 0x0, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gSpeedSwapRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0, 0xFFE0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x16, 0xFFEA, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1E, 0x0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x14, 0x14, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0, 0x1C, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFED, 0x13, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFE5, 0x0, 0x10 - createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFEE, 0xFFEE, 0x10 + panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 253, 0 + createsprite gSpeedSwapOrbMissileTemplate, ANIM_TARGET, 0, 0, 0, 0, 0, 30, 0 + createsprite gSpeedSwapRingTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, 0, -32, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, 22, -22, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, 30, 0, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, 20, 20, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, 0, 28, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, -19, 19, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, -27, 0, 16 + createsprite gSpeedSwapOrbTemplate, ANIM_TARGET, 2, 0, 0, -18, -18, 16 waitforvisualfinish clearmonbg ANIM_TARGET end gBattleAnimMove_SmartStrike:: createsprite gLockOnTargetSpriteTemplate, ANIM_ATTACKER, 40 - createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 0x1 - createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 0x2 - createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 0x3 - createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 0x4 + createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 1 + createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 2 + createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 3 + createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 4 delay 120 - setarg 0x7 0xffff + setarg 7, -1 waitforvisualfinish monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET setalpha 12, 8 call SonicBoomProjectile createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 10, 1 - createsprite gSmartStrikeImpactTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x8, 0x1, 0x0 + createsprite gSmartStrikeImpactTemplate, ANIM_TARGET, 4, 0, 0, 8, 1, 0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0xffe8, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x11, 0xffef, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x18, 0x0, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x11, 0x11, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0x18, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xffef, 0x11, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xffe8, 0x0, 0xa - createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xffef, 0xffef, 0xa + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, 0, -24, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, 17, -17, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, 24, 0, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, 17, 17, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, 0, 24, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, -17, 17, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, -24, 0, 10 + createsprite gSmartStrikeGemTemplate, ANIM_TARGET, 2, 1, 1, -17, -17, 10 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -10225,21 +10225,21 @@ gBattleAnimMove_Purify:: splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - createsprite gPurifyWhiteBallTemplate, ANIM_ATTACKER, 2, 0x14, 0xfff8, 0xfff8, 0xfff8, 0x14, 0xffe0 + createsprite gPurifyWhiteBallTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32 delay 19 playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x68, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfff4, 0x48, 0x1, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x38, 0x1, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xfffa, 0x58, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x38, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x58, 0x1, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x48, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x6, 0x68, 0x1, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x48, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0xc, 0x38, 0x1, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x50, 0x0, 0x4b - createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0x0, 0x12, 0x48, 0x1, 0x4b + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, -12, 104, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, -12, 72, 1, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, -6, 56, 1, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, -6, 88, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 0, 56, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 0, 88, 1, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 6, 72, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 6, 104, 1, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 12, 72, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 12, 56, 1, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 18, 80, 0, 75 + createsprite gPurifySmokeTemplate, ANIM_TARGET, 4, 0, 18, 72, 1, 75 waitforvisualfinish clearmonbg ANIM_TARGET blendoff @@ -10251,42 +10251,42 @@ gBattleAnimMove_RevelationDance:: waitforvisualfinish playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0x10, 0xffe8, 0x8, 0x64 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0xfff0, 0xffe8, 0x8, 0x64 + createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 16, -24, 8, 100 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, -16, -24, 8, 100 delay 15 - createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0x20, 0xffe8, 0x8, 0x64 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xffe8, 0x8, 0x64 + createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 32, -24, 8, 100 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, -32, -24, 8, 100 delay 15 - createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x8, 0x8c - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0x18, 0xffe8, 0x8, 0x64 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0xffe8, 0xffe8, 0x8, 0x64 + createsprite gRevelationDanceYellowOrbsTemplate, ANIM_ATTACKER, 2, 0, -24, 8, 140 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 24, -24, 8, 100 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, -24, -24, 8, 100 delay 30 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0x10, 0xffe8, 0x0, 0x64 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0xfff0, 0xffe8, 0x0, 0x64 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 16, -24, 0, 100 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, -16, -24, 0, 100 delay 30 createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0x14, 0xfff0, 0xe, 0x50 - createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 0xffec, 0xfff2, 0x10, 0x50 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, 20, -16, 14, 80 + createsprite gRevelationDanceYellowFlowerTemplate, ANIM_ATTACKER, 2, -20, -14, 16, 80 waitforvisualfinish unloadspritegfx ANIM_TAG_FLOWER @particles unloadspritepal ANIM_TAG_FLOWER @particles playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER - createsprite gRevelationDanceYellowAirWaveTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0xf + createsprite gRevelationDanceYellowAirWaveTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 15 waitforvisualfinish playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET - createsprite gRevelationDanceYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x2 - createsprite gRevelationDanceYellowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xb0, 0x28 + createsprite gRevelationDanceYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 2 + createsprite gRevelationDanceYellowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, 0, 176, 40 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_ATTACKER - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff40, 0xf0, 0x28 - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xff60, 0x28 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, -192, 240, 40 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, 0, -160, 40 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_ATTACKER - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff40, 0xff90, 0x28 - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xa0, 0x30, 0x28 - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0xff20, 0xffe0, 0x28 - createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0x0, 0xa, 0x70, 0xff80, 0x28 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, -192, -112, 40 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, 160, 48, 40 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, -224, -32, 40 + createsprite gRevelationDanceYellowDispersalTemplate, ANIM_TARGET, 1, 0, 10, 112, -128, 40 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 15, 0, RGB_BLACK @@ -10299,109 +10299,109 @@ gBattleAnimMove_CoreEnforcer:: setalpha 12, 8 fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xFC00, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -1024, 1, -1 waitbgfadein - loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER 0xd 0xA - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gCoreEnforcerBlueRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER 13 10 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gCoreEnforcerBlueRingTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 waitforvisualfinish - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 waitforvisualfinish - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gCoreEnforcerYellowRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gCoreEnforcerYellowRingTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 waitforvisualfinish - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 waitforvisualfinish - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gCoreEnforcerGreenRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gCoreEnforcerGreenRingTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 waitforvisualfinish - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 delay 5 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 delay 5 - createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gCoreEnforcerBlueSparkTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gCoreEnforcerGreenChargeTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 5 - createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gCoreEnforcerCircleChargeTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 waitforvisualfinish unloadspritegfx ANIM_TAG_SPARK_2 @yellow color unloadspritepal ANIM_TAG_SPARK_2 @yellow color @@ -10421,87 +10421,87 @@ gBattleAnimMove_CoreEnforcer:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SNORE_Z, 0, 10, 10, RGB(8, 20, 1) @Green delay 16 monbg ANIM_TARGET - createvisualtask AnimTask_CreateSmallSolarBeamOrbs, 0x5 - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + createvisualtask AnimTask_CreateSmallSolarBeamOrbs, 5 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 65, 1 createvisualtask AnimTask_ShakeMon2, 5, ANIM_DEF_PARTNER, 2, 0, 65, 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x0 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfff5, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 0 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -11, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfffa, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -6, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xffff, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -1, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x5, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 5, -30, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xA, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 1 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 10, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xF, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 15, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x14, 0xffe2, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 20, -30, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xF, 0xffe7, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 15, -25, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x2 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xC, 0xffea, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 2 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 12, -22, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x9, 0xffed, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 9, -19, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x6, 0xfff0, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 6, -16, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x3, 0xfff3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 3, -13, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x3 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x0, 0xfff6, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0, -10, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfffc, 0xfff9, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -4, -7, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfff9, 0xfffc, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -7, -4, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfff6, 0xffff, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -10, -1, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x4 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfff3, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 4 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -13, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfff8, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -8, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xfffd, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, -3, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x2, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 2, 3, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x5 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x7, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 5 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 7, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0xC, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 12, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x11, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 17, 3, 1, 3 delay 1 - createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 0x16, 0x3, 0x1, 0x3 + createsprite gCoreEnforcerImpactTemplate, ANIM_TARGET, 3, 22, 3, 1, 3 delay 1 - createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 0xf, 0x0, 0x14, 0x6 + createsprite gCoreEnforcerBeamTemplate, ANIM_TARGET, 3, 15, 0, 20, 6 delay 7 - createsprite gCoreEnforcerSnoreTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 + createsprite gCoreEnforcerSnoreTemplate, ANIM_ATTACKER, 2, 0, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 30, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 30, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 30, 1 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, 0xffe8, 0x18, ANIM_TARGET, 0x1 + createsprite gCoreEnforcerExplosionTemplate, ANIM_ATTACKER, 3, -24, 24, ANIM_TARGET, 1 waitforvisualfinish call UnsetPsychicBg clearmonbg ANIM_TARGET @@ -10510,7 +10510,7 @@ gBattleAnimMove_CoreEnforcer:: gBattleAnimMove_TropKick:: monbg ANIM_DEF_PARTNER - createsprite gTropKickGreenFootTemplate, ANIM_ATTACKER, 2, 0xfff0, 0x8, 0x0, 0x0, 0xa, 0x1, 0x1, 0x1 + createsprite gTropKickGreenFootTemplate, ANIM_ATTACKER, 2, -16, 8, 0, 0, 10, 1, 1, 1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET delay 10 @@ -10528,13 +10528,13 @@ gBattleAnimMove_TropKick:: gBattleAnimMove_Instruct:: setalpha 12, 8 - createsprite gMetronomeFingerSpriteTemplate, ANIM_ATTACKER, 12, 0x0 + createsprite gMetronomeFingerSpriteTemplate, ANIM_ATTACKER, 12, 0 delay 24 - loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 0x16, 0x3 + loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 22, 3 waitforvisualfinish - createvisualtask AnimTask_HardwarePaletteFade, 0x2, 0xf8, 0x3, 0x0, 0xa, 0x0 + createvisualtask AnimTask_HardwarePaletteFade, 2, 248, 3, 0, 10, 0 waitforvisualfinish - createsprite gSpotlightSpriteTemplate, ANIM_TARGET, 2, 0x0, 0xfff8 + createsprite gSpotlightSpriteTemplate, ANIM_TARGET, 2, 0, -8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 8, RGB(25, 13, 31) delay 4 monbg ANIM_TARGET @@ -10558,25 +10558,25 @@ gBattleAnimGeneral_BeakBlastSetUp:: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER delay 3 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_RED - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 waitforvisualfinish end gBattleAnimMove_BeakBlast:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 9, RGB_RED waitforvisualfinish - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0 playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER waitforvisualfinish delay 2 - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x1 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 1 delay 2 - loopsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET 0x4 0x8 - createvisualtask AnimTask_DrillPeckHitSplats, 0x5 + loopsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET 4 8 + createvisualtask AnimTask_DrillPeckHitSplats, 5 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 18, 1 waitforvisualfinish - createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 0x2 + createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 2 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 6 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 9, 0, RGB_RED waitforvisualfinish @@ -10603,9 +10603,9 @@ gBattleAnimMove_ClangingScales:: waitforvisualfinish end ClangingScalesMetalSound: - panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 - createsprite gClangingScalesPurpleMetalSoundTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0x1e, 0x0, ANIM_TARGET - createsprite gClangingScalesPurpleMetalSoundTemplate, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0x1e, 0x0, ANIM_DEF_PARTNER + panse SE_M_SCREECH, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 + createsprite gClangingScalesPurpleMetalSoundTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0, ANIM_TARGET + createsprite gClangingScalesPurpleMetalSoundTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0, ANIM_DEF_PARTNER delay 2 return @@ -10613,7 +10613,7 @@ gBattleAnimMove_DragonHammer:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_ROUND_SHADOW, 0, 12, 12, RGB(31, 11, 31) @Pinkish purple fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, -500, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -500, 0, -1 waitbgfadein setalpha 15, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 26, 0, 0, 5 @@ -10621,7 +10621,7 @@ gBattleAnimMove_DragonHammer:: playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET createsprite gBounceBallLandSpriteTemplate, ANIM_TARGET, 3 delay 2 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 5 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, 8, 8, 1, 0 @@ -10640,7 +10640,7 @@ gBattleAnimMove_DragonHammer:: delay 2 createsprite gOctazookaSmokeSpriteTemplate, ANIM_TARGET, 2, -8, 8, 1, 0 delay 51 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish call UnsetPsychicBg blendoff @@ -10652,27 +10652,27 @@ gBattleAnimMove_BrutalSwing:: fadetobg BG_DARK waitbgfadeout playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER - createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 0x6, 0x1, 0x0 + createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 0 waitforvisualfinish delay 11 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 26, 0, 0, 5 delay 6 - createsprite gBrutalSwingBasicImpactTemplate, ANIM_TARGET, 3, 0xffe0, 0xfff0, 0x1, 0x1 + createsprite gBrutalSwingBasicImpactTemplate, ANIM_TARGET, 3, -32, -16, 1, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 21, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 0, 3, 21, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATK_PARTNER, 0, 3, 21, 1 delay 4 - createsprite gBrutalSwingRandomImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gBrutalSwingRandomImpactTemplate, ANIM_TARGET, 3, 1, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gBrutalSwingRandomImpactTemplate, ANIM_TARGET, 3, 0x1, 0x1 + createsprite gBrutalSwingRandomImpactTemplate, ANIM_TARGET, 3, 1, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 - createsprite gBrutalSwingBasicImpactTemplate, ANIM_TARGET, 3, 0x20, 0x14, 0x1, 0x1 + createsprite gBrutalSwingBasicImpactTemplate, ANIM_TARGET, 3, 32, 20, 1, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitsound - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 6 waitforvisualfinish restorebg blendoff @@ -10682,7 +10682,7 @@ gBattleAnimMove_BrutalSwing:: gBattleAnimMove_AuroraVeil:: fadetobg BG_AURORA waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x400, 0x0, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 1024, 0, 0, -1 waitbgfadein monbg ANIM_ATK_PARTNER setalpha 8, 8 @@ -10720,86 +10720,86 @@ gBattleAnimGeneral_ShellTrapSetUp:: gBattleAnimMove_ShellTrap:: ShellTrapUnleash: monbg ANIM_TARGET - waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 0x10 + waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16 delay 6 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapYellowImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x14 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 2 - createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x18 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 - createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x2 + createsprite gShellTrapRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 2 delay 5 waitforvisualfinish call ShellTrapFireLaunch1 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xa, 0x0, 0xa, 0x38, 0xfffc, 0x3, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 10, 0, 10, 56, -4, 3, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x38, 0xfffc, 0x5, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 56, -4, 5, 1 delay 3 call ShellTrapFireLaunch2 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER @@ -10842,47 +10842,47 @@ ShellTrapUnleash: clearmonbg ANIM_TARGET end ShellTrapFireLaunch1: - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xa, 0x0, 0xa, 0x38, 0xfffc, 0x3, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 10, 0, 10, 56, -4, 3, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x38, 0xfffc, 0x5, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 56, -4, 5, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xf, 0x0, 0xf, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 15, 0, 15, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 56, 4, 4, 1 delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0x14, 0x0, 0x14, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 20, 0, 20, 56, 4, 4, 1 delay 3 return ShellTrapFireLaunch2: - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0, 56, 4, 4, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xfff6, 0x0, 0xfff6, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -10, 0, -10, 56, 4, 4, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xa, 0x0, 0xa, 0x38, 0xfffc, 0x3, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 10, 0, 10, 56, -4, 3, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x38, 0xfffc, 0x5, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 56, -4, 5, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xf, 0x0, 0xf, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 15, 0, 15, 56, 4, 4, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0xffec, 0x0, 0xffec, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, -20, 0, -20, 56, 4, 4, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 - createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0x0, 0x14, 0x0, 0x14, 0x38, 0x4, 0x4, 0x1 + createsprite gShellTrapFireHitsTemplate, ANIM_ATTACKER, 40, 0, 20, 0, 20, 56, 4, 4, 1 createvisualtaskontargets AnimTask_ShakeMon, 2, 0, ANIM_TARGET, 3, 0, 6, 1 playsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER delay 3 @@ -10893,7 +10893,7 @@ gBattleAnimMove_FleurCannon:: monbg ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 15, RGB(0, 2, 29) waitforvisualfinish - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 50, 1 flash_anim_tag_with_color tag=ANIM_TAG_ORBS, delay=1, num_blends=12, color1=RGB_RED, blend_y1=16, color2=0, blend_y2=0 call FleurCannonBeam @@ -10919,9 +10919,9 @@ gBattleAnimMove_FleurCannon:: call FleurCannonBeam call FleurCannonBeam delay 32 - createsprite gFleurCannonDischargeTemplate, ANIM_ATTACKER, 2, 0x1, 0x10, 0x10 + createsprite gFleurCannonDischargeTemplate, ANIM_ATTACKER, 2, 1, 16, 16 delay 2 - createsprite gFleurCannonDischargeTemplate, ANIM_ATTACKER, 2, 0x1, 0xfff0, 0xfff0 + createsprite gFleurCannonDischargeTemplate, ANIM_ATTACKER, 2, 1, -16, -16 delay 5 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 11, 1 waitforvisualfinish @@ -10975,26 +10975,26 @@ gBattleAnimMove_StompingTantrum:: monbg ANIM_TARGET createvisualtask AnimTask_Splash, 2, ANIM_ATTACKER, 3 delay 5 - createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 0x5 - createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 0x5 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x1 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x2 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x3 + createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 5 + createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 5 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 0 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 1 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 2 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 3 call StompingTantrumImpact playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 37 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x1 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x2 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x3 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 0 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 1 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 2 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 3 call StompingTantrumImpact playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 37 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x0 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x1 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x2 - createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0x0, 0x3 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 0 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 1 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 2 + createsprite gStompingTantrumRockTemplate, ANIM_ATTACKER, 2, 0, 3 call StompingTantrumImpact playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET waitforvisualfinish @@ -11011,20 +11011,20 @@ gBattleAnimMove_ShadowBone:: splitbgprio ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_BONEMERANG, SOUND_PAN_TARGET - createsprite gSpinningBoneSpriteTemplate, ANIM_ATTACKER, 2, 0xffd6, 0xffe7, 0x0, 0x0, 0xf + createsprite gSpinningBoneSpriteTemplate, ANIM_ATTACKER, 2, -42, -25, 0, 0, 15 delay 12 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 5, 5, 1 - complex_palette_blend selector=F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, delay=0x5, num_blends=0x1, color1=0x0, blend_y1=10, color2=RGB_BLACK, blend_y2=0 + complex_palette_blend selector=F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, delay=5, num_blends=1, color1=0, blend_y1=10, color2=RGB_BLACK, blend_y2=0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_NightmareClone, 0x2 + createvisualtask AnimTask_NightmareClone, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 40, 1 playsewithpan SE_M_NIGHTMARE, SOUND_PAN_TARGET waitforvisualfinish restorebg waitbgfadein - clearmonbg 0x3 + clearmonbg 3 blendoff end @@ -11032,17 +11032,17 @@ gBattleAnimMove_Accelerock:: monbg ANIM_ATK_PARTNER setalpha 12, 8 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 24, 6, 1, 5 - createvisualtask AnimTask_TraceMonBlended, 0x2, 0x0, 0x4, 0x7, 0x3 + createvisualtask AnimTask_TraceMonBlended, 2, 0, 4, 7, 3 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER delay 4 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 create_basic_hitsplat_sprite ANIM_TARGET, 4, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x3, 0x0, 0x5, 0x1 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0xffec, 0x18, 0xe, 0x1 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x5, 0x14, 0xffe8, 0xe, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0x0, 0xffec, 0xffe8, 0xe, 0x2 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x3, 0x0, 0x5, 0x1 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 5, 1 + 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 gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 1, 3, 0, 5, 1 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER blendoff @@ -11052,7 +11052,7 @@ gBattleAnimMove_Accelerock:: gBattleAnimMove_Liquidation:: monbg ANIM_TARGET setalpha 12, 8 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 6 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 @@ -11069,7 +11069,7 @@ gBattleAnimMove_PrismaticLaser:: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK playsewithpan SE_ELEVATOR, SOUND_PAN_ATTACKER - createsprite gPrismaticLaserChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gPrismaticLaserChargeTemplate, ANIM_ATTACKER, 2, 0 call PrismaticLaserInwardSpikes playsewithpan SE_ELEVATOR, SOUND_PAN_ATTACKER call PrismaticLaserInwardSpikes @@ -11098,8 +11098,8 @@ gBattleAnimMove_PrismaticLaser:: unloadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT unloadspritepal ANIM_TAG_CIRCLE_OF_LIGHT delay 30 - createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 0x32 - createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 0x32 + createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 50 + createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 playsewithpan SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER call PrismaticLaserRain call PrismaticLaserRain @@ -11112,73 +11112,73 @@ gBattleAnimMove_PrismaticLaser:: blendoff end PrismaticLaserOutwardSpikes: - createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x0, 0xFF90, 0x10 @up - createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x5F, 0xFF9D, 0x10 @upper right - createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x73, 0x0, 0x10 @right - createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x4F, 0x37, 0x10 @lower right - createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x0, 0x53, 0x10 @down - createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFB0, 0x43, 0x10 @lower left - createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFF60, 0x0, 0x10 @left - createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFAA, 0xFF94, 0x10 @upper left + createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0, 1, 0, -112, 16 @up + createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0, 1, 95, -99, 16 @upper right + createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0, 1, 115, 0, 16 @right + createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0, 1, 79, 55, 16 @lower right + createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0, 1, 0, 83, 16 @down + createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0, 1, -80, 67, 16 @lower left + createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0, 1, -160, 0, 16 @left + createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0, 1, -86, -108, 16 @upper left playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER return PrismaticLaserOutwardSpikes2: - createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFE0, 0x43, 0x10 @between lower left and down - createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x1F, 0x37, 0x10 @between lower right and down - createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFFDA, 0xFF94, 0x10 @between up and upper left - createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFF60, 0x43, 0x10 @between left and lower left - createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xFF2A, 0xFFAA, 0x10 @between left and upper left - createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x2D, 0xFF9D, 0x10 @between up and upper right - createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0xDF, 0xFF9D, 0x10 @between right and upper right - createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0x0, 0x1, 0x9F, 0x37, 0x10 @between right and lower right + createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0, 1, -32, 67, 16 @between lower left and down + createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0, 1, 31, 55, 16 @between lower right and down + createsprite gPrismaticLaserYellowOutwardTemplate, ANIM_TARGET, 2, 0, 1, -38, -108, 16 @between up and upper left + createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0, 1, -160, 67, 16 @between left and lower left + createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0, 1, -214, -86, 16 @between left and upper left + createsprite gPrismaticLaserVioletOutwardTemplate, ANIM_TARGET, 2, 0, 1, 45, -99, 16 @between up and upper right + createsprite gPrismaticLaserRedOutwardTemplate, ANIM_TARGET, 2, 0, 1, 223, -99, 16 @between right and upper right + createsprite gPrismaticLaserGreenOutwardTemplate, ANIM_TARGET, 2, 0, 1, 159, 55, 16 @between right and lower right playsewithpan SE_M_MIST, SOUND_PAN_ATTACKER return PrismaticLaserInwardSpikes: - createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0, 0xFF90, 0x10 @up - createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFE0, 0x43, 0x10 @between lower left and down + createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0, 0, 0, -112, 16 @up + createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0, 0, -32, 67, 16 @between lower left and down delay 1 - createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x5F, 0xFF9D, 0x10 @upper right - createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1F, 0x37, 0x10 @between lower right and down - createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFDA, 0xFF94, 0x10 @between up and upper left + createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0, 0, 95, -99, 16 @upper right + createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0, 0, 31, 55, 16 @between lower right and down + createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0, 0, -38, -108, 16 @between up and upper left delay 1 - createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x73, 0x0, 0x10 @right - createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFF60, 0x43, 0x10 @between left and lower left + createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0, 0, 115, 0, 16 @right + createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0, 0, -160, 67, 16 @between left and lower left delay 1 - createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x4F, 0x37, 0x10 @lower right - createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFF2A, 0xFFAA, 0x10 @between left and upper left + createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0, 0, 79, 55, 16 @lower right + createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0, 0, -214, -86, 16 @between left and upper left delay 1 - createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0, 0x53, 0x10 @down - createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x2D, 0xFF9D, 0x10 @between up and upper right + createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0, 0, 0, 83, 16 @down + createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0, 0, 45, -99, 16 @between up and upper right delay 1 - createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFB0, 0x43, 0x10 @lower left - createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xDF, 0xFF9D, 0x10 @between right and upper right + createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0, 0, -80, 67, 16 @lower left + createsprite gPrismaticLaserRedInwardTemplate, ANIM_TARGET, 2, 0, 0, 223, -99, 16 @between right and upper right delay 1 - createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFF60, 0x0, 0x10 @left - createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x9F, 0x37, 0x10 @between right and lower right + createsprite gPrismaticLaserYellowInwardTemplate, ANIM_TARGET, 2, 0, 0, -160, 0, 16 @left + createsprite gPrismaticLaserGreenInwardTemplate, ANIM_TARGET, 2, 0, 0, 159, 55, 16 @between right and lower right delay 1 - createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xFFAA, 0xFF94, 0x10 @upper left + createsprite gPrismaticLaserVioletInwardTemplate, ANIM_TARGET, 2, 0, 0, -86, -108, 16 @upper left delay 1 return PrismaticLaserRain: - createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 35, 0x3c, 4, ANIM_TARGET + createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 35, 60, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -30, 0x44, 4, ANIM_TARGET + createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -30, 68, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserRedRainTemplate, ANIM_TARGET, 2, 27, 0x37, 4, ANIM_TARGET + createsprite gPrismaticLaserRedRainTemplate, ANIM_TARGET, 2, 27, 55, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserVioletRainTemplate, ANIM_TARGET, 2, -20, 0x32, 4, ANIM_TARGET + createsprite gPrismaticLaserVioletRainTemplate, ANIM_TARGET, 2, -20, 50, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 33, 0x3a, 4, ANIM_TARGET + createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 33, 58, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -12, 0x3a, 4, ANIM_TARGET + createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -12, 58, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserRedRainTemplate, ANIM_TARGET, 2, 19, 0x3c, 4, ANIM_TARGET + createsprite gPrismaticLaserRedRainTemplate, ANIM_TARGET, 2, 19, 60, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserVioletRainTemplate, ANIM_TARGET, 2, -38, 0x3a, 4, ANIM_TARGET + createsprite gPrismaticLaserVioletRainTemplate, ANIM_TARGET, 2, -38, 58, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 5, 0x3c, 4, ANIM_TARGET + createsprite gPrismaticLaserYellowRainTemplate, ANIM_TARGET, 2, 5, 60, 4, ANIM_TARGET delay 2 - createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -23, 0x28, 4, ANIM_TARGET + createsprite gPrismaticLaserGreenRainTemplate, ANIM_TARGET, 2, -23, 40, 4, ANIM_TARGET return gBattleAnimMove_SpectralThief:: @@ -11188,26 +11188,26 @@ SpectralThiefUnleash: waitbgfadein delay 5 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 8, 8, 0, 0 invisible ANIM_ATTACKER delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, -8, -8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 8, -8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, -8, 8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0x8, 0x8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 8, 8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0xfff8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, -8, -8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0x8, 0xfff8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 8, -8, 0, 0 delay 2 - createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x0, 0x0 + createsprite gSpectralThiefBlackSmokeTemplate, ANIM_TARGET, 2, -8, 8, 0, 0 waitforvisualfinish playsewithpan SE_M_PSYBEAM, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x30 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 delay 48 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 2, 0, 24, 1 createvisualtask AnimTask_BlendBattleAnimPalExclude, 2, 6, 1, 0, 12, RGB(29, 29, 29) @@ -11217,7 +11217,7 @@ SpectralThiefUnleash: setalpha 0, 16 delay 1 monbg_static ANIM_TARGET - createvisualtask AnimTask_MoveTargetMementoShadow, 0x5 + createvisualtask AnimTask_MoveTargetMementoShadow, 5 playsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET waitforvisualfinish clearmonbg_static ANIM_TARGET @@ -11227,31 +11227,31 @@ SpectralThiefUnleash: setalpha 12, 8 monbg ANIM_TARGET delay 1 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, -10, -10, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 10, 20, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, -5, 10, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 17, -12, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0xfff1, 0xf, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, -15, 15, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0, 0, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 4 - createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 0x14, 0x2, 0x0 + createsprite gSpectralThiefThiefImpactTemplate, ANIM_TARGET, 2, 20, 2, 0 playsewithpan SE_M_DOUBLE_SLAP, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 waitforvisualfinish @@ -11265,11 +11265,11 @@ SpectralThiefUnleash: SpectralThiefSteal: setalpha 11, 5 splitbgprio_all - panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 0xfd, 0x0 + panse SE_M_MINIMIZE, SOUND_PAN_TARGET, SOUND_PAN_ATTACKER, 253, 0 delay 15 - createsprite gSpectralThiefBlackOrbsTemplate, ANIM_TARGET, 2, 0xfff4, 0x18 + createsprite gSpectralThiefBlackOrbsTemplate, ANIM_TARGET, 2, -12, 24 delay 11 - setarg 0x7 0xffff + setarg 7, -1 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call SpectralThiefBuffUp @@ -11282,22 +11282,22 @@ SpectralThiefSteal: blendoff end SpectralThiefBuffUp: - createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gSpectralThiefBlackBuffTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return gBattleAnimMove_SunsteelStrike:: monbg ANIM_TARGET setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET - createsprite gSunsteelStrikeBlackFlyBallTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSunsteelStrikeBlackFlyBallTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 createvisualtask AnimTask_HorizontalShake, 5, ANIM_ATK_PARTNER, 1, 20 delay 24 createsprite gSunsteelStrikeRocksTemplate, ANIM_ATTACKER, 2, 0, 0 @The rock particles mess up the fly animation @@ -11324,9 +11324,9 @@ gBattleAnimMove_SunsteelStrike:: call SunsteelStrikeBeam stopsound playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET - createsprite gSunsteelStrikeSuperpowerTemplate, ANIM_TARGET, 2, 0x14 + createsprite gSunsteelStrikeSuperpowerTemplate, ANIM_TARGET, 2, 20 delay 20 - createsprite gSunsteelStrikeRedImpactTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x0 + createsprite gSunsteelStrikeRedImpactTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 0 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1 waitforvisualfinish unloadspritegfx ANIM_TAG_METEOR @superpower @@ -11348,9 +11348,9 @@ gBattleAnimMove_SunsteelStrike:: clearmonbg ANIM_TARGET end SunsteelStrikeBeam: - createsprite gSunsteelStrikeYellowBeamTemplate, ANIM_TARGET, 2, 0x14 + createsprite gSunsteelStrikeYellowBeamTemplate, ANIM_TARGET, 2, 20 delay 1 - createsprite gSunsteelStrikeRedBeamTemplate, ANIM_TARGET, 2, 0x14 + createsprite gSunsteelStrikeRedBeamTemplate, ANIM_TARGET, 2, 20 delay 1 return @@ -11361,13 +11361,13 @@ gBattleAnimMove_MoongeistBeam:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_CIRCLE_OF_LIGHT, 0, 15, 15, RGB(28, 31, 31) @Light Blue waitforvisualfinish playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET - createsprite gMoonSpriteTemplate, ANIM_TARGET, 0, 0x20, 0x15 - createvisualtask AnimTask_AlphaFadeIn, 0x3, 0x0, 0x10, 0x10, 0x0, 0x1 + createsprite gMoonSpriteTemplate, ANIM_TARGET, 0, 32, 21 + createvisualtask AnimTask_AlphaFadeIn, 3, 0, 16, 16, 0, 1 call MoongeistBeamCharge call MoongeistBeamCharge call MoongeistBeamCharge call MoongeistBeamCharge - createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0x0 @;Charge circle + createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0 @;Charge circle call MoongeistBeamCharge delay 32 createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_HYPER_BEAM2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 1, 15, 0, 5 @@ -11412,7 +11412,7 @@ gBattleAnimMove_MoongeistBeam:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(25, 25, 25) delay 26 stopsound - createvisualtask AnimTask_MoonlightEndFade, 0x2 + createvisualtask AnimTask_MoonlightEndFade, 2 end MoongeistBeamCharge: createsprite gMoongeistBeamChargeTemplate, ANIM_ATTACKER, 0, 40, 0, 0, 0, 30, 10 @From right @@ -11434,9 +11434,9 @@ gBattleAnimMove_TearfulLook:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 5, RGB(0, 15, 31) waitforvisualfinish playsewithpan SE_M_CONFUSE_RAY, SOUND_PAN_TARGET - createsprite gOpeningEyeSpriteTemplate, ANIM_ATTACKER, 5, 0x0, 0x0, 0x1, 0x0 + createsprite gOpeningEyeSpriteTemplate, ANIM_ATTACKER, 5, 0, 0, 1, 0 delay 53 - loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 0xC, 0x2 + loopsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER, 12, 2 delay 8 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 @@ -11471,14 +11471,14 @@ gBattleAnimMove_ZingZap:: delay 4 call ZingZapSparks1 invisible ANIM_ATTACKER - createsprite gZingZapYellowBallTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xF + createsprite gZingZapYellowBallTemplate, ANIM_TARGET, 2, 0, 0, 15 delay 10 call ZingZapSparks2 delay 5 stopsound playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER waitforvisualfinish - createsprite gZingZapRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 + createsprite gZingZapRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 call ElectricityEffect visible ANIM_ATTACKER @@ -11487,86 +11487,86 @@ gBattleAnimMove_ZingZap:: end ZingZapSparks1: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 return ZingZapSparks2: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 return gBattleAnimMove_NaturesMadness:: monbg ANIM_ATTACKER setalpha 14, 8 delay 1 - loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 0x10, 0x3 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x0 + loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 16, 3 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 0 delay 4 - createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x0 + createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 0 delay 4 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x0 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 0 delay 4 - createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x0 + createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 0 delay 4 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x0 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 0 delay 4 - createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x0 + createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 0 delay 4 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x0 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 0 delay 4 - createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1F, 0x8 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x0 + createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 0 clearmonbg ANIM_ATTACKER delay 1 monbg ANIM_TARGET waitforvisualfinish unloadspritegfx ANIM_TAG_SPARKLE_2 unloadspritepal ANIM_TAG_SPARKLE_2 - createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 + createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0, 0, 1, 0 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER delay 14 - createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 + createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0, 0, 1, 0 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER delay 14 - createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x1, 0x0 + createsprite gNaturesMadnessGrayRingTemplate, ANIM_ATTACKER, 40, 0, 0, 1, 0 playsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER waitforvisualfinish unloadspritegfx ANIM_TAG_ECLIPSING_ORB unloadspritepal ANIM_TAG_ECLIPSING_ORB 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 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x1 - createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x14, 0xa, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff6, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xf, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0x19, 0x14, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xffec, 0x14, 0x19, 0x1 - createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0xc, 0x0, 0x19, 0x1 + createsprite gNaturesMadnessPinkRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 1 + createsprite gNaturesMadnessPinkStarsTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 10, 10, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -15, 0, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 20, 10, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 0, -10, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -10, 15, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 25, 20, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, -20, 20, 25, 1 + createsprite gNaturesMadnessCrystalsTemplate, ANIM_ATTACKER, 2, 12, 0, 25, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 @@ -11592,8 +11592,8 @@ gBattleAnimMove_MultiAttack:: waitforvisualfinish delay 15 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 0x28, 0xffe0, 0x0 - createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 0x28, 0xffd0, 0x0 + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 0 + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -48, 0 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 12, 0, RGB_BLACK @@ -11601,15 +11601,15 @@ gBattleAnimMove_MultiAttack:: clearmonbg ANIM_TARGET end MultiAttackBuff: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return gBattleAnimMove_MindBlown:: @@ -11618,15 +11618,15 @@ gBattleAnimMove_MindBlown:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish playsewithpan SE_FALL, SOUND_PAN_TARGET - createsprite gMindBlownHeadTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x25 + createsprite gMindBlownHeadTemplate, ANIM_TARGET, 2, 0, 0, 37 waitforvisualfinish createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 15, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 2, 0, 15, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATK_PARTNER, 2, 0, 15, 1 delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMindBlownBlueImpactTemplate, ANIM_TARGET, 3, 0x1, 0x0 - createsprite gMindBlownPinkImpactTemplate, ANIM_TARGET, 3, 0x1, 0x0 + createsprite gMindBlownBlueImpactTemplate, ANIM_TARGET, 3, 1, 0 + createsprite gMindBlownPinkImpactTemplate, ANIM_TARGET, 3, 1, 0 call MindBlownBlueOrbs delay 1 call MindBlownPinkOrbs @@ -11644,24 +11644,24 @@ gBattleAnimMove_MindBlown:: clearmonbg ANIM_TARGET end MindBlownBlueOrbs: - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0xFF90, 0x8 @up - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x5F, 0xFF9D, 0x8 @upper right - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x73, 0x0, 0x8 @right - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x4F, 0x37, 0x8 @lower right - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x0, 0x53, 0x8 @down - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFFB0, 0x43, 0x8 @lower left - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFF60, 0x0, 0x8 @left - createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFFAA, 0xFF94, 0x8 @upper left + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, 0, -112, 8 @up + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, 95, -99, 8 @upper right + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, 115, 0, 8 @right + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, 79, 55, 8 @lower right + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, 0, 83, 8 @down + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, -80, 67, 8 @lower left + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, -160, 0, 8 @left + createsprite gMindBlownBlueOrbsTemplate, ANIM_TARGET, 2, 1, 1, -86, -108, 8 @upper left return MindBlownPinkOrbs: - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x2D, 0xFF9D, 0x8 @between up and upper right - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xDF, 0xFF9D, 0x8 @between right and upper right - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x9F, 0x37, 0x8 @between right and lower right - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0x1F, 0x37, 0x8 @between lower right and down - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFFE0, 0x43, 0x8 @between lower left and down - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFF60, 0x43, 0x8 @between left and lower left - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFF2A, 0xFFAA, 0x8 @between left and upper left - createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 0x1, 0x1, 0xFFDA, 0xFF94, 0x8 @between up and upper left + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, 45, -99, 8 @between up and upper right + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, 223, -99, 8 @between right and upper right + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, 159, 55, 8 @between right and lower right + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, 31, 55, 8 @between lower right and down + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, -32, 67, 8 @between lower left and down + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, -160, 67, 8 @between left and lower left + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, -214, -86, 8 @between left and upper left + createsprite gMindBlownPinkOrbsTemplate, ANIM_TARGET, 2, 1, 1, -38, -108, 8 @between up and upper left return gBattleAnimMove_PlasmaFists:: @@ -11669,7 +11669,7 @@ gBattleAnimMove_PlasmaFists:: setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK waitforvisualfinish - createsprite gPlasmaFistsChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gPlasmaFistsChargeTemplate, ANIM_ATTACKER, 2, 0 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 3, 92, 1 call PlasmaFistSpark1 delay 10 @@ -11711,24 +11711,24 @@ gBattleAnimMove_PlasmaFists:: PlasmaFistSpark1: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(31, 31, 22) - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 return PlasmaFistSpark2: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 return PlasmaFistsImpact: playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET - createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x8, 0x1, 0x0 + createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 8, 1, 0 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 delay 1 - invert_screen_color scenery=0x101 + invert_screen_color scenery=257 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, -48 delay 1 @@ -11737,7 +11737,7 @@ PlasmaFistsImpact: createsprite gLightningSpriteTemplate, ANIM_ATTACKER, 2, 0, 16 delay 1 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET - invert_screen_color scenery=0x101 + invert_screen_color scenery=257 delay 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=2 @@ -11746,7 +11746,7 @@ PlasmaFistsImpact: gBattleAnimMove_PhotonGeyser:: monbg ANIM_ATTACKER setalpha 12, 8 - createsprite gPhotonGeyserChargeTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gPhotonGeyserChargeTemplate, ANIM_ATTACKER, 2, 0 call PhotonGeyserSparks1 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 @@ -11784,19 +11784,19 @@ gBattleAnimMove_PhotonGeyser:: unloadspritepal ANIM_TAG_ORBS @recover unloadspritegfx ANIM_TAG_SHOCK_3 @charge unloadspritepal ANIM_TAG_SHOCK_3 @charge - createsprite gPhotonGeyserWhiteRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0, 0x1f, 0x8 - createsprite gPhotonGeyserZapBallTemplate, ANIM_TARGET, 3, 0xa, 0x0, 0x0, 0x0, 0x1e, 0x0 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x0 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x40, 0x28, 0x1 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x80, 0x28, 0x0 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x10, 0x1e, 0x0, 0x28, 0x2 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x20, 0x28, 0x0 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0x60, 0x28, 0x1 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xa0, 0x28, 0x0 - createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 0xa, 0x0, 0x8, 0x1e, 0xe0, 0x28, 0x2 + createsprite gPhotonGeyserWhiteRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0, 31, 8 + createsprite gPhotonGeyserZapBallTemplate, ANIM_TARGET, 3, 10, 0, 0, 0, 30, 0 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 0 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 64, 40, 1 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 128, 40, 0 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 16, 30, 0, 40, 2 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 32, 40, 0 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 96, 40, 1 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 160, 40, 0 + createsprite gPhotonGeyserZapCannonSparkTemplate, ANIM_TARGET, 4, 10, 0, 8, 30, 224, 40, 2 waitforvisualfinish monbg ANIM_TARGET - createsprite gPhotonGeyserYellowRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x0, 0x1f, 0x8 + createsprite gPhotonGeyserYellowRingTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 0, 31, 8 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 5, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER unloadspritegfx ANIM_TAG_YELLOW_BALL @confuse ray (for zap cannon) @@ -11808,7 +11808,7 @@ gBattleAnimMove_PhotonGeyser:: @Shoot beam to the sky createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 6, 0, 16, RGB(31, 31, 16) @Light yellow createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 4, 0, 96, 1 - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 call PhotonGeyserBeam waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 16, 0, RGB(31, 31, 16) @Light yellow @@ -11819,18 +11819,18 @@ gBattleAnimMove_PhotonGeyser:: end PhotonGeyserSparks1: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gThinRingShrinkingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0x20, 0x18, 0xbe, 0xc, 0x0, 0x1, 0x0 + createsprite gThinRingShrinkingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, 0, 1, 0 delay 0 - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0x9c, 0x18, 0x79, 0xd, 0x0, 0x1, 0x1 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, 0, 1, 0 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, 0, 1, 1 return PhotonGeyserSparks2: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0xaa, 0x18, 0x2a, 0xb, 0x0, 0x1, 0x1 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, 0, 1, 0 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, 0, 1, 1 delay 0 - createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gPhotonGeyserSparkTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, 0, 1, 1 return PhotonGeyserBeam: createsprite gPhotonGeyserBeam, ANIM_TARGET, 3, 0, 19, ANIM_TARGET, 180, 2, 6 @@ -12204,17 +12204,17 @@ gBattleAnimMove_VeeveeVolley:: jumpreteq 3, gBattleAnimMove_DoubleEdge gBattleAnimMove_DoubleIronBash:: - loopsewithpan SE_M_HARDEN, SOUND_PAN_ATTACKER, 0x1c, 0x2 + loopsewithpan SE_M_HARDEN, SOUND_PAN_ATTACKER, 28, 2 metallic_shine permanent=0 waitforvisualfinish monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET setalpha 12, 8 - loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 0x14, 0x2 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x0, 0xc, 0x4, 0x1, 0x4 - createvisualtask AnimTask_AnimateGustTornadoPalette, 0x5, 0x1, 0x46 - createsprite gGustToTargetSpriteTemplate, ANIM_ATTACKER, 2, 0xffe7, 0x0, 0x0, 0x0, 0x0 @wing attack - createsprite gGustToTargetSpriteTemplate, ANIM_ATTACKER, 2, 0x19, 0x0, 0x0, 0x0, 0x0 @wing attack + loopsewithpan SE_M_WING_ATTACK, SOUND_PAN_ATTACKER, 20, 2 + createvisualtask AnimTask_TranslateMonElliptical, 2, 0, 12, 4, 1, 4 + createvisualtask AnimTask_AnimateGustTornadoPalette, 5, 1, 70 + createsprite gGustToTargetSpriteTemplate, ANIM_ATTACKER, 2, -25, 0, 0, 0, 0 @wing attack + createsprite gGustToTargetSpriteTemplate, ANIM_ATTACKER, 2, 25, 0, 0, 0, 0 @wing attack delay 24 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 9 delay 17 @@ -12223,10 +12223,10 @@ gBattleAnimMove_DoubleIronBash:: waitforvisualfinish playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0xb + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 11 waitforvisualfinish delay 3 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 7 clearmonbg ANIM_DEF_PARTNER blendoff end @@ -12292,7 +12292,7 @@ DynamaxCannonLaunch: gBattleAnimMove_SnipeShot:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 16, 0 @;Black waitforvisualfinish - createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 0x18, -12 + createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 24, -12 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER waitforvisualfinish delay 32 @@ -12311,8 +12311,8 @@ gBattleAnimMove_JawLock:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 7, RGB_BLACK @Black waitforvisualfinish playsewithpan SE_M_BITE, SOUND_PAN_TARGET - createsprite gJawLockTeethTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xffe0, 0x1, 0x333, 0x333, 0xa, 15 - createsprite gJawLockTeethTemplate, ANIM_ATTACKER, 2, 0x20, 0x20, 0x5, 0xfccd, 0xfccd, 0xa, 15 + createsprite gJawLockTeethTemplate, ANIM_ATTACKER, 2, -32, -32, 1, 819, 819, 10, 15 + createsprite gJawLockTeethTemplate, ANIM_ATTACKER, 2, 32, 32, 5, -819, -819, 10, 15 delay 10 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, 10, 2 @@ -12324,11 +12324,11 @@ gBattleAnimMove_JawLock:: end gBattleAnimMove_StuffCheeks:: - playsewithpan SE_M_METRONOME, 0xc0 - createsprite gFloatingBerryTemplate, ANIM_ATTACKER, 1, 0x0 + playsewithpan SE_M_METRONOME, 192 + createsprite gFloatingBerryTemplate, ANIM_ATTACKER, 1, 0 delay 69 - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 0x1 BERRYEAT_ON_PLAYER + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 1 BERRYEAT_ON_PLAYER BerryEatingOpponent: call BiteOpponent delay 16 @@ -12341,9 +12341,9 @@ BERRYEAT_ON_PLAYER: call BitePlayer delay 10 POST_BERRY_EAT: - playsewithpan SE_SHINY, 0xc0 + playsewithpan SE_SHINY, 192 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 3, 7, 0, RGB(17, 31, 25) - createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitforvisualfinish end BitePlayer: @@ -12353,25 +12353,25 @@ BitePlayer: return BiteOpponent: 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 + 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:: - loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER 0x7 0x12 - createsprite gNoRetreatFlameTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 20, 10, 0xA0, 0 - createsprite gNoRetreatFlameTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -20, 10, 0xA0, 0 - createvisualtask AnimTask_TeeterDanceMovement, 0x5 + loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER 7 18 + createsprite gNoRetreatFlameTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 20, 10, 160, 0 + createsprite gNoRetreatFlameTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -20, 10, 160, 0 + createvisualtask AnimTask_TeeterDanceMovement, 5 waitforvisualfinish end gBattleAnimMove_TarShot:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_POISON_BUBBLE, 0, 15, 15, RGB_BLACK @Black monbg ANIM_TARGET - createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x28, 0x1, 0x0, 0x0 + createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 20, 0, 40, 1, 0, 0 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 5 - createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x28, 0x1, 0xffe8, 0x0 + createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 20, 0, 40, 1, -24, 0 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 15 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 10, 1 @@ -12379,17 +12379,17 @@ gBattleAnimMove_TarShot:: 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 + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 15, -27, 0, 12, 50 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 - createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0xfff1, 0xffef, 0x0, 0xa, 0x2d + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, -15, -17, 0, 10, 45 playsewithpan SE_M_BUBBLE SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET end gBattleAnimMove_MagicPowder:: - loopsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER 0xE 0x8 + loopsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER 14 8 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 @@ -12416,11 +12416,11 @@ gBattleAnimMove_MagicPowder:: gBattleAnimMove_DragonDarts:: playsewithpan SE_FALL, SOUND_PAN_ATTACKER - createdragondartsprite ANIM_TARGET, 2, 0x0, 0x0, 0x19 + createdragondartsprite ANIM_TARGET, 2, 0, 0, 25 delay 25 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 16, 1 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 waitforvisualfinish end @@ -12451,9 +12451,9 @@ gBattleAnimMove_BoltBeak:: call BoltBeakSparks waitforvisualfinish blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 22) - createsprite gHorizontalLungeSpriteTemplate, 0x2, 0x2, 0x4, 0x4 + createsprite gHorizontalLungeSpriteTemplate, 2, 2, 4, 4 delay 4 - createsprite gHornHitSpriteTemplate, 0x84, 0x3, 0x8, 0x8, 0xa + createsprite gHornHitSpriteTemplate, 132, 3, 8, 8, 10 waitforvisualfinish create_flashing_hitsplat_sprite 131, 4, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET @@ -12465,32 +12465,32 @@ gBattleAnimMove_BoltBeak:: end BoltBeakSparks: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gBoltBeakBlueSparkTemplate, 0x0, 0x7, 0x50, 0x18, 0x16, 0xc, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gBoltBeakBlueSparkTemplate, 0, 7, 80, 24, 22, 12, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 22) delay 10 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gBoltBeakBlueSparkTemplate, 0x0, 0x7, 0x64, 0x18, 0x3c, 0xa, 0x0, 0x1, 0x0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gBoltBeakBlueSparkTemplate, 0, 7, 100, 24, 60, 10, 0, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 7, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gBoltBeakBlueSparkTemplate, 0x0, 0x7, 0xee, 0x18, 0xa5, 0xa, 0x0, 0x1, 0x1 + createsprite gBoltBeakBlueSparkTemplate, 0, 7, 238, 24, 165, 10, 0, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(1, 23, 29) delay 20 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=4, target_blend_y=4, color=RGB(1, 23, 29) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, 0x4, 0x8, 0x0, 0x0, 0x20, 0xc, 0x0, 0x14, 0x0, 0x0 - createsprite gBoltBeakBlueFlashingSparkTemplate, 0x4, 0x8, 0x0, 0x0, 0x20, 0xc, 0x40, 0x14, 0x1, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, 0x4, 0x8, 0x0, 0x0, 0x20, 0xc, 0x80, 0x14, 0x0, 0x0 - createsprite gBoltBeakBlueFlashingSparkTemplate, 0x4, 0x8, 0x0, 0x0, 0x20, 0xc, 0x0, 0x14, 0x2, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, 0x4, 0x8, 0x0, 0x0, 0x10, 0xc, 0x20, 0x14, 0x0, 0x0 - createsprite gBoltBeakBlueFlashingSparkTemplate, 0x4, 0x8, 0x0, 0x0, 0x10, 0xc, 0x60, 0x14, 0x1, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, 0x4, 0x8, 0x0, 0x0, 0x10, 0xc, 0xa0, 0x14, 0x0, 0x0 - createsprite gBoltBeakBlueFlashingSparkTemplate, 0x4, 0x8, 0x0, 0x0, 0x10, 0xc, 0xe0, 0x14, 0x2, 0x0 + createsprite gSparkElectricityFlashingSpriteTemplate, 4, 8, 0, 0, 32, 12, 0, 20, 0, 0 + createsprite gBoltBeakBlueFlashingSparkTemplate, 4, 8, 0, 0, 32, 12, 64, 20, 1, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, 4, 8, 0, 0, 32, 12, 128, 20, 0, 0 + createsprite gBoltBeakBlueFlashingSparkTemplate, 4, 8, 0, 0, 32, 12, 0, 20, 2, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, 4, 8, 0, 0, 16, 12, 32, 20, 0, 0 + createsprite gBoltBeakBlueFlashingSparkTemplate, 4, 8, 0, 0, 16, 12, 96, 20, 1, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, 4, 8, 0, 0, 16, 12, 160, 20, 0, 0 + createsprite gBoltBeakBlueFlashingSparkTemplate, 4, 8, 0, 0, 16, 12, 224, 20, 2, 0 delay 4 return @@ -12503,47 +12503,47 @@ gBattleAnimMove_FishiousRend:: waitforvisualfinish end FishousRendBubbles: - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xF, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xF, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 15, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 15, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xA, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xA, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 10, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 10, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x5, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x5, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 5, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 5, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfffb, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfffb, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -5, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -5, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff6, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff6, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -10, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -10, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff1, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff1, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -15, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -15, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xffec, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xffec, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -20, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -20, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff1, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff1, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -15, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -15, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff6, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfff6, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -10, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -10, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfffb, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xfffb, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -5, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, -5, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x5, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0x5, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 5, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 5, 0 delay 2 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xA, 0x0 - createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0xA, 0x0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 10, 0 + createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 10, 0 return gBattleAnimMove_CourtChange:: @@ -12555,8 +12555,8 @@ gBattleAnimMove_ClangorousSoul:: call ClangorousSoulStarBuffEffect call ClangorousSoulStarBuffEffect waitforvisualfinish - createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 0xfff0, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_RIGHT_FIST, 1 - createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 0x10, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_LEFT_FIST, 1 + createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_RIGHT_FIST, 1 + createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_LEFT_FIST, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish unloadspritegfx ANIM_TAG_HORSESHOE_SIDE_FIST @@ -12565,35 +12565,35 @@ gBattleAnimMove_ClangorousSoul:: unloadspritepal ANIM_TAG_SPARKLE_2 @stars waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createsprite gClangorousSoulRedRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gClangorousSoulRedRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitforvisualfinish end ClangorousSoulStarBuffEffect: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER - createsprite gClangorousSoulBlueBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gClangorousSoulBlueBuffTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gClangorousSoulPurpleBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x0, 0x0, 0x20, 0x3c + createsprite gClangorousSoulPurpleBuffTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, 0, 0, 32, 60 delay 4 - createsprite gClangorousSoulWhiteBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gClangorousSoulWhiteBuffTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, 0x0, 0x0, 0x20, 0x3c + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, 0, 0, 32, 60 return gBattleAnimMove_BodyPress:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_ROUND_SHADOW, 0, 13, 13, RGB(29, 18, 7) @Orange playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER - createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 0x6, 0x1, 0x0 + createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 0 delay 7 - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 @Fly up + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 @Fly up waitforvisualfinish delay 47 createsprite gBounceBallLandSpriteTemplate, ANIM_TARGET, 3 @Bounce down delay 2 playsewithpan SE_M_MINIMIZE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 waitforvisualfinish end @@ -12606,27 +12606,27 @@ gBattleAnimMove_DrumBeating:: splitbgprio ANIM_TARGET setalpha 12, 8 call BellyDrumRight - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER delay 15 call BellyDrumLeft - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x1, 0x1, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 1, 0 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER delay 15 call BellyDrumRight - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x3, 0x3, 0x80 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 3, 3, 128 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER delay 7 call BellyDrumLeft - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x2, 0x0, 0x80 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 128 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER delay 7 call BellyDrumRight - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1, 0x1, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 1, 0 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER delay 7 call BellyDrumLeft - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x3, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 3, 0 playsewithpan SE_M_BELLY_DRUM, SOUND_PAN_ATTACKER 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 @@ -12731,8 +12731,8 @@ gBattleAnimMove_BehemothBlade:: unloadspritegfx ANIM_TAG_AIR_WAVE_2 @black color unloadspritepal ANIM_TAG_AIR_WAVE_2 @black color playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSacredSwordBladesTemplate, ANIM_TARGET, 1, 0, 10, 0, 0xFF00, 10 - createsprite gSacredSwordCutTemplate, ANIM_ATTACKER, 2, 40, 0xffe0, 0 + createsprite gSacredSwordBladesTemplate, ANIM_TARGET, 1, 0, 10, 0, -256, 10 + createsprite gSacredSwordCutTemplate, ANIM_ATTACKER, 2, 40, -32, 0 delay 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 waitforvisualfinish @@ -12897,25 +12897,25 @@ gBattleAnimMove_AuraWheel:: setalpha 12, 8 monbg ANIM_DEF_PARTNER splitbgprio_foes ANIM_TARGET - createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc + createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x14 + createsprite gAuraWheelRedElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 2 - createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x18 + createsprite gAuraWheelBlueElectricityTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 24, 0, 0, 6 @@ -12924,12 +12924,12 @@ gBattleAnimMove_AuraWheel:: createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 23, 1 create_basic_hitsplat_sprite ANIM_ATTACKER, 4, x=-10, y=0, relative_to=ANIM_TARGET, animation=0 createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SPARK_2, 2, 12, 0, RGB(1, 23, 29) @Revert blue Electricity - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x80, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0xc0, 0x28, 0x2, 0x8003 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 128, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 192, 40, 2, -32765 delay 7 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x9 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 9 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -12941,21 +12941,21 @@ gBattleAnimMove_BreakingSwipe:: monbg ANIM_TARGET setalpha 12, 8 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=-32, y=-16, relative_to=ANIM_TARGET, animation=1 - createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, 0x5, 0x0, 0x5, 0x0 + createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, 5, 0, 5, 0 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 21, 1 createvisualtask AnimTask_ShakeMon, 2, ANIM_DEF_PARTNER, 0, 3, 21, 1 delay 4 create_random_pos_hitsplat_sprite ANIM_TARGET, 3, relative_to=ANIM_TARGET, animation=1 - createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, 0xfff1, 0xfff6, 0x5, 0x0 + createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, -15, -10, 5, 0 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 create_random_pos_hitsplat_sprite ANIM_TARGET, 3, relative_to=ANIM_TARGET, animation=1 - createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, 0xfff8, 0x8, 0x5, 0x2 + createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, -8, 8, 5, 2 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET delay 4 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=32, y=20, relative_to=ANIM_TARGET, animation=1 - createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, 0xffec, 0xf, 0x5, 0x1 + createsprite gBreakingSwipeCenteredElectricity, ANIM_TARGET, 2, -20, 15, 5, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET waitsound waitforvisualfinish @@ -12965,7 +12965,7 @@ gBattleAnimMove_BreakingSwipe:: gBattleAnimMove_BranchPoke:: playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - createsprite gBranchPokeBranchTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x25 + createsprite gBranchPokeBranchTemplate, ANIM_TARGET, 2, 0, 0, 37 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 5, 0, 6, 1 create_flashing_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 @@ -12989,42 +12989,42 @@ OverdriveRings: playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET simple_palette_blend selector=(F_PAL_BG | F_PAL_ATK_SIDE | F_PAL_DEF_SIDE), delay=3, initial_blend_y=8, target_blend_y=0, color=RGB_YELLOW createvisualtask AnimTask_ScaleMonAndRestore, 5, -5, -5, 5, ANIM_ATTACKER, 0 - createsprite gHyperVoiceRingSpriteTemplate, ANIM_ATTACKER, 0, 0x2d, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1 + 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 shake_battle_platforms priority=2, x_offset=1, y_offset=0, shakes=6, delay=1 - createvisualtask SoundTask_WaitForCry, 0x5 + createvisualtask SoundTask_WaitForCry, 5 return gBattleAnimMove_AppleAcid:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_POISON_BUBBLE, 0, 12, 12, RGB(29, 16, 1) @Orange playsewithpan SE_M_METRONOME, SOUND_PAN_ATTACKER - createsprite gAppleAcidFloatingAppleTemplate, ANIM_ATTACKER, 12, 0x0 + createsprite gAppleAcidFloatingAppleTemplate, ANIM_ATTACKER, 12, 0 delay 48 monbg ANIM_TARGET - createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x28, 0x1, 0x0, 0x0 + createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 20, 0, 40, 1, 0, 0 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 5 - createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x28, 0x1, 0x18, 0x0 + createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 20, 0, 40, 1, 24, 0 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 5 - createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 0x14, 0x0, 0x28, 0x1, 0xffe8, 0x0 + createsprite gAppleAcidLaunchTemplate, ANIM_TARGET, 2, 20, 0, 40, 1, -24, 0 playsewithpan SE_M_BUBBLE3, SOUND_PAN_ATTACKER delay 15 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 10, 1 - createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0x0, 0xffea, 0x0, 0xf, 0x37 + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0, -22, 0, 15, 55 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 - 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, 0xf, 0x32 + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 15, -27, 0, 15, 50 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 - createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0xfff1, 0xffef, 0x0, 0xa, 0x2d + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, -15, -17, 0, 10, 45 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET delay 10 - createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 0x1b, 0xffea, 0x0, 0xf, 0x32 + createsprite gAppleAcidDripTemplate, ANIM_TARGET, 2, 27, -22, 0, 15, 50 playsewithpan SE_M_BUBBLE, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_TARGET @@ -13033,48 +13033,48 @@ gBattleAnimMove_AppleAcid:: gBattleAnimMove_GravApple:: fadetobg BG_IN_AIR waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xf800, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -2048, 0, -1 waitbgfadein call SmallAppleShower call SmallAppleShower - createsprite gGravAppleLargeApple, ANIM_TARGET, 2, 0x0, 0x3c, 4, ANIM_TARGET + createsprite gGravAppleLargeApple, ANIM_TARGET, 2, 0, 60, 4, ANIM_TARGET delay 7 playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 21, 0, 4 delay 48 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 waitforvisualfinish call UnsetPsychicBg end SmallAppleShower: - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 35, 0x3c, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 35, 60, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -30, 0x44, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -30, 68, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 27, 0x37, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 27, 55, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -20, 0x32, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -20, 50, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 33, 0x3a, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 33, 58, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -12, 0x3a, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -12, 58, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 19, 0x3c, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 19, 60, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -38, 0x3a, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -38, 58, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 5, 0x3c, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, 5, 60, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 - createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -23, 0x28, 4, ANIM_TARGET + createsprite gGravAppleSmallApple, ANIM_TARGET, 2, -23, 40, 4, ANIM_TARGET playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 2 return @@ -13094,10 +13094,10 @@ gBattleAnimMove_SpiritBreak:: waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 5, 5, 1 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gSpriteTemplate_SpiritBreakExplode, ANIM_TARGET, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gSpriteTemplate_SpiritBreakExplode, ANIM_TARGET, 3, 0, 0, 1, 1 waitforvisualfinish delay 5 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 clearmonbg ANIM_DEF_PARTNER waitforvisualfinish end @@ -13106,7 +13106,7 @@ gBattleAnimMove_StrangeSteam:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_FINGER, 0, 10, 10, RGB(24, 28, 17) @Green monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET - loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 0x4, 0xA + loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 4, 10 call StrangeSteamCloud call StrangeSteamCloud call StrangeSteamCloud @@ -13123,12 +13123,12 @@ gBattleAnimMove_StrangeSteam:: clearmonbg ANIM_DEF_PARTNER end StrangeSteamCloud: - createsprite gStrangeSteamPinkCloudTemplate, ANIM_TARGET, 2, 0xf, 0xf, 0x14, 0, 0 - createsprite gStrangeSteamGreenCloudTemplate, ANIM_TARGET, 2, 0xf, 0xf, 0x14, 0xa, 0x5 - createsprite gStrangeSteamPinkCloudTemplate, ANIM_TARGET, 2, 0xf, 0xf, 0x14, 0xfff6, 0xfffb + createsprite gStrangeSteamPinkCloudTemplate, ANIM_TARGET, 2, 15, 15, 20, 0, 0 + createsprite gStrangeSteamGreenCloudTemplate, ANIM_TARGET, 2, 15, 15, 20, 10, 5 + createsprite gStrangeSteamPinkCloudTemplate, ANIM_TARGET, 2, 15, 15, 20, -10, -5 delay 1 - createsprite gStrangeSteamGreenCloudTemplate, ANIM_TARGET, 2, 0xf, 0xf, 0x14, 0x14, 0xa - createsprite gStrangeSteamBlueCloudTemplate, ANIM_TARGET, 2, 0xf, 0xf, 0x14, 0xffec, 0xfff6 + createsprite gStrangeSteamGreenCloudTemplate, ANIM_TARGET, 2, 15, 15, 20, 20, 10 + createsprite gStrangeSteamBlueCloudTemplate, ANIM_TARGET, 2, 15, 15, 20, -20, -10 delay 2 return @@ -13165,10 +13165,10 @@ gBattleAnimMove_Obstruct:: delay 16 monbg ANIM_ATK_PARTNER splitbgprio ANIM_ATTACKER - waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 0x10 - createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 0x18, 0x0, 0x5a @;Protect + waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16 + createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90 @;Protect waitforvisualfinish - createsprite gObstructCrossTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x24 + createsprite gObstructCrossTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 36 playsewithpan SE_M_LEER, SOUND_PAN_TARGET waitforvisualfinish clearmonbg ANIM_ATK_PARTNER @@ -13179,28 +13179,28 @@ gBattleAnimMove_FalseSurrender:: fadetobg BG_DARK waitbgfadein delay 0 - playsewithpan SE_M_FAINT_ATTACK, 0xc0 + playsewithpan SE_M_FAINT_ATTACK, 192 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 18, 6, 1, 3 attacker_fade_to_invisible priority=2, step_delay=1 waitforvisualfinish clearmonbg ANIM_ATTACKER invisible ANIM_ATTACKER delay 1 - createvisualtask AnimTask_SetAttackerInvisibleWaitForSignal, 0x2, + createvisualtask AnimTask_SetAttackerInvisibleWaitForSignal, 2, monbg ANIM_TARGET setalpha 12, 8 delay 1 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET complex_palette_blend selector=F_PAL_BG | F_PAL_BATTLERS, delay=3, num_blends=1, color1=RGB_WHITE, blend_y1=10, color2=RGB_BLACK, blend_y2=10 - createsprite gSpriteTemplate_LargeCrossImpact, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x14 + createsprite gSpriteTemplate_LargeCrossImpact, ANIM_ATTACKER, 3, 0, 0, 1, 20 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 7, 0, 9, 1 waitforvisualfinish clearmonbg ANIM_TARGET blendoff delay 1 - setarg 0x7, 0x1000 + setarg 7, 4096 delay 1 - createvisualtask AnimTask_InitAttackerFadeFromInvisible, 0x2, + createvisualtask AnimTask_InitAttackerFadeFromInvisible, 2, monbg ANIM_ATTACKER attacker_fade_from_invisible step_delay=1 waitforvisualfinish @@ -13217,7 +13217,7 @@ gBattleAnimMove_MeteorAssault:: playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER waitforvisualfinish invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 15 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ATTACKER), 1, 16, 16, RGB_WHITE @Screen flash white @@ -13231,19 +13231,19 @@ gBattleAnimMove_MeteorAssault:: end BasicExplosion: playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 delay 3 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, 1, 1 delay 3 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, 1, 1 delay 3 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, 1, 1 delay 3 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, 0x1, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, 1, 1 return gBattleAnimMove_Eternabeam:: @@ -13253,9 +13253,9 @@ gBattleAnimMove_Eternabeam:: fadetobgfromset BG_SPACIAL_REND_OPPONENT BG_SPACIAL_REND_PLAYER BG_SPACIAL_REND_OPPONENT playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER invisible ANIM_ATTACKER - createsprite gDevastatingDrakeDrakeUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0x04E0, 36, 21, 1, ANIM_ATTACKER + createsprite gDevastatingDrakeDrakeUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1248, 36, 21, 1, ANIM_ATTACKER waitforvisualfinish - createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_SOLAR_BEAM, 0xf0, 0xffc0, SOUND_PAN_TARGET, 0x1, 0xf, 0x0, 0x5 + createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_SOLAR_BEAM, 240, -64, SOUND_PAN_TARGET, 1, 15, 0, 5 call OblivionWingBeam call OblivionWingBeam createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 50, 1 @@ -13396,7 +13396,7 @@ gBattleAnimMove_ExpandingForce:: ExpandingForceSingleTarget: createsprite gSpriteTemplate_SpiritBreakChargeBall, ANIM_TARGET, 1, ANIM_TARGET waitforvisualfinish - createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 0x2, 0x0, 0x1, 0x18, 0x1, 0x0 + createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, 0, 1, 24, 1, 0 call MaxKnuckleExplosionGeyser waitforvisualfinish call UnsetPsychicBg @@ -13416,77 +13416,77 @@ ExpandingForceBothTargets: end ExpandingForceExplosionGeyser: - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0003, 0x0005, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 3, 5, ANIM_TARGET playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfff5, 0xfff1, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -11, -15, ANIM_TARGET playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0008, 0xfffb, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 8, -5, ANIM_TARGET playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfffa, 0x0012, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -6, 18, ANIM_TARGET playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0000, 0x0005, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0, 5, ANIM_TARGET playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0003, 0xfff5, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 3, -11, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfff5, 0xffe1, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -11, -31, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0008, 0xffeb, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 8, -21, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfffa, 0x0002, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -6, 2, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0000, 0xfff5, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0, -11, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0003, 0xffe5, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 3, -27, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfff5, 0xffd1, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -11, -47, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0008, 0xffdb, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 8, -37, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0xfffa, 0xfff2, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, -6, -14, ANIM_TARGET delay 0 - createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0x0000, 0xffe5, ANIM_TARGET + createsprite gSpriteTemplate_ExpandingForceExplode, ANIM_TARGET, 4, 0, -27, ANIM_TARGET return MaxKnuckleExplosionGeyser: - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0x0005, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, 5, ANIM_TARGET, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xfff1, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -15, ANIM_TARGET, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xfffb, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -5, ANIM_TARGET, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0012, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 18, ANIM_TARGET, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0x0005, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, 5, ANIM_TARGET, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xfff5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -11, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffe1, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -31, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffeb, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -21, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0002, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 2, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xfff5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -11, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xffe5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -27, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffd1, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -47, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffdb, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -37, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0xfff2, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, -14, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xffe5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -27, ANIM_TARGET, 0 return @@ -13494,7 +13494,7 @@ gBattleAnimMove_SteelRoller:: playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET createsprite gSpriteTemplate_SteelRoller, ANIM_TARGET, 3, 0, -40, 2, 50, 3 delay 1 - createvisualtask AnimTask_SquishTarget, 0x2, + createvisualtask AnimTask_SquishTarget, 2, delay 14 call SteelRollerRocks delay 33 @@ -13503,17 +13503,17 @@ gBattleAnimMove_SteelRoller:: end SteelRollerRocks: playsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfff4, 0x1b, 0x2, 0x3 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0x8, 0x1c, 0x3, 0x4 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfffc, 0x1e, 0x2, 0x3 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xc, 0x19, 0x4, 0x4 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -12, 27, 2, 3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 8, 28, 3, 4 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -4, 30, 2, 3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 12, 25, 4, 4 return gBattleAnimMove_ScaleShot:: - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x6 + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 6 delay 3 playsewithpan SE_M_BONEMERANG, SOUND_PAN_ATTACKER - createsprite gSpriteTemplate_ScaleShotScale, ANIM_TARGET, 2, 0x10, 0x0, 0x0, 0x0, 0x14, 0x101 + createsprite gSpriteTemplate_ScaleShotScale, ANIM_TARGET, 2, 16, 0, 0, 0, 20, 257 waitforvisualfinish playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 @@ -13529,7 +13529,7 @@ gBattleAnimMove_MeteorBeam:: choosetwoturnanim MeteorBeamCharge MeteorBeamBlast MeteorBeamCharge: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xFC00, FALSE, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -1024, FALSE, -1 waitbgfadein monbg ANIM_ATK_PARTNER playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER @@ -13542,10 +13542,10 @@ MeteorBeamCharge: end MeteorBeamBlast: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf700, 0x0, TRUE, 0xffff @;Scroll right/left + createvisualtask AnimTask_StartSlidingBg, 5, -2304, 0, TRUE, -1 @;Scroll right/left waitbgfadein monbg ANIM_TARGET - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER SOUND_PAN_TARGET 0x2 0x0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER SOUND_PAN_TARGET 2 0 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 87, 1 call MeteorBeamRockLaunch call MeteorBeamRockLaunch @@ -13575,16 +13575,16 @@ MeteorBeamBlast: end MeteorBeamRockLaunch: - createsprite gSpriteTemplate_MeteorBeamRock, ANIM_TARGET, 2, 0, 0, 0x10 + createsprite gSpriteTemplate_MeteorBeamRock, ANIM_TARGET, 2, 0, 0, 16 delay 2 - createsprite gSpriteTemplate_MeteorBeamRock, ANIM_TARGET, 2, 0, 0, 0x10 + createsprite gSpriteTemplate_MeteorBeamRock, ANIM_TARGET, 2, 0, 0, 16 delay 2 return gBattleAnimMove_ShellSideArm:: - createvisualtask AnimTask_ShellSideArm, 0x5 - jumpargeq 0x0, TRUE, gBattleAnimMove_ShellSideArmPhysical - jumpargeq 0x0, FALSE, gBattleAnimMove_ShellSideArmSpecial + createvisualtask AnimTask_ShellSideArm, 5 + jumpargeq 0, TRUE, gBattleAnimMove_ShellSideArmPhysical + jumpargeq 0, FALSE, gBattleAnimMove_ShellSideArmSpecial gBattleAnimMove_ShellSideArmPhysical:: @ Modified Body Slam, placeholder createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_IMPACT, 0, 6, 6, RGB_MAGENTA monbg ANIM_DEF_PARTNER @@ -13614,7 +13614,7 @@ gBattleAnimMove_ShellSideArmSpecial:: @ Modified Snipe Shot, placeholder createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_IMPACT_2, 0, 6, 6, RGB_MAGENTA createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_LEER, 0, 6, 6, RGB_MAGENTA playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 0x18, -12 + createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 24, -12 waitforvisualfinish delay 32 playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_TARGET @@ -13648,13 +13648,13 @@ gBattleAnimMove_GrassyGlide:: waitforvisualfinish call GrassPledgeMiddleFountain waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x2 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 2 end gBattleAnimMove_RisingVoltage:: monbg ANIM_ATTACKER setalpha 12, 8 - createvisualtask AnimTask_GetFieldTerrain, 0x5, + createvisualtask AnimTask_GetFieldTerrain, 5, jumpargeq 0, STATUS_FIELD_ELECTRIC_TERRAIN, ANIM_RISING_VOLTAGE_STRONGER ANIM_RISING_VOLTAGE_NORMAL: createvisualtask AnimTask_BlendBattleAnimPal, 2, F_PAL_BG, 1, 0, 4, RGB_BLACK @;To black @@ -13662,9 +13662,9 @@ ANIM_RISING_VOLTAGE_NORMAL: createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 30, 0, 3 @;Amount, Slowness, Slowness, Compaction playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 12 - createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 0, 0x0 + createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 0, 0 waitforvisualfinish - createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 0x2, 0x0, 0x1, 0x34, 0x1, 0x0 + createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, 0, 1, 52, 1, 0 blend_color_cycle selector=F_PAL_TARGET, delay=1, num_blends=4, initial_blend_y=0, target_blend_y=12, color=RGB(29, 28, 1) playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, 16 @@ -13688,7 +13688,7 @@ ANIM_RISING_VOLTAGE_STRONGER: delay 12 createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 2, waitforvisualfinish - createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 0x2, 0x0, 0x1, 0x54, 0x1, 0x0 + createvisualtask AnimTask_ShakeTargetBasedOnMovePowerOrDmg, 2, 0, 1, 84, 1, 0 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 4, 0, 16, RGB(29, 28, 1) playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 16, 16 @@ -13723,11 +13723,11 @@ gBattleAnimMove_TerrainPulse:: monbg ANIM_TARGET setalpha 12, 8 simple_palette_blend selector=F_PAL_BG, delay=1, initial_blend_y=0, target_blend_y=7, color=RGB_BLACK - createvisualtask AnimTask_TerrainPulse, 0x5 - jumpargeq 0x0, TYPE_ELECTRIC, TerrainPulseElectric - jumpargeq 0x0, TYPE_GRASS, TerrainPulseGrass - jumpargeq 0x0, TYPE_FAIRY, TerrainPulseFairy - jumpargeq 0x0, TYPE_PSYCHIC, TerrainPulsePsychic + createvisualtask AnimTask_TerrainPulse, 5 + jumpargeq 0, TYPE_ELECTRIC, TerrainPulseElectric + jumpargeq 0, TYPE_GRASS, TerrainPulseGrass + jumpargeq 0, TYPE_FAIRY, TerrainPulseFairy + jumpargeq 0, TYPE_PSYCHIC, TerrainPulsePsychic TerrainPulseNormal: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_DRAGON_PULSE, 0, 12, 12, RGB_WHITE waitforvisualfinish @@ -13815,21 +13815,21 @@ gBattleAnimMove_SkitterSmack:: delay 1 invisible ANIM_ATTACKER waitsound - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x30 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 48 delay 23 - createvisualtask AnimTask_IsTargetSameSide, 0x2, - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2, + createvisualtask AnimTask_IsTargetSameSide, 2, + createvisualtask AnimTask_SnatchOpposingMonMove, 2, delay 25 visible ANIM_ATTACKER invisible ANIM_ATTACKER delay 5 - createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, -10, -10, 0 call HyperspaceHoleMovement - createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 10, 20, 0 call HyperspaceHoleMovement - createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, -5, 10, 0 call HyperspaceHoleMovement - createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gSkitterSmackImpactTemplate, ANIM_TARGET, 2, 17, -12, 0 call HyperspaceHoleMovement waitforvisualfinish visible ANIM_ATTACKER @@ -13875,24 +13875,24 @@ gBattleAnimMove_BurningJealousy:: end BurningJealousyFireBuffEffect: - createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xffe8, 0x1a, 0x2, 0x18 + createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, -24, 26, 2, 24 delay 3 - createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xe, 0x1c, 0x1, 0x18 + createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 14, 28, 1, 24 delay 3 - createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xfffb, 0xa, 0x2, 0x18 + createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, -5, 10, 2, 24 delay 3 - createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x1c, 0x1a, 0x3, 0x18 + createsprite gSpriteTemplate_BurningJealousyFireBuff, ANIM_ATTACKER, 2, ANIM_ATTACKER, 28, 26, 3, 24 delay 3 return BurningJealousyFlames: - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0xfb00, 0x0, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x0, 0x0500, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x0, 0xfb00, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x0500, 0x0300, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0xfb00, 0x0300, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x0500, 0xfd00, 0x3 - createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0xfb00, 0xfd00, 0x3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, -1280, 0, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, 0, 1280, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, 0, -1280, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, 1280, 768, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, -1280, 768, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, 1280, -768, 3 + createsprite gSpriteTemplate_BurningJealousyEmit, ANIM_ATTACKER, 2, 0, 0, 30, -1280, -768, 3 return @@ -13911,23 +13911,23 @@ gBattleAnimMove_LashOut:: fadetobg BG_DARK waitbgfadein playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET - createsprite gSpriteTemplate_LashOutStrike, ANIM_TARGET, 2, 0xfff0, 0xfff0, FALSE + createsprite gSpriteTemplate_LashOutStrike, ANIM_TARGET, 2, -16, -16, FALSE delay 8 - createsprite gFoulPlayImpactTemplate, ANIM_TARGET, 3, 10, 0x0, ANIM_TARGET, 0x1 + createsprite gFoulPlayImpactTemplate, ANIM_TARGET, 3, 10, 0, ANIM_TARGET, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -12, 10, 0, 3 delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 5 delay 8 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_TARGET - createsprite gSpriteTemplate_LashOutStrike, ANIM_TARGET, 2, 0xfff0, 0xfff0, TRUE + createsprite gSpriteTemplate_LashOutStrike, ANIM_TARGET, 2, -16, -16, TRUE delay 8 - createsprite gFoulPlayImpactTemplate, ANIM_TARGET, 3, -10, 0x0, ANIM_TARGET, 0x1 + createsprite gFoulPlayImpactTemplate, ANIM_TARGET, 3, -10, 0, ANIM_TARGET, 1 playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 12, 10, 0, 3 delay 8 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 5 restorebg clearmonbg ANIM_DEF_PARTNER end @@ -13945,7 +13945,7 @@ gBattleAnimMove_Poltergeist:: simple_palette_blend selector=F_PAL_ATTACKER, delay=0, initial_blend_y=16, target_blend_y=0, color=RGB_BLACK playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER delay 1 - createvisualtask AnimTask_DestinyBondWhiteShadow, 0x5, 0x0, 0x24 + createvisualtask AnimTask_DestinyBondWhiteShadow, 5, 0, 36 delay 48 playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_TARGET createvisualtask AnimTask_PoltergeistItem, 2 @@ -13956,33 +13956,33 @@ gBattleAnimMove_Poltergeist:: complex_palette_blend selector=F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET, delay=5, num_blends=1, color1=0, blend_y1=10, color2=RGB_BLACK, blend_y2=0 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_NightmareClone, 0x2 + createvisualtask AnimTask_NightmareClone, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 40, 1 playsewithpan SE_M_NIGHTMARE, SOUND_PAN_TARGET waitforvisualfinish restorebg waitbgfadein - clearmonbg 0x3 + clearmonbg 3 blendoff end gBattleAnimMove_CorrosiveGas:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_PINK_CLOUD, 0, 14, 14, RGB(15, 15, 6) @;Garbage green monbg ANIM_ATTACKER - loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER, 0x8, 0x3 + loopsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER, 8, 3 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, 122, 3, -14, 18, 46 delay 0 - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x79, 0x3, 0xe, 0xfff2, 0x2e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 121, 3, 14, -14, 46 delay 0 - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x78, 0x3, 0xfff4, 0xfff6, 0x2e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 120, 3, -12, -10, 46 delay 0 - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x77, 0x3, 0xe, 0xe, 0x2e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 119, 3, 14, 14, 46 delay 0 - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x76, 0x3, 0x0, 0x0, 0x2e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 118, 3, 0, 0, 46 delay 0 - createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 0x7b, 0x3, 0x4, 0x4, 0x1e + createsprite gSpriteTemplate_CorrosiveGasSmoke, ANIM_ATTACKER, 123, 3, 4, 4, 30 waitforvisualfinish playsewithpan SE_M_TOXIC, SOUND_PAN_TARGET blend_color_cycle selector=(F_PAL_BG | F_PAL_TARGET | F_PAL_ATK_PARTNER | F_PAL_DEF_PARTNER), delay=1, num_blends=2, initial_blend_y=0, target_blend_y=14, color=RGB(15, 15, 6)@;Garbage green @@ -14007,12 +14007,12 @@ gBattleAnimMove_FlipTurn:: waitforvisualfinish invisible ANIM_ATTACKER playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gSpriteTemplate_FlipTurnThere, ANIM_TARGET, 2, 0x0, 0x0, 0x15 + createsprite gSpriteTemplate_FlipTurnThere, ANIM_TARGET, 2, 0, 0, 21 waitforvisualfinish playsewithpan SE_M_TAIL_WHIP, SOUND_PAN_TARGET - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1, 0x2 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 - createsprite gSpriteTemplate_FlipTurnBack, ANIM_ATTACKER, 3, 0x0, 0xFFF1, 0xFFF0, 0x24 + createsprite gSpriteTemplate_FlipTurnBack, ANIM_ATTACKER, 3, 0, -15, -16, 36 waitforvisualfinish visible ANIM_ATTACKER clearmonbg ANIM_TARGET @@ -14023,39 +14023,39 @@ gBattleAnimMove_FlipTurn:: gBattleAnimMove_TripleAxel:: monbg ANIM_DEF_PARTNER setalpha 12, 8 - playsewithpan SE_M_VITAL_THROW2, 0x3f + playsewithpan SE_M_VITAL_THROW2, 63 jumpifmoveturn 0, TripleAxelTurn0 jumpifmoveturn 1, TripleAxelTurn1 goto TripleAxelTurn2 TripleAxelTurn0: - createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0xfff0, 0xfff8, 0x14, 0x1, 0x2 + createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, -16, -8, 20, 1, 2 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=-16, y=-16, relative_to=ANIM_TARGET, animation=2 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0x1a0, 0xffda + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, -16, -8, -256, -40 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, -16, -8, 416, -38 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 4, 1 goto TripleAxelEnd TripleAxelTurn1: - createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0x8, 0x8, 0x14, 0x1, 0x2 + createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 8, 8, 20, 1, 2 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=8, y=0, relative_to=ANIM_TARGET, animation=2 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x8, 0x8, 0xa0, 0xffe0 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x8, 0x8, 0xff00, 0xffd8 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x8, 0x8, 0x1a0, 0xffda - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x8, 0x8, 0xfe80, 0xffe1 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 8, 8, 160, -32 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 8, 8, -256, -40 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 8, 8, 416, -38 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 8, 8, -384, -31 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 4, 0, 6, 1 goto TripleAxelEnd TripleAxelTurn2: - createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x14, 0x1, 0x2 + createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 20, 1, 2 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=-8, relative_to=ANIM_TARGET, animation=1 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0xa0, 0xffe0 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0xff00, 0xffd8 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0x80, 0xfff0 - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0x1a0, 0xffda - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0xff80, 0xffea - createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0x0, 0x0, 0xfe80, 0xffe1 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, 160, -32 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, -256, -40 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, 128, -16 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, 416, -38 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, -128, -22 + createsprite gTripleAxelIceCrystalSpriteTemplate, ANIM_TARGET, 1, 0, 0, -384, -31 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 6, 0, 8, 1 TripleAxelEnd: delay 4 - playsewithpan SE_M_ICY_WIND, 0x3f + playsewithpan SE_M_ICY_WIND, 63 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -14103,16 +14103,16 @@ DualWingbeatRightSide: blendoff end DualWingbeatFeatherScatterLeft: - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0xa0, 0xffe0 - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0x1a0, 0xffda - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0xfff0, 0xfff8, 0xfe80, 0xffe1 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, -16, -8, 160, -32 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, -16, -8, -256, -40 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, -16, -8, 416, -38 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, -16, -8, -384, -31 return DualWingbeatFeatherScatterRight: - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, 0xfff8, 0xa0, 0xffe0 - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, 0xfff8, 0xff00, 0xffd8 - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, 0xfff8, 0x1a0, 0xffda - createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, 0xfff8, 0xfe80, 0xffe1 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, -8, 160, -32 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, -8, -256, -40 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, -8, 416, -38 + createsprite gDualWingbeatFeatherSpriteTemplate, ANIM_TARGET, 1, 0, -8, -384, -31 return gBattleAnimMove_ScorchingSands:: @@ -14122,7 +14122,7 @@ gBattleAnimMove_ScorchingSands:: playsewithpan SE_M_SAND_ATTACK, SOUND_PAN_ATTACKER createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -10, 0, 0, 3 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x2 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 2 call SandAttackDirt call SandAttackDirt call SandAttackDirt @@ -14142,8 +14142,8 @@ gBattleAnimMove_JungleHealing:: waitbgfadeout call CreateIngrainRoots call CreateIngrainOrbs - playsewithpan SE_M_STAT_INCREASE, 0xc0 - createvisualtask AnimTask_StatusClearedEffect, 0x2, 0x1 + playsewithpan SE_M_STAT_INCREASE, 192 + createvisualtask AnimTask_StatusClearedEffect, 2, 1 waitforvisualfinish restorebg waitbgfadein @@ -14156,7 +14156,7 @@ gBattleAnimMove_SilkTrap:: waitforvisualfinish createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_PROTECT, 0, 10, 10, RGB_LIME_GREEN monbg ANIM_ATK_PARTNER - waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 0x10 + waitplaysewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 16 createsprite gProtectSpriteTemplate, ANIM_ATTACKER, 2, 24, 0, 90 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER @@ -14196,23 +14196,23 @@ gBattleAnimMove_WickedBlow:: delay 5 createsprite gSpriteTemplate_WickedBlowFist, ANIM_TARGET, 4, ANIM_TARGET, 0, 0, 16, 32 delay 6 - loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 0x4, 0x6 + loopsewithpan SE_M_STRENGTH, SOUND_PAN_TARGET, 4, 6 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 - createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0xfe80, 0xffe1 - createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0xff80, 0xffea - createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0x80, 0xfff0 - createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0xa0, 0xffe0 - createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, 0xfff0, 0xfff8, 0x1a0, 0xffda + createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, -16, -8, -384, -31 + createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, -16, -8, -256, -40 + createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, -16, -8, -128, -22 + createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, -16, -8, 128, -16 + createsprite gSpriteTemplate_WickedBlowBlackStars, ANIM_TARGET, 2, -16, -8, 160, -32 + createsprite gSpriteTemplate_WickedBlowRedStars, ANIM_TARGET, 2, -16, -8, 416, -38 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 4, 10, 1 delay 20 - createvisualtask AnimTask_TwinkleTackleLaunch, 0x2, 50 + createvisualtask AnimTask_TwinkleTackleLaunch, 2, 50 delay 50 playsewithpan SE_M_DETECT, SOUND_PAN_TARGET - createsprite gTwinkleTackleTwinkleSpriteTemplate, ANIM_TARGET, 13, 0x0, 0x0, ANIM_TARGET @detect star + createsprite gTwinkleTackleTwinkleSpriteTemplate, ANIM_TARGET, 13, 0, 0, ANIM_TARGET @detect star waitforvisualfinish blendoff - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 6 restorebg waitbgfadeout visible ANIM_TARGET @@ -14221,15 +14221,15 @@ gBattleAnimMove_WickedBlow:: end WickedBlowBuffEffect: - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gPowerTripFocusEnergyTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return @@ -14244,10 +14244,10 @@ SURGING_STRIKES_0: delay 5 playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_TARGET createsprite gSpriteTemplate_SurgingStrikesImpact, ANIM_TARGET, 2, 40, 20, 0, 0, 10, 20 @Bottom right - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, -5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, -5, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 8, 1 delay 5 - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, 5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, 5, ANIM_TARGET, 1 waitforvisualfinish end @@ -14257,10 +14257,10 @@ SURGING_STRIKES_1: delay 5 playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_TARGET createsprite gSpriteTemplate_SurgingStrikesImpact, ANIM_TARGET, 2, -40, 20, 0, 0, 10, 20 @Bottom left - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, -5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, -5, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 8, 1 delay 5 - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, 5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, 5, ANIM_TARGET, 1 waitforvisualfinish end @@ -14270,10 +14270,10 @@ SURGING_STRIKES_2: delay 5 playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_TARGET createsprite gSpriteTemplate_SurgingStrikesImpact, ANIM_TARGET, 2, 40, -20, 0, 0, 10, -20 @Top Right - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, -5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, -5, -5, ANIM_TARGET, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 0, 4, 8, 1 delay 5 - createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, -5, ANIM_TARGET, 0x1 + createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 1, 5, -5, ANIM_TARGET, 1 waitforvisualfinish end @@ -14281,10 +14281,10 @@ SURGING_STRIKES_2: gBattleAnimMove_ThunderCage:: monbg ANIM_TARGET splitbgprio ANIM_TARGET - loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 0xA, 0x9 - createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, -25, -30, 0x0 - createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, 0, -30, 0x0 - createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, 25, -30, 0x0 + loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 10, 9 + createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, -25, -30, 0 + createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, 0, -30, 0 + createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 100, 25, -30, 0 createsprite gThunderWaveSpriteTemplate, ANIM_TARGET, 2, -16, -16 delay 4 createsprite gThunderWaveSpriteTemplate, ANIM_TARGET, 2, -16, 0 @@ -14356,24 +14356,24 @@ gBattleAnimMove_DragonEnergy:: call DragonEnergyShot call DragonEnergyShot waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 10 clearmonbg ANIM_TARGET waitforvisualfinish end DragonEnergyShot: - createsprite gSpriteTemplate_DragonEnergyShot, ANIM_TARGET, 2, 0x19 + createsprite gSpriteTemplate_DragonEnergyShot, ANIM_TARGET, 2, 25 delay 1 - createsprite gSpriteTemplate_DragonEnergyShot, ANIM_TARGET, 2, 0x19 + createsprite gSpriteTemplate_DragonEnergyShot, ANIM_TARGET, 2, 25 delay 1 return gBattleAnimMove_FreezingGlare:: call SetPsychicBackground - createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, 0xfff0, 0xfff8 - createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, 0x10, 0xfff8 - createvisualtask AnimTask_GlareEyeDots, 0x5, 0x0 + createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, -16, -8 + createsprite gEyeSparkleSpriteTemplate, ANIM_ATTACKER, 0, 16, -8 + createvisualtask AnimTask_GlareEyeDots, 5, 0 playsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER waitforvisualfinish blend_color_cycle selector=F_PAL_TARGET, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=12, color=RGB(12, 26, 31)@;Ice blue @@ -14386,7 +14386,7 @@ gBattleAnimMove_FreezingGlare:: gBattleAnimMove_FieryWrath:: monbg ANIM_DEF_PARTNER - playsewithpan SE_M_SACRED_FIRE2, 0xc0 + playsewithpan SE_M_SACRED_FIRE2, 192 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 2, 0, 14, RGB_BLACK createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 4, 0, 8, RGB_RED createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 32, 1 @@ -14410,53 +14410,53 @@ gBattleAnimMove_FieryWrath:: end FieryWrathGeyser: - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfffc, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x100D, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4109, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4109, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x4, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x4, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfff0, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -16, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfffc, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x100D, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4109, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4109, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x4, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x4, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfff0, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -16, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfffc, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x100D, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4109, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4109, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x4, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x4, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfff0, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -16, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfffc, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x100D, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4109, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4109, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x4, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0x4, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 4, 16 delay 0 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 - createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, 0xfff0, 0x10 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 + createsprite gSpriteTemplate_FieryWrathGeyser, ANIM_TARGET, 4, ANIM_DEF_PARTNER, -16, 16 delay 0 return @@ -14465,10 +14465,10 @@ gBattleAnimMove_ThunderousKick:: monbg ANIM_TARGET fadetobg BG_MAX_LIGHTNING waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xff00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 setalpha 12, 8 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_TARGET - createsprite gMegaPunchKickSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x32 + createsprite gMegaPunchKickSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 50 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_WHITE createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 2, 0, 22, 1 call ZingZapSparks1 @@ -14487,7 +14487,7 @@ gBattleAnimMove_ThunderousKick:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 16, 0, RGB_WHITE 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 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 clearmonbg ANIM_TARGET blendoff call UnsetPsychicBg @@ -14646,8 +14646,8 @@ gBattleAnimMove_EerieSpell:: waitforvisualfinish monbg ANIM_TARGET splitbgprio_all - loopsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET, 0x14, 0x5 - createvisualtask AnimTask_SpiteTargetShadow 0x0 + loopsewithpan SE_M_PSYBEAM, SOUND_PAN_TARGET, 20, 5 + createvisualtask AnimTask_SpiteTargetShadow 0 call EerieSpellConvergingFlames call EerieSpellConvergingFlames call EerieSpellConvergingFlames @@ -14658,27 +14658,27 @@ gBattleAnimMove_EerieSpell:: end EerieSpellConvergingFlames: - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe0, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 0, -32, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x16, 0xffea, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 22, -22, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x1e, 0x0, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 30, 0, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x14, 0x14, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 20, 20, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x1c, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 0, 28, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0xffed, 0x13, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, -19, 19, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0xffe5, 0x0, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, -27, 0, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0xffee, 0xffee, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, -18, -18, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe7, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 0, -25, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x11, 0xffef, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 17, -17, 16 delay 2 - createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 0x1, 0x0, 0x17, 0x0, 0x10 + createsprite gSpriteTemplate_EerieSpellFlame, ANIM_TARGET, 2, 1, 0, 23, 0, 16 return @@@@@@@@@@@@@@@@@@@@@@@ GEN 9 @@@@@@@@@@@@@@@@@@@@@@@ @@ -14687,14 +14687,14 @@ gBattleAnimMove_DireClaw:: createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 delay 6 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x0 + createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 0 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x0 + createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 0 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 4, 0, 36, 1 delay 2 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x0 + createsprite gSlashSliceSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 0 call PoisonBubblesEffect waitforvisualfinish end @@ -14708,7 +14708,7 @@ gBattleAnimMove_PsyshieldBash:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 0, 11, RGB(15, 29, 31) @;Light blue createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 56, 10 delay 35 - createsprite gSpriteTemplate_PsyshieldBashHit, ANIM_ATTACKER, 4, -10, 0x0, 0x1, 0x0 + createsprite gSpriteTemplate_PsyshieldBashHit, ANIM_ATTACKER, 4, -10, 0, 1, 0 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET delay 1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 0, 0, 4 @@ -14717,9 +14717,9 @@ gBattleAnimMove_PsyshieldBash:: waitforvisualfinish delay 2 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 11, 0, RGB(15, 29, 31) @;Light blue - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5 delay 3 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7 waitforvisualfinish call UnsetPsychicBg clearmonbg ANIM_DEF_PARTNER @@ -14755,14 +14755,14 @@ gBattleAnimMove_StoneAxe:: end StoneAxeRockFragments: - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x14, 0x18, 0xe, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x5, 0x0, 0xffec, 0x18, 0xe, 0x1 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x5, 0x14, 0xffe8, 0xe, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0xfffb, 0x0, 0xffec, 0xffe8, 0xe, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xfffb, 0x1e, 0x12, 0x8, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x1e, 0xffee, 0x8, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0xffe2, 0x12, 0x8, 0x2 - createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0xffe2, 0xffee, 0x8, 0x2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, 0, 20, 24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 5, 0, -20, 24, 14, 1 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, 5, 20, -24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, -5, 0, -20, -24, 14, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, -5, 30, 18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, 0, 30, -18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, 0, -30, 18, 8, 2 + createsprite gRockFragmentSpriteTemplate, ANIM_TARGET, 4, 0, 0, -30, -18, 8, 2 return @@ -14788,17 +14788,17 @@ gBattleAnimMove_SpringtideStorm:: end SpringtideStormHeartSwirl: - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x210, 0x1e, 0xa, 0x32, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 32, 528, 30, 10, 50, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x24, 0x1e0, 0x14, 0xd, 0xffd2, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 36, 480, 20, 13, -46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x240, 0x14, 0x5, 0x2a, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 37, 576, 20, 5, 42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x23, 0x190, 0x19, 0x8, 0xffd6, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 35, 400, 25, 8, -42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x200, 0x19, 0xd, 0x2e, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 32, 512, 25, 13, 46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x1d0, 0x1e, 0xc, 0xffce, ANIM_TARGET + createspriteontargets gSpriteTemplate_SpringtideHeart, ANIM_TARGET, 2, 6, 0, 37, 464, 30, 12, -50, ANIM_TARGET return @@ -14815,11 +14815,11 @@ gBattleAnimMove_MysticalPower:: delay 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 6, 0, 11, RGB(15, 29, 31) @;Light blue - createvisualtask AnimTask_ExtrasensoryDistortion, 0x5, 0x0 + createvisualtask AnimTask_ExtrasensoryDistortion, 5, 0 call MysticalPowerFoeRings - createvisualtask AnimTask_ExtrasensoryDistortion, 0x5, 0x1 + createvisualtask AnimTask_ExtrasensoryDistortion, 5, 1 call MysticalPowerFoeRings - createvisualtask AnimTask_ExtrasensoryDistortion, 0x5, 0x2 + createvisualtask AnimTask_ExtrasensoryDistortion, 5, 2 call MysticalPowerFoeTwoRingsOnly waitforvisualfinish clearmonbg ANIM_TARGET @@ -14830,31 +14830,31 @@ gBattleAnimMove_MysticalPower:: @ TODO port cfru psystrike anim PsystrikeInwardRing: - createsprite gSpriteTemplate_VioletMind, ANIM_ATTACKER, 0x28, 0x0, 0x0, 0x0, 0x0 + createsprite gSpriteTemplate_VioletMind, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER return MysticalPowerFoeRings: playsewithpan SE_M_BIND, SOUND_PAN_TARGET - createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, -20, -10, ANIM_TARGET, 0x0 + createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, -20, -10, ANIM_TARGET, 0 delay MYSTICAL_POWER_RING_PAUSE - createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 0, 10, ANIM_TARGET, 0x0 + createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 0, 10, ANIM_TARGET, 0 delay MYSTICAL_POWER_RING_PAUSE - createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 10, -20, ANIM_TARGET, 0x0 + createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 10, -20, ANIM_TARGET, 0 delay MYSTICAL_POWER_RING_PAUSE return MysticalPowerFoeTwoRingsOnly: playsewithpan SE_M_BIND, SOUND_PAN_TARGET - createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, -20, -10, ANIM_TARGET, 0x0 + createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, -20, -10, ANIM_TARGET, 0 delay MYSTICAL_POWER_RING_PAUSE - createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 0, 10, ANIM_TARGET, 0x0 + createsprite gSpriteTemplate_MysticalPowerRing, ANIM_TARGET, 2, 0, 10, ANIM_TARGET, 0 delay MYSTICAL_POWER_RING_PAUSE return gBattleAnimMove_RagingFury:: - loopsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER, 0x8, 0x3 + loopsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER, 8, 3 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER | F_PAL_TARGET), delay=2, num_blends=5, initial_blend_y=3, target_blend_y=8, color=RGB_RED createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -20, 8, 32, 8, 56, 6 call OutrageFlames @@ -14864,7 +14864,7 @@ gBattleAnimMove_RagingFury:: playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_TARGET call FlameBurstSpread waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish end @@ -14878,7 +14878,7 @@ gBattleAnimMove_WaveCrash:: call RisingWaterHitEffect waitforvisualfinish delay 5 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 11, 0, RGB(10, 19, 28) clearmonbg ANIM_DEF_PARTNER waitforvisualfinish @@ -14892,19 +14892,19 @@ gBattleAnimMove_Chloroblast:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 16, RGB(12, 29, 0) createvisualtask AnimTask_BlendNonAttackerPalettes, 2, 2, 0, 16, RGB_BLACK playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER - createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 0x28, 0, 0, 0, 0 + createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 14 - createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 0x28, 0, 0, 0, 0 + createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 14 - createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 0x28, 0, 0, 0, 0 + createsprite gThinRingShrinkingSpriteTemplate ANIM_ATTACKER, 40, 0, 0, 0, 0 waitforvisualfinish - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA, + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10, fadetobg BG_CHLOROBLAST waitbgfadeout createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 16, 0, RGB_BLACK delay 16 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 74, 1 - createsoundtask SoundTask_LoopSEAdjustPanning, 0xf0, 0xFF00 | SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x1, 0x17, 0x0, 0x5 + createsoundtask SoundTask_LoopSEAdjustPanning, 240, -256 | SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 1, 23, 0, 5 createvisualtask AnimTask_HorizontalShake, 5, ANIM_ATTACKER, 1, 67 call ChloroblastShot call ChloroblastShot @@ -14931,15 +14931,15 @@ gBattleAnimMove_Chloroblast:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 16, 0, RGB(12, 29, 0) restorebg waitbgfadeout - createvisualtask AnimTask_AllBattlersVisible, 0xA, + createvisualtask AnimTask_AllBattlersVisible, 10, clearmonbg ANIM_DEF_PARTNER waitbgfadein createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 0, 0, RGB_BLACK @;From Black end ChloroblastShot: - createsprite gSpriteTemplate_ChloroblastShot, ANIM_TARGET, 2, 0, 0, 0x19 + createsprite gSpriteTemplate_ChloroblastShot, ANIM_TARGET, 2, 0, 0, 25 delay 2 - createsprite gSpriteTemplate_ChloroblastShot, ANIM_TARGET, 2, 0, 0, 0x19 + createsprite gSpriteTemplate_ChloroblastShot, ANIM_TARGET, 2, 0, 0, 25 delay 2 return @@ -14968,7 +14968,7 @@ gBattleAnimMove_MountainGale:: MountainGaleIceRock: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSpriteTemplate_MountainGaleRock, ANIM_ATTACKER, 2, 0x14, 0xfff8, 0xfff8, 0xfff8, 0x14, 0xffe0 + createsprite gSpriteTemplate_MountainGaleRock, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32 return gBattleAnimMove_VictoryDance:: @@ -14987,7 +14987,7 @@ gBattleAnimMove_VictoryDance:: gBattleAnimMove_HeadlongRush:: fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xF000, 0x0, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -4096, 0, 0, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 38, 1 call PulverizingPancakeDiggingRun @@ -15001,75 +15001,75 @@ gBattleAnimMove_HeadlongRush:: call PulverizingPancakeDiggingRun waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 42, 0, 0, 5 - createsprite gSpriteTemplate_HeadlongRushImpact, ANIM_TARGET, 4, 0xfff6, 0x0, 0x1, 0x0 + createsprite gSpriteTemplate_HeadlongRushImpact, ANIM_TARGET, 4, -10, 0, 1, 0 delay 5 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 4, 0, 44, 1 call MaxQuake_DirtGeyser call MaxQuake_DirtGeyser waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 call UnsetPsychicBg waitforvisualfinish end @ from max quake MaxQuake_DirtGeyser: - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0003, 0x0005, 0x1, 0x0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 3, 5, 1, 0 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff1, 0x1, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x100D, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -11, -15, 1, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4109, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0008, 0xfffb, 0x1, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x4, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 8, -5, 1, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfffa, 0x0012, 0x1, 0x0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -6, 18, 1, 0 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0000, 0x0005, 0x1, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0xfffc, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 5, 1, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0003, 0xfff5, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x100D, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 3, -11, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4109, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xffe1, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x4, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -11, -31, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0008, 0xffeb, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0xfff0, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 8, -21, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, -16, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfffa, 0x0002, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0xfffc, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -6, 2, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, -4, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0000, 0xfff5, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0x100D, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0, -11, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 4109, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0003, 0xffe5, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x4, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 3, -27, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xffd1, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0xfff0, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -11, -47, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, -16, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0008, 0xffdb, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfffc, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 8, -37, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, -4, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0xfffa, 0xfff2, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x100D, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, -6, -14, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4109, 16 delay 0 - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0000, 0xffe5, ANIM_TARGET, 0x0 - createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 0x4, 0x10 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 2, 0, -27, ANIM_TARGET, 0 + createsprite gSpriteTemplate_MaxQuakeDirtGeyser, ANIM_TARGET, 4, 0, 4, 16 delay 0 - createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, 0xfff0, 0x10 + createsprite gSpriteTemplate_MaxQuakeRockGeyser, ANIM_TARGET, 4, ANIM_TARGET, -16, 16 return gBattleAnimMove_BarbBarrage:: monbg ANIM_TARGET call BarbBarrageSpikeShoot - loopsewithpan SE_M_DIG, SOUND_PAN_ATTACKER, 0x7, 0x3 + loopsewithpan SE_M_DIG, SOUND_PAN_ATTACKER, 7, 3 createvisualtask AnimTask_FlailMovement, 2, ANIM_ATTACKER delay 20 createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 7, 0, 32, 1 @@ -15078,19 +15078,19 @@ gBattleAnimMove_BarbBarrage:: end BarbBarrageSpikeShoot: delay 3 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0xfb00, 0x0, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, -1280, 0, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x0, 0x0500, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, 0, 1280, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x0, 0xfb00, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, 0, -1280, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x0500, 0x0300, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, 1280, 768, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0xfb00, 0x0300, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, -1280, 768, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0x0500, 0xfd00, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, 1280, -768, 3 delay 0 - createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0x0, 0x0, 0x1e, 0xfb00, 0xfd00, 0x3 + createsprite gSpriteTemplate_BarbBarrage, ANIM_TARGET, 2, 0, 0, 30, -1280, -768, 3 return @@ -15115,23 +15115,23 @@ gBattleAnimMove_EsperWing:: end EsperWingBlade: - createsprite gPsychoCutSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, ESPER_WING_SPEED + createsprite gPsychoCutSpriteTemplate, ANIM_TARGET, 2, 0, 0, ESPER_WING_SPEED delay ESPER_WING_SPEED / 2 - createsprite gPsychoCutSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, ESPER_WING_SPEED + createsprite gPsychoCutSpriteTemplate, ANIM_TARGET, 2, 0, 0, ESPER_WING_SPEED return @ TODO update wing attack anim with this WingAttackFeatherScatter: - createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, 0xfff8, 0xfff8, 0xa0, 0xffe0 - createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, 0xfff8, 0xfff8, 0xff00, 0xffd8 - createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, 0xfff8, 0xfff8, 0x1a0, 0xffda - createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, 0xfff8, 0xfff8, 0xfe80, 0xffe1 + createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, -8, -8, 160, -32 + createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, -8, -8, -256, -40 + createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, -8, -8, 416, -38 + createsprite gSpriteTemplate_WingAttackFeather, ANIM_TARGET, 1, -8, -8, -384, -31 return gBattleAnimMove_BitterMalice:: playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET - createvisualtask AnimTask_ScaryFace, 0x5 @ internally checks side + createvisualtask AnimTask_ScaryFace, 5 @ internally checks side createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 76, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 4, 0, 15, RGB(6, 0, 12) @;Dark Purple createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_PURPLE_RING, 4, 0, 14, RGB(6, 0, 12) @;Dark Purple @@ -15145,28 +15145,28 @@ gBattleAnimMove_BitterMalice:: end BitterMaliceSwirl: - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, 1 delay 2 - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, 1 delay 2 - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, 1 delay 2 - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, 1 delay 2 - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, 1 delay 2 - createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, 0x1 + createsprite gSpriteTemplate_BitterMaliceRing, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, 1 delay 2 return gBattleAnimMove_Shelter:: playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - createvisualtask AnimTask_ShellSmashShrinkAttacker, 0x2 + createvisualtask AnimTask_ShellSmashShrinkAttacker, 2 createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SHELL_LEFT, 1, 0, 14, RGB(26, 26, 26) @ light light, gray createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SHELL_RIGHT, 1, 0, 14, RGB(26, 26, 26) @ light light, gray - createsprite gShellSmashRightShellSpriteTemplate, ANIM_ATTACKER, 2, 0xffd7, 0x0, 0x2, 0x333, 0x0, 10, 30 - createsprite gShellSmashLeftShellSpriteTemplate, ANIM_ATTACKER, 2, 0x20, 0x0, 0x6, 0xfccd, 0x0, 10, 30 - createvisualtask AnimTask_FadeOutParticles, 0x2, 0 + createsprite gShellSmashRightShellSpriteTemplate, ANIM_ATTACKER, 2, -41, 0, 2, 819, 0, 10, 30 + createsprite gShellSmashLeftShellSpriteTemplate, ANIM_ATTACKER, 2, 32, 0, 6, -819, 0, 10, 30 + createvisualtask AnimTask_FadeOutParticles, 2, 0 waitforvisualfinish blendoff end @@ -15176,7 +15176,7 @@ gBattleAnimMove_TripleArrows:: monbg ANIM_DEF_PARTNER splitbgprio ANIM_TARGET playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSpriteTemplate_TripleArrowKick, ANIM_TARGET, 2, -30, -20, 0x10, -20 + createsprite gSpriteTemplate_TripleArrowKick, ANIM_TARGET, 2, -30, -20, 16, -20 waitforvisualfinish playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 6, 6, 1 @@ -15189,8 +15189,8 @@ gBattleAnimMove_TripleArrows:: delay 3 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 10, 1 playsewithpan SE_M_RAZOR_WIND2, SOUND_PAN_ATTACKER - createvisualtask AnimTask_IsAttackerPlayerSide, 0x2, - jumpargeq 0x7, FALSE, TripleArrowsOnOpponent + createvisualtask AnimTask_IsAttackerPlayerSide, 2, + jumpargeq 7, FALSE, TripleArrowsOnOpponent createsprite gSpiritShackleArrowTemplate, ANIM_TARGET, 2, 0, -60, 0, 0, TRIPLE_ARROW_FLY_TIME TripleArrowsEnd: delay 3 @@ -15207,7 +15207,7 @@ gBattleAnimMove_InfernalParade:: monbg ANIM_TARGET splitbgprio_foes ANIM_TARGET fadetobg BG_GHOST - playsewithpan SE_M_PSYBEAM, 0xc0 + playsewithpan SE_M_PSYBEAM, 192 waitbgfadein createsprite gSpriteTemplate_InfernalParadeFlame, ANIM_TARGET, 2, -30, 10, 20 @;Bottom left delay 3 @@ -15221,12 +15221,12 @@ gBattleAnimMove_InfernalParade:: call InfernalFlames call InfernalFlames playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x0 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x2a - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x54 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x7e - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0xa8 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0xd2 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 42 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 84 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 126 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 168 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 210 waitforvisualfinish delay 12 restorebg @@ -15252,7 +15252,7 @@ gBattleAnimMove_CeaselessEdge:: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 16, 16, RGB_RED @;Fully to to, Red createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_ATTACKER | F_PAL_TARGET), 0, 16, 16, RGB_BLACK @;Fully to to, Black - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xa, + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10, delay 16 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 3, 0, 48, 1 call CeaselessEdgeSlashes @@ -15260,9 +15260,9 @@ gBattleAnimMove_CeaselessEdge:: call CeaselessEdgeSlashes waitforvisualfinish delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA, + createvisualtask AnimTask_AllBattlersVisible, 10, createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 1, 16, 0, RGB_WHITE @;From White waitforvisualfinish end @@ -15305,24 +15305,24 @@ gBattleAnimMove_BleakwindStorm:: waitforvisualfinish end BleakwindStormIceSwirl: - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x210, 0x1e, 0xa, 0x32, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 32, 528, 30, 10, 50, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x24, 0x1e0, 0x14, 0xd, 0xffd2, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 36, 480, 20, 13, -46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x240, 0x14, 0x5, 0x2a, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 37, 576, 20, 5, 42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x23, 0x190, 0x19, 0x8, 0xffd6, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 35, 400, 25, 8, -42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x200, 0x19, 0xd, 0x2e, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 32, 512, 25, 13, 46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x1d0, 0x1e, 0xc, 0xffce, ANIM_TARGET + createspriteontargets gSpriteTemplate_BleakwindIce, ANIM_TARGET, 2, 6, 0, 37, 464, 30, 12, -50, ANIM_TARGET return gBattleAnimMove_WildboltStorm:: fadetobg BG_MAX_LIGHTNING waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 waitbgfadein playsewithpan SE_M_GUST, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 88, 1 @@ -15348,17 +15348,17 @@ gBattleAnimMove_WildboltStorm:: end WildboltStormSparkSwirl: - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x210, 0x1e, 0xa, 0x32, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 32, 528, 30, 10, 50, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x24, 0x1e0, 0x14, 0xd, 0xffd2, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 36, 480, 20, 13, -46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x240, 0x14, 0x5, 0x2a, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 37, 576, 20, 5, 42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x23, 0x190, 0x19, 0x8, 0xffd6, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 35, 400, 25, 8, -42, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x200, 0x19, 0xd, 0x2e, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 32, 512, 25, 13, 46, ANIM_TARGET delay 2 - createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0x0, 0x25, 0x1d0, 0x1e, 0xc, 0xffce, ANIM_TARGET + createspriteontargets gSpriteTemplate_WildboltStormSpark, ANIM_TARGET, 2, 6, 0, 37, 464, 30, 12, -50, ANIM_TARGET return @@ -15387,17 +15387,17 @@ gBattleAnimMove_SandsearStorm:: end SandsearStormFireSpin: - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 28, 528, 30, 13, 50, ANIM_TARGET delay 2 - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 32, 480, 20, 16, -46, ANIM_TARGET delay 2 - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 33, 576, 20, 8, 42, ANIM_TARGET delay 2 - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 31, 400, 25, 11, -42, ANIM_TARGET delay 2 - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 28, 512, 25, 16, 46, ANIM_TARGET delay 2 - createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_TARGET + createspriteontargets gFireSpinSpriteTemplate, ANIM_TARGET, 2, 6, 0, 33, 464, 30, 15, -50, ANIM_TARGET return @@ -15407,10 +15407,10 @@ gBattleAnimMove_LunarBlessing:: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 16, RGB_BLACK createvisualtask AnimTask_BlendNonAttackerPalettes, 2, 1, 0, 16, RGB_BLACK waitforvisualfinish - createsprite gMoonSpriteTemplate, ANIM_ATTACKER, 2, 0x78, 0x38 - createvisualtask AnimTask_AlphaFadeIn, 0x3, 0x0, 0x10, 0x10, 0x0, 0x1 + createsprite gMoonSpriteTemplate, ANIM_ATTACKER, 2, 120, 56 + createvisualtask AnimTask_AlphaFadeIn, 3, 0, 16, 16, 0, 1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 7, 0, 16, RGB_BLACK - loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 0x10, 0x3 + loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 16, 3 call HealingEffect2 createsprite gSpriteTemplate_LunarDanceRing, ANIM_ATTACKER, 2, delay 4 @@ -15421,10 +15421,10 @@ gBattleAnimMove_LunarBlessing:: clearmonbg ANIM_ATK_PARTNER call HealingEffect delay 40 - createvisualtask AnimTask_AllBattlersInvisible, 0xA, - createvisualtask AnimTask_MoonlightEndFade, 0x2, + createvisualtask AnimTask_AllBattlersInvisible, 10, + createvisualtask AnimTask_MoonlightEndFade, 2, delay 16 - createvisualtask AnimTask_AllBattlersVisible, 0xA, + createvisualtask AnimTask_AllBattlersVisible, 10, waitforvisualfinish blendoff end @@ -15432,10 +15432,10 @@ gBattleAnimMove_LunarBlessing:: gBattleAnimMove_TakeHeart:: playsewithpan SE_M_BUBBLE, SOUND_PAN_ATTACKER - createsprite gSpriteTemplate_TakeHeartFallingHeart, ANIM_ATTACKER, 2, 0, 0x3a, 4, ANIM_ATTACKER + createsprite gSpriteTemplate_TakeHeartFallingHeart, ANIM_ATTACKER, 2, 0, 58, 4, ANIM_ATTACKER delay 21 - loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 0x10, 0x4 - createvisualtask AnimTask_StatusClearedEffect, 0x2, 0x0 + loopsewithpan SE_M_HEAL_BELL, SOUND_PAN_ATTACKER, 16, 4 + createvisualtask AnimTask_StatusClearedEffect, 2, 0 call TakeHeartRings call TakeHeartRings call TakeHeartRings @@ -15470,9 +15470,9 @@ gBattleAnimMove_BitterBlade:: waitforvisualfinish delay 3 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET - createsprite gBitterBladeImpactTemplate ANIM_TARGET, 1, 0x0, 0xa, 0x0, 0xFF00, 0xA + createsprite gBitterBladeImpactTemplate ANIM_TARGET, 1, 0, 10, 0, -256, 10 delay 2 - createvisualtask AnimTask_ShakeMon, 0x2, 0x1, 0x0, 0x3, 0xa, 0x1 + createvisualtask AnimTask_ShakeMon, 2, 1, 0, 3, 10, 1 waitforvisualfinish delay 3 call GigaDrainAbsorbEffect @@ -15489,12 +15489,12 @@ gBattleAnimMove_BitterBlade:: gBattleAnimMove_DoubleShock:: fadetobg BG_MAX_LIGHTNING waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xff00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 waitbgfadein - createvisualtask AnimTask_ElectricChargingParticles, 0x2, ANIM_ATTACKER, 30, 0, 3 @;Amount, Slowness, Slowness, Compaction + createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 30, 0, 3 @;Amount, Slowness, Slowness, Compaction playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 12 - createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 0, 0x0 + createsprite gGrowingShockWaveOrbSpriteTemplate, ANIM_ATTACKER, 0, 0 waitforvisualfinish delay 2 waitforvisualfinish @@ -15516,9 +15516,9 @@ gBattleAnimMove_DoubleShock:: end gBattleAnimMove_SyrupBomb:: - createvisualtask AnimTask_SyrupBomb, 0x5 - jumpargeq 0x0, FALSE, gBattleAnimMove_SyrupBombRed - jumpargeq 0x0, TRUE, gBattleAnimMove_SyrupBombYellow + createvisualtask AnimTask_SyrupBomb, 5 + jumpargeq 0, FALSE, gBattleAnimMove_SyrupBombRed + jumpargeq 0, TRUE, gBattleAnimMove_SyrupBombYellow gBattleAnimMove_SyrupBombRed:: call SyrupBombProjectileRed @@ -15591,9 +15591,9 @@ SyrupBombProjectileYellow: return gBattleAnimGeneral_SyrupBombSpeedDrop:: - createvisualtask AnimTask_StickySyrup, 0x5 - jumpargeq 0x0, FALSE, SyrupBombSpeedDropRed - jumpargeq 0x0, TRUE, SyrupBombSpeedDropYellow + createvisualtask AnimTask_StickySyrup, 5 + jumpargeq 0, FALSE, SyrupBombSpeedDropRed + jumpargeq 0, TRUE, SyrupBombSpeedDropYellow SyrupBombSpeedDropRed: loopsewithpan SE_M_TOXIC, SOUND_PAN_TARGET, 13, 6 @@ -15716,7 +15716,7 @@ gBattleAnimMove_AlluringVoice:: createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 1, 0, 26, 1 createvisualtask AnimTask_ShakeMon2, 2, ANIM_DEF_PARTNER, 1, 0, 26, 1 waitforvisualfinish - createvisualtask SoundTask_WaitForCry, 0x5 + createvisualtask SoundTask_WaitForCry, 5 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 8, 0, RGB(29, 19, 27) waitforvisualfinish @@ -15764,7 +15764,7 @@ gBattleAnimMove_GigatonHammer:: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 10, 50 createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 10, 50 @@ -15774,10 +15774,10 @@ gBattleAnimMove_GigatonHammer:: GigatonHammerImpact: playsewithpan SE_M_COMET_PUNCH, SOUND_PAN_TARGET create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=2 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfff4, 0x20, 0x3, 0x4 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0x8, 0x1f, 0x2, 0x2 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xfffc, 0x1c, 0x2, 0x3 - createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 0xc, 0x1e, 0x4, 0x3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -12, 32, 3, 4 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 8, 31, 2, 2 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, -4, 28, 2, 3 + createsprite gRockScatterSpriteTemplate, ANIM_TARGET, 2, 12, 30, 4, 3 return gBattleAnimMove_IceSpinner:: @@ -15911,16 +15911,16 @@ 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 + setarg 7, 4096 + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 20, -20, 20, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 10, 10, 20, ANIM_TARGET createsprite gFistFootSpriteTemplate, ANIM_TARGET, 3, 0, 0, 8, 1, 0 playsewithpan SE_M_DIVE, SOUND_PAN_TARGET create_basic_hitsplat_sprite ANIM_TARGET, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 delay 6 - createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0x14, 0xffec, 0x14, ANIM_TARGET - createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0xa, 0xa, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 20, -20, 20, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 10, 10, 20, ANIM_TARGET createsprite gWaterHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 13, ANIM_TARGET, 1 createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 13 createsprite gSmallDriftingBubblesSpriteTemplate, ANIM_ATTACKER, 4, 0, 13 @@ -15965,7 +15965,7 @@ gBattleAnimMove_PsychicNoise:: end gBattleAnimMove_TemperFlare:: - loopsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER, 0x8, 0x3 + loopsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER, 8, 3 createvisualtask AnimTask_ShrinkAndGrow, 2 createvisualtask AnimTask_BlendMonInAndOut, 3, ANIM_ATTACKER, RGB_RED, 10, 0, 2 createsprite gAngerMarkSpriteTemplate, ANIM_ATTACKER, 2, 0, -20, -28 @@ -16000,7 +16000,7 @@ gBattleAnimMove_TemperFlare:: gBattleAnimMove_Trailblaze:: monbg ANIM_TARGET - loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 0x20, 0x6 + loopsewithpan SE_M_FLAME_WHEEL, SOUND_PAN_ATTACKER, 32, 6 createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, ANIM_ATTACKER, 12, 6, 4, 3 call TrailblazeVortex call TrailblazeVortex @@ -16022,22 +16022,22 @@ gBattleAnimMove_Trailblaze:: playsewithpan SE_M_FIRE_PUNCH, SOUND_PAN_ATTACKER waitforvisualfinish delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 7 waitforvisualfinish clearmonbg ANIM_TARGET end TrailblazeVortex: - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gLeafTornadoVortexTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 return @@ -16110,7 +16110,7 @@ gBattleAnimMove_KowtowCleave:: playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER waitforvisualfinish delay 12 - createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 0x18, -12 + createsprite gLeerSpriteTemplate, ANIM_TARGET, 2, 24, -12 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER waitforvisualfinish createsprite gBowMonSpriteTemplate, ANIM_ATTACKER, 2, 1 @@ -16399,8 +16399,8 @@ ElectroShotSetUp: setalpha 14, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 12, RGB_BLACK waitforvisualfinish - loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 0xE, 0x8 - createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + loopsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER, 14, 8 + createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, 0 call TechnoBlastCharging1 delay 15 call TechnoBlastCharging2 @@ -16478,7 +16478,7 @@ gBattleAnimMove_IvyCudgel:: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 call WoodHammerImpact waitforvisualfinish @@ -16488,7 +16488,7 @@ IvyCudgelFire: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 call WoodHammerImpact call FireSpreadEffect @@ -16501,7 +16501,7 @@ IvyCudgelRock: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 call WoodHammerImpact playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET @@ -16516,7 +16516,7 @@ IvyCudgelWater: delay 60 createvisualtask AnimTask_ShakeMonInPlace, 2, ANIM_ATTACKER, 3, 0, 12, 4 delay 18 - createvisualtask AnimTask_SquishTarget, 0x2 + createvisualtask AnimTask_SquishTarget, 2 delay 6 call WoodHammerImpact playsewithpan SE_M_DIVE, SOUND_PAN_TARGET @@ -17586,9 +17586,9 @@ gBattleAnimMove_ElectroDrift:: createvisualtask AnimTask_VoltTackleBolt, 5, 4 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER delay 2 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 5 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 10, 0, 18, 1 @@ -17642,7 +17642,7 @@ gBattleAnimMove_Psyblade:: gBattleAnimMove_MightyCleave:: fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0xF000, 0, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -4096, 0, 0, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 38, 1 call MightyCleaveDiggingRun @@ -17756,7 +17756,7 @@ gBattleAnimMove_BlazingTorque:: fadetobg BG_FIRE waitbgfadeout playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein complex_palette_blend selector=F_PAL_ATTACKER, delay=4, num_blends=2, color1=RGB_WHITE, blend_y1=10, color2=RGB_BLACK, blend_y2=0 waitforvisualfinish @@ -17833,7 +17833,7 @@ gBattleAnimMove_WickedTorque:: gBattleAnimMove_NoxiousTorque:: fadetobg BG_GUNK_SHOT waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER complex_palette_blend selector=F_PAL_ATTACKER, delay=4, num_blends=2, color1=RGB_WHITE, blend_y1=10, color2=RGB_BLACK, blend_y2=0 @@ -17882,7 +17882,7 @@ gBattleAnimMove_NoxiousTorque:: gBattleAnimMove_CombatTorque:: fadetobg BG_IN_AIR waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0, 0x1000, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 0, 4096, 0, -1 waitbgfadein playsewithpan SE_M_SWIFT, SOUND_PAN_ATTACKER complex_palette_blend selector=F_PAL_ATTACKER, delay=4, num_blends=2, color1=RGB_WHITE, blend_y1=10, color2=RGB_BLACK, blend_y2=0 @@ -18077,7 +18077,7 @@ TeraBlastFighting: waitforvisualfinish fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0xF000, 0, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -4096, 0, 0, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 63, 1 createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -48, 24, 0, 0, 10, 1, ANIM_FOOT_1, 1 @@ -18189,7 +18189,7 @@ TeraBlastPoison: waitforvisualfinish fadetobg BG_GUNK_SHOT waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein createsprite gSludgeBombHitParticleSpriteTemplate, ANIM_TARGET, 2, 42, 27, 20 createsprite gSludgeBombHitParticleSpriteTemplate, ANIM_TARGET, 2, -27, 44, 20 @@ -18294,7 +18294,7 @@ TeraBlastRock: waitforvisualfinish fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0xF000, 0, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -4096, 0, 0, -1 waitbgfadein playsewithpan SE_FALL, SOUND_PAN_TARGET call TeraBlastRock1 @@ -18497,7 +18497,7 @@ TeraBlastGhost: waitforvisualfinish fadetobg BG_GHOST waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 46, 1 delay 6 @@ -18706,7 +18706,7 @@ TeraBlastWater: waitforvisualfinish fadetobg BG_WATER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein playsewithpan SE_FALL, SOUND_PAN_TARGET call TeraBlastWater1 @@ -18777,7 +18777,7 @@ TeraBlastGrass: waitforvisualfinish fadetobg BG_LEAF_STORM waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x0A00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 2560, 0, 1, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 @@ -18821,7 +18821,7 @@ TeraBlastElectric: waitforvisualfinish fadetobg BG_THUNDER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0xff00, 0, 1, -1 + createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 waitbgfadein loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET, 3, 10 createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 44, 0, 0, 3 @@ -18914,12 +18914,12 @@ TeraBlastPsychic: waitbgfadeout createvisualtask AnimTask_SetPsychicBackground, 5 waitbgfadein - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 3 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 8, 8, 30, 1 createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 30, ANIM_TARGET, 1 waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 waitforvisualfinish createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 50, 1 call EternabeamGeyser @@ -19012,7 +19012,7 @@ TeraBlastDragon: waitforvisualfinish fadetobg BG_FIRE_2 waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 5, 0x1000, 0, 0, -1 + createvisualtask AnimTask_StartSlidingBg, 5, 4096, 0, 0, -1 waitbgfadein createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 46, 1 delay 6 @@ -20276,7 +20276,7 @@ gBattleAnimMove_HiddenPower:: createsprite gHiddenPowerOrbSpriteTemplate, ANIM_ATTACKER, 2, 26, 168 createsprite gHiddenPowerOrbSpriteTemplate, ANIM_ATTACKER, 2, 26, 210 delay 52 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER createvisualtask AnimTask_ScaleMonAndRestore, 5, -7, -7, 11, ANIM_ATTACKER, 0 createsprite gHiddenPowerOrbScatterSpriteTemplate, ANIM_TARGET, 2, 0 @@ -20960,19 +20960,19 @@ gBattleAnimMove_Spark:: delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 22) delay 10 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=5, target_blend_y=5, color=RGB(31, 31, 22) playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 blend_color_cycle selector=(F_PAL_BG | F_PAL_ATTACKER), delay=-31, num_blends=1, initial_blend_y=0, target_blend_y=0, color=RGB(31, 31, 22) delay 20 @@ -21084,7 +21084,7 @@ gBattleAnimMove_LockOn:: createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 3 createsprite gLockOnMoveTargetSpriteTemplate, ANIM_ATTACKER, 40, 4 @ Also transitions to red target delay 120 - setarg 7, 0xFFFF @ Signal target to flash/disappear + setarg 7, -1 @ Signal target to flash/disappear waitforvisualfinish end @@ -21463,7 +21463,7 @@ HornDrillContinue: waitforvisualfinish restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein end @@ -22364,7 +22364,7 @@ gBattleAnimMove_ExtremeSpeed:: clearmonbg ANIM_TARGET blendoff delay 1 - setarg 7, 0x1000 + setarg 7, 4096 delay 1 end @@ -23616,7 +23616,7 @@ gBattleAnimMove_Thunder:: waitbgfadein simple_palette_blend selector=F_PAL_BG, delay=2, initial_blend_y=0, target_blend_y=16, color=RGB_BLACK delay 16 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 16, -36 @@ -23633,7 +23633,7 @@ gBattleAnimMove_Thunder:: createsprite gLightningSpriteTemplate, ANIM_TARGET, 6, -16, 16 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET delay 5 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 24, -32 delay 1 @@ -23641,9 +23641,9 @@ gBattleAnimMove_Thunder:: delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 24, 16 delay 30 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 5 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, -32 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET @@ -23652,17 +23652,17 @@ gBattleAnimMove_Thunder:: delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, 16 delay 10 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createvisualtask AnimTask_ShakeTargetInPattern, 2, 30, 3, TRUE, 0 delay 2 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 simple_palette_blend unused_anim_battler=ANIM_TARGET, selector=F_PAL_BG, delay=2, initial_blend_y=16, target_blend_y=0, color=RGB_BLACK waitforvisualfinish restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein end @@ -23675,7 +23675,7 @@ gBattleAnimMove_ThunderPunch:: createsprite gFistFootSpriteTemplate, ANIM_TARGET, 4, 0, 0, 8, 1, 0 create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=1 delay 1 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, -48 delay 1 @@ -23684,7 +23684,7 @@ gBattleAnimMove_ThunderPunch:: createsprite gLightningSpriteTemplate, ANIM_ATTACKER, 2, 0, 16 delay 1 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 2 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 15, 1 create_basic_hitsplat_sprite ANIM_ATTACKER, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=2 @@ -23710,12 +23710,12 @@ gBattleAnimMove_SacredFire:: delay 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 20, 10, 50, 5, 1, 1 delay 1 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 50, 5, 0, 1 delay 1 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 50, 5, -1, 1 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 waitforvisualfinish playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET @@ -23727,10 +23727,10 @@ gBattleAnimMove_SacredFire:: playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET createsprite gLargeFlameSpriteTemplate, ANIM_TARGET, 2, 16, 0, 80, 16, 0, 1 delay 1 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 1 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET createsprite gLargeFlameScatterSpriteTemplate, ANIM_TARGET, 2, 0, 0, 30, 30, -1, 0 @@ -23997,7 +23997,7 @@ gBattleAnimMove_FeintAttack:: clearmonbg ANIM_TARGET blendoff delay 1 - setarg 7, 0x1000 + setarg 7, 4096 delay 32 createvisualtask AnimTask_InitAttackerFadeFromInvisible, 2 monbg ANIM_ATTACKER @@ -24237,7 +24237,7 @@ gBattleAnimMove_AuroraBeam:: call AuroraBeamCreateRings call AuroraBeamCreateRings call AuroraBeamCreateRings - setarg 7, 0xFFFF + setarg 7, -1 createsoundtask SoundTask_LoopSEAdjustPanning, SE_M_BUBBLE_BEAM2, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 3, 6, 0, 10 createvisualtask AnimTask_ShakeMon2, 5, ANIM_TARGET, 2, 0, 40, 1 call AuroraBeamCreateRings @@ -24923,7 +24923,7 @@ MegahornContinue: blendoff restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein end MegahornInContest: @@ -26318,7 +26318,7 @@ gBattleAnimMove_Mimic:: delay 15 create_mimic_orb_sprite ANIM_TARGET, 2, initial_x=-12, initial_y=24 delay 10 - setarg 7, 0xFFFF + setarg 7, -1 waitforvisualfinish playsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_WHITE @@ -26404,7 +26404,7 @@ gBattleAnimMove_SoftBoiled:: delay 8 createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 31, 16, 0, 1 delay 60 - setarg 7, 0xFFFF + setarg 7, -1 waitforvisualfinish clearmonbg ANIM_ATK_PARTNER call HealingEffect2 @@ -26748,7 +26748,7 @@ gBattleAnimMove_TriAttack:: delay 2 createvisualtask AnimTask_ShakeTargetInPattern, 2, 20, 3, TRUE, 1 waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 0, -48 delay 1 @@ -26758,7 +26758,7 @@ gBattleAnimMove_TriAttack:: delay 20 createvisualtask AnimTask_ShakeTargetInPattern, 2, 20, 3, TRUE, 0 delay 2 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 waitforvisualfinish call IceCrystalEffectShort simple_palette_blend selector=F_PAL_BG, delay=2, initial_blend_y=16, target_blend_y=0, color=RGB_BLACK @@ -27727,7 +27727,7 @@ gBattleAnimMove_CosmicPower:: waitforvisualfinish restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein waitforvisualfinish end @@ -27755,7 +27755,7 @@ gBattleAnimMove_BlastBurn:: createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 40, 20, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -40, 20, 24, 0, 0, 0 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 25 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -96, 0, 24, 0, 0, 0 @@ -27769,7 +27769,7 @@ gBattleAnimMove_BlastBurn:: createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -60, 30, 24, 0, 0, 0 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -28015,7 +28015,7 @@ gBattleAnimMove_HydroCannon:: playsewithpan SE_M_SURF, SOUND_PAN_ATTACKER createsprite gHydroCannonChargeSpriteTemplate, ANIM_TARGET, 2 delay 10 - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 delay 30 panse SE_M_HYDRO_PUMP, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, +2, 0 call HydroCannonBeam @@ -28032,7 +28032,7 @@ gBattleAnimMove_HydroCannon:: call HydroCannonBeam createsprite gWaterHitSplatSpriteTemplate, ANIM_TARGET, 2, 0, 0, ANIM_TARGET, 0 waitforvisualfinish - invert_screen_color scenery=0x1 | 0x2 | 0x4 + invert_screen_color scenery=1 | 2 | 4 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -28081,7 +28081,7 @@ gBattleAnimMove_SeismicToss:: SeismicTossContinue: restorebg waitbgfadeout - setarg 7, 0xFFF + setarg 7, 4095 waitbgfadein clearmonbg ANIM_DEF_PARTNER blendoff @@ -28267,7 +28267,7 @@ gBattleAnimMove_SkyUppercut:: blendoff restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein end @@ -28334,7 +28334,7 @@ gBattleAnimMove_MagicalLeaf:: create_basic_hitsplat_sprite ANIM_TARGET, 4, x=10, y=4, relative_to=ANIM_TARGET, animation=2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 delay 20 - setarg 7, 0xFFFF + setarg 7, -1 waitforvisualfinish clearmonbg ANIM_DEF_PARTNER blendoff @@ -28781,7 +28781,7 @@ SetPsychicBackground: UnsetPsychicBg: restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein return @@ -28802,7 +28802,7 @@ SetSkyBgContest: UnsetSkyBg: restorebg waitbgfadeout - setarg 7, 0xFFFF + setarg 7, -1 waitbgfadein return @@ -28971,7 +28971,7 @@ Status_BindWrap: delay 3 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 2, 0, 8, 1 delay 20 - setarg 7, 0xFFFF + setarg 7, -1 playsewithpan SE_M_BIND, SOUND_PAN_TARGET waitforvisualfinish end @@ -29001,7 +29001,7 @@ Status_MagmaStorm: call FireSpinEffect restorebg waitbgfadeout - setarg 7, 0xFFF + setarg 7, 4095 waitbgfadein stopsound clearmonbg ANIM_DEF_PARTNER @@ -29062,7 +29062,7 @@ Status_Infestation: splitbgprio ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 9, RGB(0, 25, 28) createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 30, 1 - loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0x0, 30 + loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0, 30 call InfestationVortex call InfestationVortex waitforvisualfinish @@ -29485,13 +29485,13 @@ gBattleAnimGeneral_ZMoveActivate:: setalpha 12, 8 fadetobg BG_ZMOVE_ACTIVATE waitbgfadein - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, 0, 0, 0, -1 playsewithpan SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER blend_color_cycle selector=F_PAL_ATTACKER, delay=0, num_blends=6, initial_blend_y=0, target_blend_y=11, color=RGB(28, 21, 29) call ZMoveBuffEffect call ZMoveBuffEffect call ZMoveBuffEffect - createsprite gZMoveSymbolSpriteTemplate, ANIM_ATTACKER, 41, 0x0, 0x0, 0x0, 0x0 + createsprite gZMoveSymbolSpriteTemplate, ANIM_ATTACKER, 41, 0, 0, 0, 0 call ZMoveBuffEffect call ZMoveBuffEffect waitforvisualfinish @@ -29500,13 +29500,13 @@ gBattleAnimGeneral_ZMoveActivate:: clearmonbg ANIM_ATTACKER end ZMoveBuffEffect: - createsprite gBlueZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gBlueZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 3 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 @Red Buff + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 @Red Buff delay 3 - createsprite gGreenZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gGreenZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 3 - createsprite gYellowZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gYellowZMoveEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 3 return @@ -29526,13 +29526,13 @@ gBattleAnimGeneral_TotemFlare:: end RainbowEndureEffect: - createsprite gBlueEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gBlueEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 3 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 @Red Buff + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 @Red Buff delay 3 - createsprite gGreenEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gGreenEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 3 - createsprite gYellowEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gYellowEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 3 return @@ -29560,9 +29560,9 @@ gBattleAnimGeneral_StrongWinds:: end gBattleAnimGeneral_PrimalReversion:: - createvisualtask AnimTask_PrimalReversion, 0x5 - jumpargeq 0x0, ITEM_RED_ORB, General_PrimalReversion_Omega - jumpargeq 0x0, ITEM_BLUE_ORB, General_PrimalReversion_Alpha + createvisualtask AnimTask_PrimalReversion, 5 + jumpargeq 0, ITEM_RED_ORB, General_PrimalReversion_Omega + jumpargeq 0, ITEM_BLUE_ORB, General_PrimalReversion_Alpha goto gBattleAnimGeneral_MegaEvolution General_PrimalReversion_Alpha: monbg ANIM_ATTACKER @@ -29685,8 +29685,8 @@ gBattleAnimGeneral_UltraBurst:: waitforvisualfinish createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 @ charge particles to attacker delay 30 - loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0xe, 0xa - createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 3, 0x0 + loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 14, 10 + createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 3, 0 call LightThatBurnsTheSkyGreenSparks call LightThatBurnsTheSkyGreenSparks call LightThatBurnsTheSkyGreenSparks @@ -29699,7 +29699,7 @@ gBattleAnimGeneral_UltraBurst:: delay 20 playsewithpan SE_ORB, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendBattleAnimPalExclude, 5, 5, 2, 0, 16, RGB_WHITEALPHA - createsprite gUltraBurstSymbolSpriteTemplate, ANIM_ATTACKER, 0x0, 0x0, 0x0, 0x0, 0x0 + createsprite gUltraBurstSymbolSpriteTemplate, ANIM_ATTACKER, 0, 0, 0, 0, 0 waitforvisualfinish createvisualtask AnimTask_HideSwapSprite, 2 createvisualtask AnimTask_BlendBattleAnimPalExclude, 5, 5, 2, 16, 0, RGB_WHITEALPHA @@ -29728,10 +29728,10 @@ gBattleAnimGeneral_AffectionHangedOn:: loopsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER, 12, 3 createvisualtask AnimTask_SwayMon, 5, 0, 12, 4096, 4, ANIM_ATTACKER delay 15 - createvisualtask AnimTask_AffectionHangedOn, 0x5 - jumpargeq 0x0, AFFECTION_THREE_HEARTS, General_AffectionHangedOn_3Hearts - jumpargeq 0x0, AFFECTION_FOUR_HEARTS, General_AffectionHangedOn_4Hearts - jumpargeq 0x0, AFFECTION_FIVE_HEARTS, General_AffectionHangedOn_5Hearts + createvisualtask AnimTask_AffectionHangedOn, 5 + jumpargeq 0, AFFECTION_THREE_HEARTS, General_AffectionHangedOn_3Hearts + jumpargeq 0, AFFECTION_FOUR_HEARTS, General_AffectionHangedOn_4Hearts + jumpargeq 0, AFFECTION_FIVE_HEARTS, General_AffectionHangedOn_5Hearts createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, -384, -31 General_AffectionHangedOn_5Hearts: createsprite gRedHeartBurstSpriteTemplate, ANIM_ATTACKER, 3, -128, -22 @@ -30001,55 +30001,55 @@ gBattleAnimSpecial_CriticalCaptureBallThrow:: gBattleAnimMove_BreakneckBlitz:: createvisualtask AnimTask_HorizontalShake, 5, (MAX_BATTLERS_COUNT + 1), 5, 32 @ shake screen createvisualtask AnimTask_HorizontalShake, 5, MAX_BATTLERS_COUNT, 5, 32 @ shake banks - playsewithpan SE_M_EARTHQUAKE, 0x0 + playsewithpan SE_M_EARTHQUAKE, 0 monbg ANIM_ATTACKER splitbgprio ANIM_ATTACKER delay 1 createvisualtask AnimTask_BlendPalInAndOutByTag, 5, ANIM_TAG_HOLLOW_ORB, RGB(0, 0, 19), 14, 0, 3 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x2b - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x55 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x80 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0xaa - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0xd5 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 43 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 85 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 128 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 170 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 213 delay 15 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x2b - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x55 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0x80 - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0xaa - createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0xd5 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 0 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 43 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 85 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 128 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 170 + createsprite gBreakneckBlitzDanceSpriteTemplate, ANIM_ATTACKER, 2, 213 waitforvisualfinish clearmonbg ANIM_ATTACKER createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish fadetobg BG_DRILL waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf700, 0x300, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -2304, 768, 1, -1 waitbgfadein setalpha 12, 8 delay 16 createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10 delay 35 invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 8 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x1, 0x1 @ 0, 0 + createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0, 0, 1, 1 @ 0, 0 delay 1 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0xa, 0xfff6, 0x1, 0x1 @ +10, -10 + createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 10, -10, 1, 1 @ +10, -10 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 1 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0xf, 0xfff1, 0x1, 0x1 @ +15, -15 + createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 15, -15, 1, 1 @ +15, -15 delay 1 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0x14, 0xffec, 0x1, 0x1 @ +20, -20 + createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 20, -20, 1, 1 @ +20, -20 delay 1 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 0x19, 0xffe7, 0x1, 0x1 @ +25, -25 + createsprite gBreakneckBlitzHitSpriteTemplate, ANIM_TARGET, 3, 25, -25, 1, 1 @ +25, -25 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -26, 16, 1, 4 waitforvisualfinish createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -512, ANIM_TARGET, 0 @@ -30060,76 +30060,76 @@ gBattleAnimMove_BreakneckBlitz:: createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -512, ANIM_TARGET, 1 delay 10 delay 25 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x6 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 6 delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish delay 16 blendoff clearmonbg ANIM_DEF_PARTNER - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish call UnsetPsychicBg end gBattleAnimMove_AllOutPummeling:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish call EndureEffect - loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER 0x9 0x2 + loopsewithpan SE_M_TAKE_DOWN, SOUND_PAN_ATTACKER 9 2 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB_RED createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 call EndureEffect waitforvisualfinish fadetobg BG_ROCK_WRECKER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x800, 0x0, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 2048, 0, 0, -1 waitbgfadein setalpha 12, 8 monbg ANIM_DEF_PARTNER createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 63, 1 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0x18, 0x0, 0x0, 0xa, 0x1, ANIM_FOOT_1, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -48, 24, 0, 0, 10, 1, ANIM_FOOT_1, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xfffa, 0x12, 0x0, 0x0, 0xa, 0x1, ANIM_CHOP, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -6, 18, 0, 0, 10, 1, ANIM_CHOP, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x10, 0x0, 0x0, 0xa, 0x1, ANIM_FIST_1, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -64, 16, 0, 0, 10, 1, ANIM_FIST_1, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0x15, 0x0, 0x0, 0xa, 0x1, ANIM_FOOT_2, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -48, 21, 0, 0, 10, 1, ANIM_FOOT_2, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0x14, 0x0, 0x0, 0xa, 0x1, ANIM_FIST_1, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -48, 20, 0, 0, 10, 1, ANIM_FIST_1, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x17, 0x0, 0x0, 0xa, 0x1, ANIM_CHOP, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -32, 23, 0, 0, 10, 1, ANIM_CHOP, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x11, 0x0, 0x0, 0xa, 0x1, ANIM_FOOT_1, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -64, 17, 0, 0, 10, 1, ANIM_FOOT_1, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffb0, 0x10, 0x0, 0x0, 0xa, 0x1, ANIM_FOOT_2, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -80, 16, 0, 0, 10, 1, ANIM_FOOT_2, 1 delay 2 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 8 - createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, 0xffa0, 0x15, 0x0, 0x0, 0xa, 0x1, ANIM_CHOP, 0x1 + createsprite gAllOutPummelingOnslaughtSpriteTemplate, ANIM_ATTACKER, 2, -96, 21, 0, 0, 10, 1, ANIM_CHOP, 1 delay 2 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=1 @@ -30138,28 +30138,28 @@ gBattleAnimMove_AllOutPummeling:: createvisualtask AnimTask_WindUpLunge, 5, ANIM_ATTACKER, -24, 8, 23, 10, 40, 10 delay 35 invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER delay 12 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -48, 0, 0, 4 waitforvisualfinish delay 48 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 7 delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 5 waitforvisualfinish delay 16 blendoff clearmonbg ANIM_DEF_PARTNER - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish call UnsetPsychicBg end gBattleAnimMove_SupersonicSkystrike:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish monbg ANIM_DEF_PARTNER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 1, 8, 0, RGB_BLACK @@ -30173,37 +30173,37 @@ gBattleAnimMove_SupersonicSkystrike:: delay 32 delay 10 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 delay 2 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 12, 4, -16, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 16, 4, -10, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 1, 14, 4, -18, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 1, 12, 4, -16, 18 delay 48 - createvisualtask AnimTask_DoomDesireLightBeam, 0x5 + createvisualtask AnimTask_DoomDesireLightBeam, 5 delay 9 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER delay 9 - playsewithpan SE_M_MORNING_SUN, 0x0 + playsewithpan SE_M_MORNING_SUN, 0 delay 9 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_TARGET delay 25 fadetobg BG_SKY waitbgfadeout - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 0x1 SupersonicSkystrikeOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 1 SupersonicSkystrikeOnPlayer SupersonicSkystrikeOnOpponent: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf800, 0x800, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -2048, 2048, 0, -1 goto FinishSupersonicSkystrike SupersonicSkystrikeOnPlayer: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x800, 0xf800, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 2048, -2048, 0, -1 FinishSupersonicSkystrike: waitbgfadein waitforvisualfinish monbg ANIM_DEF_PARTNER setalpha 12, 8 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - createsprite gSupersonicSkystrikeFlySpriteTemplate, ANIM_ATTACKER, 2, 0x14 + createsprite gSupersonicSkystrikeFlySpriteTemplate, ANIM_ATTACKER, 2, 20 delay 16 create_basic_hitsplat_sprite ANIM_ATTACKER, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER @@ -30219,8 +30219,8 @@ FinishSupersonicSkystrike: delay 48 clearmonbg ANIM_DEF_PARTNER blendoff - createvisualtask AnimTask_AllBattlersVisible, 0xA - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createvisualtask AnimTask_AllBattlersVisible, 10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 call UnsetPsychicBg waitforvisualfinish end @@ -30229,37 +30229,37 @@ FinishSupersonicSkystrike: gBattleAnimMove_AcidDownpour:: fadetobg BG_POISON waitbgfadeout - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 0x1 AcidDownpourOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 1 AcidDownpourOnPlayer AcidDownpourOnOpponent: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xff10, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -240, 1, -1 goto FinishAcidDownpour AcidDownpourOnPlayer: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xf0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, 240, 1, -1 FinishAcidDownpour: waitbgfadein setalpha 12, 8 monbg ANIM_ATTACKER - loopsewithpan SE_M_TOXIC, SOUND_PAN_TARGET, 0xd, 0x6 + loopsewithpan SE_M_TOXIC, SOUND_PAN_TARGET, 13, 6 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 50, 1 call AcidDownpourFlareOnAttacker call AcidDownpourFlareOnAttacker call AcidDownpourFlareOnAttacker delay 5 clearmonbg ANIM_ATTACKER - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish blendoff delay 32 - loopsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET, 0xd, 0x3 - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x0 - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x2a - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x54 - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x7e - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0xa8 - createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0xd2 + loopsewithpan SE_M_BUBBLE3, SOUND_PAN_TARGET, 13, 3 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 0 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 42 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 84 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 126 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 168 + createsprite gAcidDownpourReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 210 delay 32 - 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 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 @@ -30271,56 +30271,56 @@ FinishAcidDownpour: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 7, 0, (RGB(28, 3, 22) | RGB_ALPHA) invisible ANIM_TARGET waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein waitforvisualfinish end AcidDownpourFlare: - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_TARGET delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_TARGET delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_TARGET delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_TARGET delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_TARGET delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_TARGET + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_TARGET delay 2 return AcidDownpourFlareOnAttacker: - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gAcidDownpourAuraSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 return gBattleAnimMove_TectonicRage:: - createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0x0, 0x0, 0xb4 - createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0x0, 0x1, 0xb4 + createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 0, 180 + createsprite gDirtMoundSpriteTemplate, ANIM_ATTACKER, 1, 0, 1, 180 monbg_static ANIM_ATTACKER delay 1 - createvisualtask AnimTask_DigDownMovement, 0x2, 0x0 + createvisualtask AnimTask_DigDownMovement, 2, 0 delay 6 call DigThrowDirt call DigThrowDirt call DigThrowDirt call DigThrowDirt - createvisualtask AnimTask_TectonicRageRollout, 0x2 + createvisualtask AnimTask_TectonicRageRollout, 2 call DigThrowDirt setalpha 12, 8 delay 32 @@ -30332,14 +30332,14 @@ gBattleAnimMove_TectonicRage:: delay 10 waitforvisualfinish clearmonbg ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish invisible ANIM_TARGET delay 5 invisible ANIM_ATTACKER waitforvisualfinish delay 10 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 fadetobg BG_TECTONIC_RAGE @ brown/yellow sky uppercut unloadspritegfx ANIM_TAG_DIRT_MOUND @ dig unloadspritepal ANIM_TAG_DIRT_MOUND @ dig @@ -30351,80 +30351,80 @@ gBattleAnimMove_TectonicRage:: unloadspritepal ANIM_TAG_IMPACT @ hit waitbgfadeout visible ANIM_TARGET - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xf800, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -2048, 0, -1 waitbgfadein playsewithpan SE_FALL, SOUND_PAN_ATTACKER @;Falling sound delay 30 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0xc8, 0xffe0, 0x0, 0x64, 0x0 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0x1e, 0xffe0, 0x10, 0x5a, 0x1 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0x96, 0xffe0, 0x20, 0x3c, 0x2 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0x5a, 0xffe0, 0x30, 0x50, 0x3 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0x6e, 0xffe0, 0x40, 0x32, 0x0 - createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 0x3c, 0xffe0, 0x50, 0x46, 0x1 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 200, -32, 0, 100, 0 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 30, -32, 16, 90, 1 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 150, -32, 32, 60, 2 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 90, -32, 48, 80, 3 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 110, -32, 64, 50, 0 + createsprite gEruptionFallingRockSpriteTemplate, ANIM_ATTACKER, 40, 60, -32, 80, 70, 1 delay 22 createvisualtask AnimTask_HorizontalShake, 5, ANIM_PLAYER_RIGHT, 8, 60 createvisualtask AnimTask_HorizontalShake, 5, ANIM_PLAYER_LEFT, 8, 60 - loopsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET, 0x10, 0xc + loopsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET, 16, 12 delay 48 call TectonicRageExplosion playsewithpan SE_M_SACRED_FIRE, SOUND_PAN_ATTACKER - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, -10, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 call TectonicRageExplosion playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffd8, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffe0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x28, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x40, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x28, 0x14, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x18, 0x0, 0x0, 0x0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -64, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -40, -20, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -32, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 40, -20, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 64, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 40, 20, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -40, 20, 24, 0, 0, 0 call TectonicRageExplosion playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffa0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffc4, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffd0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x3c, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x60, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x3c, 0x1e, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x30, 0x18, 0x0, 0x0, 0x0 - createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc4, 0x1e, 0x18, 0x0, 0x0, 0x0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -96, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -60, -30, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -48, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 + createsprite gTectonicRageBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -60, 30, 24, 0, 0, 0 call TectonicRageExplosion waitforvisualfinish call UnsetPsychicBg waitbgfadein clearmonbg_static ANIM_ATTACKER - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end TectonicRageExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gTectonicRageExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 return gBattleAnimMove_ContinentalCrush:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call ContinentalCrashBuffEffect @@ -30437,16 +30437,16 @@ gBattleAnimMove_ContinentalCrush:: delay 4 delay 10 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 delay 2 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 12, 4, -16, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 16, 4, -10, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 1, 14, 4, -18, 18 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 1, 12, 4, -16, 18 delay 48 - createvisualtask AnimTask_GetTimeOfDay, 0x2 - jumpargeq 0x0 0x0 ContinentalCrushDay - jumpargeq 0x0 0x2 ContinentalCrushAfternoon + createvisualtask AnimTask_GetTimeOfDay, 2 + jumpargeq 0 0 ContinentalCrushDay + jumpargeq 0 2 ContinentalCrushAfternoon ContinentalCrushNight: fadetobg BG_ROCK_FIELD_NIGHT goto FinishContinentalCrush @@ -30468,7 +30468,7 @@ FinishContinentalCrush: call ContinentalCrushStockpileRocks playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER call ContinentalCrushStockpileRocks - createsprite gContinentalCrushGrowingRockSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gContinentalCrushGrowingRockSpriteTemplate, ANIM_ATTACKER, 2, 0 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(19, 14, 11) createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER @@ -30480,16 +30480,16 @@ FinishContinentalCrush: fadetobg BG_IN_AIR waitbgfadeout visible ANIM_TARGET - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xf800, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -2048, 0, -1 waitbgfadein - loopsewithpan SE_FALL, SOUND_PAN_ATTACKER, 0x20, 0x4 @;Falling sound + loopsewithpan SE_FALL, SOUND_PAN_ATTACKER, 32, 4 @;Falling sound delay 30 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0xc8, 0xffe0, 0x0, 0x64, 0x0 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0x1e, 0xffe0, 0x10, 0x5a, 0x1 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0x96, 0xffe0, 0x20, 0x3c, 0x2 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0x5a, 0xffe0, 0x30, 0x50, 0x3 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0x6e, 0xffe0, 0x40, 0x32, 0x0 - createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 0x3c, 0xffe0, 0x50, 0x46, 0x1 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 200, -32, 0, 100, 0 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 30, -32, 16, 90, 1 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 150, -32, 32, 60, 2 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 90, -32, 48, 80, 3 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 110, -32, 64, 50, 0 + createsprite gContinentalCrushEruptionSpriteTemplate, ANIM_ATTACKER, 40, 60, -32, 80, 70, 1 delay 22 createvisualtask AnimTask_HorizontalShake, 5, ANIM_PLAYER_RIGHT, 8, 28 createvisualtask AnimTask_HorizontalShake, 5, ANIM_PLAYER_LEFT, 8, 28 @@ -30502,7 +30502,7 @@ FinishContinentalCrush: unloadspritegfx ANIM_TAG_IMPACT @ hit unloadspritepal ANIM_TAG_IMPACT @ hit delay 48 - createsprite gContinentalCrushBigRockStompSpriteTemplate, ANIM_TARGET, 2, 0, 0x3c, 3, ANIM_TARGET + createsprite gContinentalCrushBigRockStompSpriteTemplate, ANIM_TARGET, 2, 0, 60, 3, ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 7, RGB_BLACK delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET @@ -30519,62 +30519,62 @@ FinishContinentalCrush: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 7, 0, RGB_BLACK @undo pal change on tgt delay 16 waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 waitforvisualfinish restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein delay 4 waitforvisualfinish end ContinentalCrashBuffEffect: - createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gContinentalCrushFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return ContinentalCrushStockpileRocks: - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x0, 0xffc0, 0x20 @ 0,-32 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 0, -64, 32 @ 0,-32 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x2c, 0xffd4, 0x20 @ +44,-44 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 44, -44, 32 @ +44,-44 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x3c, 0x0, 0x20 @ +60,0 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 60, 0, 32 @ +60,0 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x28, 0x28, 0x20 @ +40,+40 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 40, 40, 32 @ +40,+40 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x0, 0x38, 0x20 @ +0,+56 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 0, 56, 32 @ +0,+56 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0xffda, 0x26, 0x20 @ -38,+38 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, -38, 38, 32 @ -38,+38 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0xffca, 0x0, 0x20 @ -54, +0 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, -54, 0, 32 @ -54, +0 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0xffdc, 0xffdc, 0x20 @ -36, -36 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, -36, -36, 32 @ -36, -36 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x0, 0xffce, 0x20 @ 0, -50 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 0, -50, 32 @ 0, -50 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x22, 0xffde, 0x20 @ +34, -34 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 34, -34, 32 @ +34, -34 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x2e, 0x0, 0x20 @ +46, +0 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 46, 0, 32 @ +46, +0 delay 2 - createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x20, 0x20, 0x20 @ +32, +32 + createsprite gContinentalCrushNeedleArmSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 32, 32, 32 @ +32, +32 delay 2 return gBattleAnimMove_SavageSpinOut:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish monbg ANIM_ATTACKER setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 4, RGB_BLACK - createsprite gSavageSpinOutGreenChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gSavageSpinOutGreenChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 delay 25 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER delay 20 @@ -30584,7 +30584,7 @@ gBattleAnimMove_SavageSpinOut:: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 4, 0, RGB_BLACK clearmonbg ANIM_ATTACKER - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish unloadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT unloadspritepal ANIM_TAG_CIRCLE_OF_LIGHT @@ -30603,18 +30603,18 @@ gBattleAnimMove_SavageSpinOut:: delay 1 invisible ANIM_TARGET delay 0 - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 + createvisualtask AnimTask_IsTargetPlayerSide, 2 delay 0 - jumpargeq 0x7 ANIM_TARGET SavageSpinOutOnPlayer + jumpargeq 7 ANIM_TARGET SavageSpinOutOnPlayer SavageSpinOutOnOpponent: - createsprite gSavageSpinOutCacoonSpriteTemplate, ANIM_TARGET, 2, 0x0, ANIM_TARGET, 0x2, 0x0, 0x0, 0x80 + createsprite gSavageSpinOutCacoonSpriteTemplate, ANIM_TARGET, 2, 0, ANIM_TARGET, 2, 0, 0, 128 goto FinishSavageSpinOut SavageSpinOutOnPlayer: - createsprite gSavageSpinOutCacoonSpriteTemplate, ANIM_ATTACKER, 3, 0x0, ANIM_TARGET, 0x2, 0x0, 0x0, 0x80 + createsprite gSavageSpinOutCacoonSpriteTemplate, ANIM_ATTACKER, 3, 0, ANIM_TARGET, 2, 0, 0, 128 FinishSavageSpinOut: fadetobg BG_IN_AIR waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x1000, 0x0, 0xffff @+0x1000 + createvisualtask AnimTask_StartSlidingBg, 5, 0, 4096, 0, -1 @+4096 waitbgfadein delay 16 call SlowSavageSpinOutBackgroundSpeed @@ -30628,7 +30628,7 @@ FinishSavageSpinOut: call SlowSavageSpinOutBackgroundSpeed call SlowSavageSpinOutBackgroundSpeed call SlowSavageSpinOutBackgroundSpeed - call SlowSavageSpinOutBackgroundSpeed @-0x1000 + call SlowSavageSpinOutBackgroundSpeed @-4096 delay 4 call SavageSpinOutCrash_2 @SeismicToss2 delay 10 @@ -30639,8 +30639,8 @@ FinishSavageSpinOut: call SavageSpinOutCrash_1 @SeismicToss1 delay 12 call UnsetPsychicBg - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - no idea why though - something to do with the background scrolling - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 @ user fly on screen on enemy side + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles - no idea why though - something to do with the background scrolling + createvisualtask AnimTask_SnatchOpposingMonMove, 2 @ user fly on screen on enemy side playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER delay 30 unloadspritegfx ANIM_TAG_MUD_SAND @@ -30649,47 +30649,47 @@ FinishSavageSpinOut: unloadspritepal ANIM_TAG_IMPACT @hit createvisualtask AnimTask_ShakeMonInPlace, 130, ANIM_TARGET, 4, 0, 12, 1 createvisualtask AnimTask_ShakeMonInPlace, 130, ANIM_TARGET, 4, 0, 12, 1 - createsprite gSavageSpinOutGreenCutSpriteTemplate, ANIM_TARGET, 2, 0x28, 0xffe0, 0x0 - createsprite gSavageSpinOutGreenCutSpriteTemplate, ANIM_TARGET, 2, 0x28, 0xffd0, 0x0 + createsprite gSavageSpinOutGreenCutSpriteTemplate, ANIM_TARGET, 2, 40, -32, 0 + createsprite gSavageSpinOutGreenCutSpriteTemplate, ANIM_TARGET, 2, 40, -48, 0 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET delay 12 playsewithpan SE_M_RAZOR_WIND, SOUND_PAN_TARGET playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 createsprite gSpiderWebSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, FALSE @ spider web playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gSavageSpinOutWhiteExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end gSavageSpinOutStringBlastSpriteTemplateSHOT: playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0xe, 0xfff4, 0x0, 0xfff4, 0xf, 0x0, 0x0 - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0x1a, 0x8, 0xc, 0x8, 0xf, 0x0, 0x0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 14, -12, 0, -12, 15, 0, 0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 26, 8, 12, 8, 15, 0, 0 delay 3 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0xe, 0xfff4, 0x0, 0xfff4, 0xf, 0x1, 0x0 - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0x1a, 0x8, 0xc, 0x8, 0xf, 0x1, 0x0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 14, -12, 0, -12, 15, 1, 0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 26, 8, 12, 8, 15, 1, 0 delay 3 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0xe, 0xfff4, 0x0, 0xfff4, 0xf, 0x2, 0x0 - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0x1a, 0x8, 0xc, 0x8, 0xf, 0x2, 0x0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 14, -12, 0, -12, 15, 2, 0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 26, 8, 12, 8, 15, 2, 0 delay 3 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0xe, 0xfff4, 0x0, 0xfff4, 0xf, 0x3, 0x0 - createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 0x1a, 0x8, 0xc, 0x8, 0xf, 0x3, 0x0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 14, -12, 0, -12, 15, 3, 0 + createsprite gSavageSpinOutStringBlastSpriteTemplate, ANIM_TARGET, 2, 26, 8, 12, 8, 15, 3, 0 delay 3 return SavageSpinOutCrash_1: @@ -30709,13 +30709,13 @@ SavageSpinOutCrash_2: createsprite gDirtPlumeSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 1, 12, -32, -16, 24 return SlowSavageSpinOutBackgroundSpeed: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xfd56, 0x0, 0xffff @-0x2aa + createvisualtask AnimTask_StartSlidingBg, 5, 0, -682, 0, -1 @-682 delay 1 return gBattleAnimMove_NeverEndingNightmare:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call NeverendingNightmareBuffEffect @@ -30754,154 +30754,154 @@ gBattleAnimMove_NeverEndingNightmare:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_VERTICAL_HEX, 2, 10, 10, RGB(10, 0, 22) @;Purple call NeverendingNightmareGeyser playsewithpan SE_M_SACRED_FIRE, SOUND_PAN_TARGET - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, -10, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET call NeverendingNightmareGeyser playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffd8, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffe0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x28, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x40, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x28, 0x14, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x18, 0x0, 0x0, 0x0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -64, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -40, -20, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -32, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 40, -20, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 64, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 40, 20, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -40, 20, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET call NeverendingNightmareGeyser playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffa0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffc4, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffd0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x3c, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x60, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x3c, 0x1e, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x30, 0x18, 0x0, 0x0, 0x0 - createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc4, 0x1e, 0x18, 0x0, 0x0, 0x0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -96, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -60, -30, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -48, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 + createsprite gNeverEndingNightmareBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -60, 30, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET call NeverendingNightmareGeyser createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 16, 0, RGB(0, 6, 16) @ fade to normal waitforvisualfinish restorebg waitbgfadeout - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end NeverendingNightmareBuffEffect: - createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gNeverEndingNightmareFocusEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return NeverendingNightmareTargetRings: - createsprite gNeverEndingNightmareRingTargetSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gNeverEndingNightmareRingTargetSpriteTemplate, ANIM_TARGET, 3, 0, 0, 256, 0 delay 8 return NeverendingNightmareAttackerRings: - createsprite gNeverEndingNightmareRingAttackerSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gNeverEndingNightmareRingAttackerSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 14 return NeverendingNightmareHands: - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x0, 0xffc0, 0x20 @ 0,-32 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 0, -64, 32 @ 0,-32 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x2c, 0xffd4, 0x20 @ +44,-44 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 44, -44, 32 @ +44,-44 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x3c, 0x0, 0x20 @ +60,0 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 60, 0, 32 @ +60,0 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x28, 0x28, 0x20 @ +40,+40 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 40, 40, 32 @ +40,+40 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x0, 0x38, 0x20 @ +0,+56 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 0, 56, 32 @ +0,+56 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0xffda, 0x26, 0x20 @ -38,+38 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, -38, 38, 32 @ -38,+38 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0xffca, 0x0, 0x20 @ -54, +0 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, -54, 0, 32 @ -54, +0 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0xffdc, 0xffdc, 0x20 @ -36, -36 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, -36, -36, 32 @ -36, -36 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x0, 0xffce, 0x20 @ 0, -50 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 0, -50, 32 @ 0, -50 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x22, 0xffde, 0x20 @ +34, -34 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 34, -34, 32 @ +34, -34 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x2e, 0x0, 0x20 @ +46, +0 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 46, 0, 32 @ +46, +0 delay 2 - createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x0, 0x20, 0x20, 0x20 @ +32, +32 + createsprite gNeverEndingNightmareHandSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 32, 32, 32 @ +32, +32 delay 2 return NeverendingNightmareGeyser: - createsprite gNeverEndingNightmareExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0x0005, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate, ANIM_TARGET, 4, 3, 5, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfff5, 0xfff1, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -11, -15, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0008, 0xfffb, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 8, -5, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfffa, 0x0012, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -6, 18, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -16, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0000, 0x0005, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0, 5, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0003, 0xfff5, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 3, -11, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfff5, 0xffe1, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -11, -31, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0008, 0xffeb, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 8, -21, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -16, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfffa, 0x0002, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -6, 2, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -4, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0000, 0xfff5, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0, -11, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0003, 0xffe5, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 3, -27, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfff5, 0xffd1, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -11, -47, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -16, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0008, 0xffdb, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 8, -37, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -4, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0xfffa, 0xfff2, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, -6, -14, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0x0000, 0xffe5, ANIM_TARGET, 0x0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gNeverEndingNightmareExplosionSpriteTemplate ANIM_TARGET, 4, 0, -27, ANIM_TARGET, 0 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gNeverEndingNightmareGeyserHexSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -16, 16 return gBattleAnimMove_CorkscrewCrash:: monbg ANIM_ATTACKER invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 11, RGB(24, 24, 24) @fade atker to gray createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_SPIKES, 0, 12, 12, RGB(24, 24, 24) @;Gray playsewithpan SE_ESCALATOR, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 79, 1 - createsprite gCorkscrewCrashChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gCorkscrewCrashChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 call CorkscrewCrashMetalFlare call CorkscrewCrashMetalFlare call CorkscrewCrashMetalFlare @@ -30913,45 +30913,45 @@ gBattleAnimMove_CorkscrewCrash:: waitforvisualfinish stopsound invisible ANIM_ATTACKER - createsprite gCorkscrewCrashCorkscrewFlyUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x4e0, 0x24, 0x15, 0x1, ANIM_ATTACKER + createsprite gCorkscrewCrashCorkscrewFlyUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1248, 36, 21, 1, ANIM_ATTACKER playsewithpan SE_ESCALATOR, SOUND_PAN_ATTACKER fadetobg BG_HIGHSPEED_OPPONENT waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf700, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -2304, 0, 1, -1 waitbgfadein - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET CorkscrewCrashOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET CorkscrewCrashOnPlayer CorkscrewCrashOnOpponent: - createsprite gCorkscrewCrashRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x88, 0x100, 0x38, 0x15 + createsprite gCorkscrewCrashRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 136, 256, 56, 21 waitforvisualfinish delay 10 - createsprite gCorkscrewCrashLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x38, 0xfff0, 0x38, 0x15 + createsprite gCorkscrewCrashLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 56, -16, 56, 21 waitforvisualfinish visible ANIM_TARGET delay 5 goto FinishCorkscrewCrash CorkscrewCrashOnPlayer: - createsprite gCorkscrewCrashLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x08, 0xfff0, 0x0f, 0x15 + createsprite gCorkscrewCrashLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 288, 8, -16, 15, 21 waitforvisualfinish delay 10 - createsprite gCorkscrewCrashRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x38, 0x100, 0x38, 0x15 + createsprite gCorkscrewCrashRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 56, 256, 56, 21 waitforvisualfinish visible ANIM_TARGET delay 5 FinishCorkscrewCrash: - createsprite gCorkscrewCrashStrikeSpriteTemplate, ANIM_TARGET, 2, 0x14 + createsprite gCorkscrewCrashStrikeSpriteTemplate, ANIM_TARGET, 2, 20 delay 16 stopsound playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER create_basic_hitsplat_sprite ANIM_TARGET, 3, x=0, y=0, relative_to=ANIM_TARGET, animation=0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -256, 15, 0, 4 @ shove target down a bit waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET - createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xffc0, 0x0f + createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0, -64, 15 delay 15 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 2, 48 - createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xfffe, 0x03 + createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0, -2, 3 call CorkscrewCrashSpinningWind call CorkscrewCrashSprayRocks delay 6 @@ -30961,7 +30961,7 @@ FinishCorkscrewCrash: delay 6 call CorkscrewCrashSprayRocks delay 0 - createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xfffe, 0x03 + createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0, -2, 3 delay 6 call CorkscrewCrashSprayRocks delay 6 @@ -30969,7 +30969,7 @@ FinishCorkscrewCrash: delay 6 call CorkscrewCrashSprayRocks delay 1 - createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xfffe, 0x03 + createsprite gCorkscrewCrashCorkscrewFlyDownSpriteTemplate, ANIM_TARGET, 3, 0, -2, 3 delay 4 call CorkscrewCrashSprayRocks delay 6 @@ -30983,25 +30983,25 @@ FinishCorkscrewCrash: waitforvisualfinish end CorkscrewCrashSpinningWind: - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0xfff8, 0x1, 0x2c, 0x0 - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x1, 0x3c, 0x1 - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x8, 0x1, 0x3c, 0x2 - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x10, 0x1, 0x3c, 0x3 - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x18, 0x1, 0x3c, 0x4 - createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x20, 0x1, 0x3c, 0x0 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, -8, 1, 44, 0 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 60, 1 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, 8, 1, 60, 2 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, 16, 1, 60, 3 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, 24, 1, 60, 4 + createsprite gWhirlwindLineSpriteTemplate, ANIM_ATTACKER, 3, 0, 32, 1, 60, 0 return CorkscrewCrashMetalFlare: - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gCorkscrewCrashMetalBitSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 return CorkscrewCrashSprayRocks: @@ -31015,24 +31015,24 @@ CorkscrewCrashSprayRocks: gBattleAnimMove_InfernoOverdrive:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_CIRCLE_OF_LIGHT, 0, 10, 10, RGB_RED - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish fadetobg BG_INFERNO_OVERDRIVE waitbgfadeout - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET InfernoOverdriveOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET InfernoOverdriveOnPlayer InfernoOverdriveOnOpponent: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xfb00, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, -1280, 0, 0, -1 goto FinishInfernoOverdrive InfernoOverdriveOnPlayer: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0500, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, 1280, 0, 0, -1 FinishInfernoOverdrive: waitbgfadein monbg ANIM_ATTACKER setalpha 12, 8 - loopsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_ATTACKER, 0x13, 0x8 + loopsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_ATTACKER, 19, 8 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 79, 1 - createsprite gInfernoOverdriveChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + createsprite gInfernoOverdriveChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 call InfernoOverdriveFireSpin call InfernoOverdriveFireSpin call InfernoOverdriveFireSpin @@ -31045,7 +31045,7 @@ FinishInfernoOverdrive: unloadspritegfx ANIM_TAG_SMALL_EMBER @fire unloadspritepal ANIM_TAG_SMALL_EMBER @fire clearmonbg ANIM_ATTACKER - createsprite gInfernoOverdriveSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0x0 @ super power shot + createsprite gInfernoOverdriveSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0 @ super power shot playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER delay 16 createvisualtask AnimTask_ShakeMon2, 2, ANIM_TARGET, 8, 0, 16, 1 @@ -31062,74 +31062,74 @@ FinishInfernoOverdrive: blendoff end InfernoOverdriveFireSpin: - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 return InfernoOverdriveExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gInfernoOverdriveExplosionSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 return gBattleAnimMove_HydroVortex:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish create_surf_wave palette=ANIM_SURF_PAL_SURF delay 24 - panse SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_SURF, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 waitforvisualfinish playsewithpan SE_M_HEADBUTT, SOUND_PAN_ATTACKER - createsprite gDiveBallSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gDiveBallSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish playsewithpan SE_M_DIVE, SOUND_PAN_ATTACKER - createsprite gDiveWaterSplashSpriteTemplate, ANIM_ATTACKER, 3, 0x0 + createsprite gDiveWaterSplashSpriteTemplate, ANIM_ATTACKER, 3, 0 call DiveSetUpWaterDroplets call DiveSetUpWaterDroplets call DiveSetUpWaterDroplets @@ -31139,14 +31139,14 @@ gBattleAnimMove_HydroVortex:: delay 26 invisible ANIM_TARGET waitforvisualfinish - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x7 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 7 delay 5 fadetobg BG_WATER_PULSE waitbgfadeout delay 5 visible ANIM_ATTACKER visible ANIM_TARGET - loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 0x14, 0x3 + loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 20, 3 call HydroVortexBubbles playsewithpan SE_M_WATERFALL, SOUND_PAN_ATTACKER blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(0, 13, 23) @@ -31156,11 +31156,11 @@ gBattleAnimMove_HydroVortex:: unloadspritepal ANIM_TAG_SPLASH unloadspritegfx ANIM_TAG_SWEAT_BEAD unloadspritepal ANIM_TAG_SWEAT_BEAD - createsprite gHydroVortexSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0x0 + createsprite gHydroVortexSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0 playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER invisible ANIM_ATTACKER delay 16 - createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, 0xa, 0xfff8, 0x1, 0x1 + createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, 10, -8, 1, 1 playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 16, RGB(0, 13, 23) createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 8, 60 @@ -31173,83 +31173,83 @@ gBattleAnimMove_HydroVortex:: waitforvisualfinish restorebg waitbgfadeout - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end HydroVortexBubbles: - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0xa, 0xa, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0xa, 0xa, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 10, 10, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 10, 10, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0x14, 0xffec, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 0x14, 0xffec, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 20, -20, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate, ANIM_TARGET, 2, 20, -20, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0xf, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0xfff1, 0xf, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, -15, 15, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, -15, 15, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0x0, 0x0, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0, 0, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0xfff6, 0xffec, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0xfff6, 0xffec, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, -10, -20, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, -10, -20, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0xfff8, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0x10, 0xfff8, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 16, -8, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 16, -8, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0x5, 0x8, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0x5, 0x8, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 5, 8, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 5, 8, 20, ANIM_TARGET delay 4 - createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, 0xfff0, 0x0, 0x14, ANIM_ATTACKER - createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, 0xfff0, 0x0, 0x14, ANIM_TARGET + createsprite gSmallBubblePairSpriteTemplate, ANIM_ATTACKER, 2, -16, 0, 20, ANIM_ATTACKER + createsprite gSmallBubblePairSpriteTemplate ANIM_TARGET, 2, -16, 0, 20, ANIM_TARGET return HydroVortexWhirlpoolHurricane: playsewithpan SE_M_WHIRLPOOL, SOUND_PAN_TARGET - createsprite gHydroVortexHurricaneSpriteTemplate, ANIM_TARGET, 2, 0x0, 0xfff0 - createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, 0xfff6, 0xfff8, 0x1, 0x1 - createvisualtask AnimTask_AnimateGustTornadoPalette, 0x5, 0x1, 0x46 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, 0x1 + createsprite gHydroVortexHurricaneSpriteTemplate, ANIM_TARGET, 2, 0, -16 + createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, -10, -8, 1, 1 + createvisualtask AnimTask_AnimateGustTornadoPalette, 5, 1, 70 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, 1 delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, 0x1 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, 1 delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, 0x1 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, 1 delay 2 - createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, 0xa, 0xfff8, 0x1, 0x1 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, 0x1 + createsprite gHydroVortexImpactSpriteTemplate, ANIM_TARGET, 3, 10, -8, 1, 1 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, 1 delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, 0x1 - createsprite gHydroVortexHurricaneSpriteTemplate, ANIM_TARGET, 2, 0x0, 0xfff0 - createvisualtask AnimTask_AnimateGustTornadoPalette, 0x5, 0x1, 0x46 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, 1 + createsprite gHydroVortexHurricaneSpriteTemplate, ANIM_TARGET, 2, 0, -16 + createvisualtask AnimTask_AnimateGustTornadoPalette, 5, 1, 70 delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, 0x1 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, 1 delay 2 return gBattleAnimMove_BloomDoom:: monbg ANIM_ATTACKER - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 4, RGB_BLACK - loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER, 0x9, 0x3 - createsprite gBloomDoomGreenChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 + loopsewithpan SE_SHINY, SOUND_PAN_ATTACKER, 9, 3 + createsprite gBloomDoomGreenChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 delay 60 blendoff - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4 delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0xc + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12 delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x14 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20 delay 2 - createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x38, 0x18 + createsprite gBloomDoomPetalSpinSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24 playsewithpan SE_M_ATTRACT, SOUND_PAN_ATTACKER waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 4, 0, RGB_BLACK @@ -31283,11 +31283,11 @@ gBattleAnimMove_BloomDoom:: fadetobg BG_BLOOM_DOOM waitbgfadein delay 5 - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x18, 0x10, 0x0, 0x2, 0x2, 0x0, 0x0 - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 0x40, 0x18, 0x0, 0x3, 0x1, 0x1, 0x0 - createsprite gAromatherapyBigFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x10, 0x18, 0x0, 0x2, 0x1, 0x0, 0x0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 24, 16, 0, 2, 2, 0, 0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 64, 24, 0, 3, 1, 1, 0 + createsprite gAromatherapyBigFlowerSpriteTemplate, ANIM_ATTACKER, 0, 16, 24, 0, 2, 1, 0, 0 delay 5 - createsoundtask SoundTask_LoopSEAdjustPanning, 0xf0, 0xffc0, SOUND_PAN_TARGET, 0x1, 0xf, 0x0, 0x5 + createsoundtask SoundTask_LoopSEAdjustPanning, 240, -64, SOUND_PAN_TARGET, 1, 15, 0, 5 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 50, 1 @ shake attacker call BloomDoomHyperBeam call BloomDoomHyperBeam @@ -31307,9 +31307,9 @@ gBattleAnimMove_BloomDoom:: call BloomDoomHyperBeam call BloomDoomHyperBeam call BloomDoomHyperBeam - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 0x30, 0xc, 0x0, 0x4, 0x3, 0x1, 0x0 - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x64, 0x10, 0x0, 0x3, 0x2, 0x0, 0x0 - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x4a, 0x18, 0xb4, 0x3, 0x2, 0x0, 0x0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 48, 12, 0, 4, 3, 1, 0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 100, 16, 0, 3, 2, 0, 0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 74, 24, 180, 3, 2, 0, 0 call BloomDoomHyperBeam call BloomDoomHyperBeam call BloomDoomHyperBeam @@ -31320,16 +31320,16 @@ gBattleAnimMove_BloomDoom:: call BloomDoomHyperBeam call BloomDoomHyperBeam call BloomDoomHyperBeam - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 0x50, 0x1e, 0x0, 0x4, 0x1, 0x1, 0x0 - createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x80, 0xc, 0x0, 0x3, 0x3, 0x0, 0x0 - createsprite gAromatherapyBigFlowerSpriteTemplate, ANIM_ATTACKER, 0, 0x5a, 0x10, 0x0, 0x2, 0x1, 0x0, 0x0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 66, 80, 30, 0, 4, 1, 1, 0 + createsprite gAromatherapySmallFlowerSpriteTemplate, ANIM_ATTACKER, 0, 128, 12, 0, 3, 3, 0, 0 + createsprite gAromatherapyBigFlowerSpriteTemplate, ANIM_ATTACKER, 0, 90, 16, 0, 2, 1, 0, 0 delay 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 11, 0, RGB(13, 31, 12) call BloomDoomPetalBlast createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 16, RGB(13, 31, 12) call BloomDoomPetalBlast - createvisualtask AnimTask_IsTargetPartner, 0x5 - jumpargeq 0x0 0x1 BloomDoomFadeScreenTargetPartner + createvisualtask AnimTask_IsTargetPartner, 5 + jumpargeq 0 1 BloomDoomFadeScreenTargetPartner createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ALL_BUT_DEF), 1, 0, 16, RGB(13, 31, 12) @ green bg pal BloomDoomEnding: call BloomDoomPetalBlast @@ -31341,17 +31341,17 @@ BloomDoomFadeScreenTargetPartner: createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ALL_BUT_ATK_PARTNER), 1, 0, 16, RGB(13, 31, 12) @ green bg pal goto BloomDoomEnding BloomDoomHurricane: - createsprite gBloomDoomHurricaneSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 - createvisualtask AnimTask_AnimateGustTornadoPalette, 0x5, 0x1, 0x46 + createsprite gBloomDoomHurricaneSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 + createvisualtask AnimTask_AnimateGustTornadoPalette, 5, 1, 70 return BloomDoomFlowerGeyser: - createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xfffc, 0x10 @ -4, -0x10 + createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -4, 16 @ -4, -16 delay 0 - createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x100D, 0x10 + createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 4109, 16 delay 0 - createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x4, 0x10 + createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 4, 16 delay 0 - createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0xfff0, 0x10 + createsprite gBloomDoomFlowerGeyserSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -16, 16 delay 0 return BloomDoomHyperBeam: @@ -31361,49 +31361,49 @@ BloomDoomHyperBeam: return BloomDoomPetalBlast: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe0, 0x10 + createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 0, -32, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x16, 0xffea, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 22, -22, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x1e, 0x0, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 30, 0, 16 delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x14, 0x14, 0x10 + createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 20, 20, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0x1c, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 0, 28, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffed, 0x13, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, -19, 19, 16 delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffe5, 0x0, 0x10 + createsprite gBloomDoomExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, -27, 0, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0xffee, 0xffee, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, -18, -18, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x0, 0xffe7, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 0, -25, 16 delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBloomDoomExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x11, 0xffef, 0x10 + createsprite gBloomDoomExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 17, -17, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x17, 0x0, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 23, 0, 16 delay 2 - createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 0x1, 0x0, 0x10, 0x10, 0x10 + createsprite gBloomDoomPetalStarSpriteTemplate, ANIM_TARGET, 2, 1, 0, 16, 16, 16 delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBloomDoomExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gBloomDoomExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 delay 2 return ResetFromGreenScreen: - createvisualtask AnimTask_AllBattlersInvisible, 0xA + createvisualtask AnimTask_AllBattlersInvisible, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 0, RGB(13, 31, 12) @Everything from green restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein waitforvisualfinish delay 5 @@ -31413,118 +31413,118 @@ ResetFromGreenScreen: gBattleAnimMove_GigavoltHavoc:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 6, 0, 16, RGB_BLACK playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createsprite gGigavoltHavocChargingSpearSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 0x18, 190, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 0x18, 22, 12, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 0x18, 121, 13, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 32, 24, 190, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 80, 24, 22, 12, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 156, 24, 121, 13, ANIM_ATTACKER, 1, 1 delay 10 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 0 delay 5 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 delay 5 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0x20, 0x14, 0x0, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0x60, 0x14, 0x1, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0xa0, 0x14, 0x0, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0xe0, 0x14, 0x2, 0x0 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 32, 20, 0, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 96, 20, 1, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 160, 20, 0, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 224, 20, 2, 0 delay 5 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 0x18, 60, 10, ANIM_ATTACKER, 1, 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 0x18, 42, 11, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 100, 24, 60, 10, ANIM_ATTACKER, 1, 0 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 170, 24, 42, 11, ANIM_ATTACKER, 1, 1 delay 0 - createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 0x18, 165, 10, ANIM_ATTACKER, 1, 1 + createsprite gSparkElectricitySpriteTemplate, ANIM_ATTACKER, 0, 238, 24, 165, 10, ANIM_ATTACKER, 1, 1 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER monbg ANIM_ATTACKER playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER @ createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 @charge particles to user -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x10, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x10, 0x2c, 0x60, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x10, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x10, 0x2c, 0xe0, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 16, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 16, 44, 96, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 16, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 16, 44, 224, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x12, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x12, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x12, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x12, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 18, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 18, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 18, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 18, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x14, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x14, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x14, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x14, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 20, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 20, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 20, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 20, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 waitforvisualfinish playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET - createsprite gGigavoltHavocLaunchSpearSpriteTemplate, ANIM_TARGET, 3, 0x0 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x10 + createsprite gGigavoltHavocLaunchSpearSpriteTemplate, ANIM_TARGET, 3, 0 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 16 delay 2 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0, 0xfff0 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -16, -16 delay 14 clearmonbg ANIM_ATTACKER createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 8, 28 @shake target unloadspritegfx ANIM_TAG_HAVOC_SPEAR unloadspritepal ANIM_TAG_HAVOC_SPEAR - createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 0x2c, 0x0, 0x0, 0x3 + createsprite gThunderboltOrbSpriteTemplate, ANIM_TARGET, 3, 44, 0, 0, 3 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 0, 12, RGB(31, 31, 22) -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x20, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x20, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x20, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x20, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x10, 0x2c, 0x20, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x10, 0x2c, 0x60, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x10, 0x2c, 0xa0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x10, 0x2c, 0xe0, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 32, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 32, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 96, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 160, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 16, 44, 224, 40, 2, -32765 playsewithpan SE_M_HYPER_BEAM, SOUND_PAN_TARGET delay 25 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET @@ -31553,60 +31553,60 @@ gBattleAnimMove_GigavoltHavoc:: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 0, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xa + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end HavocSpearGeyser: - createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 @ -4, -0x10 + createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -4, 16 @ -4, -16 delay 1 - createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 @ + createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 @ delay 1 - createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 1 - createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gGigavoltHavocGeyserSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, -16, 16 delay 1 return HavocSpearSparkTarget: -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x20, 0xc, 0x0, 0x14, 0x0, 0x8000 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0x0, 0x14, 0x0, 0x8000 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x20, 0xc, 0x40, 0x14, 0x1, 0x8000 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0x40, 0x14, 0x1, 0x8000 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x20, 0xc, 0x80, 0x14, 0x0, 0x8000 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, 0x80, 0x14, 0x0, 0x8000 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x20, 0xc, SOUND_PAN_ATTACKER, 0x14, 0x2, 0x8000 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x0, 0x10, 0xc, SOUND_PAN_ATTACKER, 0x14, 0x2, 0x8000 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 0, 20, 0, 32768 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 0, 20, 0, 32768 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 64, 20, 1, 32768 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 64, 20, 1, 32768 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, 128, 20, 0, 32768 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, 128, 20, 0, 32768 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 32, 12, SOUND_PAN_ATTACKER, 20, 2, 32768 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 4, 0, 0, 16, 12, SOUND_PAN_ATTACKER, 20, 2, 32768 return gBattleAnimMove_ShatteredPsyche:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPalExclude, 5, ANIM_ATTACKER, 0, 0, 16, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_SetAllNonAttackersInvisiblity, 0x5, 0x1 + createvisualtask AnimTask_SetAllNonAttackersInvisiblity, 5, 1 waitforvisualfinish - createsprite gShatteredPsychePinkChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsychePinkChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 12 - createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gShatteredPsycheRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_SUPERSONIC, SOUND_PAN_ATTACKER delay 4 fadetobg BG_SHATTERED_PSYCHE @@ -31618,8 +31618,8 @@ gBattleAnimMove_ShatteredPsyche:: createvisualtask AnimTask_ScaleMonAndRestore, 5, -4, -4, 15, ANIM_TARGET, 1 waitforvisualfinish ShatteredPsycheCheckBattler: - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET ShatteredPsycheOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET ShatteredPsycheOnPlayer ShatteredPsycheOnOpponent: call ShatteredPsycheFlingOpponent waitforvisualfinish @@ -31640,141 +31640,141 @@ ShatteredPsycheFinish: createsprite gBrickBreakWallShardSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 2, 0, 0 createsprite gBrickBreakWallShardSpriteTemplate ANIM_TARGET, 2, ANIM_TARGET, 3, 0, 0 waitbgfadeout - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end ShatteredPsycheFlingOpponent: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -26, 16, 1, 4 @ -26, +16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x1a, 0xfff0, 0x1, 0x1 @ 26, -16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 26, -16, 1, 1 @ 26, -16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 26, -16, 1, 4 @ -26,-16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0xffe6, 0x10, 0x1, 0x1 @ 26, 16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, -26, 16, 1, 1 @ 26, 16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 32, 1, 4 @ 0,32 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xffe0, 0x1, 0x1 @ 0, -32 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0, -32, 1, 1 @ 0, -32 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, -32, 1, 4 @ 0,-32 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x20, 0x1, 0x1 @ 0, 32 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0, 32, 1, 1 @ 0, 32 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 26, 16, 1, 4 @ 26,16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0xffe6, 0xfff0, 0x1, 0x1 @ -26, -16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, -26, -16, 1, 1 @ -26, -16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -26, -32, 1, 4 @ 26,-16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x1a, 0x10, 0x1, 0x1 @ 0, 32 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 26, 16, 1, 1 @ 0, 32 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 5 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -26, 16, 1, 4 @ -26, +16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x1a, 0xfff0, 0x1, 0x1 @ 26, -16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 26, -16, 1, 1 @ 26, -16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 26, -16, 1, 4 @ -26,-16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0xffe6, 0x10, 0x1, 0x1 @ 26, 16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, -26, 16, 1, 1 @ 26, 16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish return ShatteredPsycheFlingPlayer: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -26, 16, 1, 4 @ -26,-16 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x1a, 0xfff0, 0x1, 0x1 @ 26, 16 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 26, -16, 1, 1 @ 26, 16 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 32, 0, 1, 4 @ 32,0 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0xffe0, 0x0, 0x1, 0x1 @ + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, -32, 0, 1, 1 @ playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -32, 0, 1, 4 @ -32,0 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0x20, 0x0, 0x1, 0x1 @ 32, 0 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 32, 0, 1, 1 @ 32, 0 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x4 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 4 waitforvisualfinish createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 10, 32, 1, 4 @ 10, -32 waitforvisualfinish - createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, 0xfff6, 0x5, 0x1, 0x1 @ 10, -32 + createsprite gShatteredPsycheReflectHitSpriteTemplate, ANIM_TARGET, 3, -10, 5, 1, 1 @ 10, -32 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_TARGET delay 2 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x5 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 5 waitforvisualfinish return gBattleAnimMove_SubzeroSlammer:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_EXPLOSION_2, 0, 12, 12, RGB(3, 17, 26) - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish fadetobg BG_ICE waitbgfadeout - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET SubzeroSlammerOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET SubzeroSlammerOnPlayer SubzeroSlammerOnOpponent: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xfd00, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, -768, 0, 0, -1 goto SubzeroSlammerFinish SubzeroSlammerOnPlayer: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0300, 0x0, 0x0, 0xFFFF + createvisualtask AnimTask_StartSlidingBg, 5, 768, 0, 0, -1 SubzeroSlammerFinish: waitbgfadein monbg ANIM_ATK_PARTNER createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 0, 11, RGB(0, 20, 31) - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x0 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 0 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x4 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 4 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x8 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 8 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0xc + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 12 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x10 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 16 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x14 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 20 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x38, 0x18 + createsprite gSubzeroSlammerIceSpinSpriteTemplate, ANIM_TARGET, 3, 0, 0, 56, 24 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER delay 32 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 11, 0, RGB(0, 20, 31) delay 32 - createvisualtask AnimTask_FrozenIceCubeAttacker, 0x2 - waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 0x11 + createvisualtask AnimTask_FrozenIceCubeAttacker, 2 + waitplaysewithpan SE_M_HAIL, SOUND_PAN_TARGET, 17 waitforvisualfinish call SubzeroSlammerIceSwirl blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(0, 20, 31) @@ -31783,9 +31783,9 @@ SubzeroSlammerFinish: call SubzeroSlammerIceSwirl delay 10 clearmonbg ANIM_ATK_PARTNER - createsoundtask SoundTask_LoopSEAdjustPanning, 0xb0, 0xffc0, SOUND_PAN_TARGET, 0x4, 0x4, 0x0, 0xa - createsprite gIceBeamOuterCrystalSpriteTemplate, ANIM_ATTACKER, 2, 0x14, 0xc, 0x0, 0xc, 0x14 - createsprite gIceBeamOuterCrystalSpriteTemplate, ANIM_ATTACKER, 2, 0x14, 0xfff4, 0x0, 0xfff4, 0x14 + createsoundtask SoundTask_LoopSEAdjustPanning, 176, -64, SOUND_PAN_TARGET, 4, 4, 0, 10 + createsprite gIceBeamOuterCrystalSpriteTemplate, ANIM_ATTACKER, 2, 20, 12, 0, 12, 20 + createsprite gIceBeamOuterCrystalSpriteTemplate, ANIM_ATTACKER, 2, 20, -12, 0, -12, 20 delay 1 call IceBeamCreateCrystals call IceBeamCreateCrystals @@ -31807,7 +31807,7 @@ SubzeroSlammerFinish: call IceCrystalEffectShort delay 5 monbg ANIM_DEF_PARTNER - createvisualtask AnimTask_FrozenIceCube, 0x82 + createvisualtask AnimTask_FrozenIceCube, 130 playsewithpan SE_M_HAIL, SOUND_PAN_TARGET waitforvisualfinish playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET @@ -31824,58 +31824,58 @@ SubzeroSlammerFinish: waitforvisualfinish restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein waitforvisualfinish end SubzeroSlammerExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 delay 3 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xa, 0x14, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 10, 20, 0 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x0 + createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -5, 10, 0 delay 3 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 17, -12, 0 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xf, 0x0 + createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, -15, 15, 0 delay 3 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0x14, 0x2, 0x0 + createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 20, 2, 0 delay 3 - createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, 0xfff6, 0xfff6, 0x0 + createsprite gIceCrystalHitLargeSpriteTemplate, ANIM_TARGET, 2, -10, -10, 0 delay 3 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0x11, 0xfff4, 0x0 + createsprite gSubzeroSlammerExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 17, -12, 0 delay 3 - createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xf, 0x0 + createsprite gIceCrystalHitSmallSpriteTemplate, ANIM_TARGET, 2, -15, 15, 0 delay 3 return SubzeroSlammerIceSwirl: playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 playsewithpan SE_M_PETAL_DANCE, SOUND_PAN_ATTACKER - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gSubzeroSlammerIceSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 return @@ -31899,47 +31899,47 @@ gBattleAnimMove_DevastatingDrake:: unloadspritepal ANIM_TAG_CIRCLE_OF_LIGHT monbg ANIM_ATTACKER playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeDrakeUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x4e0, 0x24, 0x15, 0x1, ANIM_ATTACKER + createsprite gDevastatingDrakeDrakeUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1248, 36, 21, 1, ANIM_ATTACKER clearmonbg ANIM_ATTACKER fadetobg BG_SKY invisible ANIM_ATTACKER invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x1000, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, 4096, 0, -1 waitbgfadein - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET DevastatingDrakeOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET DevastatingDrakeOnPlayer DevastatingDrakeOnOpponent: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x88, 0x100, 0x38, 0x15 @left to right + createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 136, 256, 56, 21 @left to right waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x38, 0xfff0, 0x38, 0x15 @right to left + createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 56, -16, 56, 21 @right to left waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x08, 0x100, 0x0f, 0x15 @left to right + createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 8, 256, 15, 21 @left to right goto DevastatingDrakeFinish DevastatingDrakeOnPlayer: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x08, 0xfff0, 0x0f, 0x15 @right to left + createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 8, -16, 15, 21 @right to left waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x38, 0x100, 0x38, 0x15 @left to right + createsprite gDevastatingDrakeRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 56, 256, 56, 21 @left to right waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x78, 0xfff0, 0x58, 0x15 @right to left + createsprite gDevastatingDrakeLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 120, -16, 88, 21 @right to left DevastatingDrakeFinish: call UnsetPsychicBg waitforvisualfinish visible ANIM_TARGET delay 10 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeStrikeSpriteTemplate, ANIM_TARGET, 2, 0x14 + createsprite gDevastatingDrakeStrikeSpriteTemplate, ANIM_TARGET, 2, 20 delay 16 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_EXPLOSION, 0, 12, 12, RGB(11, 1, 20) @@ -31947,8 +31947,8 @@ DevastatingDrakeFinish: createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 2, 0, 16, RGB(0, 6, 16) @ fade to purple call DevastatingDrakeExplosion delay 6 - createvisualtask AnimTask_IsTargetPartner, 0x5 - jumpargeq 0x0 0x1 DevastatingDrakeFadeTargetPartner + createvisualtask AnimTask_IsTargetPartner, 5 + jumpargeq 0 1 DevastatingDrakeFadeTargetPartner createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ALL_BUT_DEF), 6, 0, 16, RGB(0, 6, 16) call DevastatingDrakeExplosion waitforvisualfinish @@ -31964,36 +31964,36 @@ DevastatingDrakeUniversalEnding: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER call DevastatingDrakeGeyser playsewithpan SE_M_SACRED_FIRE, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -20, -10, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER call DevastatingDrakeGeyser playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 6, 0xffd8, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffe0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0x28, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x40, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x28, 0x14, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x18, 0x0, 0x0, 0x0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -64, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 6, -40, -20, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0, -32, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 40, -20, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 64, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 40, 20, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -40, 20, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER call DevastatingDrakeGeyser playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffa0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 6, 0xffc4, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffd0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0x3c, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x60, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 0x3c, 0x1e, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x30, 0x18, 0x0, 0x0, 0x0 - createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0xffc4, 0x1e, 0x18, 0x0, 0x0, 0x0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -96, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 6, -60, -30, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 0, -48, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 + createsprite gDevastatingDrakePurpleBlastSpriteTemplate, ANIM_ATTACKER, 2, -60, 30, 24, 0, 0, 0 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER call DevastatingDrakeGeyser delay 4 @@ -32002,7 +32002,7 @@ DevastatingDrakeUniversalEnding: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 0, 0 @ reset all colours waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end DevastatingDrakeFadeTargetPartner: @@ -32013,91 +32013,91 @@ DevastatingDrakeFadeTargetPartner: createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ALL_BUT_ATK_PARTNER), 0, 16, 0, RGB(0, 6, 16) @ fade all but target back goto DevastatingDrakeUniversalEnding DevastatingDrakeBuffEffect: - createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gDevastatingDrakePurpleEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return DevastatingDrakeGeyser: - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0x0005, 0x1, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 3, 5, 1, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xfff1, 0x1, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -15, 1, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xfffb, 0x1, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -5, 1, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0012, 0x1, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 18, 1, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0x0005, 0x1, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0, 5, 1, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -4, 16 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xfff5, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -11, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffe1, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -31, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffeb, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -21, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0002, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 2, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -4, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xfff5, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -11, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xffe5, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -27, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffd1, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -47, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffdb, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfffc, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -37, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -4, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0xfff2, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x100D, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, -6, -14, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4109, 16 delay 0 - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xffe5, ANIM_TARGET, 0x0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0x4, 0x10 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -27, ANIM_TARGET, 0 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 4, 16 delay 0 - createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0xfff0, 0x10 + createsprite gDevastatingDrakeHexSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, -16, 16 return DevastatingDrakeExplosion: - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gDevastatingDrakeExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 return gBattleAnimMove_BlackHoleEclipse:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect @@ -32116,73 +32116,73 @@ gBattleAnimMove_BlackHoleEclipse:: unloadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT unloadspritepal ANIM_TAG_CIRCLE_OF_LIGHT playsewithpan SE_M_NIGHTMARE, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseHoleUserSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_ATTACKER, 0x0 - createsprite gBlackHoleEclipseBlueRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gBlackHoleEclipseHoleUserSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_ATTACKER, 0 + createsprite gBlackHoleEclipseBlueRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 delay 8 - createsprite gBlackHoleEclipseBlackRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gBlackHoleEclipseBlackRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 delay 8 - createsprite gBlackHoleEclipseBlueRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gBlackHoleEclipseBlueRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 delay 8 - createsprite gBlackHoleEclipseBlackRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gBlackHoleEclipseBlackRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 delay 8 waitforvisualfinish stopsound createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 7, RGB_BLACK invisible ANIM_ATTACKER - loopsewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 0x10, 0x5 - createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x0 + loopsewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET, 16, 5 + createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 0 delay 3 - createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x10, 0x1 + createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 3, 0, 16, 1 delay 3 - createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x10, 0x2 + createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 4, 0, 16, 2 delay 3 - createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 4, 0x0, 0x10, 0x3 + createsprite gBlackHoleEclipseWispSpriteTemplate, ANIM_ATTACKER, 4, 0, 16, 3 waitforvisualfinish fadetobg BG_BLACK_HOLE_ECLIPSE playsewithpan SE_M_SACRED_FIRE2, SOUND_PAN_TARGET - createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 delay 4 - createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 delay 4 - createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gBlackHoleEclipseRedRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 256, 0 waitbgfadeout unloadspritegfx ANIM_TAG_WISP_ORB unloadspritepal ANIM_TAG_WISP_ORB - createsprite gBlackHoleEclipseHoleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_TARGET, 0x0 @ eclipse at target origin + createsprite gBlackHoleEclipseHoleSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 @ eclipse at target origin delay 16 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 53, -19, 1, 2 @ target down and left (instantaneously (last arg)) delay 2 visible ANIM_TARGET - loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 0xa, 0x5 - createvisualtask AnimTask_RotateMonSpriteToSide, 2, 80, -1024, ANIM_TARGET, 0 @ spin target around (0x50 (time), -0x400 (rot speed)) - createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + loopsewithpan SE_M_SUPERSONIC, SOUND_PAN_TARGET, 10, 5 + createvisualtask AnimTask_RotateMonSpriteToSide, 2, 80, -1024, ANIM_TARGET, 0 @ spin target around (80 (time), -1024 (rot speed)) + createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x30 @ target back to origin (slowly) - createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 48 @ target back to origin (slowly) + createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 21 invisible ANIM_TARGET delay 8 - createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseRedRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gBlackHoleEclipseHoleShrinkSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gBlackHoleEclipseHoleShrinkSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 waitforvisualfinish unloadspritegfx ANIM_TAG_THIN_RING unloadspritepal ANIM_TAG_THIN_RING unloadspritegfx ANIM_TAG_ICE_CHUNK unloadspritepal ANIM_TAG_ICE_CHUNK - createsprite gTargetTwinkleSpriteTemplate, ANIM_ATTACKER, 13, 0x0, 0x0, ANIM_TARGET @detect star + createsprite gTargetTwinkleSpriteTemplate, ANIM_ATTACKER, 13, 0, 0, ANIM_TARGET @detect star delay 2 unloadspritegfx ANIM_TAG_VERTICAL_HEX @red unloadspritepal ANIM_TAG_VERTICAL_HEX @red @@ -32204,29 +32204,29 @@ gBattleAnimMove_BlackHoleEclipse:: end BlackHoleEclipseExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gBlackHoleEclipseRedExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 delay 6 return ResetFromWhiteScreen: - createvisualtask AnimTask_AllBattlersInvisible, 0xA + createvisualtask AnimTask_AllBattlersInvisible, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 0, RGB_WHITE @everything from white restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein waitforvisualfinish delay 5 @@ -32236,20 +32236,20 @@ ResetFromWhiteScreen: gBattleAnimMove_TwinkleTackle:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER call TwinkleTacklePinkStars delay 8 fadetobg BG_TWINKLE_TACKLE - createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitbgfadeout invisible ANIM_TARGET delay 1 - createsprite gTwinkleTackleStarGrowSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gTwinkleTackleStarGrowSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitforvisualfinish - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET TwinkleTackleOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET TwinkleTackleOnPlayer TwinkleTackleOnOpponent: call PlayerTwinkling goto TwinkleTackleFinish @@ -32267,128 +32267,128 @@ TwinkleTackleFinish: call TwinkleTackleStars waitforvisualfinish delay 1 - createsprite gTwinkleTackleYellowImpactSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1, 0x0 + createsprite gTwinkleTackleYellowImpactSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 0 call TwinkleTackleStarsTarget playsewithpan SE_M_WATERFALL, SOUND_PAN_TARGET delay 5 - createvisualtask AnimTask_TwinkleTackleLaunch, 0x2, 89 + createvisualtask AnimTask_TwinkleTackleLaunch, 2, 89 delay 89 playsewithpan SE_M_DETECT, SOUND_PAN_TARGET - createsprite gTwinkleTackleTwinkleSpriteTemplate, ANIM_TARGET, 13, 0x0, 0x0, ANIM_TARGET @detect star + createsprite gTwinkleTackleTwinkleSpriteTemplate, ANIM_TARGET, 13, 0, 0, ANIM_TARGET @detect star waitforvisualfinish delay 16 restorebg delay 24 - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end TwinkleTacklePinkStars: - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x0, 0x0, 0x20, 0x3c - createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, 0, 0, 32, 60 + createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 delay 8 - createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, 0x0, 0x0, 0x20, 0x3c + createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, 0, 0, 32, 60 delay 8 - createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gTwinkleTacklePinkRingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 return PlayerTwinkling: playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 @ user fly on screen on enemy side - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x12, 0x0, 0x0, 0x0, 0x20, 0x1c + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 @ user fly on screen on enemy side + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 18, 0, 0, 0, 32, 28 delay 3 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x1f, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 31, -5, 0, 0, 32, 28 delay 22 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x90, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 144, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x80, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 128, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x70, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 112, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x60, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 96, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 80, -64, 0, 0, 32, 28 delay 1 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_TARGET - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x40, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 64, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 48, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x20, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 32, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 16, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xfff0, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, -16, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, -32, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, -48, -64, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffc0, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, -64, -64, 0, 0, 32, 28 return OpponentTwinkling: playsewithpan SE_M_MORNING_SUN, SOUND_PAN_ATTACKER - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 @ user fly on screen on enemy side - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0xfffb, 0x0, 0x0, 0x20, 0x1c + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 @ user fly on screen on enemy side + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 16, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x20, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 32, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 48, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x40, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 64, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 80, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x60, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 96, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x70, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 112, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x80, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 128, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x90, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 144, -5, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xa0, 0xfffb, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 160, -5, 0, 0, 32, 28 delay 5 playsewithpan SE_M_MORNING_SUN, SOUND_PAN_TARGET - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0xa0, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 160, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x90, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 144, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x80, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 128, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x70, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 112, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x60, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 96, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x50, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 80, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x40, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 64, 44, 0, 0, 32, 28 delay 1 - createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 0x30, 0x2c, 0x0, 0x0, 0x20, 0x1c + createsprite gTwinkleTacklePinkStarSpriteTemplate, ANIM_ATTACKER, 2, 48, 44, 0, 0, 32, 28 return TwinkleTackleStars: playsewithpan SE_M_TAIL_WHIP, SOUND_PAN_ATTACKER - createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xc, 0x4, 0xfff0, 0x12 - createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x4, 0xfff6, 0x12 - createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1, 0xe, 0x4, 0xffee, 0x12 - createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1, 0xc, 0x4, 0xfff0, 0x12 + createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 12, 4, -16, 18 + createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 4, -10, 18 + createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 14, 4, -18, 18 + createsprite gTwinkleTackleDigStarSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 12, 4, -16, 18 return TwinkleTackleStarsTarget: - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xa0, 0xffe0 - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x80, 0xfff0 - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x1a0, 0xffda - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff80, 0xffea - createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xfe80, 0xffe1 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, 160, -32 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, -256, -40 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, 128, -16 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, 416, -38 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, -128, -22 + createsprite gTwinkleTackleImpactStarsSpriteTemplate, ANIM_TARGET, 3, -16, -8, -384, -31 return @ signature z moves gBattleAnimMove_Catastropika:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect @@ -32400,15 +32400,15 @@ gBattleAnimMove_Catastropika:: call EndureEffect delay 8 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish unloadspritegfx ANIM_TAG_FOCUS_ENERGY unloadspritepal ANIM_TAG_FOCUS_ENERGY unloadspritegfx ANIM_TAG_ROUND_SHADOW unloadspritepal ANIM_TAG_ROUND_SHADOW - createvisualtask AnimTask_GetTimeOfDay, 0x2 - jumpargeq 0x0 0x0 CatastropikaDaytime - jumpargeq 0x0 0x2 CatastropikaAfternoon + createvisualtask AnimTask_GetTimeOfDay, 2 + jumpargeq 0 0 CatastropikaDaytime + jumpargeq 0 2 CatastropikaAfternoon CatastropikaNight: fadetobg BG_MAX_LIGHTNING goto CatastropikaFinish @@ -32422,77 +32422,77 @@ CatastropikaFinish: visible ANIM_ATTACKER playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 @charge particles to user - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 224, 40, 2, 3 @ delay 20 @ playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x12, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x12, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x12, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x12, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 18, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 18, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 18, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 18, 44, SOUND_PAN_ATTACKER, 40, 2, 3 @ delay 20 @ playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER @ charge - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x16, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x16, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x16, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x16, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 22, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 22, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 22, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 22, 44, 224, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1a, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1a, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1a, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1a, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 26, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 26, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 26, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 26, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1e, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 30, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x15, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 21, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 restorebg waitbgfadeout @@ -32501,21 +32501,21 @@ CatastropikaFinish: invisible ANIM_ATTACKER visible ANIM_TARGET playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET - createsprite gCatastrokpikaSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0x0 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gCatastrokpikaSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 224, 8, 2, 3 delay 1 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 224, 8, 2, 3 delay 1 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 224, 8, 2, 3 delay 13 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -256, 21, 0, 4 createsprite gDirtPlumeSpriteTemplate, ANIM_TARGET, 2, ANIM_TARGET, 0, 12, -24, -16, 24 @ 12, -48, -16, 24 @@ -32533,9 +32533,9 @@ CatastropikaFinish: call CatastropikaThundering waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 4, 16, 0, RGB_WHITE @ bg to white - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 @fix tgt position + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 @fix tgt position waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end CatastropikaThundering: @@ -32557,27 +32557,27 @@ CatastropikaThundering: gBattleAnimMove_10000000VoltThunderbolt:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call EndureEffect waitforvisualfinish playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite g10MillionVoltBoltYellowFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite g10MillionVoltBoltYellowFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 224, 40, 2, 3 delay 2 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 32, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 96, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 160, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 224, 40, 2, 3 delay 2 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 224, 40, 2, 3 waitforvisualfinish unloadspritegfx ANIM_TAG_ROUND_SHADOW unloadspritepal ANIM_TAG_ROUND_SHADOW @@ -32585,26 +32585,26 @@ gBattleAnimMove_10000000VoltThunderbolt:: unloadspritepal ANIM_TAG_FOCUS_ENERGY fadetobg BG_THUNDER waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xff00, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -256, 0, 1, -1 waitbgfadein visible ANIM_ATTACKER playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 @charge particles to user - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x10, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 16, 44, 224, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x14, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 20, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 16 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET - invert_screen_color scenery=0x101@thunder flash + invert_screen_color scenery=257 @thunder flash createsprite gGrowingChargeOrbSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER @ charge createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 64, -36 delay 1 @@ -32613,13 +32613,13 @@ gBattleAnimMove_10000000VoltThunderbolt:: createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, 64, 12 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x18, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 24, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET - invert_screen_color scenery=0x101@thunder flash + invert_screen_color scenery=257 @thunder flash createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -64, -36 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -64, -20 @@ -32627,13 +32627,13 @@ gBattleAnimMove_10000000VoltThunderbolt:: createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -64, 12 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x1c, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 0, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 64, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, 128, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 28, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 20 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET - invert_screen_color scenery=0x101@thunder flash + invert_screen_color scenery=257 @thunder flash createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -112, -36 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -112, -20 @@ -32641,28 +32641,28 @@ gBattleAnimMove_10000000VoltThunderbolt:: createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -112, 12 delay 20 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, SOUND_PAN_ATTACKER, 40, 2, 3 delay 16 playsewithpan SE_M_THUNDER_WAVE, SOUND_PAN_TARGET - invert_screen_color scenery=0x101@thunder flash + invert_screen_color scenery=257 @thunder flash createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -48, -36 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -48, -20 delay 1 createsprite gLightningSpriteTemplate, ANIM_TARGET, 2, -48, 12 playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x2a, 0x2c, 0x0, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x2a, 0x2c, 0x40, 0x28, 0x1, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x2a, 0x2c, 0x80, 0x28, 0x0, 0x3 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x2a, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, 44, 0, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, 44, 64, 40, 1, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, 44, 128, 40, 0, 3 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 42, 44, SOUND_PAN_ATTACKER, 40, 2, 3 waitforvisualfinish unloadallspritepals call UnsetPsychicBg visible ANIM_TARGET - loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER, 0x5, 0xA + loopsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER, 5, 10 createvisualtask AnimTask_ShakeMon, 2, ANIM_ATTACKER, 0, 4, 50, 1 @flash_anim_tag_with_color tag=ANIM_TAG_ORBS, delay=1, num_blends=12, color1=RGB_RED, blend_y1=16, color2=0, blend_y2=0 call TenMillionVoltThunderboltBeamRed @@ -32693,20 +32693,20 @@ gBattleAnimMove_10000000VoltThunderbolt:: @ call TenMillionVoltThunderboltBeamGreen @ call TenMillionVoltThunderboltBeamPurple playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_ATTACKER -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x25, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x25, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x25, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x25, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 37, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 37, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 37, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 37, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 @ delay 6 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x35, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x35, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x35, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x35, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 53, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 53, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 53, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 53, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 @ delay 6 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x40, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x40, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x40, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x40, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 64, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 64, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 64, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 64, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER createsprite g10MillionVoltBoltShockwaveSpriteTemplate, ANIM_TARGET, 2 @ charge out and in waitforvisualfinish @@ -32723,22 +32723,22 @@ gBattleAnimMove_10000000VoltThunderbolt:: unloadspritegfx ANIM_TAG_POISON_BUBBLE @purple unloadspritepal ANIM_TAG_POISON_BUBBLE @purple createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 2, 44 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x00, 0x30, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 call TenMillionVoltThunderboltSparkGeyser -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x00, 0x37, 0x2c, SOUND_PAN_ATTACKER, 0x28, 0x2, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, SOUND_PAN_ATTACKER, 40, 2, -32765 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 0, 16, RGB_WHITE call TenMillionVoltThunderboltSparkGeyser waitforvisualfinish delay 16 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 3, 16, 0, RGB_WHITE waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end TenMillionVoltThunderboltBeamRed: @@ -32773,74 +32773,74 @@ TenMillionVoltThunderboltBeamPurple: return TenMillionVoltThunderboltSparkGeyser: playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 128, 40, 0, -32765 delay 4 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 128, 40, 0, -32765 delay 4 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 128, 40, 0, -32765 delay 4 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 128, 40, 0, -32765 delay 4 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 8 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 8 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 return gBattleAnimMove_StokedSparksurfer:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gStokedSparksurferFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gStokedSparksurferFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 32, 44, 224, 40, 2, 3 delay 2 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -32, 32, 44, 224, 40, 2, 3 delay 2 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0x20, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0x60, 0x28, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0xa0, 0x28, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffd0, 0x20, 0x2c, 0xe0, 0x28, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 32, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 96, 40, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 160, 40, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0, -48, 32, 44, 224, 40, 2, 3 waitforvisualfinish unloadspritegfx ANIM_TAG_ROUND_SHADOW unloadspritepal ANIM_TAG_ROUND_SHADOW - createvisualtask AnimTask_GetTimeOfDay, 0x2 - jumpargeq 0x0 0x0 StokedSparksurferDay - jumpargeq 0x0 0x2 StokedSparksurferAfternoon + createvisualtask AnimTask_GetTimeOfDay, 2 + jumpargeq 0 0 StokedSparksurferDay + jumpargeq 0 2 StokedSparksurferAfternoon StokedSparksurferNight: fadetobg BG_MAX_LIGHTNING goto StokedSparksurferFinish @@ -32865,22 +32865,22 @@ StokedSparksurferFinish: createsprite gVoltTackleOrbSlideSpriteTemplate, ANIM_ATTACKER, 1 playsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x0 + createvisualtask AnimTask_VoltTackleBolt, 5, 0 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x1 + createvisualtask AnimTask_VoltTackleBolt, 5, 1 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x2 + createvisualtask AnimTask_VoltTackleBolt, 5, 2 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_ATTACKER waitforvisualfinish - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x3 + createvisualtask AnimTask_VoltTackleBolt, 5, 3 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET delay 1 fadetobg BG_ZMOVE_ACTIVATE waitbgfadeout visible ANIM_TARGET - createvisualtask AnimTask_VoltTackleBolt, 0x5, 0x4 + createvisualtask AnimTask_VoltTackleBolt, 5, 4 playsewithpan SE_M_THUNDERBOLT, SOUND_PAN_TARGET waitforvisualfinish unloadspritegfx ANIM_TAG_SPARK @@ -32892,58 +32892,58 @@ StokedSparksurferFinish: unloadspritegfx ANIM_TAG_CIRCLE_OF_LIGHT unloadspritepal ANIM_TAG_CIRCLE_OF_LIGHT createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 5, 28 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x30, 0x2c, 0x80, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x00, 0x30, 0x2c, 0xc0, 0x28, 0x2, 0x8003 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 128, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 48, 44, 192, 40, 2, -32765 call StokedSparksurferSparkGeyser createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_TARGET | F_PAL_ATTACKER), 2, 0, 16, RGB(31, 31, 22) - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x37, 0x2c, 0x80, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x00, 0x37, 0x2c, 0xc0, 0x28, 0x2, 0x8003 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 128, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 55, 44, 192, 40, 2, -32765 call StokedSparksurferSparkGeyser - createvisualtask AnimTask_VoltTackleAttackerReappear, 0x5 @ attacker flicker back + createvisualtask AnimTask_VoltTackleAttackerReappear, 5 @ attacker flicker back playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET delay 4 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x10 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 16 delay 2 - createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0, 0xfff0 + createsprite gElectricPuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -16, -16 delay 4 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_TARGET | F_PAL_ATTACKER), 2, 16, 0, RGB(31, 31, 22) restorebg delay 24 - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end StokedSparksurferSparkGeyser: playsewithpan SE_M_TRI_ATTACK2, SOUND_PAN_TARGET - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 5, 44, 128, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, 0, 21, 44, 128, 40, 0, -32765 delay 4 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffea, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -22, 5, 44, 128, 40, 0, -32765 delay 4 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffd4, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 5, 44, 128, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -44, 21, 44, 128, 40, 0, -32765 delay 4 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x0, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x40, 0x28, 0x1, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x5, 0x2c, 0x80, 0x28, 0x0, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x8003 -@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x8003 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0x0, 0xffbe, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x8003 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 0, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 64, 40, 1, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 5, 44, 128, 40, 0, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 0, 40, 0, -32765 +@ createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 64, 40, 1, -32765 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_TARGET, 4, 0, -66, 21, 44, 128, 40, 0, -32765 delay 26 return @@ -32951,40 +32951,40 @@ StokedSparksurferSparkGeyser: gBattleAnimMove_ExtremeEvoboost:: createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 3, 0, 16, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_AllBattlersInvisible, 0xA + createvisualtask AnimTask_AllBattlersInvisible, 10 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 3, 0, 0, 0 @Remove fading on everyone waitforvisualfinish playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x18, 0xfff4 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffe8, 0xfff4 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 24, -12 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -24, -12 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x28, 0xfff0 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xfff8, 0xfff0 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 40, -16 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -8, -16 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x8, 0xfffe - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffd8, 0xfffe + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 8, -2 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -40, -2 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x5 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x5 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 16, 5 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -32, 5 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x20, 0xfff0 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xfff0, 0xfff0 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 32, -16 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -16, -16 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x5, 0x0 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffd5, 0x0 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 5, 0 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -43, 0 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0x1c, 0x5 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0x5 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 28, 5 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -20, 5 delay 10 playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xf, 0xfff4 - createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 0xffdf, 0xfff4 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, 15, -12 + createsprite gLeerSpriteTemplate, ANIM_ATTACKER, 2, -33, -12 waitforvisualfinish unloadspritegfx ANIM_TAG_LEER unloadspritepal ANIM_TAG_LEER @@ -32994,27 +32994,27 @@ gBattleAnimMove_ExtremeEvoboost:: createvisualtask AnimTask_BlendParticle, 5, ANIM_TAG_CIRCLE_OF_LIGHT, 0, 16, 16, RGB(31, 31, 22) waitforvisualfinish playsewithpan SE_M_REVERSAL, SOUND_PAN_ATTACKER - createsprite gExtremeEvoboostRedChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gExtremeEvoboostRedChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 28, 1296, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostPinkChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gExtremeEvoboostPinkChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 32, 1248, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostIceChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x540, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gExtremeEvoboostIceChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 33, 1344, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostBlackChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x490, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gExtremeEvoboostBlackChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 31, 1168, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostBlueChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x500, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gExtremeEvoboostBlueChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 28, 1280, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostPurpleChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x4d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gExtremeEvoboostPurpleChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 33, 1232, 30, 15, -50, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostYellowChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gExtremeEvoboostYellowChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 28, 1296, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gExtremeEvoboostGreenChargeUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gExtremeEvoboostGreenChargeUpSpriteTemplate, ANIM_TARGET, 2, 0, 32, 1248, 20, 16, -46, ANIM_ATTACKER delay 2 waitforvisualfinish visible ANIM_ATTACKER - loopsewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 0x15, 0xd + loopsewithpan SE_M_REFLECT, SOUND_PAN_ATTACKER, 21, 13 call ExtremeEvoboostColorCircle - createvisualtask AnimTask_StockpileDeformMon, 0x5 @stockpile movement + createvisualtask AnimTask_StockpileDeformMon, 5 @stockpile movement call ExtremeEvoboostColorCharge call ExtremeEvoboostColorCharge call ExtremeEvoboostColorCharge @@ -33026,70 +33026,70 @@ gBattleAnimMove_ExtremeEvoboost:: call ResetFromWhiteScreen end ExtremeEvoboostColorCircle: - createsprite gExtremeEvoboostRedChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostRedChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostPinkChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostPinkChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostIceChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostIceChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostBlackChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostBlackChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostBlueChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostBlueChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostPurpleChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostPurpleChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostYellowChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostYellowChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostGreenChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostGreenChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 return ExtremeEvoboostColorCharge: - createsprite gExtremeEvoboostRedChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostRedChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostRedStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0x37, 0x37, 0xd + createsprite gExtremeEvoboostRedStockpileSpriteTemplate, ANIM_ATTACKER, 2, 55, 55, 13 delay 2 - createsprite gExtremeEvoboostPinkChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostPinkChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostPinkStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0xffc9, 0xffc9, 0xd + createsprite gExtremeEvoboostPinkStockpileSpriteTemplate, ANIM_ATTACKER, 2, -55, -55, 13 delay 2 - createsprite gExtremeEvoboostIceChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostIceChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostIceStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x37, 0xd + createsprite gExtremeEvoboostIceStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0, 55, 13 delay 2 - createsprite gExtremeEvoboostBlackChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostBlackChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostBlackStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffc9, 0xd + createsprite gExtremeEvoboostBlackStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0, -55, 13 delay 2 - createsprite gExtremeEvoboostBlueChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostBlueChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostBlueStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0x37, 0xffde, 0xd + createsprite gExtremeEvoboostBlueStockpileSpriteTemplate, ANIM_ATTACKER, 2, 55, -34, 13 delay 2 - createsprite gExtremeEvoboostPurpleChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostPurpleChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostPurpleStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0x37, 0x22, 0xd + createsprite gExtremeEvoboostPurpleStockpileSpriteTemplate, ANIM_ATTACKER, 2, 55, 34, 13 delay 2 - createsprite gExtremeEvoboostYellowChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostYellowChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostYellowStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0xffc9, 0xffde, 0xd + createsprite gExtremeEvoboostYellowStockpileSpriteTemplate, ANIM_ATTACKER, 2, -55, -34, 13 delay 2 - createsprite gExtremeEvoboostGreenChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff0 + createsprite gExtremeEvoboostGreenChargeCircleSpriteTemplate, ANIM_ATTACKER, 2, 0, -16 delay 2 - createsprite gExtremeEvoboostGreenStockpileSpriteTemplate, ANIM_ATTACKER, 2, 0xffc9, 0x22, 0xd + createsprite gExtremeEvoboostGreenStockpileSpriteTemplate, ANIM_ATTACKER, 2, -55, 34, 13 delay 2 return gBattleAnimMove_PulverizingPancake:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET PulverizingPancakeOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET PulverizingPancakeOnPlayer PulverizingPancakeOnOpponent: - createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, 0x14, 0xffec + createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, 20, -20 goto PulverizingPancakeFinish PulverizingPancakeOnPlayer: - createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, 0xa, 0xfff2 - createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, 0xfff6, 0xfff2 + createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, 10, -14 + createsprite gPulverizingPancakeRedDetectSpriteTemplate, ANIM_ATTACKER, 13, -10, -14 PulverizingPancakeFinish: playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER waitforvisualfinish @@ -33106,7 +33106,7 @@ PulverizingPancakeFinish: call PulverizingPancakeDiggingRun call PulverizingPancakeDiggingRun playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gFlyBallUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 delay 2 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 12, 4, -16, 34 createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 16, 4, -10, 34 @@ -33118,9 +33118,9 @@ PulverizingPancakeFinish: unloadspritepal ANIM_TAG_VERTICAL_HEX fadetobg BG_IN_AIR waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x1000, 0x0, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, 4096, 0, -1 waitbgfadein - createvisualtask AnimTask_PulverizingPancakeWhiteShadow, 0x5, 0x33, 0x33 @first arg is duration, last arg is move speed + createvisualtask AnimTask_PulverizingPancakeWhiteShadow, 5, 51, 51 @first arg is duration, last arg is move speed delay 16 call PulverizingPancakeSlowBackground call PulverizingPancakeSlowBackground @@ -33134,7 +33134,7 @@ PulverizingPancakeFinish: call PulverizingPancakeSlowBackground call PulverizingPancakeSlowBackground call PulverizingPancakeSlowBackground - call PulverizingPancakeSlowBackground @-0x1000 + call PulverizingPancakeSlowBackground @-4096 delay 1 waitbgfadein unloadspritegfx ANIM_TAG_MUD_SAND @dig @@ -33145,7 +33145,7 @@ PulverizingPancakeFinish: create_basic_hitsplat_sprite ANIM_TARGET, 2, x=0, y=0, relative_to=ANIM_TARGET, animation=0@big hit marker delay 0 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 4, 44 - createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x100, 0x0 + createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0, 0, 256, 0 delay 5 call PulverizingPancakeExplosion createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 0, 16, RGB_WHITE @ everything goes white @@ -33162,37 +33162,37 @@ PulverizingPancakeDiggingRun: delay 5 return PulverizingPancakeSlowBackground: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xfd56, 0x0, 0xffff @-0x2aa + createvisualtask AnimTask_StartSlidingBg, 5, 0, -682, 0, -1 @-682 delay 1 return PulverizingPancakeExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x100, 0x0 - createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0, 0, 256, 0 + createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x100, 0x0 - createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gPulverizingPancakeYellowRingSpriteTemplate, ANIM_TARGET, 3, 0, 0, 256, 0 + createsprite gPulverizingPancakeExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 return gBattleAnimMove_GenesisSupernova:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish call SetPsychicBackground playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET GenesisSupernovaOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET GenesisSupernovaOnPlayer GenesisSupernovaOnOpponent: call GenesisSupernovaBuffEffectPlayer_1 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 0, 11, (RGB(28, 3, 22) | RGB_ALPHA) @@ -33207,7 +33207,7 @@ GenesisSupernovaOnPlayer: call GenesisSupernovaBuffOpponent_2 call GenesisSupernovaBuffOpponent_1 GenesisSupernovaFinish: - loopsewithpan SE_M_REVERSAL, SOUND_PAN_ATTACKER, 0x18, 0x6 + loopsewithpan SE_M_REVERSAL, SOUND_PAN_ATTACKER, 24, 6 call GenesisSupernovaReversalWave call GenesisSupernovaReversalWave call GenesisSupernovaReversalWave @@ -33216,7 +33216,7 @@ GenesisSupernovaFinish: unloadspritepal ANIM_TAG_FOCUS_ENERGY @focus energy monbg ANIM_ATTACKER setalpha 12, 8 - createsprite gGenesisSupernovaChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 @charge + createsprite gGenesisSupernovaChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 @charge call GenesisSupernovaFlare @delay 12 per call GenesisSupernovaFlare call GenesisSupernovaFlare @@ -33225,7 +33225,7 @@ GenesisSupernovaFinish: delay 4 unloadspritegfx ANIM_TAG_BLUE_ORB @reversal unloadspritepal ANIM_TAG_BLUE_ORB @reversal - createsprite gGenesisSupernovaSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0x0 + createsprite gGenesisSupernovaSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 0, 11, 0, (RGB(28, 3, 22) | RGB_ALPHA) playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER createvisualtask AnimTask_BlendParticle, 2, ANIM_TAG_SPARKLE_2, 0, 0, 12, RGB_WHITE @@ -33247,132 +33247,132 @@ GenesisSupernovaFinish: waitforvisualfinish end GenesisSupernovaBubbleExplosion: - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, ANIM_TARGET, 0x0, 0x20, 0x3c - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0xa, 0xa, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, ANIM_TARGET, 0, 32, 60 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 10, 10, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER delay 6 - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0x14, 0xffec, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 20, -20, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER delay 6 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, ANIM_TARGET, 0x0, 0x20, 0x3c - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xf, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, ANIM_TARGET, 0, 32, 60 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, -20, 15, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER delay 6 - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER delay 6 - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xffec, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, -20, -20, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER delay 6 - createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 0x10, 0xfff8, 0x0 - createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe0, 0xffe8, ANIM_TARGET, 0x1 + createsprite gGenesisSupernovaBubbleSpriteTemplate, ANIM_TARGET, 2, 16, -8, 0 + createsprite gGenesisSupernovaExplosionSpriteTemplate, ANIM_ATTACKER, 3, -32, -24, ANIM_TARGET, 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER return GenesisSupernovaBuffEffectPlayer_1: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x24, 0x80, 0x24, 0x30, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 36, 128, 36, 48, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x10, 0x80, 0x10, 0x35, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 16, 128, 16, 53, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x45, 0x80, 0x45, 0x3a, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 69, 128, 69, 58, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x60, 0x80, 0x60, 0x30, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 96, 128, 96, 48, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x30, 0x80, 0x30, 0x3c, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 48, 128, 48, 60, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x55, 0x80, 0x55, 0x33, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 85, 128, 85, 51, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return GenesisSupernovaBuffEffectPlayer_2: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x29, 0x80, 0x29, 0x31, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 41, 128, 41, 49, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x73, 0x80, 0x73, 0x32, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 115, 128, 115, 50, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x4a, 0x80, 0x4a, 0x3c, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 74, 128, 74, 60, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x64, 0x80, 0x64, 0x33, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 100, 128, 100, 51, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x2c, 0x80, 0x2c, 0x3d, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 44, 128, 44, 61, 48 delay 2 - createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 0x6c, 0x80, 0x6c, 0x30, 0x30 + createsprite gGenesisSupernovaOrbRiseSpriteTemplate, ANIM_ATTACKER, 50, 108, 128, 108, 48, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return GenesisSupernovaReversalWave: - createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x0 - createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x2a - createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x54 - createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 0x1a, 0x7e + createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 0 + createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 42 + createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 84 + createsprite gGenesisSupernovaReversalSpriteTemplate, ANIM_ATTACKER, 2, 26, 126 return GenesisSupernovaFlare: - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 return GenesisSupernovaBuffOpponent_1: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0x94, 0x40, 0x94, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 148, 64, 148, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0x80, 0x40, 0x80, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 128, 64, 128, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xb5, 0x40, 0xb5, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 181, 64, 181, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xd0, 0x40, 0xd0, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 208, 64, 208, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xa0, 0x40, 0xa0, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 160, 64, 160, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xc5, 0x40, 0xc5, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 197, 64, 197, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return GenesisSupernovaBuffOpponent_2: - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0x99, 0x40, 0x99, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 153, 64, 153, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xe3, 0x40, 0xe3, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 227, 64, 227, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xba, 0x40, 0xba, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 186, 64, 186, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xd4, 0x40, 0xd4, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 212, 64, 212, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0x9c, 0x40, 0x9c, 0x0, 0x30 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 156, 64, 156, 0, 48 delay 2 - createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 0xdc, 0x40, 0xdc, 0x0, 0x30 + createsprite gGenesisSupernovaSpinUpSpriteTemplate, ANIM_ATTACKER, 50, 220, 64, 220, 0, 48 delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return gBattleAnimMove_SinisterArrowRaid:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gArrowRaidFlyUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish unloadspritegfx ANIM_TAG_ROUND_SHADOW unloadspritepal ANIM_TAG_ROUND_SHADOW @@ -33380,63 +33380,63 @@ gBattleAnimMove_SinisterArrowRaid:: waitforvisualfinish visible ANIM_ATTACKER playsewithpan SE_M_WHIRLPOOL, SOUND_PAN_TARGET - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gArrowRaidArrowUpSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 waitforvisualfinish invisible ANIM_ATTACKER - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET SinisterArrowRaidOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET SinisterArrowRaidOnPlayer SinisterArrowRaidOnOpponent: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x88, 0x100, 0x38, 0x15 @left to right + createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 136, 256, 56, 21 @left to right delay 5 - createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x8a, 0x100, 0x3a, 0x15 @left to right + createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 138, 256, 58, 21 @left to right delay 1 - createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x8c, 0x100, 0x3c, 0x15 + createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 140, 256, 60, 21 delay 1 - createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x86, 0x100, 0x36, 0x15 + createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 134, 256, 54, 21 delay 1 - createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x84, 0x100, 0x34, 0x15 + createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 132, 256, 52, 21 delay 1 - createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x88, 0x100, 0x38, 0x15 + createsprite gArrowRaidRightUpSpriteTemplate, ANIM_ATTACKER, 50, -16, 136, 256, 56, 21 waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER @[x0] [y0] [xf] [yf] - createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x38, 0xfff0, 0x38, 0x15 @right to left + createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 56, -16, 56, 21 @right to left delay 5 - createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x36, 0xfff0, 0x36, 0x15 + createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 54, -16, 54, 21 delay 1 - createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x3a, 0xfff0, 0x3a, 0x15 + createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 58, -16, 58, 21 delay 1 - createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x37, 0xfff0, 0x37, 0x15 + createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 55, -16, 55, 21 delay 1 - createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x3c, 0xfff0, 0x3c, 0x15 + createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 60, -16, 60, 21 delay 1 - createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x38, 0xfff0, 0x38, 0x15 + createsprite gArrowRaidLeftUpSpriteTemplate, ANIM_ATTACKER, 50, 288, 56, -16, 56, 21 waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x08, 0x100, 0x0f, 0x15 @left to right + createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 8, 256, 15, 21 @left to right delay 5 - createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x0a, 0x100, 0x11, 0x15 + createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 10, 256, 17, 21 delay 1 - createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x0c, 0x100, 0x13, 0x15 + createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 12, 256, 19, 21 delay 1 - createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x06, 0x100, 0xd, 0x15 + createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 6, 256, 13, 21 delay 1 - createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x04, 0x100, 0xb, 0x15 + createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 4, 256, 11, 21 delay 1 - createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x08, 0x100, 0xf, 0x15 + createsprite gArrowRaidRightDownSpriteTemplate, ANIM_ATTACKER, 50, -16, 8, 256, 15, 21 waitforvisualfinish call SinisterArrowRaidFlyStrike createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 3, 75 @@ -33444,51 +33444,51 @@ SinisterArrowRaidOnOpponent: call SinisterArrowRaidStrikeOpponent call SinisterArrowRaidOpponentExplosion playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 call SinisterArrowRaidFinalExplosion goto SinisterArrowRaidFinish @on player SinisterArrowRaidOnPlayer: playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x08, 0xfff0, 0x0f, 0x15 @right to left + createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 8, -16, 15, 21 @right to left delay 5 - createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x0a, 0xfff0, 0x11, 0x15 + createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 10, -16, 17, 21 delay 1 - createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x0c, 0xfff0, 0x13, 0x15 + createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 12, -16, 19, 21 delay 1 - createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x06, 0xfff0, 0xd, 0x15 + createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 6, -16, 13, 21 delay 1 - createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x04, 0xfff0, 0xb, 0x15 + createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 4, -16, 11, 21 delay 1 - createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x08, 0xfff0, 0xf, 0x15 + createsprite gArrowRaidFaceUpLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 8, -16, 15, 21 waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x38, 0x100, 0x38, 0x15 @left to right + createsprite gArrowRaidFlyRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 56, 256, 56, 21 @left to right delay 5 - createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x36, 0x100, 0x36, 0x15 + createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 54, 256, 54, 21 delay 1 - createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x3a, 0x100, 0x3a, 0x15 + createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 58, 256, 58, 21 delay 1 - createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x37, 0x100, 0x37, 0x15 + createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 55, 256, 55, 21 delay 1 - createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x3c, 0x100, 0x3c, 0x15 + createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 60, 256, 60, 21 delay 1 - createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, 0xfff0, 0x38, 0x100, 0x38, 0x15 + createsprite gArrowRaidRightSpriteTemplate, ANIM_ATTACKER, 50, -16, 56, 256, 56, 21 waitforvisualfinish delay 10 playsewithpan SE_M_VITAL_THROW, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 0x0120, 0x78, 0xfff0, 0x58, 0x15 @right to left + createsprite gArrowRaidFlyLeftSpriteTemplate, ANIM_ATTACKER, 50, 288, 120, -16, 88, 21 @right to left delay 5 - createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x100, 0x8a, 0xfff0, 0x3a, 0x15 + createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 256, 138, -16, 58, 21 delay 1 - createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x100, 0x8c, 0xfff0, 0x3c, 0x15 + createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 256, 140, -16, 60, 21 delay 1 - createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x100, 0x86, 0xfff0, 0x36, 0x15 + createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 256, 134, -16, 54, 21 delay 1 - createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x100, 0x84, 0xfff0, 0x34, 0x15 + createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 256, 132, -16, 52, 21 delay 1 - createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 0x100, 0x88, 0xfff0, 0x38, 0x15 + createsprite gArrowRaidLeftDownSpriteTemplate, ANIM_ATTACKER, 50, 256, 136, -16, 56, 21 waitforvisualfinish call SinisterArrowRaidFlyStrike createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 3, 75 @@ -33496,7 +33496,7 @@ SinisterArrowRaidOnPlayer: call SinisterArrowRaidArrowsStrikePlayer call SinisterArrowRaidPlayerExplosion playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 call SinisterArrowRaidFinalExplosion @ finish SinisterArrowRaidFinish: @@ -33504,168 +33504,168 @@ SinisterArrowRaidFinish: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 16, 0, RGB(12, 4, 14) @ bg to nrml delay 5 - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end SinisterArrowRaidFlyStrike: visible ANIM_TARGET delay 10 playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - createsprite gArrowRaidFlyStrikeSpriteTemplate, ANIM_TARGET, 2, 0x14 + createsprite gArrowRaidFlyStrikeSpriteTemplate, ANIM_TARGET, 2, 20 waitforvisualfinish delay 5 return SinisterArrowRaidStrikeOpponent: - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x95, 0xfff0, 0xb5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 149, -16, 181, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x75, 0xfff0, 0x95, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 117, -16, 149, 64, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xa5, 0xfff0, 0xc5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 165, -16, 197, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x6f, 0xfff0, 0x8f, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 111, -16, 143, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x7b, 0xfff0, 0x9b, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 123, -16, 155, 64, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xa2, 0xfff0, 0xc2, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 162, -16, 194, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x82, 0xfff0, 0xa2, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 130, -16, 162, 64, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x87, 0xfff0, 0xa7, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 135, -16, 167, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x72, 0xfff0, 0x92, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 114, -16, 146, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x8b, 0xfff0, 0xab, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 139, -16, 171, 64, 4 delay 1 return SinisterArrowRaidOpponentExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x95, 0xfff0, 0xb5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 149, -16, 181, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x75, 0xfff0, 0x95, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 117, -16, 149, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xa5, 0xfff0, 0xc5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 165, -16, 197, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x6f, 0xfff0, 0x8f, 0x40, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 111, -16, 143, 64, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x7b, 0xfff0, 0x9b, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 123, -16, 155, 64, 4 delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xa2, 0xfff0, 0xc2, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 162, -16, 194, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x82, 0xfff0, 0xa2, 0x40, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 130, -16, 162, 64, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x87, 0xfff0, 0xa7, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 135, -16, 167, 64, 4 delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x72, 0xfff0, 0x92, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 114, -16, 146, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x85, 0xfff0, 0xa5, 0x40, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 133, -16, 165, 64, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x8b, 0xfff0, 0xab, 0x40, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 139, -16, 171, 64, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 delay 1 return SinisterArrowRaidArrowsStrikePlayer: - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x5, 0xfff0, 0x55, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 5, -16, 85, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffe5, 0xfff0, 0x35, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -27, -16, 53, 144, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x15, 0xfff0, 0x65, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 21, -16, 101, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffdf, 0xfff0, 0x2f, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -33, -16, 47, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffeb, 0xfff0, 0x3b, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -21, -16, 59, 144, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x12, 0xfff0, 0x62, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 18, -16, 98, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff2, 0xfff0, 0x42, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -14, -16, 66, 144, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff7, 0xfff0, 0x47, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -9, -16, 71, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffe2, 0xfff0, 0x32, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -30, -16, 50, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 delay 1 playsewithpan SE_M_HORN_ATTACK, SOUND_PAN_TARGET - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xfff0, 0x4b, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -5, -16, 75, 144, 4 delay 1 return SinisterArrowRaidPlayerExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x5, 0xfff0, 0x55, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 5, -16, 85, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffe5, 0xfff0, 0x35, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -27, -16, 53, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x15, 0xfff0, 0x65, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 21, -16, 101, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffdf, 0xfff0, 0x2f, 0x90, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -33, -16, 47, 144, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffeb, 0xfff0, 0x3b, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -21, -16, 59, 144, 4 delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0x12, 0xfff0, 0x62, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 18, -16, 98, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff2, 0xfff0, 0x42, 0x90, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -14, -16, 66, 144, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff7, 0xfff0, 0x47, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -9, -16, 71, 144, 4 delay 1 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xffe2, 0xfff0, 0x32, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -30, -16, 50, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfff5, 0xfff0, 0x45, 0x90, 0x4 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -11, -16, 69, 144, 4 delay 1 - createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xfff0, 0x4b, 0x90, 0x4 - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gArrowRaidArrowOnslaughtSpriteTemplate, ANIM_TARGET, 2, -5, -16, 75, 144, 4 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 1 return SinisterArrowRaidFinalExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gArrowRaidExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 delay 6 return @@ -33675,16 +33675,16 @@ gBattleAnimMove_MaliciousMoonsault:: waitbgfadeout setalpha 12, 8 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 0x6, 0x1, 0x0 + createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 0 delay 1 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, -20, -10, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gFirePlumeSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 waitforvisualfinish delay 0 monbg ANIM_ATTACKER @@ -33692,17 +33692,17 @@ gBattleAnimMove_MaliciousMoonsault:: call MaliciousMoonsaultFireSpin call MaliciousMoonsaultFireSpin clearmonbg ANIM_ATTACKER - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultRedFlySpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gMaliciousMoonsaultRedFlySpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 336 call MaliciousMoonsaultFireSpin createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 5, 0, 10, RGB_BLACK @ target darkens delay 26 playsewithpan SE_M_SWAGGER, SOUND_PAN_TARGET createsprite gMaliciousMoonsaultRedBounceSpriteTemplate, ANIM_TARGET, 3 delay 7 - createsprite gMaliciousMoonsaultRedImpactSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1, 0x0 + createsprite gMaliciousMoonsaultRedImpactSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 0 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -256, 21, 0, 4 call MaliciousMoonsaultExplosion delay 6 @@ -33710,87 +33710,87 @@ gBattleAnimMove_MaliciousMoonsault:: createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 1, 0, 16, RGB(27, 0, 0) @ fade all to red delay 6 call MaliciousMoonsaultExplosion - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 waitforvisualfinish call ResetFromRedScreen blendoff end MaliciousMoonsaultFireSpin: - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1296, 30, 13, 50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2f, 0x490, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 47, 1168, 25, 11, -42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x30, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 48, 1248, 20, 16, -46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x500, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1280, 25, 16, 46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x540, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1344, 20, 8, 42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x4d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1232, 30, 15, -50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2f, 0x490, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 47, 1168, 25, 11, -42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1296, 30, 13, 50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x500, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1280, 25, 16, 46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x30, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 48, 1248, 20, 16, -46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x4d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1232, 30, 15, -50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x540, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1344, 20, 8, 42, ANIM_ATTACKER delay 1 return MaliciousMoonsaultExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gMaliciousMoonsaultExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gMaliciousMoonsaultFireblastSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 return gBattleAnimMove_OceanicOperetta:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish - createvisualtask AnimTask_CreateSpotlight, 0x2 - createvisualtask AnimTask_HardwarePaletteFade, 0x2, 0xf8, 0x3, 0x0, 0xa, 0x0 + createvisualtask AnimTask_CreateSpotlight, 2 + createvisualtask AnimTask_HardwarePaletteFade, 2, 248, 3, 0, 10, 0 waitforvisualfinish - createsprite gOceanOperaSpotlightSpriteTemplate, ANIM_TARGET, 2, 0x0, 0xfff8, 0x50 @spotlight + createsprite gOceanOperaSpotlightSpriteTemplate, ANIM_TARGET, 2, 0, -8, 80 @spotlight playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER call OceanicOperettaBuffEffect delay 8 @@ -33804,170 +33804,170 @@ gBattleAnimMove_OceanicOperetta:: unloadspritepal ANIM_TAG_FOCUS_ENERGY unloadspritegfx ANIM_TAG_SPOTLIGHT unloadspritepal ANIM_TAG_SPOTLIGHT - createvisualtask AnimTask_HardwarePaletteFade, 0x2, 0xf8, 0x3, 0xa, 0x0, 0x1 + createvisualtask AnimTask_HardwarePaletteFade, 2, 248, 3, 10, 0, 1 waitforvisualfinish - createvisualtask AnimTask_RemoveSpotlight, 0x2 + createvisualtask AnimTask_RemoveSpotlight, 2 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 6, RGB(0, 13, 23) invisible ANIM_ATTACKER - createsprite gOceanOperaBlueChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 @charge + createsprite gOceanOperaBlueChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 @charge delay 2 createvisualtask AnimTask_ShakeMon, 5, ANIM_ATTACKER, 0, 2, 80, 1 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 playsewithpan SE_M_GRASSWHISTLE, SOUND_PAN_ATTACKER - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, 0x0, 0x0 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gOceanOperaBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, 0, 0 + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gWhirlpoolSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 26 visible ANIM_TARGET - loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 0x14, 0x5 - createsprite gOceanOperaMovingOrbsSpriteTemplate, ANIM_ATTACKER, 50, 0x0, 0x0, 0x0, 0x0, 0x60, 0x0 @mist ball + loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 20, 5 + createsprite gOceanOperaMovingOrbsSpriteTemplate, ANIM_ATTACKER, 50, 0, 0, 0, 0, 96, 0 @mist ball delay 92 visible ANIM_ATTACKER delay 0 - loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 0x14, 0x1 - createsprite gOceanOperaBlueOrbsSpriteTemplate, ANIM_ATTACKER, 50, 0x0, ANIM_TARGET, 0x0, 0x0, 0x0, 0x35 + loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 20, 1 + createsprite gOceanOperaBlueOrbsSpriteTemplate, ANIM_ATTACKER, 50, 0, ANIM_TARGET, 0, 0, 0, 53 delay 5 playsewithpan SE_M_MEGA_KICK, SOUND_PAN_ATTACKER - createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 delay 4 - createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 delay 4 - createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 delay 4 - createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 delay 4 - createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 + createsprite gOceanOperaExpandingRingSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 delay 16 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 8, 64 call OceanicOperettaExplosion createvisualtask AnimTask_BlendBattleAnimPal, 2, F_PAL_TARGET, 2, 0, 11, RGB(0, 13, 23) - createvisualtask AnimTask_CreateRaindrops, 0x2, 0x0, 0x3, 0x78 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120 call OceanicOperettaExplosion call OceanicOperettaExplosion playsewithpan SE_M_RAIN_DANCE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_CreateRaindrops, 0x2, 0x0, 0x3, 0x78 + createvisualtask AnimTask_CreateRaindrops, 2, 0, 3, 120 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 2, F_PAL_TARGET, 2, 11, 0, RGB(0, 13, 23) waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 6, 0, RGB(0, 13, 23) waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end OceanicOperettaBuffEffect: - createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gOceanOperaBlueFlareSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return OceanicOperettaExplosion: - createsprite gOceanOperaSparkleSpriteTemplate, ANIM_ATTACKER, 51, 0xfff1, 0x0, ANIM_TARGET, 0x0, 0x20, 0x3c + createsprite gOceanOperaSparkleSpriteTemplate, ANIM_ATTACKER, 51, -15, 0, ANIM_TARGET, 0, 32, 60 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gOceanOperaSparkleSpriteTemplate, ANIM_ATTACKER, 51, 0xc, 0xfffb, ANIM_TARGET, 0x0, 0x20, 0x3c + createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, -16, 16, ANIM_TARGET, 1 + createsprite gOceanOperaSparkleSpriteTemplate, ANIM_ATTACKER, 51, 12, -5, ANIM_TARGET, 0, 32, 60 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gOceanOperaExplosionSpriteTemplate, ANIM_ATTACKER, 51, 16, 16, ANIM_TARGET, 1 delay 6 return gBattleAnimMove_SplinteredStormshards:: - createvisualtask AnimTask_GetLycanrocForm, 0x2 - jumpargeq 0x0 0x0 SplinteredStormshardsDayForme - jumpargeq 0x0 0x2 SplinteredStormshardsDuskForme + createvisualtask AnimTask_GetLycanrocForm, 2 + jumpargeq 0 0 SplinteredStormshardsDayForme + jumpargeq 0 2 SplinteredStormshardsDuskForme SplinteredStormshardsNightForme: fadetobg BG_ROCK_FIELD_NIGHT goto SplinteredStormshardsFinishFade @@ -33979,22 +33979,22 @@ SplinteredStormshardsDuskForme: SplinteredStormshardsFinishFade: waitbgfadeout waitforvisualfinish - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET SplinteredStormshardsByOpponent + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET SplinteredStormshardsByOpponent SplinteredStormshardsByPlayer: - loopsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET, 0x10, 0xc + loopsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET, 16, 12 call SplinteredStormshardsPlayer_Rising1 delay 2 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 call SplinteredStormshardsPlayer_Rising1 call SplinteredStormshardsPlayer_Rising2 visible ANIM_ATTACKER delay 1 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x60, 0x80, 0x60, 0x30, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 96, 128, 96, 48, 48 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(31, 31, 22) createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 delay 2 @@ -34004,16 +34004,16 @@ SplinteredStormshardsByPlayer: waitforvisualfinish waitforvisualfinish playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 @lunge forward + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 @lunge forward delay 2 invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 @superpower + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 @superpower createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 96, 1 @shake target up and down - createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0x18, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_ATTACKER, 2, -48, 24, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 4 - createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0x1, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_ATTACKER, 2, -48, 1, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 4 @@ -34025,7 +34025,7 @@ SplinteredStormshardsEnd: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 4, 16, 0, RGB_WHITE waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish restorebg waitbgfadein @@ -34033,46 +34033,46 @@ SplinteredStormshardsEnd: end SplinteredStormshardsExplosionOpponent: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x20, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_TARGET, 2, -48, 32, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x0, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, -48, 0, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0xfff8, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, -48, -8, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x20, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterOpponentSteepSpriteTemplate, ANIM_TARGET, 2, -48, 32, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x0, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterOpponentShallowSpriteTemplate, ANIM_TARGET, 2, -48, 0, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 return SplinteredStormshardsByOpponent: - loopsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET 0x10 0xc + loopsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET 16 12 call SplinteredStormshardsOpponent_Rising1 delay 2 - createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSplinteredShardsFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 call SplinteredStormshardsOpponent_Rising1 call SplinteredStormshardsOpponent_Rising2 visible ANIM_ATTACKER delay 1 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xd0, 0x40, 0xd0, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 208, 64, 208, 0, 48 blend_color_cycle selector=F_PAL_ATTACKER, delay=2, num_blends=2, initial_blend_y=0, target_blend_y=11, color=RGB(31, 31, 22) createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 delay 2 @@ -34081,16 +34081,16 @@ SplinteredStormshardsByOpponent: delay 16 waitforvisualfinish playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 @lunge forward + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 @lunge forward delay 2 invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 @superpower + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 @superpower createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 96, 1 @shake target up and down - createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x18, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, -48, 24, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 4 - createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x30, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, -48, 48, 0, 0, 10, 1, 0, 1 delay 4 delay 4 call SplinteredStormshardsExplosionOnPlayer @@ -34098,146 +34098,146 @@ SplinteredStormshardsByOpponent: goto SplinteredStormshardsEnd SplinteredStormshardsExplosionOnPlayer: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x20, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, -48, 32, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x35, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, -48, 53, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x1c, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, -48, 28, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x16, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterPlayerShallowSpriteTemplate, ANIM_TARGET, 2, -48, 22, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 - createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, 0xffd0, 0x2d, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 + createsprite gSplinteredShardsSplinterPlayerSteepSpriteTemplate, ANIM_TARGET, 2, -48, 45, 0, 0, 10, 1, 0, 1 delay 4 playsewithpan SE_M_ROCK_THROW, SOUND_PAN_TARGET delay 2 return SplinteredStormshardsBrownExplode: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gSplinteredShardsExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 return SplinteredStormshardsPlayer_Rising1: - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x24, 0x80, 0x24, 0x30, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 36, 128, 36, 48, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x10, 0x80, 0x10, 0x35, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 16, 128, 16, 53, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x45, 0x80, 0x45, 0x3a, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 69, 128, 69, 58, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x60, 0x80, 0x60, 0x30, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 96, 128, 96, 48, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x30, 0x80, 0x30, 0x3c, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 48, 128, 48, 60, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x55, 0x80, 0x55, 0x33, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 85, 128, 85, 51, 48 delay 2 return SplinteredStormshardsPlayer_Rising2: - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x29, 0x80, 0x29, 0x31, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 41, 128, 41, 49, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x73, 0x80, 0x73, 0x32, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 115, 128, 115, 50, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x4a, 0x80, 0x4a, 0x3c, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 74, 128, 74, 60, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x64, 0x80, 0x64, 0x33, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 100, 128, 100, 51, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x2c, 0x80, 0x2c, 0x3d, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 44, 128, 44, 61, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x6c, 0x80, 0x6c, 0x30, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 108, 128, 108, 48, 48 delay 2 return SplinteredStormshardsOpponent_Rising1: - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x94, 0x40, 0x94, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 148, 64, 148, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x80, 0x40, 0x80, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 128, 64, 128, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xb5, 0x40, 0xb5, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 181, 64, 181, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xd0, 0x40, 0xd0, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 208, 64, 208, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xa0, 0x40, 0xa0, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 160, 64, 160, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xc5, 0x40, 0xc5, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 197, 64, 197, 0, 48 delay 2 return SplinteredStormshardsOpponent_Rising2: - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x99, 0x40, 0x99, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 153, 64, 153, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xe3, 0x40, 0xe3, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 227, 64, 227, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xba, 0x40, 0xba, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 186, 64, 186, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xd4, 0x40, 0xd4, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 212, 64, 212, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0x9c, 0x40, 0x9c, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 156, 64, 156, 0, 48 delay 2 - createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 0xdc, 0x40, 0xdc, 0x0, 0x30 + createsprite gSplinteredShardsRisingSpearSpriteTemplate, ANIM_ATTACKER, 50, 220, 64, 220, 0, 48 delay 2 return gBattleAnimMove_LetsSnuggleForever:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_RockMonBackAndForth, 5, ANIM_ATTACKER, 2, 0 - createsprite gSnuggleForeverHeartSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x14 + createsprite gSnuggleForeverHeartSpriteTemplate, ANIM_ATTACKER, 3, 0, 20 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x1, 0x1, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 1, 0 delay 7 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x3, 0x3, 0x80 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 3, 3, 128 delay 8 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x2, 0x0, 0x80 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 128 delay 7 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1, 0x1, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 1, 0 delay 8 playsewithpan SE_M_CHARM, SOUND_PAN_ATTACKER delay 7 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x3, 0x0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 3, 0 delay 7 fadetobg BG_SNUGGLE_FOREVER waitbgfadeout invisible ANIM_ATTACKER delay 1 - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 delay 16 playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER waitforvisualfinish - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 delay 16 playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER waitforvisualfinish - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 delay 16 playsewithpan SE_M_FAINT_ATTACK, SOUND_PAN_ATTACKER createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 2, 50, 1 @@ -34252,15 +34252,15 @@ gBattleAnimMove_LetsSnuggleForever:: createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 2, 0, 16, RGB_BLACK waitforvisualfinish playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gSnuggleForeverEyesSpriteTemplate, ANIM_ATTACKER, 13, 0xa, 0xfff2 - createsprite gSnuggleForeverEyesSpriteTemplate, ANIM_ATTACKER, 13, 0xfff6, 0xfff2 + createsprite gSnuggleForeverEyesSpriteTemplate, ANIM_ATTACKER, 13, 10, -14 + createsprite gSnuggleForeverEyesSpriteTemplate, ANIM_ATTACKER, 13, -10, -14 delay 32 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 1, 0, 16, RGB(29, 28, 21) - createvisualtask AnimTask_GrowTarget, 0x5 + createvisualtask AnimTask_GrowTarget, 5 delay 5 - loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 0x14, 10 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x0, 0xffee, 0xa, 0xa, 0x4 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x1, 0x12, 0xa, 0xa, 0x4 + loopsewithpan SE_M_CRABHAMMER, SOUND_PAN_TARGET, 20, 10 + createvisualtask AnimTask_TranslateMonElliptical, 2, 0, -18, 10, 10, 4 + createvisualtask AnimTask_TranslateMonElliptical, 2, 1, 18, 10, 10, 4 call LetsSnuggleForeverStars_1 call LetsSnuggleForeverImpacts call LetsSnuggleForeverStars_2 @@ -34269,8 +34269,8 @@ gBattleAnimMove_LetsSnuggleForever:: playsewithpan SE_M_FLAMETHROWER, SOUND_PAN_TARGET call LetsSnuggleForeverStars_2 call LetsSnuggleForeverImpacts - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x0, 0xffee, 0x6, 0x6, 0x4 - createvisualtask AnimTask_TranslateMonElliptical, 0x2, 0x1, 0x12, 0x6, 0x6, 0x4 + createvisualtask AnimTask_TranslateMonElliptical, 2, 0, -18, 6, 6, 4 + createvisualtask AnimTask_TranslateMonElliptical, 2, 1, 18, 6, 6, 4 call LetsSnuggleForeverStars_1 delay 0 call LetsSnuggleForeverImpacts @@ -34306,20 +34306,20 @@ LetsSnuggleForeverImpacts: delay 8 return LetsSnuggleForeverStars_1: - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xa0, 0xffe0 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff00, 0xffd8 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x80, 0xfff0 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0x1a0, 0xffda - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xff80, 0xffea - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0xfff8, 0xfe80, 0xffe1 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, 160, -32 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, -256, -40 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, 128, -16 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, 416, -38 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, -128, -22 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, -16, -8, -384, -31 return LetsSnuggleForeverStars_2: - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xa0, 0xffe0 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff00, 0xffd8 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x80, 0xfff0 - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0x1a0, 0xffda - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xff80, 0xffea - createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x8, 0xfe80, 0xffe1 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, 160, -32 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, -256, -40 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, 128, -16 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, 416, -38 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, -128, -22 + createsprite gSnuggleForeverStarSpriteTemplate, ANIM_TARGET, 3, 16, 8, -384, -31 return @@ -34331,8 +34331,8 @@ gBattleAnimMove_ClangorousSoulblaze:: call ClangorousSoulblazeBuffEffect call ClangorousSoulblazeBuffEffect waitforvisualfinish - createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 0xfff0, 0x0, 0x0, 0x0, 0xa, ANIM_ATTACKER, ANIM_RIGHT_FIST, 0x1 - createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0xa, ANIM_ATTACKER, ANIM_LEFT_FIST, 0x1 + createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, -16, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_RIGHT_FIST, 1 + createsprite gClangorousSoulRedFistTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 10, ANIM_ATTACKER, ANIM_LEFT_FIST, 1 playsewithpan SE_M_VITAL_THROW2, SOUND_PAN_TARGET waitforvisualfinish unloadspritegfx ANIM_TAG_HORSESHOE_SIDE_FIST @@ -34341,23 +34341,23 @@ gBattleAnimMove_ClangorousSoulblaze:: unloadspritepal ANIM_TAG_SPARKLE_2 @stars waitforvisualfinish playsewithpan SE_SHINY, SOUND_PAN_ATTACKER - createsprite gClangorousSoulRedRingTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gClangorousSoulRedRingTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 waitforvisualfinish playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazeWhiteFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gClangoorousSoulblazeWhiteFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 delay 2 - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0xFFE0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, -32, 1, -1 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, -768, 10, 0, 42 - createsprite gSlideMonToOffsetPartnerSpriteTemplate, ANIM_ATTACKER, 2, ANIM_DEF_PARTNER, 0xfd00, 0xa, 0x0, 0x2a + createsprite gSlideMonToOffsetPartnerSpriteTemplate, ANIM_ATTACKER, 2, ANIM_DEF_PARTNER, -768, 10, 0, 42 delay 32 - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x0, 0x20, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 0, 32, 1, -1 delay 12 setalpha 12, 8 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 1, 0, 4, RGB_BLACK visible ANIM_ATTACKER monbg ANIM_ATTACKER - loopsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 0xe, 0xa - createsprite gClangoorousSoulblazePurpleChargeSpriteTemplate, ANIM_ATTACKER, 2, 0x0 @charge + loopsewithpan SE_M_PSYBEAM2, SOUND_PAN_ATTACKER, 14, 10 + createsprite gClangoorousSoulblazePurpleChargeSpriteTemplate, ANIM_ATTACKER, 2, 0 @charge call ClangorousSoulblazeEnergySwirl call ClangorousSoulblazeEnergySwirl call ClangorousSoulblazeEnergySwirl @@ -34380,8 +34380,8 @@ gBattleAnimMove_ClangorousSoulblaze:: delay 0 monbg ANIM_TARGET playsewithpan SE_M_GIGA_DRAIN, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0x0, 0x0 @music note + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 0, 0 @music note delay 5 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 2, 60 createvisualtask AnimTask_HorizontalShake, 5, ANIM_DEF_PARTNER, 2, 60 @@ -34392,221 +34392,221 @@ gBattleAnimMove_ClangorousSoulblaze:: call ClangorousSoulblazePulse_3 delay 5 call ClangorousSoulblazePulse_4 - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET ClangorousSoulblazeOnOpponent + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET ClangorousSoulblazeOnOpponent ClangorousSoulblazeOnPlayer: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0xfff0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, -16, ANIM_ATTACKER, 1 delay 5 call ClangorousSoulblazePulse_5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_ATTACKER, 1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x20, 0xffe0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 32, -32, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x20, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 32, 0, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x30, 0xffe0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 48, -32, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x30, 0xfff0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 48, -16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_4 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x35, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 53, 0, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_5 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x40, 0x10, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 64, 16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x40, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 64, 0, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x45, 0xfff0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 69, -16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x50, 0x10, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 80, 16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_4 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x50, 0xffe0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 80, -32, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_5 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x60, 0xfff0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 96, -16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x60, 0xffe0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 96, -32, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 4, 0, 16, RGB_WHITE playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x65, 0xfff0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 101, -16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x65, 0xffe0, ANIM_ATTACKER, 0x1 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 101, -32, ANIM_ATTACKER, 1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, ANIM_TARGET, 1 call ClangorousSoulblazePulse_4 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 24, -24, ANIM_TARGET, 1 call ClangorousSoulblazePulse_5 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -16, 16, ANIM_TARGET, 1 call ClangorousSoulblazePulse_1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, -24, -12, ANIM_TARGET, 1 call ClangorousSoulblazePulse_2 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_ATTACKER, 3, 16, 16, ANIM_TARGET, 1 goto FINISH_SOULBLAZE ClangorousSoulblazeOnOpponent: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x15, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 21, ANIM_ATTACKER, 1 delay 5 call ClangorousSoulblazePulse_5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 0, ANIM_ATTACKER, 1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x20, 0x25, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 32, 37, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x20, 0x5, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 32, 5, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x30, 0x25, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 48, 37, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x30, 0x15, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 48, 21, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_4 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x35, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 53, 0, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_5 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x40, 0xa, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 64, 10, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x40, 0x0, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 64, 0, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x45, 0x10, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 69, 16, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x50, 0x30, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 80, 48, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_4 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x50, 0x25, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 80, 37, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_5 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x60, 0x40, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 96, 64, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_1 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x60, 0x45, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 96, 69, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_2 delay 5 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_BATTLERS_2), 4, 0, 16, RGB_WHITE playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x65, 0x35, ANIM_ATTACKER, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 101, 53, ANIM_ATTACKER, 1 call ClangorousSoulblazePulse_3 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x65, 0x40, ANIM_ATTACKER, 0x1 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 101, 64, ANIM_ATTACKER, 1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 call ClangorousSoulblazePulse_4 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 call ClangorousSoulblazePulse_5 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 call ClangorousSoulblazePulse_1 delay 5 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 call ClangorousSoulblazePulse_2 delay 5 - createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 FINISH_SOULBLAZE: waitforvisualfinish clearmonbg ANIM_TARGET delay 5 call ResetFromWhiteScreen blendoff - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x10 - createsprite gSlideMonToOriginalPosPartnerSpriteTemplate, ANIM_ATTACKER, 2, ANIM_DEF_PARTNER, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 16 + createsprite gSlideMonToOriginalPosPartnerSpriteTemplate, ANIM_ATTACKER, 2, ANIM_DEF_PARTNER, 0, 16 waitforvisualfinish end ClangorousSoulblazeEnergySwirl: - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x180, 0x32, 0x8, 0x32, ANIM_ATTACKER - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 28, 384, 50, 8, 50, ANIM_ATTACKER + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 2 - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x20, 0xf0, 0x28, 0xb, 0xffd2, ANIM_ATTACKER + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 32, 240, 40, 11, -46, ANIM_ATTACKER delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1a0, 0x28, 0x4, 0x2a, ANIM_ATTACKER + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 33, 416, 40, 4, 42, ANIM_ATTACKER delay 2 - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1f, 0x120, 0x2d, 0x6, 0xffd6, ANIM_ATTACKER + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 31, 288, 45, 6, -42, ANIM_ATTACKER delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x1c, 0x1c0, 0x2d, 0xb, 0x2e, ANIM_ATTACKER + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 28, 448, 45, 11, 46, ANIM_ATTACKER delay 2 - createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x21, 0x1d0, 0x32, 0xa, 0xffce, ANIM_ATTACKER + createsprite gClangoorousSoulblazePurpleSwirlSpriteTemplate, ANIM_TARGET, 2, 0, 33, 464, 50, 10, -50, ANIM_ATTACKER delay 2 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 return ClangorousSoulblazeBuffEffect: playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER - createsprite gClangorousSoulBlueBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gClangorousSoulBlueBuffTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gClangorousSoulPurpleBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x0, 0x0, 0x20, 0x3c + createsprite gClangorousSoulPurpleBuffTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, 0, 0, 32, 60 delay 4 - createsprite gClangorousSoulWhiteBuffTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gClangorousSoulWhiteBuffTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, 0x0, 0x0, 0x20, 0x3c + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, 0, 0, 32, 60 return ClangorousSoulblazePulse_1: playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x1, 0x1, 0x0 + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 1, 1, 0 return ClangorousSoulblazePulse_2: playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x3, 0x3, 0x80 + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 3, 3, 128 return ClangorousSoulblazePulse_3: playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x2, 0x0, 0x80 + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 0, 128 return ClangorousSoulblazePulse_4: playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1, 0x1, 0x0 + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0, 1, 1, 0 return ClangorousSoulblazePulse_5: playsewithpan SE_M_UPROAR, SOUND_PAN_ATTACKER - createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 0x10, 0x0, 0x0, 0x0, 0x1d, 0x0 - createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 0x1, 0x0, 0x3, 0x0 + createsprite gClangoorousSoulblazePulseSpriteTemplate, ANIM_ATTACKER, 2, 16, 0, 0, 0, 29, 0 + createsprite gSlowFlyingMusicNotesSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 3, 0 return gBattleAnimMove_GuardianOfAlola:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish - createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0x0, 0x0, 0x0, 0x0 + createsprite gThinRingExpandingSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 0 playsewithpan SE_SHINY, SOUND_PAN_ATTACKER waitforvisualfinish unloadspritegfx ANIM_TAG_THIN_RING @@ -34615,7 +34615,7 @@ gBattleAnimMove_GuardianOfAlola:: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -256, 15, 0, 4 call GuardianOfAlolaRocksPlayer delay 10 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 16 call GuardianOfAlolaRocksPlayer waitforvisualfinish delay 10 @@ -34623,14 +34623,14 @@ gBattleAnimMove_GuardianOfAlola:: createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, -256, 15, 0, 4 call GuardianOfAlolaRocksPlayer delay 10 - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0x0, 0x10 + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER, 0, 16 call GuardianOfAlolaRocksPlayer waitforvisualfinish delay 10 delay 16 call GuardianOfAlolaRocksPlayer createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_ATTACKER, 2, 12, 12, RGB(31, 27, 9) @;Yellow - createvisualtask AnimTask_NightShadeClone, 0x5, 0x75 + createvisualtask AnimTask_NightShadeClone, 5, 117 delay 16 call GuardianOfAlolaRocksPlayer delay 16 @@ -34646,12 +34646,12 @@ gBattleAnimMove_GuardianOfAlola:: createvisualtask AnimTask_PositionFissureBgOnBattler, 5, ANIM_TARGET, 5, -1 waitbgfadein playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET - createsprite gGuardianOfAlolaFistSpriteTemplate, ANIM_TARGET, 3, 0x0, 0xffd0, 0x1f + createsprite gGuardianOfAlolaFistSpriteTemplate, ANIM_TARGET, 3, 0, -48, 31 delay 36 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 11, 0, RGB_BLACK playsewithpan SE_M_EXPLOSION, SOUND_PAN_TARGET - createvisualtask AnimTask_HorizontalShake, 3, ANIM_TARGET, 10, 0x25 - loopsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET 0x10 0x9 + createvisualtask AnimTask_HorizontalShake, 3, ANIM_TARGET, 10, 37 + loopsewithpan SE_M_ROCK_THROW SOUND_PAN_TARGET 16 9 call GuardianOfAlolaRocksTarget call GuardianOfAlolaRockGeyser call GuardianOfAlolaRockGeyser @@ -34687,20 +34687,20 @@ GuardianOfAlolaRocksTarget: createsprite gDirtPlumeSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 1, 12, 4, -16, 18 return GuardianOfAlolaRockGeyser: - createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 0xfffc, 0x10 @ -4, -0x10 + createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, -4, 16 delay 0 - createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 0x100D, 0x10 + createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 4109, 16 delay 0 - createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 0x4, 0x10 + createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 4, 16 delay 0 - createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, 0xfff0, 0x10 + createsprite gGuardianOfAlolaDirtGeyserSpriteTemplate, ANIM_TARGET, 2, 0, -16, 16 delay 0 return gBattleAnimMove_SearingSunrazeSmash:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 14, RGB(27, 0, 0) playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER @@ -34718,39 +34718,39 @@ gBattleAnimMove_SearingSunrazeSmash:: unloadspritegfx ANIM_TAG_SPARKLE_2 @sparkles unloadspritepal ANIM_TAG_SPARKLE_2 @sparkles playsewithpan SE_M_NIGHTMARE, SOUND_PAN_ATTACKER - createsprite gSearingSunrazeSmashGrowWormholeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashGrowWormholeSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 delay 16 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 53, -19, 1, 2 delay 2 visible ANIM_TARGET createvisualtask AnimTask_RotateMonSpriteToSide, 2, 80, -1024, ANIM_TARGET, 0 @ spin up target call SearingSunrazeSmashRingsInward - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x30 @ target back to origin (slowly) + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 48 @ target back to origin (slowly) call SearingSunrazeSmashRingsInward delay 13 invisible ANIM_TARGET - createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 6 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 @lunge forward + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 @lunge forward playsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER delay 2 invisible ANIM_ATTACKER - createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0x0 @superpower - createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gGrowingSuperpowerTemplate, ANIM_TARGET, 3, 0 @superpower + createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_ATTACKER fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xf700, 0x0, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -2304, 0, 1, -1 createvisualtask AnimTask_RotateMonSpriteToSide, 2, 1, 0, ANIM_TARGET, 1 @ fix tgt rotation invisible ANIM_TARGET waitbgfadein visible ANIM_ATTACKER visible ANIM_TARGET createsprite gSearingSunrazeSmashInfernoOrbSpriteTemplate, ANIM_ATTACKER, 2, ANIM_ATTACKER - loopsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER, 0x13, 0x8 + loopsewithpan SE_M_JUMP_KICK, SOUND_PAN_ATTACKER, 19, 8 call SearingSunrazeSmashCharge call SearingSunrazeSmashCharge call SearingSunrazeSmashCharge @@ -34761,7 +34761,7 @@ gBattleAnimMove_SearingSunrazeSmash:: unloadspritegfx ANIM_TAG_THIN_RING @ring unloadspritepal ANIM_TAG_THIN_RING @ring playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashRedFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSearingSunrazeSmashRedFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ATTACKER), 3, 0, 15, RGB_BLACK waitforvisualfinish playsewithpan SE_ORB, SOUND_PAN_ATTACKER @@ -34783,7 +34783,7 @@ gBattleAnimMove_SearingSunrazeSmash:: call SunsteelStrikeBeam stopsound playsewithpan SE_M_MEGA_KICK2, SOUND_PAN_TARGET - createsprite gSunsteelStrikeSuperpowerTemplate, ANIM_TARGET, 2, 0x14 + createsprite gSunsteelStrikeSuperpowerTemplate, ANIM_TARGET, 2, 20 SearingSunrazeSmashImpact: delay 8 delay 1 @@ -34791,27 +34791,27 @@ SearingSunrazeSmashImpact: unloadspritepal ANIM_TAG_GOLD_RING @beam createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 4, 60 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x20, 0xffe0, 0x0 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 32, -32, 0 delay 2 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x20, 0xffe0, 0x1 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 32, -32, 1 delay 2 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x1c, 0xffe0, 0x0 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 28, -32, 0 delay 2 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x1c, 0xffe0, 0x1 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 28, -32, 1 delay 2 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x2c, 0xffe0, 0x0 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 44, -32, 0 delay 2 playsewithpan SE_M_CUT, SOUND_PAN_TARGET - createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 0x2c, 0xffe0, 0x1 + createsprite gSearingSunrazeSmashWhiteCutSpriteTemplate, ANIM_TARGET, 2, 44, -32, 1 delay 2 delay 0 unloadspritegfx ANIM_TAG_METEOR @superpower unloadspritepal ANIM_TAG_METEOR @superpower - createsprite gSearingSunrazeSmashCrossImpactSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1, 0x24 + createsprite gSearingSunrazeSmashCrossImpactSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 36 playsewithpan SE_M_LEER, SOUND_PAN_TARGET visible ANIM_ATTACKER createvisualtask AnimTask_BlendBattleAnimPal, 10, (F_PAL_BG | F_PAL_ATTACKER), 3, 15, 0, RGB_BLACK @@ -34838,82 +34838,82 @@ SearingSunrazeSmashImpact: call ResetFromRedScreen end SearingSunrazeSmashFlare: - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x0, 0x0, 0x20, 0x3c - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, 0, 0, 32, 60 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, 0x0, 0x0, 0x20, 0x3c - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gGrantingStarsSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, 0, 0, 32, 60 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gEndureEnergySpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return SearingSunrazeSmashRingsInward: - createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashWhiteRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gSearingSunrazeSmashBlueRingInwardsSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 return SearingSunrazeSmashInferno: playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_ATTACKER - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 3 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 3 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xa, 0x0, 0xfffe - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0xfffe, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x2, 0x0 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0xfffe, 0x2 - createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xf, 0x2, 0x2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 10, 0, -2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, -2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 2, 0 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, -2, 2 + createsprite gFireBlastCrossSpriteTemplate, ANIM_TARGET, 2, 0, 0, 15, 2, 2 delay 3 return SearingSunrazeSmashCharge: - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1296, 30, 13, 50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2f, 0x490, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 47, 1168, 25, 11, -42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x30, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 48, 1248, 20, 16, -46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x500, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1280, 25, 16, 46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x540, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1344, 20, 8, 42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x4d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1232, 30, 15, -50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2f, 0x490, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 47, 1168, 25, 11, -42, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x510, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1296, 30, 13, 50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x2c, 0x500, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 44, 1280, 25, 16, 46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x30, 0x4e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 48, 1248, 20, 16, -46, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x4d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1232, 30, 15, -50, ANIM_ATTACKER delay 1 - createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x31, 0x540, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gFireSpinSpriteTemplate, ANIM_TARGET, 2, 0, 49, 1344, 20, 8, 42, ANIM_ATTACKER delay 1 return ResetFromRedScreen: - createvisualtask AnimTask_AllBattlersInvisible, 0xA + createvisualtask AnimTask_AllBattlersInvisible, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 0, RGB(27, 0, 0) @Everything from red restorebg waitbgfadeout - setarg 0x7 0xffff - createvisualtask AnimTask_AllBattlersVisible, 0xA + setarg 7, -1 + createvisualtask AnimTask_AllBattlersVisible, 10 waitbgfadein createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 0, RGB(13, 31, 12) waitforvisualfinish @@ -34922,7 +34922,7 @@ ResetFromRedScreen: gBattleAnimMove_MenacingMoonrazeMaelstrom:: invisible ANIM_TARGET - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BG, 0, 0, 14, RGB(0, 6, 16) playsewithpan SE_M_DRAGON_RAGE, SOUND_PAN_ATTACKER @@ -34938,38 +34938,38 @@ gBattleAnimMove_MenacingMoonrazeMaelstrom:: unloadspritegfx ANIM_TAG_SPARKLE_2 @sparkles unloadspritepal ANIM_TAG_SPARKLE_2 @sparkles playsewithpan SE_M_NIGHTMARE, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromWormholeSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromWormholeSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, ANIM_TARGET, 0 delay 16 createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 53, -19, 1, 2 @ target down and left (instantaneously (last arg)) delay 2 visible ANIM_TARGET createvisualtask AnimTask_RotateMonSpriteToSide, 2, 80, -1024, ANIM_TARGET, 0 @ spin up target call MenacingMoonrazeMaelstromRingsInward - createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0x0, 0x30 @ target back to origin (slowly) + createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, ANIM_TARGET, 0, 48 @ target back to origin (slowly) call MenacingMoonrazeMaelstromRingsInward delay 13 invisible ANIM_TARGET - createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gMoonrazeMaelstromWhiteRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromWhiteRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 6 - createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 0x4, 0x4 @lunge forward + createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4 @lunge forward playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER delay 2 invisible ANIM_ATTACKER - createsprite gMoonrazeMaelstromSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0x0 @superpower - createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromSuperpowerSpriteTemplate, ANIM_TARGET, 3, 0 @superpower + createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 playsewithpan SE_M_BRICK_BREAK, SOUND_PAN_ATTACKER fadetobg BG_COSMIC waitbgfadeout - createvisualtask AnimTask_IsTargetPlayerSide, 0x2 - jumpargeq 0x7 ANIM_TARGET MenacingMoonrazeMaelstromOnPlayer + createvisualtask AnimTask_IsTargetPlayerSide, 2 + jumpargeq 7 ANIM_TARGET MenacingMoonrazeMaelstromOnPlayer MenacingMoonrazeMaelstromOnOpponent: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0xfd00, 0x200, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, -768, 512, 1, -1 goto MenacingMoonrazeMaelstromFinish MenacingMoonrazeMaelstromOnPlayer: - createvisualtask AnimTask_StartSlidingBg, 0x5, 0x200, 0xfd00, 0x1, 0xffff + createvisualtask AnimTask_StartSlidingBg, 5, 512, -768, 1, -1 MenacingMoonrazeMaelstromFinish: createvisualtask AnimTask_RotateMonSpriteToSide, 2, 1, 0, ANIM_TARGET, 1 @ fix tgt rotation invisible ANIM_TARGET @@ -34990,7 +34990,7 @@ MenacingMoonrazeMaelstromFinish: createvisualtask AnimTask_ShakeMon2, 2, ANIM_ATTACKER, 1, 0, 32, 1 call MenacingMoonrazeMaelstromChargeUp call MenacingMoonrazeMaelstromChargeUp - createsoundtask SoundTask_LoopSEAdjustPanning, 0xf0, 0xffc0, SOUND_PAN_TARGET, 0x1, 0xf, 0x0, 0x5 + createsoundtask SoundTask_LoopSEAdjustPanning, 240, -64, SOUND_PAN_TARGET, 1, 15, 0, 5 call MenacingMoonrazeMaelstromBeam call MenacingMoonrazeMaelstromBeam call MenacingMoonrazeMaelstromBeam @@ -35041,63 +35041,63 @@ MenacingMoonrazeMaelstromFinish: end MenacingMoonrazeMaelstromExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gMoonrazeMaelstromExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 return MenacingMoonrazeMaelstromFlare: - createsprite gMoonrazeMaelstromBlackSparklesSpriteTemplate, ANIM_ATTACKER, 2, 0xfff1, 0x0, 0x0, 0x0, 0x20, 0x3c - createsprite gMoonrazeMaelstromBlueBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gMoonrazeMaelstromBlackSparklesSpriteTemplate, ANIM_ATTACKER, 2, -15, 0, 0, 0, 32, 60 + createsprite gMoonrazeMaelstromBlueBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gMoonrazeMaelstromBlueBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gMoonrazeMaelstromBlueBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gMoonrazeMaelstromBlackSparklesSpriteTemplate, ANIM_ATTACKER, 2, 0xc, 0xfffb, 0x0, 0x0, 0x20, 0x3c - createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gMoonrazeMaelstromBlackSparklesSpriteTemplate, ANIM_ATTACKER, 2, 12, -5, 0, 0, 32, 60 + createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gMoonrazeMaelstromBlackBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return MenacingMoonrazeMaelstromRingsInward: - createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gMoonrazeMaelstromWhiteRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromWhiteRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 - createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0x0, 0x0, ANIM_TARGET, 0x0 + createsprite gMoonrazeMaelstromBlueRingSpriteTemplate, ANIM_ATTACKER, 40, 0, 0, ANIM_TARGET, 0 delay 8 return MenacingMoonrazeMaelstromChargeUp: - createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x210, 0x1e, 0xd, 0x32, ANIM_ATTACKER + createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 528, 30, 13, 50, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x1e0, 0x14, 0x10, 0xffd2, ANIM_ATTACKER + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 480, 20, 16, -46, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x200, 0x19, 0x10, 0x2e, ANIM_ATTACKER + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 512, 25, 16, 46, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x1d0, 0x1e, 0xf, 0xffce, ANIM_ATTACKER + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 464, 30, 15, -50, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x21, 0x240, 0x14, 0x8, 0x2a, ANIM_ATTACKER + createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 33, 576, 20, 8, 42, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1f, 0x190, 0x19, 0xb, 0xffd6, ANIM_ATTACKER + createsprite gMoonrazeMaelstromBlackOrbsSpriteTemplate, ANIM_ATTACKER, 2, 0, 31, 400, 25, 11, -42, ANIM_ATTACKER delay 2 - createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gMoonrazeMaelstromPurpleBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return MenacingMoonrazeMaelstromBeam: createsprite gMoonrazeMaelstromBeamSpriteTemplate, ANIM_TARGET, 2 @@ -35126,8 +35126,8 @@ gBattleAnimMove_LightThatBurnsTheSky:: waitforvisualfinish createvisualtask AnimTask_ElectricChargingParticles, 2, ANIM_ATTACKER, 60, 2, 12 @ charge particles to attacker delay 30 - loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 0xe, 0xa - createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 3, 0x0 + loopsewithpan SE_M_CHARGE, SOUND_PAN_ATTACKER, 14, 10 + createsprite gSuperpowerOrbSpriteTemplate, ANIM_TARGET, 3, 0 call LightThatBurnsTheSkyGreenSparks call LightThatBurnsTheSkyGreenSparks call LightThatBurnsTheSkyGreenSparks @@ -35142,27 +35142,27 @@ gBattleAnimMove_LightThatBurnsTheSky:: clearmonbg ANIM_ATTACKER blendoff playsewithpan SE_M_SWAGGER, SOUND_PAN_ATTACKER - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0xfff0, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -32, -16, 37, 44, 224, 8, 2, 3 delay 1 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffd0, 0xffe4, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -48, -28, 37, 44, 224, 8, 2, 3 delay 1 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0x20, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0x60, 0x8, 0x1, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0xa0, 0x8, 0x0, 0x3 - createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0xffd8, 0x25, 0x2c, 0xe0, 0x8, 0x2, 0x3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 32, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 96, 8, 1, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 160, 8, 0, 3 + createsprite gSparkElectricityFlashingSpriteTemplate, ANIM_ATTACKER, 2, -64, -40, 37, 44, 224, 8, 2, 3 delay 6 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 3, 60 unloadspritegfx ANIM_TAG_LEAF @green unloadspritepal ANIM_TAG_LEAF @green unloadspritegfx ANIM_TAG_ELECTRIC_ORBS @charge unloadspritepal ANIM_TAG_ELECTRIC_ORBS @charge - panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 0x2, 0x0 + panse SE_M_SOLAR_BEAM, SOUND_PAN_ATTACKER, SOUND_PAN_TARGET, 2, 0 monbg ANIM_TARGET createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 6, 0, 16, RGB(31, 31, 16) @;Light yellow call PhotonGeyserBeam @@ -35181,100 +35181,100 @@ gBattleAnimMove_LightThatBurnsTheSky:: waitbgfadeout end LightThatBurnsTheSkyBlast_1: - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, -10, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 return LightThatBurnsTheSkyBlast_2: - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffd8, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffe0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x28, 0xffec, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x40, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x28, 0x14, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x20, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffd8, 0x14, 0x18, 0x0, 0x0, 0x0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -64, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -40, -20, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -32, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 40, -20, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 64, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 40, 20, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 32, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -40, 20, 24, 0, 0, 0 return LightThatBurnsTheSkyBlast_3: - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffa0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, 0xffc4, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x0, 0xffd0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0x3c, 0xffe2, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x60, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 0x3c, 0x1e, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x30, 0x18, 0x0, 0x0, 0x0 - createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0xffc4, 0x1e, 0x18, 0x0, 0x0, 0x0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -96, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 6, -60, -30, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 0, -48, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 70, 60, -30, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 96, 0, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 66, 60, 30, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, 0, 48, 24, 0, 0, 0 + createsprite gLightThatBurnsTheSkyBlastBurnSpriteTemplate, ANIM_ATTACKER, 2, -60, 30, 24, 0, 0, 0 return LightThatBurnsTheSkyGeyser: - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0x0005, 0x1, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, 5, 1, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xfff1, 0x1, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -15, 1, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xfffb, 0x1, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -5, 1, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0012, 0x1, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 18, 1, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0x0005, 0x1, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, 5, 1, 0 playsewithpan SE_M_SELF_DESTRUCT, SOUND_PAN_TARGET - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xfff5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -11, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffe1, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -31, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffeb, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -21, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0x0002, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, 2, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xfff5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -11, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0003, 0xffe5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 3, -27, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfff5, 0xffd1, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -11, -47, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0008, 0xffdb, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 8, -37, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0xfffa, 0xfff2, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, -6, -14, ANIM_TARGET, 0 delay 0 - createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0x0000, 0xffe5, ANIM_TARGET, 0x0 + createsprite gLightThatBurnsTheSkyExplosionSpriteTemplate, ANIM_TARGET, 4, 0, -27, ANIM_TARGET, 0 delay 0 return LightThatBurnsTheSkyGreenSparks: - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x30, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x30, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x30, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x30, 0x2c, 0x0, 0x28, 0x2, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x0, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x15, 0x2c, 0x40, 0x28, 0x1, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x15, 0x2c, 0x80, 0x28, 0x0, 0x3 - createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, 0x15, 0x2c, 0x0, 0x28, 0x2, 0x3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 48, 44, 0, 40, 0, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 48, 44, 64, 40, 1, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 48, 44, 128, 40, 0, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 48, 44, 0, 40, 2, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 21, 44, 0, 40, 0, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 21, 44, 64, 40, 1, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 21, 44, 128, 40, 0, 3 + createsprite gLightThatBurnsTheSkyGreenSparkSpriteTemplate, ANIM_TARGET, 3, 0, 0, 21, 44, 0, 40, 2, 3 delay 16 return gBattleAnimMove_SoulStealing7StarStrike:: - createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 0xA + createvisualtask AnimTask_AllBattlersInvisibleExceptAttackerAndTarget, 10 waitforvisualfinish setalpha 12, 8 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, 0xffe0, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0xffec, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0x0, 0xfff0, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xfff6, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0x20, 0x0, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0x14, 0xa, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x10, 0x18, 0x0, 0x0, 0x0 - createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, 0xffec, 0xa, 0x18, 0x0, 0x0, 0x0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, -32, 0, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, -20, -10, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 0, -16, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 20, -10, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 32, 0, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 66, 20, 10, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, 0, 16, 24, 0, 0, 0 + createsprite gSoulStealBlastburnSpriteTemplate, ANIM_ATTACKER, 2, -20, 10, 24, 0, 0, 0 delay 5 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gSoulStealBlackFlySpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSoulStealBlackFlySpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 13, 336 waitforvisualfinish invisible ANIM_TARGET fadetobg BG_SOULSTEALING_7STAR_STRIKE @@ -35294,45 +35294,45 @@ gBattleAnimMove_SoulStealing7StarStrike:: unloadspritegfx ANIM_TAG_FIRE_PLUME unloadspritepal ANIM_TAG_FIRE_PLUME createvisualtask AnimTask_ShakeMon, 5, ANIM_TARGET, 0, 4, 37, 1 - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x14, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 20, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0x0, ANIM_TARGET, 0x2, 0x0, 0x0, 0x30 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0, ANIM_TARGET, 2, 0, 0, 48 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 4 - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x10, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 16, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0x0, ANIM_TARGET, 0x12, 0x0, 0x0, 0x2c + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0, ANIM_TARGET, 18, 0, 0, 44 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET delay 4 - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x08, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 8, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0xffeb, 0xfff8, 0x2, 0x0, 0x0, 0x28 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, -21, -8, 2, 0, 0, 40 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x12, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 18, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0xfffb, 0xfff4, 0x2, 0x0, 0x0, 0x24 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, -5, -12, 2, 0, 0, 36 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x15, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 21, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0x5, 0xfff8, 0x2, 0x0, 0x0, 0x20 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 5, -8, 2, 0, 0, 32 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x0c, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 12, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0xfff0, 0x1, 0x2, 0x0, 0x0, 0x1c + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, -16, 1, 2, 0, 0, 28 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x13, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 19, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x1, 0x2, 0x0, 0x0, 0x18 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0, 1, 2, 0, 0, 24 playsewithpan SE_M_JUMP_KICK, SOUND_PAN_TARGET - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x0e, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 14, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0xfff0, 0x10, 0x2, 0x0, 0x0, 0x14 - createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, 0xffc0, 0x12, 0x0, 0x0, 0xa, 0x1, 0x0, 0x1 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, -16, 16, 2, 0, 0, 20 + createsprite gSoulStealBlueFistSpriteTemplate, ANIM_TARGET, 2, -64, 18, 0, 0, 10, 1, 0, 1 delay 4 - createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0x0, 0x10, 0x2, 0x0, 0x0, 0x10 + createsprite gSoulStealBlueStarSpriteTemplate, ANIM_TARGET, 4, 0, 16, 2, 0, 0, 16 delay 4 playsewithpan SE_M_FLY, SOUND_PAN_ATTACKER - createsprite gSoulStealBlackFlySpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0xd, 0x150 + createsprite gSoulStealBlackFlySpriteTemplate, ANIM_TARGET, 2, 0, 0, 13, 336 delay 32 unloadspritegfx ANIM_TAG_PAIN_SPLIT unloadspritepal ANIM_TAG_PAIN_SPLIT @@ -35341,26 +35341,26 @@ gBattleAnimMove_SoulStealing7StarStrike:: unloadspritegfx ANIM_TAG_HANDS_AND_FEET unloadspritepal ANIM_TAG_HANDS_AND_FEET playsewithpan SE_M_DOUBLE_TEAM, SOUND_PAN_ATTACKER - setarg 0x7 0x0 @;Clear arg 7 so task works properly in Link battles - createvisualtask AnimTask_SnatchOpposingMonMove, 0x2 + setarg 7, 0 @;Clear arg 7 so task works properly in Link battles + createvisualtask AnimTask_SnatchOpposingMonMove, 2 delay 28 createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_TARGET, 0, 0, 16, RGB_BLACK delay 1 - createsprite gSoulStealZStarSpriteTemplate, ANIM_TARGET, 2, 0x0, 0x0, 0x1, 0x24 + createsprite gSoulStealZStarSpriteTemplate, ANIM_TARGET, 2, 0, 0, 1, 36 createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 3, 0, 6, 1 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x0 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x2a - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x54 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0x7e - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0xa8 - createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0xd2 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 0 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 42 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 84 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 126 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 168 + createsprite gWillOWispFireSpriteTemplate, ANIM_TARGET, 2, 210 playsewithpan SE_M_FLAME_WHEEL2, SOUND_PAN_TARGET call SoulStealingSevenStarStrikeBlueParalysis call SoulStealingSevenStarStrikeBlueParalysis waitforvisualfinish visible ANIM_ATTACKER playsewithpan SE_M_DETECT, SOUND_PAN_ATTACKER - createsprite gTargetTwinkleSpriteTemplate, ANIM_TARGET, 13, 0x0, 0x0, ANIM_TARGET @detect star + createsprite gTargetTwinkleSpriteTemplate, ANIM_TARGET, 13, 0, 0, ANIM_TARGET @detect star delay 10 createvisualtask AnimTask_HorizontalShake, 5, ANIM_TARGET, 8, 32 call SoulStealingSevenStarStrikeExplosion @@ -35374,53 +35374,53 @@ gBattleAnimMove_SoulStealing7StarStrike:: waitforvisualfinish createvisualtask AnimTask_BlendBattleAnimPal, 10, F_PAL_BATTLERS_2, 2, 0, 0, RGB_BLACK waitforvisualfinish - createvisualtask AnimTask_AllBattlersVisible, 0xA + createvisualtask AnimTask_AllBattlersVisible, 10 waitforvisualfinish end SoulStealingSevenStarStrikeBuffEffect: - createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xffe8, 0x1a, 0x2 + createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -24, 26, 2 delay 4 - createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xe, 0x1c, 0x1 + createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 14, 28, 1 delay 4 - createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfffb, 0xa, 0x2 + createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -5, 10, 2 delay 4 - createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0x1c, 0x1a, 0x3 + createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, 28, 26, 3 delay 4 - createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0x0, 0xfff4, 0x0, 0x1 + createsprite gSoulStealIceBuffSpriteTemplate, ANIM_ATTACKER, 2, 0, -12, 0, 1 return SoulStealingSevenStarStrikeBlueParalysis: playsewithpan SE_M_THUNDERBOLT2, SOUND_PAN_TARGET - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0x5, 0x0, 0x5, 0x0 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 5, 0, 5, 0 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0xfffb, 0xa, 0x5, 0x1 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, -5, 10, 5, 1 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0xf, 0x14, 0x5, 0x2 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 15, 20, 5, 2 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0xfff1, 0xfff6, 0x5, 0x0 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, -15, -10, 5, 0 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0x19, 0x0, 0x5, 0x1 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 25, 0, 5, 1 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0xfff8, 0x8, 0x5, 0x2 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, -8, 8, 5, 2 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0x2, 0xfff8, 0x5, 0x0 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 2, -8, 5, 0 delay 2 - createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, 0xffec, 0xf, 0x5, 0x1 + createsprite gSoulStealBlueParalyzeSpriteTemplate, ANIM_TARGET, 2, -20, 15, 5, 1 return SoulStealingSevenStarStrikeExplosion: playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0x0, 0x0, ANIM_TARGET, 0x1 + createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0, 0, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0x18, 0xffe8, ANIM_TARGET, 0x1 + createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 24, -24, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0xfff0, 0x10, ANIM_TARGET, 0x1 + createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, -16, 16, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0xffe8, 0xfff4, ANIM_TARGET, 0x1 + createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, -24, -12, ANIM_TARGET, 1 delay 6 playsewithpan SE_M_EXPLOSION, SOUND_PAN_ATTACKER - createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 0x10, 0x10, ANIM_TARGET, 0x1 + createsprite gSoulStealExplosionSpriteTemplate, ANIM_TARGET, 3, 16, 16, ANIM_TARGET, 1 delay 6 return @@ -35434,28 +35434,28 @@ gBattleAnimGeneral_SetWeather:: end gBattleAnimMove_MaxGuard:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_Protect end gBattleAnimMove_MaxStrike:: gBattleAnimMove_GMaxReplenish:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_GigaImpact end gBattleAnimMove_MaxAirstream:: gBattleAnimMove_GMaxWindRage:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_Aeroblast end gBattleAnimMove_MaxOoze:: gBattleAnimMove_GMaxMalodor:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_GunkShot end @@ -35464,7 +35464,7 @@ gBattleAnimMove_GMaxWildfire:: gBattleAnimMove_GMaxFireball:: gBattleAnimMove_GMaxCentiferno:: gBattleAnimMove_MaxFlare:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_BlastBurn end @@ -35473,7 +35473,7 @@ gBattleAnimMove_GMaxCannonade:: gBattleAnimMove_GMaxHydrosnipe:: gBattleAnimMove_GMaxFoamBurst:: gBattleAnimMove_MaxGeyser:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_HydroCannon end @@ -35483,14 +35483,14 @@ gBattleAnimMove_GMaxDrumSolo:: gBattleAnimMove_GMaxTartness:: gBattleAnimMove_GMaxSweetness:: gBattleAnimMove_MaxOvergrowth:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_FrenzyPlant end gBattleAnimMove_MaxLightning:: gBattleAnimMove_GMaxStunShock:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_ZapCannon end @@ -35499,28 +35499,28 @@ gBattleAnimMove_GMaxChiStrike:: gBattleAnimMove_GMaxOneBlow:: gBattleAnimMove_GMaxRapidFlow:: gBattleAnimMove_MaxKnuckle:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_CloseCombat end gBattleAnimMove_GMaxResonance:: gBattleAnimMove_MaxHailstorm:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_SheerCold end gBattleAnimMove_GMaxSandblast:: gBattleAnimMove_MaxQuake:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_Fissure end gBattleAnimMove_GMaxBefuddle:: gBattleAnimMove_MaxFlutterby:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_BugBuzz end @@ -35528,21 +35528,21 @@ gBattleAnimMove_MaxFlutterby:: gBattleAnimMove_GMaxSteelsurge:: gBattleAnimMove_GMaxMeltdown:: gBattleAnimMove_MaxSteelspike:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_HeavySlam end gBattleAnimMove_GMaxTerror:: gBattleAnimMove_MaxPhantasm:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_ShadowBall end gBattleAnimMove_GMaxGravitas:: gBattleAnimMove_MaxMindstorm:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_PsychoBoost end @@ -35550,7 +35550,7 @@ gBattleAnimMove_MaxMindstorm:: gBattleAnimMove_GMaxSmite:: gBattleAnimMove_GMaxFinale:: gBattleAnimMove_MaxStarfall:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_Moonblast end @@ -35558,39 +35558,39 @@ gBattleAnimMove_MaxStarfall:: gBattleAnimMove_GMaxStonesurge:: gBattleAnimMove_GMaxVolcalith:: gBattleAnimMove_MaxRockfall:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_RockWrecker end gBattleAnimMove_GMaxDepletion:: gBattleAnimMove_MaxWyrmwind:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_SpacialRend end gBattleAnimMove_GMaxSnooze:: gBattleAnimMove_MaxDarkness:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_DarkPulse end gBattleAnimMove_GMaxCuddle:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_Covet end gBattleAnimMove_GMaxVoltCrash:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_VoltTackle end gBattleAnimMove_GMaxGoldRush:: - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x1 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 1 waitforvisualfinish goto gBattleAnimMove_PayDay end @@ -35599,6 +35599,6 @@ gBattleAnimMove_GMaxGoldRush:: gBattleAnimGeneral_DynamaxGrowth:: @ PORTED FROM CFRU createvisualtask SoundTask_PlayDynamaxCry, 0 delay 8 - createvisualtask AnimTask_DynamaxGrowth, 0x5, 0x1, 0x0 + createvisualtask AnimTask_DynamaxGrowth, 5, 1, 0 waitforvisualfinish end diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 47cb10cf16..f5e79c85ac 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -15,7 +15,7 @@ #include "constants/game_stat.h" #include "constants/trainers.h" #include "constants/species.h" -#include "constants/generational_changes.h" +#include "constants/config_changes.h" .include "asm/macros.inc" .include "asm/macros/battle_script.inc" .include "constants/constants.inc" @@ -4544,7 +4544,7 @@ BattleScript_SafeguardProtected:: pause B_WAIT_TIME_SHORT printstring STRINGID_PKMNUSEDSAFEGUARD waitmessage B_WAIT_TIME_LONG - end2 + goto BattleScript_MoveEnd BattleScript_SafeguardEnds:: pause B_WAIT_TIME_SHORT diff --git a/data/event_scripts.s b/data/event_scripts.s index ae21d4b67c..d3988f44d9 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -1062,7 +1062,7 @@ EventScript_AfterWhiteOutHeal:: lockall msgbox gText_FirstShouldRestoreMonsHealth call EventScript_PkmnCenterNurse_TakeAndHealPkmn - call_if_unset FLAG_DEFEATED_RUSTBORO_GYM, EventScript_AfterWhiteOutHealMsgPreRoxanne + call_if_unset FLAG_DEFEATED_RUSTBORO_GYM, EventScript_AfterWhiteOutHealMsgPreFirstBoss call_if_set FLAG_DEFEATED_RUSTBORO_GYM, EventScript_AfterWhiteOutHealMsg applymovement VAR_LAST_TALKED, Movement_PkmnCenterNurse_Bow waitmovement 0 @@ -1070,7 +1070,7 @@ EventScript_AfterWhiteOutHeal:: releaseall end -EventScript_AfterWhiteOutHealMsgPreRoxanne:: +EventScript_AfterWhiteOutHealMsgPreFirstBoss:: msgbox gText_MonsHealedShouldBuyPotions return @@ -1080,6 +1080,7 @@ EventScript_AfterWhiteOutHealMsg:: EventScript_AfterWhiteOutMomHeal:: lockall + textcolor NPC_TEXT_COLOR_FEMALE applymovement LOCALID_PLAYERS_HOUSE_1F_MOM, Common_Movement_WalkInPlaceFasterDown waitmovement 0 msgbox gText_HadQuiteAnExperienceTakeRest @@ -1432,7 +1433,7 @@ gText_HadQuiteAnExperienceTakeRest:: gText_MomExplainHPGetPotions:: .string "MOM: Oh, good! You and your\n" .string "POKéMON are looking great.\p" - .string "I just heard from PROF. BIRCH.\p" + .string "I just heard from {STR_VAR_1}.\p" .string "He said that POKéMON's energy is\n" .string "measured in HP.\p" .string "If your POKéMON lose their HP,\n" diff --git a/data/maps/PalletTown_PlayersHouse_1F_Frlg/map.json b/data/maps/PalletTown_PlayersHouse_1F_Frlg/map.json index a7310bfc8a..e6c2a181c0 100644 --- a/data/maps/PalletTown_PlayersHouse_1F_Frlg/map.json +++ b/data/maps/PalletTown_PlayersHouse_1F_Frlg/map.json @@ -17,7 +17,7 @@ "connections": null, "object_events": [ { - "local_id": "LOCALID_MOM", + "local_id": "LOCALID_PLAYERS_HOUSE_1F_MOM", "type": "object", "graphics_id": "OBJ_EVENT_GFX_MOM_FRLG", "x": 8, diff --git a/data/maps/PalletTown_PlayersHouse_1F_Frlg/scripts.inc b/data/maps/PalletTown_PlayersHouse_1F_Frlg/scripts.inc index bead054c26..d2e0959fb7 100644 --- a/data/maps/PalletTown_PlayersHouse_1F_Frlg/scripts.inc +++ b/data/maps/PalletTown_PlayersHouse_1F_Frlg/scripts.inc @@ -9,7 +9,7 @@ PalletTown_PlayersHouse_1F_EventScript_Mom:: call_if_eq VAR_RESULT, MALE, PalletTown_PlayersHouse_1F_EventScript_MomOakLookingForYouMale call_if_eq VAR_RESULT, FEMALE, PalletTown_PlayersHouse_1F_EventScript_MomOakLookingForYouFemale closemessage - applymovement LOCALID_MOM, Common_Movement_FaceOriginalDirection + applymovement LOCALID_PLAYERS_HOUSE_1F_MOM, Common_Movement_FaceOriginalDirection waitmovement 0 release end diff --git a/data/scripts/pkmn_center_nurse_frlg.inc b/data/scripts/pkmn_center_nurse_frlg.inc index 18570d3016..b04c3bd6d7 100644 --- a/data/scripts/pkmn_center_nurse_frlg.inc +++ b/data/scripts/pkmn_center_nurse_frlg.inc @@ -1,3 +1,16 @@ +EventScript_AfterWhiteOutHeal_Frlg:: + lockall + textcolor NPC_TEXT_COLOR_FEMALE + msgbox gText_FirstShouldRestoreMonsHealth + call EventScript_PkmnCenterNurse_TakeAndHealPkmn_Frlg + call_if_unset FLAG_DEFEATED_BROCK, EventScript_AfterWhiteOutHealMsgPreFirstBoss + call_if_set FLAG_DEFEATED_BROCK, EventScript_AfterWhiteOutHealMsg + applymovement VAR_LAST_TALKED, Movement_Bow + waitmovement 0 + fadedefaultbgm + releaseall + end + EventScript_PkmnCenterNurse_Frlg:: message Text_WelcomeWantToHealPkmn_Frlg waitmessage diff --git a/docs/tutorials/mon_generation.md b/docs/tutorials/mon_generation.md index 1dd873b0a3..3b3b25bbc3 100644 --- a/docs/tutorials/mon_generation.md +++ b/docs/tutorials/mon_generation.md @@ -1,138 +1,253 @@ # Generation of struct Pokemon instances -This document describes the ways you generate an instance of struct Pokemon through script or through code. -These Pokemon can be given to your players, be used as enemy trainer pokemon or as static wild pokemon. +This document describes the ways you generate an instance of `struct Pokemon` through script or through code. +These Pokemon can be given to your players, be used as enemy trainer Pokemon or as static wild Pokemon. ## Through script (`givemon` and `createmon`) ### `createmon` -`createmon` is a script command that allows you to generate a pokemon with any of the properties you might want. -It has a lot of arguments in order to offer this flexibility. -`side`, `slot`, `species` and `level` are the required arguments -`side` determines if the pokemon will be created as a player pokemon or an enemy pokemon: 0 will put the pokemon in the player party and 1 in the enemy party -`slot` determines the slot in the player or enemy party the pokemon will occupy. `slot` goes from 0 to 5 but if `side` is 0 (player pokemon), setting the slot to 6 will instead give the pokemon to player automatically putting it in the first empty slot or sending it to the PC when the party is the full. (Setting `slot` to 6 when trying to create an enemy pokemon will result in the `createmon` command being ignored) -`species` and `level` refers to the species id and the level of the pokemon you want to generate -`item`, `ball`, `nature`, `abilityNum`, `gender`, `hpEv`, `atkEv`, `defEv`, `speedEv`, `spAtkEv`, `spDefEv`, `hpIv`, `atkIv`, `defIv`, `speedIv`, `spAtkIv`, `spDefIv`, `move1`, `move2`, `move3`, `move4`, `shinyMode`, `gmaxFactor`, `teraType`, `dmaxLevel` are the optional arguments. They are pretty explicit in what they refer to but let's describe what they default to when they are not present. -`item` refers to the item the mon is holding. If the argument is missing, the mon won't be holding anything -`ball` refers to the type of ball the pokemon comes out of. This defaults to a PokeBall and if you are generating a wildmon, this will be overwritten if the pokemon is captured -`nature`, and `gender` will default to random values -`abilityNum` will default to the value corresponding to the personality they will roll (in practice, it's random but it will have correlations with other if the pokemon parameters) -`hpEv`, `atkEv`, `defEv`, `speedEv`, `spAtkEv`, `spDefEv` will default to 0 -`hpIv`, `atkIv`, `defIv`, `speedIv`, `spAtkIv`, `spDefIv` will default to `USE_RANDOM_IVS` which tell the game to roll a random IV value (between 0 and 31). If the generated species has a `perfectIVCount`, only the random values will be eligible to be perfected. -`move1`, `move2`, `move3`, `move4` will default to `MOVE_DEFAULT` which tells the game to fill the slot with the last level up move available -`shinyMode` will default to SHINY_MODE_RANDOM doing random roll(s) to check if the mon is shiny. (The other possibile values for shinyMode are SHINY_MODE_ALWAYS and SHINY_MODE_NEVER to force the pokemon to be shiny or not be shiny respectively) -`gmaxFactor` default to FALSE -`teraType` will default to the value corresponding to the personality they will roll (in practice, it's random but it will have correlations with other if the pokemon parameters) -`dmaxLevel` will deafult to 0 +`createmon` is a script command that allows you to generate a Pokemon with any of the properties you might want. It has a lot of arguments in order to offer this flexibility. + +#### Required Arguments + +> **side, slot, species, level** are the required arguments. + +- **side** determines if the Pokemon will be created as a player Pokemon or an enemy Pokemon: + - `0` will put the Pokemon in the player party + - `1` in the enemy party + +- **slot** determines the slot in the player or enemy party the Pokemon will occupy. + - `slot` goes from `0` to `5` + - If `side` is `0` (player Pokemon), setting the slot to `6` will instead give the Pokemon to player automatically putting it in the first empty slot or sending it to the PC when the party is the full. + - Setting `slot` to `6` when trying to create an enemy Pokemon will result in the `createmon` command being ignored. + +- **species** and **level** refer to the species id and the level of the Pokemon you want to generate. + +#### Optional Arguments + +> `item`, `ball`, `nature`, `abilityNum`, `gender`, `hpEv`, `atkEv`, `defEv`, `speedEv`, `spAtkEv`, `spDefEv`, `hpIv`, `atkIv`, `defIv`, `speedIv`, `spAtkIv`, `spDefIv`, `move1`, `move2`, `move3`, `move4`, `shinyMode`, `gmaxFactor`, `teraType`, `dmaxLevel`. + +The purpose of these arguments is largely self-explanatory but we will briefly discuss what they default to when nothing is explicitly specified. + +- **item** refers to the item the Pokemon is holding. If the argument is missing, the Pokemon won’t be holding anything. + +- **ball** refers to the type of ball the Pokemon comes out of. The expected type is `enum Pokeball` defaults to a `BALL_POKE`. If the Pokemon being generated is a Wild Pokemon this will be overwritten if the Pokemon is captured. + +- **nature** and **gender** will default to random values. + +- **abilityNum** will default to the value corresponding to the personality rolled (This is essentially random but it will be have correlations to the other parameters of the Pokemon). + +- **EVs** + `hpEv, atkEv, defEv, speedEv, spAtkEv, spDefEv` will default to `0`. + +- **IVs** + `hpIv, atkIv, defIv, speedIv, spAtkIv, spDefIv` will default to `USE_RANDOM_IVS` which tell the game to roll a random IV value (between `0` and `31`). If the generated species has a `perfectIVCount`, only the random values will be eligible to be perfected. + +- **moves** + `move1, move2, move3, move4` will default to `MOVE_DEFAULT` which tells the game to fill the slot with the last level up move available. + +- **shinyMode** will default to `SHINY_MODE_RANDOM` doing random roll(s) to check if the Pokemon is shiny. + - `SHINY_MODE_ALWAYS` forces the Pokemon to be shiny + - `SHINY_MODE_NEVER` forces the Pokemon to not be shiny + +- **gmaxFactor** defaults to `FALSE`. + +- **teraType** will default to the value corresponding to the personality they will roll (in practice, it’s random but it will have correlations with other if the Pokemon parameters). + +- **dmaxLevel** will default to `0`. + +--- ### `givemon` -`givemon` uses the same arguments as `createmon` minus `side` and `slot`. This is because `givemon` is almost equivalent to `createmon 0 6 ...` and just gives the mon to the player after generating it. The exception being that `givemon` interacts with the abilities `Synchronize` and `Cute Charm` slightly differently than `createmon` when `nature` or `gender` are not explicitly set. +`givemon` uses the same arguments as `createmon` minus `side` and `slot`. -### `setwildbattle (species:req, level:req, item=ITEM_NONE, species2=SPECIES_NONE, level2=0, item2=ITEM_NONE)` +This is because `givemon` is almost equivalent to `createmon 0 6 ...` and just gives the Pokemon to the player after generating it. + +The exception being that `givemon` interacts with the abilities `Synchronize` and `Cute Charm` somewhat differently than `createmon` when `nature` or `gender` are not explicitly set. + +--- + +### `setwildbattle` + +##### Arguments + +> `species:req`, `level:req`, `item=ITEM_NONE`, `species2=SPECIES_NONE`, `level2=0`, `item2=ITEM_NONE` + +`setwildbattle` is a much simpler way to generate a Wild Pokemon ready for the player to fight. -`setwildbattle` is a much simpler way to generate a wildmon ready for the player to fight. It only takes 3 arguments (or 6 if you want to make it a double wild battle) -`species` and `level` refers to the species id and the level of the pokemon you want to generate -`item` refers to the item the mon is holding. If the argument is missing, the mon won't be holding anything -`species2`, `level2`, and `item2` are relate to the species, level and item of the second mon generated in case you want to make a double wild battle -The other properties will like IVs and personality will be set random just like for a regular wild battle -Mons generated with `setwildbattle` will always be considered static encounters (STATIC_WILDMON_ORIGIN) and will thus be eligible to be affected by Synchronize and Cute Charm -### Synchronize and Cute Charm +- `species` and `level` refer to the `species` and the `level` of the Pokemon you want to generate. +- `item` refers to the item the Pokemon is holding. If no argument is provided the Pokemon will not be holding an item. +- `species2`, `level2`, and `item2` determine the `species`, `level` and `held item` respectively of the second Pokemon generated in case you want to make a double wild battle +- The other properties like IVs and personality will be set randomly the same way as they are set in regular wild battles. -`nature` and `gender` also accept `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` respectively as arguments -`NATURE_RANDOM` and `MON_GENDER_RANDOM` always return a random nature/gender and never check for Synchronize or Cute Charm. If you want the generated mon to have a chance to receive the effcets of Synchronize or Cute Charm, you need to use `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` respectively for nature and gender. -When you use `NATURE_MAY_SYNCHRONIZE` or `MON_GENDER_MAY_CUTE_CHARM`, you are telling the game can check if the player has a pokemon with Synchronize or Cute Charm in the first slot of its party and roll a die to see if the nature or gender should be fixed based on the ability or rolled normally. -The mon generated also need to be of the right "origin" to be eligible for Synchronize or Cute Charm. We don't want to "synchronize" a mon belonging to a trainer or change the gender of a gift mon with Cute Charm. So if a mon is generated for the player side, it will be considered a "gift mon" (GIFTMON_ORIGIN) and if a mon is generated on the enemy side, it will be considered a static wild encounter (STATIC_WILDMON_ORIGIN). -`givemon` will default to use `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` because we assume you will use givemon to create "gift mons" but if you don't want it to apply in a specific script, you can explicitly use `NATURE_RANDOM` and `MON_GENDER_RANDOM` instead -`createmon` on the other hand default to `NATURE_RANDOM` and `MON_GENDER_RANDOM` so you need to explicitly use `NATURE_MAY_SYNCHRONIZE` or `MON_GENDER_MAY_CUTE_CHARM` for the generated mon to be considered a gift mon or a static wild encounter -Static encounters and Gift mons eligibility to Synchronize vary through generations in the official games so you can use the config `OW_SYNCHRONIZE_NATURE` to match your preference or you can check the `src/ow_synchronize.c` to modify the Synchronize and Cute Charm eligibility of different origins however you like +Pokemon generated with `setwildbattle` will always be considered static encounters (`STATIC_WILDMON_ORIGIN`) and will thus be eligible to be affected by Synchronize and Cute Charm + +#### Synchronize and Cute Charm + + `nature` and `gender` also accept `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` respectively as arguments. + +`NATURE_RANDOM` and `MON_GENDER_RANDOM` always return a random nature/gender and never check for Synchronize or Cute Charm. If you want the generated Pokemon to have a chance to receive the effects of Synchronize or Cute Charm, you need to use `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` respectively for nature and gender. + +When you use `NATURE_MAY_SYNCHRONIZE` or `MON_GENDER_MAY_CUTE_CHARM`, you are telling the game can check if the player has a Pokemon with Synchronize or Cute Charm in the first slot of its party and roll a die to see if the nature or gender should be fixed based on the ability or rolled normally. + +The Pokemon generated also need to be of the right "origin" to be eligible for Synchronize or Cute Charm. We don't want to "synchronize" a Pokemon belonging to a trainer or change the gender of a gift Pokemon with Cute Charm. So if a Pokemon is generated for the player side, it will be considered a "gift Pokemon" (`GIFTMON_ORIGIN`) and if a Pokemon is generated on the enemy side, it will be considered a static wild encounter (`STATIC_WILDMON_ORIGIN`). + +`givemon` will default to use `NATURE_MAY_SYNCHRONIZE` and `MON_GENDER_MAY_CUTE_CHARM` because we assume you will use `givemon` to create "gift Pokemon" but if you don't want it to apply in a specific script, you can explicitly use `NATURE_RANDOM` and `MON_GENDER_RANDOM` instead + +`createmon` on the other hand default to `NATURE_RANDOM` and `MON_GENDER_RANDOM` so you need to explicitly use `NATURE_MAY_SYNCHRONIZE` or `MON_GENDER_MAY_CUTE_CHARM` for the generated Pokemon to be considered a gift Pokemon or a static wild encounter + +Static encounters and Gift Pokemon eligibility to Synchronize vary through generations in the official games so you can use the config `OW_SYNCHRONIZE_NATURE` to match your preference or you can check the `src/ow_abilities.c` to modify the Synchronize and Cute Charm eligibility of different origins however you like + +--- ## Through Code -A lot of places in the game generate mons, when you start a wild encounter, when a trainer generates its party from the data in trainers.party or even when you call one of the script described in the previous section. So let's go through some of the most common functions. -Note: None of the functions described here allocate memory for the Pokemon struct, they all expect a pointer they will fill the data with. +There are several instances of Pokemon generation throughout the game: +- When you start a wild encounter, +- When a trainer generates its party from the data in `trainers.party`, +- Or when you call one of the scripts described in the previous section. + +In this section we will go through some of the most common functions. + +> NOTE: None of the functions described here allocate memory for the Pokemon struct, they all expect a pointer they will fill the data with. + It means they are usually called with `&gParties[B_TRAINER_0][index]` or `&gParties[B_TRAINER_1][index]` because these are places in memory reserved for Pokemon struct. -### The basics +### The Basics -To generate a mon ready for battle, you usually need to go through these steps: -- generate a personality value -- fill the generic mon structure based on species, level and personality -- set IVs and EVs -- (re-)compute stats (this step does not happen if you are generating a `struct boxPokemon` instead of `struct Pokemon`) -- set the moves +To generate a Pokemon ready for battle, you usually need to go through the following steps: + +1. Generate a personality value +2. Fill the generic mon structure based on `species`, `level` and `personality`. +3. Set IVs and EVs. +4. (Re-)Compute stats (this step does not happen if you are generating a `struct BoxPokemon` instead of `struct Pokemon`). +5. set the moves. ### `GetMonPersonality` `GetMonPersonality` is the easiest way to make a personality value. It takes 4 arguments `species`, `gender`, `nature` and `unownLetter` then it rolls random personality values until it finds one that match all the selected criteria. + For example, if you want a personality for Wally's male Ralts, you would write: -`personality = GetMonPersonality(SPECIES_RALTS, MON_MALE, NATURE_RANDOM, RANDOM_UNOWN_LETTER);` -and if you want a personality for a brave J Unown, you would write -`personality = GetMonPersonality(SPECIES_UNOWN, MON_GENDER_RANDOM, NATURE_BRAVE, 9);` (J is the 10th letter of alphabet but for unown A starts at 0 so B is 1 and J is 9) -As you can see, you can use either a specific value or a special value `MON_GENDER_RANDOM`, `NATURE_RANDOM` or `RANDOM_UNOWN_LETTER` to tell the function to return any pokemon matching the other properties. This means, writing: -`personality = GetMonPersonality(SPECIES_X, MON_GENDER_RANDOM, NATURE_RANDOM, RANDOM_UNOWN_LETTER);` -id equivalent to -`personality = Random32();` -which is why `Random32()` is used throughout to generate a personality value in certain circumstances + +```c +personality = GetMonPersonality(SPECIES_RALTS, MON_MALE, NATURE_RANDOM, RANDOM_UNOWN_LETTER); +``` + +And if you want a personality for a brave J Unown, you would write: + +```c +personality = GetMonPersonality(SPECIES_UNOWN, MON_GENDER_RANDOM, NATURE_BRAVE, 9); +// J is the 10th letter of alphabet but for Unown A starts at 0 so B is 1 and J is 9 +``` + +As you can see, you can use either a specific value or a special value `MON_GENDER_RANDOM`, `NATURE_RANDOM` or `RANDOM_UNOWN_LETTER` to tell the function to return any Pokemon matching the other properties. This means, writing: + +``` +personality = GetMonPersonality(SPECIES_X, MON_GENDER_RANDOM, NATURE_RANDOM, RANDOM_UNOWN_LETTER); +``` + +is equivalent to `personality = Random32();` which is why `Random32()` is used throughout the codebase to generate fully random personality values. + +--- ### `CreateMon` and `CreateBoxMon` `CreateMon` is the most basic function to create a generic Pokemon struct. It takes 5 arguments: -`mon` is a pointer to the mon struct you want to set the data for -`species` and `level` are fairly explicit -`personality` is the personality value you want to use to create your mon, it will determine a lot of your mon properties and will usually be a number that you generated by following the instructions from the previous section -`trainerID` is a special type of struct that explain how the function should set up the otId of the pokemon. Usually you will want to use one of these 3 macros for the argument: -`OTID_STRUCT_PLAYER_ID` which means the pokemon should the player otId (used for wildmon so they the get the player id when captured) -`OTID_STRUCT_PRESET(value)` which set a specific otId that you pick/write yourself -`OTID_STRUCT_RANDOM_NO_SHINY` which picks a random otId and forces the mon to not be shiny even if the random otId and chosen personality would have made the mon shiny. It is used by NPC trainers. -Both `CreateMon` and `CreateBoxMon` erase the pokemon data in the pointer before they add the new data so every value they don't set will be zero-ed in some way. This is why they are considered "base" functions. -The values set by `CreateMon` and `CreateBoxMon` are the gender, ability num, tera type and nature (based on personality); the met info (location, level and game), the original trainer name, gender and language (always set to the player even for enemy trainer mons), the starting xp (based on the xp required to reach the level the pokemon is at), the starting friendship (based on the species info) and the shinyness. -`CreateMon` and `CreateBoxMon` are very similar. In fact, the `CreateMon` function calls `CreateBoxMon` to generate the boxmon part of its structure but it also sets the level and a mail object (to an empty value) + +- `mon` is a pointer to the Pokemon struct you want to set the data for + +- `species` and `level` are self-explanatory. + +- `personality` is the personality value you want to use to create your Pokemon, it will determine a lot of your Pokemon properties and will usually be a number that you generated by following the instructions from the previous section. + +- `trainerID` is a special type of struct that explain how the function should set up the `otId` of the Pokemon. Usually you will want to use one of these 3 macros for the argument: + + - `OTID_STRUCT_PLAYER_ID` which means the Pokemon will use the player `otId` (used by Wild Pokemon so they the get the player id when captured) + + - `OTID_STRUCT_PRESET(value)` which set a specific `otId` that you pick/write yourself + + - `OTID_STRUCT_RANDOM_NO_SHINY` which picks a random `otId` and forces the Pokemon to not be shiny even if the random `otId` and chosen `personality` would have made the Pokemon shiny. It is used by NPC trainers. + +- Both `CreateMon` and `CreateBoxMon` erase the Pokemon data in the pointer before they add the new data so every value they don't set will be zero-ed in some way. This is why they are considered "base" functions. + +The values set by `CreateMon` and `CreateBoxMon` are the `gender`, `ability num`, `tera type` and `nature` (based on personality); the `met info` (location, level and game), the `OT name` , `gender` and `language` (always set to the player even for enemy trainer Pokemon), the `starting xp` (based on the xp required to reach the level the Pokemon is at), the `starting friendship` (based on the species info) and the `shinyness`. + +`CreateMon` and `CreateBoxMon` are very similar. In fact, the `CreateMon` function calls `CreateBoxMon` to generate the BoxPokemon part of its structure but it also sets the level and a mail object (to an empty value) ### Setting IVs and EVs -Usually, you will want to use `SetBoxMonIVs(mon->box, ivs)` to set the ivs of the pokemon you are generating. The reason is that not only can you quickly set all ivs of your mon to a single value: `SetBoxMonIVs(mon->box, 15)` will set all IVs to 15. You can also use the special argument `USE_RANDOM_IVS`. When used with `USE_RANDOM_IVS`, `SetBoxMonIvs` will not only pick a random value between 0 and 31 for each stat, it will also allocate some perfect iv if the species of the mon has a perfectIvCount set in the species data. For example if you are generating a legendary with a perfectIvCount of 3, using `SetBoxMonIVs(mon->box, USE_RANDOM_IVS)` will guarantee that at least 3 IVs are set to 31. This is done using the function `SetBoxMonPerfectIVs`, which can also be used elsewhere to assign a number of random perfect IVs. +#### IVs + +Usually, you will want to use `SetBoxMonIVs(mon->box, ivs)` to set the IVs of the Pokemon being generated. The reason is that not only can you quickly set all ivs of your Pokemon to a single value. + +For instance `SetBoxMonIVs(mon->box, 15)` will set all IVs to 15. + +You can also use the special argument `USE_RANDOM_IVS`. When used with `USE_RANDOM_IVS`, `SetBoxMonIvs` will not only pick a random value between 0 and 31 for each stat, it will also allocate some perfect iv if the species of the Pokemon has a `perfectIvCount` set in the species data. + +For example if you are generating a legendary with a `perfectIvCount` of 3, using `SetBoxMonIVs(mon->box, USE_RANDOM_IVS)` will guarantee that at least 3 IVs are set to 31. This is done using the function `SetBoxMonPerfectIVs`, which can also be used elsewhere to assign a number of random perfect IVs. + The other way to assign IV is to use `SetMonData`, for example: -`SetMonData(mon, MON_DATA_HP_IV, 15)` -with the stats being in order `MON_DATA_HP_IV`, `MON_DATA_ATK_IV`, `MON_DATA_DEF_IV`, `MON_DATA_SPEED_IV`, `MON_DATA_SPATK_IV` and `MON_DATA_SPDEF_IV` + +```c +SetMonData(mon, MON_DATA_HP_IV, 15) +``` + +with the stats being in the order `MON_DATA_HP_IV`, `MON_DATA_ATK_IV`, `MON_DATA_DEF_IV`, `MON_DATA_SPEED_IV`, `MON_DATA_SPATK_IV` and `MON_DATA_SPDEF_IV` + You can also use a loop like this: + ```c for (i = 0; i < NUM_STATS; i++) SetMonData(mon, MON_DATA_HP_IV + i, iv_array[i]) ``` -if you happen to have an array containing the values you want but be careful about the order if you use this method -EVs default to 0 when a mon is generated with `CreateMon` or `CreateBoxMon` so you may not need to anything if you want to keep it that way. If you want to change them, there are currently no utilities to set EVs at the moment so you will need to use the `SetMonData` method as well: -`SetMonData(mon, MON_DATA_HP_EV, 252)` -The stats have the same names as the IVs with I cheange into an E : `MON_DATA_HP_EV`, `MON_DATA_ATK_EV`, `MON_DATA_DEF_EV`, `MON_DATA_SPEED_EV`, `MON_DATA_SPATK_EV` and `MON_DATA_SPDEF_EV` so the loop method works here too + +if you happen to have an array containing the values you want. However, you must be careful about the order of the stats if you use this method. +#### EVs + +EVs default to `0` when a Pokemon is generated with `CreateMon` or `CreateBoxMon`. You will not need to anything if you want to keep it that way. + +If you want to change them, there are currently no utilities to set EVs. Thus you will need to use the `SetMonData` method: + +```c +SetMonData(mon, MON_DATA_HP_EV, 252) +``` + +The stats have the same names as the IVs with I change into an E : `MON_DATA_HP_EV`, `MON_DATA_ATK_EV`, `MON_DATA_DEF_EV`, `MON_DATA_SPEED_EV`, `MON_DATA_SPATK_EV` and `MON_DATA_SPDEF_EV` so the loop method works here as well. + ```c for (i = 0; i < NUM_STATS; i++) SetMonData(mon, MON_DATA_HP_EV + i, ev_array[i]) ``` -Just be careful when setting IVs and EVs with SetMonData because they are no check to make sure the IV and EV values you are setting are valid and this may cause some issues. + +Just be careful when setting IVs and EVs with `SetMonData` because there is no check to make sure the IV and EV values you are setting are valid and this may cause some issues. ### `CalculateMonStats` -After all the IVs and EVs have been set for your mon, it's important to run `CalculateMonStats(mon)`. The function only has one argument so it's pretty simple but don't forget this step or you may have some isseus +After all the IVs and EVs have been set for your Pokemon, it's important to run `CalculateMonStats(mon)`. The function only has one argument so it's pretty simple but don't forget this step or you may have some issues. ### Setting moves To set a move in slot `slot`, you would need to write: + ```c enum Move move = MOVE_X; u32 pp = GetMovePP(move); SetMonData(mon, MON_DATA_MOVE1 + slot, &move); SetMonData(mon, MON_DATA_PP1 + slot, &spp); ``` + where slot can be between 0 and 3 to represent the 1st to 4th move -You can also call the function `GiveMonInitialMoveset(mon)` that will give your pokemon its last 4 level-up moves available similarly to the wild pokemon you might enciunter +You can also call the function `GiveMonInitialMoveset(mon)` that will give your Pokemon its last 4 level-up moves available similarly to the wild Pokemon you might encounter. ## Going from 1.14 to 1.15 -When going from 1.14 to 1.15, Expansion deleted multiple functions related to mon generation that were not used in Expansion anymore. +When going from 1.14 to 1.15, Expansion deleted multiple functions related to Pokemon generation that were not used in Expansion anymore. The following functions were deleted + ```c void CreateMonWithNature(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 nature); void CreateMonWithGenderNatureLetter(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 gender, u8 nature, u8 unownLetter); @@ -140,14 +255,18 @@ void CreateMonWithIVsOTID(struct Pokemon *mon, u16 species, u8 level, u8 *ivs, u void CreateMonWithEVSpread(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 evSpread); void CreateMonWithEVSpreadNatureOTID(struct Pokemon *mon, u16 species, u8 level, u8 nature, u8 fixedIV, u8 evSpread, u32 otId); ``` + If you add custom code relying on those functions, I would advise to simple recode them using the methods described in the previous section. If you follow the steps, you should be able to rewrite a function with the same effect easily. However the move to 1.15 also completely rewrote these two functions: + ```c void CreateMon(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 hasFixedPersonality, u32 fixedPersonality, u8 otIdType, u32 fixedOtId); void CreateBoxMon(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fixedIV, u8 hasFixedPersonality, u32 fixedPersonality, u8 otIdType, u32 fixedOtId); ``` + `CreateMon` and `CreateBoxMon` now have different arguments and do less things than their 1.14 counterparts. If you have code that used those functions, we recommend you use these legacy version of `CreateMon` and `CreateBoxMon`: + ```c void CreateMonLegacy(struct Pokemon *mon, u16 species, u8 level, u8 fixedIV, u8 hasFixedPersonality, u32 fixedPersonality, u8 otIdType, u32 fixedOtId) { @@ -166,4 +285,5 @@ void CreateBoxMonLegacy(struct BoxPokemon *boxMon, u16 species, u8 level, u8 fix GiveBoxMonInitialMoveset(boxMon); } ``` + These two legacy functions use the 1.15 functions to recreate the 1.14 versions of `CreateMon` and `CreateBoxMon` with the same arguments and the same effects. Add these two legacy functions to your code then change your custom code that was relying on 1.14 `CreateMon` or `CreateBoxMon` to use `CreateMonLegacy` or `CreateBoxMonLegacy` instead and everything should work the same as before diff --git a/graphics/items/icon_palettes/mystery_tm_hm.pal b/graphics/items/icon_palettes/mystery_tm_hm.pal new file mode 100644 index 0000000000..493e4655a1 --- /dev/null +++ b/graphics/items/icon_palettes/mystery_tm_hm.pal @@ -0,0 +1,19 @@ +JASC-PAL +0100 +16 +180 180 180 +49 49 49 +74 74 98 +200 243 230 +176 227 212 +156 210 194 +144 200 184 +136 189 173 +122 177 161 +104 160 144 +123 123 148 +123 123 123 +98 98 123 +255 255 255 +239 251 248 +82 82 82 diff --git a/graphics/items/icon_palettes/strange_ball.pal b/graphics/items/icon_palettes/strange_ball.pal index 9e32134d45..06783b202a 100644 --- a/graphics/items/icon_palettes/strange_ball.pal +++ b/graphics/items/icon_palettes/strange_ball.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 180 180 180 -164 226 197 -238 242 230 -139 170 180 -8 113 115 -0 157 156 -106 222 172 -41 182 189 -90 206 172 -90 182 180 -8 0 0 -65 190 189 -115 194 189 -0 117 131 -0 129 131 -0 12 0 +64 128 115 +92 163 114 +101 169 99 +69 171 140 +115 191 132 +72 141 162 +83 204 163 +72 176 192 +49 49 49 +149 210 138 +137 225 177 +190 237 195 +143 224 228 +255 255 255 +0 0 0 diff --git a/graphics/items/icons/strange_ball.png b/graphics/items/icons/strange_ball.png index a794d54abe..ede11e82d3 100644 Binary files a/graphics/items/icons/strange_ball.png and b/graphics/items/icons/strange_ball.png differ diff --git a/graphics/pokedex/hgss/palette_default.pal b/graphics/pokedex/hgss/palette_default.pal index 5889ede7ac..77ec81d010 100644 --- a/graphics/pokedex/hgss/palette_default.pal +++ b/graphics/pokedex/hgss/palette_default.pal @@ -15,7 +15,7 @@ JASC-PAL 193 33 41 141 251 184 52 66 162 -194 181 66 +0 0 0 0 0 0 123 131 0 255 255 255 diff --git a/graphics/pokedex/hgss/palette_default_dark.pal b/graphics/pokedex/hgss/palette_default_dark.pal index 1523b7d25f..2f46b7dc28 100644 --- a/graphics/pokedex/hgss/palette_default_dark.pal +++ b/graphics/pokedex/hgss/palette_default_dark.pal @@ -15,7 +15,7 @@ JASC-PAL 193 33 41 141 251 184 52 66 162 -194 181 66 +74 74 74 0 0 0 123 131 0 255 255 255 diff --git a/graphics/pokedex/hgss/palette_national.pal b/graphics/pokedex/hgss/palette_national.pal index 5889ede7ac..77ec81d010 100644 --- a/graphics/pokedex/hgss/palette_national.pal +++ b/graphics/pokedex/hgss/palette_national.pal @@ -15,7 +15,7 @@ JASC-PAL 193 33 41 141 251 184 52 66 162 -194 181 66 +0 0 0 0 0 0 123 131 0 255 255 255 diff --git a/graphics/pokedex/hgss/palette_national_dark.pal b/graphics/pokedex/hgss/palette_national_dark.pal index 1523b7d25f..2f46b7dc28 100644 --- a/graphics/pokedex/hgss/palette_national_dark.pal +++ b/graphics/pokedex/hgss/palette_national_dark.pal @@ -15,7 +15,7 @@ JASC-PAL 193 33 41 141 251 184 52 66 162 -194 181 66 +74 74 74 0 0 0 123 131 0 255 255 255 diff --git a/graphics/pokedex/hgss/tileset_menu3.png b/graphics/pokedex/hgss/tileset_menu3.png index e4b649c870..c5219d858f 100644 Binary files a/graphics/pokedex/hgss/tileset_menu3.png and b/graphics/pokedex/hgss/tileset_menu3.png differ diff --git a/include/battle.h b/include/battle.h index bd374006c8..82532a2c32 100644 --- a/include/battle.h +++ b/include/battle.h @@ -23,7 +23,7 @@ #include "battle_dynamax.h" #include "battle_terastal.h" #include "battle_gimmick.h" -#include "generational_changes.h" +#include "config_changes.h" #include "item.h" #include "move.h" #include "random.h" // for rng_value_t @@ -201,6 +201,7 @@ struct SimulatedDamage u16 minimum; u16 median; u16 maximum; + u16 random; }; // Ai Data used when deciding which move to use, computed only once before each turn's start. @@ -234,7 +235,8 @@ struct AiLogicData u32 shouldConsiderExplosion:1; // Determines whether AI should consider explosion moves this turn u32 shouldSwitch:4; // Stores result of ShouldSwitch, which decides whether a mon should be switched out u32 shouldConsiderFinalGambit:1; // Determines whether AI should consider Final Gambit this turn - u32 padding2:19; + u32 switchInCalc:1; // Indicates if we're doing switch in calcs, this is purely for Retaliate damage calcs + u32 padding2:18; }; struct AiThinkingStruct diff --git a/include/battle_ai_main.h b/include/battle_ai_main.h index 67ee35377d..7cf4b91ce3 100644 --- a/include/battle_ai_main.h +++ b/include/battle_ai_main.h @@ -136,6 +136,8 @@ void SetAiLogicDataForTurn(struct AiLogicData *aiData); void ResetDynamicAiFunctions(void); void AI_TrySwitchOrUseItem(enum BattlerId battler); void CalcBattlerAiMovesData(struct AiLogicData *aiData, enum BattlerId battlerAtk, enum BattlerId battlerDef, u32 weather, u32 fieldStatus); +void AIDebugTimerStart(void); +void AIDebugTimerEnd(void); extern AiSwitchFunc gDynamicAiSwitchFunc; diff --git a/include/battle_ai_switch.h b/include/battle_ai_switch.h index 16b75c735b..639d9725ab 100644 --- a/include/battle_ai_switch.h +++ b/include/battle_ai_switch.h @@ -27,6 +27,8 @@ enum ShouldSwitchScenario SHOULD_SWITCH_NATURAL_CURE_WEAK_STATS_RAISED, SHOULD_SWITCH_REGENERATOR, SHOULD_SWITCH_REGENERATOR_STATS_RAISED, + SHOULD_SWITCH_INTIMIDATE, + SHOULD_SWITCH_INTIMIDATE_STATS_RAISED, SHOULD_SWITCH_ENCORE_STATUS, SHOULD_SWITCH_ENCORE_DAMAGE, SHOULD_SWITCH_CHOICE_LOCKED, diff --git a/include/battle_ai_util.h b/include/battle_ai_util.h index a7e1324f5b..fb2187f7df 100644 --- a/include/battle_ai_util.h +++ b/include/battle_ai_util.h @@ -7,19 +7,24 @@ // Roll boundaries used by AI when scoring. Doesn't affect actual damage dealt. #define MAX_ROLL_PERCENTAGE DMG_ROLL_PERCENT_HI #define MIN_ROLL_PERCENTAGE DMG_ROLL_PERCENT_LO -#define DMG_ROLL_PERCENTAGE ((MAX_ROLL_PERCENTAGE + MIN_ROLL_PERCENTAGE + 1) / 2) // Controls the damage roll the AI sees for the default roll. By default the 9th roll is seen +#define DMG_ROLL_PERCENTAGE ((MAX_ROLL_PERCENTAGE + MIN_ROLL_PERCENTAGE + 1) / 2) // Controls the damage roll the AI sees for the median roll. By default the 9th roll is seen enum DamageRollType { DMG_ROLL_LOWEST, - DMG_ROLL_DEFAULT, + DMG_ROLL_MEDIAN, DMG_ROLL_HIGHEST, + DMG_ROLL_RANDOM, }; enum DamageCalcContext { AI_DEFENDING, AI_ATTACKING, + AI_SWITCHIN_DEFENDING, + AI_SWITCHIN_ATTACKING, + AI_SHOULD_SETUP_DEFENDING, + AI_ATTACKING_PARTNER, }; enum AiConsiderEndure @@ -104,7 +109,7 @@ bool32 AI_CanBattlerEscape(enum BattlerId battler); bool32 IsBattlerTrapped(enum BattlerId battlerAtk, enum BattlerId battlerDef); s32 AI_WhoStrikesFirst(enum BattlerId battlerAI, enum BattlerId battler, enum Move aiMoveConsidered, enum Move playerMoveConsidered, enum ConsiderPriority considerPriority); bool32 CanTargetFaintAi(enum BattlerId battlerDef, enum BattlerId battlerAtk); -u32 NoOfHitsForTargetToFaintBattler(enum BattlerId battlerDef, enum BattlerId battlerAtk, enum AiConsiderEndure considerEndure); +u32 NoOfHitsForTargetToFaintBattler(enum BattlerId battlerDef, enum BattlerId battlerAtk, enum DamageCalcContext calcContext, enum AiConsiderEndure considerEndure); void GetBestDmgMovesFromBattler(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum DamageCalcContext calcContext, enum Move *bestMoves); u32 GetMoveIndex(enum BattlerId battler, enum Move move); bool32 IsBestDmgMove(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum DamageCalcContext calcContext, enum Move move); @@ -256,6 +261,7 @@ bool32 AI_IsBattlerAsleepOrComatose(enum BattlerId battlerId); // ability logic bool32 IsMoxieTypeAbility(enum Ability ability); bool32 DoesAbilityRaiseStatsWhenLowered(enum Ability ability); +bool32 DoesIntimidateRaiseStats(enum Ability ability); bool32 ShouldTriggerAbility(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum Ability ability); bool32 CanEffectChangeAbility(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum Move move, struct AiLogicData *aiData); void AbilityChangeScore(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum Move move, s32 *score, struct AiLogicData *aiData); @@ -322,7 +328,6 @@ bool32 IsBattlerPredictedToSwitch(enum BattlerId battler); enum Move GetIncomingMove(enum BattlerId battler, enum BattlerId opposingBattler, struct AiLogicData *aiData); enum Move GetIncomingMoveSpeedCheck(enum BattlerId battler, enum BattlerId opposingBattler, struct AiLogicData *aiData); bool32 AI_OpponentCanFaintAiWithMod(enum BattlerId battler, u32 healAmount); -void SetBattlerFieldStatusForSwitchin(enum BattlerId battler); bool32 ShouldInstructPartner(enum BattlerId partner, enum Move move); bool32 CanMoveBeBouncedBack(enum BattlerId battler, enum Move move); diff --git a/include/battle_util.h b/include/battle_util.h index d70db846c6..e48b23225a 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -121,6 +121,8 @@ struct BattleContext enum HoldEffect holdEffectAtk; enum HoldEffect holdEffectDef; + u8 aiTurnOrder[MAX_BATTLERS_COUNT]; + // Flags u32 isCrit:1; u32 randomFactor:1; @@ -166,7 +168,6 @@ enum SubCheck }; void HandleAction_ThrowBall(void); -uq4_12_t CalcTypeEffectivenessMultiplierHelper(enum Move move, enum Type moveType, enum BattlerId battlerAtk, enum BattlerId battlerDef, enum Ability abilityAtk, enum Ability abilityDef, bool32 recordAbilities); u32 GetCurrentBattleWeather(void); bool32 EndOrContinueWeather(void); enum DamageCategory GetReflectDamageMoveDamageCategory(enum BattlerId battler, enum Move move); @@ -212,7 +213,6 @@ void TryClearRageAndFuryCutter(void); bool32 HasNoMonsToSwitch(enum BattlerId battler, u8 partyIdBattlerOn1, u8 partyIdBattlerOn2); bool32 TryChangeBattleWeather(enum BattlerId battler, u32 battleWeatherId, enum Ability ability); bool32 TryChangeBattleTerrain(enum BattlerId battler, u32 statusFlag); -bool32 CanAbilityBlockMove(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum Ability abilityAtk, enum Ability abilityDef, u32 move, enum ResultOption option); bool32 CanTargetBlockPranksterMove(struct BattleContext *ctx, s32 movePriority); bool32 CanPsychicTerrainProtectTarget(struct BattleContext *ctx, s32 movePriority); bool32 CanMoveBeBlockedByTarget(struct BattleContext *ctx, s32 movePriority); @@ -424,5 +424,6 @@ void TryResetConsecutiveUseCounter(enum BattlerId battler); void SetOrClearRageVolatile(void); enum BattlerId GetTargetBySlot(enum BattlerId battlerAtk, enum BattlerId battlerDef); bool32 IsNaturalEnemy(enum Species speciesAttacker, enum Species speciesTarget); +enum Stat GetDownloadStat(enum BattlerId battler); #endif // GUARD_BATTLE_UTIL_H diff --git a/include/config/ai.h b/include/config/ai.h index 30880b018a..ecf95bc70d 100644 --- a/include/config/ai.h +++ b/include/config/ai.h @@ -46,6 +46,8 @@ #define SHOULD_SWITCH_NATURAL_CURE_WEAK_STATS_RAISED_PERCENTAGE 10 #define SHOULD_SWITCH_REGENERATOR_PERCENTAGE 50 #define SHOULD_SWITCH_REGENERATOR_STATS_RAISED_PERCENTAGE 20 +#define SHOULD_SWITCH_INTIMIDATE_PERCENTAGE 25 +#define SHOULD_SWITCH_INTIMIDATE_STATS_RAISED_PERCENTAGE 10 // AI switchin considerations #define ALL_MOVES_BAD_STATUS_MOVES_BAD FALSE // If the AI has no moves that affect the target, ShouldSwitchIfAllMovesBad can prompt a switch. Enabling this config will ignore status moves that can affect the target when making this decision. @@ -84,6 +86,21 @@ #define AI_DAMAGES_THROUGH_BERRIES TRUE // AI will see through resist berries when considering a certain KO threshold for the purposes damage calcs; this is considered when comparing best moves to KO to still pick the actual OHKO if needed #define AI_IGNORE_BERRY_KO_THRESHOLD 2 // KO threshold AI must meet in order to treat it berry though it doesn't exist (ie. 2 means "If the AI can 2HKO with berry resisted attack + not-berry resisted next attack, ignore berry resistence when calcing first attack"). Requires AI_DAMAGES_THROUGH_BERRIES +// AI damage calc roll considerations +#define AI_ROLL_MIN 1 +#define AI_ROLL_MEDIAN 2 +#define AI_ROLL_MAX 3 +#define AI_ROLL_RANDOM 4 +#define AI_ROLL_TYPE_COUNT 5 + +// Define which roll type to use in each context; overridden by AI_FLAG_RISKY and AI_FLAG_CONSERVATIVE +#define AI_ROLL_ATTACKING AI_ROLL_MAX +#define AI_ROLL_DEFENDING AI_ROLL_MEDIAN +#define AI_ROLL_SWITCHIN_ATTACKING AI_ROLL_MEDIAN +#define AI_ROLL_SWITCHIN_DEFENDING AI_ROLL_MEDIAN +#define AI_ROLL_SHOULD_SETUP_DEFENDING AI_ROLL_MAX +#define AI_ROLL_ATTACKING_PARTNER AI_ROLL_MAX + // AI prediction chances #define PREDICT_SWITCH_CHANCE 50 #define PREDICT_MOVE_CHANCE 100 diff --git a/include/config/battle.h b/include/config/battle.h index c59f7190e4..2988d2622c 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -56,6 +56,7 @@ #define B_TAILWIND_TURNS GEN_LATEST // In Gen5+, Tailwind lasts 4 turns instead of 3. #define B_SLEEP_TURNS GEN_LATEST // In Gen5+, sleep lasts for 2-4 turns instead of 2-5 turns. #define B_TAUNT_TURNS GEN_LATEST // In Gen5+, Taunt lasts 3 turns if the user acts before the target, or 4 turns if the target acted before the user. In Gen3, taunt lasts 2 turns and in Gen 4, 3-5 turns. +#define B_ENCORE_TURNS GEN_LATEST // In Gen5+, Encore lasts 3 turns if the target hasn't yet moved this turn, or 4 turns if it has. In Gen4, it lasts 3-7 turns. In Gen2-3, 2-6 turns. #define B_SPORT_TURNS GEN_LATEST // In Gen6+, Water/Mud Sport last 5 turns, even if the user switches out. #define B_MEGA_EVO_TURN_ORDER GEN_LATEST // In Gen7, a Pokémon's Speed after Mega Evolution is used to determine turn order, not its Speed before. #define B_RECALC_TURN_AFTER_ACTIONS GEN_LATEST // In Gen8+, switching/using a move affects the current turn's order of actions, better known as dynamic speed. diff --git a/include/generational_changes.h b/include/config_changes.h similarity index 84% rename from include/generational_changes.h rename to include/config_changes.h index 7c00ee8bd3..6d3e434f57 100644 --- a/include/generational_changes.h +++ b/include/config_changes.h @@ -1,7 +1,7 @@ -#ifndef GUARD_GENERATIONAL_CHANGES_H -#define GUARD_GENERATIONAL_CHANGES_H +#ifndef GUARD_CONFIG_CHANGES_H +#define GUARD_CONFIG_CHANGES_H -#include "constants/generational_changes.h" +#include "constants/config_changes.h" #include "config/battle.h" #include "config/pokerus.h" #include "config/ai.h" @@ -30,4 +30,4 @@ void TestInitConfigData(void); void TestFreeConfigData(void); #endif -#endif // GUARD_GENERATIONAL_CHANGES_H +#endif // GUARD_CONFIG_CHANGES_H diff --git a/include/constants/battle_partner.h b/include/constants/battle_partner.h index 04292c6c74..c609ee5aa2 100644 --- a/include/constants/battle_partner.h +++ b/include/constants/battle_partner.h @@ -4,8 +4,6 @@ #define PARTNER_NONE 0 #define PARTNER_STEVEN 1 -#define PARTNER_DUMMY 2 -#define PARTNER_COUNT 3 -//Tests need PARTNER_COUNT to be at least 3 so we add a dummy partner +#define PARTNER_COUNT 2 #endif // GUARD_CONSTANTS_BATTLE_PARTNERS_H diff --git a/include/constants/generational_changes.h b/include/constants/config_changes.h similarity index 98% rename from include/constants/generational_changes.h rename to include/constants/config_changes.h index c2a2bebe22..1c0abe77ee 100644 --- a/include/constants/generational_changes.h +++ b/include/constants/config_changes.h @@ -1,5 +1,5 @@ -#ifndef GUARD_CONSTANTS_GENERATIONAL_CHANGES_H -#define GUARD_CONSTANTS_GENERATIONAL_CHANGES_H +#ifndef GUARD_CONSTANTS_CONFIG_CHANGES_H +#define GUARD_CONSTANTS_CONFIG_CHANGES_H /* Config definitions */ #define BATTLE_CONFIG_DEFINITIONS(F) \ @@ -55,6 +55,7 @@ F(B_TAILWIND_TURNS, tailwindTurns, (u32, GEN_COUNT - 1)) \ F(B_SLEEP_TURNS, sleepTurns, (u32, GEN_COUNT - 1)) /* TODO: use in tests */ \ F(B_TAUNT_TURNS, tauntTurns, (u32, GEN_COUNT - 1)) \ + F(B_ENCORE_TURNS, encoreTurns, (u32, GEN_COUNT - 1)) \ F(B_SPORT_TURNS, sportTurns, (u32, GEN_COUNT - 1)) /* TODO: use in tests */ \ F(B_MEGA_EVO_TURN_ORDER, megaEvoTurnOrder, (u32, GEN_COUNT - 1)) \ F(B_RECALC_TURN_AFTER_ACTIONS, recalcTurnAfterActions, (u32, GEN_COUNT - 1)) \ @@ -232,6 +233,7 @@ F(POKERUS_WEAK_VARIANT, pokerusWeakVariant, (u32, TRUE)) \ #define AI_CONFIG_DEFINITIONS(F) \ + F(AI_ROLL_ATTACKING, aiRollAttacking, (u32, AI_ROLL_TYPE_COUNT - 1)) \ #define GET_CONFIG_MAXIMUM(_typeMaxValue, ...) INVOKE_WITH_B(GET_CONFIG_MAXIMUM_, _typeMaxValue) #define GET_CONFIG_MAXIMUM_(_type, ...) FIRST(__VA_OPT__(FIRST(__VA_ARGS__),) MAX_BITS((sizeof(_type) * 8))) @@ -246,4 +248,4 @@ enum ConfigTag CONFIG_COUNT }; -#endif // GUARD_CONSTANTS_GENERATIONAL_CHANGES_H +#endif // GUARD_CONSTANTS_CONFIG_CHANGES_H diff --git a/include/constants/difficulty.h b/include/constants/difficulty.h index 44ef8d9d71..4b7cd7ddf6 100644 --- a/include/constants/difficulty.h +++ b/include/constants/difficulty.h @@ -6,6 +6,9 @@ enum DifficultyLevel DIFFICULTY_EASY, DIFFICULTY_NORMAL, //If you rename this, the word "Normal" in fprint_trainers must be replaced with the new difficulty name. DIFFICULTY_HARD, +#if TESTING + DIFFICULTY_TEST, +#endif DIFFICULTY_COUNT, }; diff --git a/include/constants/global.h b/include/constants/global.h index 93f88bcf18..e7df979ede 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -103,7 +103,6 @@ enum Language #define MAX_REMATCH_ENTRIES 100 // only REMATCH_TABLE_ENTRIES (78) are used #define NUM_CONTEST_WINNERS 13 #define UNION_ROOM_KB_ROW_COUNT 10 -#define GIFT_RIBBONS_COUNT 11 #define SAVED_TRENDS_COUNT 5 #define PYRAMID_BAG_ITEMS_COUNT 10 #define ROAMER_COUNT 1 // Number of maximum concurrent active roamers diff --git a/include/constants/species.h b/include/constants/species.h index 49079d5494..bf5122e13f 100644 --- a/include/constants/species.h +++ b/include/constants/species.h @@ -1690,7 +1690,11 @@ enum __attribute__((packed)) Species SPECIES_TATSUGIRI_STRETCHY_MEGA = 1571, SPECIES_GLIMMORA_MEGA = 1572, - SPECIES_EGG = (SPECIES_GLIMMORA_MEGA + 1), + SPECIES_CUSTOM_START = SPECIES_GLIMMORA_MEGA, + // Add any custom species between here and SPECIES_CUSTOM_END + SPECIES_CUSTOM_END, + + SPECIES_EGG = SPECIES_CUSTOM_END, NUM_SPECIES = SPECIES_EGG, }; diff --git a/include/event_scripts.h b/include/event_scripts.h index 2b6a030ef3..ffdb73eb18 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -630,6 +630,8 @@ extern const u8 EventScript_SelectWithoutRegisteredItem[]; extern const u8 EventScript_WhiteOut[]; extern const u8 EventScript_AfterWhiteOutMomHeal[]; extern const u8 EventScript_AfterWhiteOutHeal[]; +extern const u8 EventScript_AfterWhiteOutHeal_Frlg[]; +extern const u8 EventScript_AfterWhiteOutHealMsgPreFirstBoss[]; extern const u8 EventScript_ResetMrBriney[]; extern const u8 EventScript_DoLinkRoomExit[]; extern const u8 CableClub_EventScript_TooBusyToNotice[]; diff --git a/include/global.h b/include/global.h index 66d1a60283..4fe837f2d2 100644 --- a/include/global.h +++ b/include/global.h @@ -1169,7 +1169,8 @@ struct SaveBlock1 #if FREE_LINK_BATTLE_RECORDS == FALSE /*0x3150*/ struct LinkBattleRecords linkBattleRecords; #endif //FREE_LINK_BATTLE_RECORDS - /*0x31A8*/ u8 giftRibbons[GIFT_RIBBONS_COUNT]; + /*0x31A8*/ u8 giftRibbons[NUM_GIFT_RIBBONS]; + u8 padding[4]; /*0x31B3*/ struct ExternalEventData externalEventData; /*0x31C7*/ struct ExternalEventFlags externalEventFlags; /*0x31DC*/ struct Roamer roamer[ROAMER_COUNT]; diff --git a/include/graphics.h b/include/graphics.h index fddc90e074..7ecd951c0c 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -1525,6 +1525,7 @@ extern const u16 gItemIconPalette_GhostTMHM[]; extern const u16 gItemIconPalette_DragonTMHM[]; extern const u16 gItemIconPalette_DarkTMHM[]; extern const u16 gItemIconPalette_SteelTMHM[]; +extern const u16 gItemIconPalette_MysteryTMHM[]; extern const u16 gItemIconPalette_FairyTMHM[]; // Charms extern const u32 gItemIcon_OvalCharm[]; diff --git a/include/move.h b/include/move.h index 78fad5769f..4e28562753 100644 --- a/include/move.h +++ b/include/move.h @@ -1,7 +1,7 @@ #ifndef GUARD_MOVES_H #define GUARD_MOVES_H -#include "generational_changes.h" +#include "config_changes.h" #include "contest_effect.h" #include "constants/battle.h" #include "constants/battle_factory.h" diff --git a/include/random.h b/include/random.h index a11e5859bd..3a51c46036 100644 --- a/include/random.h +++ b/include/random.h @@ -161,6 +161,7 @@ enum RandomTag RNG_SHED_SKIN, RNG_SLEEP_TURNS, RNG_TAUNT_TURNS, + RNG_ENCORE_TURNS, RNG_SPEED_TIE, RNG_STATIC, RNG_STENCH, @@ -187,6 +188,7 @@ enum RandomTag RNG_AI_SWITCH_ABSORBING_STAY_IN, RNG_AI_SWITCH_NATURAL_CURE, RNG_AI_SWITCH_REGENERATOR, + RNG_AI_SWITCH_INTIMIDATE, RNG_AI_SWITCH_ENCORE, RNG_AI_SWITCH_CHOICE_LOCKED, RNG_AI_SWITCH_STATS_LOWERED, @@ -243,6 +245,7 @@ enum RandomTag RNG_FISHING_GEN3_STICKY, RNG_WILD_MON_TARGET, RNG_AI_FAKE_OUT_SAVE_ALLY, + RNG_AI_DMG_ROLL_RANDOM, }; #define RandomWeighted(tag, ...) \ diff --git a/include/test/battle.h b/include/test/battle.h index fba0cfc629..c804703d41 100644 --- a/include/test/battle.h +++ b/include/test/battle.h @@ -540,7 +540,7 @@ #include "battle.h" #include "battle_anim.h" #include "data.h" -#include "generational_changes.h" +#include "config_changes.h" #include "item.h" #include "random.h" #include "recorded_battle.h" diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 1ee4b48ac1..417190cc06 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -142,6 +142,20 @@ static s32 (*const sBattleAiFuncTable[])(enum BattlerId, enum BattlerId, enum Mo }; // Functions +void AIDebugTimerStart() +{ + // Set delay timer to count how long it takes for AI to choose action/move + gBattleStruct->aiDelayTimer = gMain.vblankCounter1; + CycleCountStart(); +} + +void AIDebugTimerEnd() +{ + // We add to existing to compound multiple calls + gBattleStruct->aiDelayFrames += gMain.vblankCounter1 - gBattleStruct->aiDelayTimer; + gBattleStruct->aiDelayCycles += CycleCountEnd(); +} + void BattleAI_SetupAIData(u8 defaultScoreMoves, enum BattlerId battler) { u32 moveLimitations; @@ -371,6 +385,9 @@ void ComputeBattlerDecisions(enum BattlerId battler) gAiLogicData->aiCalcInProgress = TRUE; + if (DEBUG_AI_DELAY_TIMER) + AIDebugTimerStart(); + // Setup battler and prediction data BattleAI_SetupAIData(0xF, battler); SetupAIPredictionData(battler, SWITCH_MID_BATTLE_OPTIONAL); @@ -390,6 +407,9 @@ void ComputeBattlerDecisions(enum BattlerId battler) BattlerChooseNonMoveAction(); ModifySwitchAfterMoveScoring(battler); + if (DEBUG_AI_DELAY_TIMER) + AIDebugTimerEnd(); + gAiLogicData->aiCalcInProgress = FALSE; } } @@ -714,8 +734,10 @@ void SetAiLogicDataForTurn(struct AiLogicData *aiData) if (!(gBattleTypeFlags & BATTLE_TYPE_HAS_AI) && !IsWildMonSmart()) return; - // Set delay timer to count how long it takes for AI to choose action/move - gBattleStruct->aiDelayTimer = gMain.vblankCounter1; + gAiLogicData->aiCalcInProgress = TRUE; + + if (DEBUG_AI_DELAY_TIMER) + AIDebugTimerStart(); aiData->weatherHasEffect = HasWeatherEffect(); weather = AI_GetWeather(); @@ -723,9 +745,6 @@ void SetAiLogicDataForTurn(struct AiLogicData *aiData) // get/assume all battler data and simulate AI damage battlersCount = gBattlersCount; - gAiLogicData->aiCalcInProgress = TRUE; - if (DEBUG_AI_DELAY_TIMER) - CycleCountStart(); for (enum BattlerId battlerAtk = 0; battlerAtk < battlersCount; battlerAtk++) { if (!IsBattlerAlive(battlerAtk)) @@ -756,8 +775,8 @@ void SetAiLogicDataForTurn(struct AiLogicData *aiData) } if (DEBUG_AI_DELAY_TIMER) - // We add to existing to compound multiple calls - gBattleStruct->aiDelayCycles += CycleCountEnd(); + AIDebugTimerEnd(); + gAiLogicData->aiCalcInProgress = FALSE; } @@ -3208,8 +3227,8 @@ static s32 AI_DoubleBattle(enum BattlerId battlerAtk, enum BattlerId battlerDef, bool32 hasTwoOpponents = HasTwoOpponents(battlerAtk); bool32 hasPartner = HasPartner(battlerAtk); u32 friendlyFireThreshold = GetFriendlyFireKOThreshold(battlerAtk); - u32 noOfHitsToKOPartner = GetNoOfHitsToKOBattler(battlerAtk, battlerAtkPartner, gAiThinkingStruct->movesetIndex, AI_ATTACKING, CONSIDER_ENDURE); - bool32 wouldPartnerFaint = hasPartner && CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, gAiThinkingStruct->movesetIndex, AI_ATTACKING) && !partnerProtecting; + u32 noOfHitsToKOPartner = GetNoOfHitsToKOBattler(battlerAtk, battlerAtkPartner, gAiThinkingStruct->movesetIndex, AI_ATTACKING_PARTNER, CONSIDER_ENDURE); + bool32 wouldPartnerFaint = hasPartner && CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, gAiThinkingStruct->movesetIndex, AI_ATTACKING_PARTNER) && !partnerProtecting; bool32 isFriendlyFireOK = !wouldPartnerFaint && (noOfHitsToKOPartner == 0 || noOfHitsToKOPartner > friendlyFireThreshold); // check what effect partner is using @@ -4109,7 +4128,7 @@ static enum MoveComparisonResult CompareMoveTwoTurnEffect(enum BattlerId battler static inline bool32 ShouldUseSpreadDamageMove(enum BattlerId battlerAtk, enum Move move, u32 moveIndex, u32 hitsToFaintOpposingBattler) { enum BattlerId partnerBattler = BATTLE_PARTNER(battlerAtk); - u32 noOfHitsToFaintPartner = GetNoOfHitsToKOBattler(battlerAtk, partnerBattler, moveIndex, AI_ATTACKING, CONSIDER_ENDURE); + u32 noOfHitsToFaintPartner = GetNoOfHitsToKOBattler(battlerAtk, partnerBattler, moveIndex, AI_ATTACKING_PARTNER, CONSIDER_ENDURE); u32 friendlyFireThreshold = GetFriendlyFireKOThreshold(battlerAtk); return (HasPartnerIgnoreFlags(battlerAtk) && noOfHitsToFaintPartner != 0 // Immunity check diff --git a/src/battle_ai_switch.c b/src/battle_ai_switch.c index 76593efb55..7c15f19057 100644 --- a/src/battle_ai_switch.c +++ b/src/battle_ai_switch.c @@ -35,11 +35,20 @@ struct IncomingHealInfo static bool32 CanUseSuperEffectiveMoveAgainstOpponents(enum BattlerId battler); static bool32 FindMonWithFlagsAndSuperEffective(enum BattlerId battler, u16 flags, u32 moduloPercent); static u32 GetSwitchinHazardsDamage(enum BattlerId battler); +static u32 GetSwitchinSingleUseItemHealing(enum BattlerId battler, enum BattlerId opposingBattler, s32 currentHP); static bool32 AI_CanSwitchinAbilityTrapOpponent(enum Ability ability, enum BattlerId opposingBattler); static u32 GetBattlerTypeMatchup(enum BattlerId opposingBattler, enum BattlerId battler); static u32 GetSwitchinHitsToKO(s32 damageTaken, enum BattlerId battler, const struct IncomingHealInfo *healInfo, u32 originalHp); static void GetIncomingHealInfo(enum BattlerId battler, struct IncomingHealInfo *healInfo); static u32 GetWishHealAmountForBattler(enum BattlerId battler); +static void SetBattlerStatusForSwitchin(enum BattlerId battler); +static void SetBattlerStatStagesForSwitchin(enum BattlerId battler, enum BattlerId opposingBattler, u32 fieldStatus); +static void SetBattlerHPChangeForSwitch(enum BattlerId battler, enum BattlerId opposingBattler); +static void SetBattlerVolatilesForSwitchin(enum BattlerId battler, u32 weather, u32 fieldStatus); +bool32 IsSwitchinTSpikesAffected(enum BattlerId battler); +static bool32 IsOpponentPhysicalAttacker(enum BattlerId battler, enum BattlerId opposingBattler); +static bool32 CanIntimidateLowerOpponentAtk(enum BattlerId battler, enum BattlerId opposingBattler); +static bool32 ShouldSwitchIfIntimidateBenefit(enum BattlerId battler); static void InitializeSwitchinCandidate(enum BattlerId switchinBattler, u32 monIndex, struct Pokemon *mon) { @@ -48,17 +57,24 @@ static void InitializeSwitchinCandidate(enum BattlerId switchinBattler, u32 monI // Setup switchin battler data gAiThinkingStruct->saved[switchinBattler].saved = TRUE; SetBattlerAiData(switchinBattler, gAiLogicData); - SetBattlerFieldStatusForSwitchin(switchinBattler); + u32 switchinWeather = AI_GetSwitchinWeather(switchinBattler); + u32 switchinFieldStatus = AI_GetSwitchinFieldStatus(switchinBattler); + SetBattlerVolatilesForSwitchin(switchinBattler, switchinWeather, switchinFieldStatus); + SetBattlerStatusForSwitchin(switchinBattler); gBattlerPartyIndexes[switchinBattler] = monIndex; + gAiLogicData->switchInCalc = TRUE; + for (enum BattlerId battlerIndex = 0; battlerIndex < gBattlersCount; battlerIndex++) { if (switchinBattler == battlerIndex || !IsBattlerAlive(battlerIndex)) continue; - - CalcBattlerAiMovesData(gAiLogicData, switchinBattler, battlerIndex, AI_GetSwitchinWeather(switchinBattler), AI_GetSwitchinFieldStatus(switchinBattler)); - CalcBattlerAiMovesData(gAiLogicData, battlerIndex, switchinBattler, AI_GetSwitchinWeather(switchinBattler), AI_GetSwitchinFieldStatus(switchinBattler)); + SetBattlerStatStagesForSwitchin(switchinBattler, battlerIndex, switchinFieldStatus); + SetBattlerHPChangeForSwitch(switchinBattler, battlerIndex); + CalcBattlerAiMovesData(gAiLogicData, switchinBattler, battlerIndex, switchinWeather, switchinFieldStatus); + CalcBattlerAiMovesData(gAiLogicData, battlerIndex, switchinBattler, switchinWeather, switchinFieldStatus); } + gAiLogicData->switchInCalc = FALSE; gBattlerPartyIndexes[switchinBattler] = storeCurrBattlerPartyIndex; gAiThinkingStruct->saved[switchinBattler].saved = FALSE; } @@ -170,6 +186,10 @@ u32 GetSwitchChance(enum ShouldSwitchScenario shouldSwitchScenario) return SHOULD_SWITCH_REGENERATOR_PERCENTAGE; case SHOULD_SWITCH_REGENERATOR_STATS_RAISED: return SHOULD_SWITCH_REGENERATOR_STATS_RAISED_PERCENTAGE; + case SHOULD_SWITCH_INTIMIDATE: + return SHOULD_SWITCH_INTIMIDATE_PERCENTAGE; + case SHOULD_SWITCH_INTIMIDATE_STATS_RAISED: + return SHOULD_SWITCH_INTIMIDATE_STATS_RAISED_PERCENTAGE; case SHOULD_SWITCH_ENCORE_STATUS: return SHOULD_SWITCH_ENCORE_STATUS_PERCENTAGE; case SHOULD_SWITCH_ENCORE_DAMAGE: @@ -221,6 +241,35 @@ static bool32 AreStatsRaised(enum BattlerId battler) return (buffedStatsValue > STAY_IN_STATS_RAISED); } +bool32 IsSwitchinTSpikesAffected(enum BattlerId battler) +{ + enum Ability ability = gAiLogicData->abilities[battler]; + enum HoldEffect heldItemEffect = gAiLogicData->holdEffects[battler]; + enum BattlerId opposingBattler = GetOppositeBattler(battler); + bool32 ignoreItem = ((gFieldStatuses & STATUS_FIELD_MAGIC_ROOM) || ability == ABILITY_KLUTZ); + if (gBattleMons[battler].status1 & STATUS1_ANY) + return FALSE; + if (IS_BATTLER_ANY_TYPE(battler, TYPE_POISON, TYPE_STEEL)) + return FALSE; + if (ability == ABILITY_IMMUNITY || IsAbilityOnSide(battler, ABILITY_PASTEL_VEIL)) + return FALSE; + if ((heldItemEffect == HOLD_EFFECT_HEAVY_DUTY_BOOTS || heldItemEffect == HOLD_EFFECT_CURE_PSN || heldItemEffect == HOLD_EFFECT_CURE_STATUS) && !ignoreItem) + return FALSE; + if (!AI_IsBattlerGrounded(battler)) + return FALSE; + if (IsMistyTerrainAffected(battler, ability, heldItemEffect, gFieldStatuses)) + return FALSE; + if (IsLeafGuardProtected(battler, ability)) + return FALSE; + if (IsShieldsDownProtected(battler, ability)) + return FALSE; + if (IsFlowerVeilProtected(battler)) + return FALSE; + if (IsSafeguardProtected(opposingBattler, battler, gAiLogicData->abilities[opposingBattler])) + return FALSE; + return TRUE; +} + static inline bool32 SetSwitchinAndSwitch(enum BattlerId battler, u32 switchinId) { gBattleStruct->AI_monToSwitchIntoId[battler] = switchinId; @@ -342,7 +391,7 @@ static bool32 ShouldSwitchIfHasBadOdds(enum BattlerId battler) hasSuperEffectiveMove = TRUE; // Check if can win 1v1 - hitsToKOPlayer = GetNoOfHitsToKOBattler(battler, opposingBattler, moveIndex, AI_ATTACKING, CONSIDER_ENDURE); + hitsToKOPlayer = GetNoOfHitsToKOBattler(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, CONSIDER_ENDURE); if (!canBattlerWin1v1 ) // Once we can win a 1v1 we don't need to track this, but want to run the rest of the function to keep the runtime the same regardless of when we find the winning move { isBattlerFirst = AI_IsFaster(battler, opposingBattler, aiMove, expectedMove, CONSIDER_PRIORITY); @@ -586,7 +635,7 @@ static bool32 FindMonThatAbsorbsOpponentsMove(enum BattlerId battler) // Only check damage if it's a damaging move if (!IsBattleMoveStatus(aiMove)) { - if (!AI_DoesChoiceEffectBlockMove(battler, aiMove) && AI_GetDamage(battler, opposingBattler, moveIndex, AI_ATTACKING, gAiLogicData) > gBattleMons[opposingBattler].hp) + if (!AI_DoesChoiceEffectBlockMove(battler, aiMove) && AI_GetDamage(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, gAiLogicData) > gBattleMons[opposingBattler].hp) return FALSE; } } @@ -913,6 +962,103 @@ static bool32 GetHitEscapeTransformState(enum BattlerId battlerAtk, enum Move mo return isFasterThanAll; } +static bool32 IsOpponentPhysicalAttacker(enum BattlerId battler, enum BattlerId opposingBattler) +{ + if (!IsBattlerAlive(opposingBattler)) + return FALSE; + + if (GetBestDmgFromBattler(opposingBattler, battler, AI_DEFENDING) > 0 && HasPhysicalBestMove(opposingBattler, battler, AI_DEFENDING)) + return TRUE; + + enum Move incomingMove = GetIncomingMove(battler, opposingBattler, gAiLogicData); + return incomingMove != MOVE_NONE + && incomingMove != MOVE_UNAVAILABLE + && GetBattleMoveCategory(incomingMove) == DAMAGE_CATEGORY_PHYSICAL; +} + +static bool32 CanIntimidateLowerOpponentAtk(enum BattlerId battler, enum BattlerId opposingBattler) +{ + enum Ability abilityDef = gAiLogicData->abilities[opposingBattler]; + + // If Attack is already at -2 or lower, repeated Intimidate cycles aren't worth it. + if (gBattleMons[opposingBattler].statStages[STAT_ATK] <= DEFAULT_STAT_STAGE - 2) + return FALSE; + + if (gBattleMons[opposingBattler].volatiles.substitute) + return FALSE; + + if (gAiLogicData->holdEffects[opposingBattler] == HOLD_EFFECT_CLEAR_AMULET) + return FALSE; + + if (gSideStatuses[GetBattlerSide(opposingBattler)] & SIDE_STATUS_MIST) + return FALSE; + + if (IS_BATTLER_OF_TYPE(opposingBattler, TYPE_GRASS) && AI_IsAbilityOnSide(opposingBattler, ABILITY_FLOWER_VEIL)) + return FALSE; + + switch (abilityDef) + { + case ABILITY_HYPER_CUTTER: + case ABILITY_CLEAR_BODY: + case ABILITY_FULL_METAL_BODY: + case ABILITY_WHITE_SMOKE: + return FALSE; + default: + break; + } + + if (GetConfig(B_UPDATED_INTIMIDATE) >= GEN_8) + { + switch (abilityDef) + { + case ABILITY_INNER_FOCUS: + case ABILITY_SCRAPPY: + case ABILITY_OWN_TEMPO: + case ABILITY_OBLIVIOUS: + return FALSE; + default: + break; + } + } + + return TRUE; +} + +static bool32 ShouldSwitchIfIntimidateBenefit(enum BattlerId battler) +{ + // Keep Intimidate cycling behavior restricted to smart-switching AI + if (!(gAiThinkingStruct->aiFlags[battler] & AI_FLAG_SMART_SWITCHING)) + return FALSE; + + enum BattlerId opposingBattler = GetOppositeBattler(battler); + enum BattlerId opposingPartner = BATTLE_PARTNER(opposingBattler); + bool32 hasValidTarget = FALSE; + + if (IsBattlerAlive(opposingBattler)) + { + enum Ability abilityDef = gAiLogicData->abilities[opposingBattler]; + bool32 canLowerAtk = CanIntimidateLowerOpponentAtk(battler, opposingBattler); + + if (canLowerAtk && (DoesIntimidateRaiseStats(abilityDef) || abilityDef == ABILITY_MIRROR_ARMOR)) + return FALSE; + if (canLowerAtk && IsOpponentPhysicalAttacker(battler, opposingBattler)) + hasValidTarget = TRUE; + } + + if (IsDoubleBattle() && IsBattlerAlive(opposingPartner)) + { + enum Ability abilityDef = gAiLogicData->abilities[opposingPartner]; + bool32 canLowerAtk = CanIntimidateLowerOpponentAtk(battler, opposingPartner); + + if (canLowerAtk && (DoesIntimidateRaiseStats(abilityDef) || abilityDef == ABILITY_MIRROR_ARMOR)) + return FALSE; + if (canLowerAtk && IsOpponentPhysicalAttacker(battler, opposingPartner)) + hasValidTarget = TRUE; + } + + return hasValidTarget; +} + static bool32 ShouldSwitchIfAbilityBenefit(enum BattlerId battler) { bool32 hasStatRaised = AnyUsefulStatIsRaised(battler); @@ -950,20 +1096,21 @@ static bool32 ShouldSwitchIfAbilityBenefit(enum BattlerId battler) return FALSE; + case ABILITY_INTIMIDATE: + // TODO: In ShouldSwitch cleanup, gate Intimidate cycling behind "stay in instead if the current mon wins the 1v1" to avoid duplicating Bad Odds logic here. + if (ShouldSwitchIfIntimidateBenefit(battler) + && gAiLogicData->mostSuitableMonId[battler] != PARTY_SIZE + && (hasStatRaised ? RandomPercentage(RNG_AI_SWITCH_INTIMIDATE, GetSwitchChance(SHOULD_SWITCH_INTIMIDATE_STATS_RAISED)) : RandomPercentage(RNG_AI_SWITCH_INTIMIDATE, GetSwitchChance(SHOULD_SWITCH_INTIMIDATE)))) + break; + + return FALSE; + case ABILITY_ZERO_TO_HERO: { enum Move hitEscapeMove = MOVE_NONE; - for (u32 moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++) - { - enum Move move = gBattleMons[battler].moves[moveIndex]; - - if (move != MOVE_NONE && GetMoveEffect(move) == EFFECT_HIT_ESCAPE) - { - hitEscapeMove = move; - break; - } - } + if (GetBattlerMoveIndexWithEffect(battler, EFFECT_HIT_ESCAPE) < MAX_MON_MOVES) + hitEscapeMove = gBattleMons[battler].moves[GetBattlerMoveIndexWithEffect(battler, EFFECT_HIT_ESCAPE)]; // Prefer to use a hit escape move if Palafin will move first and can hit if (hitEscapeMove != MOVE_NONE && GetHitEscapeTransformState(battler, hitEscapeMove)) @@ -1477,6 +1624,51 @@ bool32 IsSwitchinValid(enum BattlerId battler) return TRUE; } +static u32 GetSwitchinSingleUseItemHealing(enum BattlerId battler, enum BattlerId opposingBattler, s32 currentHP) +{ + enum Item aiItem = gAiLogicData->items[battler]; + u32 maxHP = gBattleMons[battler].maxHP; + s32 itemHeal = 0; + + // Check if we're at a single use healing item threshold + if (currentHP <= 0 + || gAiLogicData->abilities[battler] == ABILITY_KLUTZ + || (gAiLogicData->abilities[opposingBattler] == ABILITY_UNNERVE && GetItemPocket(aiItem) == POCKET_BERRIES)) + return itemHeal; + + switch (GetItemHoldEffect(aiItem)) + { + case HOLD_EFFECT_RESTORE_HP: + if (currentHP < maxHP / 2) + itemHeal = GetItemHoldEffectParam(aiItem); + break; + case HOLD_EFFECT_RESTORE_PCT_HP: + if (currentHP < maxHP / 2) + { + itemHeal = maxHP / GetItemHoldEffectParam(aiItem); + if (itemHeal == 0) + itemHeal = 1; + } + break; + case HOLD_EFFECT_CONFUSE_SPICY: + case HOLD_EFFECT_CONFUSE_DRY: + case HOLD_EFFECT_CONFUSE_SWEET: + case HOLD_EFFECT_CONFUSE_BITTER: + case HOLD_EFFECT_CONFUSE_SOUR: + if (currentHP < maxHP / CONFUSE_BERRY_HP_FRACTION) + { + itemHeal = maxHP / GetItemHoldEffectParam(aiItem); + if (itemHeal == 0) + itemHeal = 1; + } + break; + default: + break; + } + + return itemHeal; +} + // Gets hazard damage static u32 GetSwitchinHazardsDamage(enum BattlerId battler) { @@ -1670,7 +1862,6 @@ static u32 GetSwitchinRecurringDamage(enum BattlerId battler) static u32 GetSwitchinStatusDamage(enum BattlerId battler) { u8 tSpikesLayers = gSideTimers[GetBattlerSide(battler)].toxicSpikesAmount; - enum HoldEffect heldItemEffect = gAiLogicData->holdEffects[battler]; u32 status = gBattleMons[battler].status1; enum Ability ability = gAiLogicData->abilities[battler]; u32 maxHP = gBattleMons[battler].maxHP; @@ -1718,13 +1909,7 @@ static u32 GetSwitchinStatusDamage(enum BattlerId battler) // Apply hypothetical poisoning from Toxic Spikes, which means the first turn of damage already added in GetSwitchinHazardsDamage // Do this last to skip one iteration of Poison / Toxic damage, and start counting Toxic damage one turn later. - if (tSpikesLayers != 0 && (!IS_BATTLER_ANY_TYPE(battler, TYPE_POISON, TYPE_STEEL) - && ability != ABILITY_IMMUNITY && ability != ABILITY_POISON_HEAL && ability != ABILITY_PASTEL_VEIL - && status == 0 - && !(heldItemEffect == HOLD_EFFECT_HEAVY_DUTY_BOOTS - && (((gFieldStatuses & STATUS_FIELD_MAGIC_ROOM) || ability == ABILITY_KLUTZ))) - && heldItemEffect != HOLD_EFFECT_CURE_PSN && heldItemEffect != HOLD_EFFECT_CURE_STATUS - && AI_IsBattlerGrounded(battler))) + if (tSpikesLayers != 0 && IsSwitchinTSpikesAffected(battler)) { if (tSpikesLayers == 1) { @@ -1766,7 +1951,7 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, enum BattlerId battler, const st u32 statusDamage = GetSwitchinStatusDamage(battler); u32 hitsToKO = 0; u16 maxHP = gBattleMons[battler].maxHP, item = gAiLogicData->items[battler], heldItemEffect = GetItemHoldEffect(item); - u8 weatherDuration = gBattleStruct->weatherDuration, holdEffectParam = GetItemHoldEffectParam(item); + u8 weatherDuration = gBattleStruct->weatherDuration; enum BattlerId opposingBattler = GetOppositeBattler(battler); enum Ability opposingAbility = gAiLogicData->abilities[opposingBattler], ability = gAiLogicData->abilities[battler]; bool32 usedSingleUseHealingItem = FALSE, opponentCanBreakMold = IsMoldBreakerTypeAbility(opposingBattler, opposingAbility); @@ -1800,37 +1985,9 @@ static u32 GetSwitchinHitsToKO(s32 damageTaken, enum BattlerId battler, const st currentHP = currentHP - weatherImpact; // Check if we're at a single use healing item threshold - if (currentHP > 0 && gAiLogicData->abilities[battler] != ABILITY_KLUTZ && usedSingleUseHealingItem == FALSE - && !(opposingAbility == ABILITY_UNNERVE && GetItemPocket(item) == POCKET_BERRIES)) + if (usedSingleUseHealingItem == FALSE) { - switch (heldItemEffect) - { - case HOLD_EFFECT_RESTORE_HP: - if (currentHP < maxHP / 2) - singleUseItemHeal = holdEffectParam; - break; - case HOLD_EFFECT_RESTORE_PCT_HP: - if (currentHP < maxHP / 2) - { - singleUseItemHeal = maxHP / holdEffectParam; - if (singleUseItemHeal == 0) - singleUseItemHeal = 1; - } - break; - case HOLD_EFFECT_CONFUSE_SPICY: - case HOLD_EFFECT_CONFUSE_DRY: - case HOLD_EFFECT_CONFUSE_SWEET: - case HOLD_EFFECT_CONFUSE_BITTER: - case HOLD_EFFECT_CONFUSE_SOUR: - if (currentHP < maxHP / CONFUSE_BERRY_HP_FRACTION) - { - singleUseItemHeal = maxHP / holdEffectParam; - if (singleUseItemHeal == 0) - singleUseItemHeal = 1; - } - break; - } - + singleUseItemHeal = GetSwitchinSingleUseItemHealing(battler, opposingBattler, currentHP); // If we used one, apply it without overcapping our maxHP if (singleUseItemHeal > 0) { @@ -1964,7 +2121,7 @@ static s32 GetMaxDamagePlayerCouldDealToSwitchin(enum BattlerId battler, enum Ba playerMove = SMART_SWITCHING_OMNISCIENT ? gBattleMons[opposingBattler].moves[moveIndex] : playerMoves[moveIndex]; if (playerMove != MOVE_NONE && !IsBattleMoveStatus(playerMove) && GetMoveEffect(playerMove) != EFFECT_FOCUS_PUNCH && gBattleMons[opposingBattler].pp[moveIndex] > 0) { - damageTaken = AI_GetDamage(opposingBattler, battler, moveIndex, AI_DEFENDING, gAiLogicData); + damageTaken = AI_GetDamage(opposingBattler, battler, moveIndex, AI_SWITCHIN_DEFENDING, gAiLogicData); if (playerMove == gBattleStruct->choicedMove[opposingBattler]) // If player is choiced, only care about the choice locked move { *bestPlayerMove = playerMove; @@ -1995,7 +2152,7 @@ static s32 GetMaxPriorityDamagePlayerCouldDealToSwitchin(enum BattlerId battler, if (GetBattleMovePriority(opposingBattler, gAiLogicData->abilities[opposingBattler], playerMove) > 0 && playerMove != MOVE_NONE && !IsBattleMoveStatus(playerMove) && GetMoveEffect(playerMove) != EFFECT_FOCUS_PUNCH && gBattleMons[opposingBattler].pp[moveIndex] > 0) { - damageTaken = AI_GetDamage(opposingBattler, battler, moveIndex, AI_DEFENDING, gAiLogicData); + damageTaken = AI_GetDamage(opposingBattler, battler, moveIndex, AI_SWITCHIN_DEFENDING, gAiLogicData); if (playerMove == gBattleStruct->choicedMove[opposingBattler]) // If player is choiced, only care about the choice locked move { *bestPlayerPriorityMove = playerMove; @@ -2161,8 +2318,8 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int lastId, enum BattlerI continue; aiMove = gBattleMons[battler].moves[moveIndex]; - damageDealt = AI_GetDamage(battler, opposingBattler, moveIndex, AI_ATTACKING, gAiLogicData); - hitsToKOPlayer = GetNoOfHitsToKOBattler(battler, opposingBattler, moveIndex, AI_ATTACKING, CONSIDER_ENDURE); + damageDealt = AI_GetDamage(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, gAiLogicData); + hitsToKOPlayer = GetNoOfHitsToKOBattler(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, CONSIDER_ENDURE); // Offensive switchin decisions are based on which whether switchin moves first and whether it can win a 1v1 isSwitchinFirst = AI_IsFaster(battler, opposingBattler, aiMove, bestPlayerMove, CONSIDER_PRIORITY); @@ -2420,7 +2577,7 @@ static u32 GetBestMonVanilla(struct Pokemon *party, int lastId, enum BattlerId b // Best damage if (aiMove != MOVE_NONE && !IsBattleMoveStatus(aiMove)) { - u32 aiDmg = AI_GetDamage(battler, opposingBattler, moveIndex, AI_ATTACKING, gAiLogicData); + u32 aiDmg = AI_GetDamage(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, gAiLogicData); if (aiDmg > bestDamage) { bestDamage = aiDmg; @@ -2561,7 +2718,7 @@ u32 AI_SelectRevivalBlessingMon(enum BattlerId battler) if (aiMove == MOVE_NONE || gBattleMons[battler].pp[moveIndex] == 0) continue; - s32 damage = AI_GetDamage(battler, opposingBattler, moveIndex, AI_ATTACKING, gAiLogicData); + s32 damage = AI_GetDamage(battler, opposingBattler, moveIndex, AI_SWITCHIN_ATTACKING, gAiLogicData); if (damage > bestDamage) bestDamage = damage; } @@ -2596,3 +2753,196 @@ u32 AI_SelectRevivalBlessingMon(enum BattlerId battler) return bestMonId; } + +static void SetBattlerStatusForSwitchin(enum BattlerId battler) +{ + u32 tSpikesLayers = gSideTimers[GetBattlerSide(battler)].toxicSpikesAmount; + if (tSpikesLayers != 0 && IsSwitchinTSpikesAffected(battler)) + { + if (tSpikesLayers == 1) + gBattleMons[battler].status1 = STATUS1_POISON; + if (tSpikesLayers == 2) + { + gBattleMons[battler].status1 = STATUS1_TOXIC_POISON; + gBattleMons[battler].status1 += STATUS1_TOXIC_TURN(1); + } + } +} + +static void SetBattlerStatStagesForSwitchin(enum BattlerId battler, enum BattlerId opposingBattler, u32 fieldStatus) +{ + u32 aiAbility = gAiLogicData->abilities[battler]; + enum Item aiItem = gAiLogicData->items[battler]; + bool32 isStickyWebsAffected = (IsHazardOnSide(GetBattlerSide(battler), HAZARDS_STICKY_WEB) && IsBattlerAffectedByHazards(battler, GetItemHoldEffect(aiItem), FALSE) && IsBattlerGrounded(battler, gAiLogicData->abilities[battler], GetItemHoldEffect(aiItem))); + bool32 opponentStatDrop = FALSE; + + // Ability stat changes + switch(aiAbility) + { + case ABILITY_INTREPID_SWORD: + gBattleMons[battler].statStages[STAT_ATK] += 1; + break; + case ABILITY_DAUNTLESS_SHIELD: + gBattleMons[battler].statStages[STAT_DEF] += 1; + break; + case ABILITY_SUPREME_OVERLORD: + break; + case ABILITY_DOWNLOAD: + gBattleMons[battler].statStages[GetDownloadStat(battler)] += 1; + break; + case ABILITY_INTIMIDATE: + if (CanLowerStat(battler, opposingBattler, gAiLogicData, STAT_ATK)) + { + if (gAiLogicData->abilities[opposingBattler] == ABILITY_CONTRARY) + { + gBattleMons[opposingBattler].statStages[STAT_ATK] += 1; + } + else + { + opponentStatDrop = TRUE; + gBattleMons[opposingBattler].statStages[STAT_ATK] -= 1; + if (gAiLogicData->abilities[opposingBattler] == ABILITY_DEFIANT) + gBattleMons[opposingBattler].statStages[STAT_ATK] += 2; + if (gAiLogicData->abilities[opposingBattler] == ABILITY_COMPETITIVE) + gBattleMons[opposingBattler].statStages[STAT_SPATK] += 2; + } + } + break; + case ABILITY_SUPERSWEET_SYRUP: + if (CanLowerStat(battler, opposingBattler, gAiLogicData, STAT_EVASION)) + { + if (gAiLogicData->abilities[opposingBattler] == ABILITY_CONTRARY) + { + gBattleMons[opposingBattler].statStages[STAT_EVASION] += 1; + } + else + { + opponentStatDrop = TRUE; + gBattleMons[opposingBattler].statStages[STAT_EVASION] -= 1; + if (gAiLogicData->abilities[opposingBattler] == ABILITY_DEFIANT) + gBattleMons[opposingBattler].statStages[STAT_ATK] += 2; + if (gAiLogicData->abilities[opposingBattler] == ABILITY_COMPETITIVE) + gBattleMons[opposingBattler].statStages[STAT_SPATK] += 2; + } + } + break; + case ABILITY_WIND_RIDER: + if (gSideStatuses[GetBattlerSide(battler)] & SIDE_STATUS_TAILWIND) + gBattleMons[battler].statStages[STAT_ATK] += 1; + break; + case ABILITY_DEFIANT: + if (isStickyWebsAffected) + gBattleMons[battler].statStages[STAT_ATK] += 2; + break; + case ABILITY_COMPETITIVE: + if (isStickyWebsAffected) + gBattleMons[battler].statStages[STAT_SPATK] += 2; + break; + case ABILITY_CONTRARY: + if (isStickyWebsAffected) + gBattleMons[battler].statStages[STAT_SPEED] += 1; + default: + break; + } + + // Item stat changes + switch(GetItemHoldEffect(aiItem)) + { + case HOLD_EFFECT_TERRAIN_SEED: + { + u32 seedParam = GetItemHoldEffectParam(aiItem); + if ((seedParam == HOLD_EFFECT_PARAM_ELECTRIC_TERRAIN && (fieldStatus & STATUS_FIELD_ELECTRIC_TERRAIN)) + || (seedParam == HOLD_EFFECT_PARAM_GRASSY_TERRAIN && (fieldStatus & STATUS_FIELD_GRASSY_TERRAIN)) + || (seedParam == HOLD_EFFECT_PARAM_MISTY_TERRAIN && (fieldStatus & STATUS_FIELD_MISTY_TERRAIN)) + || (seedParam == HOLD_EFFECT_PARAM_PSYCHIC_TERRAIN && (fieldStatus & STATUS_FIELD_PSYCHIC_TERRAIN))) + gBattleMons[battler].statStages[STAT_DEF] += 1; + break; + } + case HOLD_EFFECT_ATTACK_UP: + if (HasEnoughHpToEatBerry(battler, aiAbility, GetItemHoldEffectParam(aiItem), aiItem)) + gBattleMons[battler].statStages[STAT_ATK] += 1; + break; + case HOLD_EFFECT_DEFENSE_UP: + if (HasEnoughHpToEatBerry(battler, aiAbility, GetItemHoldEffectParam(aiItem), aiItem)) + gBattleMons[battler].statStages[STAT_DEF] += 1; + break; + case HOLD_EFFECT_SPEED_UP: + if (HasEnoughHpToEatBerry(battler, aiAbility, GetItemHoldEffectParam(aiItem), aiItem)) + gBattleMons[battler].statStages[STAT_SPEED] += 1; + break; + case HOLD_EFFECT_SP_ATTACK_UP: + if (HasEnoughHpToEatBerry(battler, aiAbility, GetItemHoldEffectParam(aiItem), aiItem)) + gBattleMons[battler].statStages[STAT_SPATK] += 1; + break; + case HOLD_EFFECT_SP_DEFENSE_UP: + if (HasEnoughHpToEatBerry(battler, aiAbility, GetItemHoldEffectParam(aiItem), aiItem)) + gBattleMons[battler].statStages[STAT_SPDEF] += 1; + break; + case HOLD_EFFECT_ROOM_SERVICE: + if (gFieldStatuses & STATUS_FIELD_TRICK_ROOM) + gBattleMons[battler].statStages[STAT_SPEED] -= 1; + case HOLD_EFFECT_MIRROR_HERB: + if (opponentStatDrop && gAiLogicData->abilities[opposingBattler] == ABILITY_DEFIANT) + gBattleMons[battler].statStages[STAT_ATK] += 2; + if (opponentStatDrop && gAiLogicData->abilities[opposingBattler] == ABILITY_COMPETITIVE) + gBattleMons[battler].statStages[STAT_SPATK] += 2; + break; + default: + break; + } + + // Hazard stat changes + if (isStickyWebsAffected && GetItemHoldEffect(aiItem) != HOLD_EFFECT_WHITE_HERB) + gBattleMons[battler].statStages[STAT_SPEED] -= 1; +} + +static void SetBattlerHPChangeForSwitch(enum BattlerId battler, enum BattlerId opposingBattler) +{ + s32 maxHP = gBattleMons[battler].maxHP; + s32 currentHP = gBattleMons[battler].hp - GetSwitchinHazardsDamage(battler); + s32 itemHeal = GetSwitchinSingleUseItemHealing(battler, opposingBattler, currentHP); + + if (itemHeal > 0) + { + if ((currentHP + itemHeal) > maxHP) + currentHP = maxHP; + else + currentHP = currentHP + itemHeal; + } + gBattleMons[battler].hp = currentHP; +} + +// Set potential field effect from ability for switch in +static void SetBattlerVolatilesForSwitchin(enum BattlerId battler, u32 weather, u32 fieldStatus) +{ + enum Item aiItem = gAiLogicData->items[battler]; + switch (gAiLogicData->abilities[battler]) + { + case ABILITY_VESSEL_OF_RUIN: + gBattleMons[battler].volatiles.vesselOfRuin = TRUE; + break; + case ABILITY_SWORD_OF_RUIN: + gBattleMons[battler].volatiles.swordOfRuin = TRUE; + break; + case ABILITY_TABLETS_OF_RUIN: + gBattleMons[battler].volatiles.tabletsOfRuin = TRUE; + break; + case ABILITY_BEADS_OF_RUIN: + gBattleMons[battler].volatiles.beadsOfRuin = TRUE; + break; + case ABILITY_QUARK_DRIVE: + if ((fieldStatus & STATUS_FIELD_ELECTRIC_TERRAIN) || GetItemHoldEffect(aiItem) == HOLD_EFFECT_BOOSTER_ENERGY) + gBattleMons[battler].volatiles.boosterEnergyActivated = TRUE; + break; + case ABILITY_PROTOSYNTHESIS: + if (((weather & B_WEATHER_SUN) && HasWeatherEffect()) || GetItemHoldEffect(aiItem) == HOLD_EFFECT_BOOSTER_ENERGY) + gBattleMons[battler].volatiles.boosterEnergyActivated = TRUE; + break; + case ABILITY_WIND_POWER: + if (gSideStatuses[GetBattlerSide(battler)] & SIDE_STATUS_TAILWIND) + gBattleMons[battler].volatiles.chargeTimer = 2; + break; + default: + break; + } +} diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index dabd75702e..bd60f8e16e 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -23,6 +23,7 @@ #include "constants/moves.h" #include "constants/items.h" +static void AI_SetBattlerTurnOrder(u8 *aiTurnOrder); static u32 GetAIEffectGroup(enum BattleMoveEffects effect); static u32 GetAIEffectGroupFromMove(enum BattlerId battler, enum Move move); @@ -90,6 +91,23 @@ enum MoveTarget AI_GetBattlerMoveTargetType(enum BattlerId battler, enum Move mo return GetMoveTarget(move); } +u32 AI_GetDefaultDamageRollForContext(enum BattlerId battlerAtk, enum BattlerId battlerDef, u32 moveIndex, struct AiLogicData *aiData, u32 aiRoll) +{ + switch (aiRoll) + { + case AI_ROLL_MIN: + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; + case AI_ROLL_MEDIAN: + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].median; + case AI_ROLL_MAX: + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; + case AI_ROLL_RANDOM: + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].random; + default: + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].median; // Default assumes it deals median damage + } +} + u32 AI_GetDamage(enum BattlerId battlerAtk, enum BattlerId battlerDef, u32 moveIndex, enum DamageCalcContext calcContext, struct AiLogicData *aiData) { if (calcContext == AI_ATTACKING && BattlerHasAi(battlerAtk)) @@ -98,7 +116,7 @@ u32 AI_GetDamage(enum BattlerId battlerAtk, enum BattlerId battlerDef, u32 moveI return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it deals min damage return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; - return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].median; // Default assumes it deals median damage + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, GetConfig(AI_ROLL_ATTACKING)); } else if (calcContext == AI_DEFENDING && BattlerHasAi(battlerDef)) { @@ -106,7 +124,39 @@ u32 AI_GetDamage(enum BattlerId battlerAtk, enum BattlerId battlerDef, u32 moveI return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it takes max damage return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; - return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].median; // Default assumes it takes median damage + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, AI_ROLL_DEFENDING); + } + else if (calcContext == AI_SWITCHIN_ATTACKING && BattlerHasAi(battlerAtk)) + { + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE)) // Risky assumes it deals max damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it deals min damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, AI_ROLL_SWITCHIN_ATTACKING); + } + else if (calcContext == AI_SWITCHIN_DEFENDING && BattlerHasAi(battlerDef)) + { + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE)) // Risky assumes it takes min damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it takes max damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, AI_ROLL_SWITCHIN_DEFENDING); + } + else if (calcContext == AI_SHOULD_SETUP_DEFENDING && BattlerHasAi(battlerDef)) + { + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE)) // Risky assumes it takes min damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it takes max damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, AI_ROLL_SHOULD_SETUP_DEFENDING); + } + else if (calcContext == AI_ATTACKING_PARTNER && BattlerHasAi(battlerAtk)) + { + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE)) // Risky assumes it deals max damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; + if ((gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_CONSERVATIVE) && !(gAiThinkingStruct->aiFlags[battlerAtk] & AI_FLAG_RISKY)) // Conservative assumes it deals min damage + return aiData->simulatedDmg[battlerAtk][battlerDef][moveIndex].minimum; + return AI_GetDefaultDamageRollForContext(battlerAtk, battlerDef, moveIndex, aiData, AI_ROLL_ATTACKING_PARTNER); } else { @@ -571,6 +621,14 @@ static inline s32 DmgRoll(s32 dmg) return dmg; } +static inline s32 RandomRollDmg(s32 dmg) +{ + u32 randomRollPercentage = RandomUniform(RNG_AI_DMG_ROLL_RANDOM, MIN_ROLL_PERCENTAGE, MAX_ROLL_PERCENTAGE); + dmg *= randomRollPercentage; + dmg /= 100; + return dmg; +} + bool32 IsDamageMoveUnusable(struct BattleContext *ctx) { enum Ability battlerDefAbility; @@ -681,6 +739,8 @@ static inline s32 GetDamageByRollType(s32 dmg, enum DamageRollType rollType) return LowestRollDmg(dmg); else if (rollType == DMG_ROLL_HIGHEST) return HighestRollDmg(dmg); + else if (rollType == DMG_ROLL_RANDOM) + return RandomRollDmg(dmg); else return DmgRoll(dmg); } @@ -699,12 +759,13 @@ static inline void AI_RestoreBattlerTypes(enum BattlerId battlerAtk, enum Type * gBattleMons[battlerAtk].types[2] = types[2]; } -static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianDamage, u16 *minimumDamage, u16 *maximumDamage) +static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianDamage, u16 *minimumDamage, u16 *maximumDamage, u16 *randomDamage) { enum BattleMoveEffects effect = GetMoveEffect(ctx->move); u16 median = *medianDamage; u16 minimum = *minimumDamage; u16 maximum = *maximumDamage; + u16 random = *randomDamage; u32 strikeCount = GetMoveStrikeCount(ctx->move); @@ -718,7 +779,7 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD median = 0; for (i = 0; i < partyCount; i++) median += CalculateMoveDamage(ctx); - maximum = minimum = median; + maximum = minimum = median = random; gBattleStruct->beatUpSlot = 0; } else if (strikeCount > 1 && effect != EFFECT_TRIPLE_KICK) @@ -726,6 +787,7 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD median *= strikeCount; minimum *= strikeCount; maximum *= strikeCount; + random *= strikeCount; } else if (IsMultiHitMove(ctx->move)) { @@ -734,12 +796,14 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD median *= GetMoveSpeciesPowerOverride_NumOfHits(ctx->move); minimum *= GetMoveSpeciesPowerOverride_NumOfHits(ctx->move); maximum *= GetMoveSpeciesPowerOverride_NumOfHits(ctx->move); + random *= GetMoveSpeciesPowerOverride_NumOfHits(ctx->move); } else if (ctx->abilityAtk == ABILITY_SKILL_LINK) { median *= 5; minimum *= 5; maximum *= 5; + random *= 5; } else if (ctx->holdEffectAtk == HOLD_EFFECT_LOADED_DICE) { @@ -747,12 +811,14 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD median /= 2; minimum *= 4; maximum *= 5; + random *= RandomUniform(RNG_AI_DMG_ROLL_RANDOM, 4, 5); } else { median *= 3; minimum *= 2; maximum *= 5; + random *= RandomUniform(RNG_AI_DMG_ROLL_RANDOM, 2, 5); } } else if (ctx->abilityAtk == ABILITY_PARENTAL_BOND @@ -762,6 +828,7 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD median += median / (B_PARENTAL_BOND_DMG >= GEN_7 ? 4 : 2); minimum += minimum / (B_PARENTAL_BOND_DMG >= GEN_7 ? 4 : 2); maximum += maximum / (B_PARENTAL_BOND_DMG >= GEN_7 ? 4 : 2); + random += random / (B_PARENTAL_BOND_DMG >= GEN_7 ? 4 : 2); } if (median == 0) @@ -770,10 +837,13 @@ static inline void CalcDynamicMoveDamage(struct BattleContext *ctx, u16 *medianD minimum = 1; if (maximum == 0) maximum = 1; + if (random == 0) + random = 1; *medianDamage = median; *minimumDamage = minimum; *maximumDamage = maximum; + *randomDamage = random; } static inline bool32 ShouldCalcCritDamage(struct BattleContext *ctx) @@ -889,6 +959,7 @@ struct SimulatedDamage AI_CalcDamage(enum Move move, enum BattlerId battlerAtk, ctx.abilityDef = AI_GetMoldBreakerSanitizedAbility(battlerAtk, ctx.abilityAtk, aiData->abilities[battlerDef], ctx.holdEffectDef, move); ctx.isCrit = ShouldCalcCritDamage(&ctx); ctx.typeEffectivenessModifier = CalcTypeEffectivenessMultiplier(&ctx); + AI_SetBattlerTurnOrder(ctx.aiTurnOrder); u32 movePower = GetMovePower(move); @@ -901,7 +972,7 @@ struct SimulatedDamage AI_CalcDamage(enum Move move, enum BattlerId battlerAtk, s32 fixedDamage = DoFixedDamageMoveCalc(&ctx); if (fixedDamage != INT32_MAX) { - simDamage.minimum = simDamage.median = simDamage.maximum = fixedDamage; + simDamage.minimum = simDamage.median = simDamage.maximum = simDamage.random = fixedDamage; } else if (moveEffect == EFFECT_TRIPLE_KICK) { @@ -914,11 +985,14 @@ struct SimulatedDamage AI_CalcDamage(enum Move move, enum BattlerId battlerAtk, damageByRollType = GetDamageByRollType(oneTripleKickHit, DMG_ROLL_LOWEST); simDamage.minimum += AI_ApplyModifiersAfterDmgRoll(&ctx, damageByRollType); - damageByRollType = GetDamageByRollType(oneTripleKickHit, DMG_ROLL_DEFAULT); + damageByRollType = GetDamageByRollType(oneTripleKickHit, DMG_ROLL_MEDIAN); simDamage.median += AI_ApplyModifiersAfterDmgRoll(&ctx, damageByRollType); damageByRollType = GetDamageByRollType(oneTripleKickHit, DMG_ROLL_HIGHEST); simDamage.maximum += AI_ApplyModifiersAfterDmgRoll(&ctx, damageByRollType); + + damageByRollType = GetDamageByRollType(oneTripleKickHit, DMG_ROLL_RANDOM); + simDamage.random += AI_ApplyModifiersAfterDmgRoll(&ctx, damageByRollType); } } else @@ -928,15 +1002,18 @@ struct SimulatedDamage AI_CalcDamage(enum Move move, enum BattlerId battlerAtk, simDamage.minimum = GetDamageByRollType(damage, DMG_ROLL_LOWEST); simDamage.minimum = AI_ApplyModifiersAfterDmgRoll(&ctx, simDamage.minimum); - simDamage.median = GetDamageByRollType(damage, DMG_ROLL_DEFAULT); + simDamage.median = GetDamageByRollType(damage, DMG_ROLL_MEDIAN); simDamage.median = AI_ApplyModifiersAfterDmgRoll(&ctx, simDamage.median); simDamage.maximum = GetDamageByRollType(damage, DMG_ROLL_HIGHEST); simDamage.maximum = AI_ApplyModifiersAfterDmgRoll(&ctx, simDamage.maximum); + + simDamage.random = GetDamageByRollType(damage, DMG_ROLL_RANDOM); + simDamage.random = AI_ApplyModifiersAfterDmgRoll(&ctx, simDamage.random); } if (GetActiveGimmick(battlerAtk) != GIMMICK_Z_MOVE) - CalcDynamicMoveDamage(&ctx, &simDamage.median, &simDamage.minimum, &simDamage.maximum); + CalcDynamicMoveDamage(&ctx, &simDamage.median, &simDamage.minimum, &simDamage.maximum, &simDamage.random); AI_RestoreBattlerTypes(battlerAtk, types); } @@ -945,6 +1022,7 @@ struct SimulatedDamage AI_CalcDamage(enum Move move, enum BattlerId battlerAtk, simDamage.minimum = 0; simDamage.median = 0; simDamage.maximum = 0; + simDamage.random = 0; } // convert multiper to AI_EFFECTIVENESS_xX @@ -1490,14 +1568,14 @@ bool32 CanTargetFaintAi(enum BattlerId battlerDef, enum BattlerId battlerAtk) return FALSE; } -u32 NoOfHitsForTargetToFaintBattler(enum BattlerId battlerDef, enum BattlerId battlerAtk, enum AiConsiderEndure considerEndure) +u32 NoOfHitsForTargetToFaintBattler(enum BattlerId battlerDef, enum BattlerId battlerAtk, enum DamageCalcContext calcContext, enum AiConsiderEndure considerEndure) { u32 currNumberOfHits; u32 leastNumberOfHits = UNKNOWN_NO_OF_HITS; for (u32 moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++) { - currNumberOfHits = GetNoOfHitsToKOBattler(battlerDef, battlerAtk, moveIndex, AI_DEFENDING, considerEndure); + currNumberOfHits = GetNoOfHitsToKOBattler(battlerDef, battlerAtk, moveIndex, calcContext, considerEndure); if (currNumberOfHits != 0) { if (currNumberOfHits < leastNumberOfHits) @@ -1544,7 +1622,7 @@ void GetBestDmgMovesFromBattler(enum BattlerId battlerAtk, enum BattlerId battle { for (u32 moveIndex = 0; moveIndex < MAX_MON_MOVES; moveIndex++) { - if (CanIndexMoveFaintTarget(battlerAtk, battlerDef, moveIndex, AI_ATTACKING)) + if (CanIndexMoveFaintTarget(battlerAtk, battlerDef, moveIndex, calcContext)) bestMoves[countBestMoves++] = moves[moveIndex]; } } @@ -1590,7 +1668,7 @@ bool32 IsBestDmgMove(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum enum Move bestMoves[MAX_MON_MOVES] = {MOVE_NONE}; u32 index = GetMoveIndex(battlerAtk, move); - if (CanIndexMoveFaintTarget(battlerAtk, battlerDef, index, AI_ATTACKING)) + if (CanIndexMoveFaintTarget(battlerAtk, battlerDef, index, calcContext)) return TRUE; GetBestDmgMovesFromBattler(battlerAtk, battlerDef, calcContext, bestMoves); @@ -1873,6 +1951,7 @@ u32 AI_GetSwitchinWeather(enum BattlerId battler) case ABILITY_DRIZZLE: return B_WEATHER_RAIN_NORMAL; case ABILITY_DROUGHT: + case ABILITY_ORICHALCUM_PULSE: return B_WEATHER_SUN_NORMAL; case ABILITY_SAND_STREAM: return B_WEATHER_SANDSTORM; @@ -2460,7 +2539,7 @@ bool32 CanIndexMoveFaintTarget(enum BattlerId battlerAtk, enum BattlerId battler enum Move *moves = gBattleMons[battlerAtk].moves; if (IsDoubleBattle() && battlerDef == BATTLE_PARTNER(battlerAtk)) - dmg = gAiLogicData->simulatedDmg[battlerAtk][battlerDef][moveIndex].maximum; // Attacking partner, be careful + dmg = AI_GetDamage(battlerAtk, battlerDef, moveIndex, AI_ATTACKING_PARTNER, gAiLogicData); // Attacking partner, be careful else dmg = AI_GetDamage(battlerAtk, battlerDef, moveIndex, calcContext, gAiLogicData); @@ -3945,7 +4024,7 @@ static inline bool32 RecoveryEnablesWinning1v1(enum BattlerId battlerAtk, enum B { if (!CanTargetFaintAi(battlerDef, battlerAtk) && GetBestDmgFromBattler(battlerDef, battlerAtk, AI_DEFENDING) < healAmount - && NoOfHitsForTargetToFaintBattler(battlerDef, battlerAtk, CONSIDER_ENDURE) < NoOfHitsForTargetToFaintBattlerWithMod(battlerDef, battlerAtk, healAmount)) + && NoOfHitsForTargetToFaintBattler(battlerDef, battlerAtk, AI_DEFENDING, CONSIDER_ENDURE) < NoOfHitsForTargetToFaintBattlerWithMod(battlerDef, battlerAtk, healAmount)) return TRUE; // target can't faint attacker and is dealing less damage than we're healing else if (!CanTargetFaintAi(battlerDef, battlerAtk) && gAiLogicData->hpPercents[battlerAtk] < ENABLE_RECOVERY_THRESHOLD && RandomPercentage(RNG_AI_SHOULD_RECOVER, SHOULD_RECOVER_CHANCE)) return TRUE; // target can't faint attacker at all, generally safe @@ -4530,28 +4609,6 @@ void FreeRestoreAiLogicData(struct AiLogicData *savedAiLogicData) Free(savedAiLogicData); } -// Set potential field effect from ability for switch in -void SetBattlerFieldStatusForSwitchin(enum BattlerId battler) -{ - switch (gAiLogicData->abilities[battler]) - { - case ABILITY_VESSEL_OF_RUIN: - gBattleMons[battler].volatiles.vesselOfRuin = TRUE; - break; - case ABILITY_SWORD_OF_RUIN: - gBattleMons[battler].volatiles.swordOfRuin = TRUE; - break; - case ABILITY_TABLETS_OF_RUIN: - gBattleMons[battler].volatiles.tabletsOfRuin = TRUE; - break; - case ABILITY_BEADS_OF_RUIN: - gBattleMons[battler].volatiles.beadsOfRuin = TRUE; - break; - default: - break; - } -} - // party logic s32 CountUsablePartyMons(enum BattlerId battlerId) { @@ -4827,7 +4884,7 @@ static u32 GetStagesOfStatChange(enum StatChange statChange) static enum AIScore IncreaseStatUpScoreInternal(enum BattlerId battlerAtk, enum BattlerId battlerDef, enum StatChange statChange, bool32 considerContrary) { enum AIScore tempScore = NO_INCREASE; - u32 noOfHitsToFaint = NoOfHitsForTargetToFaintBattler(battlerDef, battlerAtk, DONT_CONSIDER_ENDURE); + u32 noOfHitsToFaint = NoOfHitsForTargetToFaintBattler(battlerDef, battlerAtk, AI_SHOULD_SETUP_DEFENDING, DONT_CONSIDER_ENDURE); enum Move predictedMoveSpeedCheck = GetIncomingMoveSpeedCheck(battlerAtk, battlerDef, gAiLogicData); bool32 aiIsFaster = AI_IsFaster(battlerAtk, battlerDef, MOVE_NONE, predictedMoveSpeedCheck, DONT_CONSIDER_PRIORITY); // Don't care about the priority of our setup move, care about outspeeding otherwise bool32 shouldSetUp = ((noOfHitsToFaint >= 2 && aiIsFaster) || (noOfHitsToFaint >= 3 && !aiIsFaster) || noOfHitsToFaint == UNKNOWN_NO_OF_HITS); @@ -5875,8 +5932,9 @@ bool32 DoesIntimidateRaiseStats(enum Ability ability) case ABILITY_CONTRARY: case ABILITY_DEFIANT: case ABILITY_GUARD_DOG: - case ABILITY_RATTLED: return TRUE; + case ABILITY_RATTLED: + return GetConfig(B_UPDATED_INTIMIDATE) >= GEN_8; default: return FALSE; } @@ -6427,3 +6485,23 @@ bool32 IsPartyMonPlannedToBeSwitchedInByPartner(u32 partyIndex, enum BattlerId b return TRUE; return FALSE; } + +static void AI_SetBattlerTurnOrder(u8 *aiTurnOrder) +{ + for (u32 battler = 0; battler < gBattlersCount; battler++) + aiTurnOrder[battler] = battler; + + for (u32 i = 0; i < gBattlersCount; i++) + { + for (u32 j = 0; j < gBattlersCount; j++) + { + if (AI_WhoStrikesFirst(aiTurnOrder[i], aiTurnOrder[j], MOVE_NONE, MOVE_NONE, DONT_CONSIDER_PRIORITY) == AI_IS_FASTER) + { + u32 temp = aiTurnOrder[i]; + aiTurnOrder[i] = aiTurnOrder[j]; + aiTurnOrder[j] = temp; + } + } + } +} + diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index be24ffa508..6820415f94 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -2002,8 +2002,6 @@ static void HandleChooseActionAfterDma3(enum BattlerId battler) gBattle_BG0_Y = DISPLAY_HEIGHT; if (gBattleStruct->aiDelayTimer != 0) { - gBattleStruct->aiDelayFrames = gMain.vblankCounter1 - gBattleStruct->aiDelayTimer; - gBattleStruct->aiDelayTimer = 0; if (DEBUG_AI_DELAY_TIMER) { static const u8 sFramesText[] = _(" frames thinking\n"); @@ -2016,6 +2014,8 @@ static void HandleChooseActionAfterDma3(enum BattlerId battler) StringAppend(gDisplayedStringBattle, sCyclesText); BattlePutTextOnWindow(gDisplayedStringBattle, B_WIN_ACTION_PROMPT); } + gBattleStruct->aiDelayTimer = 0; + gBattleStruct->aiDelayFrames = 0; } gBattlerControllerFuncs[battler] = HandleInputChooseAction; } diff --git a/src/battle_main.c b/src/battle_main.c index b52dd229d8..f4a1af4ace 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3930,7 +3930,7 @@ void BattleTurnPassed(void) { if (gSideTimers[i].retaliateTimer > 0) gSideTimers[i].retaliateTimer--; - } + } gFieldStatuses &= ~STATUS_FIELD_ION_DELUGE; diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index f12284f96b..fc1349bfe1 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -50,7 +50,7 @@ #include "pokenav.h" #include "menu_specialized.h" #include "data.h" -#include "generational_changes.h" +#include "config_changes.h" #include "move.h" #include "constants/abilities.h" #include "constants/battle_anim.h" @@ -8737,11 +8737,23 @@ static void Cmd_trysetencore(void) if (gBattleMons[gBattlerTarget].volatiles.encoredMove != GetBattlerChosenMove(gBattlerTarget)) gBattleStruct->moveTarget[gBattlerTarget] = SetRandomTarget(gBattlerTarget); - // Encore always lasts 3 turns, but we need to account for a scenario where Encore changes the move during the same turn. - if (HasBattlerActedThisTurn(gBattlerTarget)) - gBattleMons[gBattlerTarget].volatiles.encoreTimer = B_ENCORE_TIMER; + u8 turns; + if (GetConfig(B_ENCORE_TURNS) >= GEN_5) + { + turns = B_ENCORE_TIMER; // 4 turns + if (!HasBattlerActedThisTurn(gBattlerTarget)) + turns--; // If the target hasn't yet moved this turn, Encore lasts for only three turns. + } + else if (GetConfig(B_ENCORE_TURNS) >= GEN_4) + { + turns = RandomUniform(RNG_ENCORE_TURNS, 3, 7); + } else - gBattleMons[gBattlerTarget].volatiles.encoreTimer = B_ENCORE_TIMER - 1; + { + turns = RandomUniform(RNG_ENCORE_TURNS, 2, 6); + } + + gBattleMons[gBattlerTarget].volatiles.encoreTimer = turns; gBattlescriptCurrInstr = cmd->nextInstr; } } @@ -9908,6 +9920,7 @@ static void HandleRoomMove(u32 statusFlag, u16 *timer, u8 stringId) if (gFieldStatuses & statusFlag) { gFieldStatuses &= ~statusFlag; + *timer = 0; gBattleCommunication[MULTISTRING_CHOOSER] = stringId + 1; } else @@ -10467,7 +10480,8 @@ static void FinalizeCapture(void) { u32 ballId = ItemIdToBallId(gLastThrownBall); enum NationalDexOrder natDexNo = SpeciesToNationalPokedexNum(gBattleMons[gBattlerTarget].species); - if (GetConfig(B_CRITICAL_CAPTURE_IF_OWNED) >= GEN_9 && GetSetPokedexFlag(natDexNo, FLAG_GET_CAUGHT)) + if ((GetConfig(B_CRITICAL_CAPTURE_IF_OWNED) >= GEN_9 && GetSetPokedexFlag(natDexNo, FLAG_GET_CAUGHT)) + || IsCriticalCapture()) { gBattleSpritesDataPtr->animationData->isCriticalCapture = TRUE; gBattleSpritesDataPtr->animationData->criticalCaptureSuccess = TRUE; @@ -10850,6 +10864,9 @@ static void Cmd_handleballthrow(void) if (gBattleResults.catchAttempts[ballId] < 255) gBattleResults.catchAttempts[ballId]++; + gBattleSpritesDataPtr->animationData->isCriticalCapture = FALSE; + gBattleSpritesDataPtr->animationData->criticalCaptureSuccess = FALSE; + //Master Ball check occurs before critical capture check if (odds == CAPTURE_GUARANTEED) { @@ -10860,9 +10877,6 @@ static void Cmd_handleballthrow(void) u8 shakes; u8 maxShakes; - gBattleSpritesDataPtr->animationData->isCriticalCapture = FALSE; - gBattleSpritesDataPtr->animationData->criticalCaptureSuccess = FALSE; - if (CriticalCapture(odds)) { maxShakes = BALL_1_SHAKE; // critical capture doesn't guarantee capture @@ -10887,8 +10901,6 @@ static void Cmd_handleballthrow(void) if (shakes == maxShakes) // mon caught, copy of the code above { - if (IsCriticalCapture()) - gBattleSpritesDataPtr->animationData->criticalCaptureSuccess = TRUE; FinalizeCapture(); return; } diff --git a/src/battle_switch_in.c b/src/battle_switch_in.c index 8399ec18b1..afefb49d93 100644 --- a/src/battle_switch_in.c +++ b/src/battle_switch_in.c @@ -5,7 +5,7 @@ #include "battle_scripts.h" #include "battle_switch_in.h" #include "battle_controllers.h" -#include "generational_changes.h" +#include "config_changes.h" #include "constants/battle.h" #include "constants/moves.h" diff --git a/src/battle_util.c b/src/battle_util.c index c823c68039..b3afb10376 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -11,7 +11,7 @@ #include "battle_z_move.h" #include "battle_gimmick.h" #include "battle_hold_effects.h" -#include "generational_changes.h" +#include "config_changes.h" #include "party_menu.h" #include "pokemon.h" #include "international_string_util.h" @@ -1115,6 +1115,38 @@ bool32 IsLastMonToMove(enum BattlerId battler) return TRUE; } +static u32 GetAiTurnOrder(u8 *aiTurnOrder, enum BattlerId battler) +{ + for (u32 i = 0; i < gBattlersCount; i++) + { + if (aiTurnOrder[i] == battler) + return i; + } + return 0; +} + +static bool32 Ai_AttackerMovesAfterTarget(struct BattleContext *ctx) +{ + return GetAiTurnOrder(ctx->aiTurnOrder, ctx->battlerAtk) > GetAiTurnOrder(ctx->aiTurnOrder, ctx->battlerDef); +} + +static bool32 Ai_AttackerMovesLast(struct BattleContext *ctx) +{ + u32 numAliveBattlers = 0; + u32 battlerTurnOrder = GetAiTurnOrder(ctx->aiTurnOrder, ctx->battlerAtk); + + for (enum BattlerId battler = B_BATTLER_0; battler < gBattlersCount; battler++) + { + if (IsBattlerAlive(battler)) + numAliveBattlers++; + } + + if (battlerTurnOrder >= numAliveBattlers - 1) + return TRUE; + + return FALSE; +} + bool32 ShouldDefiantCompetitiveActivate(enum BattlerId battler, enum Ability ability) { enum BattleSide side = GetBattlerSide(battler); @@ -3207,28 +3239,7 @@ u32 AbilityBattleEffects(enum AbilityEffect caseID, enum BattlerId battler, enum case ABILITY_DOWNLOAD: if (shouldAbilityTrigger) { - enum Stat statId; - enum BattlerId opposingBattler; - u32 opposingDef = 0, opposingSpDef = 0; - - opposingBattler = BATTLE_OPPOSITE(battler); - for (i = 0; i < 2; opposingBattler ^= BIT_FLANK, i++) - { - if (IsBattlerAlive(opposingBattler)) - { - opposingDef += gBattleMons[opposingBattler].defense - * gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_DEF]][0] - / gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_DEF]][1]; - opposingSpDef += gBattleMons[opposingBattler].spDefense - * gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_SPDEF]][0] - / gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_SPDEF]][1]; - } - } - - if (opposingDef < opposingSpDef) - statId = STAT_ATK; - else - statId = STAT_SPATK; + enum Stat statId = GetDownloadStat(battler); if (CompareStat(battler, statId, MAX_STAT_STAGE, CMP_LESS_THAN, gLastUsedAbility)) { @@ -6299,14 +6310,28 @@ static inline u32 CalcMoveBasePower(struct BattleContext *ctx) } break; case EFFECT_PAYBACK: - if (HasBattlerActedThisTurn(battlerDef) + if (ctx->aiCalc) + { + if (Ai_AttackerMovesAfterTarget(ctx)) + basePower *= 2; + } + else if (HasBattlerActedThisTurn(battlerDef) && (B_PAYBACK_SWITCH_BOOST < GEN_5 || gBattleStruct->battlerState[battlerDef].isFirstTurn != 2)) + { basePower *= 2; + } break; case EFFECT_BOLT_BEAK: - if (!HasBattlerActedThisTurn(battlerDef) - || gBattleStruct->battlerState[battlerDef].isFirstTurn == 2) + if (ctx->aiCalc) + { + if (!Ai_AttackerMovesAfterTarget(ctx)) + basePower *= 2; + } + else if (!HasBattlerActedThisTurn(battlerDef) + || gBattleStruct->battlerState[battlerDef].isFirstTurn == 2) + { basePower *= 2; + } break; case EFFECT_FUSION_COMBO: if (move == gLastUsedMove) @@ -6413,9 +6438,12 @@ static inline u32 CalcMoveBasePowerAfterModifiers(struct BattleContext *ctx) modifier = uq4_12_multiply(modifier, UQ_4_12(2.0)); break; case EFFECT_RETALIATE: - if (gSideTimers[atkSide].retaliateTimer == 1) + { + u32 retaliateTimer = gSideTimers[atkSide].retaliateTimer; + if (retaliateTimer == 1 || (gAiLogicData->switchInCalc && retaliateTimer == 2)) modifier = uq4_12_multiply(modifier, UQ_4_12(2.0)); break; + } case EFFECT_SOLAR_BEAM: if ((GetConfig(B_SANDSTORM_SOLAR_BEAM) >= GEN_3 && IsBattlerWeatherAffected(ctx->holdEffectAtk, ctx->weather, B_WEATHER_LOW_LIGHT)) || IsBattlerWeatherAffected(ctx->holdEffectAtk, ctx->weather, (B_WEATHER_RAIN | B_WEATHER_ICY_ANY | B_WEATHER_FOG))) // Excludes Sandstorm @@ -6502,8 +6530,18 @@ static inline u32 CalcMoveBasePowerAfterModifiers(struct BattleContext *ctx) modifier = uq4_12_multiply(modifier, UQ_4_12(0.75)); break; case ABILITY_ANALYTIC: - if (IsLastMonToMove(battlerAtk) && moveEffect != EFFECT_FUTURE_SIGHT) - modifier = uq4_12_multiply(modifier, UQ_4_12(1.3)); + if (moveEffect == EFFECT_FUTURE_SIGHT) + break; + + if (ctx->aiCalc) + { + if (Ai_AttackerMovesLast(ctx)) + modifier = uq4_12_multiply(modifier, UQ_4_12(1.3)); + } + else if (IsLastMonToMove(battlerAtk)) + { + modifier = uq4_12_multiply(modifier, UQ_4_12(1.3)); + } break; case ABILITY_TOUGH_CLAWS: if (IsMoveMakingContact(battlerAtk, battlerDef, ctx->abilityAtk, ctx->holdEffectAtk, ctx->move)) @@ -10925,3 +10963,28 @@ bool32 IsNaturalEnemy(enum Species speciesAttacker, enum Species speciesTarget) } return FALSE; } + +enum Stat GetDownloadStat(enum BattlerId battler) +{ + enum BattlerId opposingBattler; + u32 opposingDef = 0, opposingSpDef = 0; + + opposingBattler = BATTLE_OPPOSITE(battler); + for (u32 i = 0; i < 2; opposingBattler ^= BIT_FLANK, i++) + { + if (IsBattlerAlive(opposingBattler)) + { + opposingDef += gBattleMons[opposingBattler].defense + * gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_DEF]][0] + / gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_DEF]][1]; + opposingSpDef += gBattleMons[opposingBattler].spDefense + * gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_SPDEF]][0] + / gStatStageRatios[gBattleMons[opposingBattler].statStages[STAT_SPDEF]][1]; + } + } + + if (opposingDef < opposingSpDef) + return STAT_ATK; + else + return STAT_SPATK; +} diff --git a/src/berry.c b/src/berry.c index 8677bc6d4b..ebf49d8196 100644 --- a/src/berry.c +++ b/src/berry.c @@ -2405,7 +2405,12 @@ static u8 TryForMutation(u8 berryTreeId, u8 berry) { x2 = gObjectEvents[j].currentCoords.x; y2 = gObjectEvents[j].currentCoords.y; - if (Random() % 100 < (OW_BERRY_MUTATION_CHANCE * (mulch == ITEM_TO_MULCH(ITEM_SURPRISE_MULCH) || mulch == ITEM_TO_MULCH(ITEM_AMAZE_MULCH))) && ( + u32 rate = OW_BERRY_MUTATION_CHANCE; + + if (mulch == ITEM_TO_MULCH(ITEM_SURPRISE_MULCH) || mulch == ITEM_TO_MULCH(ITEM_AMAZE_MULCH)) + rate *= 2; + + if (Random() % 100 < rate && ( (x1 == x2 && y1 == y2 - 1) || (x1 == x2 && y1 == y2 + 1) || (x1 == x2 - 1 && y1 == y2) || diff --git a/src/generational_changes.c b/src/config_changes.c similarity index 98% rename from src/generational_changes.c rename to src/config_changes.c index 9a52b109d2..06e5b6ab6a 100644 --- a/src/generational_changes.c +++ b/src/config_changes.c @@ -1,7 +1,7 @@ #include "global.h" -#include "generational_changes.h" +#include "config_changes.h" #include "malloc.h" -#include "constants/generational_changes.h" +#include "constants/config_changes.h" #include "config/pokerus.h" #include "config/ai.h" diff --git a/src/data/battle_partners.party b/src/data/battle_partners.party index 95b7861678..8de1dc0f2b 100644 --- a/src/data/battle_partners.party +++ b/src/data/battle_partners.party @@ -44,15 +44,3 @@ EVs: 252 Atk / 252 SpA / 6 SpD - Protect - Solar Beam - Dragon Claw - -=== PARTNER_DUMMY === -Name: -Class: Pkmn Trainer 1 -Pic: Brendan -Gender: Male -Music: Male -Back Pic: Brendan -Party Size: 0 - -Wynaut - diff --git a/src/data/debug_trainers.party b/src/data/debug_trainers.party index 4a57d2c35e..2604f57c3a 100644 --- a/src/data/debug_trainers.party +++ b/src/data/debug_trainers.party @@ -30,7 +30,7 @@ EVs: 252 Atk / 252 Def / 6 SpA === DEBUG_TRAINER_AI === Name: Debugger -AI: Basic Trainer +AI: Smart Trainer Class: Rival Battle Type: Singles Pic: Steven diff --git a/src/data/graphics/items.h b/src/data/graphics/items.h index 0fdb0cf8b3..733e354e81 100644 --- a/src/data/graphics/items.h +++ b/src/data/graphics/items.h @@ -1756,6 +1756,8 @@ const u16 gItemIconPalette_DarkTMHM[] = INCBIN_U16("graphics/items/icon_palettes const u16 gItemIconPalette_SteelTMHM[] = INCBIN_U16("graphics/items/icon_palettes/steel_tm_hm.gbapal"); +const u16 gItemIconPalette_MysteryTMHM[] = INCBIN_U16("graphics/items/icon_palettes/mystery_tm_hm.gbapal"); + const u16 gItemIconPalette_FairyTMHM[] = INCBIN_U16("graphics/items/icon_palettes/fairy_tm_hm.gbapal"); // Charms diff --git a/src/data/heal_locations.json b/src/data/heal_locations.json index 868f996513..ad1e5f1d20 100644 --- a/src/data/heal_locations.json +++ b/src/data/heal_locations.json @@ -196,7 +196,7 @@ "respawn_x": 8, "respawn_y": 5, "respawn_map": "MAP_PALLET_TOWN_PLAYERS_HOUSE_1F", - "respawn_npc": "LOCALID_MOM" + "respawn_npc": "LOCALID_PLAYERS_HOUSE_1F_MOM" }, { "id": "HEAL_LOCATION_VIRIDIAN_CITY", diff --git a/src/data/moves_info.h b/src/data/moves_info.h index 1e1059716b..9707e45809 100644 --- a/src/data/moves_info.h +++ b/src/data/moves_info.h @@ -6141,8 +6141,16 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_ALL] = { .name = COMPOUND_STRING("Encore"), .description = COMPOUND_STRING( + #if B_ENCORE_TURNS >= GEN_5 "Makes the foe repeat its\n" "last move over 3 turns."), + #elif B_ENCORE_TURNS >= GEN_4 + "Makes the foe repeat its\n" + "last move over 3-7 turns."), + #else + "Makes the foe repeat its\n" + "last move over 2-6 turns."), + #endif .effect = EFFECT_ENCORE, .power = 0, .type = TYPE_NORMAL, diff --git a/src/data/types_info.h b/src/data/types_info.h index ea962b4a44..92e1477e51 100644 --- a/src/data/types_info.h +++ b/src/data/types_info.h @@ -53,6 +53,8 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = .name = _("None"), .generic = _("a move"), .palette = 15, // Uses TYPE_MYSTERY's icon + .zMove = MOVE_BREAKNECK_BLITZ, + .maxMove = MOVE_MAX_STRIKE, .teraTypeRGBValue = RGB_WHITE, .damageCategory = DAMAGE_CATEGORY_PHYSICAL, .paletteTMHM = gItemIconPalette_NormalTMHM, @@ -261,8 +263,11 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = .name = _("???"), .generic = _("a ??? move"), .palette = 15, + .zMove = MOVE_BREAKNECK_BLITZ, + .maxMove = MOVE_MAX_STRIKE, .teraTypeRGBValue = RGB_WHITE, - .damageCategory = DAMAGE_CATEGORY_SPECIAL, + .damageCategory = DAMAGE_CATEGORY_PHYSICAL, + .paletteTMHM = gItemIconPalette_MysteryTMHM, .useSecondTypeIconPalette = FALSE, .isSpecialCaseType = TRUE, .isHiddenPowerType = FALSE, @@ -473,6 +478,7 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = .zMove = MOVE_BREAKNECK_BLITZ, .maxMove = MOVE_MAX_STRIKE, .teraTypeRGBValue = RGB(10, 18, 27), + .damageCategory = DAMAGE_CATEGORY_SPECIAL, .paletteTMHM = gItemIconPalette_NormalTMHM, // failsafe .useSecondTypeIconPalette = FALSE, .isSpecialCaseType = TRUE, diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 19de7da4de..792df979a0 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -1454,9 +1454,21 @@ static void Task_RushInjuredPokemonToCenter(u8 taskId) { DestroyTask(taskId); if (gTasks[taskId].tIsPlayerHouse) + { + if (IS_FRLG) + StringCopy(gStringVar1, COMPOUND_STRING("PROF. OAK")); + else + StringCopy(gStringVar1, COMPOUND_STRING("PROF. BIRCH")); ScriptContext_SetupScript(EventScript_AfterWhiteOutMomHeal); + } + else if (IS_FRLG) + { + ScriptContext_SetupScript(EventScript_AfterWhiteOutHeal_Frlg); + } else + { ScriptContext_SetupScript(EventScript_AfterWhiteOutHeal); + } } break; } diff --git a/src/heal_location.c b/src/heal_location.c index 0cec17233c..73f2e036d0 100644 --- a/src/heal_location.c +++ b/src/heal_location.c @@ -102,4 +102,5 @@ void SetWhiteoutRespawnWarpAndHealerNPC(struct WarpData *warp) warp->x = sWhiteoutRespawnHealCenterMapIdxs[healLocationId - 1][2]; warp->y = sWhiteoutRespawnHealCenterMapIdxs[healLocationId - 1][3]; gSpecialVar_LastTalked = healNpcLocalId; + gSpecialVar_0x800B = healNpcLocalId; } diff --git a/src/palette.c b/src/palette.c index b858462bbf..ec8f43ef2f 100644 --- a/src/palette.c +++ b/src/palette.c @@ -220,7 +220,7 @@ void ResetPaletteFadeControl(void) static u8 UpdateTimeOfDayPaletteFade(void) { u32 timePalettes; - u16 copyPalettes; + u32 copyPalettes; u16 *src; u16 *dst; diff --git a/src/pokedex_plus_hgss.c b/src/pokedex_plus_hgss.c index 824a1ccdf8..0d40b70848 100644 --- a/src/pokedex_plus_hgss.c +++ b/src/pokedex_plus_hgss.c @@ -286,6 +286,9 @@ static const u32 sPokedexPlusHGSS_ScreenSearchNational_Tilemap[] = INCBIN_U32("g #define MON_PAGE_X 48 #define MON_PAGE_Y 56 +// Width of pixels one line of text in the species box can be +#define STATS_PAGE_SPECIES_MAX_WIDTH 55 + static EWRAM_DATA struct PokedexView *sPokedexView = NULL; static EWRAM_DATA u16 sLastSelectedPokemon = 0; static EWRAM_DATA u8 sPokeBallRotation = 0; @@ -597,6 +600,10 @@ u32 GetSpeciesNameFontId(u32 nameWidth); u32 GetSpeciesNameWidthInChars(const u8 *speciesName); bool32 IsSpeciesAlcremie(enum Species targetSpecies); bool32 IsItemSweet(enum Item item); +static void TryLoadDarkModeArrowPalette(void); + +//Cry screen +static void FillCryMeterWindowTilemapWithBg(void); //Stat bars by DizzyEgg #define TAG_STAT_BAR 4097 @@ -1140,6 +1147,7 @@ static const struct CompressedSpriteSheet sInterfaceSpriteSheet[] = static const struct SpritePalette sInterfaceSpritePalette[] = { {sPokedexPlusHGSS_Default_Pal, TAG_DEX_INTERFACE}, + {sPokedexPlusHGSS_Default_dark_Pal, TAG_DEX_INTERFACE}, {0} }; @@ -2377,7 +2385,7 @@ static bool8 LoadPokedexListPage(u8 page) FreeAllSpritePalettes(); gReservedSpritePaletteCount = 8; LoadCompressedSpriteSheet(&sInterfaceSpriteSheet[HGSS_DECAPPED]); - LoadSpritePalettes(sInterfaceSpritePalette); + LoadSpritePalette(&sInterfaceSpritePalette[HGSS_DARK_MODE]); LoadSpritePalettes(sStatBarSpritePal); CreateInterfaceSprites(page); gMain.state++; @@ -4278,6 +4286,15 @@ static void PrintInfoScreenTextSmall(const u8* str, u8 fontId, u8 left, u8 top) AddTextPrinterParameterized4(0, fontId, left, top, 0, 0, color, 0, str); } +static void PrintStatsScreenTextSmallNarrower(u8 windowId, const u8* str, u8 left, u8 top) +{ + u8 color[3]; + color[0] = TEXT_COLOR_TRANSPARENT; + color[1] = TEXT_DYNAMIC_COLOR_6; + color[2] = TEXT_COLOR_LIGHT_GRAY; + + AddTextPrinterParameterized4(windowId, FONT_SMALL_NARROWER, left, top, 0, 0, color, 0, str); +} static void UNUSED PrintInfoScreenTextSmallWhite(const u8* str, u8 left, u8 top) { u8 color[3]; @@ -5283,7 +5300,11 @@ static void PrintStatsScreen_NameGender(u8 taskId, u32 num, u32 value) u8 gender_x, gender_y; //Name - PrintStatsScreenTextSmall(WIN_STATS_NAME_GENDER, GetSpeciesName(species), base_x, base_y); + const u8 *name = GetSpeciesName(species); + if (GetStringWidth(FONT_SMALL, name, 0) <= STATS_PAGE_SPECIES_MAX_WIDTH) + PrintStatsScreenTextSmall(WIN_STATS_NAME_GENDER, name, base_x, base_y); + else + PrintStatsScreenTextSmallNarrower(WIN_STATS_NAME_GENDER, name, base_x, base_y); //Number if (value == 0) @@ -5999,6 +6020,7 @@ static void Task_LoadEvolutionScreen(u8 taskId) gTasks[taskId].data[3] = 0; PrintEvolutionTargetSpeciesAndMethod(taskId, NationalPokedexNumToSpeciesHGSS(sPokedexListItem->dexNum), 0, &depth, alreadyPrintedIcons, &iconDepth, 0); LoadSpritePalette(&gSpritePalette_Arrow); + TryLoadDarkModeArrowPalette(); GetSeenFlagTargetSpecies(); if (sPokedexView->sEvoScreenData.numAllEvolutions > 0 && sPokedexView->sEvoScreenData.numSeen > 0) { @@ -6460,10 +6482,10 @@ static void PrintEvolutionTargetSpeciesAndMethod(u8 taskId, enum Species species bool32 isAlcremie = IsSpeciesAlcremie(targetSpecies); - enum Species speciesNameWidthInChars = GetSpeciesNameWidthInChars(GetSpeciesName(targetSpecies)); - enum Species speciesNameCharWidth = GetFontAttribute(GetSpeciesNameFontId(speciesNameWidthInChars), FONTATTR_MAX_LETTER_WIDTH); + u32 speciesNameWidthInChars = GetSpeciesNameWidthInChars(GetSpeciesName(targetSpecies)); + u32 speciesNameCharWidth = GetFontAttribute(GetSpeciesNameFontId(speciesNameWidthInChars), FONTATTR_MAX_LETTER_WIDTH); - enum Species speciesNameWidth = (speciesNameWidthInChars * speciesNameCharWidth); + u32 speciesNameWidth = (speciesNameWidthInChars * speciesNameCharWidth); u32 base_x_offset = speciesNameWidth + base_x + depth_offset; // for evo method info u32 maxScreenWidth = 230 - base_x_offset; @@ -6915,6 +6937,7 @@ static void Task_LoadFormsScreen(u8 taskId) gTasks[taskId].data[3] = 0; PrintForms(taskId, NationalPokedexNumToSpeciesHGSS(sPokedexListItem->dexNum)); LoadSpritePalette(&gSpritePalette_Arrow); + TryLoadDarkModeArrowPalette(); gMain.state++; break; case 5: @@ -7235,6 +7258,7 @@ static void Task_LoadCryScreen(u8 taskId) cryMeter.yPos = 3; if (LoadCryMeter(&cryMeter, 3)) gMain.state++; + FillCryMeterWindowTilemapWithBg(); CopyWindowToVram(WIN_VU_METER, COPYWIN_GFX); CopyWindowToVram(WIN_INFO, COPYWIN_FULL); CopyBgTilemapBufferToVram(0); @@ -7451,11 +7475,21 @@ static void LoadPlayArrowPalette(bool8 cryPlaying) { u16 color; - if (cryPlaying) - color = RGB(18, 28, 0); + if (!HGSS_DARK_MODE) + { + if (cryPlaying) + color = RGB(29, 9, 4); + else + color = RGB(18, 2, 4); + } else - color = RGB(15, 21, 0); - LoadPalette(&color, BG_PLTT_ID(5) + 13, PLTT_SIZEOF(1)); + { + if (cryPlaying) + color = RGB(9, 9, 9); + else + color = RGB(3, 3, 3); + } + LoadPalette(&color, BG_PLTT_ID(0) + 11, PLTT_SIZEOF(1)); } static void Task_HandleSizeScreenInput(u8 taskId) @@ -7869,6 +7903,13 @@ static u8 LoadSearchMenu(void) return CreateTask(Task_LoadSearchMenu, 0); } +static void PrintSearchTextToFit(const u8 *str, u32 x, u32 y, u32 width) +{ + static const u8 color[3] = { TEXT_COLOR_TRANSPARENT, TEXT_DYNAMIC_COLOR_6, TEXT_COLOR_DARK_GRAY }; + u32 fontId = GetFontIdToFit(str, FONT_NORMAL, 0, width); + AddTextPrinterParameterized4(0, fontId, x, y, 0, 0, color, TEXT_SKIP_DRAW, str); +} + static void PrintSearchText(const u8 *str, u32 x, u32 y) { u8 color[3]; @@ -7940,7 +7981,7 @@ static void Task_LoadSearchMenu(u8 taskId) break; case 1: LoadCompressedSpriteSheet(&sInterfaceSpriteSheet[HGSS_DECAPPED]); - LoadSpritePalettes(sInterfaceSpritePalette); + LoadSpritePalette(&sInterfaceSpritePalette[HGSS_DARK_MODE]); LoadSpritePalettes(sStatBarSpritePal); CreateSearchParameterScrollArrows(taskId); for (i = 0; i < NUM_TASK_DATA; i++) @@ -8504,10 +8545,10 @@ static void PrintSelectedSearchParameters(u8 taskId) PrintSearchText(sDexSearchColorOptions[searchParamId].title, 0x2D, 0x21); searchParamId = gTasks[taskId].tCursorPos_TypeLeft + gTasks[taskId].tScrollOffset_TypeLeft; - PrintSearchText(sDexSearchTypeOptions[searchParamId].title, 0x2D, 0x31); + PrintSearchTextToFit(sDexSearchTypeOptions[searchParamId].title, 0x2D, 0x31, 38); searchParamId = gTasks[taskId].tCursorPos_TypeRight + gTasks[taskId].tScrollOffset_TypeRight; - PrintSearchText(sDexSearchTypeOptions[searchParamId].title, 0x5D, 0x31); + PrintSearchTextToFit(sDexSearchTypeOptions[searchParamId].title, 0x5D, 0x31, 38); searchParamId = gTasks[taskId].tCursorPos_Order + gTasks[taskId].tScrollOffset_Order; PrintSearchText(sDexOrderOptions[searchParamId].title, 0x2D, 0x41); @@ -8741,3 +8782,33 @@ static void ClearSearchParameterBoxText(void) { ClearSearchMenuRect(144, 8, 96, 96); } + +static void TryLoadDarkModeArrowPalette(void) +{ + if (!HGSS_DARK_MODE) + return; + + u32 index = IndexOfSpritePaletteTag(gSpritePalette_Arrow.tag); + u32 colorArrow = RGB2GBA(72, 72, 72); + u32 colorOutline = RGB2GBA(24, 24, 24); + + LoadPalette(&colorArrow, OBJ_PLTT_ID(index) + 1, sizeof(colorArrow)); + LoadPalette(&colorOutline, OBJ_PLTT_ID(index) + 2, sizeof(colorOutline)); +} + +static void FillCryMeterWindowTilemapWithBg(void) +{ + // This fills the window behind the 'VU' text on the cry meter. + // It is filled with blank tiles, showing as black. + + struct Window windowLocal = gWindows[WIN_VU_METER]; + + FillBgTilemapBufferRect( + 3, + 0, + windowLocal.window.tilemapLeft, + windowLocal.window.tilemapTop, + windowLocal.window.width, + windowLocal.window.height, + windowLocal.window.paletteNum); +} diff --git a/src/pokemon_size_record.c b/src/pokemon_size_record.c index 482bd2a8d9..795451103f 100644 --- a/src/pokemon_size_record.c +++ b/src/pokemon_size_record.c @@ -39,8 +39,7 @@ static const struct UnknownStruct sBigMonSizeTable[] = { 1700, 1, -26 }, }; -// - 4 for unused gift ribbon bits in MON_DATA_UNUSED_RIBBONS -static const u8 sGiftRibbonsMonDataIds[GIFT_RIBBONS_COUNT - 4] = +static const u8 sGiftRibbonsMonDataIds[NUM_GIFT_RIBBONS] = { MON_DATA_MARINE_RIBBON, MON_DATA_LAND_RIBBON, MON_DATA_SKY_RIBBON, MON_DATA_COUNTRY_RIBBON, MON_DATA_NATIONAL_RIBBON, MON_DATA_EARTH_RIBBON, @@ -259,7 +258,7 @@ void GiveGiftRibbonToParty(u8 index, u8 ribbonId) u8 array[ARRAY_COUNT(sGiftRibbonsMonDataIds)]; memcpy(array, sGiftRibbonsMonDataIds, sizeof(sGiftRibbonsMonDataIds)); - if (index < GIFT_RIBBONS_COUNT && ribbonId <= MAX_GIFT_RIBBON) + if (index < NUM_GIFT_RIBBONS && ribbonId <= MAX_GIFT_RIBBON) { gSaveBlock1Ptr->giftRibbons[index] = ribbonId; for (i = 0; i < PARTY_SIZE; i++) diff --git a/src/pokemon_sprite_visualizer.c b/src/pokemon_sprite_visualizer.c index 1162eeb09f..4dbeff02c4 100644 --- a/src/pokemon_sprite_visualizer.c +++ b/src/pokemon_sprite_visualizer.c @@ -519,7 +519,7 @@ static void PrintInstructionsOnWindow(struct PokemonSpriteVisualizer *data) { u8 fontId = FONT_SMALL; u8 x = 2; - enum Species species = data->modifyArrows.currValue; + enum Species species = IsSpeciesEnabled(data->modifyArrows.currValue) ? SanitizeSpeciesId(data->modifyArrows.currValue) : SPECIES_NONE; u8 textBottom[] = _("BACK:\nFRONT:\nBG:$"); u8 textBottomForms[] = _("BACK:\nFRONT:\nBG:\nFORMS:$"); @@ -575,7 +575,8 @@ static void SetStructPtr(u8 taskId, void *ptr) static void PrintDigitChars(struct PokemonSpriteVisualizer *data) { s32 i; - enum Species species = data->modifyArrows.currValue; + enum Species species = IsSpeciesEnabled(data->modifyArrows.currValue) ? data->modifyArrows.currValue : SPECIES_NONE; + u8 text[MODIFY_DIGITS_MAX + POKEMON_NAME_LENGTH + 8]; for (i = 0; i < data->modifyArrows.maxDigits; i++) @@ -793,7 +794,7 @@ static void BattleLoadOpponentMonSpriteGfxCustom(enum Species species, bool8 isF static void SetConstSpriteValues(struct PokemonSpriteVisualizer *data) { - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; data->constSpriteValues.frontPicCoords = gSpeciesInfo[species].frontPicYOffset; data->constSpriteValues.frontElevation = gSpeciesInfo[species].enemyMonElevation; data->constSpriteValues.backPicCoords = gSpeciesInfo[species].backPicYOffset; @@ -810,7 +811,7 @@ static void ResetShadowSettings(struct PokemonSpriteVisualizer *data) { if (B_ENEMY_MON_SHADOW_STYLE <= GEN_3 || P_GBA_STYLE_SPECIES_GFX == TRUE) return; - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; data->shadowSettings.definedX = gSpeciesInfo[species].enemyShadowXOffset; data->shadowSettings.definedY = gSpeciesInfo[species].enemyShadowYOffset; data->shadowSettings.definedSize = gSpeciesInfo[species].enemyShadowSize; @@ -910,7 +911,7 @@ static void SpriteCB_Follower(struct Sprite *sprite) static void LoadAndCreateEnemyShadowSpriteCustom(struct PokemonSpriteVisualizer *data) { bool8 invisible = FALSE; - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; if (B_ENEMY_MON_SHADOW_STYLE >= GEN_4 && P_GBA_STYLE_SPECIES_GFX == FALSE) { @@ -1040,7 +1041,7 @@ static void DrawFollowerSprite(struct PokemonSpriteVisualizer *data) if (!OW_POKEMON_OBJECT_EVENTS) return; - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; u16 graphicsId = species + OBJ_EVENT_MON; if (data->isShiny) graphicsId += OBJ_EVENT_MON_SHINY; @@ -1268,7 +1269,7 @@ void CB2_Pokemon_Sprite_Visualizer(void) SetStructPtr(taskId, data); data->currentmonId = SPECIES_BULBASAUR; - species = SanitizeSpeciesId(data->currentmonId); + species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; //Print instructions PrintInstructionsOnWindow(data); @@ -1385,7 +1386,7 @@ static void ResetBGs_PokemonSpriteVisualizer(u16 a) static void ApplyOffsetSpriteValues(struct PokemonSpriteVisualizer *data) { - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; //Back gSprites[data->backspriteId].y = VISUALIZER_MON_BACK_Y + gSpeciesInfo[species].backPicYOffset + data->offsetsSpriteValues.offset_back_picCoords; //Front @@ -1398,7 +1399,7 @@ static void ApplyOffsetSpriteValues(struct PokemonSpriteVisualizer *data) static void UpdateSubmenuOneOptionValue(u8 taskId, bool8 increment) { struct PokemonSpriteVisualizer *data = GetStructPtr(taskId); - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; u8 option = data->submenuYpos[1]; switch (option) @@ -1483,7 +1484,7 @@ static void UpdateSubmenuOneOptionValue(u8 taskId, bool8 increment) static void UpdateSubmenuTwoOptionValue(u8 taskId, bool8 increment) { struct PokemonSpriteVisualizer *data = GetStructPtr(taskId); - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; u8 option = data->submenuYpos[2]; s8 offset; u8 y; @@ -1703,7 +1704,7 @@ static void OpenSubmenu(u32 submenu, u8 taskId) static void HandleInput_PokemonSpriteVisualizer(u8 taskId) { struct PokemonSpriteVisualizer *data = GetStructPtr(taskId); - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; struct Sprite *Frontsprite = &gSprites[data->frontspriteId]; struct Sprite *Backsprite = &gSprites[data->backspriteId]; @@ -1987,7 +1988,7 @@ static void HandleInput_PokemonSpriteVisualizer(u8 taskId) static void ReloadPokemonSprites(struct PokemonSpriteVisualizer *data) { const u16 *palette; - enum Species species = SanitizeSpeciesId(data->currentmonId); + enum Species species = IsSpeciesEnabled(data->currentmonId) ? SanitizeSpeciesId(data->currentmonId) : SPECIES_NONE; s16 offset_y; u8 front_x = sBattlerCoords[0][1].x; u8 front_y; diff --git a/src/pokerus.c b/src/pokerus.c index 9dda9a90d1..a3f897d42d 100644 --- a/src/pokerus.c +++ b/src/pokerus.c @@ -1,6 +1,6 @@ #include "global.h" #include "event_data.h" -#include "generational_changes.h" +#include "config_changes.h" #include "pokemon.h" #include "pokerus.h" #include "random.h" diff --git a/src/trade.c b/src/trade.c index f6dca52188..4d385b450c 100644 --- a/src/trade.c +++ b/src/trade.c @@ -202,7 +202,8 @@ static EWRAM_DATA struct { u8 partnerCursorPosition; u16 linkData[20]; u8 timer; - u8 giftRibbons[GIFT_RIBBONS_COUNT]; + u8 giftRibbons[NUM_GIFT_RIBBONS]; + u8 padding[4]; u8 filler_B4[0x81C]; struct { bool8 active; diff --git a/test/battle/ai/ai.c b/test/battle/ai/ai.c index 6b42346d24..81c2deda27 100644 --- a/test/battle/ai/ai.c +++ b/test/battle/ai/ai.c @@ -197,14 +197,14 @@ AI_SINGLE_BATTLE_TEST("AI prefers Earthquake over Drill Run if both require the } } -AI_SINGLE_BATTLE_TEST("AI prefers a weaker move over a one with a downside effect if both require the same number of hits to ko") +AI_SINGLE_BATTLE_TEST("AI prefers a weaker move over one with a downside effect if both require the same number of hits to ko") { enum Move move1 = MOVE_NONE, move2 = MOVE_NONE, move3 = MOVE_NONE, move4 = MOVE_NONE; enum Move expectedMove; u16 hp, turns; // Both moves require the same number of turns but Flamethrower will be chosen over Overheat (powerful effect) - PARAMETRIZE { move1 = MOVE_OVERHEAT; move2 = MOVE_FLAMETHROWER; hp = 300; expectedMove = MOVE_FLAMETHROWER; turns = 2; } + PARAMETRIZE { move1 = MOVE_OVERHEAT; move2 = MOVE_FLAMETHROWER; hp = 320; expectedMove = MOVE_FLAMETHROWER; turns = 2; } // Overheat kill in least amount of turns PARAMETRIZE { move1 = MOVE_OVERHEAT; move2 = MOVE_FLAMETHROWER; hp = 250; expectedMove = MOVE_OVERHEAT; turns = 1; } @@ -1007,7 +1007,7 @@ AI_SINGLE_BATTLE_TEST("AI has a chance to prioritize last chance priority damage GIVEN { AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_OMNISCIENT); PLAYER(SPECIES_CAMERUPT) { Speed(2); Moves(MOVE_FLAMETHROWER, MOVE_CELEBRATE); } - OPPONENT(SPECIES_FLOATZEL) { Level(90); Speed(1); HP(1); Moves(MOVE_WAVE_CRASH, MOVE_AQUA_JET); } + OPPONENT(SPECIES_FLOATZEL) { Level(85); Speed(1); HP(1); Moves(MOVE_WAVE_CRASH, MOVE_AQUA_JET); } } WHEN { TURN { MOVE(player, MOVE_CELEBRATE); EXPECT_MOVE(opponent, MOVE_AQUA_JET); } } @@ -1296,7 +1296,7 @@ AI_SINGLE_BATTLE_TEST("AI's comparison of damaging moves correctly reads moveset PLAYER(SPECIES_RAPIDASH_GALAR){ Level(64); HP(1); Nature(NATURE_TIMID); Moves(MOVE_TACKLE);} OPPONENT(SPECIES_HAXORUS){ Level(64); Nature(NATURE_JOLLY); Ability(ABILITY_MOLD_BREAKER); Moves(move, MOVE_EARTHQUAKE, MOVE_POISON_JAB); } } WHEN { - TURN { + TURN { MOVE(player, MOVE_TACKLE); if (move == MOVE_TACKLE) SCORE_EQ_VAL(opponent, MOVE_TACKLE, 104); @@ -1307,3 +1307,64 @@ AI_SINGLE_BATTLE_TEST("AI's comparison of damaging moves correctly reads moveset } } } + +AI_SINGLE_BATTLE_TEST("Bolt Beak damage will be correctly seen by AI (singles)") +{ + u32 playerSpeed, aiSpeed; + + PARAMETRIZE { playerSpeed = 20; aiSpeed = 10; } + PARAMETRIZE { playerSpeed = 10; aiSpeed = 20; } + + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_STARMIE) { Speed(playerSpeed); Moves(MOVE_PROTECT, MOVE_CELEBRATE); } + OPPONENT(SPECIES_ZAPDOS) { Speed(aiSpeed); Moves(MOVE_BOLT_BEAK, MOVE_THUNDER); } + } WHEN { + if (playerSpeed > aiSpeed) { + TURN { MOVE(player, MOVE_PROTECT); EXPECT_MOVE(opponent, MOVE_THUNDER); } + TURN { EXPECT_MOVE(opponent, MOVE_THUNDER); } + } else { + TURN { MOVE(player, MOVE_PROTECT); EXPECT_MOVE(opponent, MOVE_BOLT_BEAK); } + TURN { EXPECT_MOVE(opponent, MOVE_BOLT_BEAK); } + } + } +} + +AI_DOUBLE_BATTLE_TEST("Bolt Beak damage will be correctly seen by AI (doubles)") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_WOBBUFFET) { Speed(1); Moves(MOVE_PROTECT, MOVE_CELEBRATE); } + PLAYER(SPECIES_WOBBUFFET) { Speed(3); Moves(MOVE_PROTECT, MOVE_CELEBRATE); } + OPPONENT(SPECIES_ZAPDOS) { Speed(2); Moves(MOVE_BOLT_BEAK, MOVE_THUNDER); } + OPPONENT(SPECIES_ZAPDOS) { Speed(4); Moves(MOVE_BOLT_BEAK, MOVE_THUNDER); } + TIE_BREAK_TARGET(TARGET_TIE_HI, 0); + } WHEN { + TURN { + MOVE(playerLeft, MOVE_PROTECT); + MOVE(playerRight, MOVE_PROTECT); + SCORE_EQ_VAL(opponentLeft, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerLeft); + SCORE_EQ_VAL(opponentLeft, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT, target:playerRight); + SCORE_EQ_VAL(opponentLeft, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerLeft); + SCORE_EQ_VAL(opponentLeft, MOVE_THUNDER, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerRight); + SCORE_EQ_VAL(opponentRight, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerLeft); + SCORE_EQ_VAL(opponentRight, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerRight); + SCORE_EQ_VAL(opponentRight, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerLeft); + SCORE_EQ_VAL(opponentRight, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerRight); + EXPECT_MOVE(opponentLeft, MOVE_THUNDER, target:playerRight); + EXPECT_MOVE(opponentRight, MOVE_BOLT_BEAK, target:playerRight); + } + TURN { + SCORE_EQ_VAL(opponentLeft, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerLeft); + SCORE_EQ_VAL(opponentLeft, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT, target:playerRight); + SCORE_EQ_VAL(opponentLeft, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerLeft); + SCORE_EQ_VAL(opponentLeft, MOVE_THUNDER, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerRight); + SCORE_EQ_VAL(opponentRight, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerLeft); + SCORE_EQ_VAL(opponentRight, MOVE_BOLT_BEAK, AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE, target:playerRight); + SCORE_EQ_VAL(opponentRight, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerLeft); + SCORE_EQ_VAL(opponentRight, MOVE_THUNDER, AI_SCORE_DEFAULT, target:playerRight); + EXPECT_MOVE(opponentLeft, MOVE_THUNDER, target:playerRight); + EXPECT_MOVE(opponentRight, MOVE_BOLT_BEAK, target:playerRight); + } + } +} diff --git a/test/battle/ai/ai_calc_best_move_score.c b/test/battle/ai/ai_calc_best_move_score.c index 7fd3ff546b..a3efc06ad0 100644 --- a/test/battle/ai/ai_calc_best_move_score.c +++ b/test/battle/ai/ai_calc_best_move_score.c @@ -285,3 +285,24 @@ AI_SINGLE_BATTLE_TEST("Fillet Away AI handling") TURN { MOVE(player, move); EXPECT_MOVE(opponent, move == MOVE_SCALD ? MOVE_FILLET_AWAY : MOVE_AQUA_CUTTER); } } } + +AI_SINGLE_BATTLE_TEST("Retaliate sees damage correctly on the field") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_TRY_TO_FAINT | AI_FLAG_CHECK_VIABILITY | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_WOBBUFFET) { Level(50); HP(100); Nature(NATURE_QUIRKY); Ability(ABILITY_TELEPATHY); Speed(58); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_RATTATA){ Level(1); HP(1); Nature(NATURE_QUIRKY); Speed(1); Moves(MOVE_TACKLE);} + OPPONENT(SPECIES_KANGASKHAN) { Level(50); Nature(NATURE_QUIRKY); Ability(ABILITY_INNER_FOCUS); Speed(251); Moves(MOVE_RETALIATE, MOVE_SLASH); } + } WHEN { + TURN { + MOVE(player, MOVE_TACKLE); + EXPECT_MOVE(opponent, MOVE_TACKLE); + EXPECT_SEND_OUT(opponent, 1); + } + TURN { + MOVE(player, MOVE_TACKLE); + SCORE_EQ_VAL(opponent, MOVE_RETALIATE, (AI_SCORE_DEFAULT + BEST_DAMAGE_MOVE + FAST_KILL)); + SCORE_EQ_VAL(opponent, MOVE_SLASH, (AI_SCORE_DEFAULT)); + } + } +} diff --git a/test/battle/ai/ai_doubles.c b/test/battle/ai/ai_doubles.c index 0a276ca7cc..6ee7b6ec53 100644 --- a/test/battle/ai/ai_doubles.c +++ b/test/battle/ai/ai_doubles.c @@ -708,16 +708,33 @@ AI_DOUBLE_BATTLE_TEST("AI sees corresponding absorbing abilities on partners") GIVEN { ASSUME(GetMoveTarget(MOVE_DISCHARGE) == TARGET_FOES_AND_ALLY); - AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_HP_AWARE); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); PLAYER(SPECIES_ZIGZAGOON); PLAYER(SPECIES_ZIGZAGOON); - OPPONENT(SPECIES_SLAKING) { Moves(move, MOVE_SCRATCH); } + OPPONENT(SPECIES_SLAKING) { Moves(move, MOVE_CONSTRICT); } OPPONENT(species) { HP(1); Ability(ability); Moves(MOVE_POUND, MOVE_EMBER, MOVE_ROUND); } } WHEN { if (ability != ABILITY_CLOUD_NINE) TURN { EXPECT_MOVE(opponentLeft, move); } else - TURN { EXPECT_MOVE(opponentLeft, MOVE_SCRATCH); } + TURN { EXPECT_MOVE(opponentLeft, MOVE_CONSTRICT); } + } +} + +AI_DOUBLE_BATTLE_TEST("AI sees random rolls correctly") +{ + PASSES_RANDOMLY(3, 15, RNG_AI_DMG_ROLL_RANDOM); // Slaking KOs with 3 rolls + GIVEN { + WITH_CONFIG(AI_ROLL_ATTACKING, AI_ROLL_RANDOM); + ASSUME(GetMoveTarget(MOVE_DISCHARGE) == TARGET_FOES_AND_ALLY); + ASSUME(GetMoveType(MOVE_DISCHARGE) == TYPE_ELECTRIC); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_ZIGZAGOON); + PLAYER(SPECIES_ZIGZAGOON); + OPPONENT(SPECIES_SLAKING) { Moves(MOVE_DISCHARGE, MOVE_SCRATCH); } + OPPONENT(SPECIES_PIKACHU) { HP(1); Ability(ABILITY_LIGHTNING_ROD); Moves(MOVE_SCRATCH); } + } WHEN { + TURN { EXPECT_MOVE(opponentLeft, MOVE_SCRATCH); } } } diff --git a/test/battle/ai/ai_switching.c b/test/battle/ai/ai_switching.c index 58de3b59c7..8ce62c9748 100644 --- a/test/battle/ai/ai_switching.c +++ b/test/battle/ai/ai_switching.c @@ -1274,6 +1274,105 @@ AI_SINGLE_BATTLE_TEST("Switch AI: AI will switch out if it has <= 66% HP remaini } } +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will switch out to cycle Intimidate when facing a physical attacker") +{ + PASSES_RANDOMLY(SHOULD_SWITCH_INTIMIDATE_PERCENTAGE, 100, RNG_AI_SWITCH_INTIMIDATE); + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(player, MOVE_TACKLE); EXPECT_SWITCH(opponent, 1); } + } +} + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will not cycle Intimidate when target blocks or punishes Attack drops") +{ + u32 Species = SPECIES_NONE; + enum Ability ability; + PARAMETRIZE { Species = SPECIES_TENTACRUEL; ability = ABILITY_CLEAR_BODY; } + PARAMETRIZE { Species = SPECIES_BRAVIARY; ability = ABILITY_DEFIANT; } + + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING); + PLAYER(Species) { Ability(ability); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(player, MOVE_TACKLE); EXPECT_MOVE(opponent, MOVE_TACKLE); } + } +} + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will not cycle Intimidate when target is a special attacker") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING); + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_WATER_GUN); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(player, MOVE_WATER_GUN); EXPECT_MOVE(opponent, MOVE_TACKLE); } + } +} + +AI_DOUBLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will switch out to cycle Intimidate in doubles when at least one target is valid") +{ + PASSES_RANDOMLY(SHOULD_SWITCH_INTIMIDATE_PERCENTAGE, 100, RNG_AI_SWITCH_INTIMIDATE); + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_WATER_GUN); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_TACKLE, target: opponentLeft); MOVE(playerRight, MOVE_WATER_GUN, target: opponentRight); EXPECT_SWITCH(opponentLeft, 2); } + } +} + +AI_DOUBLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will not cycle Intimidate in doubles when both targets block Attack drops") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_TENTACRUEL) { Ability(ABILITY_CLEAR_BODY); Moves(MOVE_TACKLE); } + PLAYER(SPECIES_KINGLER) { Ability(ABILITY_HYPER_CUTTER); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_TACKLE, target: opponentLeft); MOVE(playerRight, MOVE_TACKLE, target: opponentRight); EXPECT_MOVE(opponentLeft, MOVE_TACKLE); } + } +} + +AI_DOUBLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will not cycle Intimidate in doubles when one target punishes stat drops") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_BRAVIARY) { Ability(ABILITY_DEFIANT); Moves(MOVE_TACKLE); } + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_TACKLE, target: opponentLeft); MOVE(playerRight, MOVE_TACKLE, target: opponentRight); EXPECT_MOVE(opponentLeft, MOVE_TACKLE); } + } +} + +AI_DOUBLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will not cycle Intimidate in doubles when both targets are special attackers") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_WATER_GUN); } + PLAYER(SPECIES_ZIGZAGOON) { Moves(MOVE_WATER_GUN); } + OPPONENT(SPECIES_ARCANINE) { Ability(ABILITY_INTIMIDATE); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_ZIGZAGOON) { Moves(MOVE_TACKLE); } + } WHEN { + TURN { MOVE(playerLeft, MOVE_WATER_GUN, target: opponentLeft); MOVE(playerRight, MOVE_WATER_GUN, target: opponentRight); EXPECT_MOVE(opponentLeft, MOVE_TACKLE); } + } +} + AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_SWITCHING: AI will switch out if it has been Encore'd into a status move") { PASSES_RANDOMLY(SHOULD_SWITCH_ENCORE_STATUS_PERCENTAGE, 100, RNG_AI_SWITCH_ENCORE); @@ -2244,3 +2343,73 @@ AI_DOUBLE_BATTLE_TEST("AI can switch out both mons on the same turn in double ba TURN { EXPECT_SWITCH(opponentLeft, 2); EXPECT_SWITCH(opponentRight, 3); } } } + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_MON_CHOICES: AI sees stat stage changes on switchin when doing switching calcs") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_LUXIO) { Speed(2); Ability(ABILITY_GUTS); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_ZIGZAGOON) { Speed(1); HP(1); MaxHP(100); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_LUXIO) { Speed(1); Ability(ABILITY_GUTS); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_LUXIO) { Speed(1); Ability(ABILITY_INTIMIDATE); Moves(MOVE_SCRATCH); } + } WHEN { + TURN { MOVE(player, MOVE_SCRATCH); EXPECT_MOVE(opponent, MOVE_SCRATCH); EXPECT_SEND_OUT(opponent, 2); } + } +} + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_MON_CHOICES: AI sees status changes on switchin when doing switching calcs") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ZIGZAGOON) { Speed(2); HP(1); MaxHP(100); Moves(MOVE_TOXIC_SPIKES); } + PLAYER(SPECIES_LUXIO) { Speed(2); Ability(ABILITY_GUTS); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_ZIGZAGOON) { Speed(1); HP(1); MaxHP(100); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_LUXIO) { Speed(1); Ability(ABILITY_INTIMIDATE); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_LUXIO) { Speed(1); Ability(ABILITY_GUTS); Moves(MOVE_SCRATCH); } + } WHEN { + TURN { MOVE(player, MOVE_TOXIC_SPIKES); EXPECT_MOVE(opponent, MOVE_SCRATCH); SEND_OUT(player, 1); } + TURN { MOVE(player, MOVE_SCRATCH); EXPECT_MOVE(opponent, MOVE_SCRATCH); EXPECT_SEND_OUT(opponent, 2); } + } +} + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_MON_CHOICES: AI sees volate changes on switchin when doing switching calcs") +{ + GIVEN { + ASSUME(GetItemHoldEffect(ITEM_BOOSTER_ENERGY) == HOLD_EFFECT_BOOSTER_ENERGY); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ROARING_MOON) { Speed(2); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_ZIGZAGOON) { Speed(1); HP(1); MaxHP(100); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_ROARING_MOON) { Speed(1); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_ROARING_MOON) { Speed(1); Moves(MOVE_SCRATCH); Item(ITEM_BOOSTER_ENERGY); } + } WHEN { + TURN { MOVE(player, MOVE_SCRATCH); EXPECT_MOVE(opponent, MOVE_SCRATCH); EXPECT_SEND_OUT(opponent, 2); } + } +} + +AI_SINGLE_BATTLE_TEST("AI_FLAG_SMART_MON_CHOICES: AI sees HP changes on switchin when doing switchin calcs") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_ZIGZAGOON) { Speed(2); HP(1); MaxHP(100); Moves(MOVE_SPIKES); } + PLAYER(SPECIES_BLAZIKEN) { Speed(2); HP(130); MaxHP(400); Ability(ABILITY_SPEED_BOOST); Moves(MOVE_EMBER); } + OPPONENT(SPECIES_ZIGZAGOON) { Speed(1); HP(1); MaxHP(100); Moves(MOVE_SCRATCH); } + OPPONENT(SPECIES_BLAZIKEN) { Speed(1); HP(180); MaxHP(400); Ability(ABILITY_SPEED_BOOST); Moves(MOVE_EMBER); } + OPPONENT(SPECIES_BLAZIKEN) { Speed(1); HP(180); MaxHP(400); Ability(ABILITY_BLAZE); Moves(MOVE_EMBER); } + } WHEN { + TURN { MOVE(player, MOVE_SPIKES); EXPECT_MOVE(opponent, MOVE_SCRATCH); SEND_OUT(player, 1); } + TURN { MOVE(player, MOVE_EMBER); EXPECT_MOVE(opponent, MOVE_SCRATCH); EXPECT_SEND_OUT(opponent, 2); } + } +} + +AI_SINGLE_BATTLE_TEST("Retaliate sees damage correctly for post ko switch in") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | AI_FLAG_SMART_SWITCHING | AI_FLAG_SMART_MON_CHOICES | AI_FLAG_OMNISCIENT); + PLAYER(SPECIES_GABITE) { Level(50); Speed(2);} + OPPONENT(SPECIES_ZIGZAGOON) { Level(1); Speed(3); HP(1); Moves(MOVE_TACKLE); } + OPPONENT(SPECIES_GROUDON) { Level(85); Speed(3); Moves(MOVE_PRECIPICE_BLADES); } + OPPONENT(SPECIES_STOUTLAND) { Level(50); Speed(3); Moves(MOVE_RETALIATE); } + } WHEN { + TURN { MOVE(player, MOVE_TACKLE); EXPECT_SEND_OUT(opponent, 2); } + } +} diff --git a/test/battle/move_effect/encore.c b/test/battle/move_effect/encore.c index 64cf73f224..a9a038da10 100644 --- a/test/battle/move_effect/encore.c +++ b/test/battle/move_effect/encore.c @@ -6,7 +6,7 @@ ASSUMPTIONS ASSUME(GetMoveEffect(MOVE_ENCORE) == EFFECT_ENCORE); } -SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns: Encore used before move") +SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns: Encore used before move (Gen5+)") { struct BattlePokemon *encoreUser = NULL; struct BattlePokemon *encoreTarget = NULL; @@ -14,14 +14,14 @@ SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns: Encore used PARAMETRIZE { encoreUser = opponent; encoreTarget = player; speedPlayer = 10; speedOpponent = 20; } PARAMETRIZE { encoreUser = player; encoreTarget = opponent; speedPlayer = 20; speedOpponent = 10; } GIVEN { - WITH_CONFIG(B_ENCORE_TARGET, GEN_3); + WITH_CONFIG(B_ENCORE_TURNS, GEN_5); PLAYER(SPECIES_WOBBUFFET) { Speed(speedPlayer); } OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOpponent); } } WHEN { TURN { MOVE(encoreUser, MOVE_CELEBRATE); MOVE(encoreTarget, MOVE_CELEBRATE); } TURN { MOVE(encoreUser, MOVE_ENCORE); MOVE(encoreTarget, MOVE_CELEBRATE); } - TURN { FORCED_MOVE(encoreTarget); } - TURN { FORCED_MOVE(encoreTarget); } + TURN { MOVE(encoreTarget, MOVE_CELEBRATE); } + TURN { MOVE(encoreTarget, MOVE_CELEBRATE); } TURN { MOVE(encoreTarget, MOVE_SPLASH); } } SCENE { ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, encoreUser); @@ -34,7 +34,7 @@ SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns: Encore used } } -SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns for player: Encore used after move") +SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 4 turns: Encore used after move (Gen5+)") { struct BattlePokemon *encoreUser = NULL; struct BattlePokemon *encoreTarget = NULL; @@ -42,14 +42,14 @@ SINGLE_BATTLE_TEST("Encore forces consecutive move uses for 3 turns for player: PARAMETRIZE { encoreUser = opponent; encoreTarget = player; speedPlayer = 20; speedOpponent = 10; } PARAMETRIZE { encoreUser = player; encoreTarget = opponent; speedPlayer = 10; speedOpponent = 20; } GIVEN { - WITH_CONFIG(B_ENCORE_TARGET, GEN_3); + WITH_CONFIG(B_ENCORE_TURNS, GEN_5); PLAYER(SPECIES_WOBBUFFET) { Speed(speedPlayer); } OPPONENT(SPECIES_WOBBUFFET) { Speed(speedOpponent); } } WHEN { TURN { MOVE(encoreTarget, MOVE_CELEBRATE); MOVE(encoreUser, MOVE_ENCORE); } - TURN { FORCED_MOVE(encoreTarget); } - TURN { FORCED_MOVE(encoreTarget); } - TURN { FORCED_MOVE(encoreTarget); } + TURN { MOVE(encoreTarget, MOVE_CELEBRATE); } + TURN { MOVE(encoreTarget, MOVE_CELEBRATE); } + TURN { MOVE(encoreTarget, MOVE_CELEBRATE); } TURN { MOVE(encoreTarget, MOVE_SPLASH); } } SCENE { ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, encoreTarget); @@ -124,8 +124,127 @@ SINGLE_BATTLE_TEST("(DYNAMAX) Dynamaxed Pokemon can be encored immediately after } } -TO_DO_BATTLE_TEST("Encore's effect ends if the encored move runs out of PP"); -TO_DO_BATTLE_TEST("Encore lasts for 2-6 turns (Gen 2-3)"); -TO_DO_BATTLE_TEST("Encore lasts for 3-7 turns (Gen 4)"); -TO_DO_BATTLE_TEST("Encore lasts for 3 turns (Gen 5+)"); -TO_DO_BATTLE_TEST("Encore randomly chooses an opponent target"); +SINGLE_BATTLE_TEST("Encore's effect ends if the encored move runs out of PP") +{ + GIVEN { + WITH_CONFIG(B_ENCORE_TURNS, GEN_5); + PLAYER(SPECIES_WOBBUFFET) { Speed(1); MovesWithPP({MOVE_SCRATCH, 2}, {MOVE_CELEBRATE, 10}); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); Moves(MOVE_ENCORE, MOVE_CELEBRATE); } + } WHEN { + TURN { MOVE(player, MOVE_SCRATCH); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(opponent, MOVE_ENCORE); MOVE(player, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENCORE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SCRATCH, player); + MESSAGE("Wobbuffet ended its encore!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + } +} + +// NOTE: AI test is required to validate RNG range without MOVE/FORCED_MOVE invalids; there may be a better approach. +AI_SINGLE_BATTLE_TEST("Encore lasts for 2-6 turns (Gen 2-3)") +{ + u32 count, turns; + + PARAMETRIZE { turns = 2; } + PARAMETRIZE { turns = 3; } + PARAMETRIZE { turns = 4; } + PARAMETRIZE { turns = 5; } + PARAMETRIZE { turns = 6; } + PASSES_RANDOMLY(1, 5, RNG_ENCORE_TURNS); + GIVEN { + WITH_CONFIG(B_ENCORE_TURNS, GEN_3); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_WOBBUFFET) { Speed(1); Moves(MOVE_ENCORE, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); Moves(MOVE_CELEBRATE); } + } WHEN { + TURN { EXPECT_MOVE(opponent, MOVE_CELEBRATE); MOVE(player, MOVE_ENCORE); } + for (count = 0; count < turns - 1; ++count) + TURN { MOVE(player, MOVE_CELEBRATE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENCORE, player); + for (count = 0; count < turns - 1; ++count) + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + MESSAGE("The opposing Wobbuffet ended its encore!"); + } +} + +AI_SINGLE_BATTLE_TEST("Encore lasts for 3-7 turns (Gen 4)") +{ + u32 count, turns; + + PARAMETRIZE { turns = 3; } + PARAMETRIZE { turns = 4; } + PARAMETRIZE { turns = 5; } + PARAMETRIZE { turns = 6; } + PARAMETRIZE { turns = 7; } + PASSES_RANDOMLY(1, 5, RNG_ENCORE_TURNS); + GIVEN { + WITH_CONFIG(B_ENCORE_TURNS, GEN_4); + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_WOBBUFFET) { Speed(1); Moves(MOVE_ENCORE, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); Moves(MOVE_CELEBRATE); } + } WHEN { + TURN { EXPECT_MOVE(opponent, MOVE_CELEBRATE); MOVE(player, MOVE_ENCORE); } + for (count = 0; count < turns - 1; ++count) + TURN { MOVE(player, MOVE_CELEBRATE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENCORE, player); + for (count = 0; count < turns - 1; ++count) + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + MESSAGE("The opposing Wobbuffet ended its encore!"); + } +} + +DOUBLE_BATTLE_TEST("Encore randomly chooses an opponent target (Gen 2-4)") +{ + GIVEN { + WITH_CONFIG(B_ENCORE_TARGET, GEN_4); + PLAYER(SPECIES_WOBBUFFET) { Speed(3); Moves(MOVE_TACKLE, MOVE_CELEBRATE); } + PLAYER(SPECIES_WOBBUFFET) { Speed(1); Moves(MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(4); Moves(MOVE_ENCORE, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); Moves(MOVE_CELEBRATE); } + } WHEN { + TURN { + MOVE(opponentLeft, MOVE_CELEBRATE); + MOVE(playerLeft, MOVE_TACKLE, target: opponentLeft); + } + TURN { + MOVE(opponentLeft, MOVE_ENCORE, target: playerLeft, WITH_RNG(RNG_RANDOM_TARGET, 1)); + MOVE(playerLeft, MOVE_CELEBRATE); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENCORE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerLeft, target: opponentRight); + HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Encore allows choosing an opponent target (Gen 5+)") +{ + GIVEN { + WITH_CONFIG(B_ENCORE_TARGET, GEN_5); + PLAYER(SPECIES_WOBBUFFET) { Speed(3); Moves(MOVE_TACKLE, MOVE_CELEBRATE); } + PLAYER(SPECIES_WOBBUFFET) { Speed(1); Moves(MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(4); Moves(MOVE_ENCORE, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(2); Moves(MOVE_CELEBRATE); } + } WHEN { + TURN { + MOVE(opponentLeft, MOVE_CELEBRATE); + MOVE(playerLeft, MOVE_TACKLE, target: opponentLeft); + } + TURN { + MOVE(opponentLeft, MOVE_ENCORE, target: playerLeft); + MOVE(playerLeft, MOVE_TACKLE, target: opponentRight); + } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_ENCORE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerLeft, target: opponentRight); + HP_BAR(opponentRight); + } +} diff --git a/test/battle/move_effect/trick_room.c b/test/battle/move_effect/trick_room.c index 615931ef15..1e1556bc24 100644 --- a/test/battle/move_effect/trick_room.c +++ b/test/battle/move_effect/trick_room.c @@ -1,4 +1,76 @@ #include "global.h" #include "test/battle.h" +ASSUMPTIONS +{ + ASSUME(GetMoveEffect(MOVE_TRICK_ROOM) == EFFECT_TRICK_ROOM); +} + +SINGLE_BATTLE_TEST("Trick Room doesn't print its ending message twice when used again") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(10); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(1); } + } WHEN { + TURN { MOVE(player, MOVE_TRICK_ROOM); } + TURN { MOVE(player, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_TRICK_ROOM); } + TURN { MOVE(player, MOVE_CELEBRATE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK_ROOM, player); + MESSAGE("Wobbuffet twisted the dimensions!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK_ROOM, player); + MESSAGE("The twisted dimensions returned to normal!"); + NOT MESSAGE("The twisted dimensions returned to normal!"); + } +} + +SINGLE_BATTLE_TEST("Trick Room reverses move order for 5 turns including the turn it is used") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET) { Speed(1); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(10); } + } WHEN { + TURN { MOVE(player, MOVE_TRICK_ROOM); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_CELEBRATE); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK_ROOM, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + } +} + +SINGLE_BATTLE_TEST("Trick Room does not affect move priority") +{ + GIVEN { + ASSUME(GetMovePriority(MOVE_CELEBRATE) == 0); + ASSUME(GetMovePriority(MOVE_QUICK_ATTACK) == 1); + PLAYER(SPECIES_WOBBUFFET) { Speed(1); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(10); } + } WHEN { + TURN { MOVE(player, MOVE_TRICK_ROOM); MOVE(opponent, MOVE_CELEBRATE); } + TURN { MOVE(player, MOVE_CELEBRATE); MOVE(opponent, MOVE_QUICK_ATTACK); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK_ROOM, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_QUICK_ATTACK, opponent); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CELEBRATE, player); + } +} + TO_DO_BATTLE_TEST("TODO: Write Trick Room (Move Effect) test titles") diff --git a/test/battle/partner_control.party b/test/battle/partner_control.party index 5d77e47b27..b5bd7bb964 100644 --- a/test/battle/partner_control.party +++ b/test/battle/partner_control.party @@ -14,6 +14,7 @@ Gender: Male Music: Male Back Pic: Steven AI: Basic Trainer +Difficulty: Normal Metang Brave Nature @@ -45,19 +46,7 @@ EVs: 252 Atk / 252 SpA / 6 SpD - Solar Beam - Dragon Claw -=== 2 === -Name: Test2 -Class: Rival -Pic: Steven -Gender: Male -Music: Male -Back Pic: Steven -Difficulty: Normal - -Mewtwo -Level: 50 - -=== 2 === +=== PARTNER_STEVEN_TEST === Name: Test2 Class: Rival Pic: Steven @@ -70,7 +59,7 @@ Difficulty: Easy Metapod Level: 1 -=== 2 === +=== PARTNER_STEVEN_TEST === Name: Test2 Class: Rival Pic: Steven diff --git a/test/battle/trainer_control.c b/test/battle/trainer_control.c index ca45bcb2f4..436181357b 100644 --- a/test/battle/trainer_control.c +++ b/test/battle/trainer_control.c @@ -176,11 +176,12 @@ TEST("Difficulty changes which party is used for enemy trainer if defined for th TEST("Difficulty default to Normal if the partner doesn't have a member for the current difficulty") { - SetCurrentDifficultyLevel(DIFFICULTY_EASY); + SetCurrentDifficultyLevel(DIFFICULTY_TEST); struct Pokemon *testParty = Alloc(6 * sizeof(struct Pokemon)); u32 currTrainer = TRAINER_PARTNER(1); CreateNPCTrainerPartyFromTrainer(testParty, GetTrainerStructFromId(currTrainer), TRUE, BATTLE_TYPE_TRAINER); EXPECT(GetMonData(&testParty[0], MON_DATA_SPECIES) == SPECIES_METANG); + EXPECT(GetMonData(&testParty[0], MON_DATA_LEVEL) == 42); Free(testParty); SetCurrentDifficultyLevel(DIFFICULTY_NORMAL); } @@ -189,7 +190,7 @@ TEST("Difficulty changes which party is used for partner if defined for the diff { SetCurrentDifficultyLevel(DIFFICULTY_EASY); struct Pokemon *testParty = Alloc(6 * sizeof(struct Pokemon)); - u32 currTrainer = TRAINER_PARTNER(2); + u32 currTrainer = TRAINER_PARTNER(1); CreateNPCTrainerPartyFromTrainer(testParty, GetTrainerStructFromId(currTrainer), TRUE, BATTLE_TYPE_TRAINER); EXPECT(GetMonData(&testParty[0], MON_DATA_SPECIES) == SPECIES_METAPOD); EXPECT(GetMonData(&testParty[0], MON_DATA_LEVEL) == 1); @@ -201,7 +202,7 @@ TEST("Difficulty changes which party is used for partner if defined for the diff { SetCurrentDifficultyLevel(DIFFICULTY_HARD); struct Pokemon *testParty = Alloc(6 * sizeof(struct Pokemon)); - u32 currTrainer = TRAINER_PARTNER(2); + u32 currTrainer = TRAINER_PARTNER(1); CreateNPCTrainerPartyFromTrainer(testParty, GetTrainerStructFromId(currTrainer), TRUE, BATTLE_TYPE_TRAINER); EXPECT(GetMonData(&testParty[0], MON_DATA_SPECIES) == SPECIES_ARCEUS); EXPECT(GetMonData(&testParty[0], MON_DATA_LEVEL) == 99); @@ -213,10 +214,10 @@ TEST("Difficulty changes which party is used for partner if defined for the diff { SetCurrentDifficultyLevel(DIFFICULTY_NORMAL); struct Pokemon *testParty = Alloc(6 * sizeof(struct Pokemon)); - u32 currTrainer = TRAINER_PARTNER(2); + u32 currTrainer = TRAINER_PARTNER(1); CreateNPCTrainerPartyFromTrainer(testParty, GetTrainerStructFromId(currTrainer), TRUE, BATTLE_TYPE_TRAINER); - EXPECT(GetMonData(&testParty[0], MON_DATA_SPECIES) == SPECIES_MEWTWO); - EXPECT(GetMonData(&testParty[0], MON_DATA_LEVEL) == 50); + EXPECT(GetMonData(&testParty[0], MON_DATA_SPECIES) == SPECIES_METANG); + EXPECT(GetMonData(&testParty[0], MON_DATA_LEVEL) == 42); Free(testParty); } diff --git a/test/pokerus.c b/test/pokerus.c index cffcf2194b..1b2ef60c7b 100644 --- a/test/pokerus.c +++ b/test/pokerus.c @@ -3,7 +3,7 @@ #include "event_data.h" #include "pokemon.h" #include "pokerus.h" -#include "generational_changes.h" +#include "config_changes.h" #include "random.h" #include "test/overworld_script.h" #include "test/test.h" diff --git a/test/test_runner.c b/test/test_runner.c index fd7c534087..007ee6b21d 100644 --- a/test/test_runner.c +++ b/test/test_runner.c @@ -154,18 +154,15 @@ void TestRunner_CheckMemory(void) const char *location = MemBlockLocation(block); if (location) { - const char *cmpString = "src/generational_changes.c"; - for (u32 charIndex = 0; charIndex < 26; charIndex++) + const char cmpString[] = "src/config_changes.c"; + if (strncmp(cmpString, location, sizeof(cmpString) - 1) != 0) { - if (cmpString[charIndex] != location[charIndex]) - { - Test_MgbaPrintf("%s: %d bytes not freed", location, block->size); - gTestRunnerState.result = TEST_RESULT_FAIL; - - if (gTestRunnerState.expectedFailState == EXPECT_FAIL_OPEN) - gTestRunnerState.expectedFailState = EXPECT_FAIL_SUCCESS; - break; - } + Test_MgbaPrintf("%s: %d bytes not freed", location, block->size); + gTestRunnerState.result = TEST_RESULT_FAIL; + + if (gTestRunnerState.expectedFailState == EXPECT_FAIL_OPEN) + gTestRunnerState.expectedFailState = EXPECT_FAIL_SUCCESS; + break; } } else diff --git a/tools/learnset_helpers/make_teachables.py b/tools/learnset_helpers/make_teachables.py index 098ba92c6a..263508570b 100644 --- a/tools/learnset_helpers/make_teachables.py +++ b/tools/learnset_helpers/make_teachables.py @@ -24,7 +24,6 @@ For a given species, a move is considered teachable to that species if: from itertools import chain from textwrap import dedent -import glob import json import pathlib import re @@ -32,9 +31,9 @@ import sys import typing -CONFIG_ENABLED_PAT = re.compile(r"#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)") -ALPHABETICAL_ORDER_ENABLED_PAT = re.compile(r"#define HGSS_SORT_TMS_BY_NUM\s+(?P[^ ]*)") -TM_LITTERACY_PAT = re.compile(r"#define P_TM_LITERACY\s+GEN_(?P[^ ]*)") +CONFIG_ENABLED_PAT = re.compile(r"^#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)", flags=re.MULTILINE) +ALPHABETICAL_ORDER_ENABLED_PAT = re.compile(r"^#define HGSS_SORT_TMS_BY_NUM\s+(?P[^ ]*)", flags=re.MULTILINE) +TM_LITERACY_PAT = re.compile(r"^#define P_TM_LITERACY\s+GEN_(?P[^ ]*)", flags=re.MULTILINE) TMHM_MACRO_PAT = re.compile(r"F\((\w+)\)") SNAKIFY_PAT = re.compile(r"(?!^)([A-Z]+)") @@ -64,7 +63,7 @@ def extract_tm_litteracy_config() -> bool: config = False with open("./include/config/pokemon.h", "r") as cfg_pokemon_fp: cfg_pokemon = cfg_pokemon_fp.read() - cfg_defined = TM_LITTERACY_PAT.search(cfg_pokemon) + cfg_defined = TM_LITERACY_PAT.search(cfg_pokemon) if cfg_defined: cfg_val = cfg_defined.group("cfg_val") if ((cfg_val == "LATEST") or (int(cfg_val) > 6)): @@ -193,14 +192,13 @@ def main(): print(__doc__, file=sys.stderr) quit(1) - if len(sys.argv) == 2: - SOURCE_DIR = pathlib.Path(sys.argv[1]) - elif len(sys.argv) == 3: + if len(sys.argv) == 3: if sys.argv[1] != "--tutors": print("Unknown make_teachables mode", file=sys.stderr) quit(1) tutor_mode = True - SOURCE_DIR = pathlib.Path(sys.argv[2]) + + SOURCE_DIR = pathlib.Path(sys.argv[-1]) with open("src/data/pokemon/special_movesets.json", "r") as file: special_movesets = json.load(file) @@ -219,7 +217,6 @@ def main(): assert SOURCE_TEACHING_TYPES_JSON.is_file(), f"{SOURCE_TEACHING_TYPES_JSON=} is not a file" repo_tms = list(extract_repo_tms()) - order_alphabetically = False with open("./include/config/pokedex_plus_hgss.h", "r") as cfg_pokemon_fp: cfg_pokemon = cfg_pokemon_fp.read() diff --git a/tools/learnset_helpers/make_teaching_types.py b/tools/learnset_helpers/make_teaching_types.py index 96d4fc281d..85ad14c907 100644 --- a/tools/learnset_helpers/make_teaching_types.py +++ b/tools/learnset_helpers/make_teaching_types.py @@ -1,16 +1,24 @@ +#!/usr/bin/env python3 + +""" +Usage: python3 make_teaching_types.py OUTPUT_FILE + +Build a primary store of "teaching-types" for each enabled species in the repository as an +input for make_teachables.py. +""" + import glob import json import pathlib import re import sys -import typing -CONFIG_ENABLED_PAT = re.compile(r"#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)") +CONFIG_ENABLED_PAT = re.compile(r"^#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)", flags=re.MULTILINE) TEACHING_TYPE_PAT = re.compile(r"\s*\.teachingType\s*=\s*(?P[A-Z_]+),") LEARNSET_PAT = re.compile(r"\s*\.teachableLearnset\s*=\s*s(?P\w+?)TeachableLearnset") -PREPROC_START_PAT = re.compile(r"#if(def)?\s+\w+") -PREPROC_END_PAT = re.compile(r"#endif\s*(//\s*\w+)?") +PREPROC_START_PAT = re.compile(r"^#if(def)?\s+\w+", flags=re.MULTILINE) +PREPROC_END_PAT = re.compile(r"^#endif\s*(//\s*\w+)?", flags=re.MULTILINE) def enabled() -> bool: """ @@ -35,7 +43,7 @@ def extract_repo_species_data() -> list: pokemon_list = [] teaching_type = "DEFAULT_LEARNING" file_list = sorted(glob.glob("src/data/pokemon/species_info/*_families.h")) - file_list.append(pathlib.Path("./src/data/pokemon/species_info.h")) + file_list.append("./src/data/pokemon/species_info.h") for families_fname in file_list: with open(families_fname, "r") as family_fp: species_lines = family_fp.readlines() @@ -66,7 +74,7 @@ def extract_repo_species_data() -> list: teaching_type = match.group("teaching_type") return species_data -def add_whitesspaces(parsed_list) ->list: +def add_whitesspaces(parsed_list) -> list: for i, item in enumerate(parsed_list): if i == 0: continue diff --git a/tools/learnset_helpers/make_tutors.py b/tools/learnset_helpers/make_tutors.py index e9167a4e11..d7b14a6980 100644 --- a/tools/learnset_helpers/make_tutors.py +++ b/tools/learnset_helpers/make_tutors.py @@ -1,5 +1,12 @@ +#!/usr/bin/env python3 + +""" +Usage: python3 make_tutors.py OUTPUT_FILE + +Build a primary store of move-tutors in the repository and what moves they teach. +""" + from itertools import chain -from textwrap import dedent import glob import json @@ -8,7 +15,7 @@ import re import sys import typing -CONFIG_ENABLED_PAT = re.compile(r"#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)") +CONFIG_ENABLED_PAT = re.compile(r"^#define P_LEARNSET_HELPER_TEACHABLE\s+(?P[^ ]*)", flags=re.MULTILINE) INCFILE_HAS_TUTOR_PAT = re.compile(r"special ChooseMonForMoveTutor") INCFILE_HAS_TUTOR_PAT2 = re.compile(r"chooseboxmon SELECT_PC_MON_MOVE_TUTOR") INCFILE_MOVE_PAT = re.compile(r"setvar VAR_0x8005, (MOVE_[A-Z_]*)") diff --git a/tools/preproc/asm_file.cpp b/tools/preproc/asm_file.cpp index 6cfc4cbdb3..6daf0d841a 100644 --- a/tools/preproc/asm_file.cpp +++ b/tools/preproc/asm_file.cpp @@ -160,9 +160,9 @@ Directive AsmFile::GetDirective() return Directive::Unknown; } -// Checks if we're at label that ends with '::'. -// Returns the name if so and an empty string if not. -std::string AsmFile::GetGlobalLabel() +// Checks if we're at label and if so, returns its symbol and scope. +// Returns 'label::none' if not. +Label AsmFile::GetLabel() { long start = m_pos; long pos = m_pos; @@ -175,14 +175,57 @@ std::string AsmFile::GetGlobalLabel() pos++; } - if (m_buffer[pos] == ':' && m_buffer[pos + 1] == ':') + if (m_buffer[pos] == ':') { - m_pos = pos + 2; - ExpectEmptyRestOfLine(); - return std::string(&m_buffer[start], pos - start); + std::string symbol(&m_buffer[start], pos - start); + if (m_buffer[pos + 1] == ':') + { + m_pos = pos + 2; + ExpectEmptyRestOfLine(); + return Label(symbol, Label::global); + } + else + { + m_pos = pos + 1; + return Label(symbol, Label::local); + } } - return std::string(); + return Label("", Label::none); +} + +std::string AsmFile::PeekSection() +{ + long oldPos = m_pos; + std::string section; + + SkipWhitespace(); + + // TODO: Support 'pushsection', 'popsection', '.previous'. + if (CheckForDirective(".bss")) + { + section = ".bss"; + } + else if (CheckForDirective(".data")) + { + section = ".data"; + } + else if (CheckForDirective(".rodata")) + { + section = ".rodata"; + } + else if (CheckForDirective(".text")) + { + section = ".text"; + } + else if (CheckForDirective(".section")) + { + SkipWhitespace(); + section = ReadIdentifier(); + } + + m_pos = oldPos; + return section; } // Skips tabs and spaces. diff --git a/tools/preproc/asm_file.h b/tools/preproc/asm_file.h index 9cab32a97f..0b25c7ad2b 100644 --- a/tools/preproc/asm_file.h +++ b/tools/preproc/asm_file.h @@ -35,6 +35,17 @@ enum class Directive Unknown }; +struct Label +{ + std::string symbol; + enum Type { none, global, local } type; + + Label() : symbol(""), type(none) {} + Label(const Label&) = default; + Label(std::string symbol_, Type type_) : symbol(symbol_), type(type_) {} + explicit operator bool() { return !symbol.empty() && type != none; } +}; + class AsmFile { public: @@ -43,7 +54,8 @@ public: AsmFile(const AsmFile&) = delete; ~AsmFile(); Directive GetDirective(); - std::string GetGlobalLabel(); + Label GetLabel(); + std::string PeekSection(); std::string ReadPath(); int ReadString(unsigned char* s); int ReadBraille(unsigned char* s); diff --git a/tools/preproc/preproc.cpp b/tools/preproc/preproc.cpp index ac9496d701..57ea7f9d39 100644 --- a/tools/preproc/preproc.cpp +++ b/tools/preproc/preproc.cpp @@ -51,9 +51,11 @@ void PrintAsmBytes(unsigned char *s, int length) } } -void PreprocAsmFile(std::string filename, bool isStdin, bool doEnum) +void PreprocAsmFile(std::string filename, bool isStdin, bool doEnum, bool doSize) { std::stack stack; + Label prevLabel; + bool inScriptData = false; stack.push(AsmFile(filename, isStdin, doEnum)); std::printf("# 1 \"%s\"\n", filename.c_str()); @@ -62,6 +64,11 @@ void PreprocAsmFile(std::string filename, bool isStdin, bool doEnum) { while (stack.top().IsAtEnd()) { + const char *ps = prevLabel.symbol.c_str(); + if (doSize && inScriptData && prevLabel) + std::printf(".ifdef %s ; .size %s, . - %s ; .endif\n", ps, ps, ps); + prevLabel = Label(); + stack.pop(); if (stack.empty()) @@ -100,15 +107,28 @@ void PreprocAsmFile(std::string filename, bool isStdin, bool doEnum) } case Directive::Unknown: { - std::string globalLabel = stack.top().GetGlobalLabel(); + Label label = stack.top().GetLabel(); - if (globalLabel.length() != 0) + if (label) { - const char *s = globalLabel.c_str(); - std::printf("%s: ; .global %s\n", s, s); + const char *s = label.symbol.c_str(); + const char *ps = prevLabel.symbol.c_str(); + + if (doSize && inScriptData && prevLabel) + std::printf(".ifdef %s ; .size %s, . - %s ; .endif ; ", ps, ps, ps); + + if (label.type == Label::global) + std::printf(".global %s\n%s:\n", s, s); + + prevLabel = label; } else { + std::string section = stack.top().PeekSection(); + if (section == "script_data") + inScriptData = true; + else if (section != "") + inScriptData = false; stack.top().OutputLine(); } @@ -147,7 +167,7 @@ const char* GetFileExtension(const char* filename) static void UsageAndExit(const char *program) { - std::fprintf(stderr, "Usage: %s [-i] [-e] SRC_FILE CHARMAP_FILE\nwhere -i denotes if input is from stdin\n -e enables enum handling\n", program); + std::fprintf(stderr, "Usage: %s [-i] [-e] [-s] SRC_FILE CHARMAP_FILE\nwhere -i denotes if input is from stdin\n -e enables enum handling\n -s enables '.size' handling\n", program); std::exit(EXIT_FAILURE); } @@ -158,9 +178,10 @@ int main(int argc, char **argv) const char *charmap = NULL; bool isStdin = false; bool doEnum = false; + bool doSize = false; - /* preproc [-i] [-e] SRC_FILE CHARMAP_FILE */ - while ((opt = getopt(argc, argv, "ie")) != -1) + /* preproc [-i] [-e] [-s] SRC_FILE CHARMAP_FILE */ + while ((opt = getopt(argc, argv, "ies")) != -1) { switch (opt) { @@ -170,6 +191,9 @@ int main(int argc, char **argv) case 'e': doEnum = true; break; + case 's': + doSize = true; + break; default: UsageAndExit(argv[0]); break; @@ -196,7 +220,7 @@ int main(int argc, char **argv) if ((extension[0] == 's') && extension[1] == 0) { - PreprocAsmFile(source, isStdin, doEnum); + PreprocAsmFile(source, isStdin, doEnum, doSize); } else if ((extension[0] == 'c' || extension[0] == 'i') && extension[1] == 0) {