Trebam napraviti simulaciju borbe svemirskih brodova koji su smjesteni na slucajnim pozicijama u matrici [90][90]...Imam 12 brodova i svaki brod je jedna nit...u zadatku se trazi da se ispise pobjednik nakon sto je 6 brodova jedne strane unisteno...moj kod ispisuje pobijednika, ali imam problem da unisteni brodovi kasnije i dalje ucestvuju u borbi...moja run metoda:
public void run()
{
System.out.println("Brod "+this.brojBroda+" sa posadom "+this.posada1+" pocinje da se krece!");
while(kraj==false)
{
if(this.getUnisten())
{
System.out.println("Brod "+brojBroda+" sa posadom "+posada1+" je unisten!");
//Provjeri da li su svi brodovi jedne strane unisteni...
this.provjeriPobjednika();
break;
}
else
{
this.provjeraUdaljenosti();
this.provjeraSudara();
if(this.getUnisten()==false)
{
if(this.kv==true){
/*try{
sleep(1);
}
catch(Exception e)
{
e.printStackTrace();
}*/
this.kretanjeBrodaKV();
svemir[this.getX()][this.getY()]=this;}
else {
/*try{
sleep(1);
}
catch(Exception e)
{
e.printStackTrace();
}*/
this.kretanjeBrodaRB();
svemir[this.getX()][this.getY()]=this;
}
}
else {
if (kraj) break;
System.out.println("Brod "+brojBroda+" sa posadom "+posada1+" je unisten!");
this.provjeriPobjednika();
break;
}
}
}
}
Metode provjeriPobjednika(), provjeraUdaljenosti() i provjeraSudara() su mi sinhronizovane...problem je i kod ispisivanja da je doslo do sudara npr. jer mi se ta recenica ispisuje veliki broj puta ukoliko dodje do sudara iako bi trebalo samo jednom...
ima li ko voljan da mi pomogne??? unaprijed hvala 
