Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
注册
Advertisement

Template:Translation:未知参数。

命令方块
Command Block
命令方块
稀有度

Java版史诗
基岩版常见

创造标签页JE

管理员用品

创造分类BE

合适挖掘工具

Java版
基岩版

硬度

Java版-1
基岩版-1

爆炸抗性

Java版3,600,000
基岩版3,600,000

引燃几率

Java版0
基岩版0

烧毁几率

Java版0
基岩版0

熔岩可燃性

Java版
基岩版

窒息生物

Java版
基岩版

红石导体

Java版
基岩版

最大堆叠

Java版64
基岩版64

亮度

可再生

命名空间ID

command_block

命令方块(Command Blocks)是在被红石信号触发后能执行命令方块,这对冒险地图提供了极多的功能。

命令方块的放置的意图仅仅是为了建造地图用的,因此它只能通过命令获得/give <玩家名> command_block,并且在服务器上只能被在创造模式中的管理员更改。除此之外它们永远不会生成,无法被合成,也不会出现在创造模式物品栏中。

在单人模式中,只能通过指令获得。1.8之后的版本:/give <玩家名> command_block 之前的版本:/give <玩家名> 137 <数量> 或 /give <玩家名> minecraft:command_block 或者通过MOD获得

要想命令方块在多人游戏中能够使用,以下的数值必须在server.properties文件被设定:

  • enable-command-block必须被设为true
  • op-permission-level必须被设为2或更高(默认为4)

生存模式中破坏命令方块是不可能的,但可以用summon指令生成的爆炸强度为18,000,000的火球摧毁(前提是开启了作弊),它的爆炸抗性和基岩一样。它们不能被活塞推动。

用途

命令方块能够在接收红石信号后执行系统命令,例如给予玩家物品经验值[1]

如果想改变方块执行的命令,右键点击,会出现一个界面。

在玩家名称的位置,可以使用下列缩写:

缩写 功能
@p 距离最近的玩家
@r 随机玩家
@e 所有实体(1.8中)
@a 所有玩家

设置命令的时候,使用在控制台中一样的格式输入——你必须确定命令作用的目标,所以不可能使用例如/kill这种没有玩家变量的命令(在1.8快照中,/kill可以拥有玩家变量)。

例如,改变最近的玩家游戏模式为生存,可以用如下格式:/gamemode survival @p。值得注意的是在生存/冒险模式下虽然可以打开控制方块的命令修改界面,但是不可以修改指令。

查看新的命令方块用途,查看教程/命令方块

游戏规则

使用方法:/gamerule <gamerule> <true or false>

游戏规则 作用
commandBlockOutput 启用/禁用命令执行时在控制台中的文本提示
doFireTick 启用/禁用火的蔓延
doMobLoot 启用/禁用生物掉落物
doMobSpawning 启用/禁用生物生成(刷怪蛋和刷怪箱不受影响)
doTileDrops 启用/禁用方块被破坏时掉落物品(包括TNT破坏的)
keepInventory 启用/禁用死亡后对物品栏和经验的保存
mobGriefing 启用/禁用怪物对方块的破坏(TNT不在此限)
naturalRegeneration 启用/禁用自然生命恢复
doDaylightCycle 启用/禁用日夜交替(关闭的话时间会停止)

禁用的命令

下列命令无法使用命令方块执行:

命令 禁用的理由
/kick 由于@a,本命令可用于禁止任何服务器的传入连接。
/ban
/op 这样玩家就能设自己为OP了。
/deop 这样玩家就能撤销OP了。
/stop 这样玩家就可以关闭服务器了。
  • 然而“/me”命令仍然有效,而且可以全服务器广播信息。命令方块会把自己看做“@”。
  • 在14w02a以后,/kill命令可以在命令方块中激活,之前的版本会提示"不能使用此指令,命令方块不是玩家"的提示(由于/kill已经可以指定目标,所以命令方块仅仅是无法清除命令方块)

附加参数

在定义目标(@a)之后,你也可以决定是否使用附加参数。 使用方法为: @<selector>[<argument>=<value>,<argument>=<value>]

注意:请确保在参数和逗号间没有空格。

参数 功能
x 搜索中心的X坐标。
y 搜索中心的Y坐标。
z 搜索中心的Z坐标。
dx 搜索范围的x平移量。
dy 搜索范围的y平移量。
dz 搜索范围的z平移量。
r 最大搜索半径
rm 最小搜索半径
rx 最大x轴搜索半径
rxm 最小x轴搜索半径
ry 最大y轴搜索半径
rym 最小y轴搜索半径
m 玩家的游戏模式。0=生存,1=创造,2=冒险 3=旁观模式
c 玩家数量。如果数值为负,将从最远玩家开始挑。
l 目标玩家可拥有的最大等级
lm 目标玩家可拥有的最小等级
score_name 在记分板目标"name"中,玩家可拥有的最大分数
score_name_min 在记分板目标"name"中,玩家可拥有的最小分数
team 测试此玩家是否存在于所指定的队伍内,在队伍名前添加"!"将只测试不在此队里的玩家。提供空的队伍名将测试所有没有队伍的玩家。
name 指定只有这个名字的玩家。使用name=!而非将只测试没有此名字的玩家。(举例: name=!Notch)
type 搜索此类型的实体。 (举例: type=EntityHorse) 这里可以使用 =! (已说明).
id 搜索拥有此UUID的实体。 (举例: id=97ef2f99-d4df-4dd4-9939-c59708fbd0d6) 实体的UUID可以在使用summon命令的时候利用NBT标签UUIDMost and UUIDLeast来定义

示例: @p[x=1,y=30,z=26,r=10,rm=2,m=1,c=3,l=25,lm=3]

另外,坐标跟最大搜索半径依照顺序为[x,y,z,r]且为参数的1~4位时,可以将参数的标签省略

@p[1,30,26,10,rm=2,m=1,c=3,l=25,lm=3,score_Kills_min=1,score_Deaths=2,team=Red]

因为参数"c"使用了一个以"距离"排序的玩家列表,所以当 @p[c=-1] 将会有从最远玩家开始执行命令的特殊效果

历史

r
12w32a12w32a中该方块被命名为命令方块并加入游戏,同时还有一些新命令。
12w38a目标参数升级,允许定义更多条件。详见https://gist.github.com/3736487
12w39b加入更多目标参数:l、lm与rm。[2]
13w03a加入/testfor命令,使得当命令执行成功时输出比较器信号。
13w04a在聊天窗口中,命令方块将使用自己的名称。
加入新的命令特性:计分板。
14w02a命令方块已经可以激活/kill命令
增加了新的代替语@e,代指所有实体

画廊

你知道吗

  • doFireTick游戏规则不会影响岩浆直接导致的燃烧。
  • doFireTick游戏规则为true时,火不会烧掉方块也不会自然熄灭和蔓延。
  • 用任何工具都无法采集命令方块。
  • 某命令的具体使用方法可以通过打入此命令但并不附加参数来显示,例如:/tp 、/gamerule 、/time 等。
  • 可以不用打“/”就可以在命令方块里进行操作。

参考

Advertisement