Minor Adjustments

This commit is contained in:
Anonymous275 2020-04-18 04:48:42 +03:00
parent 2a3df072d1
commit 60c38ccd1a
3 changed files with 17 additions and 18 deletions

View File

@ -9,23 +9,26 @@
#include "../logger.h"
#include "../Settings.hpp"
int FindID(ENetHost *server,ENetPeer*peer);
void Respond(const std::string& MSG, ENetPeer*peer){
enet_peer_send(peer, 0, enet_packet_create(MSG.c_str(), MSG.length() + 1, ENET_PACKET_FLAG_RELIABLE));
}
void SendToAll(ENetHost *server, ENetPeer*peer, const std::string& Data, bool All){
void SendToAll(ENetHost *server, ENetPeer*peer, const std::string& Data, bool All, bool Reliable){
std::cout << "Sending to all with the self switch : " << All << std::endl;
for (int i = 0; i < server->connectedPeers; i++) {
if (All || &server->peers[i] != peer) {
enet_peer_send(&server->peers[i], 0, enet_packet_create(Data.c_str(),Data.length()+1, ENET_PACKET_FLAG_UNRELIABLE_FRAGMENT));
//reliable is 1 unreliable is 8
enet_peer_send(&server->peers[i], 0, enet_packet_create(Data.c_str(),Data.length()+1,Reliable?1:8));
enet_host_flush(server);
}
}
}
void OnConnect(ENetPeer*peer){
void OnConnect(ENetHost *server,ENetPeer*peer){
enet_peer_send(peer, 0, enet_packet_create ("NR", 3, ENET_PACKET_FLAG_RELIABLE));
//std::string ID = "P" + std::to_string(peer->serverVehicleID); /////HOLDUP
//enet_peer_send(peer, 0, enet_packet_create (ID.c_str(), ID.length()+1, ENET_PACKET_FLAG_RELIABLE));
//if(Debug)debug("ID : " + std::to_string(peer->serverVehicleID));
peer->serverVehicleID[0] = FindID(server,peer); ///TODO: WHAT IF IT IS THE SECOND VEHICLE?
std::string ID = "P" + std::to_string(peer->serverVehicleID[0]);
enet_peer_send(peer, 0, enet_packet_create (ID.c_str(), ID.length()+1, ENET_PACKET_FLAG_RELIABLE));
if(Debug)debug("ID : " + std::to_string(peer->serverVehicleID[0]));
}

View File

@ -9,30 +9,26 @@
#include "../logger.h"
#include "../Settings.hpp"
std::vector<std::string> Split(const std::string& String,const std::string& delimiter);
void SendToAll(ENetHost *server, ENetPeer*peer, const std::string& Data,bool All);
void SendToAll(ENetHost *server, ENetPeer*peer, const std::string& Data,bool All, bool Reliable);
void Respond(const std::string& MSG, ENetPeer*peer);
int FindID(ENetHost *server,ENetPeer*peer);
void VehicleParser(std::string Packet,ENetPeer*peer,ENetHost*server){
char Code = Packet.at(1);
std::string Data = Packet.substr(3);
//std::vector<std::string> vector = Split(Packet,":");
switch(Code){ //Spawned Destroyed Switched/Moved Reset
case 's':
if(Data.at(0) == '0'){
peer->serverVehicleID[0] = FindID(server,peer); ///TODO: WHAT IF IT IS THE SECOND VEHICLE?!
Packet = "Os:"+std::to_string(peer->serverVehicleID[0])+Packet.substr(4);
Packet = "Os:"+ peer->Name +":"+std::to_string(peer->serverVehicleID[0])+Packet.substr(4);
}
SendToAll(server,peer,Packet,true);
SendToAll(server,peer,Packet,true,true);
break;
case 'd':
SendToAll(server,peer,Packet,true);
SendToAll(server,peer,Packet,true,true);
break;
case 'm':
break;
case 'r':
SendToAll(server,peer,Packet,true);
SendToAll(server,peer,Packet,true,true);
break;
}
}
@ -56,6 +52,6 @@ void ParseData(ENetPacket*packet, ENetPeer*peer, ENetHost*server){
}
//V to Z
std::cout << "Received data from: " << peer->Name << " Size: " << Packet.length() << std::endl;
if(Code <= 90 && Code >= 86)SendToAll(server,peer,Packet,false);
if(Code <= 90 && Code >= 86)SendToAll(server,peer,Packet,false,false);
if(Debug)debug("Data : " + Packet);
}

View File

@ -10,7 +10,7 @@
#include "../Settings.hpp"
void ParseData(ENetPacket*packet,ENetPeer*peer,ENetHost *server); //Data Parser
void OnConnect(ENetPeer*peer);
void OnConnect(ENetHost *server,ENetPeer*peer);
ENetPacket* packet;
int PlayerCount = 0;
@ -47,7 +47,7 @@ void host_server(ENetHost *server) {
event.peer->Name = "Client information";
/*event.peer->gameVehicleID[0] = 0;
event.peer->serverVehicleID[0] = FindID(server, event.peer);*/
OnConnect(event.peer);
OnConnect(server,event.peer);
break;
case ENET_EVENT_TYPE_RECEIVE: