命令方块¶
命令方块(Command Block)是能够在世界中自动执行命令的特殊方块。命令方块将命令系统与红石、刻更新和地图逻辑连接起来,是冒险地图、小游戏、服务器管理和自动化系统的重要工具。
概述¶
命令方块保存一条命令及其执行设置。当命令方块被激活或满足运行条件时,游戏会以该命令方块为执行上下文执行其中的命令。命令方块通常不能在生存模式中正常获取,主要面向创造模式、地图制作和服务器管理。
命令方块执行命令时具有位置、朝向、维度和执行者上下文。许多相对坐标、局部坐标和目标选择器都会受到该上下文影响。
类型¶
命令方块主要分为三种类型:
| 类型 | 说明 |
|---|---|
| 脉冲型 | 每次被激活时执行一次命令 |
| 链式型 | 在前一个命令方块执行后沿链继续执行 |
| 循环型 | 在保持激活时按游戏刻重复执行 |
链式命令方块通常用于构建多命令流水线。循环命令方块可用于持续检测条件或驱动重复逻辑,但滥用会造成性能问题。
执行设置¶
命令方块可以设置为“需要红石”或“始终激活”。需要红石时,命令方块依赖红石信号启动;始终激活时,命令方块在加载后自动满足激活条件。
命令方块还可以设置为有条件或无条件。有条件命令方块会检查前一个命令方块是否成功执行,只有条件满足时才运行。延迟刻数用于控制命令执行前等待的游戏刻数量。
命令版本¶
命令方块保存命令时会记录命令版本。世界更新后,命令方块通常以保存时记录的命令版本解析其命令,而不是始终使用最新命令版本。该机制用于降低旧地图在新版游戏中因命令语法变化而损坏的风险。
关于命令版本的详细说明,见版本文档。
与常加载区域¶
命令方块只有在所在区块加载并参与模拟时才会执行。若命令系统需要在无玩家附近时持续运行,应将命令方块放置在常加载区域内,或使用其他能保持逻辑运行的机制。