buenos dias chicos!! iva a escribiros ayer, pegandoos mis codigos etc etc etc... pero no quise ser tan egoista i aceros leer una masa de letras,
por eso hoy me tome un tiempo e hice mi inventario aparte exportando el proyecto, asi si alguien quiere usarlo adelante ^^
os comento un poco mi inventario y en que falla...
mi inventario aparece invisible, (como una pantalla desplegable) le das a SPACE y aparece, cuenta con 4 apartados (aunque podria tener mas)
INVENTARIO,STADISTICAS,OPCIONES,CREDITOS
en cada uno hay un submenu en el inventario cree la casilla (slot) para que los objetos fueran hay, pulsando"I" accedemos al submenu y nos movemos por
los "slot" usando "O"(izquierda) "P"(derecha) al movernos sabremos en que slot stamos porque cree un sprite de seleccion...
pero al yegar a la tercera linea es cuando comienza el error.. que el sprite se multiplica y aparecen dos uno en la primera linea y otro en la tercera
al seguir moviendonos y volver a la primera el error desaparece y en la tercera vuelve aparecer...
anteriormente consegui que los objetos se agregaran a los "slot" colisionando con ellos (pero no que desaparecieran al colisionar, y se agregaban
de uno en uno no se sumaban asta un maximo de 20)
ahora no recuerdo lo que hice para conseguir aquello, y como tonto no lo guarde en el block de notas (fallo que no vuelvo a cometer)
os adjunto el archivo exportado de mi proyecto, espero que a algunos les sea de utilidad y a quien pueda ayudarme se lo agradeceria mucho,
gracias!!
El limite lo pone nuestra imaginacion

Lo que yo hago es que cada objeto tiene un "número de inventario", es decir, un número único que lo identifica y distingue de los demás objetos, por ejemplo, tal poción tiene el número 15, cierta espada el número 80, un escudo de bronce el 100, etc etc.

Tengo un ds_map con las existencias de cada item, pero igual puedes tener un arreglo, por ejemplo, para los objetos que mencioné antes
existencias[15] = 3         // 3 pociones
existencias[80] = 1         // 1 espada
existencias[100] = 2       // 2 escudos

En [CREATE] del objeto poción:
numero = 15

evento colisión con objetos items (en el jugador)       
item = other.id                               //obtener el id de la instancia
existencias[item.numero] += 1          // sumar +1 del objeto que se recogió
with (item) {instance_destriy()}       // eliminar el item del juego, una vez que se agregó a las existencias



vale chicos... solucione lo de mi inventario, aciendole una especie de arreglo...
os comento:

ahora me da un error, tengo.. "menuactivo=0"... con menuactivo=0 estamos en inventario, menuactivo=1 estamos en estadisticas, y con menu activo=2 estamos en opciones.
vale pues en menu activo tengo:

MENUACTIVO0
///mochila......................................................................me va perfecto simplemente tengo que averiguar como seleccionar los item
y como hacer para que no vayan a esas coordenadas sino que simplemente reyenen los espacios del inventario.
if mostrar=1{

if menuactivo=0{
draw_sprite(spr_mochila,image_index,320,220)
draw_set_font(fnt_inventario)
draw_text(160,90,global.oro)


//dibujamos la segunda dimension con valor 1 de cada array, osea, el sprite. Revisa Gamestart
    dibujar_item(obj_pocionmana,spr_pocionmana,190,150);
    dibujar_item(obj_pocionvida,spr_pocionvida,261,150);
    dibujar_item(obj_hoja,spr_hoja,105,160);
    dibujar_item(obj_manzana,spr_manzana,355,150);
    dibujar_item(obj_pocionmaxvida,spr_pocionmaxvida,410,150);
    }}

MENUACTIVO1
///estadisticas......... en este no me aparece el sprite osea la imagen de la pantalla de estadisticas.
if mostar=1{
if menuactivo=1{

draw_sprite(spr_est,image_index,320,220)
}
}

MENUACTIVO2
///opciones...............................tambien me va perfecto, luego le creare los botones de quitar audio salir etc.. etc...
if mostrar=1{
if menuactivo=2
{
draw_sprite(spr_opciones,image_index,320,220)
//aqui pondremos las opciones de sonido etc...

}
}
BARRA DE LOS MENUS

///barra............................ va perfecta, no os extrañeis por las coordenadas, esque va al lado delos menus.
if mostrar=1{
draw_sprite(spr_menus,menuactivo,553,220)
}

...
ahora os dare mas detallitos, en evento create en el mismo objeto"obj_inventario tengo.
///detalles como se divide el inventario
//Declaramos la variable menuactivo que nos indica en qué menu estamos 0= mochila, 1=estadisticas , 2= opciones.
menuactivo=0

/*Declaramos la variable que nos inica si estamos o no en el submenu*/
submenu=0

/* Declaramos la variable i, que es la posicion para el menu de mochila*/
i=0

/*Declaramos la variable e, que es la posición para el menu de estadisticas*/
e=1

/*declaramos la variable c, que es la posicion para el menu de opciones*/
c=2

...
key pres "P":
if submenu=false{

//Esto indica que no estamos dentro del submenu
if submenu=0{

if menuactivo<2{
menuactivo+=1} //vamos al siguiente menu


else {menuactivo=0}//si no, vamos al menu de magias, que es el primero.
}

}

else{

if menuactivo=0{// si es mochila
if global.item=18{global.item=0}
else{global.item+=1}
}
}
..........................................................................................

Creo que es todo lo que os puedo aportar.... simplemente quiero saver porque no me aparece el sprite de "spr_est" (estadisticas)
y como podria acer para que los objetos yenaran huecos del inventario y no se fueran a esas coordenadas predefinidas.
se que deberia crear una especie de tabla con el hueco del inventario y sus coordenadas por ejemplo:
global.caja_x[1] = 307
global.caja_y[1] = 176

pero como aplico esto:
dibujar_item(obj_pocionmana,spr_pocionmana,190,150);
para que yene la "global.caja"?
gracias por pasaros a leer y espero no ser muy cansino y pesado, pero esque me siento estancado, y no quiero avanzar porque si tengo un error despues
podrian aparecer mas por causa de esto.
gracias chicos.



El limite lo pone nuestra imaginacion

a nadie se le ocurre a ke puede ser debido esto? o como hacer lo d los espacios del iventario y aplicarlos al script d dibujar item?
El limite lo pone nuestra imaginacion