在JS中计算点数

时间:2012-10-18 23:56:31

标签: javascript

我目前正在尝试在JS中制作一个简单的骰子游戏,但我被困在计数部分。

我需要掷骰子,并像扑克一样计算(对,双,布兰,冲洗等)。

这是一场双人游戏。这是我的代码:

    var boulier = [1, 2, 3, 4, 5, 6];
    var done = false;

    for (var i = 1; i < 6; i++)
    {
        var number = Math.floor((Math.random() * 6) + 1);
        tabWinner[i] = number;
        document.getElementById("p1_de_"+i).src = "de_" + number + ".jpg";
        if (i == 5)
        {
            done = true;
        }
    }

它只是在1到6之间得到5个随机数,它显示链接的图像。

我需要在扑克中计算点数,但我不知道如何比较多个数组项......

如果有人可以帮助我提出这些要点,我们将不胜感激!

1 个答案:

答案 0 :(得分:1)

所以你有一只手(tabWinner?) - 数字数组

var hand = [n1, n2, n3, n4, n5]

您希望先对其进行排序,因为排序数组

会更容易
hand.sort()

然后检查从大的组合开始的特定组合

// five of a kind
hand[0] == hand[4]

// straight (dunno, there may be a shorter way)
hand[4] - 1 == hand[3] && hand[3] - 1 == hand[2] && hand[2] - 1 == hand[1] && hand[1] - 1 == hand[0]

// four of a kind
hand[0] == hand[3] || hand[1] == hand[4]

// full house
hand[0] == hand[1] && hand[3] == hand[4] && (hand[2] == hand[1] || hand[2] == hand[3])

// and so on

在途中分配点等