Как заставить командой какой-то объект лететь в сторону взгляда? 1.17.1 minecraft

ma
1

Мне надо что-бы я мог заспавнить моба и в любой момент запустить его в сторону взгляда,
как его заспавнить и так далее я знаю, но как сделать так чтобы он летел в сторону взгляда? Без настройки rotate и так далее? Просто посмотрел определённом направлении и он летел туда

Ал

При помощи Motion. Motion - это вектор движения, мгновенный импульс, инерция в Майнкрафте. Он задаётся при помощи трёх значений - координатных векторов. Командой можно задать только фиксированное значение:
{Motion:[0.0d, 0.5d, 0.0d]}

Но тебе нужно задать направление импульса, основываясь на взгляде игрока, то есть, динамическое значение. Это делается так же, как и разложение трёхмерного вектора по координатным осям - довольно сложно и почти не реализуемо в Майнкрафте ввиду отсутствия среди инструментов как функций тригонометрии, так и простого вычисления корня.
Но есть один хак - использование сущности-посредника и геометрический смысл вектора:

/summon [твоя сущность]

/execute rotated as [нужный игрок] positioned 0.0 0.0 0.0 positioned ^1.234 run summon minecraft: marker ~~~ {Tags:["motion_vector"]}

/data modify entity [твоя сущность] Motion[0] set from entity @e[type=marker, tag=motion_vector, limit=1] Pos[0]
/data modify entity [твоя сущность] Motion[1] set from entity @e[type=marker, tag=motion_vector, limit=1] Pos[1]
/data modify entity [твоя сущность] Motion[2] set from entity @e[type=marker, tag=motion_vector, limit=1] Pos[2]

/kill @e[type=marker, tag=motion_vector, limit=1]

("Импульс" в 1.234 блока взят для примера, туда можно любой лепить. В рамках разумного, конечно.)

Это работает за счёт того, что (в системе абсолютных координат) точка, смещённая на расстояние в 1.234 блока по локальной системе координат (относительно взгляда игрока) при совмещении центров систем имеет такие абсолютные координаты, которые всегда совпадают с уже разложенным на координатные составляющие вектором движения. Простая геометрическая хитрость позволяет избежать сложных математических расчётов.