Here is the c# script:
using UnityEngine;
using System.Collections;
public class NetworkManager : MonoBehaviour
{
private const string typeName = "UniqueGameName";
private const string gameName = "RoomName";
private bool isRefreshingHostList = false;
private HostData[] hostList;
public GameObject playerPrefab;
void OnGUI()
{
if (!Network.isClient && !Network.isServer)
{
if (GUI.Button(new Rect(100, 100, 250, 100), "Start Server"))
StartServer();
if (GUI.Button(new Rect(100, 250, 250, 100), "Refresh Hosts"))
RefreshHostList();
if (hostList != null)
{
for (int i = 0; i < hostList.Length; i++)
{
if (GUI.Button(new Rect(400, 100 + (110 * i), 300, 100), hostList*.gameName))*
JoinServer(hostList*);*
}
}
}
}
private void StartServer()
{
Network.InitializeServer(5, 25000, !Network.HavePublicAddress());
MasterServer.RegisterHost(typeName, gameName);
}
void OnServerInitialized()
{
SpawnPlayer();
}
void Update()
{
if (isRefreshingHostList && MasterServer.PollHostList().Length > 0)
{
isRefreshingHostList = false;
hostList = MasterServer.PollHostList();
}
}
private void RefreshHostList()
{
if (!isRefreshingHostList)
{
isRefreshingHostList = true;
MasterServer.RequestHostList(typeName);
}
}
private void JoinServer(HostData hostData)
{
Network.Connect(hostData);
}
void OnConnectedToServer()
{
SpawnPlayer();
}
private void SpawnPlayer()
{
_ Network.Instantiate(playerPrefab, Vector3.up * 1, Quaternion.identity, 0);_
}
}
Here is the java script:
private var typename : const string = “UniqueGameName”;
private var typename : const string = “RoomName”;
private var isRefreshingHostList : boolean = false;
private var hostList : HostData[];
var playerPrefab : GameObject;
function OnGUI ()
{
if(!Network.isClient && !Network.isServer)
{
if (GUI.Button(new Rect(100, 100, 250, 100), “Start Server”))
StartServer();
if (GUI.Button(new Rect(100, 250, 250, 100), “Refresh Hosts”))
RefreshHostList();
if (hostList != null)
{
for (int i = 0; i < hostList.Length; i++)
{
if (GUI.Button(new Rect(400, 100 + (110 * i), 300, 100), hostList*.gameName))*
JoinServer(hostList*);*
}
}
}
}
private function StartServer()
{
Network.InitializeServer(5, 25000, !Network.HavePublicAddress());
MasterServer.RegisterHost(typeName, gameName);
}
function OnServerInitialized ()
{
SpawnPlayer();
}
function Update()
{
if (isRefreshingHostList && MasterServer.PollHostList().Length > 0)
{
isRefreshingHostList = false;
hostList = MasterServer.PollHostList();
}
}
private function RefreshHostList()
{
if (!isRefreshingHostList)
{
isRefreshingHostList = true;
MasterServer.RequestHostList(typeName);
}
}
private function JoinServer(HostData hostData)
{
Network.Connect(hostData);
}
function OnConnectedToServer()
{
SpawnPlayer();
}
function SpawnPlayer()
{
_ Network.Instantiate(playerPrefab, Vector3.up * 1, Quaternion.identity, 0);
}_