Синтаксис:
Используется csharp
if(PhotonNetwork.isMasterClient){
if (rpg != null){
if (rpg.GetComponent<PhotonView> ().owner == PhotonNetwork.player) {
Vector3 vectorRotate = RaycastRotate (new Vector2(_x, _y));
RotateRPG(vectorRotate);
}
}
}
if (rpg != null){
if (rpg.GetComponent<PhotonView> ().owner == PhotonNetwork.player) {
Vector3 vectorRotate = RaycastRotate (new Vector2(_x, _y));
RotateRPG(vectorRotate);
}
}
}
дальше функция:
Синтаксис:
Используется csharp
void RotateRPG(Vector3 vector){
rpg.OnRotationTransform (vector.x, vector.y, vector.z);
}
rpg.OnRotationTransform (vector.x, vector.y, vector.z);
}
Как вы понимаете функция вызывает метод в самом классе rpg
Синтаксис:
Используется csharp
using UnityEngine;
using System.Collections;
public class Rpg : Photon.MonoBehaviour {
public void OnRotationTransform(float x, float y, float z){
this.photonView.RPC("RotationAngel", PhotonTargets.MasterClient, x, y, z);
}
[PunRPC]
void RotationAngel (float x, float y, float z, PhotonMessageInfo info) {
this.photonView.RPC ("RotationAngelAll", PhotonTargets.All, x, y, z);
}
[PunRPC]
void RotationAngelAll (float x, float y, float z) {
// Debug.Log (x+", "+ y+", "+z);
transform.LookAt(new Vector3(x, y, z));
}
}
using System.Collections;
public class Rpg : Photon.MonoBehaviour {
public void OnRotationTransform(float x, float y, float z){
this.photonView.RPC("RotationAngel", PhotonTargets.MasterClient, x, y, z);
}
[PunRPC]
void RotationAngel (float x, float y, float z, PhotonMessageInfo info) {
this.photonView.RPC ("RotationAngelAll", PhotonTargets.All, x, y, z);
}
[PunRPC]
void RotationAngelAll (float x, float y, float z) {
// Debug.Log (x+", "+ y+", "+z);
transform.LookAt(new Vector3(x, y, z));
}
}
на самом предмете висит скрипт PhotonView в обсерве этот скрипт и PhotonTransformView, галочки стоят на SinchronizePosition и SinchronizeRotation.
Пока оружие у клиента почемуто поворот не работает, только как мастер клиент берёт и дебаги сразу становитс видно в клиенте и видно так. Почему?
З.Ы Забыл сказать что ружьё поворачиваетс когда поворачиваетс персонаж, ну тоесть смотрит в ту сторону куда персонаж, может какой то конфликт со скриптом PhotonTransformView? Тогда может лучше отключить SinchronizeRotation?