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);
}
}