Windup
A cast with a windup at a point, broken by a heavy hit; a burst round the point
windupbroken by ... when event.landedtarget point withinall enemies within ... of targetcostcooldownA cast with a windup at a point, lifted from the ARPG slice's content\fireball.ledger (Fireball), with the burn it lights from content\arena.ledger. Nothing lands and nothing is paid until the windup's 0.8 s are through; a hit of 25 or more to the caster meanwhile breaks it. It bursts for 30 Fire on every foe within 2.5 of the point and sets each one burning. The slice's hero regenerates mana; this one doesn't, so the price reads plainly.
1
# A cast with a windup at a point, lifted from the ARPG slice's content\fireball.ledger (Fireball), with the burn it2
# lights from content\arena.ledger. Nothing lands and nothing is paid until the windup's 0.8 s are through; a hit of3
# 25 or more to the caster meanwhile breaks it. It bursts for 30 Fire on every foe within 2.5 of the point and sets4
# each one burning. The slice's hero regenerates mana; this one doesn't, so the price reads plainly.6
rate 607
stat MaxHealth8
stat MaxMana9
pool Health max MaxHealth10
pool Mana max MaxMana11
damage Health12
link team13
allegiance team14
tags Spell Fire16
effect Burning17
tags Fire18
stack add max 519
lasts 3s20
every 0.5s21
deal 3 * self.stacks Fire to holder from source23
ability Fireball24
tags Spell Fire25
target point within 1426
cost Mana 2027
cooldown 1s28
windup 0.8s29
broken by Damage of holder when event.landed >= 2530
deal 30 Fire to all enemies within 2.5 of target31
apply Burning to all enemies within 2.5 of target33
archetype Side35
archetype Hero36
base MaxHealth 30037
base MaxMana 20038
full Health Mana39
grants Fireball41
archetype Dummy42
base MaxHealth 100043
full Health1
catalog windup.ledger3
# The fireball's numbers, from Fireball: a 0.8 s windup, 20 Mana at the commit, 30 to each foe within 2.5 of the point.4
# A hero of side r at (0, 0) casts; dummies of side b stand at 1000 Health.6
play "wound up at (10, 0): nothing lands or is paid until 0.8 s; then 30 to each foe within 2.5, none to one 3 away, 20 Mana paid, each one hit burning"7
make r Side8
make b Side9
make h Hero with team = r at 0 010
make a Dummy with team = b at 10 011
make c Dummy with team = b at 11.5 112
make far Dummy with team = b at 13 013
act h Fireball at 10 014
expect done15
expect h active Fireball16
advance 0.5s17
expect a.Health = 1000 from content: the Dummy's 1000, nothing landed before the windup's 0.8 s18
expect h.Mana = 200 from content: the Hero's MaxMana 200, nothing paid before the commit19
advance 0.3s20
expect h idle21
expect a.Health = 970 from content: 1000 less Fireball's 30 at 0.8 s22
expect c.Health = 970 from content: 1.80 from the point, within 2.5: 1000 less 3023
expect far.Health = 1000 from content: 3 from the point, past 2.524
expect h.Mana = 180 from content: the Hero's 200 less Fireball's 20 at the commit25
expect a has Burning 1 from content: Fireball's apply Burning to each foe within 2.526
expect far lacks Burning27
act h Fireball at 10 028
expect refused OnCooldown30
play "a hit of 25 to the caster mid-windup breaks it: nothing paid, nothing landed; 24 doesn't"31
make r Side32
make b Side33
make h Hero with team = r at 0 034
make a Dummy with team = b at 10 035
act h Fireball at 10 036
expect done37
advance 0.25s38
deal 24 to h39
expect h active Fireball40
deal 25 to h41
expect h stopped Fireball Broken42
save43
advance 1s44
expect a.Health = 1000 from content: nothing landed45
expect h.Mana = 200 from content: nothing paidRun it yourself
ledger check content/cookbook/mechanics/windup.ledger content/cookbook/mechanics/windup.play
ledger play content/cookbook/mechanics/windup.play