Я пытаюсь отправить Rpc конкретному игроку, но я не могу использовать функцию get из класса Player, сначала я должен установить переменную player, но я не могу сделать переменную player равной чему-либо кроме нуля, если я не могу сослаться на игрока. Я не мог найти какую-либо информацию после того, как в течение часа искал в интернете.
Я пытался использовать ссылки на photonView и пытался ссылаться на Player через GetComponent (); которая всегда заканчивалась ошибкой «ArgumentException: GetComponent требует, чтобы запрошенный компонент« Player »был производным от MonoBehaviour или Component или являлся интерфейсом»
До перехода Photon на Photon 2 он работал нормально, и мой код был:
other.photonView.RPC("Reflect", PhotonPlayer.Find(other.GetComponent<PhotonView>().ownerId))
И после нескольких часов попыток исправить это у меня есть:
other.photonView.RPC("Reflect", GameObject.Find("Game Manager").GetComponent<Player>().Get(other.GetComponent<PhotonView>().OwnerActorNr));
Я ожидал, что смогу найти игрока по идентификатору / номеру актера, не нуждаясь в уже упоминавшемся игроке, но, похоже, мне нужна эта ссылка. Это не имеет никакого смысла для меня, почему или что я сделал неправильно.