Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- namespace VenusProject.Network.GamePackets
- {
- public unsafe class WindowStats
- {
- byte[] Packet;
- public WindowStats(Client.GameState client)
- {
- Packet = new byte[144 + 8];
- fixed (byte* Pack = Packet)
- {
- *(ushort*)(Pack + (Packet.Length - 8)) = 0;
- *((ushort*)(Pack + 2)) = PacketID.WindowStats;
- *((uint*)(Pack + 8)) = client.Entity.UID;
- *((uint*)(Pack + 12)) = client.Entity.MaxHitpoints;
- *((uint*)(Pack + 16)) = client.Entity.MaxMana;
- *((uint*)(Pack + 20)) = client.Entity.MinAttack;
- *((uint*)(Pack + 24)) = client.Entity.MaxAttack;
- *((uint*)(Pack + 28)) = client.Entity.Defence;
- *((uint*)(Pack + 32)) = client.Entity.MagicAttack;
- *((uint*)(Pack + 36)) = client.Entity.MagicDefence;
- *((uint*)(Pack + 40)) = client.Entity.Dodge;
- *((uint*)(Pack + 44)) = client.AgilityItem;
- *((int*)(Pack + 48)) = client.Accuracy;
- *((int*)(Pack + 52)) = client.Entity.Gems[1];
- *((int*)(Pack + 56)) = client.Entity.Gems[0];
- *((uint*)(Pack + 60)) = client.Entity.MagicDefence;
- *((int*)(Pack + 64)) = client.Entity.Gems[7];
- *((double*)(Pack + 68)) = ((1 - client.Entity.ItemBless) * 100);
- *((int*)(Pack + 72)) = client.Entity.CriticalStrike;
- *((int*)(Pack + 76)) = client.Entity.SkillCStrike;
- *((int*)(Pack + 80)) = client.Entity.Immunity;
- *((int*)(Pack + 84)) = client.Entity.Penetration;
- *((int*)(Pack + 88)) = client.Entity.Block;
- *((int*)(Pack + 92)) = client.Entity.Breaktrough;
- *((int*)(Pack + 96)) = client.Entity.Counteraction;
- *((uint*)(Pack + 100)) = client.Entity.Detoxication;
- *((uint*)(Pack + 104)) = client.Entity.PhysicalDamageIncrease;
- *((uint*)(Pack + 108)) = client.Entity.MagicDamageIncrease;
- *((uint*)(Pack + 112)) = client.Entity.PhysicalDamageDecrease;
- *((uint*)(Pack + 116)) = client.Entity.MagicDamageDecrease;
- *((int*)(Pack + 120)) = client.Entity.MetalResistance;
- *((int*)(Pack + 124)) = client.Entity.WoodResistance;
- *((int*)(Pack + 128)) = client.Entity.WaterResistance;
- *((int*)(Pack + 132)) = client.Entity.FireResistance;
- *((int*)(Pack + 136)) = client.Entity.EarthResistance;
- *((int*)(Pack + 140)) = client.Entity.PerfectionLevel;
- }
- }
- public void Send(Client.GameState client)
- {
- client.Send(Packet);
- }
- public byte[] ToArray()
- {
- fixed (void* Pack = Packet)
- return Packet;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement