コード例 #1
0
    public override void OnServerSceneChanged(string sceneName)
    {
        base.OnServerSceneChanged(sceneName);
        Debug.Log("Multiplayer Scene Was changed");
        if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name != "Lobby")
        {
            raceSpawner = Instantiate(raceSpawnerPrefab);
            raceSpawner.transform.position = GameObject.Find("SpawnpointPlaceHolder").transform.position;
            raceSpawner.transform.rotation = GameObject.Find("SpawnpointPlaceHolder").transform.rotation;
            NetworkServer.Spawn(raceSpawner.gameObject);

            matchMaker.SetMatchAttributes(matchInfo.networkId, false, 0, OnSetMatchAttributes);
        }
    }
コード例 #2
0
    // parece que esto solo corre en el servidor
    // aqui no hay que hacer networkserver.spawn
    public override void OnServerAddPlayer(NetworkConnection conn, short controllerID)
    {
        Debug.Log("This section is triggered by ClientScene.AddPlayer");
        Sanicball.Ball ball;
        if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "Lobby")
        {
            ball = (Sanicball.Ball)Instantiate(ballSpawner.ballPrefab, ballSpawner.transform.position, ballSpawner.transform.rotation);
        }
        else
        {
            raceSpawner = FindObjectOfType <RaceBallSpawner>();
            ball        = (Sanicball.Ball)Instantiate(raceSpawner.ballPrefab, raceSpawner.transform.position, raceSpawner.transform.rotation);
        }

        NetworkServer.AddPlayerForConnection(conn, ball.gameObject, controllerID);

        if (ball.gameObject.GetComponent <NetworkIdentity>().isLocalPlayer)
        {
        }
        else
        {
            ball.ballConnection = conn;
        }



        if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name == "Lobby")
        {
            if (ballSpawner.isClient && ballSpawner.isServer)
            {
            }
            else
            {
            }
            ballSpawner.pelota = ball;
        }
        else
        {
            raceSpawner.pelota = ball;
        }
    }