Цель кода - заставить двух игроков бросить пару костей. Первый игрок, бросивший в общей сложности 20, выигрывает игру. У меня проблемы с выяснением, как правильно отслеживать сумму бросков; он дает мне только сумму текущего хода, а затем игра заканчивается, когда каждый игрок выпадет 10 раз.
Как правильно подсчитать сумму игры каждого игрока, а затем остановить l oop, когда одна из сумм игроков равна 20?
int a, b, c, d;
int playerone=0, playertwo=0;
Random gen = new Random();
a=gen.nextInt(6)+1;
b=gen.nextInt(6)+1;
c=gen.nextInt(6)+1;
d=gen.nextInt(6)+1;
while(playerone!=20 || playertwo!=20) {
playerone=a+b;
playertwo=c+d;
System.out.println("Player 1 rolled " + a + " and a " + b );
System.out.println("Player 1 now has " + playerone);
System.out.println("Player 2 rolled " + c + " and a " + d );
System.out.println("Player 2 now has " + playertwo);
a=gen.nextInt(6)+1;
b=gen.nextInt(6)+1;
c=gen.nextInt(6)+1;
d=gen.nextInt(6)+1;
playertwo+=a+b;
playerone+=c+d;
if(playerone==20)
System.out.println("player one wins ");
else if (playertwo==20)
System.out.println("player two wins ");
}
}