Adventure Creator  1.79.1
An adventure game toolkit for Unity, by Chris Burton, ICEBOX Studios 2013-2022
AC.PlayerInput Class Reference
Inheritance diagram for AC.PlayerInput:

Public Member Functions

delegate bool InputButtonDelegate (string buttonName)
 
delegate float InputAxisDelegate (string axisName)
 
delegate Vector2 InputMouseDelegate (bool cusorIsLocked=false)
 
delegate bool InputMouseButtonDelegate (int button)
 
delegate Vector2 InputTouchDelegate (int index)
 
delegate TouchPhase InputTouchPhaseDelegate (int index)
 
delegate int _InputTouchCountDelegate ()
 
delegate DragState _InputGetDragStateDelegate (DragState currentDragState)
 
void OnInitGameEngine ()
 
void UpdateInput ()
 
void ClearFreeAimInput ()
 
bool CanDirectControlPlayer ()
 Checks if the Player can be directly-controlled during gameplay. More...
 
bool ClickedRecently (bool checkForDouble=false)
 Checks if the player clicked within the last few frames. This is useful when checking for input in Actions, because Actions do not run every frame. More...
 
Vector2 GetMousePosition ()
 Gets the cursor's position in screen space. More...
 
Vector2 GetInvertedMouse ()
 Gets the y-inverted cursor position. This is useful because Menu Rects are drawn upwards, while screen space is measured downwards. More...
 
void SetSimulatedCursorPosition (Vector2 newPosition)
 Sets the position of the simulated cursor, which is used when the game's Input method is set to Keyboard Or Controller More...
 
void InitialiseCursorLock (MovementMethod movementMethod)
 Initialises the cursor lock based on a given movement method. More...
 
bool IsCursorReadable ()
 Checks if the cursor's position can be read. This is only ever False if the cursor cannot be dragged on a touch-screen. More...
 
void DetectConversationNumerics ()
 
void DetectConversationInputs ()
 
void DrawDragLine ()
 
void UpdateDirectInput (bool isInGameplay)
 
void BeginCameraLockSnap ()
 
bool IsCameraLockSnapped ()
 
void RemoveActiveArrows ()
 
void ResetClick ()
 
bool CanClick ()
 Checks if a mouse click will be registered. More...
 
bool CanDoubleClick ()
 Checks if a mouse double-click will be registered. More...
 
void SimulateInputButton (string button)
 Simulates the pressing of an Input button. More...
 
void SimulateInputAxis (string axis, float value)
 Simulates the pressing of an Input axis. More...
 
void SimulateInput (SimulateInputType input, string axis, float value)
 Simulates the pressing of an Input button or axis. More...
 
bool IsCursorLocked ()
 Checks if the cursor is locked. More...
 
bool InputAnyKey ()
 Checks if any input button is currently being pressed, simulated or otherwise. More...
 
float InputGetAxis (string axis)
 Replaces "Input.GetAxis", allowing for custom overrides. More...
 
TouchPhase InputTouchPhase (int index)
 
int InputTouchCount ()
 
bool InputGetButton (string axis)
 Replaces "Input.GetButton", allowing for custom overrides. More...
 
bool InputGetButtonDown (string axis, bool showError=false)
 Replaces "Input.GetButton", allowing for custom overrides. More...
 
bool InputGetButtonUp (string axis)
 Replaces "Input.GetButtonUp". More...
 
void EnforcePreInventoryDragState ()
 
void _FixedUpdate ()
 
void LetGo ()
 
HeldObjectData GetHeldObjectData (DragBase dragBase)
 Gets the data related to the holding of a draggable object More...
 
HeldObjectData[] GetHeldObjectData ()
 
Vector2 GetDragVector ()
 Gets the drag vector. More...
 
bool ActiveArrowsDisablingHotspots ()
 Checks if the active ArrowPrompt prevents Hotspots from being interactive. More...
 
void SetInGameCursorState (bool lockState)
 Sets the lock state of the in-game cursor manually. When locked, the cursor will be placed in the centre of the screen during gameplay. More...
 
bool GetInGameCursorState ()
 Gets the locked state of the cursor during gameplay (i.e. when the game is not paused). More...
 
bool IsDragObjectHeld (DragBase _dragBase)
 Checks if a specific DragBase object is being held by the player. More...
 
bool IsDragObjectHeld ()
 Checks if any DragBase object is being held by the player. More...
 
float GetDragMovementSlowDown ()
 Gets the factor by which Player movement is slowed when holding a DragBase object. More...
 
void SetTimeScale (float _timeScale, bool affectFixedDeltaTime)
 Sets the timeScale. More...
 
void SetTimeCurve (AnimationCurve _timeCurve, bool _timeCurveAffectsFixedDeltaTime=false)
 Assigns an AnimationCurve that controls the timeScale over time. More...
 
bool HasTimeCurve ()
 Checks if time is being controlled by an AnimationCurve. More...
 
DragState GetDragState ()
 Get what kind of object is currently being dragged (None, Player, Inventory, Menu, ScreenArrows, Moveable, _Camera). More...
 
MouseState GetMouseState (bool forScene=true)
 Gets the current state of the mouse buttons (Normal, SingleClick, RightClick, DoubleClick, HeldDown, LetGo). More...
 
void ResetMouseClick ()
 
Vector2 GetMoveKeys ()
 Gets the input movement as a vector More...
 
bool IsPlayerControlledRunning ()
 Checks if the Player is running due to user-controlled input. More...
 
void SetActiveDragElement (MenuDrag menuDrag)
 Assigns a MenuDrag element as the one to drag. More...
 
bool LastClickWasDouble ()
 Checks if the last mouse click made was a double-click. More...
 
void ResetDragMovement ()
 
bool IsDragMoveSpeedOverWalkThreshold ()
 Checks if the magnitude of "Drag" Player input is above the minimum needed to move the Player. More...
 
bool IsMouseOnScreen ()
 Checks if the cursor's position is within the boundary of the screen. More...
 
Vector2 GetFreeAim ()
 Gets the free-aim input vector. More...
 
void OnLoad ()
 
MainData SaveMainData (MainData mainData)
 Updates a MainData class with its own variables that need saving. More...
 
void LoadMainData (MainData mainData)
 Updates its own variables from a MainData class. More...
 
virtual void InputControlMenu (Menu menu)
 Controls an OnGUI-based Menu with keyboard or Controller inputs. More...
 
IEnumerator DelayConversation (Conversation conversation, System.Action callback)
 
void EndConversation ()
 
void DrawStatus ()
 
bool IsInConversation (bool alsoPendingOption=false)
 Checks if a Conversation is currently active More...
 
void OverrideLockedCursorPosition (Vector2 position)
 Enforces a custom position (in screen coordinates) to apply to the cursor when it is locked More...
 
void ReleaseLockedCursorPositionOverride ()
 
Vector3 GetDragForce (DragBase dragBase)
 

Public Attributes

float directMovementResponsiveness = 50f
 
float timeScale = 1f
 
bool canKeyboardControlMenusDuringGameplay = false
 
string skipMovieKey = ""
 
float clickDelay = 0.3f
 
float doubleClickDelay = 1f
 
string dragOverrideInput = ""
 
float directMenuThreshold = 0.05f
 
ForceGameplayCursor forceGameplayCursor = ForceGameplayCursor.None
 
Conversation activeConversation = null
 
ArrowPrompt activeArrows = null
 
Container activeContainer = null
 
InputButtonDelegate InputGetButtonDownDelegate = null
 
InputButtonDelegate InputGetButtonUpDelegate = null
 
InputButtonDelegate InputGetButtonDelegate = null
 
InputAxisDelegate InputGetAxisDelegate = null
 
InputMouseButtonDelegate InputGetMouseButtonDelegate
 
InputMouseButtonDelegate InputGetMouseButtonDownDelegate
 
InputMouseDelegate InputMousePositionDelegate
 
InputTouchDelegate InputTouchPositionDelegate
 
InputTouchDelegate InputTouchDeltaPositionDelegate
 
InputTouchPhaseDelegate InputGetTouchPhaseDelegate
 
InputMouseDelegate InputGetFreeAimDelegate
 
_InputTouchCountDelegate InputTouchCountDelegate
 
_InputGetDragStateDelegate InputGetDragStateDelegate
 

Protected Member Functions

void SetDoubleClickState ()
 
void UpdateActiveInputs ()
 
void DetectCursorInputs ()
 
void UpdateDragLine ()
 
Vector2 CreateMoveKeys (float h, float v)
 
virtual void FlashHotspots ()
 
void ResetDoubleClick ()
 
void StopSimulatingInput ()
 
float InputGetAxisRaw (string axis)
 
bool InputGetMouseButton (int button)
 
Vector2 InputMousePosition (bool _cursorIsLocked)
 
Vector2 InputTouchPosition (int index)
 
Vector2 InputTouchDeltaPosition (int index)
 
Vector2 InputGetFreeAim (bool _cursorIsLocked, float scaleFactor=1f)
 
bool InputGetMouseButtonDown (int button)
 
void SetDragState (bool twoTouches=false)
 
void UpdateDrag ()
 
void AttemptGrab ()
 
void OnGrabMoveable (DragBase dragBase)
 
void OnDropMoveable (DragBase dragBase)
 
void ToggleCursor ()
 
float GetDeltaTime ()
 
virtual Vector2 GetSmoothFreeAim (Vector2 targetFreeAim)
 

Protected Attributes

float changeTimeStart
 
MouseState mouseState = MouseState.Normal
 
DragState dragState = DragState.None
 
Vector2 moveKeys = new Vector2 (0f, 0f)
 
bool playerIsControlledRunning = false
 
float defaultFixedDeltaTime
 
AnimationCurve timeCurve
 
bool timeCurveAffectsFixedDeltaTime
 
float clickTime = 0f
 
float doubleClickTime = 0
 
MenuDrag activeDragElement
 
bool hasUnclickedSinceClick = false
 
bool lastClickWasDouble = false
 
float lastclickTime = 0f
 
string menuButtonInput
 
float menuButtonValue
 
SimulateInputType menuInput
 
Vector2 xboxCursor
 
Vector2 mousePosition
 
bool scrollingLocked = false
 
bool canCycleInteractionInput = true
 
Vector2 dragStartPosition = Vector2.zero
 
Vector2 dragEndPosition = Vector2.zero
 
float dragSpeed = 0f
 
Vector2 dragVector
 
float touchTime = 0f
 
float touchThreshold = 0.2f
 
Vector2 freeAim
 
bool toggleCursorOn = false
 
bool cursorIsLocked = false
 
bool canDragMoveable = false
 
List< HeldObjectDataheldObjectDatas = new List<HeldObjectData>()
 
bool pickUpIsHeld
 
bool draggableIsHeld
 
Vector2 lastMousePosition
 
bool resetMouseDelta = false
 
Vector3 lastCameraPosition
 
Vector2 deltaDragMouse
 
Conversation pendingOptionConversation = null
 
bool mouseIsOnScreen = true
 
LerpUtils.Vector2Lerp freeAimLerp = new LerpUtils.Vector2Lerp ()
 

Properties

Conversation PendingOptionConversation [get, set]
 
virtual Vector2 LockedCursorPosition [get]
 
bool CanKeyboardControlMenusDuringGameplay [get, set]
 

Detailed Description

This script recieves and processes all input, for use by other scripts. It should be placed on the GameEngine prefab.

Member Function Documentation

◆ _InputGetDragStateDelegate()

delegate DragState AC.PlayerInput._InputGetDragStateDelegate ( DragState  currentDragState)

A delegate template for overriding the drag state calculation

◆ _InputTouchCountDelegate()

delegate int AC.PlayerInput._InputTouchCountDelegate ( )

A delegate template for overriding touch count

◆ ActiveArrowsDisablingHotspots()

bool AC.PlayerInput.ActiveArrowsDisablingHotspots ( )

Checks if the active ArrowPrompt prevents Hotspots from being interactive.

Returns
True if the active ArrowPrompt prevents Hotspots from being interactive

◆ CanClick()

bool AC.PlayerInput.CanClick ( )

Checks if a mouse click will be registered.

Returns
True if a mouse click will be registered

◆ CanDirectControlPlayer()

bool AC.PlayerInput.CanDirectControlPlayer ( )

Checks if the Player can be directly-controlled during gameplay.

Returns
True if the Player can be directly-controlled during gameplay.

◆ CanDoubleClick()

bool AC.PlayerInput.CanDoubleClick ( )

Checks if a mouse double-click will be registered.

Returns
True if a mouse double-click will be registered

◆ ClearFreeAimInput()

void AC.PlayerInput.ClearFreeAimInput ( )

Resets the free-aim input instantly

◆ ClickedRecently()

bool AC.PlayerInput.ClickedRecently ( bool  checkForDouble = false)

Checks if the player clicked within the last few frames. This is useful when checking for input in Actions, because Actions do not run every frame.

Parameters
checkForDoubleIf True, then the check will be made for a double-click, rather than a single-click.
Returns
True if the player recently clicked.

◆ DetectConversationInputs()

void AC.PlayerInput.DetectConversationInputs ( )

Detects the pressing of the defined input buttons if they can be used to trigger a Conversation's dialogue options.

◆ DetectConversationNumerics()

void AC.PlayerInput.DetectConversationNumerics ( )

Detects the pressing of the numeric keys if they can be used to trigger a Conversation's dialogue options.

◆ DrawDragLine()

void AC.PlayerInput.DrawDragLine ( )

Draws a drag-line on screen if the chosen movement method allows for one.

◆ DrawStatus()

void AC.PlayerInput.DrawStatus ( )

Displays input-related information for the AC Status window

◆ EndConversation()

void AC.PlayerInput.EndConversation ( )

Ends the active Conversation.

◆ GetDragMovementSlowDown()

float AC.PlayerInput.GetDragMovementSlowDown ( )

Gets the factor by which Player movement is slowed when holding a DragBase object.

Returns
The factor by which Player movement is slowed when holding a DragBase object

◆ GetDragState()

DragState AC.PlayerInput.GetDragState ( )

Get what kind of object is currently being dragged (None, Player, Inventory, Menu, ScreenArrows, Moveable, _Camera).

Returns
What kind of object is currently being dragged (None, Player, Inventory, Menu, ScreenArrows, Moveable, _Camera).

◆ GetDragVector()

Vector2 AC.PlayerInput.GetDragVector ( )

Gets the drag vector.

Returns
The drag vector

◆ GetFreeAim()

Vector2 AC.PlayerInput.GetFreeAim ( )

Gets the free-aim input vector.

Returns
The free-aim input vector

◆ GetHeldObjectData() [1/2]

HeldObjectData [] AC.PlayerInput.GetHeldObjectData ( )

Gets all data related to the draggable objects currently being held.

◆ GetHeldObjectData() [2/2]

HeldObjectData AC.PlayerInput.GetHeldObjectData ( DragBase  dragBase)

Gets the data related to the holding of a draggable object

Parameters
dragBaseThe draggable object to get data for
Returns
Data related to the holding of the draggable object

◆ GetInGameCursorState()

bool AC.PlayerInput.GetInGameCursorState ( )

Gets the locked state of the cursor during gameplay (i.e. when the game is not paused).

Returns
True if the in-game cursor is locked in the centre of the screen

◆ GetInvertedMouse()

Vector2 AC.PlayerInput.GetInvertedMouse ( )

Gets the y-inverted cursor position. This is useful because Menu Rects are drawn upwards, while screen space is measured downwards.

Returns
Gets the y-inverted cursor position. This is useful because Menu Rects are drawn upwards, while screen space is measured downwards.

◆ GetMousePosition()

Vector2 AC.PlayerInput.GetMousePosition ( )

Gets the cursor's position in screen space.

Returns
The cursor's position in screen space

◆ GetMouseState()

MouseState AC.PlayerInput.GetMouseState ( bool  forScene = true)

Gets the current state of the mouse buttons (Normal, SingleClick, RightClick, DoubleClick, HeldDown, LetGo).

Parameters
forSceneIf True, then SingleClick will swapped with LetGo, allowing for clicks to register upon release, should the current input settings allow for it
Returns
The current state of the mouse buttons (Normal, SingleClick, RightClick, DoubleClick, HeldDown, LetGo).

◆ GetMoveKeys()

Vector2 AC.PlayerInput.GetMoveKeys ( )

Gets the input movement as a vector

Returns
The input movement as a vector

◆ HasTimeCurve()

bool AC.PlayerInput.HasTimeCurve ( )

Checks if time is being controlled by an AnimationCurve.

Returns
True if time is being controlled by an AnimationCurve.

◆ InitialiseCursorLock()

void AC.PlayerInput.InitialiseCursorLock ( MovementMethod  movementMethod)

Initialises the cursor lock based on a given movement method.

Parameters
movementMethodThe new movement method

◆ InputAnyKey()

bool AC.PlayerInput.InputAnyKey ( )

Checks if any input button is currently being pressed, simulated or otherwise.

Returns
True if any input button is currently being pressed, simulated or otherwise.

◆ InputAxisDelegate()

delegate float AC.PlayerInput.InputAxisDelegate ( string  axisName)

A delegate template for overriding input axis detection

◆ InputButtonDelegate()

delegate bool AC.PlayerInput.InputButtonDelegate ( string  buttonName)

A delegate template for overriding input button detection

◆ InputControlMenu()

virtual void AC.PlayerInput.InputControlMenu ( Menu  menu)
virtual

Controls an OnGUI-based Menu with keyboard or Controller inputs.

Parameters
menuThe Menu to control

◆ InputGetAxis()

float AC.PlayerInput.InputGetAxis ( string  axis)

Replaces "Input.GetAxis", allowing for custom overrides.

Parameters
axisThe Input axis to detect
Returns
The Input axis' value

◆ InputGetButton()

bool AC.PlayerInput.InputGetButton ( string  axis)

Replaces "Input.GetButton", allowing for custom overrides.

Parameters
axisThe Input button to detect
Returns
True if the Input button is being held down this frame

◆ InputGetButtonDown()

bool AC.PlayerInput.InputGetButtonDown ( string  axis,
bool  showError = false 
)

Replaces "Input.GetButton", allowing for custom overrides.

Parameters
axisThe Input button to detect
showErrorIf True, then an error message will appear in the Console window if the button is not defined in the Input manager
Returns
True if the Input button was first pressed down this frame

◆ InputGetButtonUp()

bool AC.PlayerInput.InputGetButtonUp ( string  axis)

Replaces "Input.GetButtonUp".

Parameters
axisThe Input button to detect
Returns
True if the Input button is released

◆ InputMouseButtonDelegate()

delegate bool AC.PlayerInput.InputMouseButtonDelegate ( int  button)

A delegate template for overriding mouse button detection

◆ InputMouseDelegate()

delegate Vector2 AC.PlayerInput.InputMouseDelegate ( bool  cusorIsLocked = false)

A delegate template for overriding mouse position detection

◆ InputTouchDelegate()

delegate Vector2 AC.PlayerInput.InputTouchDelegate ( int  index)

A delegate template for overriding touch position detection

◆ InputTouchPhaseDelegate()

delegate TouchPhase AC.PlayerInput.InputTouchPhaseDelegate ( int  index)

A delegate template for overriding touch phase

◆ IsCameraLockSnapped()

bool AC.PlayerInput.IsCameraLockSnapped ( )

If True, and Direct movement is used to control the Player, then the Player will not change direction. This is to avoid the Player moving in unwanted directions when the camera cuts.

◆ IsCursorLocked()

bool AC.PlayerInput.IsCursorLocked ( )

Checks if the cursor is locked.

Returns
True if the cursor is locked

◆ IsCursorReadable()

bool AC.PlayerInput.IsCursorReadable ( )

Checks if the cursor's position can be read. This is only ever False if the cursor cannot be dragged on a touch-screen.

Returns
True if the cursor's position can be read

◆ IsDragMoveSpeedOverWalkThreshold()

bool AC.PlayerInput.IsDragMoveSpeedOverWalkThreshold ( )

Checks if the magnitude of "Drag" Player input is above the minimum needed to move the Player.

Returns
True if the magnitude of "Drag" Player input is above the minimum needed to move the Player.

◆ IsDragObjectHeld() [1/2]

bool AC.PlayerInput.IsDragObjectHeld ( )

Checks if any DragBase object is being held by the player.

Returns
True if any DragBase object is being held by the Player

◆ IsDragObjectHeld() [2/2]

bool AC.PlayerInput.IsDragObjectHeld ( DragBase  _dragBase)

Checks if a specific DragBase object is being held by the player.

<param name "_dragBase">The DragBase to check for

Returns
True if the DragBase object is being held by the Player

◆ IsInConversation()

bool AC.PlayerInput.IsInConversation ( bool  alsoPendingOption = false)

Checks if a Conversation is currently active

Parameters
alsoPendingOptionIf True, then the method will return True if a Conversation is not active, but is in the delay gap between choosing an option and running it
Returns
True if a Conversation is currently active

◆ IsMouseOnScreen()

bool AC.PlayerInput.IsMouseOnScreen ( )

Checks if the cursor's position is within the boundary of the screen.

Returns
True if the cursor's position is within the boundary of the screen

◆ IsPlayerControlledRunning()

bool AC.PlayerInput.IsPlayerControlledRunning ( )

Checks if the Player is running due to user-controlled input.

Returns
True if the Player is running due to user-controller input

◆ LastClickWasDouble()

bool AC.PlayerInput.LastClickWasDouble ( )

Checks if the last mouse click made was a double-click.

Returns
True if the last mouse click made was a double-click

◆ LetGo()

void AC.PlayerInput.LetGo ( )

Forces the letting-go of the currently-held DragBase, if set.

◆ LoadMainData()

void AC.PlayerInput.LoadMainData ( MainData  mainData)

Updates its own variables from a MainData class.

Parameters
mainDataThe MainData class to load from

◆ OnLoad()

void AC.PlayerInput.OnLoad ( )

Resets the mouse and assigns the correct gameState in StateHandler after loading a save game.

◆ OverrideLockedCursorPosition()

void AC.PlayerInput.OverrideLockedCursorPosition ( Vector2  position)

Enforces a custom position (in screen coordinates) to apply to the cursor when it is locked

Parameters
positionThe position (in screen coordinates)

◆ ReleaseLockedCursorPositionOverride()

void AC.PlayerInput.ReleaseLockedCursorPositionOverride ( )

Releases the custom locked cursor position set with OverrideLockedCursorPosition

◆ RemoveActiveArrows()

void AC.PlayerInput.RemoveActiveArrows ( )

Disables the active ArrowPrompt.

◆ ResetClick()

void AC.PlayerInput.ResetClick ( )

Records the current click time, so that another click will not register for the duration of clickDelay.

◆ ResetDragMovement()

void AC.PlayerInput.ResetDragMovement ( )

Resets the speed of "Drag" Player input.

◆ ResetMouseClick()

void AC.PlayerInput.ResetMouseClick ( )

Resets the mouse click so that nothing else will be affected by it this frame.

◆ SaveMainData()

MainData AC.PlayerInput.SaveMainData ( MainData  mainData)

Updates a MainData class with its own variables that need saving.

Parameters
mainDataThe original MainData class
Returns
The updated MainData class

◆ SetActiveDragElement()

void AC.PlayerInput.SetActiveDragElement ( MenuDrag  menuDrag)

Assigns a MenuDrag element as the one to drag.

Parameters
menuDragThe MenuDrag to begin dragging

◆ SetInGameCursorState()

void AC.PlayerInput.SetInGameCursorState ( bool  lockState)

Sets the lock state of the in-game cursor manually. When locked, the cursor will be placed in the centre of the screen during gameplay.

Parameters
lockStateIf True, the cursor will be locked during gameplay

◆ SetSimulatedCursorPosition()

void AC.PlayerInput.SetSimulatedCursorPosition ( Vector2  newPosition)

Sets the position of the simulated cursor, which is used when the game's Input method is set to Keyboard Or Controller

Parameters
newPositionThe position, in screen-space co-ordinates, to move the simulated cursor to<param>

◆ SetTimeCurve()

void AC.PlayerInput.SetTimeCurve ( AnimationCurve  _timeCurve,
bool  _timeCurveAffectsFixedDeltaTime = false 
)

Assigns an AnimationCurve that controls the timeScale over time.

Parameters
_timeCurveThe AnimationCurve to use
_timeCurveAffectsFixedDeltaTimeIf True, Time.fixedDeltaTime will be affected as well

◆ SetTimeScale()

void AC.PlayerInput.SetTimeScale ( float  _timeScale,
bool  affectFixedDeltaTime 
)

Sets the timeScale.

Parameters
_timeScaleThe new timeScale. A value of 0 will have no effect<param>

◆ SimulateInput()

void AC.PlayerInput.SimulateInput ( SimulateInputType  input,
string  axis,
float  value 
)

Simulates the pressing of an Input button or axis.

Parameters
inputThe type of Input this is simulating (Button, Axis)
axisThe name of the Input button or axis
valueThe value to assign the Input axis, if input = SimulateInputType.Axis

◆ SimulateInputAxis()

void AC.PlayerInput.SimulateInputAxis ( string  axis,
float  value 
)

Simulates the pressing of an Input axis.

Parameters
axisThe name of the Input axis
valueThe value to assign the Input axis

◆ SimulateInputButton()

void AC.PlayerInput.SimulateInputButton ( string  button)

Simulates the pressing of an Input button.

Parameters
buttonThe name of the Input button

◆ UpdateDirectInput()

void AC.PlayerInput.UpdateDirectInput ( bool  isInGameplay)

Updates the input variables needed for Direct movement. This is called every frame by StateHandler.

◆ UpdateInput()

void AC.PlayerInput.UpdateInput ( )

Updates the input handler. This is called every frame by StateHandler.

Member Data Documentation

◆ activeArrows

ArrowPrompt AC.PlayerInput.activeArrows = null

The active ArrowPrompt

◆ activeContainer

Container AC.PlayerInput.activeContainer = null

The active Container

◆ activeConversation

Conversation AC.PlayerInput.activeConversation = null

The active Conversation

◆ canKeyboardControlMenusDuringGameplay

bool AC.PlayerInput.canKeyboardControlMenusDuringGameplay = false

If True, Menus can be controlled via the keyboard or controller during gameplay

◆ clickDelay

float AC.PlayerInput.clickDelay = 0.3f

The minimum duration, in seconds, that can elapse between mouse clicks

◆ doubleClickDelay

float AC.PlayerInput.doubleClickDelay = 1f

The maximum duration, in seconds, between two successive mouse clicks to register a "double-click"

◆ dragOverrideInput

string AC.PlayerInput.dragOverrideInput = ""

The name of the Input Axis that controls dragging effects. If empty, the default inputs (LMB / "InteractionA") will be used

◆ InputGetAxisDelegate

InputAxisDelegate AC.PlayerInput.InputGetAxisDelegate = null

A delegate for the InputGetAxis function, used to detect the value of an input axis

◆ InputGetButtonDelegate

InputButtonDelegate AC.PlayerInput.InputGetButtonDelegate = null

A delegate for the InputGetButton function, used to detect when a button is held down

◆ InputGetButtonDownDelegate

InputButtonDelegate AC.PlayerInput.InputGetButtonDownDelegate = null

A delegate for the InputGetButtonDown function, used to detect when a button is first pressed

◆ InputGetButtonUpDelegate

InputButtonDelegate AC.PlayerInput.InputGetButtonUpDelegate = null

A delegate for the InputGetButtonUp function, used to detect when a button is released

◆ InputGetDragStateDelegate

_InputGetDragStateDelegate AC.PlayerInput.InputGetDragStateDelegate

A delegate for _InputGetDragStateDelegate, used to update the drag state

◆ InputGetFreeAimDelegate

InputMouseDelegate AC.PlayerInput.InputGetFreeAimDelegate

A delegate for the InputGetFreeAim function, used to get the free-aiming vector

◆ InputGetMouseButtonDelegate

InputMouseButtonDelegate AC.PlayerInput.InputGetMouseButtonDelegate

A delegate for the InputGetMouseButton function, used to detect mouse clicks

◆ InputGetMouseButtonDownDelegate

InputMouseButtonDelegate AC.PlayerInput.InputGetMouseButtonDownDelegate

A delegate for the InputGetMouseDownButton function, used to detect when a mouse button is first clicked

◆ InputGetTouchPhaseDelegate

InputTouchPhaseDelegate AC.PlayerInput.InputGetTouchPhaseDelegate

A delegate for the InputTouchPhase function, used to detect a touch index's phase

◆ InputMousePositionDelegate

InputMouseDelegate AC.PlayerInput.InputMousePositionDelegate

A delegate for the InputMousePosition function, used to detect the mouse position

◆ InputTouchCountDelegate

_InputTouchCountDelegate AC.PlayerInput.InputTouchCountDelegate

A delegate for _InputTouchCountDelegate, used to get the number of touches

◆ InputTouchDeltaPositionDelegate

InputTouchDelegate AC.PlayerInput.InputTouchDeltaPositionDelegate

A delegate for the InputTouchPosition function, used to detect the touch deltaPosition

◆ InputTouchPositionDelegate

InputTouchDelegate AC.PlayerInput.InputTouchPositionDelegate

A delegate for the InputTouchPosition function, used to detect the touch position

◆ skipMovieKey

string AC.PlayerInput.skipMovieKey = ""

The name of the Input button that skips movies played with ActionMove

◆ timeScale

float AC.PlayerInput.timeScale = 1f

The game's current Time.timeScale value

Property Documentation

◆ CanKeyboardControlMenusDuringGameplay

bool AC.PlayerInput.CanKeyboardControlMenusDuringGameplay
getset

If True, Menus can be controlled via the keyboard or controller during gameplay

◆ LockedCursorPosition

virtual Vector2 AC.PlayerInput.LockedCursorPosition
get

The position of the cursor when it is locked

◆ PendingOptionConversation

Conversation AC.PlayerInput.PendingOptionConversation
getset

A Conversation that has ended, but has yet to run the response