G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
UEnhancedInputUserSettings Class Reference

The Enhanced Input User Settings class is a place where you can put all of your Input Related settings that you want your user to be able to change. Things like their key mappings, aim sensitivity, accessibility settings, etc. This also provides a Registration point for Input Mappings Contexts (IMC) from possibly unloaded plugins (i.e. Game Feature Plugins). You can register your IMC from a Game Feature Action plugin here, and then have access to all the key mappings available. This is very useful for building settings screens because you can now access all the mappings in your game, even if the entire plugin isn't loaded yet. More...

Static Public Member Functions

Static Functions
static UClass StaticClass ()
Static Public Member Functions inherited from USaveGame
static UClass StaticClass ()
Static Public Member Functions inherited from UObject
static UClass StaticClass ()

Enhanced Input|User Settings

FEnhancedInputUserSettingsApplied__EnhancedInputUserSettings OnSettingsApplied
const UEnhancedPlayerMappableKeyProfile CurrentKeyProfile
 Get the current key profile that the user has set.
const FGameplayTag CurrentKeyProfileIdentifier
 Gets the currently selected key profile.
FEnhancedInputUserSettingsChanged__EnhancedInputUserSettings OnSettingsChanged
bool RegisterInputMappingContext (const UInputMappingContext IMC)
 Registers this mapping context with the user settings. This will iterate all the key mappings in the context and create an initial Player Mappable Key for every mapping that is marked as mappable.
void AsyncSaveSettings ()
 Asynchronously save the settings to a hardcoded save game slot. This will work for simple games, but if you need to integrate it into an advanced save system you should Serialize this object out with the rest of your save data.
UEnhancedPlayerMappableKeyProfile CreateNewKeyProfile (FPlayerMappableKeyProfileCreationArgs InArgs)
 Creates a new profile with this name and type.
const TSet< FPlayerKeyMapping > & FindMappingsInRow (const FName MappingName) const
 Returns a set of all player key mappings for the given mapping name.
UEnhancedPlayerMappableKeyProfile GetCurrentKeyProfile () const
 Get the current key profile that the user has set.
const FGameplayTag & GetCurrentKeyProfileIdentifier () const
 Gets the currently selected key profile.
UEnhancedPlayerMappableKeyProfile GetKeyProfileWithIdentifier (FGameplayTag ProfileId) const
 Returns the key profile with the given name if one exists. Null if one doesn't exist.
bool IsMappingContextRegistered (const UInputMappingContext IMC) const
 Returns true if this mapping context is currently registered with the settings.
void MapPlayerKey (FMapPlayerKeyArgs InArgs, FGameplayTagContainer &FailureReason)
 Sets the player mapped key on the current key profile.
void ApplySettings ()
 Apply any custom input settings to your user. By default, this will just broadcast the OnSettingsApplied delegate which is a useful hook to maybe rebuild some UI or do other user facing updates.
bool RegisterInputMappingContexts (TSet< UInputMappingContext > MappingContexts)
 Registers multiple mapping contexts with the settings.
void ResetAllPlayerKeysInRow (FMapPlayerKeyArgs InArgs, FGameplayTagContainer &FailureReason)
 Resets each player mapped key to it's default value from the Input Mapping Context that it was registered from. If a key did not come from an IMC (i.e. it was added additionally by the player) then it will be reset to EKeys::Invalid.
void ResetKeyProfileToDefault (FGameplayTag ProfileId, FGameplayTagContainer &FailureReason)
 Resets the given key profile to default key mappings.
void SaveSettings ()
 Synchronously save the settings to a hardcoded save game slot. This will work for simple games, but if you need to integrate it into an advanced save system you should Serialize this object out with the rest of your save data.
bool SetKeyProfile (FGameplayTag InProfileId)
 Changes the currently active key profile to the one with the given name. Returns true if the operation was successful.
void UnMapPlayerKey (FMapPlayerKeyArgs InArgs, FGameplayTagContainer &FailureReason)
 Unmaps a single player mapping that matches the given Mapping name, slot, and hardware device.
bool UnregisterInputMappingContext (const UInputMappingContext IMC)
 Removes this mapping context from the registered mapping contexts.
bool UnregisterInputMappingContexts (TSet< UInputMappingContext > MappingContexts)
 Removes multiple mapping contexts from the registered mapping contexts.

Additional Inherited Members

Public Member Functions inherited from UObject
bool MarkPackageDirty () const
void RemoveFromRoot ()
bool GetIsRooted () const
bool IsTransient () const
bool Modify (bool bAlwaysMarkDirty=true)
void SetTransactional (bool bTransactional)
bool IsSupportedForNetworking () const
UClass GetClass () const
UObject GetOuter () const
UObject GetTypedOuter (TSubclassOf< UObject > Target) const
 Traverses the outer chain searching for the next object of a certain type.
UPackage GetOutermost () const
UPackage GetPackage () const
void AddToRoot ()
UWorld GetWorld () const
FName GetName () const
FString GetFullName (const UObject StopOuter=nullptr) const
FString GetPathName (const UObject StopOuter=nullptr) const
bool IsA (const UClass Class) const
 Returns true if this object is of the specified type, or a child of that type.
void SaveConfig ()
void LoadConfig ()
void ReloadConfig ()
void CopyScriptPropertiesFrom (const UObject OtherObject)
void opCast (?&Address) const
FString ToString () const
Public Attributes inherited from UObject
const UClass Class
const UObject Outer
const UPackage Outermost
const UPackage Package
const UWorld World
const FName Name
const bool IsRooted

Detailed Description

The Enhanced Input User Settings class is a place where you can put all of your Input Related settings that you want your user to be able to change. Things like their key mappings, aim sensitivity, accessibility settings, etc. This also provides a Registration point for Input Mappings Contexts (IMC) from possibly unloaded plugins (i.e. Game Feature Plugins). You can register your IMC from a Game Feature Action plugin here, and then have access to all the key mappings available. This is very useful for building settings screens because you can now access all the mappings in your game, even if the entire plugin isn't loaded yet.

The user settings are stored on each UEnhancedPlayerInput object, so each instance of the settings can represent a single User or Local Player.

To customize this for your game, you can create a subclass of it and change the "UserSettingsClass" in the Enhanced Input Project Settings.

Member Function Documentation

◆ ApplySettings()

void ApplySettings ( )

Apply any custom input settings to your user. By default, this will just broadcast the OnSettingsApplied delegate which is a useful hook to maybe rebuild some UI or do other user facing updates.

◆ AsyncSaveSettings()

void AsyncSaveSettings ( )

Asynchronously save the settings to a hardcoded save game slot. This will work for simple games, but if you need to integrate it into an advanced save system you should Serialize this object out with the rest of your save data.

OnAsyncSaveComplete will be called upon save completion.

◆ CreateNewKeyProfile()

Creates a new profile with this name and type.

◆ FindMappingsInRow()

const TSet< FPlayerKeyMapping > & FindMappingsInRow ( const FName MappingName) const

Returns a set of all player key mappings for the given mapping name.

◆ GetCurrentKeyProfile()

UEnhancedPlayerMappableKeyProfile GetCurrentKeyProfile ( ) const

Get the current key profile that the user has set.

◆ GetCurrentKeyProfileIdentifier()

const FGameplayTag & GetCurrentKeyProfileIdentifier ( ) const

Gets the currently selected key profile.

◆ GetKeyProfileWithIdentifier()

UEnhancedPlayerMappableKeyProfile GetKeyProfileWithIdentifier ( FGameplayTag ProfileId) const

Returns the key profile with the given name if one exists. Null if one doesn't exist.

◆ IsMappingContextRegistered()

bool IsMappingContextRegistered ( const UInputMappingContext IMC) const

Returns true if this mapping context is currently registered with the settings.

◆ MapPlayerKey()

void MapPlayerKey ( FMapPlayerKeyArgs InArgs,
FGameplayTagContainer & FailureReason )

Sets the player mapped key on the current key profile.

◆ RegisterInputMappingContext()

bool RegisterInputMappingContext ( const UInputMappingContext IMC)

Registers this mapping context with the user settings. This will iterate all the key mappings in the context and create an initial Player Mappable Key for every mapping that is marked as mappable.

◆ RegisterInputMappingContexts()

bool RegisterInputMappingContexts ( TSet< UInputMappingContext > MappingContexts)

Registers multiple mapping contexts with the settings.

◆ ResetAllPlayerKeysInRow()

void ResetAllPlayerKeysInRow ( FMapPlayerKeyArgs InArgs,
FGameplayTagContainer & FailureReason )

Resets each player mapped key to it's default value from the Input Mapping Context that it was registered from. If a key did not come from an IMC (i.e. it was added additionally by the player) then it will be reset to EKeys::Invalid.

Parameters
InArgsArguments that contain the mapping name and profile ID to find the mapping to reset.
FailureReasonPopulated with failure reasons if the operation fails.

◆ ResetKeyProfileToDefault()

void ResetKeyProfileToDefault ( FGameplayTag ProfileId,
FGameplayTagContainer & FailureReason )

Resets the given key profile to default key mappings.

Parameters
ProfileIdThe ID of the key profile to reset
FailureReasonPopulated with failure reasons if the operation fails.

◆ SaveSettings()

void SaveSettings ( )

Synchronously save the settings to a hardcoded save game slot. This will work for simple games, but if you need to integrate it into an advanced save system you should Serialize this object out with the rest of your save data.

◆ SetKeyProfile()

bool SetKeyProfile ( FGameplayTag InProfileId)

Changes the currently active key profile to the one with the given name. Returns true if the operation was successful.

◆ StaticClass()

UClass StaticClass ( )
static

◆ UnMapPlayerKey()

void UnMapPlayerKey ( FMapPlayerKeyArgs InArgs,
FGameplayTagContainer & FailureReason )

Unmaps a single player mapping that matches the given Mapping name, slot, and hardware device.

◆ UnregisterInputMappingContext()

bool UnregisterInputMappingContext ( const UInputMappingContext IMC)

Removes this mapping context from the registered mapping contexts.

◆ UnregisterInputMappingContexts()

bool UnregisterInputMappingContexts ( TSet< UInputMappingContext > MappingContexts)

Removes multiple mapping contexts from the registered mapping contexts.

Member Data Documentation

◆ CurrentKeyProfile

const UEnhancedPlayerMappableKeyProfile CurrentKeyProfile

Get the current key profile that the user has set.

◆ CurrentKeyProfileIdentifier

const FGameplayTag CurrentKeyProfileIdentifier

Gets the currently selected key profile.

◆ OnSettingsApplied

◆ OnSettingsChanged