clintbellanger/flare-engine — pull request #199 by dorkster (2012-10-26 12:47:58+00:00)
Title: New Effects system

For #180

It might go without saying, but the **animation** key can be used like with other powers. So we can add visual effects as long as we create corresponding animation files.

Let's look at two types of powers: ones that are effects themselves, and ones that spawn a post-effect.

### Powers that are also effects

```
[power]
id=12
name=Haste
icon=12
description=Double run and attack speed for 8 seconds
type=effect
new_state=cast
face=false
requires_mp=1
effect_type=haste
effect_duration=240
```

The important keys here are:
```
type=effect
effect_type=haste
effect_duration=240
```

**effect_type** is an internal name used to define behavior (aka, shield, bleed, stun, etc)

### Powers that spawn a post-effect
```
[power]
id=5
name=Blood Strike
type=fixed
icon=5
description=Inflict a bleeding wound that causes additional damage over 5 seconds
new_state=swing
face=true
use_hazard=true
aim_assist=true
requires_mp=1
base_damage=melee
lifespan=1
radius=64
starting_pos=melee
post_power=127
allow_power_mod=true
post_effect=200
effect_duration=150
effect_magnitude=1

[power]
id=200
name=Bleed (effect)
type=effect
icon=5
effect_type=bleed
```

The new keys here are:
```
post_effect=200
effect_magnitude=1
```

**post_effect** is simply the power id for the desired effect
**effect_magnitude** can mean different things for different for different effect types
* bleed - damage per second
* hpot - HP healed per second
* forced_move - movement speed