Member 13130955 Ответов: 0

Передача сообщений ч/б “только LAN server” и “LAN client” на разных сценах в unity


Привет, я хочу передавать сообщение туда и обратно на клиент и сервер, которые находятся на разных сценах, как я могу это сделать в Unity?**

Ниже приведен мой сценарий:-
У меня есть 5 сцен-

1. BaseScene (2) OfflineScene (3) OnlineScene (4) ClientOnline (5)
ServerOnline.

Все эти сцены имеют кнопку с текстом названий сцен.
На базовой сцене я добавил пустой игровой объект, на который я поместил "customNetworkScript", который простирается от скрипта "NetworkManager", а также поместил на него "Network Manager HUD". Ниже приведен код, который я поместил в "customNetworkScript":-
public class customNetworkScript : NetworkManager {
            	
            public override void OnClientSceneChanged(NetworkConnection conn)
            	{
            		SceneManager.LoadScene("ClientOnline", LoadSceneMode.Single);
            		ClientScene.Ready(conn);
            		ClientScene.AddPlayer(conn, 0);
            	}
            
            	public override void OnServerSceneChanged(string sceneName)
            	{
            		SceneManager.LoadScene("ServerOnline", LoadSceneMode.Single);
            	}
        }

Я поставил "OfflineScene" и "OnlineScene" в полях, под названием "происшествия оффлайн" и "онлайн-сцена", в "Диспетчере сети" компонент. Также помещается пустой панелевоз в "икру Инфо" в "customNetworkScript" и его компонента "сетевой идентификатор" на нем. Теперь, когда я запускаю проект, на одном экземпляре я нажимаю на "только сервер локальной сети", а на другом экземпляре я нажимаю на "клиент локальной сети". И я получаю свои соответствующие сцены на обоих экземплярах -> "ServerOnline" появляется на экземпляре, где я нажимаю "LAN Server only", а "ClientOnline" появляется на другом экземпляре.
Я хочу, чтобы при нажатии на кнопку "ServerOnline" строка сообщения передавалась на сцену "ClientOnline", и то же самое происходит в обратном направлении, когда я нажимаю на кнопку "ClientOnline".

Я пробовал "Rpc" и "Command", но они работают только тогда, когда я нажимаю на "LAN Host" вместо "LAN Server Only".
Я очень старался, но не смог найти ничего полезного. Мне будет очень приятно, если кто-нибудь подробно объяснит мне вместе с кодом, как я могу этого добиться.

Что я уже пробовал:

Я пробовал "Rpc" и "Command", но они работают только тогда, когда я нажимаю на "LAN Host" вместо "LAN Server Only".
Я очень старался, но не смог найти ничего полезного. Мне будет очень приятно, если кто-нибудь подробно объяснит мне вместе с кодом, как я могу этого добиться.

Большое вам спасибо за Ваше время.

0 Ответов