rendered paste body
void GetData()
{
char* string_ar[3];
char* pch;
char* buffer;
// int bufferint;
//if(WinsockActive)
//{
// //Weve used it.. WE MUST delete it!
// data[255] = ""[255];
//}
//recvfrom(UClient, (char *)&data, (int)sizeof(data), 0, (struct sockaddr *)&sockAddr, &server_length);
if (recv(UClient, data, (int)sizeof(data), 0) >= 1)
{
if (isin(Left(data,7),"ChatCol"))
{
//Seems we have a message to change the color of the next line of chat, lets do that now.
pch = strtok (data," ");
//Make sure the RGB Data Is Fine.
//if(sizeof(pch) == 3)
//{
//Get the first, RED!
buffer = strtok(NULL, " ");
Cht_Red = atoi(buffer);
//2nd, BLUE!
buffer = strtok(NULL, " ");
Cht_Green = atoi(buffer);
//3rd, GREEN!
buffer = strtok(NULL, " ");
Cht_Blue = atoi(buffer);
//All Dun! WHOOT!
//}
}
else if (isin(Left(data,7),"Players"))
{
ChangeColorOfChat(255,0,0);
AddDebugMessage("Debug>>>Players connected recieved");
string_ar[0] = strtok(data, " ");
string_ar[1] = strtok(NULL, " ");
//string_ar[2] = strtok(NULL, " ");
PlayersIn = string_ar[1];
//ServerName = string_ar[2];
}
else if (isin(Left(data,10),"ListUpdate"))
{
AddDebugMessage("Debug>>>Player List Updated");
int PlayerID = 1;
string_ar[0] = strtok(data, " ");
string_ar[1] = strtok(NULL, " ");
int UpTo = atoi(PlayersIn.c_str());
while (PlayerID <= UpTo)
{
PlayerList[PlayerID] = string_ar[1];
ScoreList[PlayerID] = "0";
CashList[PlayerID] = "0";
PingList[PlayerID] = "20";
string_ar[1] = strtok(NULL, " ");
PlayerID = PlayerID + 1;
}
const char *key[100],*value[100];
string Players;
key[0] = "Server IP";
value[0] = ServerInfo.c_str();
key[1] = "Players/Max Players";
Players = PlayersIn;
Players += "/50";
value[1] = Players.c_str();
key[2] = "Nickname";
value[2] = NickName.c_str();
key[3] = "Server Name";
value[3] = ServerName.c_str();
key[4] = "Mod";
value[4] = "Stunt Andreas (Development Stage)";
//XfireSetCustomGameData(5, key, value);
}
else if (isin(Left(data,10),"ServerName"))
{
AddDebugMessage("Debug>>>Server Name Updated");
string_ar[0] = Mid(data,11,strlen(data));
ServerName = string_ar[0];
}
else if (isin(Left(data,11),"PlayerPings"))
{
string_ar[0] = strtok(data, " ");
char *player_ar[2];
int UpTo = atoi(PlayersIn.c_str());
for (int i = 1; i <= UpTo; i++)
{
string_ar[1] = strtok(NULL, " ");
player_ar[0] = strtok(string_ar[1], ",");
player_ar[1] = strtok(NULL, ",");
PingList[atoi(player_ar[0])] = player_ar[1];
}
}
else if (isin(Left(data,10),"ServerInfo"))
{
AddDebugMessage("Debug>>>Server IP/Port recieved");
string_ar[0] = strtok(data, " ");
string_ar[1] = strtok(NULL, " ");
//string_ar[2] = strtok(NULL, " ");
ServerInfo = string_ar[1];
}
else
ChangeColorOfChat(Cht_Red, Cht_Green, Cht_Blue);
AddDebugMessage(data);
}
&data[length+1] = 0;
}