Since the class Actor<T> is abstract, and the code inside the Actor<T> does not raise an event, you can make an abstract event:
public abstract event Action Dead;
Then, in the subclass (es) that inherits from Actor<T> , you override the event:
public override event Action Dead;
If the subclass does not actually raise an event, you can suppress the warning by giving the add and remove events empty (see this blog post ).
public override event Action Dead { add { } remove { } }
source share