[Ayuda] Inventario
#1

Hola, hoy estaba haciendo un inventario para mi gamemode pero el problema es que al seleccionar un item de la lista no pasa nada, les dejo el cуdigo para que lo vean.
PHP код:
CMD:inventario(playeridparams[])
{
    new 
asd[64];
    
format(asdsizeof(asd), "Bebidas(s): %i\nComestibles(s): %i\nBotiquin(es): %i",Informacion[playerid][pJugo],Informacion[playerid][pPizza],Informacion[playerid][pBotiquin]);
    
ShowPlayerDialog(playeridDIALOG_INVENTARIODIALOG_STYLE_LIST"Tu inventario"asd"Seleccionar""Salir");
    return 
1;
}
public 
OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch(
dialogid)
    {
        case 
DIALOG_INVENTARIO:
        {
            if(
response == 1)
            {
                switch(
listitem)
                {
                    case 
0:
                    {
                        
ShowPlayerDialog(playeridDIALOG_SEDDIALOG_STYLE_MSGBOX"їQue deseas hacer con el objeto seleccionado?""""Usar""Tirar");
                    }
                    case 
1:
                    {
                        
ShowPlayerDialog(playeridDIALOG_HAMBREDIALOG_STYLE_MSGBOX"їQue deseas hacer con el objeto seleccionado?""""Usar""Tirar");
                    }
                    case 
2:
                    {
                        
ShowPlayerDialog(playeridDIALOG_BOTIQUINDIALOG_STYLE_MSGBOX"їQue deseas hacer con el objeto seleccionado?""""Usar""Tirar");
                    }
                }
            }
        }
        case 
DIALOG_SED:
        {
            if(
response == 1)
            {
                
Informacion[playerid][pSed] = 100;
                  
SetProgressBarValue(Sed[playerid], 100);
                
Informacion[playerid][pJugo]--;
                
ApplyAnimation(playerid"FOOD""EAT_Burger"3.0000000);
            }
            else
            {
                
SendClientMessage(playeridCOLOR_ROJO"Descartaste una Botella de jugo de tu inventario.");
                
Informacion[playerid][pPizza]--;
            }
        }
        case 
DIALOG_HAMBRE:
        {
            if(
response == 1)
            {
                
Informacion[playerid][pHambre] = 100;
                
SetProgressBarValue(Hambre[playerid], 100);
                
Informacion[playerid][pPizza]--;
                
ApplyAnimation(playerid"FOOD""EAT_Burger"3.0000000);
            }
            else
            {
                
SendClientMessage(playeridCOLOR_ROJO"Descartaste una Pizza de tu inventario.");
                
Informacion[playerid][pPizza]--;
            }
        }
        case 
DIALOG_BOTIQUIN:
        {
            if(
response == 1)
            {
                
SetPlayerHealth(playerid100.0);
                
SendClientMessage(playerid, -1"Te haz curado");
                
Informacion[playerid][pBotiquin]--;
                
ApplyAnimation(playerid"BOMBER""BOM_Plant"4.00110,0);
            }
            else
            {
                
SendClientMessage(playeridCOLOR_ROJO"Descartaste un Botiquin de tu inventario.");
                
Informacion[playerid][pBotiquin]--;
            }
        }
    }
    return 
1;

Reply
#2

їMe ayuda por favor?
Reply
#3

Por favor, їes mucho pedir que me ayuden?
Reply
#4

Ese cуdigo solo tiene un problema, y no afecta en el funcionamiento (seguirнa haciendo algo, tu dices que hace nada).

Estas utilizando algъn FilterScript que interrumpa el funcionamiento de OnDialogResponse dentro del GameMode? Aunque creo que primero se llama en el GameMode y luego en los FilterScripts, en ese caso, revisa el uso de includes que interfieran.

Justo despuйs de la condiciуn verdadera de los diбlogos de las opciones, solo haces una animaciуn y actualizas la barra del include "progressbar". Puede que tu no notes o creas que "hace nada" pero si esta haciendo algo. Razуn? La animaciуn no la cargas correctamente y la barra del include anteriormente mencionado no la estas mostrando con anterioridad (segъn el tema del include, despuйs de usar esa funciуn debes volver a mostrar la barra).

La ъltima opciуn serнa que tu script estuviera intentando acceder a una zona de la memoria que no corresponde con lo que le estas permitiendo. Como tienes declarada la variable "Informacion"? Aunque esta opciуn es extremadamente poco probable.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)