05-28-2016, 02:53 AM
Дополнил пост, думаю поможет.
PROTOCOL_LOGIN_ACK
|
05-28-2016, 02:53 AM
Дополнил пост, думаю поможет.
05-28-2016, 02:59 AM
PROGRAMMATOR Написал:Дополнил пост, думаю поможет. я пропустил 4 байта , только это не помогло. [SRC=Csharp] ReadInt(); byte[] Unk = ReadBytes(100); PasswordLength = ReadByte(); Password = ReadString(ReadByte()).Trim(); LoginLength = ReadByte(); Login = ReadString(ReadByte()).Trim(); //Login = ReadString(ReadByte()).Trim(); Log.Info("Password{0} Login {1} ", Password, Login); [/SRC]
05-28-2016, 03:07 AM
Прикалываешься? Сделай так, как я написал, а потом оставь только вот это:
[SRC="csharp"]Skip(100); Password = ReadString(); Login = ReadString(); Log.Info($"Login {Login} Password {Password}"); [/SRC]
05-28-2016, 03:23 AM
PROGRAMMATOR Написал:Прикалываешься? Сделай так, как я написал, а потом оставь только вот это: Как видимо он отправляет null [SRC=Csharp] class PROTOCOL_LOGIN_ACK : ServerPacket { Account account; LoginState state; public PROTOCOL_LOGIN_ACK(LoginState state, Account account) { } public override void WriteImpl() { Logger.Instance.Info("Status = {0}", state); WriteB(new byte[15]); string id = account.Id.ToString(); WriteC(0); WriteS(id, id.Length); WriteC(0); WriteC(account.Login.Length); WriteS(account.Login); WriteQ(account.Id); WriteD((int)state); } } } [/SRC]
05-28-2016, 03:40 AM
Are You Serious?
Может начнёшь с того, что присвоишь account и state переданные данные?
05-28-2016, 12:54 PM
PROGRAMMATOR Написал:Are You Serious? Ошибка в том что приходит null. Нужно сделать так чтобы он находил имя по id-аккаунта. Но как это сделать хз.
05-28-2016, 10:33 PM
В ClientConnection добавь свойство:
[SRC="csharp"]public Account Account { get; set; } [/SRC] При авторизации проставляй аккаунт и всё. Никаких Player в этой игре нет, есть аккаунт и персонаж.
05-28-2016, 10:54 PM
PROGRAMMATOR Написал:В ClientConnection добавь свойство: Это свойство есть. Так у меня же есть PlayerManager, в котором есть, как понимаю мне его и надо вызвать. У меня в бд данных есть Player в котором идет , Имя , ранг , гп и т.д. [SRC=Csharp] public Player GetPlayer(int accountId) { return _service.GetPlayer(accountId); } [/SRC]
05-28-2016, 11:04 PM
Поинты, ранг и т.д. у аккаунта.
05-28-2016, 11:16 PM
PROGRAMMATOR Написал:Поинты, ранг и т.д. у аккаунта. то есть зря я создал отдельно Player, это все надо в Accоunt ? [SRC=Csharp] public class Player { public int Id { get; set; } public string Name { get; set; } public int Rank { get; set; } public int Points { get; set; } public int Cash { get; set; } } [/SRC] |
« Предыдущая | Следующая »
|
Возможно похожие темы ... | |||||
Тема | Автор | Ответы | Просмотры | Последний пост | |
Структура PROTOCOL_LOGIN_ACK | 15 | 4,025 |
01-20-2016, 01:02 AM Последний пост: PROGRAMMATOR |