1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-25 05:57:45 +00:00

WIP fixing contentfinder, packet structs updated to the best of my knowledge.

Still quite a few fields to map.
This commit is contained in:
Mordred 2023-01-22 10:06:21 +01:00
parent b1ecbb7446
commit 5b040405ce
6 changed files with 22 additions and 5 deletions

View file

@ -216,8 +216,9 @@ namespace Sapphire::Network::Packets
CancelLogoutCountdown = 0x264,
FateDebugCommand = 0x265,
ContentAction = 0x266,
//RequestPenalties = 0x267,
RequestPenalties = 0x2CB,
RequestBonus = 0x2CC,
Logout = 0x269,
HousingHouseName = 0x026A,

View file

@ -354,7 +354,7 @@ namespace Sapphire::Network::Packets
HousingGetHouseBuddyStableListResult = 0x308,
HouseTrainBuddyData = 0x309,
ContentBonus = 0x30C,
ContentBonus = 0x311,
FcChestLog = 0x316,
SalvageResult = 0x317,

View file

@ -1866,7 +1866,8 @@ namespace Sapphire::Network::Packets::WorldPackets::Server
*/
struct FFXIVIpcUpdateContent : FFXIVIpcBasePacket< UpdateContent >
{
uint32_t territoryType;
uint16_t territoryType;
uint16_t padding;
uint32_t kind;
uint32_t value1;
uint32_t value2;
@ -1874,22 +1875,32 @@ namespace Sapphire::Network::Packets::WorldPackets::Server
struct FFXIVIpcUpdateFindContent : FFXIVIpcBasePacket< UpdateFindContent >
{
uint32_t territoryType;
uint32_t kind;
uint32_t value1;
uint32_t value2;
uint32_t value3;
uint32_t value4;
uint16_t Unknown;
uint16_t territoryType;
uint16_t Unknown1;
uint16_t Unknown2;
uint16_t Unknown3;
uint16_t Unknown4;
};
struct FFXIVIpcNotifyFindContentStatus : FFXIVIpcBasePacket< NotifyFindContentStatus >
{
uint32_t territoryType;
uint16_t territoryType;
uint16_t padding;
uint8_t status;
uint8_t tankRoleCount;
uint8_t dpsRoleCount;
uint8_t healerRoleCount;
uint8_t matchingTime;
uint8_t unknown;
uint8_t unknown1;
uint8_t unknown2;
uint8_t unknown3;
};
/**

View file

@ -130,6 +130,7 @@ Sapphire::Network::GameConnection::GameConnection( Sapphire::Network::HivePtr pH
setZoneHandler( YieldEventSceneIntAndString, "YieldEventSceneIntAndString", &GameConnection::yieldEventSceneIntAndString );
setZoneHandler( RequestPenalties, "RequestPenalties", &GameConnection::cfRequestPenalties );
setZoneHandler( RequestBonus, "RequestBonus", &GameConnection::requestBonus );
setZoneHandler( FindContent, "FindContent", &GameConnection::findContent );
setZoneHandler( Find5Contents, "Find5Contents", &GameConnection::find5Contents );
setZoneHandler( FindContentAsRandom, "FindContentAsRandom", &GameConnection::findContentAsRandom );

View file

@ -181,6 +181,7 @@ namespace Sapphire::Network
DECLARE_HANDLER( logoutHandler );
DECLARE_HANDLER( cfRequestPenalties );
DECLARE_HANDLER( requestBonus );
DECLARE_HANDLER( findContent );
DECLARE_HANDLER( find5Contents );

View file

@ -35,7 +35,10 @@ void Sapphire::Network::GameConnection::cfRequestPenalties( const Packets::FFXIV
}
dutyInfoPacket->data().penalties[ 0 ] = static_cast< uint8_t >( penaltyMinutes ); //TODO: What is the second array for?
queueOutPacket( dutyInfoPacket );
}
void Sapphire::Network::GameConnection::requestBonus( const Packets::FFXIVARR_PACKET_RAW& inPacket, Entity::Player& player )
{
auto inNeedsPacket = makeZonePacket< Server::FFXIVIpcContentBonus >( player.getId() );
queueOutPacket( inNeedsPacket );
}