From 18dfde76df708631089d39f63394f3a8c1dc9df7 Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Fri, 5 Sep 2025 17:21:39 +0200 Subject: implement discard event and reformer --- go/game/cardImplementations.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'go/game/cardImplementations.go') diff --git a/go/game/cardImplementations.go b/go/game/cardImplementations.go index 1f7af599..ea07ccf4 100644 --- a/go/game/cardImplementations.go +++ b/go/game/cardImplementations.go @@ -816,6 +816,21 @@ func (*recycleImpl) onPlay(a *PlayAction) { } } +type reformerImpl struct{ cardImplementationBase } + +func (*reformerImpl) fullActions(u *Unit) []*FullAction { + fa := newFullAction(u, func(Action) ActionResolveFunc { + return func(s *LocalState) { + s.addTrigger(newOwnDiscardTrigger(u, false, true, func(s *LocalState, e Event) ActionResolveFunc { + return func(*LocalState) { + u.Controller().DrawN(len(e.affected)) + } + }, "reformer draw")) + } + }, "draw for discard") + return []*FullAction{fa} +} + func init() { cardImplementations = map[string]cardImplementation{ "base/advisor": &advisorImpl{}, @@ -869,5 +884,6 @@ func init() { "exp1/patrician": &patricianImpl{}, "exp1/power_to_the_people!": &powerToThePeopleImpl{}, "exp1/recycle!": &recycleImpl{}, + "exp1/reformer": &reformerImpl{}, } } -- cgit v1.2.3