Added basic hearbeat framework
This commit is contained in:
@@ -270,6 +270,12 @@ void InWorld::KeyUp(SDL_KeyboardEvent const& key) {
|
|||||||
|
|
||||||
void InWorld::HandlePacket(SerialPacket* const argPacket) {
|
void InWorld::HandlePacket(SerialPacket* const argPacket) {
|
||||||
switch(argPacket->type) {
|
switch(argPacket->type) {
|
||||||
|
case SerialPacketType::PING:
|
||||||
|
HandlePing(static_cast<ServerPacket*>(argPacket));
|
||||||
|
break;
|
||||||
|
case SerialPacketType::PONG:
|
||||||
|
HandlePong(static_cast<ServerPacket*>(argPacket));
|
||||||
|
break;
|
||||||
case SerialPacketType::DISCONNECT:
|
case SerialPacketType::DISCONNECT:
|
||||||
HandleDisconnect(static_cast<ClientPacket*>(argPacket));
|
HandleDisconnect(static_cast<ClientPacket*>(argPacket));
|
||||||
break;
|
break;
|
||||||
@@ -292,6 +298,17 @@ void InWorld::HandlePacket(SerialPacket* const argPacket) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void InWorld::HandlePing(ServerPacket* const argPacket) {
|
||||||
|
ServerPacket newPacket;
|
||||||
|
newPacket.type = SerialPacketType::PONG;
|
||||||
|
network.SendTo(&argPacket->srcAddress, &newPacket);
|
||||||
|
}
|
||||||
|
|
||||||
|
void InWorld::HandlePong(ServerPacket* const argPacket) {
|
||||||
|
//TODO: InWorld::HandlePong()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void InWorld::HandleDisconnect(ClientPacket* const argPacket) {
|
void InWorld::HandleDisconnect(ClientPacket* const argPacket) {
|
||||||
//TODO: More needed in the disconnection
|
//TODO: More needed in the disconnection
|
||||||
SetNextScene(SceneList::CLEANUP);
|
SetNextScene(SceneList::CLEANUP);
|
||||||
|
|||||||
@@ -75,6 +75,8 @@ protected:
|
|||||||
|
|
||||||
//Network handlers
|
//Network handlers
|
||||||
void HandlePacket(SerialPacket* const);
|
void HandlePacket(SerialPacket* const);
|
||||||
|
void HandlePing(ServerPacket* const);
|
||||||
|
void HandlePong(ServerPacket* const);
|
||||||
void HandleDisconnect(ClientPacket* const);
|
void HandleDisconnect(ClientPacket* const);
|
||||||
void HandleCharacterNew(CharacterPacket* const);
|
void HandleCharacterNew(CharacterPacket* const);
|
||||||
void HandleCharacterDelete(CharacterPacket* const);
|
void HandleCharacterDelete(CharacterPacket* const);
|
||||||
|
|||||||
@@ -61,6 +61,8 @@ private:
|
|||||||
void HandlePacket(SerialPacket* const);
|
void HandlePacket(SerialPacket* const);
|
||||||
|
|
||||||
//basic connections
|
//basic connections
|
||||||
|
void HandlePing(ServerPacket* const);
|
||||||
|
void HandlePong(ServerPacket* const);
|
||||||
void HandleBroadcastRequest(ServerPacket* const);
|
void HandleBroadcastRequest(ServerPacket* const);
|
||||||
void HandleJoinRequest(ClientPacket* const);
|
void HandleJoinRequest(ClientPacket* const);
|
||||||
void HandleDisconnect(ClientPacket* const);
|
void HandleDisconnect(ClientPacket* const);
|
||||||
|
|||||||
@@ -178,6 +178,12 @@ void ServerApplication::Quit() {
|
|||||||
void ServerApplication::HandlePacket(SerialPacket* const argPacket) {
|
void ServerApplication::HandlePacket(SerialPacket* const argPacket) {
|
||||||
switch(argPacket->type) {
|
switch(argPacket->type) {
|
||||||
//basic connections
|
//basic connections
|
||||||
|
case SerialPacketType::PING:
|
||||||
|
HandlePing(static_cast<ServerPacket*>(argPacket));
|
||||||
|
break;
|
||||||
|
case SerialPacketType::PONG:
|
||||||
|
HandlePong(static_cast<ServerPacket*>(argPacket));
|
||||||
|
break;
|
||||||
case SerialPacketType::BROADCAST_REQUEST:
|
case SerialPacketType::BROADCAST_REQUEST:
|
||||||
HandleBroadcastRequest(static_cast<ServerPacket*>(argPacket));
|
HandleBroadcastRequest(static_cast<ServerPacket*>(argPacket));
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -27,6 +27,16 @@
|
|||||||
//basic connections
|
//basic connections
|
||||||
//-------------------------
|
//-------------------------
|
||||||
|
|
||||||
|
void ServerApplication::HandlePing(ServerPacket* const argPacket) {
|
||||||
|
ServerPacket newPacket;
|
||||||
|
newPacket.type = SerialPacketType::PONG;
|
||||||
|
network.SendTo(&argPacket->srcAddress, &newPacket);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ServerApplication::HandlePong(ServerPacket* const argPacket) {
|
||||||
|
//TODO: ServerApplications::HandlePong()
|
||||||
|
}
|
||||||
|
|
||||||
void ServerApplication::HandleBroadcastRequest(ServerPacket* const argPacket) {
|
void ServerApplication::HandleBroadcastRequest(ServerPacket* const argPacket) {
|
||||||
//send the server's data
|
//send the server's data
|
||||||
ServerPacket newPacket;
|
ServerPacket newPacket;
|
||||||
|
|||||||
Reference in New Issue
Block a user