diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-08-22 11:56:46 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-08-22 11:56:46 +0200 |
| commit | 0667db9e5a765cbd1eec90b63fb8cd0a6e0a2dc7 (patch) | |
| tree | 155a8e692b6eed924e4b735bd8e1444cd08ba83d /go/game/effect.go | |
| parent | 157a8601c10b06ab14a216372b0c06fc47f4de31 (diff) | |
| download | muhqs-game-0667db9e5a765cbd1eec90b63fb8cd0a6e0a2dc7.tar.gz muhqs-game-0667db9e5a765cbd1eec90b63fb8cd0a6e0a2dc7.zip | |
implement banner
Diffstat (limited to 'go/game/effect.go')
| -rw-r--r-- | go/game/effect.go | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/go/game/effect.go b/go/game/effect.go index 4d89eea5..184f2013 100644 --- a/go/game/effect.go +++ b/go/game/effect.go @@ -24,6 +24,21 @@ func (e *dynamicEffect) end(s *LocalState) { e._end(s) } +func newCombinedEffect(effects []effect) *dynamicEffect { + return &dynamicEffect{ + _apply: func(s *LocalState) { + for _, e := range effects { + e.apply(s) + } + }, + _end: func(s *LocalState) { + for _, e := range effects { + e.end(s) + } + }, + } +} + func newAdjustmentEffect(adjust func(Permanent, int), u *Unit, delta int) effect { apply := func(*LocalState) { adjust(u, delta) } end := func(*LocalState) { adjust(u, -delta) } |
