We had a generic item scene, and inhereted different item nodes from it. they all had an initializer that connected signals from other parts of the game to whatever effect the item had. the signals system in godot worked really well for this, especially for the spells.