All pastes #259713 Raw Edit

Someone

public text v1 · immutable
#259713 ·published 2006-11-27 18:22 UTC
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;
}