Я работаю над карточной игрой в typeScript
.
Игра выглядит примерно так:
game = () => {
let get_start_card = () => {
let card:string
// get random card ...
return card
}
let start_round = (player:Player,card:string) => {
console.log(`card at start is: ${card}`)
// some logic ...
// change the card - generate new_card
this.start_card = new_card
}
let game_status: boolean = true
let start_card = get_start_card()
while(game_status === true){
start_round(player1,start_card)
start_round(player2,start_card)
}
}
game()
Идея состоит в том, что когда начинается следующий ход, следующий игрок начинает с карты, которую другой игрок оставил в конце своего хода.
Проблема в том, что метод start_round
всегда начинается с оригинальной карты и, похоже, не меняется, когда я пишу this.start_card
или this.this.start_card
или что-то еще.
У кого-нибудь есть идеи, как это сделать?
То, как я пытаюсь изменить значение start_card
перед следующим туром, используя ключевое слово "this
", неверно?
Какой правильный способ сделать это, с точки зрения ООП?
Редактировать: удаление «this» приводит к ошибке, не распознавая «start_card».
Спасибо