[DUVIDA] Problema para "spawnar" os players no PhotonNetwork
Página 1 de 1
[DUVIDA] Problema para "spawnar" os players no PhotonNetwork
Boa Tarde glr, estou com um problema que é o seguinte, estou criando uma lista com os players que entram na sala, e dps eu passo uma posição de spawn para cada player nessa lista. as posições que eu passo para os players estão em uma variável chamada spawns[], ela e uma array.
ate ai tudo bem, os players são instanciados corretamento, o problema e que quando eles recebem a posição dos spawns[] a camera so segue o dono da sala, e os outros que entraram não conseguem se mexer, e a camera deles não segue eles.
essa void esta sendo chamada dentro de outra void chamada StarMatch(), que esta dentro da void update().
Alguém pode me ajudar com esse problema ? por favor.
SCRIPT COMPLETO:
ate ai tudo bem, os players são instanciados corretamento, o problema e que quando eles recebem a posição dos spawns[] a camera so segue o dono da sala, e os outros que entraram não conseguem se mexer, e a camera deles não segue eles.
essa void esta sendo chamada dentro de outra void chamada StarMatch(), que esta dentro da void update().
Alguém pode me ajudar com esse problema ? por favor.
- Código:
void SpawnPlayersToStartMatch()
{
if (PhotonNetwork.IsMasterClient)
{
for (int z = 0; z < players.Count; z++)
{
Stop = true;
players[z].transform.position = new Vector3(spawns[id].position.x, 0.5f, spawns[id].position.z);
players[z].transform.rotation = spawns[id].rotation;
id++;
players[z].gameObject.SetActive(true);
}
}
}
- Código:
void StarMatch()
{
timeToStart -= Time.deltaTime;
txtCountDown.text = Mathf.Round(timeToStart).ToString();
txtCountDown.enabled = true;
if (timeToStart <= 0)
{
timeToStart = 0;
txtCountDown.enabled = false;
FindForOtherPlayers();
SpawnPlayersToStartMatch();
}
}
- Código:
void Update()
{
currentPlayer = PhotonNetwork.CurrentRoom.PlayerCount;
if (PhotonNetwork.CurrentRoom.PlayerCount == 3)
{
StarMatch();
}
}
SCRIPT COMPLETO:
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using Photon.Pun;
public class CountDownToStartMatch : MonoBehaviour
{
[SerializeField] private float timeToStart;
[SerializeField] private Text txtCountDown;
[SerializeField] private bool canStart;
[SerializeField] private float currentPlayer;
[SerializeField] private List<GameObject> players = new List<GameObject>();
[SerializeField] private bool hasMarked = false;
[SerializeField] private Transform[] spawns;
[SerializeField] private int id = 0;
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
currentPlayer = PhotonNetwork.CurrentRoom.PlayerCount;
if (PhotonNetwork.CurrentRoom.PlayerCount == 3)
{
StarMatch();
}
}
bool Stop;
bool test;
void FindForOtherPlayers()
{
if (Stop == false) {
foreach (GameObject player in GameObject.FindGameObjectsWithTag("Player"))
{
players.Add(player);
player.SetActive(false);
}
}
}
void StarMatch()
{
timeToStart -= Time.deltaTime;
txtCountDown.text = Mathf.Round(timeToStart).ToString();
txtCountDown.enabled = true;
if (timeToStart <= 0)
{
timeToStart = 0;
txtCountDown.enabled = false;
FindForOtherPlayers();
SpawnPlayersToStartMatch();
}
}
void SpawnPlayersToStartMatch()
{
if (PhotonNetwork.IsMasterClient)
{
for (int z = 0; z < players.Count; z++)
{
Stop = true;
players[z].transform.position = new Vector3(spawns[id].position.x, 0.5f, spawns[id].position.z);
players[z].transform.rotation = spawns[id].rotation;
id++;
players[z].gameObject.SetActive(true);
}
}
}
}
daniel123163- Membro
- PONTOS : 3614
REPUTAÇÃO : 1
Respeito as regras :
Re: [DUVIDA] Problema para "spawnar" os players no PhotonNetwork
esse Não e o script que instancia o player, ele apenas mover os players para uma posição,
que é um gameObject vazio chamado spawn.
que é um gameObject vazio chamado spawn.
daniel123163- Membro
- PONTOS : 3614
REPUTAÇÃO : 1
Respeito as regras :
Tópicos semelhantes
» Mmorpg para 1000 players ou +
» [DUVIDA] Da para colocar anúncios em jogos para PC ?
» Como procurar um lugar vazio para spawnar monstro
» como faco para spawnar a vida do inimigo junto com ele direto do prefabe
» [Duvida] movimentar personagem para frente e para traz numa plataforma 3d
» [DUVIDA] Da para colocar anúncios em jogos para PC ?
» Como procurar um lugar vazio para spawnar monstro
» como faco para spawnar a vida do inimigo junto com ele direto do prefabe
» [Duvida] movimentar personagem para frente e para traz numa plataforma 3d
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos