@Override public void update(GameContainer gc, int delta) throws SlickException { rand.nextDouble(); if (System.currentTimeMillis() - lastUpdate > simulationDelay) { lastUpdate = System.currentTimeMillis(); runSimulation(); } Airplane airplaneHandle; Iterator<Airplane> it; it = airQueue.iterator(); while (it.hasNext()) { airplaneHandle = it.next(); airplaneHandle.update(delta); } it = groundQueue.iterator(); while (it.hasNext()) { airplaneHandle = it.next(); airplaneHandle.update(delta); } airplaneHandle = runway.getCurrentAirplane(); if (airplaneHandle != null) airplaneHandle.update(delta); }