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

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

View File

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

View File

@ -23,8 +23,11 @@ namespace FFXIVClassic_World_Server
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));
}

View File

@ -97,33 +97,33 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
ulong time = Utils.MilisUnixTimeStampUTC();
List<GroupMember> members = BuildMemberList(session.sessionId);
session.clientConnection.QueuePacket(GroupHeaderPacket.buildPacket(session.sessionId, session.currentZoneId, time, this), true, false);
session.clientConnection.QueuePacket(GroupMembersBeginPacket.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));
int currentIndex = 0;
while (true)
{
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)
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)
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)
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
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)
{
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)

View File

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

View File

@ -189,7 +189,7 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
if (session == null)
continue;
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.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId);
session.clientConnection.QueuePacket(test, true, false);
SubPacket test = groupWork.buildPacket(session.sessionId);
session.clientConnection.QueuePacket(test);
test.DebugPrintSubPacket();
}

View File

@ -66,9 +66,9 @@ namespace FFXIVClassic_World_Server.DataObjects.Group
groupWork.addProperty(this, "work._globalTemp.variableCommand");
groupWork.setTarget("/_init");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId);
SubPacket test = groupWork.buildPacket(session.sessionId);
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");
SubPacket test = groupWork.buildPacket(session.sessionId, session.sessionId);
session.clientConnection.QueuePacket(test, true, false);
SubPacket test = groupWork.buildPacket(session.sessionId);
session.clientConnection.QueuePacket(test);
}
public override int GetMemberCount()

View File

@ -38,34 +38,34 @@ namespace FFXIVClassic_World_Server.DataObjects
{
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
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)
{
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
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)
{
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
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)
{
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
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)
mServer.AddSession(client, Session.Channel.CHAT, hello.sessionId);
client.QueuePacket(_0x7Packet.BuildPacket(0x0E016EE5), true, false);
client.QueuePacket(_0x2Packet.BuildPacket(hello.sessionId), true, false);
client.QueuePacket(_0x7Packet.BuildPacket(0x0E016EE5));
client.QueuePacket(_0x2Packet.BuildPacket(hello.sessionId));
}
//Ping from World Server
else if (subpacket.header.type == 0x07)
@ -162,7 +162,7 @@ namespace FFXIVClassic_World_Server
Session thatSession = mServer.GetSession(playerParty.members[i]);
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;
@ -173,7 +173,7 @@ namespace FFXIVClassic_World_Server
case 0x133:
GroupCreatedPacket groupCreatedPacket = new GroupCreatedPacket(subpacket.data);
if (!mServer.GetWorldManager().SendGroupInit(session, groupCreatedPacket.groupId))
session.clientConnection.QueuePacket(subpacket, true, false);
session.clientConnection.QueuePacket(subpacket);
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_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];
@ -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);
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];
@ -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);
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];
@ -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);
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];
@ -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);
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)

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.Write((byte)runningByteTotal);
closeStreams();
SubPacket packet = new SubPacket(OPCODE, playerActorID, actorID, data);
SubPacket packet = new SubPacket(OPCODE, playerActorID, data);
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
*/
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)
@ -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))
{
ClientConnection conn = mZoneSessionList[sessionId].clientConnection;
conn.QueuePacket(subpacket, true, false);
conn.QueuePacket(subpacket);
conn.FlushQueuedSendPackets();
}

View File

@ -237,15 +237,15 @@ namespace FFXIVClassic_World_Server
}
}
SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(session.sessionId, activeGroupIndex);
session.clientConnection.QueuePacket(activeLsPacket, true, false);
session.clientConnection.QueuePacket(activeLsPacket);
}
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, "", String.Format("Welcome to {0}!", ConfigConstants.PREF_SERVERNAME)), true, false);
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, "", "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, "", "-------- Login Message --------"));
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!"));
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)
@ -433,7 +433,7 @@ namespace FFXIVClassic_World_Server
{
requestSession.SetActiveLS(lsName);
SubPacket activeLsPacket = SetActiveLinkshellPacket.BuildPacket(requestSession.sessionId, 0);
requestSession.clientConnection.QueuePacket(activeLsPacket, true, false);
requestSession.clientConnection.QueuePacket(activeLsPacket);
requestSession.SendGameMessage(25132, 0x20, (object)1);
}
else
@ -448,7 +448,7 @@ namespace FFXIVClassic_World_Server
{
requestSession.SetActiveLS(lsName);
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);
}
}