作者:Le-麦兜_738 | 来源:互联网 | 2023-10-11 21:57
我正在将Hill Climb Racing的克隆作为学校项目。目前,我的汽车正在使用我的编辑器(movement = Input.Getaxis("Horizontal");
中的A和D键加速,但是该游戏必须适用于Android,因此像OG游戏一样,我为刹车和踏板添加了2个精灵,并向其中添加了EventSystems他们例如:
public void OnPointerDown(PointerEventData eventData)
{
gas.sprite = OnSprite_gas;
is_clicking = true;
}
而且我不知道如何将加速更改为单击并按住气体图像时的加速度,以及如何在按住制动器时制动(但不向后退)。
您似乎在正确的轨道上。
在汽车的Update()
方法中,您将要检查是否设置了刹车或油门按钮is_clicking
属性,并处理移动力。
看起来可能像这样:
void Update()
{
if (accelerator.is_clicking)
{
movement = new Vector3(1f,0f,0f) * speed;
}
else if (brake.is_clicking)
{
movement = new Vector3(-1f,0f) * speed;
}
else
{
movement = new Vector3(0f,0f);
}
}
void FixedUpdate()
{
rb.AddForce(movement * Time.fixedDeltaTime);
}
然后您可以检查速度是否接近0以停止施加制动力。