You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
998 B

  1. //Klasse Player für Spieler einer Uno Runde
  2. class Player {
  3. //Erstellt ein Spieler mit einem Namen
  4. constructor(name, gameInstanz) {
  5. this._game = gameInstanz;
  6. this._name = name; //Name des Spielers
  7. this._turn = false; //Ob Spieler gerade am Zug
  8. this._hand = [];
  9. this._canPlay = false //Ob spieler gerade Karte legen kann
  10. }
  11. drawCard(cards){
  12. for (let i = 0; i < cards; i++){
  13. this._hand.push(this._game.cardPool[0]);
  14. this._game.cardPool.splice(0, 1);
  15. }
  16. }
  17. //Gibt den Namen eines Spielers zurück
  18. get name() {
  19. return this._name;
  20. }
  21. //Gibt zurück, ob der Spieler am Zug ist
  22. get turn(){
  23. return this._turn;
  24. }
  25. //Gibt zurück, ob der Spieler eine Karte legen kann
  26. get canPlay(){
  27. return this._canPlay;
  28. }
  29. //Gibt das SpielerDeck zurück
  30. get hand(){
  31. return this._hand;
  32. }
  33. }
  34. //Exportiert Modul Player
  35. module.exports = Player;