Closed visoredvisored closed 2 years ago
What does the bound receiver event look like?
Attaching screenshots.
In FGESHandler::EmitEvent(const FGESEmitContext& EmitData, UObject* ParamData) When checking for valid params:
if (FunctionHasValidParams(Listener.Function, FNumericProperty::StaticClass(), PropData, Listener))
{
Listener.ReceiverWCO->ProcessEvent(Listener.Function, (void*)&ParamWrapper);// PropData.PropertyPtr);
}
I think FNumericProperty::StaticClass() should instead be FObjectProperty::StaticClass()? Seems to work as expected with this change.
Yep, looks like a copy paste error, good catch. Make a pull request with change and I'll merge it
Seems it's already correct in the master. Now I'm confused how I got the old version : ).
Hah it did seem familiar, likely an older engine plugin release. Not sure if latest release had the patch or if I fixed it post.
I'm emitting an event in c++ +with:
Actor is a UObject (AActor). Binding an event with UObject as input to TurnBegin in blueprint with the GESBindEvent node. I get the warning "Skipped listener due to function not having a matching NumericProperty signature" and the event doesn't trigger. When I change the input from UObject to integer the event triggers and the input is a random integer.