Hey guys,
thats my code (sorry for that german/english mix at code):
#pragma strict
private var refreshing:boolean;
private var hostData:HostData[];
private var enteredName;
private var connectables;
private var statusLineTXT;
function Start () {
enteredName = "TestServerName";
statusLineTXT = "Doing nothing...";
}
function Update () {
if(refreshing) {
if(MasterServer.PollHostList().Length > 0) {
refreshing = false;
Debug.Log(MasterServer.PollHostList().Length);
hostData = MasterServer.PollHostList();
statusLineTXT = "Refreshed Serverlist...";
}
}
}
function startServer() {
statusLineTXT = "Starting Server...";
Network.InitializeServer(20, 25001, !Network.HavePublicAddress());
MasterServer.RegisterHost("fmasterInteractive_MotH_Networking",enteredName);
}
function refreshHostList() {
MasterServer.RequestHostList("fmasterInteractive_MotH_Networking");
refreshing = true;
statusLineTXT = "Refreshing...";
}
function OnServerInitialized() {
Debug.Log("Server hosted...");
statusLineTXT = "Initialized Server...";
}
function OnMasterServerEvent(mse:MasterServerEvent) {
if(mse == MasterServerEvent.RegistrationSucceeded) {
Debug.Log("Registered Server at MasterServer...");
statusLineTXT = "Registered Server at MasterServer...";
}
}
function OnGUI() {
GUI.Box(Rect(755,100,220,50), statusLineTXT.ToString());
if(!Network.isClient!Network.isServer) {
enteredName = GUI.TextField(Rect(100,100,150,20), enteredName);
GUI.Box(Rect(400,100,350,50), "Serverbrowser");
if(GUI.Button(Rect(100,125,150,50),"Server hosten")) {
Debug.Log("Start hosting server...");
startServer();
}
if(GUI.Button(Rect(100,300,150,50),"Serverliste abrufen")) {
Debug.Log("Start Refreshing...");
refreshHostList();
}
if(hostData) {
for(var i:int = 0; i < hostData.length; i++) {
connectables = hostData[i].playerLimit-1;
GUI.Box(Rect(400, 35*i+180, 150,25), hostData[i].gameName);
GUI.Box(Rect(600, 35*i+180, 150,25), hostData[i].connectedPlayers + " / " + connectables);
if(GUI.Button(Rect(755, 35*i+180, 150,25), "Verbinden")) {
Debug.Log("Connecting...");
statusLineTXT = "Try to connect...";
Network.Connect(hostData[i].ip,hostData[i].port);
Debug.Log("Connected!");
}
}
}
}
if(Network.isServer) {
GUI.Box(Rect(Screen.width/2, Screen.height/2, 200,200), "You're hosting right now!");
if(GUI.Button(Rect(Screen.width/4, Screen.height/4, 200,200), "Stop Server")) {
}
}
}
I also tried to use my IP and games Port at Network.Connect and the hostData*-Method. Actually I recieve a Pong from my Host, but it don’t connect. Pls help me! ;)*