mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-25 11:07:45 +00:00
5.35 hotfix update for custom stuff
This commit is contained in:
parent
cc1e6d2258
commit
b284259cdc
3 changed files with 21 additions and 15 deletions
|
@ -136,8 +136,8 @@ Sapphire::Network::GameConnection::GameConnection( Sapphire::Network::HivePtr pH
|
|||
setChatHandler( ClientChatIpcType::TellReq, "TellReq", &GameConnection::tellHandler );
|
||||
setChatHandler( ClientZoneIpcType::PartyChatHandler, "PartyChatHandler", &GameConnection::partyChatHandler );
|
||||
|
||||
setZoneHandler( ClientZoneIpcType::SocialInviteHandler, "SocialInviteHandler", &GameConnection::socialInviteHandler );
|
||||
setZoneHandler( ClientZoneIpcType::SocialInviteResponseHandler, "SocialInviteResponseHandler", &GameConnection::socialInviteResponseHandler );
|
||||
setZoneHandler( ClientZoneIpcType::SocialReqSendHandler, "SocialReqSendHandler", &GameConnection::socialInviteHandler );
|
||||
setZoneHandler( ClientZoneIpcType::SocialResponseHandler, "SocialResponseHandler", &GameConnection::socialInviteResponseHandler );
|
||||
setZoneHandler( ClientZoneIpcType::PartySetLeaderHandler, "PartySetLeaderHandler", &GameConnection::partySetLeaderHandler );
|
||||
setZoneHandler( ClientZoneIpcType::LeavePartyHandler, "LeavePartyHandler", &GameConnection::leavePartyHandler );
|
||||
setZoneHandler( ClientZoneIpcType::KickPartyMemberHandler, "KickPartyMemberHandler", &GameConnection::kickPartyMemberHandler );
|
||||
|
|
|
@ -879,7 +879,7 @@ void Sapphire::Network::GameConnection::worldInteractionhandler( const Packets::
|
|||
|
||||
void Sapphire::Network::GameConnection::socialInviteHandler( const Packets::FFXIVARR_PACKET_RAW& inPacket, Entity::Player& player )
|
||||
{
|
||||
const auto packetIn = ZoneChannelPacket< Client::FFXIVIpcSocialInviteHandler >( inPacket );
|
||||
const auto packetIn = ZoneChannelPacket< Client::FFXIVIpcSocialReqSendHandler >( inPacket );
|
||||
switch( packetIn.data().socialType )
|
||||
{
|
||||
case 1:
|
||||
|
@ -894,7 +894,7 @@ void Sapphire::Network::GameConnection::socialInviteHandler( const Packets::FFXI
|
|||
auto targetPlayer = session->getPlayer();
|
||||
if( targetPlayer->isInParty() )
|
||||
return;
|
||||
auto packet1 = makeZonePacket< FFXIVIpcSocialInviteMessage2 >( player.getId() );
|
||||
auto packet1 = makeZonePacket< FFXIVIpcSocialMessage2 >( player.getId() );
|
||||
packet1->data().contentId = targetPlayer->getContentId();
|
||||
packet1->data().p1 = packetIn.data().p1;
|
||||
packet1->data().p2 = packetIn.data().p2;
|
||||
|
@ -902,7 +902,7 @@ void Sapphire::Network::GameConnection::socialInviteHandler( const Packets::FFXI
|
|||
memcpy( packet1->data().name, targetPlayer->getName().c_str(), targetPlayer->getName().length() + 1 );
|
||||
player.queuePacket( packet1 );
|
||||
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialInviteMessage >( targetPlayer->getId() );
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialMessage >( targetPlayer->getId() );
|
||||
packet2->data().contentId = player.getContentId();
|
||||
packet2->data().expireTime = Common::Util::getTimeSeconds() + 30;
|
||||
packet2->data().p1 = packetIn.data().p1;
|
||||
|
@ -922,7 +922,7 @@ void Sapphire::Network::GameConnection::socialInviteHandler( const Packets::FFXI
|
|||
|
||||
void Sapphire::Network::GameConnection::socialInviteResponseHandler( const Packets::FFXIVARR_PACKET_RAW& inPacket, Entity::Player& player )
|
||||
{
|
||||
const auto packetIn = ZoneChannelPacket< Client::FFXIVIpcSocialInviteResponseHandler >( inPacket );
|
||||
const auto packetIn = ZoneChannelPacket< Client::FFXIVIpcSocialResponseHandler >( inPacket );
|
||||
switch( packetIn.data().socialType )
|
||||
{
|
||||
case 1:
|
||||
|
@ -932,7 +932,7 @@ void Sapphire::Network::GameConnection::socialInviteResponseHandler( const Packe
|
|||
auto response = packetIn.data().response;
|
||||
auto sender = player.getPartyInvitationSender();
|
||||
player.setPartyInvitationSender( nullptr );
|
||||
auto packet1 = makeZonePacket< FFXIVIpcSocialInviteResponseMessage >( player.getId() );
|
||||
auto packet1 = makeZonePacket< FFXIVIpcSocialRequestResponse >( player.getId() );
|
||||
packet1->data().contentId = sender->getContentId();
|
||||
packet1->data().u1AlwaysOne = 1;
|
||||
packet1->data().response = response;
|
||||
|
@ -964,7 +964,7 @@ void Sapphire::Network::GameConnection::socialInviteResponseHandler( const Packe
|
|||
m->queuePacket( packetMsg );
|
||||
} );
|
||||
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialInviteMessage >( sender->getId() );
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialMessage >( sender->getId() );
|
||||
packet2->data().contentId = player.getContentId();
|
||||
packet2->data().expireTime = Common::Util::getTimeSeconds() + 30;
|
||||
packet2->data().p1 = packetIn.data().p1;
|
||||
|
@ -977,7 +977,7 @@ void Sapphire::Network::GameConnection::socialInviteResponseHandler( const Packe
|
|||
}
|
||||
else
|
||||
{
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialInviteMessage >( sender->getId() );
|
||||
auto packet2 = makeZonePacket< FFXIVIpcSocialMessage >( sender->getId() );
|
||||
packet2->data().contentId = player.getContentId();
|
||||
packet2->data().expireTime = Common::Util::getTimeSeconds() + 30;
|
||||
packet2->data().p1 = packetIn.data().p1;
|
||||
|
|
|
@ -25,7 +25,7 @@ namespace Sapphire::Network::Packets::Server
|
|||
private:
|
||||
void initialize( Entity::Player& player )
|
||||
{
|
||||
memset( &m_data.unknownOword[ 0 ], 255, reinterpret_cast< uint64_t >( &m_data.pvpLevel ) - reinterpret_cast< uint64_t >( &m_data.unknownOword[ 0 ] ) );
|
||||
memset( &m_data.unknownOword[ 0 ], 255, reinterpret_cast< uint64_t >( &m_data.padding2 ) - reinterpret_cast< uint64_t >( &m_data.unknownOword[ 0 ] ) );
|
||||
|
||||
m_data.contentId = player.getContentId();
|
||||
|
||||
|
@ -62,16 +62,17 @@ namespace Sapphire::Network::Packets::Server
|
|||
}
|
||||
|
||||
//memcpy( m_data.orchestrionMask, player.getOrchestrionBitmask(), sizeof( m_data.orchestrionMask ) );
|
||||
|
||||
//m_data.orchestrionMask[0] = 0xFE;
|
||||
//memcpy( m_data.mountGuideMask, player.getMountGuideBitmask(), sizeof( m_data.mountGuideMask ) );
|
||||
memset( m_data.mountGuideMask, 255, sizeof( m_data.mountGuideMask ) );
|
||||
memset( m_data.mountGuideMask, 0xFF, sizeof( m_data.mountGuideMask ) );
|
||||
m_data.mountGuideMask[21] = 0xBF; // mask out the broken mount
|
||||
|
||||
//memcpy( m_data.unlockBitmask, player.getUnlockBitmask(), sizeof( m_data.unlockBitmask ) );
|
||||
|
||||
//m_data.unlockBitmask[0] = 0xFD;
|
||||
//memcpy( m_data.discovery, player.getDiscoveryBitmask(), sizeof( m_data.discovery ) );
|
||||
|
||||
//m_data.discovery[0] = 0xFB;
|
||||
//memcpy( m_data.howto, player.getHowToArray(), sizeof( m_data.howto ) );
|
||||
|
||||
//m_data.howto[0] = 0xEF;
|
||||
// possibly max level or current level
|
||||
m_data.maxLevel = Common::MAX_PLAYER_LEVEL;
|
||||
m_data.expansion = Common::CURRENT_EXPANSION_ID;
|
||||
|
@ -82,10 +83,15 @@ namespace Sapphire::Network::Packets::Server
|
|||
|
||||
// enable all raids/guildhests/dungeons
|
||||
memset( m_data.unlockedDungeons, 0xFF, sizeof( m_data.unlockedDungeons ) );
|
||||
//m_data.unlockedDungeons[0] = 0xEE;
|
||||
memset( m_data.unlockedGuildhests, 0xFF, sizeof( m_data.unlockedGuildhests ) );
|
||||
//m_data.unlockedGuildhests[0] = 0xDF;
|
||||
memset( m_data.unlockedPvp, 0xFF, sizeof( m_data.unlockedPvp ) );
|
||||
//m_data.unlockedPvp[0] = 0xDE;
|
||||
memset( m_data.unlockedRaids, 0xFF, sizeof( m_data.unlockedRaids ) );
|
||||
//m_data.unlockedRaids[0] = 0xDD;
|
||||
memset( m_data.unlockedTrials, 0xFF, sizeof( m_data.unlockedTrials ) );
|
||||
//m_data.unlockedTrials[0] = 0xDB;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue