67 lines
1.6 KiB
C++
67 lines
1.6 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 "RRDATurbineDataAsset.generated.h"
|
|
|
|
UCLASS( BlueprintType )
|
|
class REFINEDRDAPI_API URRDATurbineDataAsset : public URRDADataAssetBase
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
virtual bool IsEnabled_Internal(UObject* WorldContextObject) const override;
|
|
|
|
public:
|
|
/**
|
|
* Fuel item that this heater uses
|
|
*/
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Turbine", meta=( UIMin = "1", UIMax = "2" ))
|
|
int32 mTier = 1;
|
|
|
|
/**
|
|
* Fuel item that this heater uses
|
|
*/
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Turbine")
|
|
FItemAmount mItem;
|
|
|
|
/**
|
|
* Item that this turbine produces
|
|
* @Note - Can be nullptr so that the turbine doesn't produce anything
|
|
*/
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Turbine")
|
|
FItemAmount mWasteItem;
|
|
|
|
/**
|
|
* Duration for one production
|
|
*/
|
|
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Turbine")
|
|
float mDuration = 6.f;
|
|
|
|
/**
|
|
* The time it takes to handle the RPM (slow down or speed up)
|
|
*/
|
|
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Turbine" )
|
|
float mRPHandleTime = 0.025f;
|
|
|
|
/**
|
|
* How much the RPM should be dragged down by
|
|
*/
|
|
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Turbine" )
|
|
int mRPMDrag = 5;
|
|
|
|
/**
|
|
* Maximum RPM that this turbine can reach
|
|
*/
|
|
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Turbine" )
|
|
int mMaxRPM = 10000;
|
|
|
|
/**
|
|
* Multiplier for the RPM
|
|
*/
|
|
UPROPERTY( EditAnywhere, BlueprintReadWrite, Category = "Turbine" )
|
|
float mRPMMultiplier = 2;
|
|
}; |