- Home /
Script not working
Hi guys i've been working on a multiplayer game on android and have been following this useful tutorial from thefacegrabber on youtube but after i followed everything he did(twice) I still get the same problem.When he presses the start button it goes like to another level but when i press the start button it gives me this error. You may not be connected when initializing security layer. UnityEngine.Network:InitializeSecurity() NetworkManager:StartServer(String, Int32) (at Assets/Scripts/Network/NetworkManager.cs:23) Menu:Host() (at Assets/Scripts/Network/Menu.cs:48) Menu:OnGUI() (at Assets/Scripts/Network/Menu.cs:30). Here's my menu script.
using UnityEngine;
using System.Collections;
public class Menu : MonoBehaviour {
private string CurMenu;
public string Name;
public string MatchName;
public int Players;
// Use this for initialization
void Start () {
CurMenu = "Main";
Name = PlayerPrefs.GetString("PlayerName");
}
// Update is called once per frame
void Update () {
}
void ToMenu(string menu){
CurMenu = menu;
}
void OnGUI(){
if (CurMenu == "Main")
Main();
if (CurMenu == "Host")
Host();
if (CurMenu == "Lobby")
Host();
}
private void Main(){
//if (GUI.Button(new Rect (0, 0, 128, 32), "Host A Match")) {
// ToMenu ("Host");
//}
if(GUI.Button(new Rect(0,0,128,32),"Host a match")){
ToMenu("Host");
Name = GUI.TextField (new Rect (130, 0, 128, 32), Name);
if (GUI.Button(new Rect (260, 0, 128, 32), "Save")) {
PlayerPrefs.SetString ("PlayerName", Name);
}
}
}
private void Host(){
if(GUI.Button(new Rect(0,0,128,32),"Start")){
NetworkManager.Instance.StartServer(MatchName,Players);
ToMenu("Lobby");
}
if(GUI.Button(new Rect(0,33,128,32),"Back")){
ToMenu("Main");
}
MatchName = GUI.TextField(new Rect(130,0,128,32),MatchName);
GUI.Label(new Rect(260,0,128,32),"Match name");
Players = Mathf.Clamp(Players,0,8);
GUI.Label(new Rect(260,32,128,32),"Max Players");
if (GUI.Button (new Rect (145, 32, 32, 32),"+"))
Players ++;
GUI.Label (new Rect (192, 33, 64, 32), Players.ToString());
if (GUI.Button (new Rect (215, 33, 32, 32),"-"))
Players --;
}
private void Lobby(){
if(GUI.Button(new Rect(Screen.width - 128,Screen.height - 64,128,32),"Start")){
}
if(GUI.Button(new Rect(Screen.width - 128,Screen.height - 32,128,32),"Back")){
ToMenu("Host");
}
}
private void MatchList()
{
if (GUI.Button(new Rect(0,33,128,32), "Refresh"))
{
MasterServer.PollHostList();
}
if (GUI.Button(new Rect(0,33,128,32), "Back"))
{
ToMenu ("Main");
}
GUILayout.BeginArea(new Rect(Screen.width/ 2, 0, Screen.width / 2, Screen.height), "Server List");
foreach (HostData hd in MasterServer.PollHostList())
{
GUILayout.BeginHorizontal();
GUILayout.Label(hd.gameName);
if(GUILayout.Button ("Connect"))
{
Network.Connect(hd);
ToMenu("Lobby");
}
GUILayout.EndHorizontal();
}
GUILayout.EndArea();
}
}
NetworkManager Script
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class NetworkManager : MonoBehaviour {
public string PlayerName;
public string MatchName;
public static NetworkManager Instance;
public List<Player>PLayerList = new List<Player>();
// Use this for initialization
void Start () {
Instance = this;
DontDestroyOnLoad(gameObject);
}
// Update is called once per frame
void Update () {
}
public void StartServer(string ServerName, int MaxPlayers){
Network.InitializeSecurity ();
Network.InitializeServer (MaxPlayers,25565,true);
MasterServer.RegisterHost ("Tut", ServerName,"");
Debug.Log("Started Server");
}
}
[System.Serializable]
public class Player{
public string PlayerName;
}
I posted on his youtube channel but no response.If anyone knows why this is happening wplease respond
Your answer
Follow this Question
Related Questions
Walking script not working need help 1 Answer
Script working on some objects but not others 1 Answer
Pickup script not workimg 0 Answers
script not working on second character 1 Answer
Can't get bullet to spawn and move 1 Answer