From 04dc78977c3d15e60bec5a4d19416ded1b94907d Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Wed, 6 Aug 2025 15:23:17 +0200 Subject: update missionary Limit the range of the missionary's full action but increase its effectivnes. The missionary could only really be used unthreatened over multiple turns. Since any unit can be disbanded during upkeep before it is evangelized, the missionary is only a slow destroy effect. Now it is way more potent controlling cheaper units with the first action but it has to be close to the enemy unit making it more vulnerable. --- go/game/cardImplementations.go | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'go/game/cardImplementations.go') diff --git a/go/game/cardImplementations.go b/go/game/cardImplementations.go index 007c2335..3d43fe42 100644 --- a/go/game/cardImplementations.go +++ b/go/game/cardImplementations.go @@ -81,18 +81,17 @@ type missionaryImpl struct{ cardImplementationBase } func (*missionaryImpl) fullActions(u *Unit) []*FullAction { resolvePrototype := func(a Action) ActionResolveFunc { - u := a.Source().(*Unit) target := a.Target().sel[0].(*Unit) return func(s *LocalState) { - target.adjustMarks(UnitMarks.Faith, 2) - if target.Marks(UnitMarks.Faith) > target.Card().BuyCosts.Costs(s) { - target.controller = u.Controller() + target.adjustMarks(UnitMarks.Faith, 5) + if target.Card().BuyCosts != nil && target.Marks(UnitMarks.Faith) >= target.Card().BuyCosts.Costs(s) { + target.changeController(a.Controller()) } } } s := u.Controller().gameState - a := newFullAction(u, resolvePrototype, "put faith ...") - a.targets = newTargets(newTarget(s, newTargetDesc("unit"), a)) + a := newFullAction(u, resolvePrototype, "put 5 faith ...") + a.targets = newTargets(newTarget(s, newTargetDesc("unit in range 3"), a)) return []*FullAction{a} } -- cgit v1.2.3