Slight code tweak
This commit is contained in:
@@ -290,6 +290,9 @@ void InWorld::HandlePlayerUpdate(NetworkPacket packet) {
|
|||||||
|
|
||||||
void InWorld::SendState() {
|
void InWorld::SendState() {
|
||||||
NetworkPacket packet;
|
NetworkPacket packet;
|
||||||
|
char buffer[sizeof(NetworkPacket)];
|
||||||
|
|
||||||
|
//pack the packet
|
||||||
packet.meta.type = NetworkPacket::Type::PLAYER_UPDATE;
|
packet.meta.type = NetworkPacket::Type::PLAYER_UPDATE;
|
||||||
packet.playerInfo.clientIndex = clientIndex;
|
packet.playerInfo.clientIndex = clientIndex;
|
||||||
packet.playerInfo.playerIndex = playerIndex;
|
packet.playerInfo.playerIndex = playerIndex;
|
||||||
@@ -298,28 +301,28 @@ void InWorld::SendState() {
|
|||||||
packet.playerInfo.position = localCharacter->GetPosition();
|
packet.playerInfo.position = localCharacter->GetPosition();
|
||||||
packet.playerInfo.motion = localCharacter->GetMotion();
|
packet.playerInfo.motion = localCharacter->GetMotion();
|
||||||
|
|
||||||
char buffer[sizeof(NetworkPacket)];
|
|
||||||
serialize(&packet, buffer);
|
serialize(&packet, buffer);
|
||||||
|
|
||||||
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
||||||
}
|
}
|
||||||
|
|
||||||
void InWorld::RequestDisconnect() {
|
void InWorld::RequestDisconnect() {
|
||||||
//send a disconnect request
|
|
||||||
NetworkPacket packet;
|
NetworkPacket packet;
|
||||||
|
char buffer[sizeof(NetworkPacket)];
|
||||||
|
|
||||||
|
//send a disconnect request
|
||||||
packet.meta.type = NetworkPacket::Type::DISCONNECT;
|
packet.meta.type = NetworkPacket::Type::DISCONNECT;
|
||||||
packet.clientInfo.index = clientIndex;
|
packet.clientInfo.index = clientIndex;
|
||||||
char buffer[sizeof(NetworkPacket)];
|
|
||||||
serialize(&packet, buffer);
|
serialize(&packet, buffer);
|
||||||
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
||||||
}
|
}
|
||||||
|
|
||||||
void InWorld::RequestShutDown() {
|
void InWorld::RequestShutDown() {
|
||||||
//send a shutdown request
|
|
||||||
NetworkPacket packet;
|
NetworkPacket packet;
|
||||||
|
char buffer[sizeof(NetworkPacket)];
|
||||||
|
|
||||||
|
//send a shutdown request
|
||||||
packet.meta.type = NetworkPacket::Type::SHUTDOWN;
|
packet.meta.type = NetworkPacket::Type::SHUTDOWN;
|
||||||
packet.clientInfo.index = clientIndex;
|
packet.clientInfo.index = clientIndex;
|
||||||
char buffer[sizeof(NetworkPacket)];
|
|
||||||
serialize(&packet, buffer);
|
serialize(&packet, buffer);
|
||||||
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
network.Send(Channels::SERVER, buffer, sizeof(NetworkPacket));
|
||||||
}
|
}
|
||||||
@@ -125,10 +125,12 @@ void LobbyMenu::MouseButtonDown(SDL_MouseButtonEvent const& button) {
|
|||||||
|
|
||||||
void LobbyMenu::MouseButtonUp(SDL_MouseButtonEvent const& button) {
|
void LobbyMenu::MouseButtonUp(SDL_MouseButtonEvent const& button) {
|
||||||
if (search.MouseButtonUp(button) == Button::State::HOVER) {
|
if (search.MouseButtonUp(button) == Button::State::HOVER) {
|
||||||
//broadcast to the network, or a specific server
|
//the vars
|
||||||
NetworkPacket packet;
|
NetworkPacket packet;
|
||||||
packet.meta.type = NetworkPacket::Type::BROADCAST_REQUEST;
|
|
||||||
char buffer[sizeof(NetworkPacket)];
|
char buffer[sizeof(NetworkPacket)];
|
||||||
|
|
||||||
|
//broadcast to the network, or a specific server
|
||||||
|
packet.meta.type = NetworkPacket::Type::BROADCAST_REQUEST;
|
||||||
serialize(&packet, buffer);
|
serialize(&packet, buffer);
|
||||||
network.Send(config["server.host"].c_str(), config.Int("server.port"), buffer, sizeof(NetworkPacket));
|
network.Send(config["server.host"].c_str(), config.Int("server.port"), buffer, sizeof(NetworkPacket));
|
||||||
|
|
||||||
@@ -138,10 +140,12 @@ void LobbyMenu::MouseButtonUp(SDL_MouseButtonEvent const& button) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
else if (join.MouseButtonUp(button) == Button::State::HOVER && selection != nullptr) {
|
else if (join.MouseButtonUp(button) == Button::State::HOVER && selection != nullptr) {
|
||||||
//join the selected server
|
//the vars
|
||||||
NetworkPacket packet;
|
NetworkPacket packet;
|
||||||
packet.meta.type = NetworkPacket::Type::JOIN_REQUEST;
|
|
||||||
char buffer[sizeof(NetworkPacket)];
|
char buffer[sizeof(NetworkPacket)];
|
||||||
|
|
||||||
|
//join the selected server
|
||||||
|
packet.meta.type = NetworkPacket::Type::JOIN_REQUEST;
|
||||||
serialize(&packet, buffer);
|
serialize(&packet, buffer);
|
||||||
network.Send(&selection->address, buffer, sizeof(NetworkPacket));
|
network.Send(&selection->address, buffer, sizeof(NetworkPacket));
|
||||||
selection = nullptr;
|
selection = nullptr;
|
||||||
|
|||||||
@@ -139,7 +139,6 @@ void serialize(NetworkPacket* packet, void* buffer) {
|
|||||||
case NetworkPacket::Type::BROADCAST_REQUEST:
|
case NetworkPacket::Type::BROADCAST_REQUEST:
|
||||||
case NetworkPacket::Type::JOIN_REQUEST:
|
case NetworkPacket::Type::JOIN_REQUEST:
|
||||||
case NetworkPacket::Type::SYNCHRONIZE:
|
case NetworkPacket::Type::SYNCHRONIZE:
|
||||||
case NetworkPacket::Type::SHUTDOWN:
|
|
||||||
serializeType(packet, reinterpret_cast<char*>(buffer));
|
serializeType(packet, reinterpret_cast<char*>(buffer));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -151,6 +150,7 @@ void serialize(NetworkPacket* packet, void* buffer) {
|
|||||||
//Client info
|
//Client info
|
||||||
case NetworkPacket::Type::JOIN_RESPONSE:
|
case NetworkPacket::Type::JOIN_RESPONSE:
|
||||||
case NetworkPacket::Type::DISCONNECT:
|
case NetworkPacket::Type::DISCONNECT:
|
||||||
|
case NetworkPacket::Type::SHUTDOWN:
|
||||||
serializeClient(packet, reinterpret_cast<char*>(buffer));
|
serializeClient(packet, reinterpret_cast<char*>(buffer));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -178,7 +178,6 @@ void deserialize(NetworkPacket* packet, void* buffer) {
|
|||||||
case NetworkPacket::Type::BROADCAST_REQUEST:
|
case NetworkPacket::Type::BROADCAST_REQUEST:
|
||||||
case NetworkPacket::Type::JOIN_REQUEST:
|
case NetworkPacket::Type::JOIN_REQUEST:
|
||||||
case NetworkPacket::Type::SYNCHRONIZE:
|
case NetworkPacket::Type::SYNCHRONIZE:
|
||||||
case NetworkPacket::Type::SHUTDOWN:
|
|
||||||
//
|
//
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -190,6 +189,7 @@ void deserialize(NetworkPacket* packet, void* buffer) {
|
|||||||
//Client info
|
//Client info
|
||||||
case NetworkPacket::Type::JOIN_RESPONSE:
|
case NetworkPacket::Type::JOIN_RESPONSE:
|
||||||
case NetworkPacket::Type::DISCONNECT:
|
case NetworkPacket::Type::DISCONNECT:
|
||||||
|
case NetworkPacket::Type::SHUTDOWN:
|
||||||
deserializeClient(packet, reinterpret_cast<char*>(buffer));
|
deserializeClient(packet, reinterpret_cast<char*>(buffer));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user