206 lines
7.1 KiB
C++
206 lines
7.1 KiB
C++
|
|
|
||
|
|
#include "FormatDataLibrary.h"
|
||
|
|
#include "LuaCall.h"
|
||
|
|
#include "AnimQueue.h"
|
||
|
|
#include "MovementComponentState.h"
|
||
|
|
#include "Kismet/KismetTextLibrary.h"
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataBool(bool AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_BoolToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataByte(uint8 AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Int;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueInt = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataInt(int AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Int;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueInt = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataInt64(int64 AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Int;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueInt = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataFloat(float AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Float;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueFloat = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataDouble(double AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Double;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueDouble = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataText(FText AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataString(FString AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_StringToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataName(FName AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_NameToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataKey(FKey AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_NameToText(AutoConvertedValue.GetFName());
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataGender(ETextGender AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Gender;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueGender = AutoConvertedValue;
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataObject(UObject *AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_ObjectToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataVector(const FVector &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_VectorToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataVector2D(const FVector2D &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_Vector2dToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataRotator(const FRotator &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_RotatorToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataTransform(const FTransform &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = UKismetTextLibrary::Conv_TransformToText(AutoConvertedValue);
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataLuaValues(const UlxLuaValues *AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = FText::FromString(AutoConvertedValue->DebugString());
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataAnimationStep(const FlxAnimationStep &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = FText::FromString(UlxAnimationStepLibrary::AnimationStepDebugString(AutoConvertedValue));
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataMovementComponentState(const FlxMovementComponentState &AutoConvertedValue, const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = FText::FromString(UlxMovementComponentStateLibrary::DebugString(AutoConvertedValue));
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataBlank(const FString &Name)
|
||
|
|
{
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = FText();
|
||
|
|
return Result;
|
||
|
|
}
|
||
|
|
|
||
|
|
FFormatArgumentData UlxFormatDataLibrary::FormatArgumentDataEnum(uint8 Value, const FString &Name, const UObject *PinSubCategoryObject)
|
||
|
|
{
|
||
|
|
const UEnum *Enum = Cast<const UEnum>(PinSubCategoryObject);
|
||
|
|
FFormatArgumentData Result;
|
||
|
|
if (Enum == nullptr)
|
||
|
|
{
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Int;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValueInt = Value;
|
||
|
|
}
|
||
|
|
else
|
||
|
|
{
|
||
|
|
Result.ArgumentValueType = EFormatArgumentType::Text;
|
||
|
|
Result.ArgumentName = Name;
|
||
|
|
Result.ArgumentValue = FText::Format(INVTEXT("<{0}>"), Enum->GetDisplayNameTextByValue(Value));
|
||
|
|
}
|
||
|
|
return Result;
|
||
|
|
}
|