I love the smell of UnrealEd crashing in the morning. – tarquin

Difference between revisions of "UE3:GameUISceneClient (UDK)"

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
(Talk)
 
(Talk)
Line 48: Line 48:
  
 
Holds a list of all available animations for an object
 
Holds a list of all available animations for an object
 +
 +
====AxisInputKeys====
 +
'''Type:''' [[array]]<[[name]]>
 +
 +
'''[[Variables#Modifiers|Modifiers]]:''' const, transient
 +
 +
The list of axis input keys to check input support for
  
 
====bCaptureUnprocessedInput====
 
====bCaptureUnprocessedInput====
Line 286: Line 293:
  
 
The class to use for displaying message boxes.
 
The class to use for displaying message boxes.
 +
 +
====NavAliases====
 +
'''Type:''' [[array]]<[[name]]>
 +
 +
'''[[Variables#Modifiers|Modifiers]]:''' const, transient
 +
 +
The list of navigation aliases to check input support for
  
 
====OverlaySceneAlphaModulation====
 
====OverlaySceneAlphaModulation====
Line 302: Line 316:
 
{{code|native static final function {{tl|ENetMode|WorldInfo}}&nbsp;'''GetCurrentNetMode''' ()}}
 
{{code|native static final function {{tl|ENetMode|WorldInfo}}&nbsp;'''GetCurrentNetMode''' ()}}
  
<!-- enter function description -->
+
'''Returns:'''
 +
:the current netmode, or NM_MAX if there is no valid world
  
 
===Other static functions===
 
===Other static functions===

Revision as of 05:24, 17 January 2010

UDK Object >> UIRoot >> UISceneClient >> GameUISceneClient

Contents

Package: 
Engine
Within class: 
UIInteraction
Direct subclass:
UTGameUISceneClient
This class in other games:
UT3

UISceneClient used when playing a game.

Properties

Property group 'ZDebug'

bBlockSceneUpdates

Type: bool

Modifiers: transient

while this is TRUE, scenes will not perform updates

bBlockUpdatesAfterStackModification

Type: bool

Modifiers: transient

indicates that bDebugResolveScene should be set to TRUE when the next scene is opened

bDebugResolveScene

Type: bool

Modifiers: transient

toggles single-step mode, where only a single scene update is performed when a key is pressed

Internal variables

ActiveScenes

Type: array<UIScene>

Modifiers: const, transient, protected

the list of scenes currently open. A scene corresponds to a top-level UI construct, such as a menu or HUD There is always at least one scene in the stack - the transient scene. The transient scene is used as the container for all widgets created by unrealscript and is always rendered last.

AnimSequencePool

Type: array<UIAnimationSeq>

Modifiers: transient

Holds a list of all available animations for an object

AxisInputKeys

Type: array<name>

Modifiers: const, transient

The list of axis input keys to check input support for

bCaptureUnprocessedInput

Type: bool

Modifiers: const, config

Controls whether the UI system should prevent the game from recieving input whenever it's active. For games with interactive menus that remain on-screen during gameplay, you'll want to change this value to FALSE.

Default value: True

bDisplayFullPaths

Type: bool

Modifiers: globalconfig


Default value: True

bEnableDebugInput

Type: bool

Modifiers: config

Controls whether debug input commands are accepted

Default value: True

bInteractiveMode

Type: bool

Modifiers: globalconfig


bKillRestoreMenuProgression

Type: bool

Modifiers: transient

Will halt the restoring of the menu progression

bRenderActiveControlInfo

Type: bool

Modifiers: globalconfig

Controls whether debug information is rendered about the active control

Default value: True

bRenderCursor

Type: bool

Modifiers: const, transient

Determines whether the cursor should be rendered. Set by UpdateMouseCursor()

bRenderDebugInfo

Type: bool

Modifiers: config

Controls whether debug information about the scene is rendered

bRenderDebugInfoAtTop

Type: bool

Modifiers: globalconfig

Controls whether debug information is rendered at the top or bottom of the screen

Default value: True

bRenderFocusedControlInfo

Type: bool

Modifiers: globalconfig

Controls whether debug information is rendered about the currently focused control

Default value: True

bRenderTargetControlInfo

Type: bool

Modifiers: globalconfig

Controls whether debug information is rendered about the targeted control

Default value: True

bRestrictActiveControlToFocusedScene

Type: bool

Modifiers: config

Controls whether a widget can become the scene client's ActiveControl if it isn't in the top-most/focused scene. False allows widgets in background scenes to become the active control.

Default value: True

bSelectVisibleTargetsOnly

Type: bool

Modifiers: globalconfig

Controls whether a widget must be visible to become the debug target

Default value: True

bShowCurrentState

Type: bool

Modifiers: globalconfig


Default value: True

bShowMousePos

Type: bool

Modifiers: globalconfig


Default value: True

bShowRenderBounds

Type: bool

Modifiers: globalconfig


Default value: True

bShowWidgetPath

Type: bool

Modifiers: globalconfig


Default value: True

bSynchronizePlayers

Type: bool

Modifiers: const, config

Controls whether players are automatically created and removed to match the number of players that are signed into a profile.

bUpdateCursorRenderStatus

Type: bool

Modifiers: const, transient

Indicates that the input processing status of the UI has potentially changed; causes UpdateCursorRenderStatus to be called in the next Tick().

bUpdateInputProcessingStatus

Type: bool

Modifiers: const, transient

Indicates that the input processing status of the UI has potentially changed; causes UpdateInputProcessingStatus to be called in the next Tick().

bUpdateSceneViewportSizes

Type: bool

Modifiers: transient

Indicates that the viewport size being used by one or more scenes is out of date; triggers a call to NotifyViewportResized during the next tick.

CurrentMouseCursor

Type: UITexture

Modifiers: const, transient

The mouse cursor that is currently being used. Updated by scenes & widgets as they change states by calling ChangeMouseCursor.

DebugTarget

Type: UIScreenObject

Modifiers: const, transient

For debugging - the widget that is currently being watched.

DefaultUITexture

Type: Texture

Array size: EUIDefaultPenColor

Modifiers: const, transient

Textures for general use by the UI

DoubleClickStartPosition

Type: Object.IntPoint

Modifiers: const, transient

The location of the mouse the last time a key press was received. Used to determine when to simulate a double-click event.

DoubleClickStartTime

Type: Object.double

Modifiers: const, transient

The time (in seconds) that the last "key down" event was recieved from a key that can trigger double-click events

InitialPressedKeys

Type: Object.Map_Mirror{TMap<INT,TArray<FName> >}

Modifiers: const, transient, native

map of controllerID to list of keys which were pressed when the UI began processing input used to ignore the initial "release" key event from keys which were already pressed when the UI began processing input.

LatestDeltaTime

Type: float

Modifiers: const, transient

Cached DeltaTime value from the last Tick() call

MessageBoxClass

Type: class<UIMessageBoxBase>

Modifiers: transient

The class to use for displaying message boxes.

NavAliases

Type: array<name>

Modifiers: const, transient

The list of navigation aliases to check input support for

OverlaySceneAlphaModulation

Type: float

Modifiers: config

A multiplier value (between 0.0 and 1.f) used for adjusting the transparency of scenes rendered behind scenes which have bRenderParentScenes set to TRUE. The final alpha used for rendering background scenes is cumulative.

Default value: 0.45

Functions

Static native functions

GetCurrentNetMode

native static final function WorldInfo.ENetMode GetCurrentNetMode ()

Returns:

the current netmode, or NM_MAX if there is no valid world

Other static functions

ClearUIMessageScene

static final function bool ClearUIMessageScene (name SceneTag, optional LocalPlayer ScenePlayerOwner, optional bool bCloseChildScenes)

Closes a message box opened with ShowUIMessage.

Parameters:

  • SceneTag - the name of the scene to close; should be the same value passed for SceneTag to ShowUIMessage
  • ScenePlayerOwner - the player associated with the message box
  • bCloseChildScenes - specify TRUE to close any scenes which were opened after the message box.

Returns:

TRUE if the scene was successfully closed.

CreateUIMessageBox

static function UIMessageBoxBase CreateUIMessageBox (name SceneTag, optional class<UIMessageBoxBaseCustomMessageBoxClass, optional UIMessageBoxBase SceneTemplate)

Utility function for creating an instance of a message box. The scene must still be activated by calling OpenScene.

Parameters:

  • SceneTag - the name to use for the message box scene. useful for e.g. preventing multiple copies of the same message from appearing.
  • CustomMessageBoxClass - allows callers to override the default message box class for custom message types.
  • SceneTemplate - optional scene resource to use as the template for the new message box instance.

Returns:

an instance of the message box class specified.

ShowUIMessage

static function bool ShowUIMessage (name SceneTag, string Title, string Message, string Question, array<nameButtonAliases, delegate<UIMessageBoxBase.OnOptionSelectedSelectionCallback, optional LocalPlayer ScenePlayerOwner, optional out UIMessageBoxBase out_CreatedScene, optional byte ForcedPriority)

Displays a message box using the default message box class.

Parameters:

  • SceneTag - the name to use for the message box scene. useful for e.g. preventing multiple copies of the same message from appearing.
  • Title - the string or datastore markup to use as the message box title
  • Message - the string or datastore markup to use for the message box text
  • Question - the string or datastore markup to use for the question text
  • ButtonAliases - the list of aliases to use in the message box's button bar; this determines which options are available as well as which input keys the message box responds to. Aliases must be registered in the Engine.UIDataStore_InputAlias section of the input .ini file.
  • SelectionCallback - the function to call when the user selects an option
  • ScenePlayerOwner - the player to associate the message box with. only this player will be able to dismiss the message box.
  • out_CreatedScene - allows the caller to receive a reference to the scene that was opened.
  • ForcedPriority - allows the player to override the message box class's default scene priority

Returns:

TRUE if the message box was successfully shown.

Iterator functions

AllActiveScenes

native final iterator function AllActiveScenes (class<UISceneSceneClass, out UIScene OutScene, optional bool bIterateBackwards, optional int StartingIndex, optional int SceneFilterMask)

Iterates over all scenes in the active scenes array.

Parameters:

  • SceneClass - only scenes derived from this class will be returned.
  • OutScene - receives the value of each scene in the ActiveScenes array which meets the criteria of the input parameters.
  • bIterateBackwards - indicates that the scenes should be returned in reverse order.
  • StartingIndex - allows callers to specify a specific location into the ActiveScenes array to start the iteration.
  • SceneFilterMask - allows callers to control the types of scenes allowed. The value should be a bitmask of the SCENEFILTER_ const values defined in UISceneClient.

Exec functions

ShowDockingStacks

exec function ShowDockingStacks ()


ShowMenuProgression

exec function ShowMenuProgression ()


ShowMenuStates

exec function ShowMenuStates ()


ShowRenderBounds

exec function ShowRenderBounds ()


ToggleDebugInput

exec function ToggleDebugInput (optional bool bEnable)


Native functions

CanUnpauseInternalUI

native final function bool CanUnpauseInternalUI ()

Callback which allows the UI to prevent unpausing if scenes which require pausing are still active.

See: PlayerController.SetPause

CreateScene

native final noexport function coerce UIScene CreateScene (class<UISceneSceneClass, optional name SceneTag, optional UIScene SceneTemplate)

Creates an instance of the scene class specified. Used to create scenes from unrealscript. Does not initialize the scene - you must call OpenScene, passing in the result of this function as the scene to be opened.

Parameters:

  • SceneClass - the scene class to open
  • SceneTag - if specified, the scene will be given this tag when created
  • SceneTemplate - if specified, will be used as the template for the newly created scene if it is a subclass of SceneClass

Returns:

a UIScene instance of the class specified

CreateTransientWidget

native final function coerce UIObject CreateTransientWidget (class<UIObjectWidgetClass, name WidgetTag, optional UIObject Owner)

Create a temporary widget for presenting data from unrealscript

Parameters:

  • WidgetClass - the widget class to create
  • WidgetTag - the tag to assign to the widget.
  • Owner - the UIObject that should contain the widget

Returns:

a pointer to a fully initialized widget of the class specified, contained within the transient scene

Todo: add support for metacasting using a property flag (i.e. like spawn auto-casts the result to the appropriate type)

FindSceneByTag

native final function UIScene FindSceneByTag (name SceneTag, optional LocalPlayer SceneOwner) const

Searches through the ActiveScenes array for a UIScene with the tag specified

Parameters:

  • SceneTag - the name of the scene to locate
  • SceneOwner - if specified, only scenes that have the specified SceneOwner will be considered.

Returns:

pointer to the UIScene that has a SceneName matching SceneTag, or NULL if no scenes in the ActiveScenes stack have that name

FindSceneIndex

native final function int FindSceneIndex (const UIScene SceneToFind) const

Searches through the ActiveScenes array for a UIScene with the tag specified

Parameters:

  • SceneToFind - the scene to locate

Returns:

index [into the ActiveScenes array] for the scene specified, or INDEX_NONE if it isn't found.

FindSceneIndexByTag

native final function int FindSceneIndexByTag (name SceneTag, optional LocalPlayer SceneOwner) const

Searches through the ActiveScenes array for a UIScene with the tag specified

Parameters:

  • SceneTag - the name of the scene to locate

Returns:

index [into the ActiveScenes array] for the scene specified, or INDEX_NONE if it isn't found.

FindUIAnimation

native final function UIAnimationSeq FindUIAnimation (name NameOfSequence) const

Attempt to find an animation in the AnimSequencePool.

Parameters:

  • SequenceName - The sequence to find

Returns:

the sequence if it was found otherwise returns none

GetActiveScene

native final function UIScene GetActiveScene (optional LocalPlayer MatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Wrapper for getting a reference to the currently active scene.

Parameters:

  • MatchingPlayerOwner - if specified, the top-most scene with this player as its PlayerOwner will be returned.
  • bIgnoreUnfocusedScenes - specify TRUE to only return the top-most scenes that can accept focus.

Returns:

a reference to the top-most scene in the scene stack which meets the conditions of the input parameters.

GetActiveSceneCount

native final function int GetActiveSceneCount (optional LocalPlayer MatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting the number of currently active scenes.

Parameters:

  • MatchingPlayerOwner - if specified, only scenes with this PlayerOwner will be counted.
  • bIgnoreUnfocusedScenes - specify TRUE to skip scenes which cannot accept focus (i.e. bNeverFocus = true)

Returns:

the number of active scenes which meet the criteria specified by the input parameters.

GetNextScene

native final function UIScene GetNextScene (const UIScene SourceScene, optional bool bRequireMatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting a reference to a scene's "child" scene.

Parameters:

  • SourceScene - the scene to find a child scene for
  • bRequireMatchingPlayerOwner - indicates whether the returned scene must be a scene opened by the same player as SourceScene.
  • bIgnoreUnfocusedScenes - indicates that scenes which cannot accept focus should be skipped.

Returns:

a reference to the next scene above SourceScene in the ActiveScenes array which meets the criteria specified by the input parameters, or None if there isn't one.

GetNextSceneFromIndex

native final function UIScene GetNextSceneFromIndex (int StartingSceneIndex, optional LocalPlayer MatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting a reference to a scene's "child" scene.

Parameters:

  • StartingSceneIndex - the scene to find a child scene for
  • MatchingPlayerOwner - if specified, only scenes owned by this player will be considered.
  • bIgnoreUnfocusedScenes - indicates that scenes which cannot accept focus should be skipped.

Returns:

a reference to the next scene above the source scene in the ActiveScenes array which meets the criteria specified by the input parameters, or None if there isn't one.

GetPreviousInputProcessingScene

native final function UIScene GetPreviousInputProcessingScene (const UIScene SourceScene, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting a reference to the first parent scene of SourceScene, that can process input for SourceScene's PlayerOwner.

Parameters:

  • SourceScene - the scene to find a parent scene for
  • bIgnoreUnfocusedScenes - indicates that scenes which cannot accept focus should be skipped.

Returns:

a reference to the next scene below SourceScene in the ActiveScenes array which meets the criteria specified by the input parameters, or None if there isn't one.

GetPreviousScene

native final function UIScene GetPreviousScene (const UIScene SourceScene, optional bool bRequireMatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting a reference to a scene's "parent" scene.

Parameters:

  • SourceScene - the scene to find a parent scene for
  • bRequireMatchingPlayerOwner - indicates whether the returned scene must be a scene opened by the same player as SourceScene.
  • bIgnoreUnfocusedScenes - indicates that scenes which cannot accept focus should be skipped.

Returns:

a reference to the next scene below SourceScene in the ActiveScenes array which meets the criteria specified by the input parameters, or None if there isn't one.

GetPreviousSceneFromIndex

native final function UIScene GetPreviousSceneFromIndex (int StartingSceneIndex, optional LocalPlayer MatchingPlayerOwner, optional bool bIgnoreUnfocusedScenes) const

Accessor for getting a reference to a scene's "parent" scene based on the scene's index in the ActiveScenes array.

Parameters:

  • StartingSceneIndex - the index into the ActiveScenes array of the scene to find a parent scene for
  • MatchingPlayerOwner - if specified, only scenes owned by this player will be considered.
  • bIgnoreUnfocusedScenes - indicates that scenes which cannot accept focus should be skipped.

Returns:

a reference to the next scene below the source scene in the ActiveScenes array which meets the criteria specified by the input parameters, or None if there isn't one.

GetSceneAtIndex

native final function UIScene GetSceneAtIndex (int SceneIndex) const

Accessor for getting a reference to a scene at a given index

Parameters:

  • SceneIndex - should be an index into the ActiveScenes array for the scene to get a reference to.

Returns:

the scene instance at the specified location in the ActiveScenes array, or None or the index was invalid.

GetTransientScene

native final function UIScene GetTransientScene () const

Get a reference to the transient scene, which is used to contain transient widgets that are created by unrealscript

Returns:

pointer to the UIScene that owns transient widgets

RequestCursorRenderUpdate

native final function RequestCursorRenderUpdate ()

Triggers a call to UpdateCursorRenderStatus on the next Tick().

RequestInputProcessingUpdate

native final function RequestInputProcessingUpdate ()

Triggers a call to UpdateInputProcessingStatus on the next Tick().

SetActiveControl

native function bool SetActiveControl (UIObject NewActiveControl)

Changes this scene client's ActiveControl to the specified value, which might be NULL. If there is already an ActiveControl

Parameters:

  • NewActiveControl - the widget that should become to ActiveControl, or NULL to clear the ActiveControl.

Returns:

TRUE if the ActiveControl was updated successfully.

Events

CanShowToolTips

event bool CanShowToolTips ()

Returns whether widget tooltips should be displayed.

InitializeSceneClient

event InitializeSceneClient ()

Overrides: UISceneClient.InitializeSceneClient

Called when the scene client is first initialized.

PauseGame

event PauseGame (bool bDesiredPauseState, optional int PlayerIndex)

Wrapper for pausing the game.

Parameters:

  • bDesiredPauseState - TRUE indicates that the game should be paused.
  • PlayerIndex - the index [into Engine GamePlayers array] for the player that should be used for pausing the game; can affect whether the game is actually paused or not (i.e. if the player is an admin in a multi-player match, for example).

SynchronizePlayers

event SynchronizePlayers (optional int MaxPlayersAllowed, optional bool bAllowJoins, optional bool bAllowRemoval)

Synchronizes the number of local players to the number of signed-in controllers. Games should override this method if more complex logic is desired (for example, if inactive gamepads [gamepads that are signed in but not associated with a player] are allowed).

Parameters:

  • MaxPlayersAllowed - specifies the total maximum number of players that can be created; once this limit is reached, no more players will be created. Should be set to the maximum number of split-screen players supported by the game.
  • bAllowJoins - controls whether creating new player is allowed; if true, a player will be created for any gamepad that is signed into a profile and not already associated with a player (up to MaxPlayersAllowed)
  • bAllowRemoval - controls whether removing players is allowed; if true, any existing players that are not signed into a profile will be removed.

Note: if both bAllowJoins and bAllowRemoval are FALSE, only effect will be removal of extra players (i.e. player count higher than MaxPlayersAllowed)

Other instance functions

ClearMenuProgression

function ClearMenuProgression ()

Clears out any existing stored menu progression values.

IsAllowedToModifyPlayerCount

function bool IsAllowedToModifyPlayerCount ()

Accessor for controlling whether the scene client is allowed to add or remove players.

NotifyClientTravel

function NotifyClientTravel (PlayerController TravellingPlayer, string TravelURL, Actor.ETravelType TravelType, bool bIsSeamlessTravel)

Called when the local player is about to travel to a new URL. This callback should be used to perform any preparation tasks, such as updating status text and such. All cleanup should be done from NotifyGameSessionEnded, as that function will be called in some cases where NotifyClientTravel is not.

Parameters:

  • TravellingPlayer - the player that received the call to ClientTravel
  • TravelURL - a string containing the mapname (or IP address) to travel to, along with option key/value pairs
  • TravelType - indicates whether the player will clear previously added URL options or not.
  • bIsSeamlessTravel - indicates whether seamless travelling will be used.

NotifyControllerChanged

function NotifyControllerChanged (int ControllerId, bool bConnected)

Called when a gamepad (or other controller) is inserted or removed)

Parameters:

  • ControllerId - the id of the gamepad that was added/removed.
  • bConnected - indicates the new status of the gamepad.

NotifyGameSessionEnded

function NotifyGameSessionEnded ()

Called when the current map is being unloaded. Cleans up any references which would prevent garbage collection.

NotifyLinkStatusChanged

function NotifyLinkStatusChanged (bool bConnected)

Called when the status of the platform's network connection changes.

NotifyOnlineServiceStatusChanged

function NotifyOnlineServiceStatusChanged (OnlineSubsystem.EOnlineServerConnectionStatus NewConnectionStatus)

Called when a system level connection change notification occurs.

Parameters:

  • ConnectionStatus - the new connection status.

NotifyPlayerAdded

function NotifyPlayerAdded (int PlayerIndex, LocalPlayer AddedPlayer)

Called when a new player has been added to the list of active players (i.e. split-screen join)

Parameters:

  • PlayerIndex - the index [into the GamePlayers array] where the player was inserted
  • AddedPlayer - the player that was added

NotifyPlayerRemoved

function NotifyPlayerRemoved (int PlayerIndex, LocalPlayer RemovedPlayer)

Called when a player has been removed from the list of active players (i.e. split-screen players)

Parameters:

  • PlayerIndex - the index [into the GamePlayers array] where the player was located
  • RemovedPlayer - the player that was removed

NotifyStorageDeviceChanged

function NotifyStorageDeviceChanged ()

Called when a storage device is inserted or removed.

OnLoginChange

function OnLoginChange (byte ControllerId)


RestoreMenuProgression

function RestoreMenuProgression (optional UIScene BaseScene)

Re-opens the scenes which were saved off to the Registry data store. Should be called from your game's main front-end menu.

Parameters:

  • BaseScene - the scene to use as the starting point for restoring scenes; if not specified, uses the currently active scene.

SaveMenuProgression

function SaveMenuProgression ()

Stores the list of currently active scenes which are restorable to the Registry data store for retrieval when returning back to the front end menus.