Учитывая сходство вашего кода:
Был ли именно этот вопрос еще не задан и не дан ответ здесь ? (Только то, что вы приняли глупый ответ ^^)
В любом случае
хорошо ... это не так, как работает [PunRPC]
. Его нужно будет вызывать через сеть где-нибудь, например, через
var photonView = PhotonView.Get(this);
photonView.RPC("Update", RpcTarget.All);
HOWEVER , вы определенно не захотите синхронизировать сам метод Update
каждый кадр, а скорее только порождение .
Скорее всего, вам лучше использовать PhotonNetwork.Instantiate
public class SpawnFix : MonoBehaviour
{
public GameObject[] powersPrefab;
public Transform[] points;
public float beat = (60 / 130) * 2;
private float timer;
// Update is called once per frame
void Update()
{
// only run on the master client
if(!PhotonNetwork.isMasterClient) return;
if (timer > beat)
{
PhotonNetwork.Instantiate(
powersPrefab[Random.Range(0, 2)].name,
points[Random.Range(0, points.Length)].position,
Quaternion.idendity,
0);
timer -= beat;
}
timer += Time.deltaTime;
}
}
Для этого префабы должны быть зарегистрированы в Фотоне как вызываемые объекты.