public void run() {
		
		long time = System.currentTimeMillis();
		
		while ( true ) {
			
			long thisTime = System.currentTimeMillis();
			
			if ( thisTime - time < FPS_TIME ) {
				continue;
			}
			
			int len = SceneDirector.getLength();
			int last = len - 1;
			
			for ( int i = 0; i < len; i++ ) {
				Scene scene = SceneDirector.getScene( i );
				scene.getKeyEvent().updateKeyEvent( gameWindow.getPressKey(), gameWindow.getReleaseKey() );
				scene.processUpdaste( ( i < last ) );
				scene.getKeyEvent().disposeKeyEvent();
			}
			
			gameWindow.getGamePanel().repaint();
			gameWindow.disposeKey();
			
			time = thisTime;
		}
		
	}