自定义设置玩家跳跃次数的逻辑就是通过定义一个计数器来检测跳跃次数
当 计数器 == 0 时说明玩家在地面(跳跃次数为0);
当 计数器 == 1 时说明玩家跳跃了一次并且在空中;
当 计数器 == 2 时说明玩家跳跃了两次并且在空中;
......
设置玩家单次跳跃
1) 判断玩家跳跃次数如果为0(计数器是否 == 0)则进行跳跃动作
2) 增加计数器(使玩家无法进行二次跳跃)
3) 使用OnCollisionEnter方法重置计数器
设置玩家多次跳跃
1) 判断玩家的现有跳跃次数是否小于x(计数器 < x)从而进行跳跃动作
2) 增加计数器(使玩家达到跳跃次数后无法进行x+1次跳跃)
3) 使用OnCollisionEnter方法重置计数器
代码实现如下:
设置玩家跳跃次数为1
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private Rigidbody playerRB; // 创建一个刚体的容器
public float jumpForce = 5; // 初始化