unity网络编程

Server.js:
  
var connectPort : int = 2224;

function OnGUI ()
{
    if (Network.peerType == NetworkPeerType.Disconnected)
    {
        GUILayout.Label("Connection status: Disconnected");
  
        connectToIP = GUILayout.TextField(connectToIP, GUILayout.MinWidth(100));
        connectPort = parseInt(GUILayout.TextField(connectPort.ToString()));
  
        if (GUILayout.Button("Start Server"))
        {
            Network.InitializeServer(32, connectPort, false);//********
        }
    }
    else
    {
        if (Network.peerType == NetworkPeerType.Server)
        {
            GUILayout.Label("Connection status: Server!");
            GUILayout.Label("Connection: " + Network.connections.length);
            if (Network.connections.length >= 1)
            {
                GUILayout.Label("Ping to first player: " + Network.GetAveragePing(Network.connections[0]));
            }
        }
  
        if (GUILayout.Button("Disconnect"))
        {
            Network.Disconnect(200);
        }
    }
}


// Server functions called by Unity
function OnPlayerConnected(player: NetworkPlayer) {
    Debug.Log("Player connected from: " + player.ipAddress + ":" + player.port);
}


function OnServerInitialized() {
    Debug.Log("Server initialized and ready");
}


function OnPlayerDisconnected(player: NetworkPlayer) {
    Debug.Log("Player disconnected from: " + player.ipAddress + ":" + player.port);
}




Client.js:

var connectToIP : String = "127.0.0.1";
var connectPort : int = 2224;


function OnGUI ()
{
    if (Network.peerType == NetworkPeerType.Disconnected)
    {
        GUILayout.Label("Connection status: Disconnected");
  
        connectToIP = GUILayout.TextField(connectToIP, GUILayout.MinWidth(100));
        connectPort = parseInt(GUILayout.TextField(connectPort.ToString()));
  
        if (GUILayout.Button("Connect as client"))
        {
            Network.Connect(connectToIP, connectPort);//******
        }
    }
    else
    {
        if (Network.peerType == NetworkPeerType.Connecting)
        {
            GUILayout.Label("Connection status: Connecting");
        }
        else if (Network.peerType == NetworkPeerType.Client)
        {
            GUILayout.Label("Connection status: Client!");
            GUILayout.Label("Ping to server: " + Network.GetAveragePing(Network.connections[0]));
        }
  
        if (GUILayout.Button("Disconnect"))
        {
            Network.Disconnect(200);
        }
    }
}


// Client functions called by Unity
function OnConnectedToServer()
{
    Debug.Log("This CLIENT has connected to a server"); 
}


function OnDisconnectedFromServer(info : NetworkDisconnection)
{
    Debug.Log("This SERVER OR CLIENT has disconnected from a server");
}


function OnFailedToConnect(error: NetworkConnectionError)
{
    Debug.Log("Could not connect to server: " + error);
}










  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值