[Ajuda] Dialog continua abrindo
#1

Olб pessoal, eu tinha feito um post porйm o post estava todo mal organizado entгo decidi fazer um post mais elaborado e com vнdeo para vocкs entenderem melhor sobre o que estб se passando.
Breve explicaзгo: Eu fiz um sistema de que quando o jogador morre e tem itens no inventбrio ele dropa os itens em um objeto no chгo entгo se o player chegar perto desse objeto e apertar "N" uma DIALOG se abre e mostra a quantidade de tais itens que tem e o item, porйm ao jogador quase todos os itens e sobrar 1 na DIALOG ele nгo й removido da DIALOG entгo fica infinitamente lб na DIALOG, e a DIALOG nгo й destruнda.


VНDEO: https://*********/DlR8dF9YzXo


CУDIGO:

Funзгo da Dialog
Код:
take_OnDialogResponse( playerid, dialogid, response, listitem)
{
    if(dialogid == 68)
    {
        if(!response) return 1;
        if(response)
        {
            AddItem( playerid, ItemInfo[ DeadList[ playerid ][ listitem ] ][ Item_Name ], DeadQntList[ playerid ][ listitem ] );
            for( new items; items < MAX_ITEMS; items++)
            {
                new id = GetDeadID( playerid );
                new itemid = PlayerDeadItemID[ items ][ id ];
                if( PlayerDeadItemQnt[ items ][ DeadGet[ playerid ][ listitem ] ] != 0)  
                {
                    if(itemid == DeadList[ playerid ][ listitem ])
                    {
                        PlayerDeadItemQnt[ listitem ][ DeadGet[ playerid ][ listitem ]] = 0;
                        break;
                    }
                }
            }
        }
        return 1;
    }
    return 0;
}
Abrir a dialog
Код:
new DeadGet[ MAX_PLAYERS ][ MAX_ITEMS ];
new DeadList[ MAX_PLAYERS ][ MAX_ITEMS ];
new DeadQntList[ MAX_PLAYERS ][ MAX_ITEMS ];
ShowLooting( playerid )
{
    new text[ 3000 ], subtxt[ 128 ], lootslot;
    for( new items; items < MAX_ITEMS; items++)
    {
        new id = GetDeadID( playerid );
        new itemid = PlayerDeadItemID[ items ][ id ];
        if( PlayerDeadItemQnt[ items ][ id ] > 0) 
        {
            printf( "%d", items );
            DeadGet[ playerid ][ lootslot ] = id;
            DeadList[ playerid ][ lootslot ] = itemid;
            DeadQntList[ playerid ][ lootslot ] = PlayerDeadItemQnt[ items ][ id ];
            // --
            format( subtxt, sizeof subtxt, "%d\t%s\n", PlayerDeadItemQnt[ items ][ id ], ItemInfo[ itemid ][ Item_Name ]);
            strcat( text, subtxt );
            lootslot++;
        }
    }
    ShowPlayerDialog( playerid, 68, DIALOG_STYLE_LIST, "Quantia | Item ", text, "Pegar", "x");
    return 1;
}
Reply


Messages In This Thread
Dialog continua abrindo - by Meck - 11.03.2018, 13:13
Re: Dialog continua abrindo - by GuiKommander - 11.03.2018, 15:20
Re: Dialog continua abrindo - by Meck - 11.03.2018, 15:21
Re: Dialog continua abrindo - by GuiKommander - 11.03.2018, 15:43
Re: Dialog continua abrindo - by Meck - 11.03.2018, 16:01
Re: Dialog continua abrindo - by GuiKommander - 11.03.2018, 16:16
Re: Dialog continua abrindo - by Meck - 11.03.2018, 18:45
Re: Dialog continua abrindo - by iSoaD - 12.03.2018, 02:19
Re: Dialog continua abrindo - by Meck - 12.03.2018, 02:43
Re: Dialog continua abrindo - by Meck - 12.03.2018, 14:27

Forum Jump:


Users browsing this thread: 5 Guest(s)