unity网络连接的学习

来源:互联网 发布:美工穿什么衣服 编辑:程序博客网 时间:2024/06/17 12:19
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Networking;

public class ControllerScript : MonoBehaviour {

    public Button inbutton;

    public Button connectbutton;

    NetworkClient m_client;


    void Awake(){
        m_client = new NetworkClient ();
        Application.runInBackground=true;
    }

    // Use this for initialization
    void Start () {

        inbutton.onClick.RemoveAllListeners ();
        connectbutton.onClick.RemoveAllListeners ();

        inbutton.onClick.AddListener (InitServerAction);
        connectbutton.onClick.AddListener (ConnectServerAction);


    }

    void InitServerAction(){



        //启动服务器
        NetworkServer.Listen(10000);

        //注册事件
        NetworkServer.RegisterHandler(MsgType.Connect,OnServerAddPlayer);
        //m_client = ClientScene.ConnectLocalServer ();
        m_client.RegisterHandler (MsgType.Connect,OnConnectServer);

    }
    void ConnectServerAction(){
        Debug.Log (000);
        string ip = "192.168.16.16";//本机地址

        try{
            m_client.Connect(ip,10000);
            m_client.RegisterHandler(MsgType.Connect,OnConnectServer);
        }catch(System.Exception ex){
            
            Debug.Log ("连接错误"+ip+ex.Message);

        }

    }

    //服务器端检测到客户端的连接
    void OnServerAddPlayer(NetworkMessage msg){

        Debug.Log ("555");

    }


    //客户端连接成功之后的回调方法
    void OnConnectServer(NetworkMessage msg){

        Debug.Log ("222");

    }
}
原创粉丝点击