[Feature Request] Allow Blueprints to create Dynamic (non-multicast) Delegates with retval

I would like to be able to expose a DECLARE_DYNAMIC_DELEGATE_RetVal_OneParam which my designers can implement in blueprint.

It’s easy enough to create a function which follows the requirements, but it cannot be assigned (cannot be BlueprintAssignable).

I would use a multicast dynamic delegate BUT I need to be able to return a value (and multicast don’t get retval options, for obvious reasons).

Not sure if the canonical method is to use a pass-by-reference value as an argument and use that as output, but that seems incredibly hacky.

DECLARE_DYNAMIC_DELEGATE_RetVal_OneParam(TArray<float>, FMyDelegate, float, SomeData);

class Blahblahblah : public AActor
{
	GENERATED_BODY()

public:
	Blahblahblah();

	UPROPERTY( /*BlueprintAssignable*/ )
		FMyDelegate PleaseLetMeAssignThis;
}

Yes Please.

+1 on this. Of course can use a reference-type parameter to return a value, but it’s not ideal.

Generally on the BP side funcional-style stuff could benefit from many convenient features. Frequently need to store a delegate as a variable, and broadcast it later – can’t do.