
레이저 포인터의 기본 메커니즘은 다음과 같습니다.
: (repeat) execute at <대상> run summon <물체 : armor_stand, area_effect_cloud 등 다루기 쉬운 것> ~ ~ ~ {Tags:["L"],Invisible:1,NoGravity:1}
: (repeat) execute as <대상> at <대상> run tp @e[tag=L,distance=0.001,limit=1] ~ ~1.5 ~ ~ ~
: (repeat) execute at @e[tag=L] run particle <minecraft:입자> ~ ~0.2 ~ 0 0 0 0 <개수> force @a
: (repeat) execute as @e[tag=L] at @s anchored feet if block ^ ^ ^1 air if block ^ ^ ^2 ------ if block ^ ^ ^n-1 air if block ^ ^ ^n air run tp @s ^ ^ ^n
위 명령어를 n=0.2, 0.5, 1, 2, 3.... 이 되도록 이어가면 됩니다. 또한 if block ^ ^ ^a.bc 등 소숫점으로 할 수 있습니다. if block ^ ^ ^(숫자) 에 대해 (숫자1), (숫자2) --- 사이의 간격이 좁을 수록 매끄럽게 작동합니다.
: (repeat) execute at <대상> run kill @e[tag=R,distance=m..,limit=1] [[0.001<m<n 최소값]]
위 사진은 {n=10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0.5, 0.2}로 설정했으며, 복사 및 붙여넣기의 용이함을 위해 밑 접은 글에 적어놓았습니다. 또한 물체로 minecraft:area_effect_cloud를 사용했습니다. 이 경우 마지막 kill 명령어를 필요로 하지 않습니다. 레이저 포인터의 사정거리는 해당 n의 총합 입니다.
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^10 air if block ^ ^ ^9 air if block ^ ^ ^8 air if block ^ ^ ^7 air if block ^ ^ ^6 air if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^10
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^9 air if block ^ ^ ^8 air if block ^ ^ ^7 air if block ^ ^ ^6 air if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^9
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^8 air if block ^ ^ ^7 air if block ^ ^ ^6 air if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^8
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^7 air if block ^ ^ ^6 air if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^7
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^6 air if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^6
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^5 air if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^5
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^4 air if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^4
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^3 air if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^3
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^2 air if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^2
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^1 air run tp @e[tag=L] ^ ^ ^1
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^0.5 air run tp @e[tag=L] ^ ^ ^0.5
execute as @e[tag=L] at @s anchored feet if block ^ ^ ^0.2 air run tp @e[tag=L] ^ ^ ^0.2
레이저 포인터 작동 원리는 다음과 같습니다.
1. 대상에게 물체가 소환되고, 물체는 대상의 눈높이(1.4=player)로 tp하며 같은 방향을 바라봄
2-n. 물체의 정면으로 1, 2, 3 ... n-1, n칸 앞에 블럭이 없다면 n칸 앞으로 tp
2-m. 물체의 정면으로 1, 2, 3 ... n-1칸 앞에 블럭이 없다면 n-1칸 앞으로 tp
....
2-c. 물체의 정면으로 1칸 앞에 블럭이 없다면 1칸 앞으로 tp
2-b. 물체의 정면으로 0.5칸 앞에 블럭이 없다면 1칸 앞으로 tp
2-a. 물체의 정면으로 0.2칸 앞에 블럭이 없다면 1칸 앞으로 tp
'마인크래프트 > 명령어 응용' 카테고리의 다른 글
minecraft 체력 bossbar (0) | 2021.07.30 |
---|---|
minecraft Owner (0) | 2021.07.30 |
minecraft 내 시선으로 날아가는 투사체(上) (1) | 2020.12.27 |
minecraft 타이머 (0) | 2020.12.27 |
minecraft 내 시선으로 날아가는 투사체(下) (0) | 2020.08.15 |
'마인크래프트/명령어 응용'의 다른글
- 현재글minecraft 레이저 포인터