У меня есть статический метод в Player.cs
, который я не могу вызвать.Это должно позволить мне использовать его и обновить проигрыватель при вызове через GameManager.cs
Я попытался изменить имя ссылки на себя, однако это просто издает больше ошибок.
GameManager.CS
public class GameManager : MonoBehaviourPunCallbacks
{
public Player PlayerPrefab;
[HideInInspector]
public Player LocalPlayer;
private void Awake()
{
if (!PhotonNetwork.IsConnected)
{
SceneManager.LoadScene("Menu");
return;
}
}
// Use this for initialization
void Start()
{
player.RefreshInstance(ref LocalPlayer, PlayerPrefab);
}
// Update is called once per frame
void Update()
{
}
public override void OnPlayerEnteredRoom(Photon.Realtime.Player newPlayer)
{
base.OnPlayerEnteredRoom(newPlayer);
player.RefreshInstance(ref LocalPlayer, PlayerPrefab);
}
}
Player.cs
public class Player : MonoBehaviourPun
{
public static void RefreshInstance(ref Player player, Player Prefab)
{
var position = Vector3.zero;
var rotation = Quaternion.identity;
if (player != null)
{
position = player.transform.position;
rotation = player.transform.rotation;
PhotonNetwork.Destroy(player.gameObject);
}
player = PhotonNetwork.Instantiate(Prefab.gameObject.name, position, rotation).GetComponent<PlayerController>();
}
}
Ошибка, которую я получаю
CS0117: `Photon.Realtime.Player' does not contain a definition for
`RefreshInstance'
Извините, если этого не хватает качества, это мой первый пост.