UNet实战系列(二)

来源:互联网 发布:日语 网络聊天 编辑:程序博客网 时间:2024/05/16 07:48

    经过上一节的学习,同学们都知道Network Manager HUD组件和Network Manager组件要配合着使用。Network Manager HUD为Network Manager提供简单的登陆界面,可是我们不想用简易的界面,我们想自己做属于自己项目的高大上的界面该怎么办呢?这篇文章讲讲如何自己创建一个简单的Network Manager 界面。

   一.   跟上一篇一样,我们首先要创建一个空对象命名为NetworkManager,为其添加Network Manager组件。

   二 . 为Network Manager对象添加新脚本,命名为SimpleNetworkGUI,为其添加如下代码;

using UnityEngine;using UnityEngine.Networking;public class SimpleNetworkGUI : MonoBehaviour{//是否开启网络功能(是否连接网络)bool isHaveNetworkRole = false;void Start(){//如果isHaveNerworkRole为true则隐藏Start Host按钮,Start Server按钮,Start Client按钮,显示stop按钮//如果isHaveNerworkRole为false则显示Start Host按钮,Start Server按钮,Start Client按钮,隐藏stop按钮isHaveNetworkRole = false;}private void OnDisconnected(){isHaveNetworkRole = false;}void OnGUI(){if(isHaveNetworkRole){if(GUI.Button(new Rect(Screen.width / 2 - 80, Screen.height / 2 - 12, 160, 24), "Stop")){ NetworkManager.singleton.StopServer(); NetworkManager.singleton.StopClient();     NetworkManager.singleton.StopHost ();OnDisconnected();}return;}if(GUI.Button(new Rect(Screen.width / 2f - 80, Screen.height / 2 - 48, 160, 24), "Start Host")){var client  = NetworkManager.singleton.StartHost();isHaveNetworkRole = true;}if(GUI.Button(new Rect(Screen.width / 2f - 80, Screen.height / 2 - 12, 160, 24), "Start Server")){isHaveNetworkRole = NetworkManager.singleton.StartServer();}if(GUI.Button(new Rect(Screen.width / 2f - 80, Screen.height / 2 + 24, 160, 24), "Start Client")){var client = NetworkManager.singleton.StartClient();isHaveNetworkRole = true;}}}


三 .

四 . 运行起来看看效果


结束了 哇咔咔,o(^▽^)o 这次的内容是不是超级简单。

0 0
原创粉丝点击