To illustrate the example:
UCLASS()
class ABaseObject : public AActor
{
public:
GENERATED_BODY()
// Sets default values for this actor's properties
ABaseObject();
UPROPERTY(EditAnywhere, BlueprintReadWrite)
UActionTypeEnum ActionType;
};
and
UCLASS()
class ADerivedObject : public ABaseObject
{
public:
GENERATED_BODY()
// Sets default values for this actor's properties
ADerivedObject();
UPROPERTY(VisibleAnywhere, BlueprintReadOnly)
UActionTypeEnum ActionType;
};
I have a temporary solution to just make the base class Visible Only and keep the value undefined, but I wanted to offer a situation with more freedom to create Blueprints from Base Objects (to set the action type personally) or to create Blueprints from the Derived Objects (that would have action types set specifically in the constructor).