InitialМонополия игра воссоздание колода карт после того, как выбраны
cardCount = { chest: [0], chance: [0]};
Создание карт
function createCards() {
cards = {
chance: [{
title: 'Advance to go',
type: 'move',
position: 40
}, {
title: "Advance to London",
type: "move",
position: 39
}, {
title: "Your ass is going to jail",
type: "move",
position: 10
}, {
title: "Advance to Rome",
type: "move",
position: 24
}, {
title: "Advance to Charles de Gaulle",
type: "move",
position: 15
}, {
title: "Advance to Amsterdam",
type: "move",
position: 11
}, {
title: "Go back 3 spaces",
type: "movex",
position: -3
}, {
title: "No drink and driving mate1",
type: "bill",
bill: 20
}, {
title: "Get out of Jail free card",
type: "bill",
bill: 150
}, {
title: "Pay school fees",
type: "bill",
bill: 150
}, {
title: "Speeding fine",
type: "bill",
bill: 150
}, {
title: "Bank pays you dividend",
type: "bonus",
bonus: 40
}, {
title: "You have won the competition",
type: "bonus",
bonus: 200
}, {
title: "Your building loan matures",
type: "bonus",
bonus: 200
}, {
title: "You are assessed for street repairs $40 per house $115 per hotel",
type: "billx"
}, {
title: "House repairs $25 per house $100 per hotel",
type: "billx"
}],
chest: [{
title: "Advance to go",
type: "move",
newposition: 40,
bonus: 200
}, {
title: "Advance to Cairo",
type: "move",
newposition: 1
}, {
title: "Go to Jail",
type: "move",
newposition: 10
}, {
title: "Pay hospital fees",
type: "bill",
bill: 100
}, {
title: "Pay doctor fees",
type: "bill",
bill: 50
}, {
title: "Pay insurance premium",
type: "bill",
bill: 50
}, {
title: "Bank error. Collect $200",
type: "bonus",
bonus: 200
}, {
title: "Annuity matures. Collect $100",
type: "bonus",
bonus: 100
}, {
title: "You inherit $100",
type: "bonus",
bonus: 100
}, {
title: "From sale of stock you get $50",
type: "bonus",
bonus: 50
}, {
title: "Preference shares: $25",
type: "bonus",
bonus: 25
}, {
title: "You have won second prize in a beauty contest. Collect $10.",
type: "bonus",
bonus: 10
}, {
title: "It is your birthday. Collect $10.",
type: "bonus",
bonus: 10
}, {
title: "You win the lottery. Collect $10",
type: "bonus",
bonus: 10
}]
};
}
Pick
function pickCard(type) {
var x = Math.floor(Math.random() * (cards[type].length));
var title = cards[type][x].title;
cardCount[type][0]++;
cards[type].splice(x, 1);
if (cards[type].length === 0) {
cardCount[type][0] = 0;
createCards(); // this is the problem code line
}
}
Ok ребята мне нужно немного подстроить. Есть две карты, и я держу счетчик для них. Всякий раз, когда колода полностью выбрана, я воссоздаю карты createCards
. Проблема заключается в том, что я также воссоздал другую колоду, потому что createCards
создает 2 колоды chance
и chest
. Как мне настроить свой код без создания другого объекта для 2-х колод?
Да карты являются глобальными. Хорошо, когда вы вызываете 'createCards' из pickCard, вы передаете' type'. Там я с тобой. Затем в createCards вы начинаете с оператора if ... вы проверяете, не определено ли это ... что вы делаете, если оно не определено? –
Этот код не передает 'type', он передает' [type] ':' type' в массиве. Если параметры не заданы, они устанавливают опции '' '' '' '' '' '' '' ''' '' '' '' '' '' 'и' '' пустым объектам ('{}'). – Agamemnus
Хорошо, ты полностью меня потерял. Я буду смотреть на ваш код утром, его определенно не тонет прямо сейчас. Благодарю. –