private IEnumerator WaitForProvider()
 {
     while (Provider == null)
     {
         yield return(WaitFor.EndOfFrame);
     }
     airlockElectronics = Provider.GetComponentInChildren <AirlockElectronics>();
     UpdateCurrentAcceessText();
     OpenGeneralCategory();
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Spawn airlock and add access from airlock Electronics.
        /// </summary>
        /// <param name="airlockPrefab"></param>
        private void ServerSpawnAirlock(GameObject airlockPrefab)
        {
            var airlock = Spawn.ServerPrefab(airlockPrefab, SpawnDestination.At(gameObject)).GameObject;

            if (airlockElectronicsSlot.IsOccupied)
            {
                AccessRestrictions airlockAccess      = airlock.GetComponentInChildren <AccessRestrictions>();
                GameObject         airlockElectronics = airlockElectronicsSlot.ItemObject;
                AirlockElectronics electronics        = airlockElectronics.GetComponent <AirlockElectronics>();
                airlockAccess.restriction = electronics.CurrentAccess;
            }
        }