// Make Random Position Queue private void Awake() { if (_instance != null || GuestPrefab == null) { Debug.LogError("Guest Manager Has Duplicated or Prefab Missing, Please Check Object"); gameObject.SetActive(false); } _instance = this; _guestSpawnWait = new WaitForSeconds(GuestSpawnRate); if (photonView.IsMine) { List <BurgerTrayController> guestSeats = transform .GetComponentsInChildren <BurgerTrayController>() .ToList <BurgerTrayController>(); int randomIndex; while (guestSeats.Count != 0) { randomIndex = Random.Range(0, guestSeats.Count - 1); BurgerTrayController burgetTray = guestSeats[randomIndex]; _counterQueue.Enqueue(new CounterData(burgetTray.transform.position, burgetTray.GetComponent <BurgerTrayController>(), burgetTray.transform.name)); guestSeats.RemoveAt(randomIndex); } } }
public CounterData(Vector3 position, BurgerTrayController component, string counterName) { CounterPosition = position; CounterComponent = component; CounterName = counterName; }