输入类和人物脚本类,分离操作。
输入的类:PlayerInput
public class PlayerInput : MonoBehaviour
{
// 返回水平轴 -1 0 1 左 右
public float mHorizontal { get { return Input.GetAxis("Horizontal"); } }
// 返回垂直轴 1 -1 上 下
public float mVertical { get { return Input.GetAxis("Vertical"); } }
}
区别:
GetAxisRaw 返回:-1 0 1 则返回未经处理的值
GetAxis 返回:-1 1 拥有平滑过渡
移动和翻转脚本类:PlayerMove
public class PlayerMove : MonoBehaviour
{
[Header("字段")]
[SerializeField] private PlayerInput mInput; // 输入变量
[SerializeField] private Rigidbody2D mRigdbody; // 刚体变量
[Header("移动")]
[SerializeField] private float speed = 6.3F; // 初始值速度
[SerializeField] private bool isFaceingRight = true; // 脸朝向是否朝向右
[Header("跳跃")]
[SerializeField] private float jumpingPpwer = 16F; // 跳跃