OuijaMTLGJ2016/Assets/scripts/CharacterController.cs
Patrice Vignola 852b474c87 dsggesgsrg
2016-01-31 16:40:34 -05:00

60 lines
1.4 KiB
C#

using UnityEngine;
using System.Collections;
using InputHandler;
public class CharacterController : MonoBehaviour
{
public enum PlayerNumber { One, Two, Three }
public Character character;
public PlayerNumber playerNumber;
void Start ()
{
//InputManager.Instance.PushActiveContext("Normal", (int)playerNumber);
InputManager.Instance.AddCallback((int)playerNumber, HandlePlayerAxis);
InputManager.Instance.AddCallback((int)playerNumber, HandlePlayerButtons);
character.PlayerID = (int)playerNumber;
}
private void HandlePlayerAxis(MappedInput input)
{
if (character == null) return;
float xValue = 0f;
if (input.Ranges.ContainsKey("MoveLeft"))
{
xValue = -input.Ranges["MoveLeft"];
}
else if (input.Ranges.ContainsKey("MoveRight"))
{
xValue = input.Ranges["MoveRight"];
}
float zValue = 0f;
if (input.Ranges.ContainsKey("MoveForward"))
{
zValue = input.Ranges["MoveForward"];
}
else if (input.Ranges.ContainsKey("MoveBackward"))
{
zValue = -input.Ranges["MoveBackward"];
}
character.Move(xValue, zValue);
}
private void HandlePlayerButtons(MappedInput input)
{
if (character == null) return;
if (input.Actions.Contains("Dash"))
{
character.Dash();
}
}
}