[Ajuda] Dialog
#1

Eu tava adaptando um sistema de cofre org do Jasonґ eu organizei tudo mas quando abro a dialog e clico em Dinheiro, Materiais, Drogas nгo aparece nenhuma informaзгo, mas qando clico em Equipar aparece Depositar, Saca dos materiais

pawn Code:
if(dialogid == 31597)
    {
        if(response)
        {
            if(listitem == 0)//Dinheiro
            {
                format(str,128,"Sua Organizaзгo tem R$ %d\nO Que Deseja Fazer com Esse Dinheiro?",Bancoorg[org][Dinheiro]);
                ShowPlayerDialog(playerid,41597,DIALOG_STYLE_MSGBOX,"Dinheiro",str,"Sacar","Depositar");
                return 1;
            }
            if(listitem == 1)//Drogas
            {
                format(str,128,"Sua Organizaзгo tem %d de Drogas\nO Que Deseja Fazer Com Essa Drogas?",Bancoorg[org][Maconha]);
                ShowPlayerDialog(playerid,51597,DIALOG_STYLE_MSGBOX,"Drogas",str,"Sacar","Depositar");
                return 1;
            }
            if(listitem == 3)//Materiais
            {
                format(str,128,"Sua Organizaзгo tem %d de Materiais\nO Que Deseja Fazer Com Esses Materiais?",Bancoorg[org][Materiais]);
                ShowPlayerDialog(playerid,91597,DIALOG_STYLE_MSGBOX,"Cocaina",str,"Sacar","Depositar");
                return 1;
            }
            if(listitem == 4)//Equipar
            {
                if(Bancoorg[org][Materiais] < 100) return SendClientMessage(playerid, 0xFFFFFFAA, "Materiais Insuficientes");
                Bancoorg[org][Materiais] -= 100;
                SetPlayerHealth(playerid, 100);
                SetPlayerArmour(playerid, 100);
                SendClientMessage(playerid, 0xFFFFFFAA, "Equipado");
            }
        }
        return 1;
    }
    if(dialogid == 41597)
    {
        if(response == 0)
        {
            ShowPlayerDialog(playerid,101597,DIALOG_STYLE_INPUT,"Depositar Dinheiro","Digite a Quantidade de Dinheiro Que Deseja Depositar.","Depositar","Cancelar");
            return 1;
        }
        if(response == 1)
        {
            ShowPlayerDialog(playerid,111597,DIALOG_STYLE_INPUT,"Sacar Dinheiro","Digite a Quantidade de Dinheiro Que Deseja Sacar.","Sacar","Cancelar");
            return 1;
        }
    }
    if(dialogid == 51597)
    {
        if(response == 0)
        {
            ShowPlayerDialog(playerid,121597,DIALOG_STYLE_INPUT,"Depositar Drogas","Digite a Quantidade de Drogas Que Deseja Depositar.","Depositar","Cancelar");
            return 1;
        }
        if(response == 1)
        {
            ShowPlayerDialog(playerid,131597,DIALOG_STYLE_INPUT,"Sacar Drogas","Digite a Quantidade de Drogas Que Deseja Sacar.","Sacar","Cancelar");
            return 1;
        }
    }
    if(dialogid == 91597)
    {
        if(response == 0)
        {
            ShowPlayerDialog(playerid,201597,DIALOG_STYLE_INPUT,"Depositar Materiais","Digite a Quantidade de Materiais Que Deseja Depositar.","Depositar","Cancelar");
            return 1;
        }
        if(response == 1)
        {
            ShowPlayerDialog(playerid,211597,DIALOG_STYLE_INPUT,"Sacar Materiais","Digite a Quantidade de Materiais Que Deseja Sacar.","Sacar","Cancelar");
            return 1;
        }
    }
    if(dialogid == 101597)//depositar Dinheiro
    {
        if(response)
        {
            new din = strval(inputtext);
            if(din > GetPlayerMoney(playerid))
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Vocк nгo tem essa grana!");
            }
            else
            {
                Bancoorg[org][Dinheiro] += din;
                GivePlayerMoney(playerid, GetPlayerMoney(playerid) - din);
                format(str,128,"Voce depositou R$ %d no cofre de sua organizaзгo",din);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
    if(dialogid == 111597)//sacar Dinheiro
    {
        if(response)
        {
            new din = strval(inputtext);
            if(din > Bancoorg[org][Dinheiro])
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Nгo temos essa grana toda!");
            }
            else
            {
                Bancoorg[org][Dinheiro] -= din;
                GivePlayerMoney(playerid, GetPlayerMoney(playerid) + din);
                format(str,128,"Voce sacou R$ %d do cofre de sua organizaзгo",din);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
    if(dialogid == 121597)//depositar Drogas
    {
        if(response)
        {
            new mac = strval(inputtext);
            if(mac > PlayerInfo[playerid][pDrugs])
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Vocк nгo tem essa Drogas toda!");
            }
            else
            {
                Bancoorg[org][Maconha] += mac;
                PlayerInfo[playerid][pDrugs] -= mac;
                format(str,128,"Voce depositou %d gramas de Drogas no cofre de sua organizaзгo",mac);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
    if(dialogid == 131597)//sacar Drogas
    {
        if(response)
        {
            new mac = strval(inputtext);
            if(mac > Bancoorg[org][Maconha])
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Nгo temos essa Drogas toda!");
            }
            else
            {
                Bancoorg[org][Maconha] -= mac;
                PlayerInfo[playerid][pDrugs] += mac;
                format(str,128,"Voce sacou %d gramas de Drogas no cofre de sua organizaзгo",mac);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
    if(dialogid == 201597)//depositar Materiais
    {
        if(response)
        {
            new mat = strval(inputtext);
            if(mat > PlayerInfo[playerid][pMats])
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Voce nao tem esses Materiais todos!");
            }
            else
            {
                Bancoorg[org][Materiais] += mat;
                PlayerInfo[playerid][pMats] -= mat;
                format(str,128,"Voce depositou %d Materiais no cofre de sua organizaзгo",mat);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
    if(dialogid == 211597)//sacar Materiais
    {
        if(response)
        {
            new mat = strval(inputtext);
            if(mat > Bancoorg[org][Materiais])
            {
                SendClientMessage(playerid,GetPlayerColor(playerid),"Nгo temos esses Materiais todos!");
            }
            else
            {
                Bancoorg[org][Materiais] -= mat;
                PlayerInfo[playerid][pMats] += mat;
                format(str,128,"Voce sacou %d Materiais no cofre de sua organizaзгo",mat);
                SendClientMessage(playerid,GetPlayerColor(playerid),str);
                return 1;
            }
        }
    }
pawn Code:
public AbrirCofreDaOrg(playerid) return ShowPlayerDialog(playerid,31597,DIALOG_STYLE_LIST,"Banco da Organizaзгo","Dinheiro\nDrogas\nMateriais\nEquipar","Selecionar","Cancelar");
Reply
#2

Pode explicar melhor?

@dica: Use enum, para enumerar os DIALOG's ID's.
Reply
#3

Blzs coloquei em enum e vi os erros =)
Reply
#4

Quote:
Originally Posted by BaianoIn
View Post
Blzs coloquei em enum e vi os erros =)
Usando enum fica difнcil dar confusгo com os ID's, que provavelmente foi o seu erro.

Fica mais simples lembrar os valores quando usamos nъmeros digamos que padronizados e nгo nъmeros como 65468439.

Pra enumerar corretamente ou de forma mais eficiente use um valor como 255.
e.g
pawn Code:
enum{
    D_REGISTRO = 255,
    D_LOGIN,    // 256
    D_WEAPONS,  // 257
    D_STATS,    // 258
    D_VIP       // 259
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)