Boas Pessoal.
Estou aqui com um problama que nao consigo descobrir… vejam lá se me podem ajudar.
O erro é no “put” e diz que nao encontra esse simbolo.
public void distribuirBarcos (int nj, int barco, int direccao)
{
int l;
int c;
hashRecusas.clear(); //hash que vai conter par de coordenadas recusados. Sempre que entra neste metodo esse hash é limpo.
boolean pronto=false;
do
{
//gerar linha aleatoriamente
l = geraAleatorio(tabJogador.getBiDimensao());
//gerar uma coluna aleatoriamente
c = geraAleatorio(tabJogador.getBiDimensao());
if (verificaRecusas(l, c)==false) //pode acontecer que esteja a gerar sempre o mesmo l ou sempre c's recusados.. e isto vai estar em loop, mas nao estou a ver maneira de fazer isto diferente.
{
//verificação se o barco segundo determinada linha, coluna e direcção pode ser construido dentro do tabuleiro escolhido
boolean analisaFronteiras = verificaFronteiras(l, c, barco, direccao);
//verificação se as casas onde vai estar o barco bem como à sua volta vão estar disponiveis
//leva o numero do barco escolhido (barco) a direcção escolhida (direccao), a linha e a coluna (l, c) donde quer começar a construir o barco
boolean analisaCasas = (validarCasas(nj, barco, direccao, l, c));
//se ele passar na verificação das fronteiras do tabuleiro e na verificação das casas em si.. então consoante o barco e a direcçao escolhida vai-se construir o barco no tabuleiro
if (analisaFronteiras && analisaCasas && barco==1 && direccao==1)
{
numPa++; //esta variavel começa em 0 e vai incrementar sempre que mete um PA
this.barcosEmJogo.add(new PortaAvioes(numPa));
tabJogador.constroiCasa(new Casa(l, c, false, "p2PA", barco, numPa), l, c); //peça2
tabJogador.constroiCasa(new Casa(l+1, c, false, "BLD", barco, numPa), l+1, c);
tabJogador.constroiCasa(new Casa(l+1,c-1, false, "BLD", barco, numPa), l+1,c-1);
tabJogador.constroiCasa(new Casa(l+1,c+1, false, "BLD", barco, numPa), l+1,c+1);
tabJogador.constroiCasa(new Casa(l, c+1, false, "p3PA", barco, numPa), l, c+1);//peça 3
tabJogador.constroiCasa(new Casa(l+1,c+2, false, "BLD", barco, numPa), l+1,c+2);
tabJogador.constroiCasa(new Casa(l,c+2, false, "BLD", barco, numPa), l,c+2);
tabJogador.constroiCasa(new Casa(l-1,c+2, false, "BLD", barco, numPa), l-1,c+2);
tabJogador.constroiCasa(new Casa(l-1,c+1, false, "BLD", barco, numPa), l-1,c+1);
tabJogador.constroiCasa(new Casa(l, c-1, false, "p1PA", barco, numPa), l, c-1);//peça1
tabJogador.constroiCasa(new Casa(l+1,c-2, false, "BLD", barco, numPa), l+1,c-2);
tabJogador.constroiCasa(new Casa(l,c-2, false, "BLD", barco, numPa), l,c-2);
tabJogador.constroiCasa(new Casa(l-1,c-2, false, "BLD", barco, numPa), l-1,c-2);
tabJogador.constroiCasa(new Casa(l-1,c-1, false, "BLD", barco, numPa), l-1,c-1);
tabJogador.constroiCasa(new Casa(l-1, c, false, "p4PA", barco, numPa), l-1, c);//peça4
tabJogador.constroiCasa(new Casa(l-2,c-1, false, "BLD", barco, numPa), l-2,c-1);
tabJogador.constroiCasa(new Casa(l-2,c+1, false, "BLD", barco, numPa), l-2,c+1);
tabJogador.constroiCasa(new Casa(l-2, c, false, "p5PA", barco, numPa), l-2, c);//peça5
tabJogador.constroiCasa(new Casa(l-3,c, false, "BLD", barco, numPa), l-3,c);
tabJogador.constroiCasa(new Casa(l-3,c-1, false, "BLD", barco, numPa), l-3,c-1);
tabJogador.constroiCasa(new Casa(l-3,c+1, false, "BLD", barco, numPa), l-3,c+1);
memorizacaoBarcos.put(barco, memorizacaoPecas.put(numPa, "p1PA"));
pronto=true;
}
Obrigado pessoal.