2024-10-24 18:06:58 +02:00

51 lines
1.5 KiB
C++

// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "RRDADataAssetBase.h"
#include "ItemAmount.h"
#include "RRDADirtDataAsset.generated.h"
UCLASS( BlueprintType )
class REFINEDRDAPI_API URRDADirtDataAsset : public URRDADataAssetBase
{
GENERATED_BODY()
public:
UFUNCTION( BlueprintPure, Category="FicsitFarming|Dirt" )
static TArray<FItemAmount> GetExtractableSeed(URRDADirtDataAsset* Asset);
UFUNCTION( BlueprintPure, Category="FicsitFarming|Dirt" )
static float GetExtractionCycleTime(URRDADirtDataAsset* Asset);
UFUNCTION( BlueprintPure, Category="FicsitFarming|Dirt" )
static int32 GetDirtConsume(URRDADirtDataAsset* Asset);
public:
/**
* What Item should be a Dirt?
* @warning - If 2 DirtDataAssets have the same Item, the game will use the last one which was loaded
*/
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "FicsitFarming")
TSubclassOf<UFGItemDescriptor> mItem;
/**
* Seeds that can be extracted from this dirt every cycle
*/
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category="FicsitFarming" )
TArray<FItemAmount> mExtractableSeed;
/**
* Production time for the extraction of seeds
*/
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category="FicsitFarming" )
float mExtractionCycleTime = 6.0f;
/**
* How much dirt should be consumed?
*/
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category="FicsitFarming" )
int32 mDirtConsume = 2;
};