簡體   English   中英

制作一個JS卡牌游戲

[英]Making a JS card game

正如標題所示,我正在嘗試使用標准的 52 張卡片組制作瀏覽器紙牌游戲。 我試圖不使用其他人的代碼並盡可能多地自己做。 我對我認為我現在需要做的事情做了一個粗略的計划。

  1. 制作一張卡片object。 牌 object 將包含它的號碼和花色的值。
  2. 制作甲板 object。 卡片組包含一組卡片對象,並具有 shuffle 和 deal 功能,它們都可以操作數組。 Shuffle 將重新排列卡片,deal 將 pop() 一定數量的卡片放到玩家的手上。
  3. 制作一個 playerHand 數組。 該數組將保存玩家從牌組 object 中抽取的卡片對象。
  4. 制作一個 botHand 數組。 與 playerHand 相同,但針對對手(機器人)。

我剛開始,已經卡住了。 我做了一個卡片構造函數,現在正在制作卡片組 object。 我的主要問題是如何在卡片組 object 中創建一個數組,該數組基本上使用了我制作了 52 次的 Card 構造函數。 我假設我只是運行一個 for 循環,但不確定語法是否正確。 這就是我到目前為止所擁有的,對於我制作游戲的邏輯的任何其他建議將不勝感激。

function Card(value, suit) {
    this.value = value;
    this.suit = suit;
}

var deck = {
    cards: new Array(52),

    shuffle: function() {

    },

    deal: function() {

    }
}

不確定這是否正是您想要的,但是,您可以這樣做:

for (let i = 1; i < 14; i++){
    cards.push(Card(i, 'Spade'));
    cards.push(Card(i, 'Diamond'));
    cards.push(Card(i, 'Clubs'));
    cards.push(Card(i, 'Hearts'));
}

然后,卡片數組將有 52 個卡片對象,順序為: 1 of Spades, 1 of Diamonds, 1 of Clubs, 1 of hearts, 2 of Spades, 2 of Diamonds....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM