diff --git a/src/servers/Server_Zone/GameConnection.cpp b/src/servers/Server_Zone/GameConnection.cpp index cca0745a..f12e4bed 100644 --- a/src/servers/Server_Zone/GameConnection.cpp +++ b/src/servers/Server_Zone/GameConnection.cpp @@ -83,6 +83,12 @@ Core::Network::GameConnection::GameConnection( Core::Network::HivePtr pHive, setHandler( ClientIpcType::ReturnEventHandler, "EventHandlerReturn", &GameConnection::eventHandler ); setHandler( ClientIpcType::TradeReturnEventHandler, "EventHandlerReturn", &GameConnection::eventHandler ); + + setHandler(ClientIpcType::CFDutyInfoHandler, "CFDutyInfoRequest", &GameConnection::cfDutyInfoRequest ); + setHandler(ClientIpcType::CFRegisterDuty, "CFRegisterDuty", &GameConnection::cfRegisterDuty ); + setHandler(ClientIpcType::CFRegisterRoulette, "CFRegisterRoulette", &GameConnection::cfRegisterRoulette ); + setHandler(ClientIpcType::CFCommenceHandler, "CFDutyAccepted", &GameConnection::cfDutyAccepted); + } Core::Network::GameConnection::~GameConnection() diff --git a/src/servers/Server_Zone/GameConnection.h b/src/servers/Server_Zone/GameConnection.h index 35191ac5..49c43de2 100644 --- a/src/servers/Server_Zone/GameConnection.h +++ b/src/servers/Server_Zone/GameConnection.h @@ -95,6 +95,13 @@ public: DECLARE_HANDLER( discoveryHandler ); DECLARE_HANDLER( eventHandler ); DECLARE_HANDLER( logoutHandler ); + + DECLARE_HANDLER( cfDutyInfoRequest ); + DECLARE_HANDLER( cfRegisterDuty ); + DECLARE_HANDLER( cfRegisterRoulette ); + DECLARE_HANDLER( cfDutyAccepted ); + + DECLARE_HANDLER( skillHandler ); DECLARE_HANDLER( gm1Handler ); diff --git a/src/servers/Server_Zone/PacketHandlers.cpp b/src/servers/Server_Zone/PacketHandlers.cpp index db3d27b9..1b62cfe2 100644 --- a/src/servers/Server_Zone/PacketHandlers.cpp +++ b/src/servers/Server_Zone/PacketHandlers.cpp @@ -1134,3 +1134,33 @@ void Core::Network::GameConnection::logoutHandler( Core::Network::Packets::GameP logoutPacket.data().flags2 = 0x2000; queueOutPacket( logoutPacket ); } + +void Core::Network::GameConnection::cfDutyInfoRequest(Core::Network::Packets::GamePacketPtr pInPacket, + Core::Entity::PlayerPtr pPlayer) +{ + GamePacketNew< FFXIVIpcCFDutyInfo > dutyInfoPacket( pPlayer->getId() ); + queueOutPacket( dutyInfoPacket ); + + GamePacketNew< FFXIVIpcCFPlayerInNeed > inNeedsPacket( pPlayer->getId() ); + queueOutPacket( inNeedsPacket ); + +} + +void Core::Network::GameConnection::cfRegisterDuty(Core::Network::Packets::GamePacketPtr pInPacket, + Core::Entity::PlayerPtr pPlayer) +{ + // TODO implment + +} + +void Core::Network::GameConnection::cfRegisterRoulette(Core::Network::Packets::GamePacketPtr pInPacket, + Core::Entity::PlayerPtr pPlayer) +{ + +} + +void Core::Network::GameConnection::cfDutyAccepted(Core::Network::Packets::GamePacketPtr pInPacket, + Core::Entity::PlayerPtr pPlayer) +{ + +}