Проблема с персонажем в 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();
}
}
}
В чем проблема? Объясните подробно.