Creating interfaces as abstract classes

Hi, this is my first time posting, but I looked around for a bit and couldn’t really find a satisfying answer.

Suppose I’m trying to create a throwable axe, but I want to create more weapons in the future. My thought was I should have an abstract class Weapon, which would have pure virtual functions like GetDamage(), GetDurability(), etc. Then I would have another abstract class that inherits from the Weapon abstract class, and it would have pure virtual functions like Throw(), Impact(), and variables like ThrowSpeed and RotationalSpeed.

Then I learned that Unreal doesn’t really support abstract classes, they use Interfaces. When when I looked into the interfaces, I couldn’t figure out how to have one interface inherit from another. What I’m asking is (1) Is this a situation that you think abstract classes AND/OR interfaces should be used to implement and (2) If so, how does one create an interface that inherits from another interface?

Thanks for any insight!

1 Like