## Shield: Doubles any HP base value set on the target. ## Uses event interception to modify stat changes before they're applied. extends EffectBase func on_stat_base(ctx: EffectCtx, evt: StatBaseEvent) -> void: var stat_def: StatDef = ctx.target.get_context().get_stat_def_by_id(evt.stat_def_id) if stat_def and stat_def.get_name() == "hp" and evt.combatant_id == ctx.target.get_id(): evt.set_value(evt.value * 2)