[Ajuda] Comando com erro
#1

Olб, eu to com um problema, porque eu tentei fazer um comando que um player digita lб /cobrartarifa [id] [quantia] e para o player que foi cobrado vai ter o /aceitartarifa e /recusartarifa, mas quando o player aceita a tarifa nгo й cobrado a quantidade que o player que estava cobrando pediu =/ Alguem pode ajudar?

Codigo:
pawn Код:
if(IsPlayerConnected(playerid))
{
new valorpassagem;
if(strcmp(cmd,"/cobrartarifa", true)==0)
{
    new vid, modelo, id;

    format(file, sizeof(file), PASTA_CONTAS, GetName(playerid));
    if(dini_Int(file, "Profissao") == Maquinista)
    {
        if(sscanf(cmdtext, "s[16]ud", cmd, id, valorpassagem)) return SendClientMessage(playerid, Vermelho, "Digite: /cobrartarifa [id] [grana]");

        vid = GetPlayerVehicleID(playerid);
        modelo = GetVehicleModel(vid);
            if((modelo == 537 || modelo == 538))
            {
                if(GetPlayerVehicleID(playerid) == GetPlayerVehicleID(id) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
                {
                    if(CobrandoPassagem[id2]== 1) return SendClientMessage(playerid, Vermelho, "Vocк jб cobrou passagem deste Player, aguarde atй ele Aceitar ou Recusar.");
                    if(valorpassagem <= 0) return SendClientMessage(playerid, Vermelho, "Vocк nгo pode cobrar um valor igual a 0 ou menor que 0.");
                    if(valorpassagem > 501) return SendClientMessage(playerid, Vermelho, "Este valor й injusto! O valor que pode cobrar й entre R$1 e R$500.");
                    format(string, sizeof(string), "(INFO)Vocк cobrou $%d de Passagem de Trem do Jogador %s, aguarde ele aceitar a Passagem.", valorpassagem, GetName(id));
                    SendClientMessage(playerid, verdel, string);
                    format(string, sizeof(string), "(INFO)O Maquinista %s (%d) te cobrou $%d de Passagem de Trem. (Digite /aceitarpassagem ou /recusarpassagem)", GetName(playerid), playerid, valorpassagem);
                    SendClientMessage(id, verdel, string);
                    CobrandoPassagem[id2] = 1;
                }
                else return SendClientMessage(playerid, Vermelho, "(INFO) O Passageiro esta fora do seu Trem ou vocк nгo estб de Motorista!");
            }
            else return SendClientMessage(playerid, Vermelho, "(INFO) Vocк nгo estб em um Trem para cobrar passagem!");
    }
    return 1;
}

granapassagem=valorpassagem; cobradopassagem=id2; cobradorpassagem=docommand;

if(strcmp(cmd,"/aceitarpassagem",true)==0){
if(CobrandoPassagem[playerid]==0)return SendClientMessage(playerid, Vermelho, "Vocк nгo foi cobrado pra usar este comando.");
format(str3,128,"Vocк aceitou a Passagem de %s e pagou R$%s",GetName(cobradopassagem), granapassagem);
SendClientMessage(cobradopassagem,verdel,str3);
format(str3,128,"O Player %s aceitou sua Passagem e pagou R$%s",GetName(cobradorpassagem), granapassagem);
SendClientMessage(cobradorpassagem,verdel,str3);
CobrandoPassagem[cobradopassagem] = 0;
GivePlayerGrana(playerid, -granapassagem);
GivePlayerGrana(cobradorpassagem, granapassagem);
return 1;
}

if(strcmp(cmd,"/recusarpassagem",true)==0){
if(CobrandoPassagem[playerid]==0)return SendClientMessage(playerid, Vermelho, "Vocк nгo foi cobrado pra usar este comando.");
format(str3,128,"Vocк recusou a Passagem de %s.",GetName(cobradopassagem));
SendClientMessage(cobradopassagem,verdel,str3);
format(str3,128,"O Player %s recusou sua Passagem.",GetName(cobradorpassagem));
SendClientMessage(cobradorpassagem,verdel,str3);
CobrandoPassagem[cobradopassagem] = 0;
return 1;
}
}
@edit

Sу pra complementar o tуpico que esqueci de falar :3 Eu tentei fazer a logica de pegar o Nick do cara e fazer o mesmo com a grana, tipo aqui:

pawn Код:
cobradopassagem=id2; cobradorpassagem=docommand; //Que pega o Nick do cara que ta cobrando e o que ta sendo cobrado nos proximos comandos
Ai o da grana eu fiz assim:

pawn Код:
granapassagem=valorpassagem; //Pra pegar o valor do primeiro comando pro cara que foi cobrado no caso aceitar a passagem, a quantidade cobrada for retirada e o player que cobrou ganhar o valor.
Mas nгo deu certo =/ Teria algum outro jeito de fazer isso?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)