aboutsummaryrefslogtreecommitdiff
path: root/go/game/tile.go
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2023-02-07 14:58:22 +0100
committerFlorian Fischer <florian.fischer@muhq.space>2025-01-27 16:43:47 +0100
commit495940be9dfe0aa09c7940c3ad78968e354eb8e6 (patch)
tree3fb9a64fea22dbe4a58e27989d434dc492e5b49e /go/game/tile.go
parent000b3230a77106ef49c5a581db7120e2ef6e56b1 (diff)
downloadmuhqs-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.go19
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
+}