У меня есть задание на создание маленькой игры
Создание текстовой приключенческой игры, которая принимает пользовательский ввод и выполняет определенные действия.
// В начале игры пользователю предоставляется возможность выбрать тип игрока (1, 2, 3) // Каждый тип игрока начинается с следующих атрибутов -
// Игрок 1 - максимальное здоровье = 50, урон = 10, лечение = 20
// Игрок 2 - максимальное здоровье = 75, урон = 25, лечение = 10
// Игрок 3 - максимальное здоровье = 100, урон = 75, лечение = 20
проблема в том, что когда я пытаюсь переопределить объект, который он не меняет
Player player(0,0,0);
int player_no;
bool gameover=false;
std::cout<<"choose your player !!!";
std::cin>>player_no;
if(player_no==1){
Player player1(50,20,10); //value is not reflected inside while
std::cout<<player.heal; //50
std::cout<<player.health; //20
goto start;
}else if(player_no==2){
Player player(75,10,25); //value is not reflcted inside while
goto start;
}
char command;
start:
while(!gameover){
std::cout<<"what do you want ??? ";
std::cin>>command;
if(command=='D'){
std::cout<<player.health<<"\n"; //uses the default value 0
std::cout<<player.damage<<"\n"; //uses the default value 0
player.TakeDamage(player.damage); //0 is passed
}else if(command=='H') {
player.Heal(player.heal); // 0 is passed
}
Как передать измененное значение в то время как? ??