Exemple #1
0
    private void OnAck_RoleLoginAck(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        RoleLoginAck           ack = Serializer.Deserialize <RoleLoginAck>(ms);

        if (GTItemHelper.ShowNetworkError(ack.RetCode) == false)
        {
            return;
        }
        GTGlobal.CurPlayerCarrerID = ack.Carrer;
        GTGlobal.CurPlayerGUID     = ack.RoleID;
        for (int i = 0; i < ack.Action.Count; i++)
        {
            int num = (int)ack.Action[i];
            int id  = i + 101;
            DataDBSAction.Update(id, new XAction()
            {
                Id = id, Num = num
            });
        }
        GTDataTimer.Instance.Init();
        GTWorld.Instance.EnterGuide();
        GTWorld.Instance.Bie.UseGuide = GTLauncher.Instance.UseGuide;
        GTEventCenter.FireEvent(GTEventID.TYPE_LOGIN_ROLELOGIN);
    }
    private void OnReq_RoleLogin(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        RoleLoginReq           req = Serializer.Deserialize <RoleLoginReq>(ms);

        foreach (var current in DataDBSCharacter.Dict)
        {
            XCharacter c = current.Value;
            if (c.GUID == req.RoleID)
            {
                RoleLoginAck ack = new RoleLoginAck();
                ack.RoleID = c.GUID;
                ack.Name   = c.Name;
                ack.Carrer = c.Carrer;
                ack.Level  = c.Level;
                ack.Exp    = c.CurExp;
                GTDataManager.Instance.LoadRoleData(c.Carrer);
                NetworkManager.Instance.Send(MessageID.MSG_ROLE_LOGIN_ACK, ack, 0, 0);


                NotifyIntoScene ntf = new NotifyIntoScene();
                ntf.CopyID   = GTGlobal.LastCityID;
                ntf.CopyGuid = 0;
                ntf.RoleID   = c.GUID;
                ntf.ServerID = MLLogin.Instance.GetCurrServerID();
                NetworkManager.Instance.Send(MessageID.MSG_NOTIFY_INTO_SCENE, ntf, 0, 0);
                break;
            }
        }
    }
Exemple #3
0
    private void OnAck_RoleLoginAck(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        RoleLoginAck           ack = Serializer.Deserialize <RoleLoginAck>(ms);

        GTGlobal.CurPlayerID = (int)ack.RoleType;

        GTEventCenter.FireEvent(GTEventID.TYPE_ENTERGAME_CALLBACK);
        GTLauncher.Instance.LoadScene(GTGlobal.LAST_CITY_ID);
    }
    private void OnReq_EnterGame(MessageRecv obj)
    {
        System.IO.MemoryStream ms  = new System.IO.MemoryStream(obj.Data);
        RoleLoginReq           req = Serializer.Deserialize <RoleLoginReq>(ms);
        RoleLoginAck           ack = new RoleLoginAck();

        foreach (var current in DataDBSRole.Dict)
        {
            XCharacter c = current.Value;
            if (c.GUID == req.RoleID)
            {
                ack.RoleID   = c.GUID;
                ack.Name     = c.Name;
                ack.RoleType = (uint)c.Id;
                ack.Level    = c.Level;
                ack.Exp      = (ulong)c.CurExp;
                NetworkManager.Instance.Send(MessageID.MSG_ROLE_LOGIN_ACK, ack, 0, 0);
                break;
            }
        }
    }