forked from pret/pokefirered
-
Notifications
You must be signed in to change notification settings - Fork 0
/
battle_anim_scripts.s
11101 lines (10466 loc) · 364 KB
/
battle_anim_scripts.s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#include "constants/battle.h"
#include "constants/battle_anim.h"
#include "constants/songs.h"
#include "constants/moves.h"
.include "asm/macros.inc"
.include "asm/macros/battle_anim_script.inc"
#define FALSE 0
#define TRUE 1
#define RGB(r, g, b) ((r) | ((g) << 5) | ((b) << 10))
#define RGB_BLACK 0x0000
#define RGB_WHITE 0x7FFF
#define RGB_WHITEALPHA 0xFFFF
// BLDCNT
// Bits 0-5 select layers for the 1st target
#define BLDCNT_TGT1_BG0 (1 << 0)
#define BLDCNT_TGT1_BG1 (1 << 1)
#define BLDCNT_TGT1_BG2 (1 << 2)
#define BLDCNT_TGT1_BG3 (1 << 3)
#define BLDCNT_TGT1_OBJ (1 << 4)
#define BLDCNT_TGT1_BD (1 << 5)
// Bits 6-7 select the special effect
#define BLDCNT_EFFECT_NONE (0 << 6) // no special effect
#define BLDCNT_EFFECT_BLEND (1 << 6) // 1st+2nd targets mixed (controlled by BLDALPHA)
#define BLDCNT_EFFECT_LIGHTEN (2 << 6) // 1st target becomes whiter (controlled by BLDY)
#define BLDCNT_EFFECT_DARKEN (3 << 6) // 1st target becomes blacker (controlled by BLDY)
// Bits 8-13 select layers for the 2nd target
#define BLDCNT_TGT2_BG0 (1 << 8)
#define BLDCNT_TGT2_BG1 (1 << 9)
#define BLDCNT_TGT2_BG2 (1 << 10)
#define BLDCNT_TGT2_BG3 (1 << 11)
#define BLDCNT_TGT2_OBJ (1 << 12)
#define BLDCNT_TGT2_BD (1 << 13)
#define BLDCNT_TGT2_ALL (BLDCNT_TGT2_BG0 | BLDCNT_TGT2_BG1 | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BD)
.section script_data, "aw", %progbits
.align 2
gMovesWithQuietBGM:: @ 81C68EC
.2byte MOVE_SING
.2byte MOVE_PERISH_SONG
.2byte MOVE_GRASS_WHISTLE
.2byte 0xFFFF
.align 2
gBattleAnims_Moves::
.4byte Move_NONE
.4byte Move_POUND
.4byte Move_KARATE_CHOP
.4byte Move_DOUBLE_SLAP
.4byte Move_COMET_PUNCH
.4byte Move_MEGA_PUNCH
.4byte Move_PAY_DAY
.4byte Move_FIRE_PUNCH
.4byte Move_ICE_PUNCH
.4byte Move_THUNDER_PUNCH
.4byte Move_SCRATCH
.4byte Move_VICE_GRIP
.4byte Move_GUILLOTINE
.4byte Move_RAZOR_WIND
.4byte Move_SWORDS_DANCE
.4byte Move_CUT
.4byte Move_GUST
.4byte Move_WING_ATTACK
.4byte Move_WHIRLWIND
.4byte Move_FLY
.4byte Move_BIND
.4byte Move_SLAM
.4byte Move_VINE_WHIP
.4byte Move_STOMP
.4byte Move_DOUBLE_KICK
.4byte Move_MEGA_KICK
.4byte Move_JUMP_KICK
.4byte Move_ROLLING_KICK
.4byte Move_SAND_ATTACK
.4byte Move_HEADBUTT
.4byte Move_HORN_ATTACK
.4byte Move_FURY_ATTACK
.4byte Move_HORN_DRILL
.4byte Move_TACKLE
.4byte Move_BODY_SLAM
.4byte Move_WRAP
.4byte Move_TAKE_DOWN
.4byte Move_THRASH
.4byte Move_DOUBLE_EDGE
.4byte Move_TAIL_WHIP
.4byte Move_POISON_STING
.4byte Move_TWINEEDLE
.4byte Move_PIN_MISSILE
.4byte Move_LEER
.4byte Move_BITE
.4byte Move_GROWL
.4byte Move_ROAR
.4byte Move_SING
.4byte Move_SUPERSONIC
.4byte Move_SONIC_BOOM
.4byte Move_DISABLE
.4byte Move_ACID
.4byte Move_EMBER
.4byte Move_FLAMETHROWER
.4byte Move_MIST
.4byte Move_WATER_GUN
.4byte Move_HYDRO_PUMP
.4byte Move_SURF
.4byte Move_ICE_BEAM
.4byte Move_BLIZZARD
.4byte Move_PSYBEAM
.4byte Move_BUBBLE_BEAM
.4byte Move_AURORA_BEAM
.4byte Move_HYPER_BEAM
.4byte Move_PECK
.4byte Move_DRILL_PECK
.4byte Move_SUBMISSION
.4byte Move_LOW_KICK
.4byte Move_COUNTER
.4byte Move_SEISMIC_TOSS
.4byte Move_STRENGTH
.4byte Move_ABSORB
.4byte Move_MEGA_DRAIN
.4byte Move_LEECH_SEED
.4byte Move_GROWTH
.4byte Move_RAZOR_LEAF
.4byte Move_SOLAR_BEAM
.4byte Move_POISON_POWDER
.4byte Move_STUN_SPORE
.4byte Move_SLEEP_POWDER
.4byte Move_PETAL_DANCE
.4byte Move_STRING_SHOT
.4byte Move_DRAGON_RAGE
.4byte Move_FIRE_SPIN
.4byte Move_THUNDER_SHOCK
.4byte Move_THUNDERBOLT
.4byte Move_THUNDER_WAVE
.4byte Move_THUNDER
.4byte Move_ROCK_THROW
.4byte Move_EARTHQUAKE
.4byte Move_FISSURE
.4byte Move_DIG
.4byte Move_TOXIC
.4byte Move_CONFUSION
.4byte Move_PSYCHIC
.4byte Move_HYPNOSIS
.4byte Move_MEDITATE
.4byte Move_AGILITY
.4byte Move_QUICK_ATTACK
.4byte Move_RAGE
.4byte Move_TELEPORT
.4byte Move_NIGHT_SHADE
.4byte Move_MIMIC
.4byte Move_SCREECH
.4byte Move_DOUBLE_TEAM
.4byte Move_RECOVER
.4byte Move_HARDEN
.4byte Move_MINIMIZE
.4byte Move_SMOKESCREEN
.4byte Move_CONFUSE_RAY
.4byte Move_WITHDRAW
.4byte Move_DEFENSE_CURL
.4byte Move_BARRIER
.4byte Move_LIGHT_SCREEN
.4byte Move_HAZE
.4byte Move_REFLECT
.4byte Move_FOCUS_ENERGY
.4byte Move_BIDE
.4byte Move_METRONOME
.4byte Move_MIRROR_MOVE
.4byte Move_SELF_DESTRUCT
.4byte Move_EGG_BOMB
.4byte Move_LICK
.4byte Move_SMOG
.4byte Move_SLUDGE
.4byte Move_BONE_CLUB
.4byte Move_FIRE_BLAST
.4byte Move_WATERFALL
.4byte Move_CLAMP
.4byte Move_SWIFT
.4byte Move_SKULL_BASH
.4byte Move_SPIKE_CANNON
.4byte Move_CONSTRICT
.4byte Move_AMNESIA
.4byte Move_KINESIS
.4byte Move_SOFT_BOILED
.4byte Move_HI_JUMP_KICK
.4byte Move_GLARE
.4byte Move_DREAM_EATER
.4byte Move_POISON_GAS
.4byte Move_BARRAGE
.4byte Move_LEECH_LIFE
.4byte Move_LOVELY_KISS
.4byte Move_SKY_ATTACK
.4byte Move_TRANSFORM
.4byte Move_BUBBLE
.4byte Move_DIZZY_PUNCH
.4byte Move_SPORE
.4byte Move_FLASH
.4byte Move_PSYWAVE
.4byte Move_SPLASH
.4byte Move_ACID_ARMOR
.4byte Move_CRABHAMMER
.4byte Move_EXPLOSION
.4byte Move_FURY_SWIPES
.4byte Move_BONEMERANG
.4byte Move_REST
.4byte Move_ROCK_SLIDE
.4byte Move_HYPER_FANG
.4byte Move_SHARPEN
.4byte Move_CONVERSION
.4byte Move_TRI_ATTACK
.4byte Move_SUPER_FANG
.4byte Move_SLASH
.4byte Move_SUBSTITUTE
.4byte Move_STRUGGLE
.4byte Move_SKETCH
.4byte Move_TRIPLE_KICK
.4byte Move_THIEF
.4byte Move_SPIDER_WEB
.4byte Move_MIND_READER
.4byte Move_NIGHTMARE
.4byte Move_FLAME_WHEEL
.4byte Move_SNORE
.4byte Move_CURSE
.4byte Move_FLAIL
.4byte Move_CONVERSION_2
.4byte Move_AEROBLAST
.4byte Move_COTTON_SPORE
.4byte Move_REVERSAL
.4byte Move_SPITE
.4byte Move_POWDER_SNOW
.4byte Move_PROTECT
.4byte Move_MACH_PUNCH
.4byte Move_SCARY_FACE
.4byte Move_FAINT_ATTACK
.4byte Move_SWEET_KISS
.4byte Move_BELLY_DRUM
.4byte Move_SLUDGE_BOMB
.4byte Move_MUD_SLAP
.4byte Move_OCTAZOOKA
.4byte Move_SPIKES
.4byte Move_ZAP_CANNON
.4byte Move_FORESIGHT
.4byte Move_DESTINY_BOND
.4byte Move_PERISH_SONG
.4byte Move_ICY_WIND
.4byte Move_DETECT
.4byte Move_BONE_RUSH
.4byte Move_LOCK_ON
.4byte Move_OUTRAGE
.4byte Move_SANDSTORM
.4byte Move_GIGA_DRAIN
.4byte Move_ENDURE
.4byte Move_CHARM
.4byte Move_ROLLOUT
.4byte Move_FALSE_SWIPE
.4byte Move_SWAGGER
.4byte Move_MILK_DRINK
.4byte Move_SPARK
.4byte Move_FURY_CUTTER
.4byte Move_STEEL_WING
.4byte Move_MEAN_LOOK
.4byte Move_ATTRACT
.4byte Move_SLEEP_TALK
.4byte Move_HEAL_BELL
.4byte Move_RETURN
.4byte Move_PRESENT
.4byte Move_FRUSTRATION
.4byte Move_SAFEGUARD
.4byte Move_PAIN_SPLIT
.4byte Move_SACRED_FIRE
.4byte Move_MAGNITUDE
.4byte Move_DYNAMIC_PUNCH
.4byte Move_MEGAHORN
.4byte Move_DRAGON_BREATH
.4byte Move_BATON_PASS
.4byte Move_ENCORE
.4byte Move_PURSUIT
.4byte Move_RAPID_SPIN
.4byte Move_SWEET_SCENT
.4byte Move_IRON_TAIL
.4byte Move_METAL_CLAW
.4byte Move_VITAL_THROW
.4byte Move_MORNING_SUN
.4byte Move_SYNTHESIS
.4byte Move_MOONLIGHT
.4byte Move_HIDDEN_POWER
.4byte Move_CROSS_CHOP
.4byte Move_TWISTER
.4byte Move_RAIN_DANCE
.4byte Move_SUNNY_DAY
.4byte Move_CRUNCH
.4byte Move_MIRROR_COAT
.4byte Move_PSYCH_UP
.4byte Move_EXTREME_SPEED
.4byte Move_ANCIENT_POWER
.4byte Move_SHADOW_BALL
.4byte Move_FUTURE_SIGHT
.4byte Move_ROCK_SMASH
.4byte Move_WHIRLPOOL
.4byte Move_BEAT_UP
.4byte Move_FAKE_OUT
.4byte Move_UPROAR
.4byte Move_STOCKPILE
.4byte Move_SPIT_UP
.4byte Move_SWALLOW
.4byte Move_HEAT_WAVE
.4byte Move_HAIL
.4byte Move_TORMENT
.4byte Move_FLATTER
.4byte Move_WILL_O_WISP
.4byte Move_MEMENTO
.4byte Move_FACADE
.4byte Move_FOCUS_PUNCH
.4byte Move_SMELLING_SALT
.4byte Move_FOLLOW_ME
.4byte Move_ANCIENT_POWER
.4byte Move_CHARGE
.4byte Move_TAUNT
.4byte Move_HELPING_HAND
.4byte Move_TRICK
.4byte Move_ROLE_PLAY
.4byte Move_WISH
.4byte Move_ASSIST
.4byte Move_INGRAIN
.4byte Move_SUPERPOWER
.4byte Move_MAGIC_COAT
.4byte Move_RECYCLE
.4byte Move_REVENGE
.4byte Move_BRICK_BREAK
.4byte Move_YAWN
.4byte Move_KNOCK_OFF
.4byte Move_ENDEAVOR
.4byte Move_ERUPTION
.4byte Move_SKILL_SWAP
.4byte Move_IMPRISON
.4byte Move_REFRESH
.4byte Move_GRUDGE
.4byte Move_SNATCH
.4byte Move_SECRET_POWER
.4byte Move_DIVE
.4byte Move_ARM_THRUST
.4byte Move_CAMOUFLAGE
.4byte Move_TAIL_GLOW
.4byte Move_LUSTER_PURGE
.4byte Move_MIST_BALL
.4byte Move_FEATHER_DANCE
.4byte Move_TEETER_DANCE
.4byte Move_BLAZE_KICK
.4byte Move_MUD_SPORT
.4byte Move_ICE_BALL
.4byte Move_NEEDLE_ARM
.4byte Move_SLACK_OFF
.4byte Move_HYPER_VOICE
.4byte Move_POISON_FANG
.4byte Move_CRUSH_CLAW
.4byte Move_BLAST_BURN
.4byte Move_HYDRO_CANNON
.4byte Move_METEOR_MASH
.4byte Move_ASTONISH
.4byte Move_WEATHER_BALL
.4byte Move_AROMATHERAPY
.4byte Move_FAKE_TEARS
.4byte Move_AIR_CUTTER
.4byte Move_OVERHEAT
.4byte Move_ODOR_SLEUTH
.4byte Move_ROCK_TOMB
.4byte Move_SILVER_WIND
.4byte Move_METAL_SOUND
.4byte Move_GRASS_WHISTLE
.4byte Move_TICKLE
.4byte Move_COSMIC_POWER
.4byte Move_WATER_SPOUT
.4byte Move_SIGNAL_BEAM
.4byte Move_SHADOW_PUNCH
.4byte Move_EXTRASENSORY
.4byte Move_SKY_UPPERCUT
.4byte Move_SAND_TOMB
.4byte Move_SHEER_COLD
.4byte Move_MUDDY_WATER
.4byte Move_BULLET_SEED
.4byte Move_AERIAL_ACE
.4byte Move_ICICLE_SPEAR
.4byte Move_IRON_DEFENSE
.4byte Move_BLOCK
.4byte Move_HOWL
.4byte Move_DRAGON_CLAW
.4byte Move_FRENZY_PLANT
.4byte Move_BULK_UP
.4byte Move_BOUNCE
.4byte Move_MUD_SHOT
.4byte Move_POISON_TAIL
.4byte Move_COVET
.4byte Move_VOLT_TACKLE
.4byte Move_MAGICAL_LEAF
.4byte Move_WATER_SPORT
.4byte Move_CALM_MIND
.4byte Move_LEAF_BLADE
.4byte Move_DRAGON_DANCE
.4byte Move_ROCK_BLAST
.4byte Move_SHOCK_WAVE
.4byte Move_WATER_PULSE
.4byte Move_DOOM_DESIRE
.4byte Move_PSYCHO_BOOST
.4byte Move_COUNT
gBattleAnims_StatusConditions::
.4byte Status_Poison
.4byte Status_Confusion
.4byte Status_Burn
.4byte Status_Infatuation
.4byte Status_Sleep
.4byte Status_Paralysis
.4byte Status_Freeze
.4byte Status_Curse
.4byte Status_Nightmare
gBattleAnims_General::
.4byte General_CastformChange
.4byte General_StatsChange
.4byte General_SubstituteFade
.4byte General_SubstituteAppear
.4byte General_BaitThrow
.4byte General_ItemKnockoff
.4byte General_TurnTrap
.4byte General_ItemEffect
.4byte General_SmokeballEscape
.4byte General_HangedOn
.4byte General_Rain
.4byte General_Sun
.4byte General_Sandstorm
.4byte General_Hail
.4byte General_LeechSeedDrain
.4byte General_MonHit
.4byte General_ItemSteal
.4byte General_SnatchMove
.4byte General_FutureSightHit
.4byte General_DoomDesireHit
.4byte General_FocusPunchSetUp
.4byte General_IngrainHeal
.4byte General_WishHeal
.4byte General_MonScared
.4byte General_GhostGetOut
.4byte General_SilphScoped
.4byte General_SafariRockThrow
.4byte General_SafariReaction
gBattleAnims_Special::
.4byte Special_LevelUp
.4byte Special_SwitchOutPlayerMon
.4byte Special_SwitchOutOpponentMon
.4byte Special_BallThrow
.4byte Special_SafariBallThrow
.4byte Special_SubstituteToMon
.4byte Special_MonToSubstitute
Move_NONE:: @ 81C6F34
Move_POUND:: @ 81C6F34
Move_MIRROR_MOVE:: @ 81C6F34
loadspritegfx ANIM_TAG_IMPACT
monbg 1
setalpha 12, 8
playsewithpan SE_W003, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 2
createvisualtask AnimTask_ShakeMon, 2, 1, 3, 0, 6, 1
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_DOUBLE_SLAP:: @ 81C6F65
loadspritegfx ANIM_TAG_IMPACT
monbg 1
setalpha 12, 8
choosetwoturnanim DoubleSlapLeft, DoubleSlapRight
DoubleSlapContinue:: @ 81C6F76
createvisualtask AnimTask_ShakeMon, 2, 1, 3, 0, 6, 1
playsewithpan SE_W003, 63
waitforvisualfinish
clearmonbg 1
blendoff
end
DoubleSlapLeft:: @ 81C6F90
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, -8, 0, 1, 2
goto DoubleSlapContinue
DoubleSlapRight:: @ 81C6FA4
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 8, 0, 1, 2
goto DoubleSlapContinue
Move_POISON_POWDER:: @ 81C6FB8
loadspritegfx ANIM_TAG_POISON_POWDER
loadspritegfx ANIM_TAG_POISON_BUBBLE
loopsewithpan SE_W077, 63, 10, 6
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -30, -22, 117, 80, 5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 10, -22, 117, 80, -5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -25, -22, 117, 112, 5, 3
delay 15
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 80, -5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 96, 5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 69, -5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
delay 30
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 15, -22, 117, 80, -5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 96, 7, 2
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 90, -8, 0
delay 20
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 80, -5, 1
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 89, 5, 2
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 20, -22, 117, 112, -8, 2
createsprite gPoisonPowderParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_STUN_SPORE:: @ 81C70E9
loadspritegfx ANIM_TAG_STUN_SPORE
loopsewithpan SE_W077, 63, 10, 6
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -30, -22, 117, 80, 5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 10, -22, 117, 80, -5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -25, -22, 117, 112, 5, 3
delay 15
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 80, -5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 96, 5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 69, -5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
delay 30
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 15, -22, 117, 80, -5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 96, 7, 2
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 90, -8, 0
delay 20
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 80, -5, 1
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 89, 5, 2
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 20, -22, 117, 112, -8, 2
createsprite gStunSporeParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_SLEEP_POWDER:: @ 81C7217
loadspritegfx ANIM_TAG_SLEEP_POWDER
loopsewithpan SE_W077, 63, 10, 6
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -30, -22, 117, 80, 5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 10, -22, 117, 80, -5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -25, -22, 117, 112, 5, 3
delay 15
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 80, -5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 96, 5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 69, -5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
delay 30
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -15, -22, 117, 112, 5, 2
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 15, -22, 117, 80, -5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 96, 7, 2
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -5, -22, 117, 90, -8, 0
delay 20
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, -10, -22, 117, 80, -5, 1
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 0, -22, 117, 89, 5, 2
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 20, -22, 117, 112, -8, 2
createsprite gSleepPowderParticleSpriteTemplate, ANIM_TARGET, 2, 5, -22, 117, 80, 5, 1
waitforvisualfinish
end
Move_SWIFT:: @ 81C7345
loadspritegfx ANIM_TAG_YELLOW_STAR
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
setalpha 12, 8
playsewithpan SE_W129, 192
createsprite gSwiftStarSpriteTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, 20, 1
delay 5
playsewithpan SE_W129, 192
createsprite gSwiftStarSpriteTemplate, ANIM_TARGET, 3, 20, -10, 20, 5, 22, -18, 1
delay 5
playsewithpan SE_W129, 192
createsprite gSwiftStarSpriteTemplate, ANIM_TARGET, 3, 20, -10, 20, -10, 22, 15, 1
createvisualtask AnimTask_ShakeMon2, 2, 1, 2, 0, 18, 1
createvisualtask AnimTask_ShakeMon2, 2, 3, 2, 0, 18, 1
delay 5
playsewithpan SE_W129, 192
createsprite gSwiftStarSpriteTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, -20, 1
delay 5
playsewithpan SE_W129, 192
createsprite gSwiftStarSpriteTemplate, ANIM_TARGET, 3, 20, -10, 20, 0, 22, 12, 1
delay 5
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_STRENGTH:: @ 81C73FE
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
setalpha 12, 8
playsewithpan SE_W036, 192
createvisualtask AnimTask_ShakeAndSinkMon, 5, 0, 2, 0, 96, 30
waitforvisualfinish
delay 10
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 4
createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, 1, 18, 6, 2, 4
delay 4
playsewithpan SE_W025B, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 16, 12, 1, 1
delay 4
playsewithpan SE_W025B, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -16, -12, 1, 1
delay 4
playsewithpan SE_W025B, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 3, 4, 1, 1
waitforvisualfinish
createvisualtask AnimTask_ShakeMon2, 2, 1, 2, 0, 8, 1
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_TACKLE:: @ 81C7492
loadspritegfx ANIM_TAG_IMPACT
monbg 1
setalpha 12, 8
createsprite gHorizontalLungeSpriteTemplate, ANIM_ATTACKER, 2, 4, 4
delay 6
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 2
createvisualtask AnimTask_ShakeMon, 2, 1, 3, 0, 6, 1
playsewithpan SE_W004, 63
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_BODY_SLAM:: @ 81C74D0
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
setalpha 12, 8
playsewithpan SE_W036, 192
createsprite gVerticalDipSpriteTemplate, ANIM_ATTACKER, 2, 6, 1, 0
waitforvisualfinish
delay 11
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 26, 0, 0, 5
delay 6
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 4, -10, 0, 1, 0
loopsewithpan SE_W025B, 63, 10, 2
delay 1
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -28, 0, 0, 3
waitforvisualfinish
createvisualtask AnimTask_ShakeMonInPlace, 2, 1, 4, 0, 12, 1
waitforvisualfinish
delay 10
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 6
delay 5
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 6
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_SUPERSONIC:: @ 81C755D
loadspritegfx ANIM_TAG_GOLD_RING
monbg ANIM_ATK_PARTNER
monbgprio_2A 0
setalpha 12, 8
createvisualtask AnimTask_ShakeMon2, 2, 0, 2, 0, 8, 1
call SupersonicRing
call SupersonicRing
call SupersonicRing
call SupersonicRing
call SupersonicRing
call SupersonicRing
waitforvisualfinish
clearmonbg ANIM_ATK_PARTNER
blendoff
end
SupersonicRing:: @ 81C759B
playsewithpan SE_W048, 192
createsprite gSupersonicWaveSpriteTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0
delay 2
return
Move_SCREECH:: @ 81C75B5
loadspritegfx ANIM_TAG_PURPLE_RING
createvisualtask AnimTask_ShakeMon2, 2, 0, 3, 0, 2, 1
call ScreechRing
call ScreechRing
delay 16
createvisualtask AnimTask_SwayMon, 5, 0, 6, 2048, 2, 1
waitforvisualfinish
end
ScreechRing:: @ 81C75E8
playsewithpan SE_W103, 192
createsprite gScreechWaveSpriteTemplate, ANIM_TARGET, 2, 16, 0, 0, 0, 30, 0
delay 2
return
Move_FLAME_WHEEL:: @ 81C7602
loadspritegfx ANIM_TAG_SMALL_EMBER
monbg ANIM_DEF_PARTNER
monbgprio_2A 1
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 0
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 4
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 8
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 12
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 16
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 20
playsewithpan SE_W172, 192
delay 2
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 56, 24
playsewithpan SE_W172, 192
waitforvisualfinish
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 24, 0, 0, 6
delay 4
createvisualtask AnimTask_ShakeMon, 2, 1, 5, 0, 8, 1
createvisualtask AnimTask_BlendMonInAndOut, 3, 1, 31, 12, 1, 1
playsewithpan SE_W172B, 63
call FireSpreadEffect
delay 7
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 9
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
end
createsprite gFireSpiralOutwardSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 50
delay 4
return
Move_PIN_MISSILE:: @ 81C76FC
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
monbg 1
monbgprio_28 1
setalpha 12, 8
playsewithpan SE_W026, 192
createsprite gPinMissileSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32
delay 15
createsprite gPinMissileSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, 8, 8, 20, -40
delay 4
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -8, -8, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
delay 9
createsprite gPinMissileSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, 0, 0, 20, -32
delay 4
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 8, 8, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
delay 14
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_ICICLE_SPEAR:: @ 81C77C1
loadspritegfx ANIM_TAG_ICICLE_SPEAR
loadspritegfx ANIM_TAG_IMPACT
monbg 1
monbgprio_28 1
setalpha 12, 8
playsewithpan SE_W196, 192
createsprite gIcicleSpearSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, -8, -8, 20, -32
delay 15
createsprite gIcicleSpearSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, 8, 8, 20, -40
delay 4
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, -8, -8, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
delay 9
createsprite gIcicleSpearSpriteTemplate, ANIM_ATTACKER, 2, 20, -8, 0, 0, 20, -32
delay 4
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 8, 8, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
delay 14
playsewithpan SE_W030, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 3, 0, 2, 1
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_TAKE_DOWN:: @ 81C7886
loadspritegfx ANIM_TAG_IMPACT
monbg ANIM_DEF_PARTNER
setalpha 12, 8
playsewithpan SE_W036, 192
createvisualtask AnimTask_WindUpLunge, 5, 0, -24, 8, 23, 10, 40, 10
delay 35
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, 0, 10, 0, 0
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 4, -10, 0, 1, 0
playsewithpan SE_W025B, 63
delay 1
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -16, 0, 0, 4
waitforvisualfinish
createvisualtask AnimTask_ShakeMonInPlace, 2, 1, 4, 0, 12, 1
waitforvisualfinish
delay 2
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5
delay 3
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7
waitforvisualfinish
clearmonbg ANIM_DEF_PARTNER
blendoff
end
Move_DOUBLE_EDGE:: @ 81C791A
loadspritegfx ANIM_TAG_IMPACT
playsewithpan SE_W129, 192
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 2, 4, 2, RGB_WHITE, 10, 0, 0
waitforvisualfinish
delay 10
playsewithpan SE_W207, 192
waitplaysewithpan SE_W207, 192, 8
createvisualtask AnimTask_TranslateMonEllipticalRespectSide, 2, 0, 18, 6, 2, 4
waitforvisualfinish
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 16, 16, RGB_WHITE
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 0, 20, 0, 0, 4
delay 3
waitforvisualfinish
playsewithpan SE_W025B, 63
createsprite gBasicHitSplatSpriteTemplate, ANIM_TARGET, 4, -10, 0, 1, 0
createsprite gSlideMonToOffsetSpriteTemplate, ANIM_ATTACKER, 2, 1, -32, 0, 0, 3
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 0
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 0
createvisualtask AnimTask_ShakeMonInPlace, 2, 0, 4, 0, 12, 1
createvisualtask AnimTask_ShakeMonInPlace, 2, 1, 4, 0, 12, 1
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 2, 16, 0, RGB_WHITE
waitforvisualfinish
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 0, 1
createvisualtask AnimTask_RotateMonSpriteToSide, 2, 8, -256, 1, 1
waitforvisualfinish
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 5
delay 3
createsprite gSlideMonToOriginalPosSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 7
waitforvisualfinish
end
Move_POISON_STING:: @ 81C7A2D
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
loadspritegfx ANIM_TAG_POISON_BUBBLE
monbg 1
monbgprio_28 1
setalpha 12, 8
playsewithpan SE_W013B, 192
createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 20, 0, -8, 0, 20
waitforvisualfinish
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 1, 2
createvisualtask AnimTask_ShakeMon2, 2, 1, 2, 0, 5, 1
playsewithpan SE_W030, 63
waitforvisualfinish
call PoisonBubblesEffect
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_TWINEEDLE:: @ 81C7A82
loadspritegfx ANIM_TAG_NEEDLE
loadspritegfx ANIM_TAG_IMPACT
monbg 1
monbgprio_28 1
setalpha 12, 8
loopsewithpan SE_W013B, 192, 6, 2
createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 10, -4, 0, -4, 20
createsprite gLinearStingerSpriteTemplate, ANIM_TARGET, 2, 20, 12, 10, 12, 20
delay 20
createvisualtask AnimTask_ShakeMon2, 2, 1, 2, 0, 5, 1
createsprite gHandleInvertHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 0, -4, 1, 3
loopsewithpan SE_W030, 63, 5, 2
delay 1
createsprite gHandleInvertHitSplatSpriteTemplate, ANIM_ATTACKER, 3, 10, 12, 1, 3
waitforvisualfinish
clearmonbg 1
blendoff
end
Move_FIRE_BLAST:: @ 81C7AF5
loadspritegfx ANIM_TAG_SMALL_EMBER
createsoundtask sub_80DCE10, 137, 138
call FireBlastRing
call FireBlastRing
call FireBlastRing
delay 24
createvisualtask AnimTask_BlendSelected, 10, 1, 3, 0, 8, RGB_BLACK
waitforvisualfinish
delay 19
createvisualtask AnimTask_ShakeMon, 2, 1, 5, 0, 20, 1
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
delay 3
call FireBlastCross
waitforvisualfinish
createvisualtask AnimTask_BlendSelected, 10, 1, 2, 8, 0, RGB_BLACK
waitforvisualfinish
end
FireBlastRing:: @ 81C7B89
createsprite gFireBlastRingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 0
createsprite gFireBlastRingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 51
createsprite gFireBlastRingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 102
createsprite gFireBlastRingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 153
createsprite gFireBlastRingSpriteTemplate, ANIM_TARGET, 2, 0, 0, 204
delay 5
return
FireBlastCross:: @ 81C7BCD
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
return
Move_LEECH_SEED:: @ 81C7C23
loadspritegfx ANIM_TAG_SEED
playsewithpan SE_W077, 192
createsprite gLeechSeedSpriteTemplate, ANIM_TARGET, 2, 15, 0, 0, 24, 35, -32
delay 8
playsewithpan SE_W077, 192
createsprite gLeechSeedSpriteTemplate, ANIM_TARGET, 2, 15, 0, -16, 24, 35, -40
delay 8
playsewithpan SE_W077, 192
createsprite gLeechSeedSpriteTemplate, ANIM_TARGET, 2, 15, 0, 16, 24, 35, -37
delay 12
loopsewithpan SE_W039, 63, 10, 8
waitforvisualfinish
end
Move_EMBER:: @ 81C7C79
loadspritegfx ANIM_TAG_SMALL_EMBER
loopsewithpan SE_W052, 192, 5, 2
createsprite gEmberSpriteTemplate, ANIM_TARGET, 2, 20, 0, -16, 24, 20, 1
delay 4
createsprite gEmberSpriteTemplate, ANIM_TARGET, 2, 20, 0, 0, 24, 20, 1
delay 4
createsprite gEmberSpriteTemplate, ANIM_TARGET, 2, 20, 0, 16, 24, 20, 1
delay 16
playsewithpan SE_W172, 63
call EmberFireHit
call EmberFireHit
call EmberFireHit
end
EmberFireHit:: @ 81C7CD5
createsprite gEmberFlareSpriteTemplate, ANIM_TARGET, 2, -24, 24, 24, 24, 20, 1, 1
delay 4
return
Move_MEGA_PUNCH:: @ 81C7CED
loadspritegfx ANIM_TAG_IMPACT
loadspritegfx ANIM_TAG_HANDS_AND_FEET
monbg 1
delay 2
createsprite gSimplePaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 1, 0, 0, 16, 0
setalpha 12, 8
playsewithpan SE_W025, 63
createsprite gMegaPunchKickSpriteTemplate, ANIM_ATTACKER, 3, 0, 0, 0, 50
createvisualtask AnimTask_BlendSelected, 10, 4, 2, 0, 7, RGB_WHITE
delay 50
call SetImpactBackground
createsprite gBasicHitSplatSpriteTemplate, ANIM_ATTACKER, 2, 0, 0, 1, 0
createvisualtask AnimTask_ShakeMon2, 2, 1, 4, 0, 22, 1
createvisualtask AnimTask_BlendSelected, 10, 4, 2, 0, 0, RGB_WHITE
createsprite gComplexPaletteBlendSpriteTemplate, ANIM_ATTACKER, 2, 31, 3, 1, 0, 8, 0, 0
playsewithpan SE_W233B, 63
waitforvisualfinish
clearmonbg 1
blendoff
delay 2
restorebg
waitbgfadein
end