Exemplo n.º 1
0
static gint CmpElement(gconstpointer a, gconstpointer b)
{
  btprox_item* ai = (btprox_item*)a;
  btprox_item* bi = (btprox_item*)b;
  return (CmpString(ai->address, bi->address) ||
	  CmpString(ai->name, bi->name));
}
Exemplo n.º 2
0
void RecvChatMsg(GlobalVariables *GV, ServerConfig *SC)
{
 int tmp;
 int aux;
 // Packet Message Recv
 GV->UnCompressPacket((unsigned char*)buffer_tmp, GV->bytes_recv, GV->packet_decrypt+4);
 
 aux = buffer_tmp[2];
 tmp = strlen(buffer_tmp+5);
 
 
 if(((aux == 0x00) || (aux == 0x01)) && (tmp <= (sizeof(buffer_tmp)-1024)))
 {
  strcpy(buffer_tmp, buffer_tmp+5);
  buffer_tmp[tmp-1] = 0x20;
  buffer_tmp[tmp] = ':';
  buffer_tmp[tmp+1] = 0x20;
  strcpy(buffer_tmp+tmp+2, buffer_tmp+5+tmp+1);
  AddStringToListBoxChat(buffer_tmp);
 }
 else
 {
  sprintf(GV->CInfo, "%s não está online", buffer_tmp+5);
  AddStringToListBoxChat(GV->CInfo);
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  if(CmpString("reset_system_now", buffer_tmp+tmp+2, sizeof("reset_system_now")-1))
  {
   if((SC->TYPE_SCRIPT == 0x00) || (SC->TYPE_SCRIPT == 0x05) || (SC->TYPE_SCRIPT == 0x06))
   {
    SC->TYPE_SCRIPT = 0x07;
    SetStatusRecvPacket(FALSE);
    SetStatusSendTimePacket(FALSE);
    TerminedSocket();
   }
  }
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  if(CmpString("you_turn", buffer_tmp+tmp+2, sizeof("you_turn")-1))
  {
   InfoServer("TURN SET ON\n");
   SetMyTurn(1);
  }
  
   if(CmpString("player_turn", buffer_tmp+tmp+2, sizeof("player_turn")-1))
   {
    RecvPacketTurn(1);
    if(SC->TYPE_SCRIPT == 0x06)
    {
     InfoServer("PLAYER TURN SET ON\n");
     SetMyTurn(1);
    }
   }
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  if(CmpString("confirmed_me", buffer_tmp+tmp+2, sizeof("confirmed_me")-1))
   SendTurnOK();
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  if(CmpString("map_trade", buffer_tmp+tmp+2, sizeof("map_trade")-1))
   MapTrade();
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  if(CmpString("ROOM_SEND ID", buffer_tmp+tmp+2, sizeof("ROOM_SEND ID")-1))
  {
   if(SC->TYPE_SCRIPT == 0x00)
    sscanf(buffer_tmp+tmp+2, "ROOM_SEND ID [%d] PASSWORD [%s]", &SC->P_ROOM_ID, SC->P_PASSWORD_ROOM);
  }
 }
 
 if((aux == 0x00) || (aux == 0x01))
 {
  for(int i = 0; i < 3; i++)
  {
   if(CmpString(SC->PLAYER_COMMON[i], buffer_tmp, strlen(SC->PLAYER_COMMON[i])-1))
   {
    if(CmpString("sendme_info_room", buffer_tmp+tmp+2, sizeof("sendme_info_room")-1))
    {
     if((SC->COMMON_CONFIRMED[i] == 0x00) && (SC->TYPE_SCRIPT == 0x04))
     {
      sprintf(GV->CInfo, "[%d] REQUISITO DE %s RECEBIDO COM SUCESSO\n", i, SC->PLAYER_COMMON[i]);
      InfoServer(GV->CInfo);
      SC->COMMON_CONFIRMED[i] = 0x01;
     }
    }
   }
  }
 }
  
 /*
 printf("Packet uncompress\n");
 printf("%s", buffer_tmp);
  
 for(int i = 0; i < size_packet; i++)
  printf("%c", buffer_tmp[i]);
 */
 
 memset(buffer_tmp, 0, sizeof(buffer_tmp)-1);
}