1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-27 14:57:44 +00:00

Merge pull request #682 from pmgr/develop

Add PlaceFieldMarkerPreset IPC
This commit is contained in:
Adam 2020-06-21 13:57:03 +10:00 committed by GitHub
commit e398ae9b25
3 changed files with 54 additions and 1 deletions

View file

@ -566,6 +566,30 @@ namespace Sapphire::Common
}; };
enum FieldMarkerStatus : uint32_t
{
A = 0x1,
B = 0x2,
C = 0x4,
D = 0x8,
One = 0x10,
Two = 0x20,
Three = 0x40,
Four = 0x80
};
// TODO: consolidate these two into one since FieldMarkerStatus == 1 << FieldMarkerId?
enum class FieldMarkerId : uint8_t
{
A,
B,
C,
D,
One,
Two,
Three,
Four
};
enum struct ActionAspect : uint8_t enum struct ActionAspect : uint8_t
{ {
None = 0, // Doesn't imply unaspected None = 0, // Doesn't imply unaspected

View file

@ -336,7 +336,8 @@ namespace Sapphire::Network::Packets
ClientTrigger = 0x017D, // updated 5.25 ClientTrigger = 0x017D, // updated 5.25
DiscoveryHandler = 0x02C8, // updated 5.25 DiscoveryHandler = 0x02C8, // updated 5.25
PlaceFieldMarker = 0x013C, // updated 5.0 PlaceFieldMarkerPreset = 0x023F, // updated 5.25
PlaceFieldMarker = 0x01BA, // updated 5.25
SkillHandler = 0x0241, // updated 5.25 SkillHandler = 0x0241, // updated 5.25
GMCommand1 = 0x01EC, // updated 5.25 GMCommand1 = 0x01EC, // updated 5.25
GMCommand2 = 0x0368, // updated 5.25 GMCommand2 = 0x0368, // updated 5.25

View file

@ -1681,6 +1681,34 @@ namespace Sapphire::Network::Packets::Server
uint8_t bitmask; uint8_t bitmask;
}; };
/**
* Structural representation of the packet sent by the server
* to place/remove field marker presets
*/
struct FFXIVIpcPlaceFieldMarkerPreset : FFXIVIpcBasePacket< PlaceFieldMarkerPreset >
{
/*! which fieldmarks to show */
Common::FieldMarkerStatus status;
/*! A coordinates would be (float)Xints[0]/1000.0, (float)Yints[0]/1000.0, (float)Zints[0]/1000.0 */
uint32_t Xints[8];
uint32_t Yints[8];
uint32_t Zints[8];
};
/**
* Structural representation of the packet sent by the server
* to place/remove a field marker
*/
struct FFXIVIpcPlaceFieldMarker : FFXIVIpcBasePacket< PlaceFieldMarker >
{
Common::FieldMarkerId markerId;
uint8_t status;
uint8_t pad[2];
uint32_t Xint;
uint32_t Yint;
uint32_t Zint;
};
/** /**
* Structural representation of the packet sent by the server * Structural representation of the packet sent by the server
* to mount a player * to mount a player