【发布时间】:2021-10-31 06:49:00
【问题描述】:
我正在构建一个黑杰克游戏,并创建了一副牌,以及洗牌和从牌堆中发牌的能力。
let suits = ["H", "C", "D", "S"]
let ranks = ["2", "3", "4", "5", "6", "7", "8", "9", "T", "J", "Q", "K", "A"]
let deck = []
function createDeck(){
for(let suitCounter = 0; suitCounter < 4; suitCounter++){
for(let rankCounter = 0; rankCounter < 13; rankCounter++){
deck.push(ranks[rankCounter] + suits[suitCounter])
}
}
return deck
}
function shuffleDeck(){
for(let i = 0; i < 52; i++){
let tempCard = deck[i]
let randomIndex = Math.floor(Math.random() * 52)
deck[i] = deck[randomIndex]
deck[randomIndex] = tempCard
}
}
let shuffledDeck = createDeck()
shuffleDeck(shuffledDeck)
console.log(shuffledDeck)
function dealHand(){
let blackJackHand = shuffledDeck.splice(0, 2)
console.log(blackJackHand)
}
function hitMe(){
let anotherCard = shuffledDeck.splice(0, 1)
console.log(anotherCard)
}
我不确定如何继续将图像添加到数组,但是我不知道如何将图像添加到由 2 个其他数组构建的数组(甲板)。
我需要为 createDeck() 生成的每张卡片分配一张卡片图像。
任何建议都会被采纳。
【问题讨论】:
-
我认为您可以为每个卡片组合命名您的图像名称,如 H2.png、H3.png...C2.png、C3.png..等。因此,在迭代卡片组数组时,您可以通过卡片组数组值 concat 和图像扩展名访问您的卡片图像。
-
我建议您应该创建
css类,例如.skin-SUITE-CARD或.skin-SUITE,并使用javascript(或带有“内容”的css)调整标签。 -
re: Navnath Jadhav - 甲板数组值只是数组中的位置,不是吗?每次洗牌时,这都会改变。还是我想错了。
-
re:darklightcode 感谢您的想法,我会尝试弄清楚如何使这项工作。
标签: javascript arrays image blackjack