[Pedido] Trapaзa Detectada
#1

Pessoal, tenho um Comando ta ai:
Код:
COMMAND:transferir(playerid, params[])
{
    new giveid, value, str[128], Nome[MAX_PLAYER_NAME];
    if(sscanf(params, "ui", giveid, value))
        return SendClientMessage(playerid, -1, "Use /transferir [ID/Nome] [Valor]");

    if (GetPlayerMoney(playerid) < value)
        return SendClientMessage(playerid, -1, "Voce nгo tem esse dinheiro!");

    GivePlayerMoney(playerid, -value);
    GivePlayerMoney(giveid, value);
    GetPlayerName(giveid, Nome, MAX_PLAYER_NAME);
    format(str,128,"BANCO Vocк transferiu R$%d para o jogador %s.", value, Nome);
    SendClientMessage(playerid, -1, str);
    GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
    format(str,128,"BANCO %s transferiu R$%d para voce.", Nome, value);
    SendClientMessage(giveid, -1, str);
    return 1;
}
Sу de bater o olho ja da pra saber pra que serve, ok, ele pega normal, mais emcontrei um bug, onde nгo consegui resolver, um ex: quando to la no jogo de boa e ai digito /transferir 11 123456, ele pega, mais se eu colocar -123456 ele vai robar esse dinheiro do id 11 e dar pra mim, pessoal, gostaria de que voces dessem uma olhada nesse code, e me diser como fazer pra que isso nгo aconteзa...
Reply
#2

pawn Код:
COMMAND:transferir(playerid, params[])
{
    new giveid, value, str[128], Nome[MAX_PLAYER_NAME];
    if(sscanf(params, "ui", giveid, value))
        return SendClientMessage(playerid, -1, "Use /transferir [ID/Nome] [Valor]");

    if(value < 0 && value > 1000000)
    {
        SendClientMessage(playerid,-1,"Mнnimo 0, mбximo 1,000,000$!");
        return 1;
    }

    if (GetPlayerMoney(playerid) < value)
        return SendClientMessage(playerid, -1, "Voce nгo tem esse dinheiro!");

    GivePlayerMoney(playerid, -value);
    GivePlayerMoney(giveid, value);
    GetPlayerName(giveid, Nome, MAX_PLAYER_NAME);
    format(str,128,"BANCO Vocк transferiu R$%d para o jogador %s.", value, Nome);
    SendClientMessage(playerid, -1, str);
    GetPlayerName(playerid, Nome, MAX_PLAYER_NAME);
    format(str,128,"BANCO %s transferiu R$%d para voce.", Nome, value);
    SendClientMessage(giveid, -1, str);
    return 1;
}
Reply
#3

pawn Код:
if(Variavel < Valor minimo && Variavel > Valor Maximo)
                                        return SendClientMessage....
@Edit BielCopa nгo vi que postou.
Reply
#4

Desculpe, Mas... Ainda Da pra Roubar a Grana Se Colocar - no comeзo do valor
Reply
#5

pawn Код:
if(value < 0 || value > 10000000)
             return SendClientMessage(playerid, -1, "Use valores maiores que 0 e menores que 10000000");
Tente assim
Reply
#6

AEW, Valllleeww!! feliphemort Solucionou Meu Problema..!! XD
Reply
#7

pawn Код:
if(!(value>=1)){
SendClientMessage(playerid, Vermelho, "Vocк nгo pode colocar valores Negativos");
Qualquer coisa tenta esse
Atenciosamente,
Reply
#8

voce pode fazer diferente
pawn Код:
if(value<0) value=-(value*2);
isso tornarб o valor negativo em positivo e resolve seu problema, assim o player ja pode usar o -
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)