问题描述
我正在创建一个本地多人游戏,其中 2 个玩家使用相同的键盘来输入控件。我为玩家创建了 2 种不同的控制方案,但我正在努力寻找一种方法来为每个玩家角色分配不同的方案,以及如何检查哪个玩家正在使用哪种方案等
解决方法
转到 Unity GetAxis,您可以添加另一个轴形成
编辑 > 项目设置 > 输入管理器
如果你制作另外 2 个轴,名称分别为 "2ndPlayerHorizontal" 、 "2ndPlayerVertical" 并在玩家上放置标签 ("FirstPlayer","SecondPlayer")
您可以使用此代码:
using UnityEngine;
using System.Collections;
public class PlayersMovement: MonoBehaviour
{
public float speed = 10.0f;
public float rotationSpeed = 100.0f;
float translation;
float rotation;
void Update()
{
if(this.CompareTag("FirstPlayer")
{
//1st player
translation = Input.GetAxis("Vertical") * speed;
float rotation = Input.GetAxis("Horizontal") * rotationSpeed;
}
if(this.CompareTag("SecondPlayer")
{
//2nd player
translation = Input.GetAxis("Vertical") * speed;
rotation = Input.GetAxis("Horizontal") * rotationSpeed;
}
translation *= Time.deltaTime;
rotation *= Time.deltaTime;
transform.Translate(0,translation);
transform.Rotate(0,rotation,0);
}
}