Hmm well the way I was thinking of Weapons originally was pretty much guns. And then I was thinking that magic and things like that would be an Ability. But now I’m not so sure I was thinking about it correctly. For example, a projectile gun and a projectile magic are pretty much exactly the same. So it wouldn’t make since to make one a weapon and the other an ability. Except for the fact that the weapon can be dropped and the ability can’t.
Were you saying to make one single Interface? Would that mean that anything that implements that interface has to implement all of it’s functions? I’m not sure that DamageInterface is really a good name for it since it would handle healing, teleporting, and so many other things besides damage.