[TUTORIAL] Identificar se está no controle ou teclado
Página 1 de 1
[TUTORIAL] Identificar se está no controle ou teclado
para esse tutorial vc já deve saber sobre o novo input System.
minha resposta está na unity answer
Unity Answer
minha resposta está na unity answer
Unity Answer
- Código:
using UnityEngine;
public class InputChecker : MonoBehaviour
{
public enum InputDevice { controller = 0, keyboard = 1 };
public InputDevice inputDevice;
public string nameDevice;
private InputMasterAction inputActions;
private void Awake()
{
inputActions = new InputMasterAction();
}
private void Update()
{
Inputs();
//to find out the name of the controller inputActions.InputsChecker.Inputs.activeControl.device.name
if (inputActions.InputsChecker.Inputs.activeControl != null)
{
nameDevice = inputActions.InputsChecker.Inputs.activeControl.device.name;
}
}
private void Inputs()
{
#region CONTROLLER
//checks if any button on the controller has been pressed
if (Input.GetKey(KeyCode.Joystick1Button0) ||
Input.GetKey(KeyCode.Joystick1Button1) ||
Input.GetKey(KeyCode.Joystick1Button2) ||
Input.GetKey(KeyCode.Joystick1Button3) ||
Input.GetKey(KeyCode.Joystick1Button4) ||
Input.GetKey(KeyCode.Joystick1Button5) ||
Input.GetKey(KeyCode.Joystick1Button6) ||
Input.GetKey(KeyCode.Joystick1Button7) ||
Input.GetKey(KeyCode.Joystick1Button8) ||
Input.GetKey(KeyCode.Joystick1Button9) ||
Input.GetKey(KeyCode.Joystick1Button10) ||
Input.GetKey(KeyCode.Joystick1Button11) ||
Input.GetKey(KeyCode.Joystick1Button12) ||
Input.GetKey(KeyCode.Joystick1Button13) ||
Input.GetKey(KeyCode.Joystick1Button14) ||
Input.GetKey(KeyCode.Joystick1Button15) ||
Input.GetKey(KeyCode.Joystick1Button16) ||
Input.GetKey(KeyCode.Joystick1Button17) ||
Input.GetKey(KeyCode.Joystick1Button18) ||
Input.GetKey(KeyCode.Joystick1Button19))
{
inputDevice = InputDevice.controller;
}
if (inputActions.InputsChecker.Inputs.activeControl != null)
{
//checks if it is a control
//if you use another controller other than xbox put below
if (inputActions.InputsChecker.Inputs.activeControl.device.name == "XInputControllerWindows")
{
inputDevice = InputDevice.controller;
}
}
#endregion
#region KEYBOARD
//checks if any key on the keyboard has been pressed
if (Input.anyKey &&
!Input.GetKey(KeyCode.Joystick1Button0) &&
!Input.GetKey(KeyCode.Joystick1Button1) &&
!Input.GetKey(KeyCode.Joystick1Button2) &&
!Input.GetKey(KeyCode.Joystick1Button3) &&
!Input.GetKey(KeyCode.Joystick1Button4) &&
!Input.GetKey(KeyCode.Joystick1Button5) &&
!Input.GetKey(KeyCode.Joystick1Button6) &&
!Input.GetKey(KeyCode.Joystick1Button7) &&
!Input.GetKey(KeyCode.Joystick1Button8) &&
!Input.GetKey(KeyCode.Joystick1Button9) &&
!Input.GetKey(KeyCode.Joystick1Button10) &&
!Input.GetKey(KeyCode.Joystick1Button11) &&
!Input.GetKey(KeyCode.Joystick1Button12) &&
!Input.GetKey(KeyCode.Joystick1Button13) &&
!Input.GetKey(KeyCode.Joystick1Button14) &&
!Input.GetKey(KeyCode.Joystick1Button15) &&
!Input.GetKey(KeyCode.Joystick1Button16) &&
!Input.GetKey(KeyCode.Joystick1Button17) &&
!Input.GetKey(KeyCode.Joystick1Button18) &&
!Input.GetKey(KeyCode.Joystick1Button19))
{
inputDevice = InputDevice.keyboard;
}
//checks if it's a keyboard or mouse
if (inputActions.InputsChecker.Inputs.activeControl != null)
{
if (inputActions.InputsChecker.Inputs.activeControl.device.name == "Mouse")
{
inputDevice = InputDevice.keyboard;
}
}
#endregion
#region INPUTCHECKER
if (inputDevice == InputDevice.controller)
{
//GameManager.controller = true;
Debug.Log("Controller");
}
else
{
//GameManager.controller = false;
Debug.Log("keyboard");
}
#endregion
}
private void OnEnable()
{
inputActions.Enable();
}
private void OnDisable()
{
inputActions.Disable();
}
}
diegopds- Mestre
- PONTOS : 3421
REPUTAÇÃO : 52
Idade : 26
Respeito as regras :
Tópicos semelhantes
» Como detectar se teclado ou controle foi conectado???
» [TUTORIAL] Script para controle de System Particle
» [TUTORIAL] Como usar FREE EASY CRIATURA CONTROLE IA
» [TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
» [TUTORIAL] Identificar qual a melhor qualidade gráfica baseada no Hardware
» [TUTORIAL] Script para controle de System Particle
» [TUTORIAL] Como usar FREE EASY CRIATURA CONTROLE IA
» [TUTORIAL] Controle 3ª pessoa com animações mecânicas (root motion)
» [TUTORIAL] Identificar qual a melhor qualidade gráfica baseada no Hardware
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos