Проблема с персонажем в Unity 2D

Я обучаюсь Unity по видеоурокам. У меня проблема с врагом, он должен ходить от блока к блоку, но почему-то он идет именно в право непрерывно.(делаю платформер)

Вот код этого врага:

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

public class raliepodvish : vsemonstruiplaer
{
    private float speed = 3.5f;
    private Vector3 dir;
    private SpriteRenderer sprite;
    private void Start()
    {
        dir = transform.right;
    }
    private void Update()
    {
        Move();
    }
    private void Move()
    {
        Collider2D[] colliders = Physics2D.OverlapCircleAll(transform.position + transform.up * 0.1f + transform.right * dir.x * 0.7f, 0.1f);
        if (colliders.Length > 0) dir *= -1f;
        transform.position = Vector3.MoveTowards(transform.position, transform.position + dir, Time.deltaTime);
    }
    private void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject == plaeyr.Instance.gameObject)
        {
            plaeyr.Instance.GetDamage();
        }
    }
}

В чем проблема? Объясните подробно.


Ответы (0 шт):