您当前的位置: 首页 >  unity

程序员正茂

暂无认证

  • 2浏览

    0关注

    283博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Unity3d NetworkManager自定义界面

程序员正茂 发布时间:2020-04-22 11:16:49 ,浏览量:2

 

using System.Collections;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.UI;

public class NetworkUi : MonoBehaviour {

	//NetworkManager组件
	public NetworkManager networkManager;

	//开启主机按钮
	public Button btnStartHost;

	//连接主机按钮
	public Button btnConnectHost;

	//主机IP输入
	public InputField inputHostIp;

	//连接提示
	public Text textPrompt;
	// Use this for initialization
	void Start () {
		btnStartHost.onClick.AddListener(delegate ()
		{
			networkManager.networkPort = 7777;
			networkManager.StartHost();

			//其他界面处理....
		});

		btnConnectHost.onClick.AddListener(delegate ()
		{
			if(string.IsNullOrEmpty(inputHostIp.text))
			{
				textPrompt.text = "请输入IP";
				return;
			}

			if(inputHostIp.text != "localhost" && !IpIsValid(inputHostIp.text))
			{
				textPrompt.text = "请输入正确IP";
				return;
			}

			networkManager.networkPort = 7777;
			networkManager.networkAddress = inputHostIp.text;
			networkManager.StartClient();

			//其他界面处理....
		});
	}

	//IP地址是否合法
	public bool IpIsValid(string ip)
	{
		string patternIp = @"^((25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))$";
		return Regex.IsMatch(ip, patternIp);
	}
}

 

关注
打赏
1660743125
查看更多评论
立即登录/注册

微信扫码登录

0.0880s