2021-08-20 11:16:49 +02:00
|
|
|
using UnityEngine;
|
2023-04-28 14:02:53 +03:00
|
|
|
using UnityEngine.Events;
|
2022-08-19 01:27:02 +03:00
|
|
|
using UnityEngine.InputSystem;
|
2022-08-07 23:11:07 +03:00
|
|
|
using static UnityEngine.InputSystem.InputAction;
|
2021-08-20 11:16:49 +02:00
|
|
|
|
2021-12-11 18:37:11 +01:00
|
|
|
[RequireComponent(typeof(InputBuffer))]
|
2021-09-11 14:08:35 +02:00
|
|
|
public class PlayerController : BaseController
|
2021-08-20 11:16:49 +02:00
|
|
|
{
|
2022-09-18 23:42:20 +03:00
|
|
|
public PromptsInput CurrentPrompts { get; set; }
|
|
|
|
|
private readonly string _controlRebindKey = "rebinds";
|
|
|
|
|
private bool _dashForwardPressed;
|
|
|
|
|
private bool _dashBackPressed;
|
|
|
|
|
private int _dashForwardLastInputTime;
|
|
|
|
|
private int _dashBackLastInputTime;
|
|
|
|
|
private readonly int _dashTime = 12;
|
2022-12-08 03:28:59 +02:00
|
|
|
private Vector2Int _previousInput;
|
2023-04-28 14:02:53 +03:00
|
|
|
public static UnityEvent<Vector2Int, bool> OnInputDirection = new UnityEvent<Vector2Int, bool>();
|
2023-07-01 23:48:47 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
void Start()
|
|
|
|
|
{
|
|
|
|
|
string rebinds = PlayerPrefs.GetString(_controlRebindKey);
|
|
|
|
|
_playerInput.actions.LoadBindingOverridesFromJson(rebinds);
|
|
|
|
|
_playerInput.actions.actionMaps[(int)ActionSchemeTypes.Training].Enable();
|
|
|
|
|
}
|
2022-08-08 15:55:27 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
//GAMEPLAY
|
2023-07-01 23:48:47 +03:00
|
|
|
//Sequences
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Movement(CallbackContext callbackContext)
|
|
|
|
|
{
|
2022-11-16 12:28:39 +02:00
|
|
|
Vector2Int input = new Vector2Int(Mathf.RoundToInt(callbackContext.ReadValue<Vector2>().x), Mathf.RoundToInt(callbackContext.ReadValue<Vector2>().y));
|
2023-04-28 14:02:53 +03:00
|
|
|
OnInputDirection?.Invoke(input, _player.IsPlayerOne);
|
2022-11-27 14:35:57 +02:00
|
|
|
if (callbackContext.performed && IsControllerEnabled && _previousInput != input)
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.y != 0 && input.x != 0)
|
2022-11-16 12:28:39 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.y == 1 && input.x == 1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_UP_RIGHT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_UP_RIGHT_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.y == 1 && input.x == -1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_UP_LEFT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_UP_LEFT_INPUT = true;
|
|
|
|
|
}
|
|
|
|
|
if (input.y == -1 && input.x == 1)
|
|
|
|
|
{
|
|
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DOWN_RIGHT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DOWN_RIGHT_INPUT = true;
|
|
|
|
|
}
|
|
|
|
|
if (input.y == -1 && input.x == -1)
|
|
|
|
|
{
|
|
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DOWN_LEFT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DOWN_LEFT_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2022-11-16 12:28:39 +02:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
else
|
2022-11-16 12:28:39 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.y == 1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_UP_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_UP_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.y == -1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DOWN_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DOWN_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.x == 1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_RIGHT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_RIGHT_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input.x == -1)
|
2022-12-15 17:53:32 +02:00
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
_previousInput = input;
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_LEFT_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_LEFT_INPUT = true;
|
2022-12-15 17:53:32 +02:00
|
|
|
}
|
2022-11-16 12:28:39 +02:00
|
|
|
}
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2022-11-27 14:35:57 +02:00
|
|
|
if (input == Vector2Int.zero)
|
|
|
|
|
_previousInput = Vector2Int.zero;
|
2022-11-16 12:28:39 +02:00
|
|
|
if (input.x == 0)
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2022-12-15 17:53:32 +02:00
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
NetworkInput.ONE_UP_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_UP_LEFT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_DOWN_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_DOWN_LEFT_INPUT = false;
|
2022-12-15 17:53:32 +02:00
|
|
|
NetworkInput.ONE_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_LEFT_INPUT = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
NetworkInput.TWO_UP_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_UP_LEFT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_DOWN_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_DOWN_LEFT_INPUT = false;
|
2022-12-15 17:53:32 +02:00
|
|
|
NetworkInput.TWO_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_LEFT_INPUT = false;
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2022-11-16 12:28:39 +02:00
|
|
|
if (input.y == 0)
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2022-12-15 17:53:32 +02:00
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
NetworkInput.ONE_UP_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_UP_LEFT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_DOWN_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_DOWN_LEFT_INPUT = false;
|
2022-12-15 17:53:32 +02:00
|
|
|
NetworkInput.ONE_UP_INPUT = false;
|
|
|
|
|
NetworkInput.ONE_DOWN_INPUT = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2023-10-26 22:42:28 +03:00
|
|
|
NetworkInput.TWO_UP_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_UP_LEFT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_DOWN_RIGHT_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_DOWN_LEFT_INPUT = false;
|
2022-12-15 17:53:32 +02:00
|
|
|
NetworkInput.TWO_UP_INPUT = false;
|
|
|
|
|
NetworkInput.TWO_DOWN_INPUT = false;
|
|
|
|
|
}
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2023-10-26 22:42:28 +03:00
|
|
|
if (input == Vector2.zero)
|
|
|
|
|
{
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_NEUTRAL_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_NEUTRAL_INPUT = true;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_NEUTRAL_INPUT = false;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_NEUTRAL_INPUT = false;
|
|
|
|
|
}
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2022-08-08 15:55:27 +03:00
|
|
|
|
2023-07-01 23:48:47 +03:00
|
|
|
//Triggers
|
|
|
|
|
public void Light(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_LIGHT_INPUT, ref NetworkInput.TWO_LIGHT_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Medium(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_MEDIUM_INPUT, ref NetworkInput.TWO_MEDIUM_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Heavy(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_HEAVY_INPUT, ref NetworkInput.TWO_HEAVY_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Arcane(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_ARCANA_INPUT, ref NetworkInput.TWO_ARCANA_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Assist(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_SHADOW_INPUT, ref NetworkInput.TWO_SHADOW_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Throw(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_GRAB_INPUT, ref NetworkInput.TWO_GRAB_INPUT);
|
|
|
|
|
|
|
|
|
|
public void Parry(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_BLUE_FRENZY_INPUT, ref NetworkInput.TWO_BLUE_FRENZY_INPUT);
|
|
|
|
|
|
|
|
|
|
public void RedFrenzy(CallbackContext callbackContext) => SetInput(callbackContext, ref NetworkInput.ONE_RED_FRENZY_INPUT, ref NetworkInput.TWO_RED_FRENZY_INPUT);
|
|
|
|
|
|
|
|
|
|
private void SetInput(CallbackContext callbackContext, ref bool inputOne, ref bool InputTwo)
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2023-07-01 23:48:47 +03:00
|
|
|
if (callbackContext.performed && IsControllerEnabled)
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
inputOne = true;
|
|
|
|
|
else
|
|
|
|
|
InputTwo = true;
|
|
|
|
|
else
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2023-07-01 23:48:47 +03:00
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
inputOne = false;
|
|
|
|
|
else
|
|
|
|
|
InputTwo = false;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2022-10-21 21:20:37 +03:00
|
|
|
}
|
|
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void DashForward(CallbackContext callbackContext)
|
|
|
|
|
{
|
2022-11-24 03:12:16 +02:00
|
|
|
if (callbackContext.performed && IsControllerEnabled)
|
2022-09-18 23:42:20 +03:00
|
|
|
if (!_dashForwardPressed)
|
|
|
|
|
{
|
|
|
|
|
_dashForwardPressed = true;
|
2022-11-03 13:09:06 +02:00
|
|
|
_dashForwardLastInputTime = DemonicsWorld.Frame;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2022-11-03 13:09:06 +02:00
|
|
|
int timeSinceLastPress = DemonicsWorld.Frame - _dashForwardLastInputTime;
|
2022-09-18 23:42:20 +03:00
|
|
|
if (timeSinceLastPress <= _dashTime)
|
|
|
|
|
{
|
2022-12-15 17:53:32 +02:00
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DASH_FORWARD_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DASH_FORWARD_INPUT = true;
|
2022-09-18 23:42:20 +03:00
|
|
|
_dashForwardPressed = false;
|
|
|
|
|
}
|
2022-11-03 13:09:06 +02:00
|
|
|
_dashForwardLastInputTime = DemonicsWorld.Frame;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2023-07-01 23:48:47 +03:00
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DASH_FORWARD_INPUT = false;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DASH_FORWARD_INPUT = false;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
}
|
2022-08-12 23:12:55 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void DashBack(CallbackContext callbackContext)
|
|
|
|
|
{
|
2022-11-24 03:12:16 +02:00
|
|
|
if (callbackContext.performed && IsControllerEnabled)
|
2022-09-18 23:42:20 +03:00
|
|
|
if (!_dashBackPressed)
|
|
|
|
|
{
|
|
|
|
|
_dashBackPressed = true;
|
2022-11-03 13:09:06 +02:00
|
|
|
_dashBackLastInputTime = DemonicsWorld.Frame;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2022-11-03 13:09:06 +02:00
|
|
|
int timeSinceLastPress = DemonicsWorld.Frame - _dashBackLastInputTime;
|
2022-09-18 23:42:20 +03:00
|
|
|
if (timeSinceLastPress <= _dashTime)
|
|
|
|
|
{
|
2022-12-15 17:53:32 +02:00
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DASH_BACKWARD_INPUT = true;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DASH_BACKWARD_INPUT = true;
|
2022-09-18 23:42:20 +03:00
|
|
|
_dashBackPressed = false;
|
|
|
|
|
}
|
2022-11-03 13:09:06 +02:00
|
|
|
_dashBackLastInputTime = DemonicsWorld.Frame;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
2023-07-01 23:48:47 +03:00
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (_player.IsPlayerOne)
|
|
|
|
|
NetworkInput.ONE_DASH_BACKWARD_INPUT = false;
|
|
|
|
|
else
|
|
|
|
|
NetworkInput.TWO_DASH_BACKWARD_INPUT = false;
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Pause(CallbackContext callbackContext)
|
|
|
|
|
{
|
2023-01-02 19:59:46 +02:00
|
|
|
if (NetworkInput.IS_LOCAL)
|
2022-09-18 23:42:20 +03:00
|
|
|
{
|
2023-01-02 19:59:46 +02:00
|
|
|
if (callbackContext.performed)
|
|
|
|
|
_player.Pause(_brainController.IsPlayerOne);
|
|
|
|
|
if (callbackContext.canceled)
|
|
|
|
|
_player.UnPause();
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//TRAINING
|
|
|
|
|
public void Reset(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
{
|
2022-12-21 16:07:24 +02:00
|
|
|
if (_player.IsPlayerOne)
|
2022-12-22 01:39:39 +02:00
|
|
|
GameplayManager.Instance.ResetRound(GameSimulation._players[0].direction);
|
2022-12-21 16:07:24 +02:00
|
|
|
else
|
2022-12-22 01:39:39 +02:00
|
|
|
GameplayManager.Instance.ResetRound(GameSimulation._players[1].direction);
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
}
|
2021-11-06 03:05:31 +01:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Switch(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
2022-12-04 21:35:31 +02:00
|
|
|
GameplayManager.Instance.SwitchCharacters();
|
2022-09-18 23:42:20 +03:00
|
|
|
}
|
|
|
|
|
//UI
|
|
|
|
|
public void Confirm(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnConfirm?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Back(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnBack?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Stage(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnStage?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Coop(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnCoop?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void Controls(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnControls?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-22 19:17:03 +03:00
|
|
|
public void ToggleFramedata(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnToggleFramedata?.Invoke();
|
|
|
|
|
}
|
|
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void PageLeft(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnLeftPage?.Invoke();
|
|
|
|
|
}
|
2022-08-10 19:47:52 +03:00
|
|
|
|
2022-09-18 23:42:20 +03:00
|
|
|
public void PageRight(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnRightPage?.Invoke();
|
|
|
|
|
}
|
2022-10-17 19:11:28 +02:00
|
|
|
|
|
|
|
|
public void NavigationRight(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnRightNavigation?.Invoke();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void NavigationLeft(CallbackContext callbackContext)
|
|
|
|
|
{
|
|
|
|
|
if (callbackContext.performed)
|
|
|
|
|
CurrentPrompts?.OnLeftNavigation?.Invoke();
|
|
|
|
|
}
|
2021-08-20 11:16:49 +02:00
|
|
|
}
|