Пример #1
0
    //服务器列表,以此显示服务器列表,供用户选择服务器
    void OnConnect(bool canLogin, Message msg)
    {
        if (!canLogin)
        {
            msgRespServerList resp = msgRespServerList.deserialize(msg);
            //选择服务器后需要调用,然后再去请求登陆到游戏(和自动选择模式相同)
            //ProtocolManager.getInstance().SelectServer(host,port);
        }
        else
        {
            //后续 自动登录
            //第一次需要点击登录按钮

            if (_autoLogin)
            {
                _autoLogin = false;

                //重新登陆
                NowAccount nc = Account.getNowAccount();
                loginServer(nc.userID, nc.openid, nc.pwd, nc.lastLoginType, nc.area);
            }
            else
            {
                ViewManagerEvent.EM().InvokeEvent(ViewManagerEvent.EVENT.SHOW_LOADING_ANI, false);
            }
        }
    }
Пример #2
0
    public void onLogin(object data)
    {
        _loginType = (NowAccount.eLoginType)data;         //data as eLoginBtnType;

        //首先获取本地保存的数据
        if (Account.loadNowAccout())
        {
            //已经登陆过
            NowAccount nc = Account.getNowAccount();
            if (nc.lastLoginType == _loginType)
            {
                //需要保存
                Account.thirdOpenID = nc.openid;
                Account.thirdToken  = nc.token;

                //不必启动第三方
                loginServer(nc.userID, nc.openid, nc.pwd, nc.lastLoginType, nc.area);

                return;
            }
        }

        switch (_loginType)
        {
        case NowAccount.eLoginType.LOGIN_TYPE_YK:
            loginByYK();
            break;

        case NowAccount.eLoginType.LOGIN_TYPE_WX:
            loginByQQWX(msgLogin.eLoginType.LOGIN_TYPE_WX);
            break;

        case NowAccount.eLoginType.LOGIN_TYPE_QQ:
            loginByQQWX(msgLogin.eLoginType.LOGIN_TYPE_QQ);
            break;
        }
    }