Zone server now uses the World server's group classes. MotD now shows proper world name. Added party functions to zone server.

This commit is contained in:
Filip Maj 2016-12-21 09:27:51 -05:00
parent ae38ee1bc1
commit e89b7557b3
22 changed files with 310 additions and 284 deletions

View file

@ -0,0 +1,33 @@
using FFXIVClassic.Common;
using FFXIVClassic_World_Server.DataObjects;
using FFXIVClassic_World_Server.DataObjects.Group;
using System;
using System.IO;
namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send.Group
{
class PartySyncPacket
{
public const ushort OPCODE = 0x1020;
public const uint PACKET_SIZE = 0x60;
public static SubPacket BuildPacket(Session session, Party party)
{
byte[] data = new byte[PACKET_SIZE - 0x20];
using (MemoryStream mem = new MemoryStream(data))
{
using (BinaryWriter binWriter = new BinaryWriter(mem))
{
binWriter.Write((UInt64)party.groupIndex);
binWriter.Write((UInt32)party.GetLeader());
binWriter.Write((UInt32)party.members.Count);
for (int i = 0; i < party.members.Count; i++)
binWriter.Write((UInt32)party.members[i]);
}
}
return new SubPacket(true, OPCODE, 0, session.sessionId, data);
}
}
}