Simples MauMau Spiel für zwei Spieler.
Dieses Spiel wurde im Zuge des Social Distancings entwickelt, sodass Kinder auch mit ihren Großeltern maumau spielen können. Das Spiel läuft auf einem Server, der über Websockets sich mit den Clients verbindet.
Der Stapel das sind die gemischten Karten. Vom Stapel ziehen die Spieler immer die oberste Karte.
Auf den Haufen werden die unterschiedlichen Karten abgelegt. Dabei dürfen nur bestimmte Karten auf den Stapel gelegt werden.
Für die Umsetzung werden verschiedene Events definiert.
- newGame: Neues Spiel
- Erste Karte Aufdecken
- newPlayer(name): Spieler hinzufügen
- pushCardToStack: Karte auf den Stapel legen (wird nach dem Mischen der Karten verwendet)
- setActivePlayer: Spieler am Zug
- playerReady: Spieler ist fertig mit dem Zug
- popCardFromStack: Spieler nimmt oberste Karte vom Stapel
- pushCardToHeap: Spieler legt Karte auf den Haufen
- gameOver: Spieler hat gewonnen
Umsetzung erfolg über HTML
- HTML Template Struktur
- vue.js Rendering via JSON Input
- Anbindung an Wesocket
- Abfangen von nicht gültigen Zügen
- Anmeldebildschirm
- Undo und Redo
- Neues Spiel
Definition der einzelnen Phasen für den Client
- Status: Warte Anmeldung Partner
- Status: Warte auf Zug
- Status: Spiele Karte
- Status: Nimm eine Karte
- Status: Wähle Farbe
- Game State für Spieler
- Game Start
- Validierung der Züge
- Undo und Redo Handler
- Neues Spiel Handler
Im Zuge von Go 1.16 wurden alle lokalen HTML-Files nun mittels embed-Paket in das Binary aufgenommen.