#textdomain wesnoth # Macros for setting animations. # These don't rely on any other macros. Please don't change this. #define STANDING_ANIM_DIRECTIONAL BASE_SE_IMAGE BASE_NE_IMAGE [standing_anim] [if] direction=s,se,sw start_time=0 [frame] duration=150 image={BASE_SE_IMAGE} [/frame] [/if] [else] direction=n,ne,nw start_time=0 [frame] duration=150 image={BASE_NE_IMAGE} [/frame] [/else] [/standing_anim] #enddef #define DEFENSE_ANIM REACTION_IMAGE BASE_IMAGE HIT_SOUND # Define a defensive animation moving from a specified BASE_IMAGE # to REACTION_IMAGE, with HIT_SOUND playing only if a hit occurs. [defend] start_time=-126 [frame] duration=1 image={BASE_IMAGE} [/frame] [frame] duration=100 image={REACTION_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_IMAGE} sound={HIT_SOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_IMAGE} [/frame] [/defend] #enddef #define DEFENSE_ANIM_FILTERED REACTION_IMAGE BASE_IMAGE HIT_SOUND FILTER # Define a defensive animation moving from a specified BASE_IMAGE # to REACTION_IMAGE, with HIT_SOUND playing only if a hit occurs. This # fires only if FILTER is matched. [defend] start_time=-126 {FILTER} [frame] duration=1 image={BASE_IMAGE} [/frame] [frame] duration=100 image={REACTION_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_IMAGE} sound={HIT_SOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_IMAGE} [/frame] [/defend] #enddef #define DEFENSE_ANIM_RANGE REACTION_IMAGE BASE_IMAGE HIT_SOUND RANGE # Define a defensive animation moving from a specified BASE_IMAGE # to REACTION_IMAGE, with HIT_SOUND playing only if a hit occurs. This # fires only on the class of attacks specified by RANGE. [defend] start_time=-126 [attack_filter] range={RANGE} [/attack_filter] [frame] duration=1 image={BASE_IMAGE} [/frame] [frame] duration=100 image={REACTION_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_IMAGE} sound={HIT_SOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_IMAGE} [/frame] [/defend] #enddef #define DEFENSE_ANIM_DIRECTIONAL REACTION_SE_IMAGE BASE_SE_IMAGE REACTION_NE_IMAGE BASE_NE_IMAGE HITSOUND [defend] direction=sw,s,se start_time=-126 [frame] duration=1 image={BASE_SE_IMAGE} [/frame] [frame] duration=100 image={REACTION_SE_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_SE_IMAGE} sound={HITSOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_SE_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_SE_IMAGE} [/frame] [/defend] [defend] direction=nw,n,ne start_time=-126 [frame] duration=1 image={BASE_NE_IMAGE} [/frame] [frame] duration=100 image={REACTION_NE_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_NE_IMAGE} sound={HITSOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_NE_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_NE_IMAGE} [/frame] [/defend] #enddef #define DEFENSE_ANIM_DIRECTIONAL_RANGE REACTION_SE_IMAGE BASE_SE_IMAGE REACTION_NE_IMAGE BASE_NE_IMAGE HITSOUND RANGE [defend] direction=sw,s,se range={RANGE} start_time=-126 [frame] duration=1 image={BASE_SE_IMAGE} [/frame] [frame] duration=100 image={REACTION_SE_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_SE_IMAGE} sound={HITSOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_SE_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_SE_IMAGE} [/frame] [/defend] [defend] direction=nw,n,ne range={RANGE} start_time=-126 [frame] duration=1 image={BASE_NE_IMAGE} [/frame] [frame] duration=100 image={REACTION_NE_IMAGE} [/frame] [if] hits=hit [frame] duration=150 image={REACTION_NE_IMAGE} sound={HITSOUND} [/frame] [/if] [else] hits=miss,kill [frame] duration=150 image={REACTION_NE_IMAGE} [/frame] [/else] [frame] duration=1 image={BASE_NE_IMAGE} [/frame] [/defend] #enddef #define DEFENSE_ANIM_ELVEN_RANGE REACTION_IMAGE BASE_IMAGE HIT_SOUND RANGE # Define a defensive animation moving from a specified BASE_IMAGE # to REACTION_IMAGE, with HIT_SOUND playing only if a hit occurs and an # elven halo waxing and waning during the animation. This # fires only on the class of attacks specified by RANGE. [defend] start_time=-175 [attack_filter] range={RANGE} [/attack_filter] [frame] duration=25 end=-150 image={BASE_IMAGE} halo=halo/elven/elven-shield-halo-20pct.png [/frame] [frame] duration=25 image={BASE_IMAGE} halo=halo/elven/elven-shield-halo-40pct.png [/frame] [frame] duration=50 image={REACTION_IMAGE} halo=halo/elven/elven-shield-halo-60pct.png [/frame] [frame] duration=50 image={REACTION_IMAGE} halo=halo/elven/elven-shield-halo-80pct.png [/frame] [if] hits=hit [frame] duration=100 image={REACTION_IMAGE} sound={HIT_SOUND} halo=halo/elven/elven-shield-halo-100pct.png [/frame] [/if] [else] hits=miss,kill [frame] duration=100 image={REACTION_IMAGE} halo=halo/elven/elven-shield-halo-100pct.png [/frame] [/else] [frame] duration=50 image={REACTION_IMAGE} halo=halo/elven/elven-shield-halo-80pct.png [/frame] [frame] duration=25 image={BASE_IMAGE} halo=halo/elven/elven-shield-halo-60pct.png [/frame] [frame] duration=25 image={BASE_IMAGE} halo=halo/elven/elven-shield-halo-40pct.png [/frame] [frame] duration=25 image={BASE_IMAGE} halo=halo/elven/elven-shield-halo-20pct.png [/frame] [/defend] #enddef # this macro is called on top of every idle animation, # to provide a standard set of conditions to play the idle animation #define STANDARD_IDLE_FILTER # Poisoned units should have no idle animation. [unit_filter] [not] [wml_filter] [status] poisoned="yes" [/status] [/wml_filter] [/not] [/unit_filter] # Units next to enemies should not have idle animations [unit_filter] [filter_adjacent] is_enemy="yes" count=0 [/filter_adjacent] [/unit_filter] #enddef #define MISSILE_FRAME_WAIL # Animate a projectile for a wail attack. [if] direction=n,ne,nw [missile_frame] begin=-300 end=-230 image="projectiles/wailprojectile-n-1.png" image_diagonal="projectiles/wailprojectile-ne-1.png" [/missile_frame] [missile_frame] begin=-230 end=-160 image="projectiles/wailprojectile-n-2.png" image_diagonal="projectiles/wailprojectile-ne-2.png" [/missile_frame] [missile_frame] begin=-160 end=0 image="projectiles/wailprojectile-n-3.png" image_diagonal="projectiles/wailprojectile-ne-3.png" [/missile_frame] [missile_frame] begin=0 end=40 image="projectiles/wailprojectile-n-4.png" image_diagonal="projectiles/wailprojectile-ne-4.png" [/missile_frame] [missile_frame] begin=40 end=80 image="projectiles/wailprojectile-n-5.png" image_diagonal="projectiles/wailprojectile-ne-5.png" [/missile_frame] [missile_frame] begin=80 end=120 image="projectiles/wailprojectile-n-6.png" image_diagonal="projectiles/wailprojectile-ne-6.png" [/missile_frame] [/if] [else] direction=s,se,sw ### The price of asymmetrical projectiles - here, we use a conditional because the game automatically flips the images for the south frame. We have a separate set of images for the south part, which are not only flipped vertically, but also have their angle corrected for the sw direction. [missile_frame] begin=-300 end=-230 image="projectiles/wailprojectile-s-1.png" image_diagonal="projectiles/wailprojectile-se-1.png" [/missile_frame] [missile_frame] begin=-230 end=-160 image="projectiles/wailprojectile-s-2.png" image_diagonal="projectiles/wailprojectile-se-2.png" [/missile_frame] [missile_frame] begin=-160 end=0 image="projectiles/wailprojectile-s-3.png" image_diagonal="projectiles/wailprojectile-se-3.png" [/missile_frame] [missile_frame] begin=0 end=40 image="projectiles/wailprojectile-s-4.png" image_diagonal="projectiles/wailprojectile-se-4.png" [/missile_frame] [missile_frame] begin=40 end=80 image="projectiles/wailprojectile-s-5.png" image_diagonal="projectiles/wailprojectile-se-5.png" [/missile_frame] [missile_frame] begin=80 end=120 image="projectiles/wailprojectile-s-6.png" image_diagonal="projectiles/wailprojectile-se-6.png" [/missile_frame] [/else] #enddef #define MISSILE_FRAME_LIGHT_BEAM # Animate a beam of light coming down from the heavens. missile_start_time=-245 [if] direction=n,ne,nw [missile_frame] duration=30 halo="halo/holy/light-beam-1.png" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-2.png" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-3.png" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-4.png" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-5.png" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-6.png" offset=1.0 [/missile_frame] [missile_frame] duration=130 halo="halo/holy/light-beam-7.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-6.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-5.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-4.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-3.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-2.png" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-1.png" offset=1.0 [/missile_frame] [/if] [else] direction=s,se,sw [missile_frame] duration=30 halo="halo/holy/light-beam-1.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-2.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-3.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-4.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-5.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=30 halo="halo/holy/light-beam-6.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=130 halo="halo/holy/light-beam-7.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-6.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-5.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-4.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-3.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-2.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=70 halo="halo/holy/light-beam-1.png~FL(vert)" offset=1.0 [/missile_frame] [/else] #enddef #define MISSILE_FRAME_FIRE_BREATH N_OFFSET S_OFFSET N_DIAGONAL_OFFSET S_DIAGONAL_OFFSET # Animate a projectile for a fire-breath attack. [if] direction=n [missile_frame] begin=-400 end=100 halo=projectiles/fire-breath-n-1.png:80,projectiles/fire-breath-n-2.png:80,projectiles/fire-breath-n-3.png:80,projectiles/fire-breath-n-4.png:80,projectiles/fire-breath-n-5.png:80 halo_x,halo_y={N_OFFSET} [/missile_frame] [/if] [else] direction=s [missile_frame] begin=-400 end=100 halo=projectiles/fire-breath-s-1.png:80,projectiles/fire-breath-s-2.png:80,projectiles/fire-breath-s-3.png:80,projectiles/fire-breath-s-4.png:80,projectiles/fire-breath-s-5.png:80 halo_x,halo_y={S_OFFSET} [/missile_frame] [/else] [else] direction=ne,nw [missile_frame] begin=-400 end=100 halo=projectiles/fire-breath-ne-1.png:80,projectiles/fire-breath-ne-2.png:80,projectiles/fire-breath-ne-3.png:80,projectiles/fire-breath-ne-4.png:80,projectiles/fire-breath-ne-5.png:80 halo_x,halo_y={N_DIAGONAL_OFFSET} [/missile_frame] [/else] [else] direction=se,sw [missile_frame] begin=-400 end=100 halo=projectiles/fire-breath-se-1.png:80,projectiles/fire-breath-se-2.png:80,projectiles/fire-breath-se-3.png:80,projectiles/fire-breath-se-4.png:80,projectiles/fire-breath-se-5.png:80 halo_x,halo_y={S_DIAGONAL_OFFSET} [/missile_frame] [/else] #enddef #define MISSILE_FRAME_FAERIE_FIRE # Animate a projectile for a faerie-fire attack. [missile_frame] begin=-500 end=-350 image="projectiles/icemissile-n-1.png" image_diagonal="projectiles/icemissile-ne-1.png" halo=halo/elven/ice-halo1.png:100,halo/elven/ice-halo2.png:100,halo/elven/ice-halo3.png:25 halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=-350 end=-200 image="projectiles/icemissile-n-2.png" image_diagonal="projectiles/icemissile-ne-2.png" halo=halo/elven/ice-halo3.png:75,halo/elven/ice-halo4.png:75 halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=-200 end=-50 image="projectiles/icemissile-n-3.png" image_diagonal="projectiles/icemissile-ne-3.png" halo=halo/elven/ice-halo5.png:100,halo/elven/ice-halo1.png:100,halo/elven/ice-halo2.png:50 halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=-50 end=0 image="projectiles/icemissile-n-4.png" image_diagonal="projectiles/icemissile-ne-4.png" halo=halo/elven/ice-halo6.png halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=25 end=75 image="projectiles/icemissile-n-5.png" image_diagonal="projectiles/icemissile-ne-5.png" halo=halo/elven/ice-halo7.png halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=75 end=125 image="projectiles/icemissile-n-6.png" image_diagonal="projectiles/icemissile-ne-6.png" halo=halo/elven/ice-halo8.png halo_x,halo_y=0,0 [/missile_frame] [missile_frame] begin=125 end=175 image="projectiles/icemissile-n-7.png" image_diagonal="projectiles/icemissile-ne-7.png" halo=halo/elven/ice-halo9.png halo_x,halo_y=0,0 [/missile_frame] #enddef #define MISSILE_FRAME_FIREBALL # Animate a projectile for a fireball attack. missile_start_time=-350 [if] direction=n,ne,nw hits=yes [missile_frame] duration=40 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.0~0.10 [/missile_frame] [missile_frame] duration=100 image="projectiles/fireball-n-2.png" image_diagonal="projectiles/fireball-nw-2.png" offset=0.1~0.30 [/missile_frame] [missile_frame] duration=125 image="projectiles/fireball-n.png" image_diagonal="projectiles/fireball-nw.png" offset=0.3~0.60 [/missile_frame] [missile_frame] duration=55 image="projectiles/fireball-n-2.png" image_diagonal="projectiles/fireball-nw-2.png" offset=0.7~0.8 [/missile_frame] [missile_frame] duration=30 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.8~0.9 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-1.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-2.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-3.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-4.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-5.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-6.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-7.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-8.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-9.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-10.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-11.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-12.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-13.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-14.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-15.png" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-16.png" offset=1.0 [/missile_frame] [/if] [else] direction=s,se,sw hits=yes [missile_frame] duration=40 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.0~0.10 [/missile_frame] [missile_frame] duration=100 image="projectiles/fireball-n-2.png" image_diagonal="projectiles/fireball-nw-2.png" offset=0.1~0.30 [/missile_frame] [missile_frame] duration=125 image="projectiles/fireball-n.png" image_diagonal="projectiles/fireball-nw.png" offset=0.3~0.60 [/missile_frame] [missile_frame] duration=55 image="projectiles/fireball-n-2.png" image_diagonal="projectiles/fireball-nw-2.png" offset=0.7~0.8 [/missile_frame] [missile_frame] duration=30 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.8~0.9 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-1.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-2.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-3.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-4.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-5.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-6.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-7.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-8.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-9.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-10.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-11.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-12.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-13.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-14.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-15.png~FL(vert)" offset=1.0 [/missile_frame] [missile_frame] duration=60 halo="projectiles/fireball-impact-16.png~FL(vert)" offset=1.0 [/missile_frame] [/else] [else] direction=n,ne,nw hits=no [missile_frame] duration=40 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.0~0.1 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-3.png" offset=0.1~0.3 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-4.png" offset=0.3~0.4 alpha=1.0~0.8 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-5.png" offset=0.4~0.45 alpha=0.8~0.6 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-6.png" offset=0.45~0.5 alpha=0.6~0.4 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-7.png" offset=0.5 alpha=0.4~0.2 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-8.png" offset=0.5 alpha=0.2~0.0 [/missile_frame] [/else] [else] direction=s,se,sw hits=no [missile_frame] duration=40 image="projectiles/fireball-n-1.png" image_diagonal="projectiles/fireball-nw-1.png" offset=0.0~0.1 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-3.png~FL(vert)" offset=0.1~0.3 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-4.png~FL(vert)" offset=0.3~0.4 alpha=1.0~0.8 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-5.png~FL(vert)" offset=0.4~0.45 alpha=0.8~0.6 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-6.png~FL(vert)" offset=0.45~0.5 alpha=0.6~0.4 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-7.png~FL(vert)" offset=0.5 alpha=0.4~0.2 [/missile_frame] [missile_frame] duration=40 halo="projectiles/fireball-impact-8.png~FL(vert)" offset=0.5 alpha=0.2~0.0 [/missile_frame] [/else] #enddef #define MISSILE_FRAME_ICE [if] hits=yes [missile_frame] begin=-200 end=0 image="projectiles/whitemissile-n.png" image_diagonal="projectiles/whitemissile-ne.png" offset=0.0~0.8 [/missile_frame] [missile_frame] begin=0 end=50 halo="projectiles/whitemissile-impact-1.png" offset=0.8 [/missile_frame] [missile_frame] begin=50 end=100 halo="projectiles/whitemissile-impact-2.png" offset=0.92 [/missile_frame] [missile_frame] begin=100 end=150 halo="projectiles/whitemissile-impact-3.png" offset=0.94 [/missile_frame] [missile_frame] begin=150 end=200 halo="projectiles/whitemissile-impact-4.png" offset=0.96 [/missile_frame] [missile_frame] begin=200 end=250 halo="projectiles/whitemissile-impact-5.png" offset=0.98 [/missile_frame] [missile_frame] begin=250 end=300 halo="projectiles/whitemissile-impact-6.png" offset=1.0 [/missile_frame] [missile_frame] begin=300 end=350 halo="projectiles/whitemissile-impact-7.png" offset=1.02 [/missile_frame] [missile_frame] begin=350 end=400 halo="projectiles/whitemissile-impact-8.png" offset=1.04 [/missile_frame] [/if] [else] hits=no [missile_frame] begin=-200 end=0 image="projectiles/whitemissile-n.png" image_diagonal="projectiles/whitemissile-ne.png" offset=0.0~0.8 alpha=.8~0.0:200 [/missile_frame] [/else] #enddef #define MISSILE_FRAME_HATCHET # Animate a projectile for a thrown-hatchet attack. [missile_frame] begin=-200 end=-150 image="projectiles/hatchet-2.png" image_diagonal="projectiles/hatchet-2.png" [/missile_frame] [missile_frame] begin=-150 end=-100 image="projectiles/hatchet-3.png" image_diagonal="projectiles/hatchet-3.png" [/missile_frame] [missile_frame] begin=-100 end=-50 image="projectiles/hatchet-4.png" image_diagonal="projectiles/hatchet-4.png" [/missile_frame] [missile_frame] begin=-50 end=0 image="projectiles/hatchet-1.png" image_diagonal="projectiles/hatchet-1.png" [/missile_frame] #enddef #define FIRE_BURST_SMALL [missile_frame] begin=0 end=75 image="projectiles/fire-burst-small-1.png" image_diagonal="projectiles/fire-burst-small-1.png" offset=0.8 [/missile_frame] [missile_frame] begin=75 end=150 image="projectiles/fire-burst-small-2.png" image_diagonal="projectiles/fire-burst-small-2.png" offset=0.83 [/missile_frame] [missile_frame] begin=150 end=225 image="projectiles/fire-burst-small-3.png" image_diagonal="projectiles/fire-burst-small-3.png" offset=0.86 [/missile_frame] [missile_frame] begin=225 end=300 image="projectiles/fire-burst-small-4.png" image_diagonal="projectiles/fire-burst-small-4.png" offset=0.89 [/missile_frame] [missile_frame] begin=300 end=375 image="projectiles/fire-burst-small-5.png" image_diagonal="projectiles/fire-burst-small-5.png" offset=0.92 [/missile_frame] [missile_frame] begin=375 end=450 image="projectiles/fire-burst-small-6.png" image_diagonal="projectiles/fire-burst-small-6.png" offset=0.95 [/missile_frame] [missile_frame] begin=450 end=525 image="projectiles/fire-burst-small-7.png" image_diagonal="projectiles/fire-burst-small-7.png" offset=0.98 [/missile_frame] [missile_frame] begin=525 end=600 image="projectiles/fire-burst-small-8.png" image_diagonal="projectiles/fire-burst-small-8.png" offset=1.0 [/missile_frame] #enddef