IEnumerator UpdateStillPositions(int inShotCount)
    {
        while (cueController == null || cueController.stillBallPositions == null || cueController.stillBallPocketed == null || !cueController.allIsSleeping)
        {
            yield return(null);
        }

        cueController.updateSlaveStillPositions(inShotCount);

        cueController.CheckForSnookerSelf();

        cueController.EndOfShotHouseKeeping();
    }