前言
經過上次unity自身網絡協議的學習,結合NGUI插件,就能夠很快的做出一個聊天室demo了,廢話不多說,上圖
下面的輸入框是用來,輸入暱稱和聊天內容的。
實現
1 使用ngui搭建一個簡單的聊天窗口,
2 將將創建連接服務器腳本掛在MainCamera上
3 編輯一個MyChatInput腳本來控制信息輸入,並且將內容顯示到面板上
using UnityEngine;
using System.Collections;
public class MyChatInput : MonoBehaviour {
private UIInput input;
public UITextList textlist;
public UIInput nicheng;
void Awake() {
input = this.GetComponent<UIInput>();
}
/*控制信息的填寫和發送*/
public void OnChatSubmit() {
string chatMessage = input.value;
string name = nicheng.value;
//當沒有輸入暱稱時的做法
if (name=="")
{
name = "玩家"+Network.player.ToString();
}
//發送到個機器上
networkView.RPC("receiveMessage", RPCMode.All, chatMessage, name);
//清空輸入欄
input.value = "";
}
/*接受信息和暱稱,顯示到上方的面板上*/
[RPC]
void receiveMessage(string message,string name) {
textlist.Add(name + " : " + message);
}
}
腳本掛在輸入框上,這裏要注意的是,只要腳本調用了RPC,那麼該腳本所在物體需要添加Network組件
最後,選擇當輸入完信息,回車時調用OnChatSubmit()
之後發佈項目,創建和連接服務器,輸入暱稱,就可以開心的進行聊天啦~~~~~~~~
總結
學習真的是循序漸進的!!!加油