|
@ -5,7 +5,7 @@ import Skip from "./cards/special/Skip.js"; |
|
|
import PlusAmount from "./cards/special/PlusAmount.js"; |
|
|
import PlusAmount from "./cards/special/PlusAmount.js"; |
|
|
import Reverse from "./cards/special/Reverse.js"; |
|
|
import Reverse from "./cards/special/Reverse.js"; |
|
|
import Player from "./Player.js"; |
|
|
import Player from "./Player.js"; |
|
|
import {CARD_COLORS} from "./uno.js"; |
|
|
|
|
|
|
|
|
import {CARD_COLORS, style} from "./uno.js"; |
|
|
|
|
|
|
|
|
//Um generatePool zu exportieren, muss es in eine Klasse konvertiert werden
|
|
|
//Um generatePool zu exportieren, muss es in eine Klasse konvertiert werden
|
|
|
export default class Game { |
|
|
export default class Game { |
|
@ -154,12 +154,15 @@ export default class Game { |
|
|
|
|
|
|
|
|
//Aktuellen Spieler kann, darf nicht mehr Spielen
|
|
|
//Aktuellen Spieler kann, darf nicht mehr Spielen
|
|
|
this.players[this.currentPlayer].canPlay = false; |
|
|
this.players[this.currentPlayer].canPlay = false; |
|
|
|
|
|
this.players[this.currentPlayer].turn = false; |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//nächster Spieler wird gesetzt
|
|
|
//nächster Spieler wird gesetzt
|
|
|
this.currentPlayer = this.nextPlayer(); |
|
|
this.currentPlayer = this.nextPlayer(); |
|
|
|
|
|
|
|
|
|
|
|
this.players[this.currentPlayer].turn = true; |
|
|
|
|
|
|
|
|
//Aktualisiere das Deck des aktuellen Spielers, welche Karten er legen kann
|
|
|
//Aktualisiere das Deck des aktuellen Spielers, welche Karten er legen kann
|
|
|
this.refreshCanPutCard(); |
|
|
this.refreshCanPutCard(); |
|
|
|
|
|
|
|
@ -168,14 +171,14 @@ export default class Game { |
|
|
//Testet alle Karten des aktuellen Spielers in seiner Hand, ob er sie legen kann
|
|
|
//Testet alle Karten des aktuellen Spielers in seiner Hand, ob er sie legen kann
|
|
|
refreshCanPutCard(){ |
|
|
refreshCanPutCard(){ |
|
|
//Deck des aktuellen Spielers
|
|
|
//Deck des aktuellen Spielers
|
|
|
let currentPlayerCards = this.players[this.currentPlayer].hand; |
|
|
|
|
|
|
|
|
let currentPlayerCards = this.currentPlayerInstanz.hand; |
|
|
|
|
|
|
|
|
//Gehe alle Karten vom Deck durch
|
|
|
//Gehe alle Karten vom Deck durch
|
|
|
for(let i = 0; i < currentPlayerCards.length; i++){ |
|
|
for(let i = 0; i < currentPlayerCards.length; i++){ |
|
|
|
|
|
|
|
|
//Wenn Farbe oder Zahl gleich oder eine Karte, die keine Farbe hat
|
|
|
//Wenn Farbe oder Zahl gleich oder eine Karte, die keine Farbe hat
|
|
|
if(this._cardOnDeck.name.toString() === currentPlayerCards[i].name.toString() || |
|
|
if(this._cardOnDeck.name.toString() === currentPlayerCards[i].name.toString() || |
|
|
this._cardPool._color === currentPlayerCards[i].color || |
|
|
|
|
|
|
|
|
this.cardOnDeck.color === currentPlayerCards[i].color || |
|
|
currentPlayerCards[i].color === CARD_COLORS[0] || |
|
|
currentPlayerCards[i].color === CARD_COLORS[0] || |
|
|
this.cardOnDeck.color === CARD_COLORS[0]) { |
|
|
this.cardOnDeck.color === CARD_COLORS[0]) { |
|
|
|
|
|
|
|
|