22.05.2010, 14:10
How can i make it so
if a player types a number between 1-255 . 1-255 . 1-255 . 1-255 it will ban him
if a player types a number between 1-255 . 1-255 . 1-255 . 1-255 it will ban him
public OnPlayerText(playerid, text[])
{
return 1;
}
stock bool: IsIPInText(txt[])
{
new
pos = 0,
_1,
_2,
_3,
_4,
str[9],
delims[] =
{
';', '|',
',', ' ',
'.', '-',
'~', '*',
'/'
};
while(txt[pos])
{
for(new n = 0; n < sizeof(delims); n++)
{
format(str, sizeof(str), "p<%c>dddd", delims[n]);
if(!sscanf(txt[pos], str, _1, _2, _3, _4))
{
if(0 <= _1 <= 255 &&
0 <= _2 <= 255 &&
0 <= _3 <= 255 &&
0 <= _4 <= 255)
{
return true;
}
}
}
pos++;
}
return false;
}
if(IsIP(text[])) { Ban(playerid); return1; }