高版本有什么办法 2个玩家或者多个玩家 距离超过指定一名或者多名玩家的一定范围 而触发指令 传送到指定的玩家
我尝试写了个execute的指令
execute at @a if entity 玩家 at @a[dx=50,team=!2] run tp ~ ~ ~
意思是 检测指定玩家 50格内 没有队伍2的话触发 tp
但是没用。。。。
求大佬帮忙
我尝试写了个execute的指令
execute at @a if entity 玩家 at @a[dx=50,team=!2] run tp ~ ~ ~
意思是 检测指定玩家 50格内 没有队伍2的话触发 tp
但是没用。。。。
求大佬帮忙
 本帖最后由 Light² 于 2020-12-10 08:14 编辑 
/execute as 指定玩家 at @s unless entity @a[distance=..50,team=2] run tp ~ ~ ~
/execute as 指定玩家 at @s unless entity @a[distance=..50,team=2] run tp ~ ~ ~
Light² 发表于 2020-12-10 08:05
/execute as 指定玩家 at @s unless entity @a[distance=..50,team=2] run tp ~ ~ ~
可以用了! 但是当走远了 服务器的命令方块就不触发了 有没有什么办法可以服务器不受限制 一直触发命令方块
opsdyu 发表于 2020-12-10 11:04
可以用了! 但是当走远了 服务器的命令方块就不触发了 有没有什么办法可以服务器不受限制 一直触发命令方 ...
把命令方块放在同一个区块,站在命令方块那输入/forceload add ~ ~
Light² 发表于 2020-12-10 11:24
把命令方块放在同一个区块,站在命令方块那输入/forceload add ~ ~
如果想触发后 tp到指定玩家的屁股后面一定距离 这个有办法吗
 本帖最后由 Chelover_C60 于 2020-12-10 16:28 编辑 
复制代码其中-10表示玩家后方10格,命令含义为当玩家1附近50格内无法找到队伍2的玩家时,将玩家1传送至玩家2的后方10格
但如果地势不平坦地话,可能导致玩家被tp到方块内,解决办法是tp后使用spreadplayers改变玩家1的位置
复制代码该命令传送后执行一次即可,不要一直执行,否则会出大问题
↓@Light² 我看了下你的回复,你好像是检测不到玩家的时候没改基准点导致原地tp吧,这个时候你用局部坐标也就会只是基于原位置后退
opsdyu 发表于 2020-12-10 12:23
如果想触发后 tp到指定玩家的屁股后面一定距离 这个有办法吗
- execute as <玩家1> at @s unless entity @a[distance=..50,team=!2] at <玩家2> rotated ~ 0 run tp ^ ^ ^-10
但如果地势不平坦地话,可能导致玩家被tp到方块内,解决办法是tp后使用spreadplayers改变玩家1的位置
- execute as <玩家1> at @s run spreadplayers ~ ~ 1 1 false @s
↓@Light² 我看了下你的回复,你好像是检测不到玩家的时候没改基准点导致原地tp吧,这个时候你用局部坐标也就会只是基于原位置后退
opsdyu 发表于 2020-12-10 11:04
可以用了! 但是当走远了 服务器的命令方块就不触发了 有没有什么办法可以服务器不受限制 一直触发命令方 ...
如果是高版本建议使用数据包