尝试着创造一款《Blackjack》游戏,却不知道在动态创造元素后该何去何从

Stuck trying to make a Blackjack game, not sure where to go after dynamically creating elements

本文关键字:创造 不知道 游戏 动态 何去何从 元素 一款 Blackjack      更新时间:2023-09-26

所以我想做一个21点游戏。我一直在寻找问题的答案,虽然我找到了一些,但它们让我感到困惑。我已经创建了各种对象来表示卡牌/牌组,并且我知道如何使用jQuery动态地向页面添加元素-我已经设法使它成为这样,当你点击播放时,2div元素为玩家创建,1为经销商创建,类'card'。我不太确定在标题中到底要问什么问题,所以如果不够精确,我很抱歉。

然而,我完全不知道从这里去哪里。我想我必须创建一个div元素它将保存一个card对象(我不知道怎么做)然后使用一堆if/else语句关于它的suit &排序来决定它有什么数值,以及要显示什么图像。我真的很困惑如何做到这一点,我在网上找不到任何解释(我找到了一个解释,但它完全超出了我的理解)。

我需要在这里使用对象吗?我能不能创建一个div元素让它产生一个1-52之间的随机数,然后用这个作为它的值,然后每个数字都有一个对应的图像?我看到的大多数教程都说,在制作这样的游戏时,物体是必不可少的,所以我确信我认为这也是一种可能性,这一定是错误的。

我知道这是一个晦涩的问题,但是如果有人能给我一些关于如何克服这个障碍的建议,我将非常非常感激。

谢谢。

我不知道这是不是你要问的,但这可能是什么:

function Card(id){
    this.suits = ["Spades", "Hearts", "Diamonds", "Clubs"];
    this.ranks = numbers = ['2', '3', '4', '5', '6', '7', '8', '9', 'T', 'A', 'J', 'Q', 'K'];
    this.id = id;
    this.div = document.getElementById(id);
    this.setName = function(){
         this.suit = this.suits[Math.random(0, 3)];
         this.rank = this.ranks[Math.random(0, 13)];
    }
    this.setImage = function(){
         this.img = "<image src='" + this.rank + "_of_" + this.suit + "'>"; //Or however you format your titles
         this.div.innerHtml = this.img;
    }
}

然后,创建一个函数,在主体上创建一个<div>标签,其id如card1等。叫

id = 'card0';
var div = Div(id); //will have things about comparisons and stuff
var card = Card(id);
card.setName();
card.setImage(); 

你应该能够在网上找到卡片图像;一个例子是https://github.com/Innoviox/War