06.11.2011, 00:36
Galera tenho uma funзгo que muda no registro do player o nome dele... que й essa:
Ele antes ja apresentava uns problemas como deixar o cara escrever mais de 20 caraceters e tals... ai o cara mudava pra um nome maior que 20, era kikado e nao conseguia retornar ao sv pois quando usava o nick escolhido o samp nao deixava ele entrar por causa do tamanho do nick... Bom mais ainda sobram alguns problemas...
Tem certos carбcteres como { } & * % que nao podem ser usados... Como fazer para que se o player digitar isso no dialog dar mensagem de nick invalido?
pawn Код:
if(dialogid == 10012) // Comando Alterar nick
{
if (!response) return 1;
if (strlen(inputtext) == 0) return 1;
if (strlen(inputtext) > MAX_PLAYER_NAME) return SendClientMessage(playerid, COR_VERMELHA, "| O nick que vocк inseriu ultrapassou o limite de caracteres para o novo nick.");
if (strlen(inputtext) < 3) return SendClientMessage(playerid, COR_VERMELHA, "| O novo nick deve ter pelo menos 3 caracteres.");
// mudar aqui
if (!strcmp("aux", inputtext, true) || !strcmp("com1", inputtext, true) || !strcmp("com2", inputtext, true) || !strcmp("com3", inputtext, true) ||
!strcmp("com4", inputtext, true) || !strcmp("com5", inputtext, true) || !strcmp("com6", inputtext, true) || !strcmp("com7", inputtext, true) ||
!strcmp("com8", inputtext, true) || !strcmp("com9", inputtext, true) || !strcmp("lpt1", inputtext, true) || !strcmp("lpt2", inputtext, true) ||
!strcmp("lpt3", inputtext, true) || !strcmp("lpt4", inputtext, true) || !strcmp("lpt5", inputtext, true) || !strcmp("lpt6", inputtext, true) ||
!strcmp("lpt7", inputtext, true) || !strcmp("lpt8", inputtext, true) || !strcmp("lpt9", inputtext, true) || !strcmp("con", inputtext, true) )
{
return SendClientMessage(playerid, COR_VERMELHA, "| Nick invбlido.");
}
if (ValidaComando(playerid, inputtext) == 0)return 1;
if (bd_existe_usuario(inputtext)) return SendClientMessage(playerid, COR_VERMELHA, "| O nick escolhido jб foi registrado por outra pessoa.");
if (!bd_existe_usuario(inputtext))
{
bd_renomear_usuario(pName(playerid),inputtext);
SendClientMessage(playerid, COR_LARANJA, "| Nome da conta alterado com sucesso, vocк foi kickado para relogar [altere o nick no samp]");
format(strres, 128,"|| %s(%d) foi kickado pelo administrador BOT [motivo: alteraзгo de nick para %s]", pName(playerid), playerid, inputtext);
SendClientMessageToAll(COR_VERMELHA, strres); Kick(playerid);
}
PlayerPlaySound(playerid,1057,0.0,0.0,0.0); return 1;
}
Ele antes ja apresentava uns problemas como deixar o cara escrever mais de 20 caraceters e tals... ai o cara mudava pra um nome maior que 20, era kikado e nao conseguia retornar ao sv pois quando usava o nick escolhido o samp nao deixava ele entrar por causa do tamanho do nick... Bom mais ainda sobram alguns problemas...
Tem certos carбcteres como { } & * % que nao podem ser usados... Como fazer para que se o player digitar isso no dialog dar mensagem de nick invalido?