我想限制沿X和Y轴的移动在-7.5和7.5之间。实现这一目标的最简单方法是什么?
到目前为止,这是我的动作脚本:
using UnityEngine;
using System.Collections;
public class PlayerPaddle : MonoBehaviour {
private float speed = 0.1f;
void Start ()
{
}
void Update ()
{
if (Input.GetKey(KeyCode.UpArrow))
this.transform.position += Vector3.up * speed;
if (Input.GetKey(KeyCode.DownArrow))
this.transform.position += Vector3.down * speed;
if (Input.GetKey(KeyCode.LeftArrow))
this.transform.position += Vector3.left * speed;
if (Input.GetKey(KeyCode.RightArrow))
this.transform.position += Vector3.right * speed;
}
}
答案 0 :(得分:1)
你将确保当前位置加上下一步不会超出你的界限。
您可能想要查看一些有关碰撞检测的文献。这是一个例子:
示例:
if (Input.GetKey(KeyCode.LeftArrow))
{
if((this.transform.position + (Vector3.left * speed)) > -7.5)
this.transform.position += Vector3.left * speed;
}