For blueprints - I can use either BlueprintNativeEvent or BlueprintImplementableEvent in UFUNCTION, and then I’m able to bind multiple behaviours to OnFire in any number of blueprint graphs.
Unfortunately, I cannot combine the two mentioned solutions. That is: I cannot apply the UFUNCTION to the dynamic delegate. It seems that for each event (like OnFire) I need to define two separate class members - one for c++ and another for blueprints.
Is there a way to provide an event for c++ and blueprint using a single class member?
Regards!
EDIT:
I found that the BlueprintAssignable UPROPERTY specifier almost does what I want. Except it only works for multicast-delegates, and not for events. Is there any way to expose an event to blueprints?
You ever figure out the answer? I’m trying to figure the exact same thing out right now. I’m guessing the solution is just to use a dynamic multicast delegate instead, because maybe events don’t support working this way, but I’m hoping I’m wrong.
I gues what you are looking for are
dynamic delegates. Dynamic allows for blueprint and cpp binding, but only one listener. If you need more listener you need dynamic multicast delegate.
Sadly Events are not supported.
That’s a shame, because the Delegate can be thrown by other class than itself (main difference between event and delegate). I don’t know if it a technical limitation or just by design.
Sadly no.
If you do that you can’t bind another BP class on this event to react.
You can only react to it in a BP derived class but that’s not what Elgcahlxukuth wants. Or I misunderstand it.