HexCasting/src/main/java/at/petrak/hex/casting/RenderedSpell.kt
2021-12-25 10:58:16 -06:00

13 lines
463 B
Kotlin

package at.petrak.hex.casting
/**
* The result of a spell being cast.
*
* A "spell" is just a [SpellOperator] that returns a [RenderedSpell],
* Once a spell stack has nothing on it but a single [RenderedSpell], the casting is nearly successful.
* If the caster has enough mana to cast the [RenderedSpell], it is cast! (Otherwise, we might cast from
* hitpoints or just kill the caster.)
*/
fun interface RenderedSpell {
fun cast(ctx: CastingContext)
}