From 1e22bb03723c65bfe0139ebe2255c9370ff14cd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o?= Date: Sat, 22 Feb 2025 12:40:33 +0100 Subject: [PATCH] Created simple User Game Settings class Signed-off-by: TjgL --- Config/DefaultEngine.ini | 1 + Source/LegumeMix/Private/LMUserSettings.cpp | 9 ++++++ Source/LegumeMix/Public/LMSaveGame.h | 13 --------- Source/LegumeMix/Public/LMUserSettings.h | 31 +++++++++++++++++++++ 4 files changed, 41 insertions(+), 13 deletions(-) create mode 100644 Source/LegumeMix/Private/LMUserSettings.cpp create mode 100644 Source/LegumeMix/Public/LMUserSettings.h diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini index 0d431b9..c09a2ba 100644 --- a/Config/DefaultEngine.ini +++ b/Config/DefaultEngine.ini @@ -78,6 +78,7 @@ FontDPI=72 [/Script/Engine.Engine] +ActiveGameNameRedirects=(OldGameName="TP_Blank",NewGameName="/Script/LegumeMix") +ActiveGameNameRedirects=(OldGameName="/Script/TP_Blank",NewGameName="/Script/LegumeMix") +GameUserSettingsClassName=/Script/LegumeMix.LMUserSettings [/Script/AndroidFileServerEditor.AndroidFileServerRuntimeSettings] bEnablePlugin=True diff --git a/Source/LegumeMix/Private/LMUserSettings.cpp b/Source/LegumeMix/Private/LMUserSettings.cpp new file mode 100644 index 0000000..ca31013 --- /dev/null +++ b/Source/LegumeMix/Private/LMUserSettings.cpp @@ -0,0 +1,9 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "LMUserSettings.h" + +ULMUserSettings* ULMUserSettings::GetLegumixUserSettings() +{ + return Cast(UGameUserSettings::GetGameUserSettings()); +} diff --git a/Source/LegumeMix/Public/LMSaveGame.h b/Source/LegumeMix/Public/LMSaveGame.h index 2e8c2cc..dc94d00 100644 --- a/Source/LegumeMix/Public/LMSaveGame.h +++ b/Source/LegumeMix/Public/LMSaveGame.h @@ -14,17 +14,4 @@ class LEGUMEMIX_API ULMSaveGame : public USaveGame { GENERATED_BODY() -public: - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Legumix|Graphics") - FVector2D ScreenResolution; - - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio") - int MasterAudio; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio") - int MusicAudio; - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio") - int FxAudio; - - UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "Legumix|Controls") - float MouseSensitivity; }; diff --git a/Source/LegumeMix/Public/LMUserSettings.h b/Source/LegumeMix/Public/LMUserSettings.h new file mode 100644 index 0000000..14df779 --- /dev/null +++ b/Source/LegumeMix/Public/LMUserSettings.h @@ -0,0 +1,31 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/GameUserSettings.h" +#include "LMUserSettings.generated.h" + +/** + * + */ +UCLASS(Blueprintable) +class LEGUMEMIX_API ULMUserSettings : public UGameUserSettings +{ + GENERATED_BODY() + +public: + UFUNCTION(BlueprintCallable, BlueprintPure, Category = "Legumix", meta = (Keywords = "Game User Settings, Settings, User Settings")) + static ULMUserSettings* GetLegumixUserSettings(); + +public: + UPROPERTY(Config, EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio", meta = (UIMin = 0, ClampMin = 0, UIMax = 10, ClampMax = 10)) + int MasterAudio = 1.f; + UPROPERTY(Config, EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio", meta = (UIMin = 0, ClampMin = 0, UIMax = 10, ClampMax = 10)) + int MusicAudio = 1.f; + UPROPERTY(Config, EditAnywhere, BlueprintReadWrite, Category = "Legumix|Audio", meta = (UIMin = 0, ClampMin = 0, UIMax = 10, ClampMax = 10)) + int FxAudio = 1.f; + + UPROPERTY(Config, EditAnywhere, BlueprintReadWrite, Category = "Legumix|Controls", meta = (UIMin = 0, ClampMin = 0, UIMax = 10, ClampMax = 10)) + float MouseSensitivity = 1.f; +};