Map packet now sends region ID used to set various UI things (ie: search). Added weather ids to the weather packet. GM packet now takes a true/false value; the proper function is to send a 0x1D3 packet whenever client asks for it... false unless has GM then true.

This commit is contained in:
Filip Maj 2015-12-13 22:18:22 -05:00
parent 6f8125a947
commit fa3d69b8b3
3 changed files with 30 additions and 7 deletions

View File

@ -13,7 +13,7 @@ namespace FFXIVClassic_Map_Server.packets.send
public const ushort OPCODE = 0x0005;
public const uint PACKET_SIZE = 0x30;
public static SubPacket buildPacket(uint playerActorID, uint mapID)
public static SubPacket buildPacket(uint playerActorID, uint mapID, uint regionID)
{
byte[] data = new byte[PACKET_SIZE - 0x20];
@ -22,7 +22,7 @@ namespace FFXIVClassic_Map_Server.packets.send
using (BinaryWriter binWriter = new BinaryWriter(mem))
{
binWriter.Write((uint)mapID);
binWriter.Write((uint)0x9B);
binWriter.Write((uint)regionID);
binWriter.Write((uint)0x28);
}
}

View File

@ -9,12 +9,35 @@ namespace FFXIVClassic_Map_Server.packets.send
{
class SetWeatherPacket
{
//TODO: Fix these ids!
public const uint WEATHER_CLEAR = 0x011F41;
public const uint WEATHER_FINE = 0x011F42;
public const uint WEATHER_CLOUDY = 0x011F3;
public const uint WEATHER_FOGGY = 0x011F4;
public const uint WEATHER_WINDY = 0x011F5; //NOT SUPPORTED in v1.23
public const uint WEATHER_BLUSTERY = 0x011F6;
public const uint WEATHER_RAINY = 0x011F7;
public const uint WEATHER_SHOWERY = 0x011F8; //NOT SUPPORTED in v1.23
public const uint WEATHER_THUNDERY = 0x011F9; //NOT SUPPORTED in v1.23
public const uint WEATHER_STORMY = 0x011FA;
public const uint WEATHER_DUSTY = 0x011FB; //NOT SUPPORTED in v1.23
public const uint WEATHER_SANDY = 0x011FC;
public const uint WEATHER_IFRIT = 0x011F4E;
public const uint WEATHER_GARUDA = 0x011F5C;
public const uint WEATHER_BLISTERIN = 0x011FD; //NOT SUPPORTED in v1.23
public const uint WEATHER_SNOWY = 0x011FE; //NOT SUPPORTED in v1.23
public const uint WEATHER_WINTRY = 0x011FF; //NOT SUPPORTED in v1.23
public const uint WEATHER_GLOOMY = 0x01200;
public const uint WEATHER_PREDALAMUD = 0x011F5F;
public const uint WEATHER_DALAMUD = 0x011F5E;
public const uint WEATHER_SCARYDALAMUD = 0x011F60;
public const ushort OPCODE = 0x000D;
public const uint PACKET_SIZE = 0x28;
public static SubPacket buildPacket(uint playerActorID, long weatherID)
public static SubPacket buildPacket(uint playerActorID, long weatherId)
{
return new SubPacket(OPCODE, 0, playerActorID, BitConverter.GetBytes(weatherID));
return new SubPacket(OPCODE, 0, playerActorID, BitConverter.GetBytes(weatherId));
}
}
}

View File

@ -12,10 +12,10 @@ namespace FFXIVClassic_Map_Server.packets.send.supportdesk
public const ushort OPCODE = 0x01D3;
public const uint PACKET_SIZE = 0x28;
public static SubPacket buildPacket(uint playerActorID)
public static SubPacket buildPacket(uint playerActorID, bool startGM)
{
byte[] data = new byte[PACKET_SIZE - 0x20];
data[0] = 1;
data[0] = (byte)(startGM ? 1 : 0);
return new SubPacket(OPCODE, playerActorID, playerActorID, data);
}
}