示例#1
0
    public void LoadLevel(int nSceneID, NFMsg.AckMiningTitle strData)
    {
        mnSceneID = nSceneID;

        NFRender.Instance.SetMainRoleAgentState(false);

        mnProgress = 0;
        NFrame.NFIElement xElement = NFrame.NFCKernelModule.Instance.GetElementModule().GetElement(nSceneID.ToString());
        if (null != xElement)
        {
            string strName   = xElement.QueryString("SceneName");
            string strUIName = xElement.QueryString("LoadingUI");

            UnityEngine.SceneManagement.Scene xSceneInfo = SceneManager.GetActiveScene();
            if (xSceneInfo.name == strName)
            {
                //Debug.LogWarning ("begin the same scene" + strSceneID);
                //SceneManager.LoadScene (xSceneInfo.buildIndex);
                //Debug.LogWarning ("end the same scene" + strSceneID);
                //load a empty scene then load this scene asy

                SceneManager.LoadScene("EmptyScene");
            }

            StartCoroutine(LoadLevel(strName, strUIName, strData));
        }
        else
        {
            Debug.LogError("LoadLevel error: " + nSceneID);
        }

        //NFRender.Instance.SetMainRoleAgentState(true);
    }
示例#2
0
    private IEnumerator LoadLevel(string strSceneID, string strUI, NFMsg.AckMiningTitle strData)
    {
        asy = SceneManager.LoadSceneAsync(strSceneID);

        DirectoryInfo mydir = new DirectoryInfo(strUI);

        if (mydir.Exists)
        {
            //xTexture = GameObject.Instantiate(Resources.Load(strUI)) as Texture;
        }

        int    nIndex  = Random.Range(0, xTextureList.Length);
        Sprite xSprite = xTextureList [nIndex];
        Image  xImage  = GUIHolder.GetComponent <Image> ();

        xImage.overrideSprite = xSprite;
        GUIHolder.SetActive(true);

        NFStart.Instance.SetJoyEnable(false);
        NFCWindowManager.Instance.HideWindows(NFCWindows.UI_WIN_STATE.UI_WIN_SEARCH_OPPNENT);

        while (!asy.isDone)
        {
            int nProgress = CpPercentage();
            if (nProgress >= 100)
            {
                break;
            }

            yield return(new WaitForEndOfFrame());
        }

        if (!bInitSend)
        {
            bInitSend = true;

            NFNetController.Instance.mxNetSender.RequireEnterGameFinish(NFNetController.Instance.xMainRoleID);
        }

        GUIHolder.SetActive(false);


        //joy will show if this scene is a flighting scene
        RemoveTile(strData);

        NFCWindowManager.Instance.HideWindows(NFCWindows.UI_WIN_STATE.UI_WIN_SEARCH_OPPNENT);

        bool bEnable = NFCWindowManager.Instance.GetGameWindowEnable(NFCWindows.UI_WIN_STATE.UI_WIN_MAIN_SKILL);

        NFStart.Instance.SetJoyEnable(bEnable);
    }
示例#3
0
    private void RemoveTile(NFMsg.AckMiningTitle strData)
    {
        if (null == strData)
        {
            return;
        }

        for (int i = 0; i < strData.tile.Count; ++i)
        {
            NFMsg.TileState xTileState = strData.tile [i];
            if (xTileState.opr == 0)
            {
                //挖
            }
            else
            if (xTileState.opr == 1)
            {
                //补
                //NFCTileMng.Instance.AddTile(xTileState.x, xTileState.y);
            }
        }
    }
示例#4
0
    public void LoadScene(int nSceneID, float fX, float fY, float fZ, NFMsg.AckMiningTitle strData)
    {
        mbLoadedScene    = true;
        mnScene          = nSceneID;
        mvSceneBornPos.x = fX;
        mvSceneBornPos.y = fY;
        mvSceneBornPos.z = fZ;

        //NFLoadingMgr.Instance.SendMessage("LoadLevel", mnScene, (object)strData);
        NFLoadingMgr.Instance.LoadLevel(mnScene, strData);

        if (null == NFNetController.Instance || !mhtObject.ContainsKey(NFNetController.Instance.xMainRoleID))
        {
            return;
        }

        //主角贴地,出生点
        GameObject xGameObject = (GameObject)mhtObject[NFNetController.Instance.xMainRoleID];

        if (null != xGameObject)
        {
            xGameObject.transform.position = mvSceneBornPos;
        }
    }