1
Fork 0
mirror of https://bitbucket.org/Ioncannon/project-meteor-server.git synced 2025-04-20 19:57:46 +00:00

Refactored world server.

This commit is contained in:
Filip Maj 2017-06-27 17:31:17 -04:00
parent 9353f77db0
commit 516564a896
33 changed files with 83 additions and 83 deletions

View file

@ -321,9 +321,8 @@ namespace FFXIVClassic_Map_Server.Actors
public void ChangeState(ushort newState) public void ChangeState(ushort newState)
{ {
currentMainState = newState; currentMainState = newState;
SubPacket ChangeStatePacket = SetActorStatePacket.BuildPacket(actorId, newState, currentSubState); SubPacket ChangeStatePacket = SetActorStatePacket.BuildPacket(actorId, newState, currentSubState);
//TODO: Fill this out! SubPacket battleActionPacket = BattleActionX01Packet.BuildPacket(actorId, actorId, actorId, 0x72000062, 1, 0, 0x05209, 0, 0);
SubPacket battleActionPacket = BattleActionX01Packet.BuildPacket(actorId, actorId, actorId, 0, 0, 0, 0, 0, 0);
zone.BroadcastPacketAroundActor(this, ChangeStatePacket); zone.BroadcastPacketAroundActor(this, ChangeStatePacket);
zone.BroadcastPacketAroundActor(this, battleActionPacket); zone.BroadcastPacketAroundActor(this, battleActionPacket);
} }

View file

@ -2,8 +2,6 @@
using System; using System;
using System.IO; using System.IO;
using FFXIVClassic.Common;
namespace FFXIVClassic_Map_Server.packets.send.actor.battle namespace FFXIVClassic_Map_Server.packets.send.actor.battle
{ {
class BattleActionX01Packet class BattleActionX01Packet

View file

@ -23,8 +23,11 @@ namespace FFXIVClassic_World_Server
SendPacketQueue.Add(packet); SendPacketQueue.Add(packet);
} }
public void QueuePacket(SubPacket subpacket, bool isAuthed, bool isEncrypted) public void QueuePacket(SubPacket subpacket)
{ {
bool isAuthed = true;
bool isEncrypted = false;
subpacket.SetTargetId(owner.sessionId);
SendPacketQueue.Add(BasePacket.CreatePacket(subpacket, isAuthed, isEncrypted)); SendPacketQueue.Add(BasePacket.CreatePacket(subpacket, isAuthed, isEncrypted));
} }

View file

@ -97,33 +97,33 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
ulong time = Utils.MilisUnixTimeStampUTC(); ulong time = Utils.MilisUnixTimeStampUTC();
List<GroupMember> members = BuildMemberList(session.sessionId); List<GroupMember> members = BuildMemberList(session.sessionId);
session.clientConnection.QueuePacket(GroupHeaderPacket.buildPacket(session.sessionId, session.currentZoneId, time, this), true, false); session.clientConnection.QueuePacket(GroupHeaderPacket.buildPacket(session.sessionId, session.currentZoneId, time, this));
session.clientConnection.QueuePacket(GroupMembersBeginPacket.buildPacket(session.sessionId, session.currentZoneId, time, this), true, false); session.clientConnection.QueuePacket(GroupMembersBeginPacket.buildPacket(session.sessionId, session.currentZoneId, time, this));
int currentIndex = 0; int currentIndex = 0;
while (true) while (true)
{ {
if (GetMemberCount() - currentIndex >= 64) if (GetMemberCount() - currentIndex >= 64)
session.clientConnection.QueuePacket(GroupMembersX64Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex), true, false); session.clientConnection.QueuePacket(GroupMembersX64Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex));
else if (GetMemberCount() - currentIndex >= 32) else if (GetMemberCount() - currentIndex >= 32)
session.clientConnection.QueuePacket(GroupMembersX32Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex), true, false); session.clientConnection.QueuePacket(GroupMembersX32Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex));
else if (GetMemberCount() - currentIndex >= 16) else if (GetMemberCount() - currentIndex >= 16)
session.clientConnection.QueuePacket(GroupMembersX16Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex), true, false); session.clientConnection.QueuePacket(GroupMembersX16Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex));
else if (GetMemberCount() - currentIndex > 0) else if (GetMemberCount() - currentIndex > 0)
session.clientConnection.QueuePacket(GroupMembersX08Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex), true, false); session.clientConnection.QueuePacket(GroupMembersX08Packet.buildPacket(session.sessionId, session.currentZoneId, time, members, ref currentIndex));
else else
break; break;
} }
session.clientConnection.QueuePacket(GroupMembersEndPacket.buildPacket(session.sessionId, session.currentZoneId, time, this), true, false); session.clientConnection.QueuePacket(GroupMembersEndPacket.buildPacket(session.sessionId, session.currentZoneId, time, this));
} }
public void SendDeletePacket(Session session) public void SendDeletePacket(Session session)
{ {
if (session != null) if (session != null)
session.clientConnection.QueuePacket(DeleteGroupPacket.buildPacket(session.sessionId, this), true, false); session.clientConnection.QueuePacket(DeleteGroupPacket.buildPacket(session.sessionId, this));
} }
public virtual void SendInitWorkValues(Session session) public virtual void SendInitWorkValues(Session session)

View file

@ -120,9 +120,9 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
} }
groupWork.setTarget("/_init"); groupWork.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId); SubPacket test = groupWork.buildPacket(session.sessionId);
test.DebugPrintSubPacket(); test.DebugPrintSubPacket();
session.clientConnection.QueuePacket(test, true, false); session.clientConnection.QueuePacket(test);
} }
public void ResendWorkValues() public void ResendWorkValues()
@ -148,8 +148,8 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
Session session = Server.GetServer().GetSession(members[i].charaId); Session session = Server.GetServer().GetSession(members[i].charaId);
if (session != null) if (session != null)
{ {
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId); SubPacket test = groupWork.buildPacket(session.sessionId);
session.clientConnection.QueuePacket(test, true, false); session.clientConnection.QueuePacket(test);
} }
} }
} }

View file

@ -189,7 +189,7 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
if (session == null) if (session == null)
continue; continue;
else else
session.clientConnection.QueuePacket(leaderUpdate.buildPacket(session.sessionId, session.sessionId), true, false); session.clientConnection.QueuePacket(leaderUpdate.buildPacket(session.sessionId));
} }
} }
@ -226,8 +226,8 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
groupWork.addProperty(this, "partyGroupWork._globalTemp.owner"); groupWork.addProperty(this, "partyGroupWork._globalTemp.owner");
groupWork.setTarget("/_init"); groupWork.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId); SubPacket test = groupWork.buildPacket(session.sessionId);
session.clientConnection.QueuePacket(test, true, false); session.clientConnection.QueuePacket(test);
test.DebugPrintSubPacket(); test.DebugPrintSubPacket();
} }

View file

@ -66,9 +66,9 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
groupWork.addProperty(this, "work._globalTemp.variableCommand"); groupWork.addProperty(this, "work._globalTemp.variableCommand");
groupWork.setTarget("/_init"); groupWork.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId); SubPacket test = groupWork.buildPacket(session.sessionId);
test.DebugPrintSubPacket(); test.DebugPrintSubPacket();
session.clientConnection.QueuePacket(test, true, false); session.clientConnection.QueuePacket(test);
} }
} }

View file

@ -49,8 +49,8 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
groupWork.setTarget("/_init"); groupWork.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId); SubPacket test = groupWork.buildPacket(session.sessionId);
session.clientConnection.QueuePacket(test, true, false); session.clientConnection.QueuePacket(test);
} }
public override int GetMemberCount() public override int GetMemberCount()

View file

@ -38,34 +38,34 @@ namespace FFXIVClassic_World_Server.DataObjects
{ {
if (msgParams == null || msgParams.Length == 0) if (msgParams == null || msgParams.Length == 0)
{ {
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, actorId, 0x5FF80001, textId, log), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, actorId, 0x5FF80001, textId, log));
} }
else else
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, actorId, 0x5FF80001, textId, log, LuaUtils.CreateLuaParamList(msgParams)), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, actorId, 0x5FF80001, textId, log, LuaUtils.CreateLuaParamList(msgParams)));
} }
public void SendGameMessage( ushort textId, byte log, params object[] msgParams) public void SendGameMessage( ushort textId, byte log, params object[] msgParams)
{ {
if (msgParams == null || msgParams.Length == 0) if (msgParams == null || msgParams.Length == 0)
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, log), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, log));
else else
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, log, LuaUtils.CreateLuaParamList(msgParams)), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, log, LuaUtils.CreateLuaParamList(msgParams)));
} }
public void SendGameMessage( ushort textId, byte log, string customSender, params object[] msgParams) public void SendGameMessage( ushort textId, byte log, string customSender, params object[] msgParams)
{ {
if (msgParams == null || msgParams.Length == 0) if (msgParams == null || msgParams.Length == 0)
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, customSender, log), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, customSender, log));
else else
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, customSender, log, LuaUtils.CreateLuaParamList(msgParams)), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, customSender, log, LuaUtils.CreateLuaParamList(msgParams)));
} }
public void SendGameMessage(ushort textId, byte log, uint displayId, params object[] msgParams) public void SendGameMessage(ushort textId, byte log, uint displayId, params object[] msgParams)
{ {
if (msgParams == null || msgParams.Length == 0) if (msgParams == null || msgParams.Length == 0)
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, displayId, log), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, displayId, log));
else else
clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, sessionId, 0x5FF80001, textId, displayId, log, LuaUtils.CreateLuaParamList(msgParams)), true, false); clientConnection.QueuePacket(GameMessagePacket.BuildPacket(0x5FF80001, 0x5FF80001, textId, displayId, log, LuaUtils.CreateLuaParamList(msgParams)));
} }

View file

@ -61,8 +61,8 @@ namespace FFXIVClassic_World_Server
else if (packet.header.connectionType == BasePacket.TYPE_CHAT) else if (packet.header.connectionType == BasePacket.TYPE_CHAT)
mServer.AddSession(client, Session.Channel.CHAT, hello.sessionId); mServer.AddSession(client, Session.Channel.CHAT, hello.sessionId);
client.QueuePacket(_0x7Packet.BuildPacket(0x0E016EE5), true, false); client.QueuePacket(_0x7Packet.BuildPacket(0x0E016EE5));
client.QueuePacket(_0x2Packet.BuildPacket(hello.sessionId), true, false); client.QueuePacket(_0x2Packet.BuildPacket(hello.sessionId));
} }
//Ping from World Server //Ping from World Server
else if (subpacket.header.type == 0x07) else if (subpacket.header.type == 0x07)
@ -162,7 +162,7 @@ namespace FFXIVClassic_World_Server
Session thatSession = mServer.GetSession(playerParty.members[i]); Session thatSession = mServer.GetSession(playerParty.members[i]);
if (thatSession != null && !session.Equals(thatSession)) if (thatSession != null && !session.Equals(thatSession))
{ {
thatSession.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, thatSession.sessionId, SendMessagePacket.MESSAGE_TYPE_PARTY, mServer.GetNameForId(session.sessionId), partyChatMessagePacket.message), true, false); thatSession.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, thatSession.sessionId, SendMessagePacket.MESSAGE_TYPE_PARTY, mServer.GetNameForId(session.sessionId), partyChatMessagePacket.message));
} }
} }
break; break;
@ -173,7 +173,7 @@ namespace FFXIVClassic_World_Server
case 0x133: case 0x133:
GroupCreatedPacket groupCreatedPacket = new GroupCreatedPacket(subpacket.data); GroupCreatedPacket groupCreatedPacket = new GroupCreatedPacket(subpacket.data);
if (!mServer.GetWorldManager().SendGroupInit(session, groupCreatedPacket.groupId)) if (!mServer.GetWorldManager().SendGroupInit(session, groupCreatedPacket.groupId))
session.clientConnection.QueuePacket(subpacket, true, false); session.clientConnection.QueuePacket(subpacket);
break; break;
} }
} }

View file

@ -58,7 +58,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
private const ushort SIZE_GAMEMESSAGE_WITHOUT_ACTOR4 = 0x48; private const ushort SIZE_GAMEMESSAGE_WITHOUT_ACTOR4 = 0x48;
private const ushort SIZE_GAMEMESSAGE_WITHOUT_ACTOR5 = 0x68; private const ushort SIZE_GAMEMESSAGE_WITHOUT_ACTOR5 = 0x68;
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint actorId, uint textOwnerActorId, ushort textId, byte log) public static SubPacket BuildPacket(uint sourceId, uint actorId, uint textOwnerActorId, ushort textId, byte log)
{ {
byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_ACTOR1 - 0x20]; byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_ACTOR1 - 0x20];
@ -73,10 +73,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(OPCODE_GAMEMESSAGE_WITH_ACTOR1, sourceId, targetId, data); return new SubPacket(OPCODE_GAMEMESSAGE_WITH_ACTOR1, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint actorId, uint textOwnerActorId, ushort textId, byte log, List<LuaParam> lParams) public static SubPacket BuildPacket(uint sourceId, uint actorId, uint textOwnerActorId, ushort textId, byte log, List<LuaParam> lParams)
{ {
int lParamsSize = findSizeOfParams(lParams); int lParamsSize = findSizeOfParams(lParams);
byte[] data; byte[] data;
@ -121,10 +121,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(opcode, sourceId, targetId, data); return new SubPacket(opcode, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, string sender, byte log) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, string sender, byte log)
{ {
byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_CUSTOM_SENDER1 - 0x20]; byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_CUSTOM_SENDER1 - 0x20];
@ -139,10 +139,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(OPCODE_GAMEMESSAGE_WITH_CUSTOM_SENDER1, sourceId, targetId, data); return new SubPacket(OPCODE_GAMEMESSAGE_WITH_CUSTOM_SENDER1, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, string sender, byte log, List<LuaParam> lParams) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, string sender, byte log, List<LuaParam> lParams)
{ {
int lParamsSize = findSizeOfParams(lParams); int lParamsSize = findSizeOfParams(lParams);
byte[] data; byte[] data;
@ -187,10 +187,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(opcode, sourceId, targetId, data); return new SubPacket(opcode, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, uint senderDisplayNameId, byte log) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, uint senderDisplayNameId, byte log)
{ {
byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_DISPID_SENDER1 - 0x20]; byte[] data = new byte[SIZE_GAMEMESSAGE_WITH_DISPID_SENDER1 - 0x20];
@ -205,10 +205,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(OPCODE_GAMEMESSAGE_WITH_DISPID_SENDER1, sourceId, targetId, data); return new SubPacket(OPCODE_GAMEMESSAGE_WITH_DISPID_SENDER1, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, uint senderDisplayNameId, byte log, List<LuaParam> lParams) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, uint senderDisplayNameId, byte log, List<LuaParam> lParams)
{ {
int lParamsSize = findSizeOfParams(lParams); int lParamsSize = findSizeOfParams(lParams);
byte[] data; byte[] data;
@ -253,10 +253,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(opcode, sourceId, targetId, data); return new SubPacket(opcode, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, byte log) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, byte log)
{ {
byte[] data = new byte[SIZE_GAMEMESSAGE_WITHOUT_ACTOR1 - 0x20]; byte[] data = new byte[SIZE_GAMEMESSAGE_WITHOUT_ACTOR1 - 0x20];
@ -270,10 +270,10 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(OPCODE_GAMEMESSAGE_WITHOUT_ACTOR1, sourceId, targetId, data); return new SubPacket(OPCODE_GAMEMESSAGE_WITHOUT_ACTOR1, sourceId, data);
} }
public static SubPacket BuildPacket(uint sourceId, uint targetId, uint textOwnerActorId, ushort textId, byte log, List<LuaParam> lParams) public static SubPacket BuildPacket(uint sourceId, uint textOwnerActorId, ushort textId, byte log, List<LuaParam> lParams)
{ {
int lParamsSize = findSizeOfParams(lParams); int lParamsSize = findSizeOfParams(lParams);
byte[] data; byte[] data;
@ -317,7 +317,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(opcode, sourceId, targetId, data); return new SubPacket(opcode, sourceId, data);
} }
private static int findSizeOfParams(List<LuaParam> lParams) private static int findSizeOfParams(List<LuaParam> lParams)

View file

@ -35,7 +35,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, sessionId, sessionId, data); return new SubPacket(OPCODE, sessionId, data);
} }
} }
} }

View file

@ -49,7 +49,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -38,7 +38,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, sessionId, sessionId, data); return new SubPacket(OPCODE, sessionId, data);
} }
} }
} }

View file

@ -56,7 +56,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -31,7 +31,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -31,7 +31,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, sessionId, sessionId, data); return new SubPacket(OPCODE, sessionId, data);
} }
} }

View file

@ -48,7 +48,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -45,7 +45,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -45,7 +45,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -45,7 +45,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, playerActorID, playerActorID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }
} }

View file

@ -36,7 +36,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
} }
return new SubPacket(OPCODE, sessionId, sessionId, data); return new SubPacket(OPCODE, sessionId, data);
} }
} }
} }

View file

@ -195,14 +195,14 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets.Groups
} }
public SubPacket buildPacket(uint playerActorID, uint actorID) public SubPacket buildPacket(uint playerActorID)
{ {
binWriter.Seek(0x8, SeekOrigin.Begin); binWriter.Seek(0x8, SeekOrigin.Begin);
binWriter.Write((byte)runningByteTotal); binWriter.Write((byte)runningByteTotal);
closeStreams(); closeStreams();
SubPacket packet = new SubPacket(OPCODE, playerActorID, actorID, data); SubPacket packet = new SubPacket(OPCODE, playerActorID, data);
return packet; return packet;
} }

View file

@ -51,7 +51,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Subpackets
} }
} }
return new SubPacket(OPCODE, playerActorID, targetID, data); return new SubPacket(OPCODE, playerActorID, data);
} }
} }

View file

@ -41,7 +41,7 @@ namespace FFXIVClassic_World_Server.Packets.Send
0xB8, 0x8D, 0xF0, 0x2B, 0x88, 0xAF, 0x5E, 0x26 0xB8, 0x8D, 0xF0, 0x2B, 0x88, 0xAF, 0x5E, 0x26
*/ */
return new SubPacket(false, OPCODE, 0, 0, data); return new SubPacket(false, OPCODE, 0, data);
} }
} }
} }

View file

@ -31,7 +31,7 @@ namespace FFXIVClassic_World_Server.Packets.Send
} }
} }
return new SubPacket(false, OPCODE, 0, 0, data); return new SubPacket(false, OPCODE, 0, data);
} }
} }
} }

View file

@ -27,7 +27,7 @@ namespace FFXIVClassic_World_Server.Packets.Send.Login
} }
} }
return new SubPacket(false, OPCODE, 0, 0, data); return new SubPacket(false, OPCODE, 0, data);
} }
} }
} }

View file

@ -31,7 +31,7 @@ namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send
} }
} }
return new SubPacket(true, OPCODE, 0, session.sessionId, data); return new SubPacket(true, OPCODE, 0, data);
} }
} }
} }

View file

@ -27,7 +27,7 @@ namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send.Group
} }
} }
return new SubPacket(true, OPCODE, 0, session.sessionId, data); return new SubPacket(true, OPCODE, 0, data);
} }
} }
} }

View file

@ -29,7 +29,7 @@ namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send
} }
} }
return new SubPacket(true, OPCODE, 0, session.sessionId, data); return new SubPacket(true, OPCODE, 0, data);
} }
} }
} }

View file

@ -31,7 +31,7 @@ namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send
} }
} }
return new SubPacket(true, OPCODE, 0, session.sessionId, data); return new SubPacket(true, OPCODE, 0, data);
} }
public static SubPacket BuildPacket(Session session, uint destinationZoneId, string destinationPrivateArea, byte spawnType, float spawnX, float spawnY, float spawnZ, float spawnRotation) public static SubPacket BuildPacket(Session session, uint destinationZoneId, string destinationPrivateArea, byte spawnType, float spawnX, float spawnY, float spawnZ, float spawnRotation)
@ -57,7 +57,7 @@ namespace FFXIVClassic_World_Server.Packets.WorldPackets.Send
} }
} }
return new SubPacket(true, OPCODE, 0, session.sessionId, data); return new SubPacket(true, OPCODE, 0, data);
} }
} }
} }

View file

@ -337,7 +337,7 @@ namespace FFXIVClassic_World_Server
else if (mZoneSessionList.ContainsKey(sessionId)) else if (mZoneSessionList.ContainsKey(sessionId))
{ {
ClientConnection conn = mZoneSessionList[sessionId].clientConnection; ClientConnection conn = mZoneSessionList[sessionId].clientConnection;
conn.QueuePacket(subpacket, true, false); conn.QueuePacket(subpacket);
conn.FlushQueuedSendPackets(); conn.FlushQueuedSendPackets();
} }

View file

@ -237,15 +237,15 @@ namespace FFXIVClassic_World_Server
} }
} }
SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(session.sessionId, activeGroupIndex); SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(session.sessionId, activeGroupIndex);
session.clientConnection.QueuePacket(activeLsPacket, true, false); session.clientConnection.QueuePacket(activeLsPacket);
} }
private void SendMotD(Session session) private void SendMotD(Session session)
{ {
session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "-------- Login Message --------"), true, false); session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "-------- Login Message --------"));
session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", String.Format("Welcome to {0}!", ConfigConstants.PREF_SERVERNAME)), true, false); session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", String.Format("Welcome to {0}!", ConfigConstants.PREF_SERVERNAME)));
session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "Welcome to Eorzea!"), true, false); session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "Welcome to Eorzea!"));
session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "Here is a test Message of the Day from the World Server!"), true, false); session.clientConnection.QueuePacket(SendMessagePacket.BuildPacket(session.sessionId, session.sessionId, SendMessagePacket.MESSAGE_TYPE_GENERAL_INFO, "", "Here is a test Message of the Day from the World Server!"));
} }
public void SendPartySync(Party party) public void SendPartySync(Party party)
@ -433,7 +433,7 @@ namespace FFXIVClassic_World_Server
{ {
requestSession.SetActiveLS(lsName); requestSession.SetActiveLS(lsName);
SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(requestSession.sessionId, 0); SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(requestSession.sessionId, 0);
requestSession.clientConnection.QueuePacket(activeLsPacket, true, false); requestSession.clientConnection.QueuePacket(activeLsPacket);
requestSession.SendGameMessage(25132, 0x20, (object)1); requestSession.SendGameMessage(25132, 0x20, (object)1);
} }
else else
@ -448,7 +448,7 @@ namespace FFXIVClassic_World_Server
{ {
requestSession.SetActiveLS(lsName); requestSession.SetActiveLS(lsName);
SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(requestSession.sessionId, ls.groupIndex); SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(requestSession.sessionId, ls.groupIndex);
requestSession.clientConnection.QueuePacket(activeLsPacket, true, false); requestSession.clientConnection.QueuePacket(activeLsPacket);
requestSession.SendGameMessage(25131, 0x20, (object)1, (object)lsName); requestSession.SendGameMessage(25131, 0x20, (object)1, (object)lsName);
} }
} }