Piszę prostą grę. Gdzie użytkownik wciśnie przycisk myszy, tam obiekt typu JLabel z ustawioną ikoną "poleci". Kod wygląda tak:

@Override
	public void mousePressed(MouseEvent e) {
		myX = ship.getX();
		myY = ship.getY();
		
		goToX = e.getPoint().x;
		goToY = e.getPoint().y;
		
		new Thread(() -> {
				do {
					if(myX < goToX-(ship.getWidth()/2)) {
						++myX;
						e.translatePoint(e.getComponent().getLocation().x-myX, e.getComponent().getLocation().y-myY);
						ship.setLocation(myX, myY);
					} 
					if(myX > goToX-(ship.getWidth()/2)) {
						--myX;
						e.translatePoint(e.getComponent().getLocation().x-myX, e.getComponent().getLocation().y-myY);
						ship.setLocation(myX, myY);
					}
					if(myY > goToY-(ship.getHeight()/2)) {
						--myY;
						e.translatePoint(e.getComponent().getLocation().x-myX, e.getComponent().getLocation().y-myY);
						ship.setLocation(myX, myY);
					} 
					if(myY < goToY-(ship.getHeight()/2)) {
						++myY;
						e.translatePoint(e.getComponent().getLocation().x-myX, e.getComponent().getLocation().y-myY);
						ship.setLocation(myX, myY);
					}
					
					try {
						Thread.sleep(5);
					} catch (InterruptedException e1) {
						// TODO Auto-generated catch block
						e1.printStackTrace();
					}
				}while(myX != goToX-(ship.getWidth()/2) || myY != goToY-(ship.getHeight()/2));
				
		}).start();
	}

Chodzi o to, że pozycja zmieniania jest co 5 milisekund. Przez to ikona na JLabel ciągle miga. Można ustawić jakieś płynne przemieszczanie tego obiektu?