你可以去查
{{BlockTileEntity
|image=Impulse Command Block。gif; Chain Command Block。gif; Repeating Command Block。gif
|image2=Conditional Impulse Command Block。
gif; Conditional Chain Command Block。gif; Conditional Repeating Command Block。gif
|invimage=Command Block
|invimage2=Chain Command Block
|invimage3=Repeating Command Block
|type=方块实体
|gravity=否
|dirt=否
|transparent=否
|light=否
|tool=None
|renewable=否
|stackable=是(64)
|entityid=Control
|multiplevers= 见 [[#历史|历史]]
|multipledata=见 [[#数据值]]
|nameid=见 [[#数据值]]
}}
{{msgbox
|title=为了避免啰嗦,以下段落可能对带类型的命令方块进行缩写
|text=例如,连锁型命令方块称为连锁方块,等等}}
{{q|所以这些方块可以用红石信号来运行命令编辑符。
使用恰当的命令,一切皆有可能|[[Jeb]]|命令方块 {{tweet|jeb_|}}||Jeb twitter。jpg}}
'''命令方块(Command Block)'''是一种用以执行[[命令]]的[[方块]]。
因为生存模式中只能通过作弊获得,它常用在多人服务器与自订地图中。
== 获取 ==
命令方块可以通过{{control|pick block|text=选取方块}}键或各种[[命令]],比如{{cmd|give @p minecraft:command_block}}获得。
命令方块不在[[创造模式]]物品栏中,不能在[[生存模式]]中或非管理员身份破坏,不能被点燃,有和[[基岩]]一样的[[爆炸抗性]]。命令方块不能被[[活塞]]推动。
== 用途 ==
{{see also|命令|教程/命令方块}}
命令方块可以被[[红石电路|红石信号]]所[[#激活|开启]]。
此项没有权限限制,可以被一些通常情况不能使用命令的玩家执行一个特定的命令(比如,允许所有人通过{{cmd|give}}获得一件特定的物品,而不能让他们用 /give获得任何他们想要的东西)。
命令方块会拥有方向(“facing”),决定哪个连锁方块会受到感应,哪个条件制约模式的命令方块执行命令会受其控制。
=== 设置 ===
[[File:Command Block GUI。png|thumb|命令方块GUI]]
要输入或修改命令,对命令方块点击{{control|use|text=使用}}键以打开 '''命令方块GUI''' (图形用户界面)。
GUI只会在玩家处于[[创造模式]], 拥有相关权限才会打开。在单机游戏里,作弊必须开启使得可以编辑命令方块。在 [[多人游戏]]中,只能由创造模式中的[[管理员]]所编辑。为了使命令方块能工作,以下在 [[server。properties]] 的配置必须设置为:
* enable-command-block 必须为true
* op-permission-level 必须为2 及以上 (默认为 4)
;控制台命令
:命令可被输入到第一个文本框。
命令方块的命令长度限定在32,500个字符以内,但这个文本框一次只能显示其中的一小段。自从1。9,按 {{key|tab}} 可以补全命令且循环代入可选项。
: 命令方块内的命令'''不'''需要加斜杠前缀(/),就像在聊天框使用时的那样,不过加了也依旧能用。
:在控制台命令文本框下是一些如何使用[[命令#目标选择器|目标选择器]]的小提示。
;上一个输出
: 下方的文本框显示上一个命令的输出(成功或是失败)。这里的文本无法编辑。
: 文本框右边的按钮设置上一个输出是显示还是隐藏。
它设置输出将隐藏时为 O(默认),将显示时为X。当世界中有很多命令方块,尤其是电路高速运转时, 不显示输出可以减少内存使用以处理很多请求。
;脉冲/循环/连锁
: 点击脉冲/连锁/循环按钮可更改命令方块类型。
默认为“脉冲”,但非默认类型的命令方块也能被放置。命令方块改变类型时也会改变颜色:
:*“脉冲”方块是橙色的。这种方块是“标准”的命令方块,功能和它的前身差不多,激活一次执行一次命令。
:*“连锁”方块是绿色的。
这种方块只在指向它的方块成功执行命令时才会执行命令。这不同于它在条件制约模式时,会检测什么在指向着它,而不仅仅是靠在它之后。。指向它的命令方块也不必一定是连锁方块本身来触发连锁执行。
:*“循环”方块是紫色的。这种方块被激活后的每一[[刻]]都执行命令,减小了红石时钟设备的重要性。
;条件制约/不受制约
[[File:Command block textures。png|thumb|''上方:'' 不受制约模式的命令方块 ''下方:'' ?条件制约模式的命令方块]]
: 点击“条件制约/不受制约”按钮来改变命令方块的条件制约行为
:* “条件制约”: 命令方块只有在背后的命令方块成功执行命令时才会执行命令 (背后 的意思是命令方块前指的对立方向,无视连锁方向,甚至连锁已被占用也一样)。
:* “不受制约”(默认): 命令方块将忽略背后的方块。
;保持开启/红石控制
: 点击“保持开启/红石控制”按钮改变命令方块的开启需求条件:
:*“红石控制”(脉冲型命令方块的默认设置):命令方块必须像红石机械一样[[#激活|激活]]才能执行命令。
:*“保持开启”(连锁型命令方块与循环型命令方块的默认设置):命令方块甚至在没有红石信号时也会保持为开启状态 (连锁型命令方块将在感应后执行命令, 循环型命令方块将在每一游戏刻执行一次命令(每秒20次),脉冲型命令方块激活后将不能再次激活)。
;完成
: 点击“完成”按钮或按 {{key|Enter}} 以保存命令并退出命令方块GUI。
;取消
: 点击“取消”按钮或按{{key|Esc}} 在不保存任何修改的情况下退出命令方块GUI。
=== 激活 ===
命令方块属于[[红石元件|红石机械]] 且能由以下物件激活:
* 临近的红石'''[[红石元件|充能元件]]''': 例如,[[红石火把]] (红石火把置于命令方块上时例外),[[红石块]],[[阳光传感器]],[[按钮]]等等
* 临近的'''被充能方块''' (例如,红石火把上面的非透明方块)
* 充能中且指向向命令方块的 '''[[红石比较器]]'''或'''[[红石中继器]]'''
* 充能的且指向命令方块(或覆盖其上) 或是没有指向的'''[[红石粉]]''';命令方块不会被临近但是不指向它的充能红石粉激活。
另外,当命令方块由命令复制到一个会被激活的位置时,新的命令方块只有在原有命令未被执行过时才会执行命令。 (可从F3调试屏幕的 triggered看到)。
不像除了[[音符盒]]的其它红石元件,命令方块可在每个[[刻#游戏刻|游戏刻]]激活一次(每秒20次,在不卡顿的情况下)。
然而,在两个游戏刻中都激活一次需要使其在同一刻钟从被激活转为未激活状态(见[[教程/高频电路#fill replace高频|fill replace高频]]的实例)。
处于保持开启的命令方块将一直被激活。默认的模式为“红石控制”,也就是需要充能才能运行。
当被激活时,命令方块将尝试执行它的命令。激活后的动作将取决于命令方块的类型:
* ?'''命令方块'''(“脉冲型”)会尝试执行命令一次。
* ?'''连锁的命令方块'''(“连锁型”)将在指向它的命令方块执行命令后才会执行命令。
* '''循环中的命令方块'''(“循环型”)将会在每个游戏刻都尝试执行一次命令直到不再被激活为止。
==== 连锁执行 ====
如果任何指向连锁方块的命令方块被激活了,它将向连锁方块发出准备执行命令的信号。
连锁型命令方块只有在被激活开启时,或在条件制约模式下还要在背后的命令方块成功执行命令时(背后针对前指方向而言,不是说某个命令方块接入连锁的方向)才会执行命令。 不管这个连锁型命令方块是否开启或是成功执行过命令,如果指向另一个连锁方块,它也同样会发送出准备执行命令的信号。
连锁中的方块将在同一游戏刻执行命令。连锁执行中无法传递过一个已经在这个游戏刻执行过命令的方块。
=== 输出 ===
当激活时,命令方块可以有几种不同类型的输出:
;红石比较器
:命令方块可以向背对它的红石比较器输入一个强度决定于上一个命令的执行情况的信号(例如,被命令所影响的玩家数)。
:信号强度一直根据上一个命令的执行情况保持,即使是在命令方块关闭之后。
;消息
:输出消息描述执行命令的成功与否,会有几种输出位置:
: ''上一个输出:''输出消息都会写入命令方块GUI的“上一个输出”文本框里。
: ''聊天框:''输出信息将在单人模式下或多人模式下对所有管理员写入聊天框,除非已经用{{cmd|gamerule commandBlockOutput false}}拦截。一些命令可能会在聊天框写入其正常工作时的附带文本,这不会被拦截。
(比如,{{cmd|say}}命令将在所有玩家的聊天框写入消息)。通常会带有玩家的名字作为前缀的聊天信息(比如命令{{cmd|me}}, {{cmd|say}} 和 {{cmd|tell}})会使用@作为玩家名字。如果命令方块在放置前已经用铁砧命名过,那么就使用这个名字。
: ''日志:'' 输出信息会写入到多人联机服务器日志除非使用{{cmd|gamerule logAdminCommands false}}拦截。
;命令统计
: 命令方块可以推送多种成功结果到记分板目标,包括:
:* SuccessCount:成功的次数(之前也能用红石比较器输出,但不会限制到15)
:* AffectedBlocks:被修改的方块的个数
:* AffectedEntities:被修改的实体的个数,包括玩家
:* AffectedItems:被修改的物品的个数
:* QueryResult:命令的返回值
: 要使用的目标可以用命令{{cmd|stats}}确定或直接用命令{{cmd|blockdata}}修改命令方块的NBT数据。
=== {{anchor|不能使用的命令}} 备注 ===
以下命令不能在命令方块中使用:{{cmd|ban}}、{{cmd|banlist}}、{{cmd|ban-ip}}、{{cmd|debug}}、{{cmd|deop}}、{{cmd|kick}}、{{cmd|op}}、{{cmd|pardon}}、{{cmd|pardon-ip}}、{{cmd|publish}}、{{cmd|save-all}}、{{cmd|save-off}}、{{cmd|save-on}}、{{cmd|stop}} 和 {{cmd|whitelist}}(也就是,{{cmd|debug}}、{{cmd|publish}} 和所有除了 {{cmd|list}}外的多人游戏命令)。
以下命令可以使用但功能受限(它们的输出只会在命令方块的“上一个输出”文本框显示而不是聊天框):{{cmd|help}}、{{cmd|seed}}、{{cmd|list}}、{{cmd|scoreboard objectives}}、{{cmd|scoreboard players}} 和 {{cmd|scoreboard teams list}}。
以下命令会在输出中用到命令方块的名字(默认为@):{{cmd|me}}、{{cmd|say}} 和 {{cmd|tell}}。
=== 彩蛋 ===
{{main|彩蛋#命令方块}}
在命令方块中不加/运行命令[[彩蛋#Searge|Searge]]会把上一个输出设为#itzlipofutzli。
另外,如果在命令方块中运行{{cmd|help}},它会给出一些带有Searge says:(Searge说:) 前缀的信息。
== 数据值 ==
命令方块拥有''ID名称''minecraft:command_block并在''方块数据'' 和 ''方块实体''中有更深的定位。
命令方块也有 ''方块状态''旨在未来的版本中取代方块数据,
=== ID ===
命令方块的ID决定于其类型:
{{/ID}}
=== 方块数据 ===
{{see also|数据值}}
命令方块的方块数据用于确定方块是否处于开启状态:
{{/DV}}
=== 方块实体值 ===
{{see also|区块格式#方块实体值}}
命令方块有包含方块附加数据的方块实体。
方块的方块实体ID为Control。
{{/BE}}
=== 方块状态 ===
{{see also|方块状态}}
{{/BS}}
== 历史 ==
[[File:JebAdventureModeControlBlockDev1。
png|thumb| Mojang[{{tweet|jeb_|}} 发布]的第一张命令方块的截图。]]
[[File:JebAdventureModeControlBlockDev2。
png|thumb| Mojang[{{tweet|jeb_|}} 发布]的第二张截图,展示着方块正在给予玩家 [[玻璃]]。]]
{{see also|命令#历史}}
{{History|release}}
{{History||2012年7月27日|link={{tweet|jeb_|}}|[[Jeb]]开始发一些关于扩展生存模式的新方块的推文。
他开始推送一些图片,想法和方块将来用法的线索}}
{{History||2012年7月31日|link=。reddit。com/r/Minecraft/comments/xfzdg/i_am_markus_persson_aka_notch_creator_of/c5m0a79|当 [[Notch]]在他的AMA中暗示这个方块会在1。
4中出现。}}
{{History||1。4。2|snap=12w32a|[[File:Grid Command Block。png]]加入了命令方块。}}
{{History||1。5|snap=13w03a|命令方块的成功运行可用 [[红石比较器]]输出信号。
}}
{{History|||snap=13w04a|用[[铁砧]]重命名的命令方块在聊天框中会用其名字代替@。}}
{{History||1。6。1|snap=13w19a|命令方块在生存模式中不再可破坏, 也不会在爆炸中破坏,但蓝色的[[凋灵骷髅头颅]]除外。
}}
{{History||1。7。2|snap=13w37a|加入了一个显示上一个输出的框。|增加游戏内输入命令的字符限制从256 到 16,369 。使用第三方编辑器可以达到 32,767 个字符。}}
{{History||1。
8|snap=14w07a|[[发射器]] 将会放置命令方块,而不是发射它。}}
{{History|||snap=14w20a|移除了游戏内16,369的字符限制, 允许达到最高的 32,767 个字符。}}
{{History|||snap=14w27a|加入了CommandStats NBT 标签。
}}
{{History||1。8。6|发射器不再放置命令方块。。mojang。com/browse/MC-80671?focusedCommentId=228546&page=com。atlassian。
jira。plugin。system。issuetabpanels:comment-tabpanel#comment-228546}}
{{History||1。9|snap=15w34a|[[File:Chain Command Block 15w34a。
png]][[File:Repeating Command Block 15w34a。png]]加入了连锁型命令方块和循环型命令方块。|加入了方块朝向。|[[File:Impulse Command Block 15w34a。png]]升级了命令方块材质。
}}
{{History|||snap=15w34b|加入了条件制约模式。}}
{{History|||snap=15w35a|{{invSprite|Command Block}}{{invSprite|Chain Command Block}}{{invSprite|Repeating Command Block}}升级所有三种命令方块的材质。
|加入了保持开启和红石控制选项。加入了 auto NBT 标签负责控制此项。|设置为条件制约模式后,命令方块箭头尾部会弯曲。}}
{{History|||snap=15w36a|不能使用像/give这类[[命令]]的玩家不再能放置命令方块。
}}
{{History|||snap=15w36d|不同类型的命令方块现在在地图上将显示不同的颜色}}
{{History|foot}}
== 参考 ==
{{reflist}}
{{Redstone}}
{{Blocks}}
[[Category:红石电路]]
[[de:Befehlsblock]]
[[en:Command Block]]
[[es:Bloque de comandos]]
[[fr:Bloc de commande]]
[[it:Blocco di comando]]
[[ja:コマンドブロック]]
[[ko:??? ??]]
[[nl:Opdrachtblok]]
[[pl:Blok poleceń]]
[[pt-br:Bloco de Comando]]
[[ru:Командный блок]]
。