先弄??接管理的代? Connection.js:
-----------------------------------------------------------------------------------------
var ServerAddr : String = "127.0.0.1";
var ServerPort : int = 2224;
function OnGUI()
{
GUILayout.BeginArea(Rect(Screen.width-200,0,200,200));
if (Network.peerType = = NetworkPeerType.Disconnected)
{
GUILayout.Label("Connection status: Disconnected");
ServerAddr = GUILayout.TextField(ServerAddr, GUILayout.MinWidth(100));
ServerPort = parseInt(GUILayout.TextField(ServerPort.ToString()));
if (GUILayout.Button("Connect as client"))
{
Network.Connect(ServerAddr, ServerPort);
}
if (GUILayout.Button("Start Server"))
{
Network.InitializeServer(32, ServerPort,false);
}
}
else
{
if (Network.peerType = = NetworkPeerType.Connecting)
{
GUILayout.Label("Connection status: Connecting");
}
else if (Network.peerType = = NetworkPeerType.Client)
{
GUILayout.Label("Connection status: Connected");
}
else if (Network.peerType = = NetworkPeerType.Server)
{
GUILayout.Label("Connection status: Server!");
GUILayout.Label("Connection: " + Network.connections.length);
}
if (GUILayout.Button("Disconnect"))
{
Network.Disconnect(200);
}
}
GUILayout.EndArea();
}
-----------------------------------------------------------------------------------------
然后弄? Chat.js,???聊天的??:
-----------------------------------------------------------------------------------------
var chatWords : String = "";
var inputWord : String = "input words here."; //設為多重變數
function OnGUI ()
{
if (Network.isClient) //如果連客戶端連線
{
GUILayout.BeginArea(Rect(0,0,300,600));
GUILayout.TextArea(chatWords);
GUILayout.BeginHorizontal(); //此內部呈現的所有控件將被水平放置彼此相鄰
inputWord = GUILayout.TextArea(inputWord); //一個面積 放置文字
if (GUILayout.Button("Send")) //如果按下 傳送
{
networkView.RPC("SomeoneSay", RPCMode.All, inputWord); //傳送給ALL.文字
inputWord = ""; //傳送文字""
}
GUILayout.EndHorizontal(); //關閉通過EndHorizontal。
if (GUILayout.Button("Disconnect"))
{
Network.Disconnect(200);
}
GUILayout.EndArea();
}
}
@RPC
function SomeoneSay(sayWord : String, info : NetworkMessageInfo)
{
chatWords = chatWords + "\n" + info.sender + ":" + sayWord;
}
-----------------------------------------------------------------------------------------
好,代?就完?了。??下面的一些拖拽操作:
1. 建立一??景,把 Connection.js、Chat.js ?到 MainCamera 上
2. ? MainCamera 弄? NetworkView Component,并? State Synchronization = off,因?不需要同步位置等等信息。
要先建立一個伺服器 (伺服器本身不能聊天) 再加入 2人 此2人可以聊天
----------------------------------------------------------------
- Jan 20 Tue 2015 09:25
CHAT 聊天室
全站熱搜
留言列表