예제 #1
0
    void onClick_Enter_Btn(GameObject caster)
    {
        SelectUserInfo cur = GetRoleInfoByIndex(m_iCurIndex);

        if (!Application.isEditor)
        {
            uint mapid = cur.mapid & 0xFF;
            if (!KHttpDown.Instance().SceneFileExists(mapid))
            {
                //打开下载界面
                DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.DownloadPanel);
                return;
            }
        }

        if (null != cur)
        {
            ServerStatusParam status = DataManager.Manager <LoginDataManager>().CurServerState;
            if (status.state == ServerLimit.ServerLimit_Free)
            {
                Log.Info("enter game, role index: " + cur.id);

                if (cur.del == 1)
                {
                    TextManager Tmger = DataManager.Manager <TextManager>();
                    string      des   = Tmger.GetLocalFormatText(LocalTextType.RecoverRole_Tips_5, cur.name);
                    Action      yes   = delegate
                    {
                        ReqEnter(cur.id);
                    };
                    TipsManager.Instance.ShowTipWindow(TipWindowType.YesNO, des, yes, null, title: Tmger.GetLocalText(LocalTextType.Local_TXT_Tips), okstr: Tmger.GetLocalText(LocalTextType.Local_TXT_Confirm), cancleStr: Tmger.GetLocalText(LocalTextType.Local_TXT_Cancel));
                }
                else
                {
                    ReqEnter(cur.id);
                }
            }
            else
            {
                TipsManager.Instance.ShowTips(status.msg);
                Engine.Utility.Log.Error(status.msg);
            }
        }
    }
예제 #2
0
    void OnLoadScene(GameObject go)
    {
        // 隐藏登录界面
        DataManager.Manager <UIPanelManager>().HidePanel(PanelID.LoginPanel);
        // 隐藏等待窗体
        DataManager.Manager <UIPanelManager>().HidePanel(PanelID.CommonWaitingPanel);

        List <GameCmd.SelectUserInfo> lstRoleList = DataManager.Manager <LoginDataManager>().RoleList;

        if (lstRoleList.Count <= 0)
        {
            //创建界面
            //PanelManager.Me.ShowPanel(PanelID.CreateRolePanel);
            DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.CreateRolePanel);
        }
        else
        {
            DataManager.Manager <UIPanelManager>().HidePanel(PanelID.CreateRolePanel);
            SelectUserInfo    userinfo = lstRoleList[0];
            ServerStatusParam status   = DataManager.Manager <LoginDataManager>().CurServerState;
            //角色选择界面
            if (userinfo.lastofftime == 0 && userinfo.name.Equals(LoginDataManager.createRoleName) && status.state == ServerLimit.ServerLimit_Free)
            {
                UserData.CurrentRole = userinfo;

                DataManager.Manager <LoginDataManager>().CreateRoleToSDK();

                StepManager.Instance.OnBeginStep(Step.LOAD);

                NetService.Instance.Send(new stSendPhysicalAddressSelectUserCmd()
                {
                    mac = Cmd.ConstDefine.DEFAULT_MAC,
                });

                NetService.Instance.Send(new stClientMachineInfoSelectUserCmd()
                {
                    adapterinfo64 = "",
                    cpuinfo128    = "",
                    meminfo64     = "",
                });

                NetService.Instance.Send(new stLoginSelectUserCmd()
                {
                    data   = new ImageCheckData(),
                    charid = userinfo.id,
                    mapid  = 1,
                });
                DataManager.Manager <LoginDataManager>().LastLoginCharID = userinfo.id;

                //wbw
                ///创建了角色
                StepManager.Instance.m_bIsNewRoleLogin |= StepManager.IS_NEW_ROLE_LOGIN.LOGIN;

                LoginDataManager.createRoleName = "";
            }
            else
            {
                DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.ChooseRolePanel);
                if (status.state != ServerLimit.ServerLimit_Free)
                {
                    TipsManager.Instance.ShowTips(status.msg);
                    Engine.Utility.Log.Error(status.msg);
                }
            }
        }
    }