public void run() {
        setName(this.getClass().getSimpleName() + " [" + actors.playerId + "]");
        setPriority(NORM_PRIORITY + 2);

        while (gameState != STATE_STOPPED) {
            int frames = waitForNextFrame();

            for (Updateable c: callbacks)
                c.update(gameState == STATE_PAUSED);

            // Don't update the game state if we are paused
            if(gameState == STATE_PAUSED)
                continue;

            checkCollision();

            // Update the actors
            actors.update(frames);
        }
    }