Goance
本帖最后由 Goance 于 2021-3-25 20:34 编辑

这些全都用不了啊

execute as @a[x=1,dx=1] run ...
execute if block ~ ~-1 ~ minecraft:grass_block run ..
execute if blocks <坐标1> <坐标1> <坐标2> all run ...


有没有大佬帮忙解决一下【版本:1.16.3】


【附加小问题:胡萝卜钓竿右键怎么触发指令啊】

尸先peng
/scoreboard objectives add carrot minecraft.used:minecraft.carrot_on_a_stick

/execute as @a at @s if score @s carrot matches 1 run 【填指令】
/scoreboard players set @a[scores={carrot=1}] carrot 0

版本:1.14.4


1.12的原理也是一样的,用计分板检测

钠钠钠镓
as仅能改变执行者,需要补充一条at @s改变执行位置。同理,if block前需增加at改变执行位置,否则检测的是命令方块的~ ~-1 ~处方块,且指令是以命令方块为中心执行。

Dahesor
第一行。
理论上讲之填x=应该是可以的,但是这么做会把y与z默认在命令方块的坐标。
至于dx,你在不填dydz是可以用么?
应该是能运行,但是有什么结果我不太清楚。
如果你确定只填dx是你想要的,我能看出来的唯一问题就是你的逗号是中文的逗号,切错输入法。

jason_sun
  1. execute as @a as @s[x=1,dx=1] run ...
  2. execute as @a at @s if block ~ ~-1 ~ minecraft:grass_block run ..
  3. execute if blocks <坐标1a> <坐标1b> <坐标2a> all run ...
复制代码

最后一个应该没问题

Goance
尸先peng 发表于 2021-3-25 20:16
/scoreboard objectives add carrot minecraft.used:minecraft.carrot_on_a_stick

{:rcb_back ...

什么意思呢大佬【求解释】

尸先peng
Goance 发表于 2021-3-26 21:36
什么意思呢大佬【求解释】


这个是右键监测的指令
只要在命令方块里面输入上述指令即可使用
(注意,命令方块是连起来的,而且链命令方块是条件制约且默认打开的)

然后把【填指令】字样替换为你所需要的指令
例子:
execute as @a at @s if score @s carrot matches 1 run say 1

当你右键一下胡萝卜钓竿是就会执行一次say 1的指令

Goance
本帖最后由 Goance 于 2021-3-26 21:46 编辑
尸先peng 发表于 2021-3-26 21:43
这个是右键监测的指令
只要在命令方块里面输入上述指令即可使用
(注意,命令方块{:chain_cb_ ...

不是啊,我的意思是每个指令单词的作用诶[第一句就行]

尸先peng
本帖最后由 尸先peng 于 2021-3-26 22:14 编辑
Goance 发表于 2021-3-26 21:45
不是啊,我的意思是每个指令单词的作用诶[第一句就行]


/scoreboard objectives add carrot minecraft.used:minecraft.carrot_on_a_stick
新建一个名为carrot的使用胡萝卜钓竿计分板

机翻模式:/计分板 目标 添加计分板 计分板名称为“carrot” 计分板类型为“我的世界:使用:胡萝卜钓竿”


/execute as @a at @s if score @s carrot matches 1 run 【填指令】
当检测到任何一个玩家计分板carrot为1时,执行指令【填指令】

机翻模式:/检测 检测对象 所有玩家 执行者 当前玩家 如果 当前玩家 名为“carrot”的计分板 等于 1 执行指令 【填指令】


/scoreboard players set @a[scores={carrot=1}] carrot 0
将所有计分板carrot为1的玩家的计分板carrot设为0

机翻模式:/计分板 玩家 设置 所有玩家[计分板={名为“carrot”的计分板数值=1}] 名为“carrot”的计分板 数值设置为0

Goance
尸先peng 发表于 2021-3-26 22:07
/scoreboard objectives add carrot minecraft.used:minecraft.carrot_on_a_stick
新建一个 ...

谢谢,那怎么检测分数是否大于1呢

尸先peng
Goance 发表于 2021-3-27 09:54
谢谢,那怎么检测分数是否大于1呢

那就这样↓
/execute as @a[scores={correct=1..}] at @s 1 run 【填指令】

注:
在[scores={correct=1..}]里面
1.. 为 大于等于1
..1 为 小于等于1
2..5 为 大于等于2且小于等于5
1 为 等于1

Goance
尸先peng 发表于 2021-3-27 10:04
那就这样↓
/execute as @a[scores={correct=1..}] at @s 1 run 【填指令】

用不了啊...是版本问题吗
.. 好像1.16已经没有了】

尸先peng
Goance 发表于 2021-3-27 10:08
用不了啊...是版本问题吗
【 .. 好像1.16已经没有了】

哦,对不起刚才打错了,多了个“1”

现在没有问题了
execute as @a[scores={correct=1..}] at @s run 【填指令】

Goance
尸先peng 发表于 2021-3-27 10:18
哦,对不起刚才打错了,多了个“1”

现在没有问题了

em,我那时也把1给删了,
我的意思是删过的指令也不行啊...
是版本问题吗

尸先peng
Goance 发表于 2021-3-27 10:22
em,我那时也把1给删了,
我的意思是删过的指令也不行啊...
是版本问题吗 ...

我试过没有问题的啊,而且我记得1.16好像也没有改过execute……

是不是你的指令有问题啊?你把你输入的指令发给我看看?

Goance
本帖最后由 Goance 于 2021-3-27 10:45 编辑
尸先peng 发表于 2021-3-27 10:35
我试过没有问题的啊,而且我记得1.16好像也没有改过execute……

是不是你的指令有问题啊?你把你输入的 ...


没用保持开启,这里已经用红石保持它开启了




尸先peng
Goance 发表于 2021-3-27 10:41
没用保持开启,这里已经用红石保持它开启了

emmmmm……我好像又弄错了
原来的计分板名字是carrot

你改成
/execute as @a[scores={carrot=0..}] at @s run kill @s
就没有问题了

Goance
尸先peng 发表于 2021-3-27 10:55
emmmmm……我好像又弄错了
原来的计分板名字是carrot

ohh,谢谢大佬

Goance
尸先peng 发表于 2021-3-25 19:44
emmmmm……我好像又弄错了
原来的计分板名字是carrot

但是我之前点了很多下胡萝卜钓竿,现在一直死怎么办啊

尸先peng
Goance 发表于 2021-3-27 11:19
但是我之前点了很多下胡萝卜钓竿,现在一直死怎么办啊

把这个改一下
/scoreboard players set @a[scores={carrot=1}] carrot 0

改成这样
/scoreboard players set @a[scores={carrot=1..}] carrot 0

Goance
尸先peng 发表于 2021-3-27 11:36
把这个改一下
/scoreboard players set @a[scores={carrot=1}] carrot 0

我一直在死,动不了啊...【真不知道我当时为什么要用kill】

Goance
尸先peng 发表于 2021-3-27 11:36
把这个改一下
/scoreboard players set @a[scores={carrot=1}] carrot 0

谢谢不用了,已经把地图删了【手残】
打算重建一个

尸先peng
Goance 发表于 2021-3-27 11:57
我一直在死,动不了啊...【真不知道我当时为什么要用kill】

这里给你一个数据包,把它放到saves\【地图名称】\datapacks文件夹里面
SKDBS_pack.zip (2.09 KB, 下载次数: 1)


然后重新打开地图就可以了

(用完后记得把数据包删掉,不然后有bug)

Goance
尸先peng 发表于 2021-3-27 12:06
这里给你一个数据包,把它放到saves\【地图名称】\datapacks文件夹里面

不是啊,我是在覆盖存档的时候不小心删的
只能重建了...

Goance
尸先peng 发表于 2021-3-27 12:06
这里给你一个数据包,把它放到saves\【地图名称】\datapacks文件夹里面

在吗...重建了一个世界,然后又一直死
这个数据包也没用啊...

尸先peng
Goance 发表于 2021-3-27 16:49
在吗...重建了一个世界,然后又一直死
这个数据包也没用啊...

重建了世界啊……
你知道死的原因吗?如果不知道的画很难办的……

Goance
尸先peng 发表于 2021-3-27 17:11
重建了世界啊……
你知道死的原因吗?如果不知道的画很难办的……

哦哦,已经解决了
再开另一个离线模式的号去挖掉命令方块就行
【ps:前面那循环命令方块的指令是0..,我改成1..就不会死了】