非授权服务器连接

1、非授权服务器

 

 

 

----------------------------非授权服务器代码------------------------------

using UnityEngine;
using System.Collections;

public class networkserver : MonoBehaviour {
private string roip="127.0.0.1";
private int rport=10000;
//private int lport=10000;
private int concount=15;
private bool usenat = true ;

void OnGUI(){
switch (Network .peerType ){
case NetworkPeerType .Disconnected :
StartServer();
break ;
case NetworkPeerType.Server :
Onserver();
break ;
case NetworkPeerType.Connecting:
break;

}


}

void StartServer(){
roip =GUI.TextField(new Rect(10,30,100,20),roip);
if (GUI.Button(new Rect(10,50,100,30),"创建服务器")){
Network.incomingPassword="unitynetwork";
//启动服务器
NetworkConnectionError error=Network.InitializeServer(concount,rport,usenat);
Debug .Log (error);
}

}
void Onserver(){
GUILayout.Label ("创建服务器成功!等待连接。。。");
string ip=Network.player.ipAddress;
int port=Network.player.port ;
//显示外网IP
string exip=Network.player.externalIP;
GUILayout.Label ("IP地址:"+ip+"\n端口号:"+port+"\n外部IP:"+exip);
int connectlength=Network.connections.Length;
for(int i=0;i<connectlength;i++){
GUILayout.Label ("连接的IP:"+Network.connections[i].ipAddress );
GUILayout.Label ("连接的端口:"+Network.connections[i].port );

}
if(GUI.Button(new Rect(10,340,100,30),"断开连接")){
Network .Disconnect (200);
}

}

void OnPlayerDisconnected( NetworkPlayer player) {
//Debug.Log("Clean up after player " + player);
Network.RemoveRPCs(player);
Network.DestroyPlayerObjects(player);

}

}

 

2、客户端

 

 

-------------------------------------客户端代码----------------------------------------------

using UnityEngine;
using System.Collections;

public class networkclient : MonoBehaviour {
private string roip="192.168.0.100";
private int lport=10000;
//private bool usenat=false;
void OnGUI(){
switch (Network.peerType){
case NetworkPeerType .Disconnected :
Startconnect();
break;
case NetworkPeerType .Client:
Clientto();
break;
case NetworkPeerType.Connecting:
Debug.Log ("连接中");
break;
}
}


void Startconnect(){
roip=GUILayout.TextField(roip);
//lport=GUILayout.TextField("请输入要连接的端口",lport);
if (GUILayout.Button("连接服务器")){
NetworkConnectionError error=Network .Connect(roip,lport,"unitynetwork");
Debug.Log (error);
}
}


void Clientto(){
GUILayout.Label ("成功连接到服务器!");
}
//连接成功后系统自动调用函数
void OnConnectedToServer(){
foreach (GameObject go in FindObjectsOfType(typeof (GameObject))){
go.SendMessage("OnNetworkLoaded",SendMessageOptions.DontRequireReceiver);
}
}

void OnDisconnectedFromServer(NetworkDisconnection info){
//移除属于这个玩家的ID的RPC函数
Network.RemoveRPCs(Network.player);
//移除属于这个玩家的物体
Network.DestroyPlayerObjects(Network.player);
//重新加载场景
Application.LoadLevel(0);
}
}

 

--------------------------------实例化玩家代码------------------------------------

 

using UnityEngine;
using System.Collections;

public class playergame : MonoBehaviour {
public Transform control;
void OnNetworkLoaded(){
//实例化该目标对象
Network.Instantiate(control,transform.position,transform.rotation,0);
}
void Update(){
if(Network.isClient ){
Vector3 Direction=new Vector3(Input.GetAxis("Horizontal"),0,Input.GetAxis("Vertical"));
float speed=5.0f;
GameObject.FindGameObjectWithTag("Player").transform.Translate(speed*Direction*Time.deltaTime);

}
}
}

 

 

 在同时运行这两个工程时,输入了ip连接服务器的时候,要点击一下创建了服务器的工程窗口。。。。。。。。。

转载于:https://www.cnblogs.com/ZeroMurder/p/5951370.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园失物招领系统管理系统按照操作主体分为管理员和用户。管理员的功能包括字典管理、论坛管理、公告信息管理、失物招领管理、失物认领管理、寻物启示管理、寻物认领管理、用户管理、管理员管理。用户的功能等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 校园失物招领系统管理系统可以提高校园失物招领系统信息管理问题的解决效率,优化校园失物招领系统信息处理流程,保证校园失物招领系统信息数据的安全,它是一个常可靠,常安全的应用程序。 ,管理员权限操作的功能包括管理公告,管理校园失物招领系统信息,包括失物招领管理,培训管理,寻物启事管理,薪资管理等,可以管理公告。 失物招领管理界面,管理员在失物招领管理界面中可以对界面中显示,可以对失物招领信息的失物招领状态进行查看,可以添加新的失物招领信息等。寻物启事管理界面,管理员在寻物启事管理界面中查看寻物启事种类信息,寻物启事描述信息,新增寻物启事信息等。公告管理界面,管理员在公告管理界面中新增公告,可以删除公告。公告类型管理界面,管理员在公告类型管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值