и так, если лкм нажата, то координаты курсора равны переменной хранящей 3 значения
(не текущие координаты, а именно значения).
Если лкм не нажата, то курсор
создаётся, после чего, приравнивается Input.mousePosition, что является отклонением от угла экрана в пикселях). После чего, это отклонение преобразуется в координаты.
Vector2 Cursor = Input.mousePosition;
Cursor = Camera.main.ScreenToWorldPoint(Cursor);
if(MouseDown)
{
posPlayer = Cursor;
}
//логичней будет сделать так
public Vector2 Cursor;//публичные переменные принято писать с заглавной буквы
void Update()
{
if(MouseDown)
{
posPlayer = Camera.main.ScreenToWorldPoint( Input.mousePosition);
}
}
Еще логичней будет получить ссылку на конкретный объект или компонент, как это делать, смотри здесь.
https://habr.com/ru/post/128711/
В написанном коде, я этого не делал, так как давно не касался юнити и точно не помню как это записывается.