Ejemplo n.º 1
0
 public static byte[] SendSpawnPlayers(Character ch)
 {
     Packet p = new Packet(200);
     p.WriteHexString("00");
     p.WriteInt(ch.MapId);
     p.WriteHexString("01 00");
     p.WriteInt(ch.CharacterId);
     p.WriteShort(ch.Position.X);
     p.WriteShort(ch.Position.Y);
     p.WriteHexString("76");
     p.WriteShort(ch.Position.X);
     p.WriteShort(ch.Position.Y);
     p.WriteHexString("76");
     p.WriteHexString("16 B2 00 00");
     p.WriteByte(ch.Class);
     p.WriteString(ch.Name);
     p.WriteInt(ch.Fame);
     p.WriteByte(Convert.ToByte(ch.Shop.Active));
     p.WriteString(ch.Shop.ShopName);
     p.WriteString(ch.Shop.ShopDesc);
     p.WriteHexString("00"); // purple name
     p.WriteHexString("00"); // fe
     p.WriteHexString("00"); // fe ring
     p.WriteHexString("00 00");
     if (ch.Guild != null)
     {
         p.WriteInt(ch.Guild.ID);
         p.WriteString(ch.Guild.Name);
         GuildMember member = ch.Guild.Members.Single(x => x.Character.CharacterId == ch.CharacterId);
         p.WriteInt((int)member.Rank);
         p.WriteString(member.Title);
         p.WriteHexString("00 00 00 00"); // picture
     }
     else
         p.WriteHexString("00 00 00");
     p.WriteHexString("00");
     if (ch.Party != null)
     {
         p.WriteInt(ch.Party.PartyID);
         p.WriteInt(ch.Party.Leader.CharacterId);
     }
     p.WriteHexString("00 00 00 00");
     foreach (Equipment e in ch.GetVisuals())
     {
         p.WriteShort(e.VisualID);
         p.WriteByte(e.Plus);
         p.WriteByte(e.Slvl);
         p.WriteByte(e.RequiredClass);
     }
     p.WriteByte(ch.Rebirth); // rebirth
     p.WriteHexString("00 00 00 00 00");
     p.WriteHexString("00 00 00 00"); // title
     return p.GetWrittenBuffer(PacketIds.SendSpawnPlayers);
 }
Ejemplo n.º 2
0
 public static byte[] SendSpawnPlayers(Character ch)
 {
     Packet p = new Packet(200);
     p.WriteHexString("00");
     p.WriteInt(ch.MapId);
     p.WriteHexString("01 00");
     p.WriteInt(ch.CharacterId);
     p.WriteShort(ch.X);
     p.WriteShort(ch.Y);
     p.WriteHexString("76");
     p.WriteShort(ch.X);
     p.WriteShort(ch.Y);
     p.WriteHexString("76");
     p.WriteHexString("16 B2 00 00");
     p.WriteByte(ch.Class);
     p.WriteString(ch.Name);
     p.WriteInt(ch.Fame);
     p.WriteHexString("00"); // bool selling
     p.WriteString(""); // shopname
     p.WriteString(""); // shopdesc
     p.WriteHexString("00"); // purple name
     p.WriteHexString("00"); // fe
     p.WriteHexString("00"); // fe ring
     p.WriteHexString("00"); // maybe has guild thingy
     //if Character has guild
     //p.WriteHexString("00 00 00 00"); // guild id
     //p.WriteString(""); // guild name
     //p.WriteHexString("00 00 00 00"); // maybe guild position
     //p.WriteHexString("00 00 00 00"); // maybe guild position
     //p.WriteHexString("00 00 00 00 00 00 00 00");
     //p.WriteHexString("00"); // something
     p.WriteHexString("00 00 00 00 00 00 00 00 00"); // else write this
     foreach (Equipment e in ch.GetVisuals())
     {
         p.WriteShort(e.VisualID);
         p.WriteByte(e.Plus);
         p.WriteByte(e.Slvl);
         p.WriteByte(e.RequiredClass);
     }
     p.WriteByte(ch.Rebirth); // rebirth
     p.WriteHexString("00 00 00 00 00");
     return p.GetWrittenBuffer(PacketIds.SendSpawnPlayers);
 }
Ejemplo n.º 3
0
        public static byte[] SendSpawnPlayer(Character ch)
        {
            Packet p = new Packet(200);
            p.WriteHexString("00");
            p.WriteInt(ch.CharacterId);
            p.WriteInt(ch.MapId);
            p.WriteShort(ch.Position.X);
            p.WriteShort(ch.Position.Y);
            p.WriteHexString("76");
            p.WriteShort(ch.Position.X);
            p.WriteShort(ch.Position.Y);
            p.WriteHexString("76");
            p.WriteHexString("0B C5 00 00");
            p.WriteByte(ch.Class);
            p.WriteString(ch.Name);
            p.WriteInt(ch.Fame);
            p.WriteByte(Convert.ToByte(ch.Shop.Active));
            p.WriteString(ch.Shop.ShopName);
            p.WriteString(ch.Shop.ShopDesc);
            p.WriteHexString("00 00 00 00 00 00 00 00 00");
            p.WriteInt(ch.Party.PartyID);
            p.WriteInt(ch.Party.Leader.CharacterId);
            p.WriteHexString("00 00 00 00");
            foreach (Equipment e in ch.GetVisuals())
            {
                p.WriteShort(e.VisualID);
                p.WriteByte(e.Plus);
                p.WriteByte(e.Slvl);
                p.WriteByte(e.RequiredClass);
            }
            p.WriteHexString("00 00 00 00 00 00");

            return p.GetWrittenBuffer(PacketIds.SendSpawnPlayer);
        }