SA-MP Forums Archive
[Ajuda] com um comando Para o player - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] com um comando Para o player (/showthread.php?tid=239590)



[Ajuda] com um comando Para o player - denisassuncao - 14.03.2011

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


Re: [Ajuda] com um comando Para o player - rjjj - 14.03.2011

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


Re: [Ajuda] com um comando Para o player - JonathanFeitosa - 14.03.2011

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

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


Re: [Ajuda] com um comando Para o player - denisassuncao - 14.03.2011

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