rendered paste body/*
struct PlayerNode
{
PlayerNode *next;
string Player_nick;
IPaddress Player_IP;
TCPsocket Player_TCPSOCK;
};
*/
void pre_game_client()
{
PlayerNode Client;
//Sets up connecting to server
SDLNet_ResolveHost(&Server_IP, Hosts_IP.c_str(), 1337);
Client.Outbound=SDLNet_TCP_Open(&Server_IP);
SDLNet_TCP_Send(Client.Outbound,My_nick.c_str(),My_nick.size());
sprintf(temphold,"%i",Client.Player_number);
SDLNet_TCP_Recv(Client.Outbound,temphold,MAXLEN);
Client.Player_number = atoi(temphold);
SDL_WM_SetCaption(temphold, NULL);
while(quit==false)
{
if( SDL_PollEvent( &event ) )
{
switch (event.type)
{
case SDL_QUIT:
{
quit = true;
break;
}
}
}
}
}
void pre_game_server()
{
//sets up the linked list
PlayerNode *Root;
PlayerNode *Conductor;
Root = new PlayerNode;
Root-> next = NULL;
Conductor = Root;
//Sets up server port listening
SDLNet_ResolveHost(&Server_IP, NULL, 1337);
Server_socket= SDLNet_TCP_Open(&Server_IP);
while (quit == false)
{
//Testing
//char Temphold[30];
//sprintf( Temphold, "%i", Player_count);
//SDL_WM_SetCaption(Temphold, NULL);
mouse_x = event.button.x;
mouse_y = event.button.y;
SDL_Flip( screen);
SDL_Delay( 30 );
//Accepts the connection
Conductor->Inbound = SDLNet_TCP_Accept(Server_socket);
//If connection has come
if(Conductor->Inbound!=NULL)
{
Conductor->Player_number=Player_count;
SDLNet_TCP_Recv(Conductor->Inbound,temphold,MAXLEN);
Conductor->Player_nick= Conductor->Player_nick + temphold;
SDL_WM_SetCaption(Conductor->Player_nick.c_str(), NULL);
sprintf(temphold,"%i",Conductor->Player_number);
SDLNet_TCP_Send(Conductor->Inbound,temphold,MAXLEN);
//Sets a new Node for the next player to connect to
Conductor->next = new PlayerNode;
Conductor=Conductor->next;
Conductor->next=0;
Player_count++;
}
if( SDL_PollEvent( &event ) )
{
switch (event.type)
{
case SDL_QUIT:
{
quit = true;
break;
}
}
}
}
return;
}