Задать вопрос
Alokin
@Alokin
Задаю тупые вопросы ибо сам не отличаюсь мозгами

Написал код движения персонажа, но он не работает, что делать?

Больше часа ломал голову, почему не работает код. Все начиналось с того, что я захотел сделать так, чтобы персонаж поворачивался в сторону движения (игра 2д платформер). В итоге код не работает как бы я не пробовал его исправлять. Помогите пожалуйста

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

public class Player : MonoBehaviour
{

    Rigidbody2D rb;

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

    void Update()
    {
        if (Input.GetKeyDown (KeyCode.Space) && CanJump())
        {
            jump();
        }
    }

    void FixedUpdate()
    {
        rb.velocity = new Vector2(Input.GetAxis("Horizontal") * 6f, rb.velocity.y);
        if (rb.velocity >= 0) {

            RotateRight();
        }
        else (rb.velocity < 0) {

            RotateLeft();
        }

    }

    void jump()
    {
        rb.AddForce(transform.up * 5f, ForceMode2D.Impulse);
    }

    void RotateLeft()
    {
        if (Input.GetAxis("Horizontal") < 0)
            transform.localRotation = Quaternion.Euler(0, 0, 0)
    }

    void RotateRight()
    {
        if (Input.GetAxis("Horizontal") > 0)
            transform.localRotation = Quaternion.Euler(0, 180, 0)
    }

}
  • Вопрос задан
  • 1304 просмотра
Подписаться 1 Средний 4 комментария
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы