Методы команд не работают на клиенте, работают на хосте
У меня проблема в Unity 5 UNET. У меня есть метод, и я его выполняю. Он работает на сервере, но на клиенте он не вызывается, поэтому я подумал, что у клиента нет прав доступа, но затем я проверил печать "hasAuthority" и вернул значение true(это означает, что у клиента есть права доступа). Вот мой код:
void Start() {
if (GameObject.FindObjectOfType<ButtonScript>().Buttonn)
{
IsEye = true;
}
if (!GameObject.FindObjectOfType<ButtonScript>().Buttonn)
{
IsEye = false;
}
if (IsEye && isLocalPlayer) {
print("Does have authority: " + gameObject.GetComponent<NetworkIdentity>().hasAuthority);
CmdSetEyeParent();
}
if (!IsEye && isLocalPlayer)
{
print("Does have authority: " + gameObject.GetComponent<NetworkIdentity>().hasAuthority);
CmdSetRobotParent();
}
}
[Command]
public void CmdSetEyeParent() {
RobotParent.SetActive(false);
EyeParent.SetActive(true);
gameObject.GetComponent<BoxCollider>().center = new Vector3(0, 2.99f, 0.06880748f);
gameObject.GetComponent<BoxCollider>().size = new Vector3(6.42f, 9.2f, 5.52f);
anim = EyeParent.GetComponent<Animator>();
}
[Command]
public void CmdSetRobotParent() {
RobotParent.SetActive(true);
EyeParent.SetActive(false);
gameObject.GetComponent<BoxCollider>().center = new Vector3(0, 0.1912432f, 0.06880748f);
gameObject.GetComponent<BoxCollider>().size = new Vector3(0.812993f, 3.379633f, 1.02866f);
}
Пожалуйста, помогите мне, Это сводит меня с ума в течение нескольких часов,