Lista de reproducción completa del tutorial de Godot sobre cómo crear un Action-RPG en Godot, creada por MakerTech
https://www.youtube.com/playlist?list=PLMQtM2GgbPEVuTgD4Ln17ombTg6EahSLr
En este tutorial se enseña como arrastrar ítems e intercambiarlos por los ítems de otras casillas.
Creamos nuevas funciones para Inventory, removeItemAtItem e InserteSlot, usadas para actualizar el array del inventory, cada vez que movamos un item se cambiara la posición del array de dicho item.
Actualizamos Slot_GUI, se encargara de actualizar el cambio de slots de los ítems que movamos.
Modificamos Inventory_GUI, se encargara
Vamos a repasar el código antes de terminar con esta página de apuntes.
- InventoryGUI se encarga de asignar un numero de index a cada slot_gui.
- Asocia cada slot_gui con el signal pressed a la función onSlotClick, con una referencia de si mismo.
- Al clicar un slot_gui, hay dos posibilidades.
- La variable ItemInHand esta vacía
- Pedira a Slot Gui que borre su ItemStackGui hijo y lo se lo devuelva a InventoryGUI.
- InventoryGUI lo guardara en ItemInHand, lo agregara a la escena como su hijo y que siga la posición del ratón.
- La variable ItemInHand tiene la referencia de un ItemStackGUI.
- La casilla clicada ya conteine un slot_gui con un ItemStackGUI, InventoryGUI no hará nada.
- Si el slot no tiene ningún ItemStackGUI, pasaremos la referencia a slot_gui para que se ponga el ItemStackGUI como hijo y actualice el inventario del jugador.
- InventaryGUI asignará
null
aItemInHand
cuando dejemos de arrastrar un objeto, lo que sirve tanto para el control interno del sistema como para reflejarlo visualmente al jugador.
No hay comentarios:
Publicar un comentario