SA-MP Forums Archive
[Pedido] Armamento - 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: [Pedido] Armamento (/showthread.php?tid=373908)



Armamento - Rijin - 01.09.2012

Entгo, eu fiz um cуdigo aqui para vender armas aos jogadores por comando, mas eu tentei passar o mesmo para DIALOG_STYLE_LIST, porem nгo obtive sucesso.

Entгo gostaria que alguйm passasse para mim o meu cуdigo para DIALOG_STYLE_LIST, para mim estudar um pouco o DIALOG e aprender.

pawn Код:
#define Armamentos 1

if(strcmp("/armamentos", cmdtext, true, 10) == 0) //Comando que quero que abra o DIALOG.
{
ShowPlayerDialog(playerid, Armamentos, DIALOG_STYLE_LIST, "{FFFFFF}Armamentos", "{FFFFFF}Armamento Bбsico - R$ 5.000 \nArmamento Mйdio - R$ 10.000", "OK", "Cancelar");
}

    if(!strcmp(cmdtext, "/armamentobasico", true)) //Quero que pegue os cуdigos deste comando e passe para o OnDialogResponse.
    {
    if(Armas[playerid] > gettime()) return SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк pegou Armamento Bбsico a pouco tempo, aguarde 5 minutos para pegar novamente!");
    if(GetPlayerMoney(playerid) >= 5000)
    {
    GivePlayerMoney(playerid, -5000);
    Armas[playerid] = gettime() + 300;
    SendClientMessage(playerid, -1, "{808080}[INFO] Vocк comprou um Armamento Bбsico e foram lhe cobrados R$ 5.000 reais!");
    GivePlayerWeapon(playerid, 5, 1);
    GivePlayerWeapon(playerid, 22, 5000);
    GivePlayerWeapon(playerid, 25, 5000);
    GivePlayerWeapon(playerid, 29, 5000);
    }
    else
    {
    SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк nгo tem dinheiro suficiente!");
    }
    return 1;
    }
   
    if(!strcmp(cmdtext, "/armamentomedio", true)) //Quero que pegue os cуdigos deste comando e passe para o OnDialogResponse.
    {
    if(Armas[playerid] > gettime()) return SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк pegou Armamento Mйdio a pouco tempo, aguarde 5 minutos para pegar novamente!");
    if(GetPlayerMoney(playerid) >= 10000)
    {
    GivePlayerMoney(playerid, -10000);
    SendClientMessage(playerid, -1, "{808080}[INFO] Vocк comprou um Armamento Mйdio e foram lhe cobrados R$ 10.000 reais!");
    GivePlayerWeapon(playerid, 8, 1);
    GivePlayerWeapon(playerid, 18, 5000);
    GivePlayerWeapon(playerid, 22, 5000);
    GivePlayerWeapon(playerid, 27, 5000);
    GivePlayerWeapon(playerid, 30, 5000);
    }
    else
    {
    SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк nгo tem dinheiro suficiente!");
    Armas[playerid] = gettime() + 300;
    }
    return 1;
    }

    if(dialogid == Armamentos)
    {
    if(response)
    {
    if(listitem == 0)
    {
//Definido o cуdigo em DIALOG aqui.
    }
    if(listitem == 1)
    {
//Definido o cуdigo em DIALOG aqui.
    }
    }
    }
    return 1;
    }
Se alguйm tiver a boa vontade de colocar os cуdigos do /armamentobasico e /armamentomedio em DIALOG pra um noob como eu, eu fico mais que agradecido.



Re: Armamento - Kuddy - 01.09.2012

Qual o seu erro/sua dъvida?

Vamos tentar resolver o erro, do que pedir para alguem criar.

@edit

Aonde vocк estб colocando cada um desses codes? Principalmente esse if(dialogid == Armamentos) ?


Re: Armamento - Rijin - 01.09.2012

Entгo, o if(dialogid == Armamentos) eu colocava em public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

Ai eu copiava este cуdigo:
pawn Код:
if(Armas[playerid] > gettime()) return SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк pegou Armamento Bбsico a pouco tempo, aguarde 5 minutos para pegar novamente!");
    if(GetPlayerMoney(playerid) >= 5000)
    {
    GivePlayerMoney(playerid, -5000);
    Armas[playerid] = gettime() + 300;
    SendClientMessage(playerid, -1, "{808080}[INFO] Vocк comprou um Armamento Bбsico e foram lhe cobrados R$ 5.000 reais!");
    GivePlayerWeapon(playerid, 5, 1);
    GivePlayerWeapon(playerid, 22, 5000);
    GivePlayerWeapon(playerid, 25, 5000);
    GivePlayerWeapon(playerid, 29, 5000);
    }
    else
    {
    SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк nгo tem dinheiro suficiente!");
    }
e simplismente colava lб, por isso eu creio que seja o erro.
Mas eu colova dentro do:
pawn Код:
if(listitem == 0)
{



Re: Armamento - Kuddy - 01.09.2012

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(response)
    {
        if(dialogid == Armamentos)
        {
            if(listitem == 0)
            {
                if(Armas[playerid] > gettime()) return SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк pegou Armamento Bбsico a pouco tempo, aguarde 5 minutos para pegar novamente!");
                if(GetPlayerMoney(playerid) >= 5000)
                {
                    GivePlayerMoney(playerid, -5000);
                    Armas[playerid] = gettime() + 300;
                    SendClientMessage(playerid, -1, "{808080}[INFO] Vocк comprou um Armamento Bбsico e foram lhe cobrados R$ 5.000 reais!");
                    GivePlayerWeapon(playerid, 5, 1);
                    GivePlayerWeapon(playerid, 22, 5000);
                    GivePlayerWeapon(playerid, 25, 5000);
                    GivePlayerWeapon(playerid, 29, 5000);
                }
                else
                {
                    SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк nгo tem dinheiro suficiente!");
                }
                return 1;
            }
            else if(listitem == 1)
            {
                if(Armas[playerid] > gettime()) return SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк pegou Armamento Mйdio a pouco tempo, aguarde 5 minutos para pegar novamente!");
                if(GetPlayerMoney(playerid) >= 10000)
                {
                    GivePlayerMoney(playerid, -10000);
                    SendClientMessage(playerid, -1, "{808080}[INFO] Vocк comprou um Armamento Mйdio e foram lhe cobrados R$ 10.000 reais!");
                    GivePlayerWeapon(playerid, 8, 1);
                    GivePlayerWeapon(playerid, 18, 5000);
                    GivePlayerWeapon(playerid, 22, 5000);
                    GivePlayerWeapon(playerid, 27, 5000);
                    GivePlayerWeapon(playerid, 30, 5000);
                }
                else
                {
                    SendClientMessage(playerid, -1, "{808080}[ERRO] Vocк nгo tem dinheiro suficiente!");
                    Armas[playerid] = gettime() + 300;
                }
                return 1;
            }
        }

    }
    return 1;
}



Re: Armamento - Rijin - 01.09.2012

Vou testar.

@Edit
Nossa, deu certo.
Obrigado Kuddy.