纳金网
标题:
Network 客户端设置代码
[打印本页]
作者:
烟雨
时间:
2015-8-30 00:12
标题:
Network 客户端设置代码
首先建一个空对象 然后填加Network View组件 之后给客户端添加脚本
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
public class ServerController : MonoBehaviour {
public Text messageText;
public Text connectCount;
public Text m;
private string [] xing;
private string [] ming;
private Dictionary <string, string> players;
private NetworkView v;
private Dictionary <string, ArrayList> playersMessage;
void Start () {
xing = new string [] {
"赵", "钱", "孙", "李", "周",
"吴", "郑", "王", "冯", "陈",
"楮", "卫", "蒋", "沈", "韩",
"杨", "朱", "秦", "尤", "许",
"何", "吕", "施", "张", "孔",
"曹", "严", "华"};
ming = new string [] {
"狗蛋", "JJ", "尼玛", "尼美", "厂长",
"铁锤", "脑残", "酸菜", "禽兽", "水杯"};
playersMessage = new Dictionary <string, ArrayList> ();
players = new Dictionary <string, string> ();
v = GetComponent <NetworkView> ();
// 初始化服务器
Network.InitializeServer (30, 2333, false);
}
// 服务器初始化完毕
void OnServerInitialized () {
messageText.text = "服务器初始化完毕!";
}
// 有客户端链接到服务器
void OnPlayerConnected (NetworkPlayer p) {
string n = NamedPlayer (p);
players.Add (p.ipAddress, n);
messageText.text = "玩家: " + n + " 已连接!";
connectCount.text = Network.connections.Length.ToString ();
}
// 客户端断开连接
void OnPlayerDisconnected (NetworkPlayer p) {
messageText.text = "玩家: " + players [p.ipAddress] + " 已退出!";
players.Remove (p.ipAddress);
connectCount.text = Network.connections.Length.ToString ();
}
string NamedPlayer (NetworkPlayer p) {
int x = Random.Range (0, 28);
int m = Random.Range (0, 10);
string name = xing [x] + ming [m];
v.RPC ("ReceivedMessage", p, name);
return name;
}
public void DidClickButton () {
NetworkView vv = GetComponent <NetworkView> ();
vv.RPC ("Send", RPCMode.All, "aa", "bb");
}
[RPC]
public void Send (string name, string message) {
m.text += name + ": " + message + "\n";
}
}
复制代码
欢迎光临 纳金网 (http://go.narkii.com/club/)
Powered by Discuz! X2.5