From 5caa446e8d95bb55c66cd79b5fb10e6f7cf61aec Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Thu, 3 Aug 2023 19:41:20 +0200 Subject: add skeleton for triggers and triggered actions --- go/game/action.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'go/game/action.go') diff --git a/go/game/action.go b/go/game/action.go index fbabb06b..4f433845 100644 --- a/go/game/action.go +++ b/go/game/action.go @@ -79,6 +79,29 @@ func (a *ActionBase) CheckTargets(s *State) error { return a.targets.CheckTargets(s) } +type TriggeredAction struct { + ActionBase + event Event +} + +func newTriggeredAction(event Event, source Trigger, resolveFunc ActionResolveFunc, + costFunc ActionCostFunc, +) *TriggeredAction { + return &TriggeredAction{ + ActionBase: ActionBase{ + source: source, + Card: source.Card(), + resolveFunc: resolveFunc, + costFunc: costFunc, + }, + event: event, + } +} + +func (a *TriggeredAction) String() string { + return fmt.Sprintf("%v ! %v", a.event, a.source) +} + type PileDropAction struct { ActionBase pile []Permanent -- cgit v1.2.3