@L1meDelayProgram

Как сделать, чтобы персонаж поворачивался в сторону движения в Unity(код поворота уже есть но работает не коректно)?

скажите пожалуйста как сделать так что бы при ходьбе персонаж поворачивался на месте а не телепортировался(тоесть я нажимаю на кнопку ходьбы в лево,а персонаж в это время повёрнут в право и он телепортируется на какое то расстояние в право (и на оборот) и только потом поворачивается в лево) ответьте пожалуйста. ВСЕМ добра.
ВОТ сам код

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class playerControl : MonoBehaviour
{
    public float speed;
    public float jumpForce;
    private float moveInput;

    private Rigidbody2D rb;

    private bool facingRight = true;

    private void Start()
    {
        rb = GetComponent<Rigidbody2D>();
    }

    private void FixedUpdate()
    {
        moveInput = Input.GetAxis("Horizontal");
        rb.velocity = new Vector2(moveInput * speed, rb.velocity.y);
        if(facingRight == false && moveInput > 0)
        {
            Flip();
        }
        else if(facingRight == true && moveInput < 0)
        {
            Flip();
        }
    }
    void Flip()
    {
        facingRight = !facingRight;
        Vector3 Scaler = transform.localScale;
        Scaler.x *= -1;
        transform.localScale = Scaler;
    }
}
  • Вопрос задан
  • 76 просмотров
Пригласить эксперта
Ответы на вопрос 1
DanceM
@DanceM Куратор тега Unity
Кто хочет -ищет способ, кто не хочет -ищет причину
Знаете разницу между числами 0 и 0f? Int и float? Вот думаю в этом и проблема.
Ответ написан
Ваш ответ на вопрос

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

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