diff --git a/Source/minicook/OvenPawn.h b/Source/minicook/OvenPawn.h index 2337145..bf0c106 100644 --- a/Source/minicook/OvenPawn.h +++ b/Source/minicook/OvenPawn.h @@ -10,17 +10,31 @@ #include "OvenPawn.generated.h" +// todo(stefan): Revisit this meal struct, not all fields are needed/make sense. Good enough for now. USTRUCT() struct FMeal : public FTableRowBase { GENERATED_BODY() public: + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Meal", meta=(Tooltip = "The ID of the meal recipe")) int32 ID{-1}; - FString MealName; - double TargetHeat{0.0}; - double HeatHalfRange{0.0}; - double TotalCookingTimeMS{0.0}; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Meal", meta=(Tooltip = "The name of the meal recipe")) + FText MealName = FText::FromString("DefaultMealName"); + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Meal", + meta=(Tooltip = "The target value of 'heat' for the perfect cooking temperature")) + double TargetHeat{0.5}; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Meal", + meta=(Tooltip = + "The half-range of the target value of the cooking temperature, e.g. if @param TargetHeat is 0.5 and @param HalfHeatRange is 0.1, anything between 0.4 and 0.6 is perfect heat" + )) + double HeatHalfRange{0.1}; + + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Meal", meta=(Tooltip = "The total cooking time for this meal recipe, in milliseconds")) + double TotalCookingTimeMS{5000.0}; }; struct FCookingStats @@ -129,6 +143,8 @@ private: TArray> CookstoveObjects; TArray Cookstoves; +public: // ReSharper disable once CppUE4ProbableMemoryIssuesWithUObject + UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Oven Settings") TObjectPtr RecipesDataTable; }; \ No newline at end of file