Mam jeszcze pytanie, żeby było poprawnie to teraz w mojej pętli warunkowej, w metodzie move(); powinienem się odnosić do poszczególnych pól w tablicy np tak:
if (świat.odczyt_plansza (i, j) == 1){
tak ?
w ogóle twoja metoda move jest mocno nie dopracowana. Zamiast przeszukiwać całą tablicę lepiej stworzyć jakąś strukturę pamiętającą wszystkie kury i jej update robić ( może to być tablica jak znasz z góry ilość kur czy lisów, może być jakaś kolekcja jeżeli dowolna ilość)
przemyśl to bo teraz Twoja metoda przeszukuje całą tablicę w poszukiwaniu jednego dobrego elementu.
a wtedy robisz w pętli while że dopóki wylosowany kierunek nie będzie dobry powtarzasz losowanie w metodzie moove
boolean pom=true;
while(pom){
kierunek=int kierunek = gen.nextInt(3);
/* tu jakis kod okreslajacy kierunek*/
if(swiat.odczyt_plansza(/*tu koordynaty*/ )!=2) pom=false;
}
swiat.zmien_plansza(/*tu koordynaty*/,1) ;
dodatkowo w kodzie z wątkami jest pułapka bo jeden z wątków może Ci wczytać planszę i zanim ją zmieni inny wątek już ją zmieni. tak to podpowiedziałem ale jak się tego pozbyć pozostawiam na Twojej głowie :)
Bardzo dziękuję wszystkim za zainteresowanie i wszystkie odpowiedzi, dużo udało się napisać, chociaż program nie miał wszystkich funkcjonalności jakie chciałem to i tak jestem zadowolony. Pozostałe funkcje dodam, kiedyś jak będzie trochę wolnego czasu w celu edukacyjnym :)
Jeszcze raz dziękuję i pozdrawiam :)
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.