# Alternative zu Thread Runnable



## Kenan89 (8. Apr 2012)

Jo Hallo,
ich bin dabei mir ein simples 2D Spiel zu programmieren. Kann ich auch hier veröffentlichen. 
Das Problem ist, das SPiel ist noch in den Startlöchern und ich brauche momentan eine Gameloop, die
z.B. alle 20 millisekunden das Spiel neu zeichnet. Jetzt gibt es ja den Thread. Da kann man mit sleep sagen, wie lange es warten soll. Mein Code schaut so aus:

```
public Main(int fWidth, int fHeight){
		
		initialObjects.doIt();
		objects = initialObjects.getObjects();
		
		this.setFocusable(true);
		this.requestFocus();
		this.addKeyListener(keylistener);
		
		frame.add(this);
		frame.setSize(fWidth, fHeight);
		frame.setLocationRelativeTo(null);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setVisible(true);
		
		Thread th = new Thread();
		th.start();
	}

public void run(){
		while(frame.isVisible()){
			try{
				System.out.println("So");
				Thread.sleep(1000);
				
			}
			catch(InterruptedException e){
				e.printStackTrace();
			}
			
		}
	}
```

Müsste jetzt nicht nach jeder Sekunde "So"  in der Konsole erscheinen? Tut es nämlich nicht.
Ausserdem, gibt es keine Methode, die eine Funktion nach einer bestimmten Zeit immer wieder aufruft? Somit hääte man auch eine Spielschleife.


----------



## Marco13 (8. Apr 2012)

Thread th = new Thread(*this*); // Falls das ein Runnable ist...

Schau dir auch mal http://www.java-forum.org/spiele-multimedia-programmierung/54795-quaxli-2d-spiele-tutorial.html an


----------



## Kenan89 (8. Apr 2012)

Gibt es so etwas wie JSON auch in Java? Weil dann könnte ich alle meine Spielobjekte in einem JSON definiren und mit Java in ein Object einlesen.


----------

