Ejemplo n.º 1
0
    public override void Handle(object sender, IMessage packet)
    {
        base.Handle(sender, packet);
        //处理完数据和逻辑后,发送消息通知其他模块,绝对不可以直接操作UI等Unity主线程的东西!
        GCLogin login = packet as GCLogin;

        if (login == null)
        {
            Debug.LogError("消息错误!");
        }
        Game.DataManager.InitAccount(login.AccountData);
        if (login.Result < 0)
        {
            Messenger.Broadcast(MessageId.UI_LOGIN_FAILED);
        }
        if (login.Result == 0)
        {
            Messenger.Broadcast(MessageId.UI_GAME_CREATE_CHARACTER);
        }
        if (login.Result == 1)
        {
            CGSignIn data = new CGSignIn();
            data.UserId = 1;
            Game.NetworkManager.SendToLobby(MessageId_Send.CGSignIn, data);
        }
    }
Ejemplo n.º 2
0
    public override void Handle(object sender, IMessage packet)
    {
        base.Handle(sender, packet);
        CGSignIn data = packet as CGSignIn;
        //处理完数据和逻辑后,发送消息通知客户端
        GCSignIn userData = new GCSignIn();

        userData.Uid         = data.UserId;
        userData.AccountData = GetSavedData <PBAccountData>(ACCOUNT_DATA_KEY);
        if (userData.AccountData == null)
        {
            UnityEngine.Debug.LogError("没有创建账号!");
            return;
        }
        userData.PlayerData = GetSavedData <PBPlayerData>(PLAYER_DATA_KEY);
        if (userData.PlayerData == null)
        {
            UnityEngine.Debug.LogError("没有创建角色!");
            return;
        }
        userData.PlayerDetailData = GetSavedData <PBPlayerDetailData>(PLAYER_DETAIL_DATA_KEY);
        if (userData.PlayerDetailData == null)
        {
            UnityEngine.Debug.LogError("没有创建角色详细信息!");
            return;
        }
        SendToClient(MessageId_Receive.GCSignIn, userData);
    }