protected void OnDisable()
 {
     if (!rigidbody || !rigidbody.isKinematic)
     {
         if (transform.parent || transform.root != BlockLoaderInfo.GetBlockPrefabsParent() || transform.root != Machine.Active().BuildingMachine)
         {
             if (transform.root.name != "AUTO SAVER" || transform.root.name == Machine.Active().SimulationMachine.name)
             {
                 OnSimulateExit();
             }
         }
     }
 }
 protected void Start()
 {
     RefreshComponents();
     if (transform.parent != BlockLoaderInfo.GetBlockPrefabsParent())
     {
         if (transform.FindChild("FireTrigger"))
         {
             fireController = transform.FindChild("FireTrigger").GetComponent <FireController>();
         }
         MonoStart();
         if (transform.parent == Machine.Active().BuildingMachine)
         {
             BlockPlaced();
         }
     }
 }