/// ///////////////////////////////////////////////////////// /// Methods /// ///////////////////////////////////////////////////////// // Reinit demolished mesh object public static void ResetRigid(RayfireRigid scr) { // Object can't be reused if (ObjectReuseState(scr) == false) { return; } // Save faded/demolished state before reset int faded = scr.fading.state; bool demolished = scr.limitations.demolished; // Reset tm if (scr.reset.transform == true) { RestoreTransform(scr); } // Reset activation TODO check ifi t was Kinematik if (scr.activation.activated == true) { scr.simulationType = SimType.Inactive; } // Reset rigid props Reset(scr); // Stop all cors in case object restarted scr.StopAllCoroutines(); // Reset if object fading/faded if (faded >= 1) { ResetFade(scr); } // Demolished. Restore if (demolished == true) { ResetMeshDemolition(scr); } // Restore cluster even if it was not demolished ResetClusterDemolition(scr); // Activate if deactivated if (scr.gameObject.activeSelf == false) { scr.gameObject.SetActive(true); } // Start all coroutines scr.StartAllCoroutines(); }