Перемещение объекта мышкой с ограничением
Добавлено: 23 сен 2021, 21:08
Здравствуйте, помогите решить казалось бы простую задачу. Нужно перемещать объект drag & drop в пределах поля. Для наглядности приложил картинку. Тут синий квадратик можно перемещать по левой стороне, в пределах всего поля, но нельзя переместить за пределы красной черты, черта может смещаться. Пробовал сделать что то типо того
где wallPos позиция красной черты, но понятное дело при достижении красной черты, он проходит ее и больше им не пошевелить. Задача вроде простая, но что то у меня в голову ни чего не приходит. Пробовал сделать через срабатывание триггеров, но тогда объект может проскакивать красную черту.
Синтаксис:
Используется csharp
public void OnDrag(PointerEventData eventData)
{
Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
if (transform.position.x < wallPos)
transform.Translate(mousePosition);
}
{
Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
if (transform.position.x < wallPos)
transform.Translate(mousePosition);
}
где wallPos позиция красной черты, но понятное дело при достижении красной черты, он проходит ее и больше им не пошевелить. Задача вроде простая, но что то у меня в голову ни чего не приходит. Пробовал сделать через срабатывание триггеров, но тогда объект может проскакивать красную черту.