// this chain is pretty ugly IEnumerator UpdateSlaveStillPositions(int inShotCount) { while (cueController.stillBallPocketed == null || cueController.stillBallPositions == null) { yield return(null); } yield return(new WaitForEndOfFrame()); // slave would sprodically supply some user info and other info to master. but this doesn't change our fail scenario, in which slaves are strictly listening and master talking // we need to make sure that game should be able to carry on without any functional glitches even when the slave is completely slient if (cueController.NetworkSlaveInControl()) { cueController.updateSlaveStillPositions(inShotCount); } }