mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-07-22 18:46:06 +02:00
Linkshell and WorkValue work.
This commit is contained in:
parent
1148619ca5
commit
2cc63960a7
10 changed files with 156 additions and 45 deletions
|
@ -1,6 +1,7 @@
|
|||
using FFXIVClassic.Common;
|
||||
using FFXIVClassic_World_Server.DataObjects;
|
||||
using FFXIVClassic_World_Server.DataObjects.Group;
|
||||
using FFXIVClassic_World_Server.Packets.Receive.Subpackets;
|
||||
using FFXIVClassic_World_Server.Packets.WorldPackets.Receive;
|
||||
using FFXIVClassic_World_Server.Packets.WorldPackets.Receive.Group;
|
||||
using System;
|
||||
|
@ -161,12 +162,11 @@ namespace FFXIVClassic_World_Server
|
|||
public void OnReceiveSubPacketFromZone(ZoneServer zoneServer, SubPacket subpacket)
|
||||
{
|
||||
uint sessionId = subpacket.header.targetId;
|
||||
Session session = GetSession(sessionId);
|
||||
|
||||
if (subpacket.gameMessage.opcode >= 0x1000)
|
||||
{
|
||||
subpacket.DebugPrintSubPacket();
|
||||
uint targetSession = subpacket.header.targetId;
|
||||
Session session = GetSession(targetSession);
|
||||
subpacket.DebugPrintSubPacket();
|
||||
|
||||
switch (subpacket.gameMessage.opcode)
|
||||
{
|
||||
|
@ -236,6 +236,21 @@ namespace FFXIVClassic_World_Server
|
|||
break;
|
||||
}
|
||||
}
|
||||
//Special case for groups. If it's a world group, send values, else send to zone server
|
||||
else if (subpacket.gameMessage.opcode == 0x133)
|
||||
{
|
||||
GroupCreatedPacket groupCreatedPacket = new GroupCreatedPacket(subpacket.data);
|
||||
if (mCurrentWorldGroups.ContainsKey(groupCreatedPacket.groupId))
|
||||
{
|
||||
mCurrentWorldGroups[groupCreatedPacket.groupId].SendInitWorkValues(session);
|
||||
}
|
||||
else //Not a world group, send to zone server
|
||||
{
|
||||
ClientConnection conn = mZoneSessionList[sessionId].clientConnection;
|
||||
conn.QueuePacket(subpacket, true, false);
|
||||
conn.FlushQueuedSendPackets();
|
||||
}
|
||||
}
|
||||
else if (mZoneSessionList.ContainsKey(sessionId))
|
||||
{
|
||||
ClientConnection conn = mZoneSessionList[sessionId].clientConnection;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue