Exemple #1
0
    IEnumerator CheckServerInitialized()
    {
        bool isCheck = true;

        while (isCheck)
        {
            yield return(new WaitForSeconds(0.1f));

            if (Application.loadedLevel != (int)GameLeve.WaterwheelNet || Network.peerType == NetworkPeerType.Disconnected)
            {
                if (Toubi.GetInstance() != null &&
                    !Toubi.GetInstance().IsIntoPlayGame)
                {
                    Toubi.GetInstance().IsIntoPlayGame = true;
                }
                continue;
            }
            isCheck = false;
        }

        if (NetworkRpcMsgCtrl.GetInstance() != null)
        {
            NetworkRpcMsgCtrl.GetInstance().RemoveSelf();
        }

        GameObject obj    = GameNetCtrlXK.GetInstance().PlayerObj[0];
        Transform  tran   = GameNetCtrlXK.GetInstance().PlayerPos[0].transform;
        GameObject player = (GameObject)Network.Instantiate(obj, tran.position, tran.rotation, GlobalData.NetWorkGroup);
        WaterwheelPlayerNetCtrl playerScript = player.GetComponent <WaterwheelPlayerNetCtrl>();

        playerScript.SetIsHandlePlayer();

        //create AiPlayer
        CreateAiPlayer();
    }
    IEnumerator CheckConnectToServer()
    {
        if (GlobalData.GetInstance().gameLeve != GameLeve.WaterwheelNet)
        {
            yield break;
        }

        while (true)
        {
            Debug.Log("***************loadedLevel " + Application.loadedLevel
                      + ", IsIntoPlayGame " + Toubi.GetInstance().IsIntoPlayGame);
            if (Application.loadedLevel == (int)GameLeve.WaterwheelNet)
            {
                break;
            }

            if (Application.loadedLevel == (int)GameLeve.Movie)
            {
                if (!Toubi.GetInstance().IsIntoPlayGame)
                {
                    Toubi.GetInstance().StartIntoGame();
                    Toubi.GetInstance().IsIntoPlayGame = true;
                }
                yield return(new WaitForSeconds(0.5f));
            }
        }

        GlobalData.GetInstance().RemoveNetworkRpc();
        int playerIndex = IndexSpawnClient;

        Debug.Log("CheckConnectToServer::playerIndex " + playerIndex);

        GameObject obj    = GameNetCtrlXK.GetInstance().PlayerObj[playerIndex];
        Transform  tran   = GameNetCtrlXK.GetInstance().PlayerPos[playerIndex].transform;
        GameObject player = (GameObject)Network.Instantiate(obj, tran.position, tran.rotation, GlobalData.NetWorkGroup);
        WaterwheelPlayerNetCtrl playerScript = player.GetComponent <WaterwheelPlayerNetCtrl>();

        //playerScript.SetPlayerNetworkPlayer(playerNet);
        playerScript.SetIsHandlePlayer();

        //GameNetCtrlXK.GetInstance().SetPlayerList(player, playerIndex);

        Spawner.SpawnerScript.SpawnNetObj();
    }