packet is being sent and received, bare-bones ping-pong is working
This commit is contained in:
+33
-5
@@ -9,18 +9,24 @@ using namespace std;
|
||||
//Public access members
|
||||
//-------------------------
|
||||
|
||||
Lobby::Lobby(ConfigUtility* cUtil, SurfaceManager* sMgr) {
|
||||
Lobby::Lobby(ConfigUtility* cUtil, SurfaceManager* sMgr, UDPNetworkUtility* nUtil) {
|
||||
#ifdef DEBUG
|
||||
cout << "entering Lobby" << endl;
|
||||
#endif
|
||||
//globals
|
||||
configUtil = cUtil;
|
||||
surfaceMgr = sMgr;
|
||||
netUtil = nUtil;
|
||||
|
||||
//members
|
||||
font.SetSurface(surfaceMgr->Get("font"));
|
||||
pingButton.GetImage()->SetSurface(surfaceMgr->Get("button"));
|
||||
pingButton.SetX(50);
|
||||
pingButton.SetY(50);
|
||||
|
||||
//ping the network, ping the preset "phone home" servers
|
||||
//generate the server list
|
||||
//eventually
|
||||
|
||||
SetNextScene(SceneList::TESTSYSTEMS);
|
||||
}
|
||||
|
||||
Lobby::~Lobby() {
|
||||
@@ -42,11 +48,27 @@ void Lobby::FrameEnd() {
|
||||
}
|
||||
|
||||
void Lobby::Update() {
|
||||
//
|
||||
Receive();
|
||||
}
|
||||
|
||||
void Lobby::Receive() {
|
||||
//dump to the console
|
||||
Packet packet;
|
||||
while(netUtil->Receive()) {
|
||||
memcpy(&packet, netUtil->GetInData(), sizeof(Packet));
|
||||
|
||||
switch(packet.type) {
|
||||
case PacketList::PONG:
|
||||
cout << "dumping..." << endl;
|
||||
cout << packet.pong.buffer << endl;
|
||||
break;
|
||||
//...
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Lobby::Render(SDL_Surface* const screen) {
|
||||
//
|
||||
pingButton.DrawTo(screen);
|
||||
}
|
||||
|
||||
//-------------------------
|
||||
@@ -70,6 +92,12 @@ void Lobby::KeyDown(SDL_KeyboardEvent const& key) {
|
||||
case SDLK_ESCAPE:
|
||||
QuitEvent();
|
||||
break;
|
||||
case SDLK_SPACE:
|
||||
//debugging
|
||||
Packet packet;
|
||||
packet.type = PacketList::PING;
|
||||
netUtil->Send("127.0.0.1", 2000, reinterpret_cast<void*>(&packet), sizeof(Packet));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user