Синтаксис:
Используется csharp
public Grid grid;
void Update()
{
if (Input.GetMouseButtonDown(0))
{
Vector3 pos = Camera.main.ScreenToWorldPoint(Input.mousePosition); // координата клика
Vector3Int posInt = grid.LocalToCell(pos); // координата ячейки
Vector3 cell = posInt + new Vector3(0.5f, 0.5f, 0); // координата центра ячейки (сюда должен попасть игрок)
}
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
Vector3 pos = Camera.main.ScreenToWorldPoint(Input.mousePosition); // координата клика
Vector3Int posInt = grid.LocalToCell(pos); // координата ячейки
Vector3 cell = posInt + new Vector3(0.5f, 0.5f, 0); // координата центра ячейки (сюда должен попасть игрок)
}
}
Вопрос только в том, как отследить, что клетка подходит для хода и передвинуть персонажа туда(не телепортировать)? Отследить, что подходит я то могу, но песле первого передвижения координата персонажа становится не 5.5 а 5.500001 и проверка не работает. Двигаю с помощью Vector3.Lerp(). Заранее спасибо за помощь)