[Ajuda] Ajuda Com Comando
#1

Gente Eu Sou Iniciante Em Pawn,Meu Problema Й O Seguinte,Eu Digito O Comando /VenderSkin[ID],Vende De Graзa E Sem O Player Ter Pedido,Ele Seta A Skin Do Nada,Eu Queria Que O Player Teria Que Digitar Um Comando Para Depois Vender,e O Vendedor Recebesse A Grana Apуs Ter VendidoEsse Й O PawnCode Me Ajudem Por Favor.Obrigado
Код:
if(strcmp(cmd,"/venderskin[ID]", true)==0)
{
new aname[MAX_PLAYER_NAME];
GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
format(file, sizeof(file), PASTA_CONTAS, aname);
if(dini_Int(file, "Profissao") == vendedor || dini_Int(file, "aAdmin") == 1 || IsPlayerAdmin(playerid)){
new tmp[256];
new plid, skin;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)){
SendClientMessage(playerid, Vermelho, "Digite: /venderskin[ID]");
return 1;
}
plid = strval(tmp);
new pname[MAX_PLAYER_NAME];
GetPlayerName(plid, pname, MAX_PLAYER_NAME);
format(file2, sizeof(file2), PASTA_CONTAS, pname);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, Vermelho, "Digite: /venderskin[ID]");
return 1;
}
skin = strval(tmp);
if(skin==292 || skin==271 || skin==272 || skin==273 || skin==270 || skin==269 || skin==274 || skin>=289){
SendClientMessage(playerid, Vermelho, "* ID de skin invбlido!");
return 1;
}
if(IsPlayerConnected(plid)){
if(skin >= 0 && skin <= 299){
format(string, sizeof(string), "* O Vendedor ambulante %s(ID: %d) te vendeu uma nova roupa ID %d.", aname, playerid, skin);
SendClientMessage(plid, Blue, string);
format(string, sizeof(string), "* Vocк vendeu a %s(ID: %d) a roupa de ID %d.", pname, plid, skin);
SendClientMessage(playerid, Blue, string);
SetPlayerSkin(plid,skin);
dini_IntSet(file2, "Skin", skin);
return 1;
}else{
SendClientMessage(playerid, Vermelho, "* Jogador nгo conectado.");
return 1;
}
}
}
}
Reply
#2

Recomendo utilizar ZCMD, jб que vocк й "iniciante em pawn"
Esse teu comando aн venderski[id] WTF ?!
pawn Код:
CMD:skin(playerid, params[])
{
    new ID_SKIN;
    new IDPLAYER;
    new NOMEJOGADOR[MAX_PLAYER_NAME];
    new NOMEADMIN[MAX_PLAYER_NAME];
    new _string[256];
   
    if(sscanf(params, "ui",IDPLAYER,ID_SKIN)) return SendClientMessage(playerid, -1, "{CD0000}[Aviso]{FFFFFF} Use: /Skin [ID] [SKIN ID]");
    if(!IsPlayerConnected(IDPLAYER)) return SendClientMessage(playerid, -1, "{CD0000}[Aviso]{FFFFFF} Jogador nгo conectado!");

    SetPlayerSkin(IDPLAYER, ID_SKIN);

    GetPlayerName(IDPLAYER, NOMEJOGADOR, sizeof(NOMEJOGADOR));
    GetPlayerName(playerid, NOMEADMIN, sizeof(NOMEADMIN));

    format(_string, sizeof(_string), "{CD0000}[Aviso]{FFFFFF} Vocк deu a skin ID %d para o jogador %s.",  ID_SKIN, NOMEJOGADOR);
    SendClientMessage(playerid, -1, _string);
    format(_string, sizeof(_string), "{CD0000}[Aviso]{FFFFFF} O administrador %s lhe deu a skin ID %d.", NOMEADMIN, ID_SKIN);
    SendClientMessage(IDPLAYER, -1, _string);

    return true;
}
Pode usar isso como base, se quiser fazer com que o jogador aceite, vocк pode excluir a linha de setplayerskin e fazer uma varivel lб no topo new queroaceitar[MAX_PLAYERS], skinvendendo[MAX_PLAYERS]; e por no lugar do setplayerskin, que vocк apagou, queroaceitar[IDPLAYER] = 1, skinvendendo[IDPLAYER] = ID_SKIN;

E no comando de aceitarskin fazer um if pra ver se o queroaceitar й 1... colocar SetPlayerSkin(playerid, skinvendendo[playeird]);

Acho que й isso
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)