pub fn execute_effect(
effect: &EffectRef,
source: Option<CardId>,
controller: PlayerId,
_state: &GameState,
scripting: Option<&RhaiEngine>,
) -> Result<Vec<Command>, CardinalError>Expand description
Execute an effect and return commands to apply its results This handles three types of effects:
- Builtin effects (damage, draw, gain_life, pump) - parsed from effect string
- Data-driven effects - future: loaded from TOML params
- Scripted effects - executed via Rhai