// Called when the build phase is over. Activates physics for objects that need it, etc. public void StartGame() { gameBegan = true; foreach (GameObject gameObj in objectsToEnable) { if (gameObj != null) { gameObj.SetActive(true); } } // Find all InteractiveObjects in the game and BeginGame on each one GameObject[] allInteractiveObjects = GameObject.FindGameObjectsWithTag("InteractiveObject"); foreach (GameObject gameObj in allInteractiveObjects) { InteractiveObject interObj = gameObj.GetComponent <InteractiveObject>(); interObj.BeginGame(); } // Get the final positions of all player placed objects invController.GetFinalValues(); invController.RestrictInventory(true); // No player actions after beginning dragScript.ResetDraggedObjectValues(); dragScript.enabled = false; adjustScript.HideButtons(); adjustScript.enabled = false; wireEditor.enabled = false; }