Я пытаюсь позволить игроку прыгать, когда он находится только на земле, но он продолжает прыгать, даже если он был в воздухе.
вот код:
public class Player : MonoBehaviour
{
float moveSpeed = 5;
public Rigidbody2D rb;
float jump = 5f;
bool isGrounded;
// Start is called before the first frame update
void Start()
{
rb.GetComponent();
}
void Update()
{
isGrounded = Physics2D.Raycast(transform.position, Vector2.down, 0.1f);
float moveHorizontal = Input.GetAxis("Horizontal");
rb.velocity = new Vector2(moveHorizontal * moveSpeed, rb.velocity.y);
if (isGrounded && Input.GetButtonDown("Jump"))
{
rb.AddForce(Vector2.up * jump, ForceMode2D.Impulse);
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... ound-unity
Разрешить игроку прыгать только на земле Unity ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Персонаж продолжает прыгать, даже если он не на земле - как остановить это поведение?
Anonymous » » в форуме C# - 0 Ответы
- 1 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Персонаж продолжает прыгать, даже если он не на земле - как остановить это поведение?
Anonymous » » в форуме C# - 0 Ответы
- 0 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как подключить «меч» к игроку и разрешить вращение и взаимодействие с окружающей средой
Anonymous » » в форуме C# - 0 Ответы
- 5 Просмотры
-
Последнее сообщение Anonymous
-