我正在尝试让我的 Xbox 控制器在 Unity 中工作。我使用了这个视频:http ://www.youtube.com/watch?v=J8HaAyLzPh4
编写脚本后,我收到以下错误:
Assets/XBox360ControllerScript.cs(88,14): error CS0111: A member
`XBox360ControllerScript.Update()' is already defined.
Rename this member or use different parameter types.
这是我的代码:
using UnityEngine;
using System.Collections;
public class XBox360ControllerScript : MonoBehaviour
{
// These are used to modify player movent
float PlayerMovementSpeed = 30;
float PlayerRotationSpeed = 100;
// Seperating Movement and Button inputs into different functions is easier for debugging
void Update ()
{
Movement();
UserInputs();
}
/// <summary>
/// This function handles movement calculations. You can adjust the code to work with different AXES if preferred.
/// Right Thumbstick uses the 4th and 5th Input Joystick Axes.
/// Left Thumbstick uses the X and Y Input Joystick Axes.
/// For movement the Vertical Axis is read from moving the LEFT THUMBSTICK up and down,
/// and the Horizontal Axis is read from moving the LEFT THUMBSTICK left and right.
/// Rotation is read from the RIGHT THUMBSTICK
/// </summary>
void Movement()
{
//This line is for vertical movement, using the Z AXIS
transform.Translate(0,0,Input.GetAxis("Vertical") * Time.deltaTime * PlayerMovementSpeed);
//This line is for horizontal movement, using the X AXIS. When combined with vertical movement it can be used for strafing.
transform.Translate(Input.GetAxis("Horizontal") * Time.deltaTime * PlayerMovementSpeed, 0, 0);
//This line if for rotation, using the Y AXIS
transform.Rotate(0,Input.GetAxis("RightStick") * Time.deltaTime * PlayerRotationSpeed,0);
}
/// <summary>
/// This function handles the Inputs from the buttons on the controller
/// </summary>
void UserInputs()
{
if(Input.GetButtonDown("XBox360 A"))
Debug.Log("A Button");
if(Input.GetButtonDown("XBox360 B"))
Debug.Log("B Button");
if(Input.GetButtonDown("XBox360 X"))
Debug.Log("X Button");
if(Input.GetButtonDown("XBox360 Y"))
Debug.Log("Y Button");
if(Input.GetButtonDown("XBox360 LB"))
Debug.Log("LB Button");
if(Input.GetButtonDown("XBox360 RB"))
Debug.Log("RB Button");
if(Input.GetButtonDown("XBox360 Back"))
Debug.Log("Back Button");
if(Input.GetButtonDown("XBox360 Start"))
Debug.Log("Start Button");
if(Input.GetButtonDown("XBox360 Leftstick"))
Debug.Log("Leftstick Button");
if(Input.GetButtonDown("XBox360 Rightstick"))
Debug.Log("Rightstick Button");
//Triggers are read from the 3rd JOystick Axis and read from a Sensitivity rating from -1 to 1
if(Input.GetAxis("XBox360 Triggers") > 0.001)
Debug.Log("Right trigger");
if(Input.GetAxis("XBox360 Triggers") < 0)
Debug.Log("Left trigger");
//The Dpad is read from the 6th and 7th Joystick Axes and from a Sensitivity rating from -1 to 1
if(Input.GetAxis("XBox360 Dpad Horizontal") > 0.001)
Debug.Log("DPAD right button");
if(Input.GetAxis("XBox360 Dpad Horizontal") < 0)
Debug.Log("DPAD left button");
if(Input.GetAxis("XBox360 Dpad Vertical") > 0.001)
Debug.Log("DPAD up button");
if(Input.GetAxis("XBox360 Dpad Vertical") < 0)
Debug.Log("DPAD down button");
}
// Use this for initialization
void Start ()
{
}
// Update is called once per frame
void Update ()
{
}
}
它与 youtube 视频中的完全一样......我怎样才能修复错误/让我的控制器工作。