else if(dialogid == 54) { new valor = strval(inputtext); if(!response) return 1; else { if(valor < 1) return SendClientMessage(playerid, COLOR_WHITE, "O valor deve ser maior que 0!"); if(valor > 9999) return SendClientMessage(playerid, COLOR_WHITE, "O valor deve conter no maximo 4 digitos (exemplo: 9999)!"); if(valor != inteiro) return SendClientMessage(playerid, COLOR_WHITE, "A senha deve ser um valor de no maximo 4 digitos de apenas numeros inteiros! (exemplo: 9999)"); senhabanco[playerid] = valor; } }
stock IsNumeric(const str[]) { for(new i, len = strlen(str); i < len; i++) { if(!('0' <= str[i] <= '9')) return false; } return true; }
Usa essa vagina aqui:
Код:
stock IsNumeric(const str[]) { for(new i, len = strlen(str); i < len; i++) { if(!('0' <= str[i] <= '9')) return false; } return true; } if(IsNumeric(inputtext)) return true; |
if(!IsNumeric(valor)) return SendClientMessage(playerid, COLOR_WHITE, "A senha deve ser um valor de no maximo 4 digitos de apenas numeros inteiros! (exemplo: 9999)");
error 035: argument type mismatch (argument 1)
new senha;
if(strlen(inputtext) > 4 || strlen(inputtext) < 1)return SendClientMessage(playerid, COLOR_WHITE, "digite apenas 4 digitos!");
if(sscanf(inputtext, "d", senha) return SendClientMessage(playerid, COLOR_WHITE, "Somente numeros sгo aceitos!");
...code...
Utilize sscanf й muito melhor e mais rapido! ^^
PHP код:
|
sscanf(inputtext, "d", senha
if(senhabanco[playerid] != strlen(inputtext)) return GameTextForPlayer(playerid, "~R~INCORRECT PASSWORD", 5000, 1);
2- Pq toda vez entra nesse return, mesmo a senha sendo a certa?
Код:
if(senhabanco[playerid] != strlen(inputtext)) return GameTextForPlayer(playerid, "~R~INCORRECT PASSWORD", 5000, 1); |
if(senhabanco[playerid] == senha)
sу nгo entendi q porra tu queria nesse code .-., strlen й para saber o tamanho da string
para ver se a senha estб certa use: PHP код:
|
if(senhabanco[playerid] == inputtext)
error 033: array must be indexed (variable "inputtext")
if(IsNumeric(valor)) return SendClientMessage(playerid, COLOR_WHITE, "A senha deve ser um valor de no maximo 4 digitos de apenas numeros inteiros! (exemplo: 9999)");
else if(dialogid == 54)
{
if(!response)
return true;
if(isnull(inputtext))
return SendClientMessage(playerid, -1, "por favor vocк tem que digitar uma senha");
if(!IsNumeric(inputtext))
return SendClientMessage(playerid, -1, "Sua senha sу pode conter nъmeros.");
if(strval(inputtext) < 1)
return SendClientMessage(playerid, COLOR_WHITE, "O valor deve ser maior que 0!");
if(strval(inputtext) > 9999)
return SendClientMessage(playerid, COLOR_WHITE, "O valor deve conter no maximo 4 digitos (exemplo: 9999)!");
if(strlen(inputtext) != 4)
return SendClientMessage(playerid, COLOR_WHITE, "A senha deve ser um valor de no maximo 4 digitos de apenas numeros inteiros! (exemplo: 9999)");
senhabanco[playerid] = strval(inputtext);
}