9 #include "GameFramework/Actor.h"    10 #include "Materials/MaterialInstanceConstant.h"    11 #include "RoadPainterWrapper.generated.h"    13 USTRUCT(BlueprintType)
    16   GENERATED_USTRUCT_BODY()
    19   UPROPERTY(BlueprintReadOnly, Category = 
"Decals Properties")
    20   TArray<UMaterialInstance*> DecalMaterials;
    23   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    24   TArray<int32> DecalNumToSpawn;
    27   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    31   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    32   FVector FixedDecalOffset;
    35   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    36   float DecalMaxScale = 1.0f;
    39   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    40   float DecalMinScale = 1.0f;
    43   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    44   float DecalRandomYaw = 90.0f;
    47   UPROPERTY(BlueprintReadOnly, Category = "Decals Properties")
    48   float RandomOffset = 3.0f;
    60   void BeginPlay() 
override;
    63   UFUNCTION(BlueprintImplementableEvent, Category = 
"RoadPainter Wrapper")
    64   void SpawnMeshesEvent();
    67   UFUNCTION(BlueprintImplementableEvent, Category = 
"RoadPainter Wrapper")
    68   void SpawnDecalsEvent();
    71   UFUNCTION(BlueprintImplementableEvent, Category = 
"RoadPainter Wrapper")
    72   void SetBlueprintVariables();
    75   UFUNCTION(Category = 
"RoadPainter Wrapper")
    76   void ReadConfigFile(
const FString &CurrentMapName, 
const TMap<FString, FString> &DecalNamesMap);
    80   UPROPERTY(BlueprintReadOnly, Category = 
"RoadPainter Wrapper")
    81   FDecalsProperties DecalPropertiesConfig;
    86   FVector ReadVectorFromJsonObject(TSharedPtr<FJsonObject> JsonObject);