aboutsummaryrefslogtreecommitdiff
path: root/go/game/trigger.go
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2025-07-30 20:25:15 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2025-07-30 20:28:56 +0200
commit5a4a5159b3dcc1caa01e81222f3f1beefcfb4b02 (patch)
tree643fa1cdddca1f03d5e76719a2afb607009d91c1 /go/game/trigger.go
parentf64e8747e287e949ce7cbbb42303ad1cdfabec89 (diff)
downloadmuhqs-game-5a4a5159b3dcc1caa01e81222f3f1beefcfb4b02.tar.gz
muhqs-game-5a4a5159b3dcc1caa01e81222f3f1beefcfb4b02.zip
use any instead of interface{}
Diffstat (limited to 'go/game/trigger.go')
-rw-r--r--go/game/trigger.go20
1 files changed, 10 insertions, 10 deletions
diff --git a/go/game/trigger.go b/go/game/trigger.go
index b8eb28c0..34caf9b1 100644
--- a/go/game/trigger.go
+++ b/go/game/trigger.go
@@ -56,8 +56,8 @@ func (e eventType) String() string {
type Event struct {
eventType eventType
- sources []interface{}
- affected []interface{}
+ sources []any
+ affected []any
}
func (e Event) String() string {
@@ -72,31 +72,31 @@ func newEotEvent() Event {
return Event{eventType: eot}
}
-func newTargetEvent(source interface{}, targets *Targets) Event {
- affected := make([]interface{}, 0, len(targets.ts))
+func newTargetEvent(source any, targets *Targets) Event {
+ affected := make([]any, 0, len(targets.ts))
for _, t := range targets.ts {
affected = append(affected, t.sel...)
}
- return Event{eventType: target, sources: []interface{}{source}, affected: affected}
+ return Event{eventType: target, sources: []any{source}, affected: affected}
}
type Trigger interface {
- Source() interface{}
+ Source() any
String() string
Card() *Card
trigger(*LocalState, Event) ([]*TriggeredAction, bool)
}
type triggerBase struct {
- source interface{}
+ source any
condition func(*LocalState, Event) (bool, bool)
resolveFunc ActionResolveFunc
costFunc ActionCostFunc
desc string
}
-func (t *triggerBase) Source() interface{} { return t.source }
-func (t *triggerBase) String() string { return t.desc }
+func (t *triggerBase) Source() any { return t.source }
+func (t *triggerBase) String() string { return t.desc }
func (t *triggerBase) Card() *Card {
switch t := t.source.(type) {
case *Card:
@@ -122,7 +122,7 @@ func newTargetedTrigger(p Permanent, singleshot bool, resolveFunc ActionResolveF
t := triggerBase{source: p, resolveFunc: resolveFunc, desc: desc}
t.condition = func(_ *LocalState, event Event) (bool, bool) {
c := event.eventType == EventTypes.Target &&
- slices.Contains(event.affected, p.(interface{}))
+ slices.Contains(event.affected, p.(any))
remove := singleshot && c
return c, remove
}