From 7b82f26def47f515334345cfbc8bb75d4929a157 Mon Sep 17 00:00:00 2001 From: Eunchong Kim Date: Sat, 17 Jul 2021 10:44:13 +0900 Subject: [PATCH] Added player class --- src/index.js | 18 +++++++++++++++++- src/js/card.js | 6 +++--- src/js/player.js | 16 ++++++++++++++++ 3 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 src/js/player.js diff --git a/src/index.js b/src/index.js index e79caa0..83dbdbf 100644 --- a/src/index.js +++ b/src/index.js @@ -2,8 +2,9 @@ console.log('Uno Start') import './css/uno-game.css'; import Card from './js/card.js'; +import Player from './js/player.js'; -let card = new Card(); +let card = new Card(1, 'green'); console.log(card.num) @@ -13,4 +14,19 @@ document.addEventListener('DOMContentLoaded', () => { }); +const _all_colors = ['red', 'yellow', 'green', 'blue']; +function generateCards() { + let cards = []; + for (let i=0; i<7; i++) { + cards.push({ + num: Math.floor( Math.random() * 14 ), + color: _all_colors[ Math.floor( Math.random() * 4 ) ], + }); + } + const player = new Player(cards); + player.printCards(); + +} +generateCards() + console.log('Uno End') diff --git a/src/js/card.js b/src/js/card.js index 65e4c47..1365204 100644 --- a/src/js/card.js +++ b/src/js/card.js @@ -1,7 +1,7 @@ export default class Card { - constructor() { - this._num = 0; - this._color = 'red'; + constructor(num, color) { + this._num = num; + this._color = color; } get num() { return this._num; diff --git a/src/js/player.js b/src/js/player.js new file mode 100644 index 0000000..c730e7a --- /dev/null +++ b/src/js/player.js @@ -0,0 +1,16 @@ +import Card from './card.js'; + +export default class Player { + constructor(cards) { + this._n = cards.length; + this._cards = []; + cards.forEach( (card) => { + this._cards.push( new Card( card['num'], card['color'] ) ); + }); + } + printCards() { + this._cards.forEach( (card) => { + console.log(card.num) + }); + } +}