Как вызвать функцию на всех клиентах, когда хост покидает лобби в лобби Unity?C#

Место общения программистов C#
Ответить
Anonymous
 Как вызвать функцию на всех клиентах, когда хост покидает лобби в лобби Unity?

Сообщение Anonymous »

Пакет автоматически отключает всех игроков и удаляет лобби, когда хост уходит, но мне нужно отличать игроков, покидающих лобби самостоятельно, от вынужденных покинуть лобби из-за удаления лобби.
Я пробовал много разных подходов, и ни один из них не сработал. Я новичок в мультиплеере Unity и точно не знаю, почему некоторые из них не сработали, но подведу итог:
*Я пытался проверить, существует ли лобби после игрока. покидает его, но лобби удаляется после ухода игрока, поэтому оно всегда остается там
*Я пытался прослушать удаление лобби, подписавшись на LobbyDeleted, но по какой-то причине событие никогда не запускается. p>
*Я пытался вызвать Rpc, когда хост отключается, но этот метод никогда не работает. Я предполагаю, что это потому, что rpc не может быть вызван после отключения хоста.
*Я пытался прослушивать события playerleft, но когда хост уходит, он автоматически кикает и других игроков, поэтому клиент видит себя меня кикнули до того, как хост по какой-то причине покинул лобби, или я сделал что-то еще не так.
*Я пытался проверить, находится ли хост еще в лобби, когда игрок покидает лобби, но опять же, даже если это так хост уходит, клиенты отключаются раньше хоста (или так кажется)

Подробнее здесь: https://stackoverflow.com/questions/791 ... y-in-unity
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»