// Server Init
    void Start()
    {
        if (isServer)
        {
            if (hasAuthority)
            {
                NetworkServer.SpawnWithClientAuthority(Instantiate(server_manager), gameObject);

                // Variables
                mouse_position = Vector2.zero;
            }
        }

        sm = innoMultiplayerServerBehaviour.instance;
        if (isLocalPlayer)
        {
            if (!isServer)
            {
                CmdInitializePlayer();
            }
            else
            {
                RpcUpdateInitializePlayer();
            }
        }
    }
Пример #2
0
    // Start is called before the first frame update
    void OnEnable()
    {
        // Find Lobby Object
        sm = innoMultiplayerServerBehaviour.instance;

        // Create Button Listeners
        if (!buttons_init)
        {
            buttons_init   = true;
            buttons_active = true;

            name_button.onClick.AddListener(changeName);
            flag_button.onClick.AddListener(changeFlag);
            check_button.onClick.AddListener(changeCheck);
        }

        // Reset Graphics
        player_name.text   = sm.player_objects[player_num].name_tag;
        player_flag.sprite = flag_sprites[sm.player_objects[player_num].flag];
        player_ping.text   = "0ms";
        player_check.SetActive(sm.player_objects[player_num].ready);
    }
    // Instantiate
    void Awake()
    {
        // Singleton
        if (GameObject.Find("ServerManagement") != null)
        {
            Destroy(gameObject);
            return;
        }
        else
        {
            DontDestroyOnLoad(gameObject);
            DontDestroyOnLoad(NetworkManager.singleton);
            gameObject.name = "ServerManagement";
            instance        = this;
        }

        player_queue   = new Queue <innoMultiplayerPlayerBehaviour>();
        player_objects = new List <innoMultiplayerPlayerBehaviour>();
        for (int i = 0; i < 4; i++)
        {
            player_objects.Add(null);
        }
    }