[Ajuda] Criar carro por id ou pelo nome
#1

Bom, meu comando de criar carro sу cria pelo nome completo do veiculo e fica bem chato de ficar escrevendo o nome completo de alguns veнculos por que sгo muito grandes, entгo queria pedir a ajuda de alguйm para me ajudar a criar carro pelo id e pelo nome tambйm, tipo da pra criar o carro sem precisar por o nome completo, eu jб vi em alguns server que era sу digitar "/carro blista 0 0" ou "/carro bli 0 0" que jб criava o blista compact, isso funcionava com todos carros e tambйm dava pra criar pelo id "/carro 411 0 0" ai spawnava o infernus e se vocк nгo soubesse o id era sу fazer "/carro infernus 0 0"

Vou deixar meu comando para me ajudarem, obrigado.


pawn Код:
CMD:car(playerid, params[])
{
    if(AFKP[playerid] == true) return SendClientMessage(playerid, Vermelho, "[ERRO] Vocк estб ausente.");
    if(Logado[playerid] == false) return SendClientMessage(playerid, Vermelho, "[ERRO] Vocк deve logar primeiro.");
    if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, Vermelho, "[ERRO] Vocк jб esta em um veнculo.");
    new Veiculo[25], Cor, Cor2;
    if(sscanf(params, "s[25]dd",Veiculo,Cor,Cor2)) return SendClientMessage(playerid, Vermelho, "[INFO] /Car [nome] [cor] [cor2]");
    new bool:existe, VeiculoID;
    for(new r = 0;r < 212; r++)
    {
        if(!strcmp(Veiculo, VNomes[r],true))
        {
            existe = true;
        }
        if(!strcmp(Veiculo,VNomes[r],true)) VeiculoID = (r+400);
    }
    if(!existe) return SendClientMessage(playerid, Vermelho, "[ERRO] Veнculo nгo existe.");
    if(MundoDM[playerid] == false)
    {
        if(VeiculoID == 520 || VeiculoID == 432 || VeiculoID == 592 || VeiculoID == 425 ||
        VeiculoID == 464) return SendClientMessage(playerid, -1, "[INFO] Este veнculo so pode ser usado no {556B2F}Mundo Mata-mata{FFFFFF}!");
    }
    GetPlayerPos(playerid, X, Y, Z);
    GetPlayerFacingAngle(playerid, Angle);
    CriarVeiculo(playerid, VeiculoID, X, Y, Z+1, Angle, Cor, Cor2, -1);
    SendClientMessage(playerid, Laranja, "[WLServer] Veнculo spawnado com sucesso.");
    return 1;
}
Reply
#2

claro parceiro =D
Deve estб alguma coisa errada ageite do geito do seu comando pq eu numca mechi com CMD: tendeu
pawn Код:
CMD:car(playerid, params[])
{
if(pAdmin[playerid] == 3 || pAdmin[playerid] == 4 || pAdmin[playerid] == 5){
new tmp[256];
new plid;
//new carro;
new Float:X,Float:Y,Float:Z,Float:Angle;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "| ERRO | Digite: /cv [id-do-caro]");
return 1;
}
plid = strval(tmp);
if(plid==3 || plid==2 || plid==1 || plid==4 || plid==5 || plid==56 || plid==50 || plid==43 || plid==52 || plid==44|| plid==45 ){
SendClientMessage(playerid, Vermelho, "[SERVER] ID de carro Proibido!");
return 1;
}
if(IsPlayerConnected(playerid)){
if(plid >= 400 && plid <= 611){
GetPlayerPos(playerid,X,Y,Z);
GetPlayerFacingAngle(playerid,Angle);
new carro = CreateVehicle(plid, X, Y, Z, Angle, -1, -1, 120000);
PutPlayerInVehicle(playerid,carro,0);
if(GetPlayerInterior(playerid))
LinkVehicleToInterior(carro,GetPlayerInterior(playerid));
SetVehicleVirtualWorld(carro,GetPlayerVirtualWorld(playerid));
format(string, sizeof(string), "| INFO | Vocк criou o veнculo de id: %d", plid);
SendClientMessage(playerid, tcadm, string);
return 1;
}else{
SendClientMessage(playerid, Vermelho, "| ERRO | ID invбlido || ID's = 400-611");
return 1;
}
}
}
}
Reply
#3

affs zcmd+strtok ?
vish atualiza o strtok para sscanf2 й bem mais simples e rбpido !
eu posso criar o comando em zcmd+sscanf2 se quizer porque eu nгo mexo com strtok
Reply
#4

Sу foi um exemplo eu ainda falei pra ele deixar do geito dele
Reply
#5

Cromado
o meu й zcmd+sscanf2 esse zcmd+strtok nгo sei mexer, o comando ficou muito estranho.

iMega
vocк poderia me ajudar fazendo o comando?
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)