change syntax of square bracket animations, ~ is not used for range

This commit is contained in:
Jérémy Rosen 2013-01-30 21:37:44 +00:00
parent c4308d0b23
commit dc02698fa8
40 changed files with 191 additions and 229 deletions

View file

@ -9,7 +9,7 @@
start_time=0
[frame]
image="units/wose-shaman.png"
halo="halo/wose-stationary-halo[1-8].png:150"
halo="halo/wose-stationary-halo[1~8].png:150"
[/frame]
[/standing_anim]
{DEFENSE_ANIM units/wose-shaman.png units/wose-shaman.png {SOUND_LIST:HUMAN_OLD_HIT}}

View file

@ -105,7 +105,7 @@
begin=0
end=200
image="units/dark-mage-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200
@ -187,7 +187,7 @@
begin=0
end=200
image="units/dark-mage-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200

View file

@ -248,7 +248,7 @@
[/frame]
[frame]
image="units/human-magi/white-mage-magic-3.png"
halo=halo/holy/halo[6,1-6].png:125
halo=halo/holy/halo[6,1~6].png:125
[/frame]
[frame]
duration=125
@ -281,7 +281,7 @@
[/frame]
[frame]
image="units/human-magi/white-cleric-magic-3.png"
halo=halo/holy/halo[6,1-6].png:125
halo=halo/holy/halo[6,1~6].png:125
[/frame]
[frame]
duration=125

View file

@ -80,7 +80,7 @@
canrecruit=yes
team_name=undead
user_team_name=_"Undead"
#flag=flags/undead-flag-[1-4].png
#flag=flags/undead-flag-[1~4].png
{VOD_AI_PARMS}
{GOLD 200 320 440}

View file

@ -71,7 +71,7 @@
begin=-375
end=75
image="units/human-queen.png"
halo=halo/elven/faerie-fire-halo[2-7].png:75
halo=halo/elven/faerie-fire-halo[2~7].png:75
halo_x,halo_y=0,-35
[/frame]
[/attack_anim]

View file

@ -47,7 +47,7 @@
[missile_frame]
begin=-200
end=0
halo=halo/mage-halo[1-5].png
halo=halo/mage-halo[1~5].png
halo_x,halo_y=10,-14
[/missile_frame]
[frame]

View file

@ -60,7 +60,7 @@
begin=-500
end=50
image="units/human-outlaws/shadow-mage.png"
halo=halo/shadow-mage-halo[1-10].png
halo=halo/shadow-mage-halo[1~10].png
halo_x,halo_y=12,-5
sound=magicmissile.wav
[/frame]

View file

@ -276,7 +276,7 @@
[item]
x,y=21,13
halo=projectiles/fire-burst-small-[1-8].png:50,misc/blank-hex.png:1000000
halo=projectiles/fire-burst-small-[1~8].png:50,misc/blank-hex.png:1000000
[/item]
[kill]
@ -292,7 +292,7 @@
[item]
x,y=$exploding_hexes[$i].x,$exploding_hexes[$i].y
halo=projectiles/fire-burst-small-[1-8].png:50,misc/blank-hex.png:1000000
halo=projectiles/fire-burst-small-[1~8].png:50,misc/blank-hex.png:1000000
[/item]
[kill]

View file

@ -49,7 +49,7 @@
[missile_frame]
begin=-200
end=200
halo="halo/elven/druid-healing[8-1].png:50"
halo="halo/elven/druid-healing[8~1].png:50"
offset=1.0~0.0
[/missile_frame]
[frame]

View file

@ -49,7 +49,7 @@
[missile_frame]
begin=-200
end=200
halo="halo/elven/druid-healing[8-1].png:50"
halo="halo/elven/druid-healing[8~1].png:50"
offset=1.0~0.0
[/missile_frame]
[frame]

View file

@ -49,7 +49,7 @@
[missile_frame]
begin=-200
end=200
halo="halo/elven/druid-healing[8-1].png:50"
halo="halo/elven/druid-healing[8~1].png:50"
offset=1.0~0.0
[/missile_frame]
[frame]

View file

@ -100,7 +100,7 @@
[missile_frame]
begin=0
end=300
halo="halo/elven/ice-halo[1-6].png:50"
halo="halo/elven/ice-halo[1~6].png:50"
offset=1.0~0.0:300
[/missile_frame]
[frame]

View file

@ -5,6 +5,6 @@
# and the generous advice of the collected fora.
#define CUSTOM_SG_FLAG
flag=flag/SG-flag-[1-4].png:150
flag=flag/SG-flag-[1~4].png:150
flag_icon=flag/SG-flag-icon.png
#enddef

View file

@ -147,32 +147,32 @@
[flame_burst_1_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=-9,17
[/flame_burst_1_frame]
[flame_burst_2_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=18,0
[/flame_burst_2_frame]
[flame_burst_3_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=-9,-18
[/flame_burst_3_frame]
[flame_burst_4_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=9,17
[/flame_burst_4_frame]
[flame_burst_5_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=8,-18
[/flame_burst_5_frame]
[flame_burst_6_frame]
duration=800
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1-8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo=misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,halo/flame-burst-[1~8].png~{OVERLAY_IMAGE_AFFIX}:50,misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1
halo_x,halo_y=-18,0
[/flame_burst_6_frame]
@ -185,32 +185,32 @@
[explosion_1_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=-9,17
[/explosion_1_frame]
[explosion_2_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=18,0
[/explosion_2_frame]
[explosion_3_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=-9,-18
[/explosion_3_frame]
[explosion_4_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=9,17
[/explosion_4_frame]
[explosion_5_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=8,-18
[/explosion_5_frame]
[explosion_6_frame]
duration=800
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1-16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo="misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1,projectiles/fireball-impact-[1,1~16].png~{OVERLAY_IMAGE_AFFIX},misc/blank-hex.png~{OVERLAY_IMAGE_AFFIX}:1"
halo_x,halo_y=-18,0
[/explosion_6_frame]

View file

@ -129,7 +129,7 @@ The unit will heal itself 6 HP per turn on sand or dirt terrain."
offset=1.0
begin=-200
end=120
halo="projectiles/sand-storm-[1-8].png:40"
halo="projectiles/sand-storm-[1~8].png:40"
[/missile_frame]
[/if]
[else]
@ -138,7 +138,7 @@ The unit will heal itself 6 HP per turn on sand or dirt terrain."
offset=1.0
begin=-200
end=120
halo="projectiles/sand-storm-[1-8].png~FL(vert):40"
halo="projectiles/sand-storm-[1~8].png~FL(vert):40"
[/missile_frame]
[/else]
[if]

View file

@ -56,7 +56,7 @@
[halo_frame]
begin=-100
end=160
halo="halo/misc/leadership-flare-[1-13].png:20"
halo="halo/misc/leadership-flare-[1~13].png:20"
halo_x,halo_y={OFFSET_POSITION}
[/halo_frame]
[halo_frame]
@ -519,7 +519,7 @@
direction=n,ne,nw
[missile_frame]
halo="halo/holy/light-beam-[1-6].png:30,halo/holy/light-beam-7.png:130,halo/holy/light-beam-[6-1].png:70"
halo="halo/holy/light-beam-[1~6].png:30,halo/holy/light-beam-7.png:130,halo/holy/light-beam-[6~1].png:70"
offset=1.0
[/missile_frame]
[/if]
@ -527,7 +527,7 @@
direction=s,se,sw
[missile_frame]
halo="halo/holy/light-beam-[1-6].png~FL(vert):30,halo/holy/light-beam-7.png~FL(vert):130,halo/holy/light-beam-[6-1].png~FL(vert):70"
halo="halo/holy/light-beam-[1~6].png~FL(vert):30,halo/holy/light-beam-7.png~FL(vert):130,halo/holy/light-beam-[6~1].png~FL(vert):70"
offset=1.0
[/missile_frame]
[/else]
@ -540,7 +540,7 @@
[missile_frame]
begin=-400
halo=projectiles/fire-breath-n-[1-5].png:80
halo=projectiles/fire-breath-n-[1~5].png:80
halo_x,halo_y={N_OFFSET_POSITION}
[/missile_frame]
[/if]
@ -549,7 +549,7 @@
[missile_frame]
begin=-400
halo=projectiles/fire-breath-s-[1-5].png:80
halo=projectiles/fire-breath-s-[1~5].png:80
halo_x,halo_y={S_OFFSET_POSITION}
[/missile_frame]
[/else]
@ -558,7 +558,7 @@
[missile_frame]
begin=-400
halo=projectiles/fire-breath-ne-[1-5].png:80
halo=projectiles/fire-breath-ne-[1~5].png:80
halo_x,halo_y={N_DIAGONAL_OFFSET_POSITION}
[/missile_frame]
[/else]
@ -567,7 +567,7 @@
[missile_frame]
begin=-400
halo=projectiles/fire-breath-se-[1-5].png:80
halo=projectiles/fire-breath-se-[1~5].png:80
halo_x,halo_y={S_DIAGONAL_OFFSET_POSITION}
[/missile_frame]
[/else]
@ -577,7 +577,7 @@
# Animate a projectile for a fire-breath attack.
[missile_frame]
begin=-400
halo=projectiles/fire-breath-n-[1-5].png:80
halo=projectiles/fire-breath-n-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
#enddef
@ -586,7 +586,7 @@
# Animate a projectile for a fire-breath attack.
[missile_frame]
begin=-400
halo=projectiles/fire-breath-s-[1-5].png:80
halo=projectiles/fire-breath-s-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
#enddef
@ -595,7 +595,7 @@
# Animate a projectile for a fire-breath attack.
[missile_frame]
begin=-400
halo=projectiles/fire-breath-ne-[1-5].png:80
halo=projectiles/fire-breath-ne-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
#enddef
@ -604,7 +604,7 @@
# Animate a projectile for a fire-breath attack.
[missile_frame]
begin=-400
halo=projectiles/fire-breath-se-[1-5].png:80
halo=projectiles/fire-breath-se-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
#enddef
@ -616,7 +616,7 @@
end=-350
image="projectiles/icemissile-n-1.png"
image_diagonal="projectiles/icemissile-ne-1.png"
halo=halo/elven/ice-halo[1-3].png:[100,100,25]
halo=halo/elven/ice-halo[1~3].png:[100,100,25]
halo_x,halo_y=0,0
[/missile_frame]
[missile_frame]
@ -711,7 +711,7 @@
[missile_frame]
duration=960
halo="projectiles/fireball-impact-[1-16].png:60"
halo="projectiles/fireball-impact-[1~16].png:60"
offset=1.0
[/missile_frame]
[/if]
@ -752,7 +752,7 @@
[missile_frame]
duration=960
halo="projectiles/fireball-impact-[1-16].png~FL(vert):60"
halo="projectiles/fireball-impact-[1~16].png~FL(vert):60"
offset=1.0
[/missile_frame]
[/else]
@ -764,7 +764,7 @@
[missile_frame]
duration=700
halo="projectiles/fireball-fail-[1-7].png:100"
halo="projectiles/fireball-fail-[1~7].png:100"
[/missile_frame]
[/else]
[else]
@ -775,7 +775,7 @@
[missile_frame]
duration=700
halo="projectiles/fireball-fail-[1-7].png~FL(vert):100"
halo="projectiles/fireball-fail-[1~7].png~FL(vert):100"
[/missile_frame]
[/else]
#enddef
@ -784,7 +784,7 @@
halo_auto_vflip=false
[halo_frame]
duration=420
halo=halo/saurian-magic-halo-[1-7].png:60
halo=halo/saurian-magic-halo-[1~7].png:60
[/halo_frame]
#enddef
@ -802,7 +802,7 @@
[missile_frame]
begin=0
end=400
halo="projectiles/whitemissile-impact-[1-8].png:50"
halo="projectiles/whitemissile-impact-[1~8].png:50"
offset=0.8,0.92,0.94,0.96,0.98,1.0,1.02,1.04
[/missile_frame]
[/if]
@ -913,7 +913,7 @@
[missile_frame]
begin=-250
halo=halo/lightning-bolt-{DIRECTION_NUMBER}-[1-4].png~FL(vert):100
halo=halo/lightning-bolt-{DIRECTION_NUMBER}-[1~4].png~FL(vert):100
halo_y=-125
offset=1.0
[/missile_frame]
@ -923,7 +923,7 @@
[missile_frame]
begin=-250
halo=halo/lightning-bolt-{DIRECTION_NUMBER}-[1-4].png:100
halo=halo/lightning-bolt-{DIRECTION_NUMBER}-[1~4].png:100
halo_y=-125
offset=1.0
[/missile_frame]
@ -939,33 +939,33 @@
[magic_missile_frame]
duration=400
halo=halo/mage-halo[1-5].png
halo=halo/mage-halo[1~5].png
halo_x={OFFSET_X}~0
halo_y={OFFSET_Y}~-54
offset=0.001~-0.083,-0.083~-0.25,-0.25~-0.5
[/magic_missile_frame]
[magic_missile_frame]
duration=350
halo=halo/mage-halo[1-5].png,misc/blank-hex.png:1
halo=halo/mage-halo[1~5].png,misc/blank-hex.png:1
halo_y=-54~-45,-45~-27,-27~0
offset=-0.5~-0.25,-0.25~0.25,0.25~1.0
[/magic_missile_frame]
[magic_missile_trail_1_frame]
duration=350
halo=misc/blank-hex.png:40,halo/mage-preparation-halo[1-7].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:40,halo/mage-preparation-halo[1~7].png,misc/blank-hex.png:1
halo_y=-54:40,-54~-45,-45~-27,-27~0
offset=0.001:40,-0.5~-0.25,-0.25~0.25,0.25~1.0
[/magic_missile_trail_1_frame]
[magic_missile_trail_2_frame]
duration=350
halo=misc/blank-hex.png:80,halo/mage-preparation-halo[1-7].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:80,halo/mage-preparation-halo[1~7].png,misc/blank-hex.png:1
halo_y=-54:80,-54~-45,-45~-27,-27~0
offset=0.001:80,-0.5~-0.25,-0.25~0.25,0.25~1.0
[/magic_missile_trail_2_frame]
[magic_missile_trail_3_frame]
duration=350
halo=misc/blank-hex.png:120,halo/mage-preparation-halo[1-7].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:120,halo/mage-preparation-halo[1~7].png,misc/blank-hex.png:1
halo_y=-54:120,-54~-45,-45~-27,-27~0
offset=0.001:120,-0.5~-0.25,-0.25~0.25,0.25~1.0
[/magic_missile_trail_3_frame]
@ -976,7 +976,7 @@
[magic_missile_flare_frame]
duration={DURATION_TIME}
halo=halo/mage-preparation-halo[1-7].png,misc/blank-hex.png:1
halo=halo/mage-preparation-halo[1~7].png,misc/blank-hex.png:1
halo_x={OFFSET_X}
halo_y={OFFSET_Y}
offset=0
@ -987,7 +987,7 @@
flare_start_time=-420
[flare_frame]
duration=420
halo=halo/merfolk/staff-flare-[1-7].png:60
halo=halo/merfolk/staff-flare-[1~7].png:60
halo_x,halo_y={OFFSET_X},{OFFSET_Y}
[/flare_frame]
[flare_frame]
@ -999,7 +999,7 @@
water_start_time=-420
[water_frame]
duration=360
halo=halo/merfolk/water-halo-[1-6].png:60
halo=halo/merfolk/water-halo-[1~6].png:60
[/water_frame]
[water_frame]
duration=60
@ -1014,7 +1014,7 @@
missile_start_time=-250
missile_offset=0.1
[missile_frame]
halo="projectiles/misfire-spark-[1-4].png:100"
halo="projectiles/misfire-spark-[1~4].png:100"
[/missile_frame]
#enddef
#define MISSILE_FRAME_MUZZLE_FLARE_HIT_NORTH START_X START_Y
@ -1023,7 +1023,7 @@
missile_halo_x={START_X}~0
missile_halo_y={START_Y}~0
[missile_frame]
halo="projectiles/muzzle-flash-n-[1-3].png:[100,80,70],projectiles/muzzle-flash-[4-14].png:60"
halo="projectiles/muzzle-flash-n-[1~3].png:[100,80,70],projectiles/muzzle-flash-[4~14].png:60"
[/missile_frame]
#enddef
#define MISSILE_FRAME_MUZZLE_FLARE_HIT_SOUTH START_X START_Y
@ -1032,7 +1032,7 @@
missile_halo_x={START_X}~0
missile_halo_y={START_Y}~0
[missile_frame]
halo="projectiles/muzzle-flash-s-[1-3].png~FL(vertical):[100,80,70],projectiles/muzzle-flash-[4-14].png:60"
halo="projectiles/muzzle-flash-s-[1~3].png~FL(vertical):[100,80,70],projectiles/muzzle-flash-[4~14].png:60"
[/missile_frame]
#enddef
#define MISSILE_FRAME_MUZZLE_FLARE_HIT_DIAG_NORTH START_X START_Y
@ -1041,7 +1041,7 @@
missile_halo_x={START_X}~0
missile_halo_y={START_Y}~0
[missile_frame]
halo="projectiles/muzzle-flash-ne-[1-3].png:[100,80,70],projectiles/muzzle-flash-[4-14].png:60"
halo="projectiles/muzzle-flash-ne-[1~3].png:[100,80,70],projectiles/muzzle-flash-[4~14].png:60"
[/missile_frame]
#enddef
#define MISSILE_FRAME_MUZZLE_FLARE_HIT_DIAG_SOUTH START_X START_Y
@ -1050,7 +1050,7 @@
missile_halo_x={START_X}~0
missile_halo_y={START_Y}~0
[missile_frame]
halo="projectiles/muzzle-flash-se-[1-3].png~FL(vertical):[100,80,70],projectiles/muzzle-flash-[4-14].png:60"
halo="projectiles/muzzle-flash-se-[1~3].png~FL(vertical):[100,80,70],projectiles/muzzle-flash-[4~14].png:60"
[/missile_frame]
#enddef
@ -1236,7 +1236,7 @@
impact_burst_start_time=-160
[impact_burst_frame]
duration=320
halo=misc/blank-hex.png:1,projectiles/fire-burst-small-[1-8].png:[39,40,40,40,40,40,40,39],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-burst-small-[1~8].png:[39,40,40,40,40,40,40,39],misc/blank-hex.png:1
offset=1.0
layer=1
[/impact_burst_frame]
@ -1248,35 +1248,35 @@
flame_trail_5_start_time=-250
[flame_trail_1_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.25:200
[/flame_trail_1_frame]
[flame_trail_2_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.20:200
[/flame_trail_2_frame]
[flame_trail_3_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.15:200
[/flame_trail_3_frame]
[flame_trail_4_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.10:200
[/flame_trail_4_frame]
[flame_trail_5_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.05:200
@ -1342,35 +1342,35 @@
flame_trail_5_start_time=-250
[flame_trail_1_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.5:200
[/flame_trail_1_frame]
[flame_trail_2_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.4:200
[/flame_trail_2_frame]
[flame_trail_3_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.3:200
[/flame_trail_3_frame]
[flame_trail_4_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.2:200
[/flame_trail_4_frame]
[flame_trail_5_frame]
duration=500
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1-10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,projectiles/fire-breath-[1~10].png:[49,50,50,50,50,50,50,50,50,49],misc/blank-hex.png:1
halo_x={OFFSET_X}~0:300,0
halo_y={OFFSET_Y}~0:300,0
offset=0.0~1.0:300,1.0~1.1:200
@ -1430,7 +1430,7 @@
[missile_frame]
begin=-400
end=100
halo=projectiles/fire-breath-se-[1-5].png:80
halo=projectiles/fire-breath-se-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
start_time=-900
@ -1504,7 +1504,7 @@
[missile_frame]
begin=-400
end=100
halo=projectiles/fire-breath-ne-[1-5].png:80
halo=projectiles/fire-breath-ne-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
start_time=-900
@ -1578,7 +1578,7 @@
[missile_frame]
begin=-400
end=100
halo=projectiles/fire-breath-s-[1-5].png:80
halo=projectiles/fire-breath-s-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
start_time=-900
@ -1652,7 +1652,7 @@
[missile_frame]
begin=-400
end=100
halo=projectiles/fire-breath-n-[1-5].png:80
halo=projectiles/fire-breath-n-[1~5].png:80
halo_x,halo_y={OFFSET_POSITION}
[/missile_frame]
start_time=-900

View file

@ -207,7 +207,7 @@
y=0
[image]
layer=0
name="misc/fire-A[01-08].png:140"
name="misc/fire-A[01~08].png:140"
[/image]
[/tile]
[/terrain_graphics]
@ -226,7 +226,7 @@
layer=0
# wmlscope: start ignoring
# FIXME: More implicit-path breakage
name="../items/brazier-lit[1-8].png:140"
name="../items/brazier-lit[1~8].png:140"
# wmlscope: stop ignoring
[/image]
[/tile]
@ -238,7 +238,7 @@
# long, undead, or wood-elvish. Use within a [side] block; only
# affects that side.
# wmlscope: start ignoring
flag=flags/{NAME}-flag-[1-4].png:150
flag=flags/{NAME}-flag-[1~4].png:150
flag_icon=flags/{NAME}-flag-icon.png
# wmlscope: stop ignoring
#enddef
@ -271,7 +271,7 @@
center=92,138
# wmlscope: start ignoring
# FIXME: More implicit-path breakage
name="../scenery/mausoleum[01-18].png:140"
name="../scenery/mausoleum[01~18].png:140"
# wmlscope: stop ignoring
[/image]
[/terrain_graphics]

View file

@ -57,19 +57,19 @@
[teleport_sparkle_1_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=-10
halo_y=30~-30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=0
halo_y=40~-40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=10
halo_y=30~-30
[/teleport_sparkle_3_frame]
@ -137,19 +137,19 @@
[teleport_sparkle_1_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=10
halo_y=-30~30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=0
halo_y=-40~40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=-10
halo_y=-30~30
[/teleport_sparkle_3_frame]

View file

@ -7,31 +7,31 @@
{IMAGESTEM}-A01{POSTFIX}.png:100#enddef
#define ANIMATION_03 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-03]{POSTFIX}.png:200#enddef
{IMAGESTEM}-A[01~03]{POSTFIX}.png:200#enddef
#define ANIMATION_04 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-04]{POSTFIX}.png:100#enddef
{IMAGESTEM}-A[01~04]{POSTFIX}.png:100#enddef
#define ANIMATION_08 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-08]{POSTFIX}.png:200#enddef
{IMAGESTEM}-A[01~08]{POSTFIX}.png:200#enddef
#define ANIMATION_10 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-10]{POSTFIX}.png:100#enddef
{IMAGESTEM}-A[01~10]{POSTFIX}.png:100#enddef
#define ANIMATION_15 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-15]{POSTFIX}.png:110#enddef
{IMAGESTEM}-A[01~15]{POSTFIX}.png:110#enddef
#define ANIMATION_15_SLOW IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-15]{POSTFIX}.png:150#enddef
{IMAGESTEM}-A[01~15]{POSTFIX}.png:150#enddef
#define ANIMATION_04_140 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-04]{POSTFIX}.png:140#enddef
{IMAGESTEM}-A[01~04]{POSTFIX}.png:140#enddef
#define ANIMATION_18_70 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-18]{POSTFIX}.png:130#enddef
{IMAGESTEM}-A[01~18]{POSTFIX}.png:130#enddef
#define ANIMATION_06_150 IMAGESTEM POSTFIX
{IMAGESTEM}-A[01-06]{POSTFIX}.png:300#enddef
{IMAGESTEM}-A[01~06]{POSTFIX}.png:300#enddef
#define BUILD_IMAGE BUILDER IMAGESTEM POSTFIX
{{BUILDER} {IMAGESTEM} {POSTFIX}}#enddef

View file

@ -341,7 +341,7 @@
# we put [image] in [tile] for performance reason
# this assumes that the image fit into the hex
[image]
name={IMAGESTEM}-A[01-15].png{IPF}:{TIME}
name={IMAGESTEM}-A[01~15].png{IPF}:{TIME}
layer=-1000
[/image]
[/tile]
@ -364,7 +364,7 @@
# we put [image] in [tile] for performance reason
# this assumes that the image fit into the hex
[image]
name={IMAGESTEM}-A[01-15]-@R0.png{IPF}:{TIME}
name={IMAGESTEM}-A[01~15]-@R0.png{IPF}:{TIME}
layer={LAYER}
[/image]
[/tile]

View file

@ -860,7 +860,7 @@
[/tile]
[image]
name={IMAGESTEM}[01-03].png:{TIME}
name={IMAGESTEM}[01~03].png:{TIME}
layer=0
base=90,144
center=90,144
@ -884,7 +884,7 @@
[/tile]
[image]
name={IMAGESTEM}[01-04].png:{TIME}
name={IMAGESTEM}[01~04].png:{TIME}
layer=0
base=90,144
center=90,144

View file

@ -116,7 +116,7 @@
begin=-300
end=75
image="units/elves-wood/high-lord-magic-1.png"
halo=halo/elven/faerie-fire-halo[3-7].png:75
halo=halo/elven/faerie-fire-halo[3~7].png:75
halo_x,halo_y=-19,-14
[/frame]
[/attack_anim]
@ -147,7 +147,7 @@
begin=-300
end=75
image="units/elves-wood/high-lord-magic-1.png"
halo=halo/elven/faerie-fire-halo[3-7].png:75
halo=halo/elven/faerie-fire-halo[3~7].png:75
halo_x,halo_y=-19,-14
[/frame]
[/attack_anim]

View file

@ -83,7 +83,7 @@
begin=-300
end=75
image="units/elves-wood/lord-magic-1.png"
halo=halo/elven/faerie-fire-halo[3-7].png:75
halo=halo/elven/faerie-fire-halo[3~7].png:75
halo_x,halo_y=-19,-13
[/frame]
[/attack_anim]
@ -114,7 +114,7 @@
begin=-300
end=75
image="units/elves-wood/lord-magic-1.png"
halo=halo/elven/faerie-fire-halo[3-7].png:75
halo=halo/elven/faerie-fire-halo[3~7].png:75
halo_x,halo_y=-19,-13
[/frame]
[/attack_anim]

View file

@ -123,7 +123,7 @@ The healing abilities of the elves are also remarkable, and of capital use in ba
begin=-450
end=-225
image="units/elves-wood/shaman.png"
halo=halo/elven/nature-halo[1-3].png:75
halo=halo/elven/nature-halo[1~3].png:75
halo_x,halo_y=0,-12
[/frame]
[frame]

View file

@ -7,7 +7,7 @@
gender=female
image="units/elves-wood/shyde.png"
profile="portraits/elves/shyde.png"
halo=halo/elven/shyde-stationary-halo1.png:150,halo/elven/shyde-stationary-halo2.png:150,halo/elven/shyde-stationary-halo3.png:150,halo/elven/shyde-stationary-halo4.png:150,halo/elven/shyde-stationary-halo5.png:150,halo/elven/shyde-stationary-halo6.png:150
halo=halo/elven/shyde-stationary-halo[1~6].png:150
{MAGENTA_IS_THE_TEAM_COLOR}
hitpoints=46
movement_type=woodlandfloat

View file

@ -7,7 +7,7 @@
image="units/elves-wood/sylph.png"
{MAGENTA_IS_THE_TEAM_COLOR}
profile="portraits/elves/sylph.png~RIGHT()"
halo=halo/elven/shyde-stationary-halo1.png:150,halo/elven/shyde-stationary-halo2.png:150,halo/elven/shyde-stationary-halo3.png:150,halo/elven/shyde-stationary-halo4.png:150,halo/elven/shyde-stationary-halo5.png:150,halo/elven/shyde-stationary-halo6.png:150
halo=halo/elven/shyde-stationary-halo[1~6].png:150
hitpoints=60
movement_type=woodlandfloat
movement=6
@ -107,44 +107,9 @@
[frame]
begin=-375
end=-300
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo2.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-300
end=-225
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo3.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-225
end=-150
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo4.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-150
end=-75
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo5.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-75
end=0
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo6.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-0
end=75
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo7.png
halo=halo/elven/faerie-fire-halo[2~7].png:75
halo_x,halo_y=0,-28
[/frame]
[/attack_anim]
@ -160,37 +125,9 @@
[/missile_frame]
[frame]
begin=-450
end=-375
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo1.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-375
end=-300
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo2.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-300
end=-225
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo3.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-225
end=-150
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo4.png
halo_x,halo_y=0,-28
[/frame]
[frame]
begin=-150
end=-75
image="units/elves-wood/sylph-magic.png"
halo=halo/elven/faerie-fire-halo5.png
halo=halo/elven/faerie-fire-halo[1~5].png:75
halo_x,halo_y=0,-28
[/frame]
{SOUND:SLOW}

View file

@ -44,7 +44,7 @@ Full paladins are generally not quite as fearsome as the Grand Knights tha
begin=-300
end=300
image="units/human-loyalists/paladin-healing.png"
halo=halo/holy/halo[6,1-6].png
halo=halo/holy/halo[6,1~6].png
[/frame]
[/healing_anim]
[attack]

View file

@ -161,19 +161,19 @@ Silver magi are often more physically adept than other magi, and their skills ar
[teleport_sparkle_1_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=-10
halo_y=30~-30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=0
halo_y=40~-40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=10
halo_y=30~-30
[/teleport_sparkle_3_frame]
@ -226,19 +226,19 @@ Silver magi are often more physically adept than other magi, and their skills ar
[teleport_sparkle_1_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=10
halo_y=-30~30
[/teleport_sparkle_1_frame]
[teleport_sparkle_2_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=0
halo_y=-40~40
[/teleport_sparkle_2_frame]
[teleport_sparkle_3_frame]
duration=800
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1-9].png,misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/teleport-[9,8,1~9].png,misc/blank-hex.png:1
halo_x=-10
halo_y=-30~30
[/teleport_sparkle_3_frame]

View file

@ -54,7 +54,7 @@ Though not trained for combat, they are a potent ally against magical or unnatur
begin=-375
end=150
image="units/human-magi/white-mage-magic-3.png"
halo=halo/holy/halo[6,1-6].png:75
halo=halo/holy/halo[6,1~6].png:75
[/frame]
[frame]
begin=150

View file

@ -57,7 +57,7 @@ Following a strict code of piety and honor, these men and women work tirelessly
begin=-375
end=150
image="units/human-magi/white-cleric-magic-3.png"
halo=halo/holy/halo[6,1-6].png:75
halo=halo/holy/halo[6,1~6].png:75
[/frame]
[frame]
begin=150

View file

@ -48,7 +48,7 @@
[/frame]
[frame]
image="units/merfolk/diviner.png" ### magic-3
halo=halo/holy/halo[6,1-6].png:75
halo=halo/holy/halo[6,1~6].png:75
[/frame]
[frame]
duration=150

View file

@ -45,7 +45,7 @@
[/frame]
[frame]
image="units/merfolk/priestess.png" ### magic-3
halo=halo/holy/halo[6,1-6].png:75
halo=halo/holy/halo[6,1~6].png:75
[/frame]
[frame]
duration=150

View file

@ -85,31 +85,31 @@
[flame_burst_1_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=-22,0
offset=1.0
[/flame_burst_1_frame]
[flame_burst_2_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=-14,9
offset=1.0
[/flame_burst_2_frame]
[flame_burst_3_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=0,12
offset=1.0
[/flame_burst_3_frame]
[flame_burst_4_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=14,9
offset=1.0
[/flame_burst_4_frame]
[flame_burst_5_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png~FL(vert):[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=22,0
offset=1.0
[/flame_burst_5_frame]
@ -119,31 +119,31 @@
[flame_burst_1_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=-22,0
offset=1.0
[/flame_burst_1_frame]
[flame_burst_2_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=-14,9
offset=1.0
[/flame_burst_2_frame]
[flame_burst_3_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=0,12
offset=1.0
[/flame_burst_3_frame]
[flame_burst_4_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=14,9
offset=1.0
[/flame_burst_4_frame]
[flame_burst_5_frame]
duration=400
halo=misc/blank-hex.png:1,halo/flame-burst-[1-8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo=misc/blank-hex.png:1,halo/flame-burst-[1~8].png:[50,50,50,50,50,50,50,48],misc/blank-hex.png:1
halo_x,halo_y=22,0
offset=1.0
[/flame_burst_5_frame]

View file

@ -138,7 +138,7 @@ In such condition, their only weapon is the craft they have so committed themsel
begin=-300
end=-50
image="units/undead-necromancers/adept-magic-3.png"
halo=halo/undead/dark-magic-[1-5].png:50
halo=halo/undead/dark-magic-[1~5].png:50
halo_x,halo_y=0,-12
[/frame]
[if]
@ -207,7 +207,7 @@ In such condition, their only weapon is the craft they have so committed themsel
begin=-300
end=-50
image="units/undead-necromancers/adept-magic-3.png"
halo=halo/undead/dark-magic-[1-5].png:50
halo=halo/undead/dark-magic-[1~5].png:50
halo_x,halo_y=0,-12
[/frame]
[frame]

View file

@ -64,7 +64,7 @@ Despite any design they may have of using this to wrest their own immortality fr
begin=0
end=200
image="units/undead-necromancers/dark-sorcerer-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200
@ -165,7 +165,7 @@ Despite any design they may have of using this to wrest their own immortality fr
begin=0
end=200
image="units/undead-necromancers/dark-sorcerer-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200

View file

@ -229,7 +229,7 @@ It is not known, save perhaps by the inner circles of necromancy, whether life i
begin=0
end=200
image="units/undead-necromancers/lich-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200
@ -297,7 +297,7 @@ It is not known, save perhaps by the inner circles of necromancy, whether life i
begin=0
end=200
image="units/undead-necromancers/lich-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200

View file

@ -101,7 +101,7 @@ This ability, in all aspects, is the first step towards cheating death of its ul
begin=0
end=200
image="units/undead-necromancers/necromancer-magic-3.png"
halo=halo/undead/black-magic-[3,4,5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200
@ -169,7 +169,7 @@ This ability, in all aspects, is the first step towards cheating death of its ul
begin=0
end=200
image="units/undead-necromancers/necromancer-magic-3.png"
halo=halo/undead/black-magic-[3-5].png:[75,75,50]
halo=halo/undead/black-magic-[3~5].png:[75,75,50]
[/frame]
[frame]
begin=200

View file

@ -56,7 +56,7 @@
ally_orb="misc/orb-ally.png"
energy="misc/bar-energy.png"
flag="flags/flag-[1-4].png:150"
flag="flags/flag-[1~4].png:150"
flag_icon="flags/flag-icon.png"
terrain_mask="terrain/alphamask.png"

View file

@ -80,23 +80,35 @@ std::string &strip(std::string &str)
return str;
}
std::vector< std::string > split(std::string const &val, char c, int flags)
std::string &strip_end(std::string &str)
{
str.erase(std::find_if(str.rbegin(), str.rend(), notspace).base(), str.end());
return str;
}
std::vector< std::string > split(std::string const &val, const char c, const int flags)
{
std::vector< std::string > res;
std::string::const_iterator i1 = val.begin();
std::string::const_iterator i2 = val.begin();
std::string::const_iterator i2;
if (flags & STRIP_SPACES) {
while (i1 != val.end() && portable_isspace(*i1))
++i1;
}
i2=i1;
while (i2 != val.end()) {
if (*i2 == c) {
std::string new_val(i1, i2);
if (flags & STRIP_SPACES)
strip(new_val);
strip_end(new_val);
if (!(flags & REMOVE_EMPTY) || !new_val.empty())
res.push_back(new_val);
++i2;
if (flags & STRIP_SPACES) {
while (i2 != val.end() && *i2 == ' ')
while (i2 != val.end() && portable_isspace(*i2))
++i2;
}
@ -108,7 +120,7 @@ std::vector< std::string > split(std::string const &val, char c, int flags)
std::string new_val(i1, i2);
if (flags & STRIP_SPACES)
strip(new_val);
strip_end(new_val);
if (!(flags & REMOVE_EMPTY) || !new_val.empty())
res.push_back(new_val);
@ -117,7 +129,7 @@ std::vector< std::string > split(std::string const &val, char c, int flags)
std::vector< std::string > square_parenthetical_split(std::string const &val,
const char separator, std::string const &left,
std::string const &right,int flags)
std::string const &right,const int flags)
{
std::vector< std::string > res;
std::vector<char> part;
@ -126,16 +138,21 @@ std::vector< std::string > square_parenthetical_split(std::string const &val,
std::vector<std::string::const_iterator> square_right;
std::vector< std::string > square_expansion;
std::string::const_iterator i1 = val.begin();
std::string::const_iterator i2 = val.begin();
std::string::const_iterator j1 = val.begin();
if (i1 == val.end()) return res;
std::string lp=left;
std::string rp=right;
std::string::const_iterator i1 = val.begin();
std::string::const_iterator i2;
std::string::const_iterator j1;
if (flags & STRIP_SPACES) {
while (i1 != val.end() && portable_isspace(*i1))
++i1;
}
i2=i1;
j1=i1;
if (i1 == val.end()) return res;
if (!separator) {
ERR_GENERAL << "Separator must be specified for square bracket split funtion.\n";
return res;
@ -154,7 +171,7 @@ std::vector< std::string > square_parenthetical_split(std::string const &val,
std::vector< std::string > tmp = split(tmp_val);
std::vector<std::string>::const_iterator itor = tmp.begin();
for(; itor != tmp.end(); ++itor) {
size_t found = (*itor).find_first_of('-');
size_t found = (*itor).find_first_of('~');
if (found == std::string::npos) {
std::string tmp = (*itor);
square_expansion.push_back(strip(tmp));
@ -210,7 +227,7 @@ std::vector< std::string > square_parenthetical_split(std::string const &val,
std::string tmp_val(j1, i2);
new_val.append(tmp_val);
if (flags & STRIP_SPACES)
strip(new_val);
strip_end(new_val);
if (!(flags & REMOVE_EMPTY) || !new_val.empty())
res.push_back(new_val);
j++;
@ -220,7 +237,7 @@ std::vector< std::string > square_parenthetical_split(std::string const &val,
break;
++i2;
if (flags & STRIP_SPACES) { //strip leading spaces
while (i2 != val.end() && *i2 == ' ')
while (i2 != val.end() && portable_isspace(*i2))
++i2;
}
i1=i2;
@ -263,18 +280,23 @@ std::vector< std::string > square_parenthetical_split(std::string const &val,
std::vector< std::string > parenthetical_split(std::string const &val,
const char separator, std::string const &left,
std::string const &right,int flags)
std::string const &right,const int flags)
{
std::vector< std::string > res;
std::vector<char> part;
bool in_parenthesis = false;
std::string::const_iterator i1 = val.begin();
std::string::const_iterator i2 = val.begin();
std::string lp=left;
std::string rp=right;
std::string::const_iterator i1 = val.begin();
std::string::const_iterator i2;
if (flags & STRIP_SPACES) {
while (i1 != val.end() && portable_isspace(*i1))
++i1;
}
i2=i1;
if(left.size()!=right.size()){
ERR_GENERAL << "Left and Right Parenthesis lists not same length\n";
return res;
@ -284,12 +306,12 @@ std::vector< std::string > parenthetical_split(std::string const &val,
if(!in_parenthesis && separator && *i2 == separator){
std::string new_val(i1, i2);
if (flags & STRIP_SPACES)
strip(new_val);
strip_end(new_val);
if (!(flags & REMOVE_EMPTY) || !new_val.empty())
res.push_back(new_val);
++i2;
if (flags & STRIP_SPACES) {
while (i2 != val.end() && *i2 == ' ')
while (i2 != val.end() && portable_isspace(*i2))
++i2;
}
i1=i2;

View file

@ -53,7 +53,7 @@ enum { REMOVE_EMPTY = 0x01, /**< REMOVE_EMPTY : remove empty elements. */
STRIP_SPACES = 0x02 /**< STRIP_SPACES : strips leading and trailing blank spaces. */
};
std::vector< std::string > split(std::string const &val, char c = ',', int flags = REMOVE_EMPTY | STRIP_SPACES);
std::vector< std::string > split(std::string const &val, const char c = ',', const int flags = REMOVE_EMPTY | STRIP_SPACES);
/**
* Splits a string based either on a separator where text within parenthesis
@ -77,7 +77,7 @@ std::vector< std::string > split(std::string const &val, char c = ',', int flags
*/
std::vector< std::string > parenthetical_split(std::string const &val,
const char separator = 0 , std::string const &left="(",
std::string const &right=")",int flags = REMOVE_EMPTY | STRIP_SPACES);
std::string const &right=")",const int flags = REMOVE_EMPTY | STRIP_SPACES);
/**
* Similar to parenthetical_split, but also expands embedded square brackets.
@ -100,7 +100,7 @@ std::vector< std::string > parenthetical_split(std::string const &val,
*/
std::vector< std::string > square_parenthetical_split(std::string const &val,
const char separator = ',' , std::string const &left="([",
std::string const &right=")]",int flags = REMOVE_EMPTY | STRIP_SPACES);
std::string const &right=")]",const int flags = REMOVE_EMPTY | STRIP_SPACES);
/**
* Generates a new string joining container items in a list.
@ -185,6 +185,9 @@ std::string unescape(const std::string &str);
/** Remove whitespace from the front and back of the string 'str'. */
std::string &strip(std::string &str);
/** Remove whitespace from the back of the string 'str'. */
std::string &strip_end(std::string &str);
/** Convert no, false, off, 0, 0.0 to false, empty to def, and others to true */
bool string_bool(const std::string& str,bool def=false);