예제 #1
0
        public override void OnRead(RiftClient From)
        {
            Log.Success("CharacterListRequest", "Characters For : " + From.GetIp + " RPC : " + From.Rm.RpcInfo.Description());

            if (From.Acct == null || From.Rm == null)
                return;

            LobbyCharacterListResponse ListRp = new LobbyCharacterListResponse();
            Character[] Chars = From.Rm.GetObject<CharactersMgr>().GetCharacters(From.Acct.Id);
            foreach (Character Char in Chars)
                ListRp.Characters.Add(Char);
            From.SendSerialized(ListRp);

            Log.Success("Characters","Count = " + ListRp.Characters.Count);

            if (From.JustCreatedCharacter >= 0)
            {
                long CharacterId = From.JustCreatedCharacter;
                From.JustCreatedCharacter = -1;

                LobbyCharacterSelectRequest Request = new LobbyCharacterSelectRequest();
                Request.GUID = CharacterId;
                Request.OnRead(From);
            }
        }
예제 #2
0
        public LobbyCharacterListResponse GetCharactersList(long AccountId)
        {
            Character[] Chars = GetCharacters(AccountId);

            LobbyCharacterListResponse Rp = new LobbyCharacterListResponse();
            Rp.Characters.AddRange(Chars);
            return Rp;
        }