30 lines
822 B
C
30 lines
822 B
C
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "CoreMinimal.h"
|
||
|
#include "UObject/ObjectMacros.h"
|
||
|
#include "GameSetting.h"
|
||
|
|
||
|
class FWhenCondition : public FGameSettingEditCondition
|
||
|
{
|
||
|
public:
|
||
|
FWhenCondition(TFunction<void(const ULocalPlayer* InLocalPlayer, FGameSettingEditableState&)>&& InInlineEditCondition)
|
||
|
: InlineEditCondition(InInlineEditCondition)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
virtual void GatherEditState(const ULocalPlayer* InLocalPlayer, FGameSettingEditableState& InOutEditState) const override
|
||
|
{
|
||
|
InlineEditCondition(InLocalPlayer, InOutEditState);
|
||
|
}
|
||
|
|
||
|
virtual FString ToString() const override
|
||
|
{
|
||
|
return TEXT("Inline Edit Condition");
|
||
|
}
|
||
|
|
||
|
private:
|
||
|
TFunction<void(const ULocalPlayer* InLocalPlayer, FGameSettingEditableState& InOutEditState)> InlineEditCondition;
|
||
|
};
|