aoe
AOE spells
A spell that iterates over atoms near the caster and casts a spell on them. Calls cast_on_thing_in_aoe on all atoms returned by get_things_to_cast_on by default.
Vars | |
aoe_radius | The radius of the aoe. |
---|---|
max_targets | The max amount of targets we can affect via our AOE. 0 = unlimited |
shuffle_targets_list | Should we shuffle the targets lift after getting them via get_things_to_cast_on? |
Procs | |
cast_on_thing_in_aoe | Actually cause effects on the thing in our aoe. Override this for your spell! Not cast(). |
get_things_to_cast_on | Gets a list of atoms around [center] that are within range and going to be affected by our aoe. You should override this on a subtype basis to change what your spell affects. |
Var Details
aoe_radius
The radius of the aoe.
max_targets
The max amount of targets we can affect via our AOE. 0 = unlimited
shuffle_targets_list
Should we shuffle the targets lift after getting them via get_things_to_cast_on?
Proc Details
cast_on_thing_in_aoe
Actually cause effects on the thing in our aoe. Override this for your spell! Not cast().
Arguments
- victim - the atom being affected by our aoe
- caster - the mob who cast the aoe
get_things_to_cast_on
Gets a list of atoms around [center] that are within range and going to be affected by our aoe. You should override this on a subtype basis to change what your spell affects.
For example, if you want to only cast on atoms in view instead of range. Or, if you only want living mobs in the list.
When using range / view, it's handy to remember the byond optimization they have by casting to an atom type.
Returns a list of atoms.