23.01.2010, 18:24
si es posible
y segun lo que vi en varios post sobre OnRconLoginAttempt el codigo de wiki esta mal xD
para que lo banee/kickee o lo que vos quieras cuando ingresa la contraseсa mal 2 veces puedes hacer algo asi:
debajo de los includes
sintetisado lo que hace es comprar si la ip del intento de logueo rcon es la de un jugador entonces suma 1 a RconFails, y si esta variable es 2 entonces banea esa ip.
pero si por el contrario la ip del intento de logueo rcon no es la de algun jugador banea la ip automaticamente.
espero que te sirva
Edit: Intenta ahora que corregi 3 cosas falaba una /de alcaracion no estaba definido el color y habia tipiado un 1 de mas al lado de una i
lo probe y compilpa perfecto
y segun lo que vi en varios post sobre OnRconLoginAttempt el codigo de wiki esta mal xD
para que lo banee/kickee o lo que vos quieras cuando ingresa la contraseсa mal 2 veces puedes hacer algo asi:
debajo de los includes
pawn Код:
new RconFails[MAX_PLAYERS];
pawn Код:
public OnRconLoginAttempt(ip[], password[], success)
{
if(!success){ //si la contraseсa no es correta...
for(new i=0; i<MAX_PLAYERS; i++){ //define i y hace un bucle x todos los jugadores
new PIP[20], str[128]; //definicion de variables
GetPlayerIp(i, PIP, sizeof(PIP)); //toma la ip del jugador y la asigna a la variable PIP
if(!strcmp(ip, PIP, true)){ //si la ip de donde viene el intento de logueo rcon es igual a la de algun jugador...
RconFails[i]++; //suma 1 a la variable RconFails
if(RconFails[i] == 2){ //si RconFails es = 2 entonces... (Puedes cambiar el 2 x el numero de intentos que quieras)
new playername[MAX_PLAYER_NAME]; //definicion de variable
GetPlayerName(i, playername, sizeof(playername)); //toma el nombre del jugador y se lo asigna a la variable playername
format(str, sizeof(str), "%s ha sido baneado automaticamente. [Razуn: Intentar loguearse con Rcon]", playername); //define un formato de texto(como va a ser el texto)
SendClientMessageToAll(0xAFAFAFAA, str); //envia un mensaje con el texto anterior
Ban(i); //banea la ip del jugador
}
}
else{ //si la ip no es la de algun jugador...
format(str, sizeof(str), "banip %s", ip); //define un formato de texto
printf("la ip %s intento loguearse con rcon y fue baneada", ip); //envia a la consola un mensaje
SendRconCommand("str"); //envia el comando str(en este caso el de banear esa ip)
}
}
}
return 1;
}
pero si por el contrario la ip del intento de logueo rcon no es la de algun jugador banea la ip automaticamente.
espero que te sirva
Edit: Intenta ahora que corregi 3 cosas falaba una /de alcaracion no estaba definido el color y habia tipiado un 1 de mas al lado de una i
lo probe y compilpa perfecto