yungbalykva
@yungbalykva
does it worth it?

Перестал прыгать спрайт в Unity, что делать?

Начал делать 2D - платформер для андроид, c# знаю на среднем уровне, в юнити вроде разобрался. Делал все по видео: "https://www.youtube.com/watch?v=sX0hhZT9wDg&list=P..." По началу всё хорошо работало, скрипт выполнялся, спрайт прыгал. Так как было задумано. Спустя время я решаю передвинуть платформу чуть ниже вместе с основным героем, и затем замечаю что спрайт перестал прыгать, в никакую. Бинд клавиши прыжка менял, скрипт правильный. Помогите, что делать?? Вот собственно скрипт:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class chelik : MonoBehaviour
{
    [SerializeField] float speed = 3f;
    [SerializeField] int lives = 5;
    [SerializeField] float jumpForce = 1.4f;
    bool Ground = false;

    Rigidbody2D rb;
    SpriteRenderer sprite;


    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetButton("Horizontal"))
            Run();
        if (Ground && Input.GetButton("Jump"))
            Jump();
    }

        void Awake()
    {
        rb = GetComponent<Rigidbody2D>();
        sprite = GetComponentInChildren<SpriteRenderer>();
    }

        void Run()
    {
        Vector3 dir = transform.right * Input.GetAxis("Horizontal");
        transform.position = Vector3.MoveTowards(transform.position, transform.position + dir, speed * Time.deltaTime);

        sprite.flipX = dir.x < 0.0f;
    }

        void Jump()
    {
        rb.AddForce(transform.up * jumpForce, ForceMode2D.Impulse);
    }

        void Grounded()
    {
        Collider2D[] collider = Physics2D.OverlapCircleAll(transform.position, 1f);
        Ground = collider.Length > 1;
    }

        void FixedUpdate()
    {
        Grounded();
    }


}


Может проблема в каких либо настройках Unity??
  • Вопрос задан
  • 136 просмотров
Пригласить эксперта
Ответы на вопрос 1
@morex972
я программирую занимаюсь спидкубингомю
я с rigidbody не очень разбираюсь, я больше по characterController ну если ты передвинул и перестал прыгать персонаж возможно спрайт персонажа застрял в платформе и не прыгает
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы