本文整理汇总了C#中IClient.SelectCharacter方法的典型用法代码示例。如果您正苦于以下问题:C# IClient.SelectCharacter方法的具体用法?C# IClient.SelectCharacter怎么用?C# IClient.SelectCharacter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IClient
的用法示例。
在下文中一共展示了IClient.SelectCharacter方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandleRequest
public static void HandleRequest(Packet packet, IClient client, bool fromQueue)
{
int id = packet.GetInt();
if (id < 0 || id > client.Account.Characters.Count)
throw new ArgumentOutOfRangeException("Login character ID out of range");
client.SelectCharacter(client.Account.Characters[id]);
Packet reply = new Packet(PacketFamily.Welcome, PacketAction.Reply);
reply.AddShort((short)WelcomeReply.CharacterInfo);
reply.AddShort((short)client.Id);
reply.AddInt(id);
reply.AddShort((short)client.Character.Map.Data.Id);
reply.AddBytes(client.Character.Map.Data.RevisionID);
reply.AddThree((int)client.Character.Map.Data.PubFileLength);
reply.AddBytes(client.Server.ItemData.revisionId);
reply.AddShort((short)client.Server.ItemData.Count);
reply.AddBytes(client.Server.NpcData.revisionId);
reply.AddShort((short)client.Server.NpcData.Count);
reply.AddBytes(client.Server.SpellData.revisionId);
reply.AddShort((short)client.Server.SpellData.Count);
reply.AddBytes(client.Server.ClassData.revisionId);
reply.AddShort((short)client.Server.ClassData.Count);
reply.AddBreakString(client.Character.Name);
reply.AddBreakString(client.Character.Title ?? "");
reply.AddBreakString("Guild Name");
reply.AddBreakString("Guild Rank");
reply.AddChar(0); // Class
reply.AddString("TAG"); // Guild tag
reply.AddChar((byte)client.Character.Admin);
reply.AddChar(client.Character.Level); // Level
reply.AddInt(client.Character.Exp); // Exp
reply.AddInt(client.Character.Usage); // Usage
reply.AddShort(client.Character.Hp); // HP
reply.AddShort(client.Character.MaxHp); // MaxHP
reply.AddShort(client.Character.Tp); // TP
reply.AddShort(client.Character.MaxTp); // MaxTP
reply.AddShort(client.Character.MaxSp); // MaxSP
reply.AddShort(client.Character.StatPoints); // StatPts
reply.AddShort(client.Character.SkillPoints); // SkillPts
reply.AddShort(client.Character.Karma); // Karma
reply.AddShort(client.Character.MinDamage); // MinDam
reply.AddShort(client.Character.MaxDamage); // MaxDam
reply.AddShort(client.Character.Accuracy); // Accuracy
reply.AddShort(client.Character.Evade); // Evade
reply.AddShort(client.Character.Defence); // Armor
reply.AddShort(client.Character.Strength); // Str
reply.AddShort(client.Character.Wisdom); // Wis
reply.AddShort(client.Character.Intelligence); // Int
reply.AddShort(client.Character.Agility); // Agi
reply.AddShort(client.Character.Constitution); // Con
reply.AddShort(client.Character.Charisma); // Cha
// Inventory
reply.AddBreak();
reply.AddChar(1); // Guild Rank
reply.AddShort(2); // Jail map
reply.AddShort(4); // ?
reply.AddChar(24); // ?
reply.AddChar(24); // ?
reply.AddShort(10); // ?
reply.AddShort(10); // ?
reply.AddShort(0); // Admin command flood rate
reply.AddShort(2); // ?
reply.AddChar(0); // Login warning message
reply.AddBreak();
client.Send(reply);
}