else{//se for a vez do computador de jogar
if(jogador==RAPOSA){//se o jogador for a raposa, o computador representa os gansos
stop:{ // <<< para que serve isto???
for(int x=tabuleiro.length-1; x>=0; x–)
for(int y = tabuleiro.length-1; y>=0; y–)//procura pelo ganso mais à frente
if(tabuleiro[x][y]==GANSOS && podeMover(x, y)){
int d = (int)(Math.random()*6)+1;//numero aleatorio entre 1 e 6
while(!mover(x, y, d))
d = (int)(Math.random()*6)+1;//numero aleatorio entre 1 e 6
break stop;
}
}
Indica o ponto em que o programa deve voltar após executar a linha “break stop” dentro do while.
Quando a execução chegar na linha “break stop”, o fluxo volta para a linha após a declaração “stop:”
Espero ter ajudado.
else{//se for a vez do computador de jogar
if(jogador==RAPOSA){//se o jogador for a raposa, o computador representa os gansos
stop:{ // <<< para que serve isto???
for(int x=tabuleiro.length-1; x>=0; x--)
for(int y = tabuleiro.length-1; y>=0; y--)//procura pelo ganso mais à frente
if(tabuleiro[x][y]==GANSOS && podeMover(x, y)){
int d = (int)(Math.random()*6)+1;//numero aleatorio entre 1 e 6
while(!mover(x, y, d))
d = (int)(Math.random()*6)+1;//numero aleatorio entre 1 e 6
break stop;
}
}
O stop no seu codigo é um rotulador. O rotulado server para identificar os loop no seu caso o for, entao quando entrar na codição break stop signfica que o for mais acima que está com esse rotulado vai parar. Se nao tivesse esse rotulador stop e se tive apenas essa condição break o for interno iria para mas o for externo continuario funcionando.