[Pedido] Armamento
#1

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.
Reply
#2

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) ?
Reply
#3

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)
{
Reply
#4

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;
}
Reply
#5

Vou testar.

@Edit
Nossa, deu certo.
Obrigado Kuddy.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)