Witam wszystkich,
Mam pewnien problem z którym męcze się już kilka godzin. Mianowicie chodzi o poruszanie się obiektów wcześniej wymienionej klasy. Obiekty te są wstawiane w plansze za pomocą metody która odczytuje ich współrzędne a następnie ładuje do tablicy. Ale z tym jest wszystko w porządku. Mój problem polega na tym, że poruszanie się tych obiektów powinno wykonywać się w taki sposób, że gdy dojdzie do pewnego miejsca, wraca i porusza się do początku i tak w kółko. W jedną strone wszystko działa tak jak powinno natomiast w drugą strone jest już gorzej.
Poniżej umieszczam fragment kodu metody postep(int licznikGry) w której jest wykonywane przeskakiwanie klatek odpowiednich obiektów poprzez wywołanie odpowiedniej metody. To tak po krótce jeżeli chodzi o tą metode. Obiekt klasy Sprite ma się poruszyć o długość równą trzech kafelków, który ma rozmiar 24x24 i z powrotem. Proszę o wszelkie sugestie, jeżeli coś jest nie zrozumiałem to proszę pytać.

 
//Poruszanie się wszystkim przedmiotom
	public int postep(int licznikGry) {
		boolean poruszaj = true;
		int retWartosc = 0;
		
		for(int i = 0; i < monety.length; i++) {
			monety[i].postep(licznikGry);
		}
		for(int j = 0; j < wrogowie.length; j++) {
			wrogowie[j].postep(licznikGry);
		}
		while(poruszaj) {
			if(wrogowie[1].getX() != (SZEROKOSC_KAFELKA*3)) {
				wrogowie[1].setTransform(Sprite.TRANS_MIRROR);				
				wrogowie[1].move(-1, 0);
				
			} else if(wrogowie[1].getX() + SZEROKOSC_KAFELKA != SZEROKOSC_KAFELKA*6) {
				wrogowie[1].setTransform(Sprite.TRANS_NONE);
				while(wrogowie[1].getX() + SZEROKOSC_KAFELKA != SZEROKOSC_KAFELKA*6) {
					wrogowie[1].move(1, 0);					
				}
			}
			poruszaj = false;
		}			
		setPotrzebaRepaint();
		return(retWartosc);

W tym przypadku gdy próbuje poruszyć postać w prawą stronę to przeskakuje ona bardzo szybko bez wykonania przesunięcia w odpowiednim tępie. Zaznaczę że plansza składa się z tablicy 16x16 kafelków z czego każdy ma rozmiar 24x24.