if((!strcmp(Info[playerid][IP], Info[giveplayerid][IP])) // No funciona, devuelve 0/1.
{
}
if(Info[playerid][IP] == Info[giveplayerid][IP] // Funciona a ratos.
{
}
Revisar entre 2 IP, algo estilo: CheckPlayersIP(id1, id2) y devuelve 1 - 0.
CheckPlayerIPs(id)
{
new IP[2][16], ips;
GetPlayerIp(playerid, IP[0], 16);
for(new i; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
GetPlayerIp(i, IP[1], 16);
if(!strcmp(IP[0], IP[1]))ips++;
}
}
if(ips > 2)Kick(id); // Este cуdigo seria obtener la IP de un usuario y compararla con el resto de conectados, pero lo que intento es que se obtengan 2 ID's y sean comparados. Pero el cуdigo creado por mi al principio no funciona.
}
enum PlayerData
{
...,
IP[16],
...
};
new Info[MAX_PLAYERS][PlayerData];
//Obtener la IP del jugador al conectarse o en algъn momento
GetPlayerIp(playerid, Info[playerid][IP], 16);
//Comprobar si la IP de playerX es igual a la IP de playerY
if(!strcmp(Info[playerX][IP],Info[playerY][IP],false))
{
//PlayerX y PlayerY tienen la misma IP!
}
|
Код:
...
if(!strcmp(Info[playerX][IP],Info[playerY][IP],false))
{
//PlayerX y PlayerY tienen la misma IP!
}
|
if(strcmp(Info[playerid][IP], Info[giveplayerid][IP], true) == 0)
new PlayersIP[MAX_PLAYERS] = { 0, ... };
public OnPlayerConnect(playerid)
{
new ip[16];
GetPlayerIp(playerid, ip, sizeof(ip));
PlayersIP[playerid] = ip2long(ip);
}
CheckPlayerIP(playerid)
{
new ips = 0;
new max = GetMaxPlayers();
for(new i = 0; i < max; i++)
{
if(IsPlayerConnected(i))
{
if(PlayersIP[playerid] == PlayersIP[i])
ips++;
}
}
return ips;
}