Проблемы с последовательным движением при клике мышки
Добавлено: 02 окт 2022, 02:45
Доброго времни суток. Я совсем зеленый ещё и мне требуеться помощь. Есть проблема с реализацией движения при клике мыши. На данный момент реализовано следующее: тыкаем в указанную точку - объект движется к ней. Если в момент движения указать другую точку объект забудет о первой и сразу напрамиться к новой цели. Задача сделать так, что бы обьект обошел все отмеченные кликом точки, т.е. если мы кликаем в трех разных местах обект должен дойти сначала до 1 точки, потом пойти ко 2, далее к 3. К сожалению так и не нашёл никакой информации как это можно реализовать, самостоятельно выходит неочень. Ниже код с реализации движения на данный момент. Благодарю.
Синтаксис:
Используется csharp
public float speed = 10f;
Vector2 lastClickedPos;
bool moving;
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
lastClickedPos =(Camera.main.ScreenToWorldPoint(Input.mousePosition));
Debug.Log(lastClickedPos);
moving = true;
}
if (moving && (Vector2)transform.position != lastClickedPos)
{
float step = speed * Time.deltaTime;
transform.position = Vector2.MoveTowards(transform.position, lastClickedPos, step);
}
else
{
moving = false;
}
}
Vector2 lastClickedPos;
bool moving;
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
lastClickedPos =(Camera.main.ScreenToWorldPoint(Input.mousePosition));
Debug.Log(lastClickedPos);
moving = true;
}
if (moving && (Vector2)transform.position != lastClickedPos)
{
float step = speed * Time.deltaTime;
transform.position = Vector2.MoveTowards(transform.position, lastClickedPos, step);
}
else
{
moving = false;
}
}