[Ajuda] com um comando Para o player
#1

entaum galera minha duvida e essa exenplo RepairVehicle(GetPlayerVehicleID(playerid));
essa funзгo repara o carro certo agora como eu faria para tipo os mecanicos digita e aparecesse para outro player /aceitar reparo e descontasse uma grana tipo assim

mecanico digita

/repararcarro id quantia de grana

paresse pro player o mecanico denis que repara seu carro por $$

e esse comando so poderia ser digitado se o mecanico tive perto do player


se conseguirem monta um codigo explicativo vo agradece pois quero por mais funзoes como nitro e etc vlw galera
Reply
#2

BRASIL PLAY HARD DETECTED =P

Seu GM deve ser Thug/GodFather/Geral RP, pois, o comando /aceitar й tнpico desse gкnero


Como nгo sei o seu comando /aceitar, fiz uma base para vocк:

Coloque:


pawn Код:
//No OnPlayerCommandText:
if(strcmp("/repararveiculo",cmdtext,true,15)==0)
    {
        new foco1[128],foco2[128],text[128];
        if(!strlen(foco1))  return SendClientMessage(playerid,0xFFFFFFAA,"/repararcarro [id] [quantia de grana]");
        if(!strlen(foco2))  return SendClientMessage(playerid,0xFFFFFFAA,"/repararcarro [id] [quantia de grana]");
        if(ProxDetectorS(5.0, playerid, strval(foco1)))
        {
            RepairVehicle(GetPlayerVehicleID(strval(foco1)));
            format(text,sizeof(text),"[Server Info] Vocк reparou o veнculo do jogador de ID %d e tomou %d de grana dele !", strval(foco2));
            SendClientMessage(playerid,0xFFFFFFAA,text);
            GivePlayerMoney(strval(foco1),-strval(foco2));
            GivePlayerMoney(playerid,strval(foco2));
        }
        else
        {
            SendClientMessage(playerid,0xFFFFFFAA,"[Server Info] O jogador nгo estб prуximo de vocк !");
        }
        return 1;
    }


//No Final do GM:

stock KcmD(param, cmdtext[])
{
    new string[128], pos, var;
    format(string, sizeof(string), "%s ", cmdtext);

    while((pos = strfind(string, " ", true)) != -1)
    {
        if(var == param) return string;
        var++;

        strdel(string, 0, pos + 1);
        if(strcmp(string, " ", true, pos) == 0) goto end;
    }

end:
    string[0] = '\0';
    return string;
}

Para continuar o comando, basta saber um sistema de parвmetros de comandos.

Recomendo sscanf, mas use este para aprender sobre o assunto: https://sampforum.blast.hk/showthread.php?tid=195380


Espero ter ajudado
Reply
#3

Quote:
Originally Posted by rjjj
Посмотреть сообщение
BRASIL PLAY HARD DETECTED =P

Seu GM deve ser Thug/GodFather/Geral RP
( й um desses mesmo ) І
Reply
#4

Quote:
Originally Posted by rjjj
Посмотреть сообщение
BRASIL PLAY HARD DETECTED =P

Seu GM deve ser Thug/GodFather/Geral RP, pois, o comando /aceitar й tнpico desse gкnero


Como nгo sei o seu comando /aceitar, fiz uma base para vocк:

Coloque:


pawn Код:
//No OnPlayerCommandText:
if(strcmp("/repararveiculo",cmdtext,true,15)==0)
    {
        new foco1[128],foco2[128],text[128];
        if(!strlen(foco1))  return SendClientMessage(playerid,0xFFFFFFAA,"/repararcarro [id] [quantia de grana]");
        if(!strlen(foco2))  return SendClientMessage(playerid,0xFFFFFFAA,"/repararcarro [id] [quantia de grana]");
        if(ProxDetectorS(5.0, playerid, strval(foco1)))
        {
            RepairVehicle(GetPlayerVehicleID(strval(foco1)));
            format(text,sizeof(text),"[Server Info] Vocк reparou o veнculo do jogador de ID %d e tomou %d de grana dele !", strval(foco2));
            SendClientMessage(playerid,0xFFFFFFAA,text);
            GivePlayerMoney(strval(foco1),-strval(foco2));
            GivePlayerMoney(playerid,strval(foco2));
        }
        else
        {
            SendClientMessage(playerid,0xFFFFFFAA,"[Server Info] O jogador nгo estб prуximo de vocк !");
        }
        return 1;
    }


//No Final do GM:

stock KcmD(param, cmdtext[])
{
    new string[128], pos, var;
    format(string, sizeof(string), "%s ", cmdtext);

    while((pos = strfind(string, " ", true)) != -1)
    {
        if(var == param) return string;
        var++;

        strdel(string, 0, pos + 1);
        if(strcmp(string, " ", true, pos) == 0) goto end;
    }

end:
    string[0] = '\0';
    return string;
}

Para continuar o comando, basta saber um sistema de parвmetros de comandos.

Recomendo sscanf, mas use este para aprender sobre o assunto: https://sampforum.blast.hk/showthread.php?tid=195380


Espero ter ajudado
seria mais o menos isso mais teria que aparecer a mensagem para o player e o comando /aceitar repraro
mais vlw pela ajuda ja ajudo em alguma coisa vlw se alguem souber favor ajudar
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)