Laughedqiu 发表于 2022-7-18 03:08:52

[MCBE]简易版的服务器随机传送

本帖最后由 Laughedqiu 于 2022-7-18 03:11 编辑

适用版本:BE1.19.0.05及以下(网易BE租赁服用不了,1.19.0.05以上要修改execute指令格式,JE用不了)   
注意:网易be使用此指令会崩服   
注意:网易be使用此指令会崩服   
注意:网易be使用此指令会崩服   
(重要的事情说三遍)网易be有解决方法,就是使用计分板的random函数   
                                             
这个bug挺多,比如说会传送到水里或者岩浆里,建议配合死亡不掉落使用
---------分割线---------   
制作教程:
主城 (见P1图片)
op指令区 (见P2图片)                                             
注:①“#”后面的字符都是注释,不用输入到命令方块里②此处的连锁命令方块均保持活动,箭头方向后面有缺口的为有条件的命令方块,没有的为无条件的命令方块(注意方向)③除B2命令方块已选项延迟为10,其他都为0   
-----分割线-----   
A1:/setblock -5 2 2 redstone_block#红石块的位置为op指令区的红羊毛的坐标A2:/execute @a ~~~ playsound firework.launch @p ~~~#播放一个烟花发射的音效,提示要开始传送了   
B1:/execute @e ~~~ detect ~~-1~ air 0 tp @p ~~-1~#因为spreadplayers指令对未加载的区块默认传送Y坐标为320(1.18以下为256),所以要做防掉落伤害
B2:/tag @a add tpset#给在主城靠近随机传送开关的玩家一个tag标签(限定传送对象)   
B3:/title @a title 正在随机传送,请稍等#/title指令没什么好说的,但是选择器要带tag   
B4:/spreadplayers 0 0 45 12000 @a#随机传送的关键指令,其中45是随机传送的分散值,12000为传送范围(圆形)要根据实际情况修改   
#B1命令方块后面接了一个比较器,如果玩家在空中比较器发出信号熄灭红石火把,当玩家落地后红石火把发出信号,激活B5,B6,B7和C2,C3   
B5:/setblock -5 2 2 air#把红石块替换成空气B6:/title @a title 传送完成!#tp完成的提示   
B7:/execute @a ~~~ tag @a remove tpset#实际上单tag就可以,接execute防止出错,这里的作用是清除tag标签,结束循环   
C1:/effect @e darkness 1 5 true#给tp的玩家一个黑暗效果(低版本改成失明效果也可以,黑暗效果是直接修改伽马值,效果更好),1为持续时间(单位:秒),5为等级,自己可以调整   
C2:/execute @e ~~~ playsound ambient.weather.lightning.impact @a ~~~#给tp完成的玩家发送一个闪电击中地面的音效   
C3:/execute @a ~~~ particle minecraft:mob_portal ~~~#给tp完成的玩家一个末影珍珠的传送粒子   
此时,整个循环结束,你传送到了一些意想不到的地方   
--------分割线--------   
但是整个指令有一些问题   
①比如说没有安全位置检测,本人实测会传送到水里或者岩浆里,但是不会摔死   
②没有相同位置检测,可能会传送到相同的位置,这个就要使用二分法了,很麻烦   
③一堆人传送的时候会把一堆人传送到同一个地方,可以改成@p选择器
---END---

Devenir 发表于 2022-7-18 03:10:18

教程挺不错啊,支持

Dazhutizi 发表于 2022-7-18 03:12:51

我最喜欢你了[哔哩_爱心]谁会拒绝这么可爱还会指令的男孩子啊啊啊[哔哩_爱心]
页: [1]
查看完整版本: [MCBE]简易版的服务器随机传送