mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-13 05:57:45 +00:00
Added packethandler for linkshell leave / invite decline
This commit is contained in:
parent
47df62f0b4
commit
55f9b0219f
5 changed files with 54 additions and 1 deletions
|
@ -415,6 +415,49 @@ struct FFXIVIpcLinkshellJoin : FFXIVIpcBasePacket< LinkshellJoin >
|
||||||
char MemberCharacterName[32];
|
char MemberCharacterName[32];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellLeave : FFXIVIpcBasePacket< LinkshellLeave >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellJoinOfficial : FFXIVIpcBasePacket< LinkshellJoinOfficial >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellChangeMaster : FFXIVIpcBasePacket< LinkshellChangeMaster >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
uint64_t NextMasterCharacterID;
|
||||||
|
char NextMasterCharacterName[32];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellKick : FFXIVIpcBasePacket< LinkshellKick >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
uint64_t LeaveCharacterID;
|
||||||
|
char LeaveCharacterName[32];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellAddLeader : FFXIVIpcBasePacket< LinkshellAddLeader >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
uint64_t MemberCharacterID;
|
||||||
|
char MemberCharacterName[32];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellRemoveLeader : FFXIVIpcBasePacket< LinkshellRemoveLeader >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
uint64_t MemberCharacterID;
|
||||||
|
char MemberCharacterName[32];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct FFXIVIpcLinkshellDeclineLeader : FFXIVIpcBasePacket< LinkshellDeclineLeader >
|
||||||
|
{
|
||||||
|
uint64_t LinkshellID;
|
||||||
|
};
|
||||||
|
|
||||||
struct FFXIVIpcShopEventHandler : FFXIVIpcBasePacket< StartUIEvent >
|
struct FFXIVIpcShopEventHandler : FFXIVIpcBasePacket< StartUIEvent >
|
||||||
{
|
{
|
||||||
/* 0000 */ uint32_t eventId;
|
/* 0000 */ uint32_t eventId;
|
||||||
|
|
|
@ -143,6 +143,8 @@ Sapphire::Network::GameConnection::GameConnection( Sapphire::Network::HivePtr pH
|
||||||
|
|
||||||
setZoneHandler( FriendlistRemove, "FriendlistRemove", &GameConnection::friendlistRemoveHandler );
|
setZoneHandler( FriendlistRemove, "FriendlistRemove", &GameConnection::friendlistRemoveHandler );
|
||||||
setZoneHandler( SetFriendlistGroup, "SetFriendlistGroup", &GameConnection::setFriendlistGroupHandler );
|
setZoneHandler( SetFriendlistGroup, "SetFriendlistGroup", &GameConnection::setFriendlistGroupHandler );
|
||||||
|
|
||||||
|
setZoneHandler( LinkshellLeave, "LinkshellLeave", &GameConnection::linkshellLeaveHandler );
|
||||||
}
|
}
|
||||||
|
|
||||||
Sapphire::Network::GameConnection::~GameConnection() = default;
|
Sapphire::Network::GameConnection::~GameConnection() = default;
|
||||||
|
|
|
@ -219,6 +219,8 @@ namespace Sapphire::Network
|
||||||
|
|
||||||
DECLARE_HANDLER( friendlistRemoveHandler );
|
DECLARE_HANDLER( friendlistRemoveHandler );
|
||||||
DECLARE_HANDLER( setFriendlistGroupHandler );
|
DECLARE_HANDLER( setFriendlistGroupHandler );
|
||||||
|
|
||||||
|
DECLARE_HANDLER( linkshellLeaveHandler );
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,4 +60,4 @@ void Sapphire::Network::GameConnection::setFriendlistGroupHandler( const Packets
|
||||||
return;
|
return;
|
||||||
|
|
||||||
flMgr.onAssignGroup( player, *target, data.group );
|
flMgr.onAssignGroup( player, *target, data.group );
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,4 +30,10 @@ void Sapphire::Network::GameConnection::linkshellJoinHandler( const Packets::FFX
|
||||||
auto& lsMgr = Common::Service< LinkshellMgr >::ref();
|
auto& lsMgr = Common::Service< LinkshellMgr >::ref();
|
||||||
auto charName = std::string( lsJoinPacket.data().MemberCharacterName );
|
auto charName = std::string( lsJoinPacket.data().MemberCharacterName );
|
||||||
lsMgr.invitePlayer( charName, lsJoinPacket.data().LinkshellID );
|
lsMgr.invitePlayer( charName, lsJoinPacket.data().LinkshellID );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Sapphire::Network::GameConnection::linkshellLeaveHandler( const Packets::FFXIVARR_PACKET_RAW& inPacket, Entity::Player& player )
|
||||||
|
{
|
||||||
|
const auto lsLeavePacket = ZoneChannelPacket< Client::FFXIVIpcLinkshellLeave >( inPacket );
|
||||||
}
|
}
|
Loading…
Add table
Reference in a new issue