x


Need help converting js to c# 4 errors

Hi I need a little bit help converting js to c# I have 4 errors: - error CS0023: The !' operator cannot be applied to operand of type method group' - error CS1502: The best overloaded method match for UnityEngine.Network.InitializeServer(int, int, bool)' has some invalid arguments - error CS1503: Argument #3' cannot convert object' expression to type bool' - error CS0029: Cannot implicitly convert type UnityEngine.HostData[]' to bool'

JS: var playerPrefab:GameObject; var spawnObject:Transform; var gameName:String = "Network_Testing_Dinges";

 private var refreshing:boolean;
 private var hostData:HostData[];
 
 private var btnX:float;
 private var btnY:float;
 private var btnW:float;
 private var btnH:float;
 
 function Start()
 { 
     btnX = Screen.width * 0.05;
     btnY = Screen.width * 0.05;
     btnW = Screen.width * 0.2;
     btnH = Screen.width * 0.2;
 }
 
 function startServer()
 {
     Network.InitializeServer(32, 25001, !Network.HavePublicAddress);
     MasterServer.RegisterHost(gameName, "Network Testing Name", "This is Network Testing Dinges");
 }
 
 function refreshHostList()
 {
     MasterServer.RequestHostList(gameName);
     refreshing = true;
 }
 
 function Update()
 {
     if(refreshing)
     {
         if(MasterServer.PollHostList().Length > 0)
         {
             refreshing = false;
             Debug.Log(MasterServer.PollHostList().Length);
             hostData = MasterServer.PollHostList();
         }    
     }
 }
 
 function spawnPlayer()
 {
     Network.Instantiate(playerPrefab, spawnObject.position, Quaternion.identity, 0);
 }
 
 // Messages
 function OnServerInitialized()
 {
     Debug.Log("Server initialized!");
     spawnPlayer();
 }
 
 function OnConnectedToServer() 
 {
     Debug.Log("Connected To Server!");
     spawnPlayer();
 }
 
 function OnMasterServerEvent(mse: MasterServerEvent) 
 {
     if (mse == MasterServerEvent.RegistrationSucceeded) 
     {
         Debug.Log("Registered Server");
     }
 }
 
 // GUI
 function OnGUI()
 {
     if(!Network.isClient && !Network.isServer)
     {
         if(GUI.Button(Rect(btnX, btnY, btnW, btnH), "Start Server"))
         {
             Debug.Log("Starting Server");
             startServer();
         }
         
         if(GUI.Button(Rect(btnX, btnY *1.2 + btnH, btnW, btnH), "Refresh Hosts"))
         {
             Debug.Log("Refreshing");
             refreshHostList();
         }
         
         if(hostData)
         {    
             for(var i:int = 0; i <hostData.length; ++i)
             {
                 if(GUI.Button(Rect(btnX * 1.5 + btnW, btnY * 1.2 + (btnH * i), btnW * 3, btnH * 0.5), hostData[i].gameName))
                 {
                     Network.Connect(hostData[i]);
                 }
             }
         }
     }
 }


C#: using UnityEngine; using System.Collections;

 public class NetworkManagerScript : MonoBehaviour 
 {
     GameObject playerPrefab;
     Transform spawnObject;
     string gameName = "Network_Testing_Dinges";
     
     private bool  refreshing;
     HostData[] hostData;
 
     private float btnX;
     private float btnY;
     private float btnW;
     private float btnH;
     
     void  Start ()
     { 
         btnX = Screen.width * 0.05f;
         btnY = Screen.width * 0.05f;
         btnW = Screen.width * 0.2f;
         btnH = Screen.width * 0.2f;
     }
     
     void  startServer ()
     {
         Network.InitializeServer(32, 25001, !Network.HavePublicAddress);
         MasterServer.RegisterHost(gameName, "Network Testing Name", "This is Network Testing Dinges");
     }
     
     void  refreshHostList ()
     {
         MasterServer.RequestHostList(gameName);
         refreshing = true;
     }
     
     void  Update ()
     {
         if(refreshing)
         {
             if(MasterServer.PollHostList().Length > 0)
             {
                 refreshing = false;
                 Debug.Log(MasterServer.PollHostList().Length);
                 hostData = MasterServer.PollHostList();
             }    
         }
     }
     
     void  spawnPlayer ()
     {
         Network.Instantiate(playerPrefab, spawnObject.position, Quaternion.identity, 0);
     }
     
     // Messages
     void  OnServerInitialized ()
     {
         Debug.Log("Server initialized!");
         spawnPlayer();
     }
     
     void  OnConnectedToServer (){
         Debug.Log("Connected To Server!");
         spawnPlayer();
     }
     
     void  OnMasterServerEvent ( MasterServerEvent mse)
     {
         if (mse == MasterServerEvent.RegistrationSucceeded) 
         {
             Debug.Log("Registered Server");
         }
     }
     
     // GUI
     void  OnGUI ()
     {
         if(!Network.isClient && !Network.isServer)
         {
             if(GUI.Button( new Rect(btnX, btnY, btnW, btnH), "Start Server"))
             {
                 Debug.Log("Starting Server");
                 startServer();
             }
             
             if(GUI.Button( new Rect(btnX, btnY *1.2f + btnH, btnW, btnH), "Refresh Hosts"))
             {
                 Debug.Log("Refreshing");
                 refreshHostList();
             }
             
             if(hostData)
             {    
                 for(int i = 0; i <hostData.Length; ++i)
                 {
                     if(GUI.Button( new Rect(btnX * 1.5f + btnW, btnY * 1.2f + (btnH * i), btnW * 3, btnH * 0.5f), hostData[i].gameName))
                     {
                         Network.Connect(hostData[i]);
                     }
                 }
             }
         }
     }
 }
more ▼

asked Mar 06, 2013 at 08:56 AM

MrP gravatar image

MrP
1 7 10 10

(comments are locked)
10|3000 characters needed characters left

1 answer: sort voted first

couple of things i could notice:

 !Network.HavePublicAddress

should be:

 !Network.HavePublicAddress()

and you can change :

 if(hostData)

to:

 if(hostData !=null)
more ▼

answered Mar 06, 2013 at 09:51 AM

SolidSnake gravatar image

SolidSnake
574 22 18 24

(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Topics:

x10961
x3763
x1526
x71
x6

asked: Mar 06, 2013 at 08:56 AM

Seen: 1266 times

Last Updated: Mar 06, 2013 at 09:51 AM