
在接下来的所有指令教学中,我会使用不同颜色的字强调不同种类的内容,方便大家阅读与查看。凡例:
深蓝色 标题
橙色 技术类文字
深绿色 专有名词
红色 强调
粉色 区分数字内容
紫色 范例
/spreadplayers
格式:/spreadplayers {中心点x} {中心点z} {分散间距a} {最大范围b} {是否考虑队伍} {玩家1(支持目标选择器) 玩家2 玩家3 ……}
含义:将选定范围的玩家随机传送到以(x,z)为中心点,边长为2b的正方形范围中,玩家之间的最短距离为a。其中a和b为浮点数,a≥0,b≥1,且a<b。“是否考虑队伍处填写布尔值”,如果true则同队伍玩家会传送到一起。多个玩家之间用空格隔开。
如果目标过多或范围太小,导致无法保证目标之间距离可以不小于分散间距a、或有目标要传送到世界边界之外,则执行失败。当然,执行成功时玩家会被传送至该位置最高方块处,且不可能是岩浆。
注意的是,这个指令不考虑y坐标。

/spreadplayer注解
举例:把MJ_Hamster和MJ_Kuye(红队)、MJ_xian和MJ_Corrode(蓝队)这4名玩家传送到以(-2,10)为中心点,边长512格的正方形区域,而且同队玩家必须传送到一起。
/spreadplayers -2 10 20 256 true MJ_Hamster MJ_Kuye MJ_xian MJ_Corrode
(1)/playsound
格式:/playsound {声音} {音频} {玩家(支持目标选择器)} (x y z) (音量) (音调) (最小音量)
含义:向目标玩家在某频道播放声音。
“声音”处为资源文件中定义的声音(游戏内可以按tab补全)。
“音频”处为设置中“音乐与声音”中几个选项中的一个(master主音量,music游戏BGM,record唱片,weather天气,block方块、neutral友好生物、hostile敌对生物、player玩家、ambient环境音和voice语音)。
x y z为声音发出位置。
“音量”(浮点数)为声音可以听见的范围半径,至少为0.0,默认为1.0。可以听见的范围=16*音量。
“音调”(浮点数)可用范围为0.0~2.0,默认为1.0。音调小于1.0会降低音调增加持续时间(慢放),大于1.0会提高音调减少持续时间(快放)。
“最小音量”(浮点数)表示该声音在可听到范围外的目标可以听到的音量,可用范围为0.0~1.0。
注意,当目标玩家无法听到声音会导致执行失败。
举例:在(0,60,0)处在主音量频段播放唱片“chirp”的声音,使64格以内所有玩家都能听到:
/playsound minecraft:music_disc.chirp master @a 0 60 0 4(音量放大四倍)
(2)/stopsound
格式:/stopsound {玩家(支持目标选择器)} (音频) (声音)
含义:停止声音。音频部分和声音部分见/playsound。
举例:停止所有玩家在主音量频段播放的唱片“chirp”的声音:
/stopsound @amaster minecraft:music_disc.chirp
(3)/particle
格式:/particle {粒子名称} {中心坐标x y z} (最大范围偏移坐标dx dy dz) (粒子飞行速度) (粒子数量) (显示模式) (显示玩家,支持目标选择器)
含义:在选定范围内显示粒子效果。如图,你选择的中心点O的坐标是(x,y,z),在X,Y,Z方向选定的偏移范围为dx,dy,dz(理论上支持负数,但正负并没有什么用),可以求出A(x-dx,y+dy,z-dz),B(x+dx,y-dy,z+dz),那么粒子的生成区域是以AB为体对角线的长方体。

/particle粒子生成范围
粒子飞行速度:默认为0且至少为0。
粒子数量:至少为0(1个粒子)。
显示模式:有force(强制粒子在与玩家距离256格以内都能被看到)和normal(超出32格会看不见)两种。
显示玩家:只有选定的玩家才能看到粒子效果。多个玩家之间要用空格分开。
注意,如果没有玩家能够看见这个(些)粒子则会执行失败。
举例:已知A(0,60,10),B(1,62,14)。在以AB为体对角线的长方体中分布1000个速度默认的墨汁粒子,要使离这个长方体中心50格的玩家MJ_Hamster可以看到。
可以求出中心点O(0.5,61,12),dx=0.5,dy=1,dz=2。所以可以得到/particle minecraft:squid_ink 0.5 61 12 0.5 1 2 0 1000 force(50格使用normal看不见) MJ_Hamster。
(1)/advancement
格式:/advancement [grant|revoke] {玩家(支持目标选择器)} {选定方式}
含义:给予(grant)或移除(revoke)指定玩家选定的进度。
其中选定方式有几种:
①only {进度} (需求):只获得某进度。“需求”指玩家完成该进度的条件。我们回到1.4.2(13)的问题:(忘记的可以去传送门回顾)
@r[limit=2,advancements={story/shiny_gear={diamond_chestplate=true}}]
当时说的是“因获得钻石胸甲而完成进度“钻石护体”的随机两名玩家”。在这里,diamond_chestplate就是完成进度“story/shiny_gear”的需求。
②[until|from|through] {进度}:获得该进度以及所有上游进度/下游进度/这条进度树上所有进度。 关于上游进度、下游进度和进度树可以看下图:

进度树
③everything:所有进度。
“进度”的格式如下:
minecraft:进度页/具体进度。在原版Minecraft中有5个进度页:story(Minecraft)、adventure(冒险)、nether(下界)、end(末地)和husbandry(农业)。具体进度为其扁平化后的英文名称。
举例:使所有玩家获得“狙击手的对决”(在50米外击杀一只骷髅)及所有上游进度:/advancement grant @a until minecraft:adventure/sniper_duel
(2)/recipe
格式:/recipe [give|take] {玩家(支持目标选择器)} {配方}
含义:给予/移除玩家某物品的配方。配方一般是物品名称,有时会有对物品的注解。
举例:移除MJ_Kuye“将骨块转化成骨粉”的配方:/recipe take MJ_Kuye minecraft:bone_meal_from_bone_block
(3)/replaceitem
格式:/replaceitem [block|entity] {目标} {槽位} {物品(支持使用NBT标签)} (数量)
含义:替换方块或实体槽位中的物品。目标如果是方块须输入方块坐标,如果是实体可以使用目标选择器。不同目标槽位值如下表:

槽位值表格
物品可以自行编辑NBT标签,数量不能大于该物品的最大堆叠上限,不写默认为1。
当目标没有输入的槽位,或数量超过物品最大堆叠上限则执行失败。
举例:①将MJ_Kuye的头盔处替换为附魔绑定诅咒的雕刻南瓜:
/replaceitem entity MJ_Kuye armor.head minecraft:carved_pumpkin{Enchantments:[{id:"binding_curse",lvl:1}]} 1
②将位于(15,80,-225)的发射器正中间栏位替换成打火石:
/replaceitem block 15 80 -225 container.4 minecraft:flint_and_steel
下一篇:第二章 指令介绍 2.2 进阶指令(第三部分)