Call it inventory_slot.gd
Godot has built-in functions for dragging and dropping
Create the get drag data function
If the slot is empty exit the function
Setup a preview texture
Create a new Control node
Add a texture rect as child of this node
Move the texture to the centre of the mouse cursor
Pass the icon we made to the built-in set_drag_preview function
Return the data so that we can swap items later
Create a function to check
If data being dropped is valid
It has to be an origin node