// Update is called once per frame void Update() { if (counter > 0) { if (Vector3.Distance(transform.position, nav.destination) < 0.5f) { counter--; if (counter > 0) { nav.destination = patrolPoints[Random.Range(0, patrolPoints.Length)].transform.position; } else { nav.destination = exits[Random.Range(0, exits.Length)].transform.position; } } } if (counter <= 0) { if (Vector3.Distance(transform.position, nav.destination) < 1.0f) { spawner.SpawnAI(); Destroy(gameObject); } } }
private void SpawnPlayer(float alterPlayerCount) { if (OfflineMode.modoDoOffline && !isTutorial) { aiSpawner = FindObjectOfType <AISpawner>(); aiSpawner.SpawnAI(); } if (alterPlayerCount > allPlayersInSession) //Contador pra sincronizar e adicionar quantos players entraram na cena { allPlayersInSession = alterPlayerCount; } allPlayersInSession++; if (PhotonNetwork.PlayerList.Length == allPlayersInSession || alterPlayerCount == 0) //Checando se todos entraram, se sim, todos são criados ao mesmo tempo(se falhar, outro player vai passar pelo mesmo) { StartCoroutine("UniteSynchronization", delayToCreate); //StartCoroutine("SpawnAI"); } }