Run-and-capture/Assets/Scripts/CustomInput.cs
2021-08-07 17:23:31 +03:00

62 lines
1.2 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class CustomInput : MonoBehaviour
{
public static Vector2 leftInput, rightInput;
public static Action OnTouchDown, OnTouchUp;
[Header("Character Control Parameters")]
public CharControlType controlType = CharControlType.UI_Joysticks;
[SerializeField]
private FloatingJoystick leftJoystick, rightJoystick;
private void Awake()
{
rightJoystick.OnTouchDown += InvokeTouchDown;
rightJoystick.OnTouchUp += InvokeTouchUp;
}
private void InvokeTouchDown()
{
OnTouchDown?.Invoke();
}
private void InvokeTouchUp()
{
OnTouchUp?.Invoke();
}
private void Start()
{
ResetInput();
}
private void ResetInput()
{
leftInput = Vector2.zero;
}
private void Update()
{
leftInput.x = leftJoystick.Horizontal;
leftInput.y = leftJoystick.Vertical;
rightInput.x = rightJoystick.Horizontal;
rightInput.y = rightJoystick.Vertical;
}
}
public enum CharControlType
{
UI_Joysticks,
//Else //test purp for now
}