萌新制作,肯定会有雷同,想必大佬们一看就懂!
~~~~~~~~~~~~~~~~~~~~~分割线~~~~~~~~~~~~~~~~~~~~~~
话不多说放出指令:
/scoreboard objectives add cy dummy
创建计分板的作用是为了后面识别分数(可配合金融系统给予人作为领地)
/testfor @a[score_cy=1,score_cy_min=1,dx=50,dy=50,dz=50]
检测cy分数为1的玩家是否进入了以此命令方块为起点,x轴正方向50,y轴正方向50,
z轴正方向50的区域,命令方块设置:(循环)(不受制约)(保持开启)
/gamemode 0 @a[score_cy_min=1,score_cy=1,m=!0]
若上一个检测信号为真则改变cy分数为1,游戏模式不为0的人的模式为0
命令方块设置:(连锁)(条件制约)(保持开启)
~~~~~~~~~~~~~~~~~~检测玩家出去部分~~~~~~~~~~~~~~~~~
用比较器与红石火把制作非门来更改不在此区域的玩家游戏模式
/gamemode 2 @a[score_cy_min=1,score_cy=1,m=!2]
更改所有cy分数为1,模式不为2的玩家模式为2
命令方块设置:(脉冲)(不受制约)(红石控制)
上面代码中的区域大小与模式都可以更改,可以集中在出生点区块(在检测的命令方块里添
加对应的x y z轴坐标,更改每个方块里不同领地对应的cy数)
只需要利用经融系统,通过购买的方式给予玩家某一分数,即可让玩家经过某一区域时更改为
某一模式。
因为用到了非门,所以在其他区域更改模式,或利用传送(装置设置在出生点的前提)离开,
都不会受到影响(前提此分数只有唯一的玩家拥有)
有问题大家可以在评论区讨论哈!
~~~~~~~~~~~~~~~~~~~~~分割线~~~~~~~~~~~~~~~~~~~~~~
高玩翔翼之刃提几个建议:
1、感觉目前你的这套系统存在逻辑错误。负责执行模式切换的两个命令方块实际上是对全部加在区块的玩家执行的,而不是只对范围内的玩家
(前置的testfor命令方块的判定条件和后面实际执行的命令方块其实是没有关系的。)
现在这套系统的实际效果是:只要有cy=1的玩家在范围内,其他所有cy不等于1的玩家会不断在两个模式之间切换。
2、建议在目标选择器参数添加“tag=!op”,然后给服主和管理者使用scoreboard命令添加名为op的tag,防止服主和管理者受该系统影响。
3、如果这套系统用于圈地的话,光是设置成冒险模式是不够的。因为箱子还是可以打开,东西还是可以拿。建议改成强制传送出范围。