您的位置:首页 > 移动开发 > Unity3D

Unity 网游客户端Dome

2013-07-14 21:31 162 查看
using UnityEngine;
using System.Collections;

public class Client1 : MonoBehaviour 
{
	//服务器的IP
	string IP = "192.168.0.114";
	//端口号,要与服务器一直
	int Port = 10000;
	//输入信息
	string inputMessage = "Input";
	//收到的信息
	string Message = "";
	//滚动视图的位置
	Vector2  scrollPosition;
	
	void OnGUI()
	{
		//网络连接状态
		switch(Network.peerType)
		{
			//服务器未开启
		case NetworkPeerType.Disconnected:
			StartConnect();
		break;
		case NetworkPeerType.Server:
			
		break;
			//成功连接运行客户端
		case NetworkPeerType.Client:
			OnClient();
			break;
			
		}
	}
	
	//开始连接
	void StartConnect()
	{
		if(GUILayout.Button("Connection"))
		{
			//开始连接
		NetworkConnectionError error = Network.Connect(IP,Port);
		Debug.Log("ConnectionStatus :" + error);
		}
	}
	
	void OnClient()
	{
		//创建一个滚动视图用来显示聊天信息
		scrollPosition = GUILayout.BeginScrollView(scrollPosition,GUILayout.Width(200),GUILayout.Height(500));
		//显示聊天信息
		GUILayout.Box(Message);
		//创建水平方向视图
		GUILayout.BeginHorizontal();
		//编辑输入内容
		inputMessage = GUILayout.TextArea(inputMessage);
		//发送内容
		if(GUILayout.Button("sendMessage"))
		{
			//使用RPC发送内容
			networkView.RPC("RequestMessage",RPCMode.All,inputMessage);
		}
		//结束水平方向视图
		GUILayout.EndHorizontal();
		
		//断开连接
		if(GUILayout.Button("Disconnection"))
		{
			
			Network.Disconnect();
			//重置聊天信息
			Message = "";
		}
		//结束滚动视图
		GUILayout.EndScrollView();
		
	}
	//接受消息
	[RPC]
	void RequestMessage(string message,NetworkMessageInfo info)
	{
		Message += "\n" + "Sender:" + info.sender + ":" + message;
	}
	
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: