diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2023-02-07 14:58:22 +0100 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-01-27 16:43:47 +0100 |
| commit | 495940be9dfe0aa09c7940c3ad78968e354eb8e6 (patch) | |
| tree | 3fb9a64fea22dbe4a58e27989d434dc492e5b49e /go/game/tile.go | |
| parent | 000b3230a77106ef49c5a581db7120e2ef6e56b1 (diff) | |
| download | muhqs-game-495940be9dfe0aa09c7940c3ad78968e354eb8e6.tar.gz muhqs-game-495940be9dfe0aa09c7940c3ad78968e354eb8e6.zip | |
intermediate commit
* implement most of the kraken cards
* unify permanent marks
* add state based actions hook for card implementations
Diffstat (limited to 'go/game/tile.go')
| -rw-r--r-- | go/game/tile.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/go/game/tile.go b/go/game/tile.go index a7bf2b26..510497f8 100644 --- a/go/game/tile.go +++ b/go/game/tile.go @@ -150,3 +150,22 @@ func (t *Tile) leaving(p Permanent) { effect.onLeaving(p) } } + +func (t *Tile) addEffect(effect areaEffect) { + t.effects = append(t.effects, effect) +} + +func (t *Tile) removeEffect(effect areaEffect) { + for i, e := range t.effects { + if e == effect { + t.effects[i] = t.effects[len(t.effects)-1] + t.effects = t.effects[:len(t.effects)-1] + break + } + } +} + +func (t *Tile) neutralize() { + t.Type = TileTypes.Neutral + t.Water = false +} |
