Пример #1
0
 public Corridor(GameObject parent, corridorType corrType = corridorType.DEFAULT)
 {
     this.parentObject = parent;
     this.type         = corrType;
     this.CalculateCorridor();
     listOfCorridors.Add(this);
 }
Пример #2
0
 public Corridor(Vector3 start, Vector3 end, corridorType corrType = corridorType.DEFAULT)
 {
     this.parentObject = null;
     this.startPoint   = start;
     this.endPoint     = end;
     this.type         = corrType;
     this.CalculateCorridor();
     listOfCorridors.Add(this);
 }
Пример #3
0
 public Corridor(GameObject start, GameObject end, corridorType corrType = corridorType.DEFAULT)
 {
     this.parentObject = null;
     this.startPoint   = start.transform.position;
     this.endPoint     = end.transform.position;
     this.type         = corrType;
     this.CalculateCorridor();
     listOfCorridors.Add(this);
 }
Пример #4
0
 public static void ChangeActiveAllOfType(corridorType type)
 {
     foreach (Corridor corr in Corridor.listOfCorridors)
     {
         if (corr.type == type)
         {
             if (corr.isActive)
             {
                 corr.prefabObject.SetActive(false);
                 corr.isActive = false;
             }
             else if (!corr.isActive)
             {
                 corr.prefabObject.SetActive(true);
                 corr.isActive = true;
             }
         }
     }
 }
Пример #5
0
        public static void DestroyAllOfType(corridorType type)
        {
            List <Corridor> instancesToRemove = new List <Corridor>();

            foreach (Corridor corr in Corridor.listOfCorridors)
            {
                if (corr.type == type)
                {
                    corr.prefabObject.SetActive(false);
                    Destroy(corr.prefabObject);
                    instancesToRemove.Add(corr);
                }
            }

            foreach (Corridor removeCorr in instancesToRemove)
            {
                Corridor.listOfCorridors.Remove(removeCorr);
            }

            instancesToRemove.Clear();
        }
Пример #6
0
        public static void CreateCorridorBetween(Vector3 start, Vector3 end, GameObject prefab, corridorType type)
        {
            Corridor   tempCorr   = new Corridor(start, end, type);
            GameObject tempObject = Instantiate(prefab, new Vector3(0, 0, 0), Quaternion.identity);

            tempObject.transform.localScale = tempCorr.size;
            tempObject.transform.position   = tempCorr.center;
            tempCorr.prefabObject           = tempObject;
            Corridor.lastPosVector          = tempCorr.endPoint;
        }