unity網絡編程學習(2)聊天室

前言

經過上次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()

之後發佈項目,創建和連接服務器,輸入暱稱,就可以開心的進行聊天啦~~~~~~~~

總結

學習真的是循序漸進的!!!加油
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章