• 欢迎来到Minecraft插件百科!
  • 对百科编辑一脸懵逼?帮助:快速入门带您快速熟悉百科编辑!
  • 因近日遭受攻击,百科现已限制编辑,有意编辑请加入插件百科企鹅群:223812289

CraftBook:修订间差异

来自Minecraft插件百科
跳转到导航 跳转到搜索
C7w留言 | 贡献
→‎Next
第2,228行: 第2,228行:
}}
}}


====(Elevators) 电梯====
{{Hide|标题=电梯|内容=
'''电梯'''能够让你快速的在楼层间移动(通过平行传送)。
电梯的牌子必须在同一列互相竖直对齐。
'''建造'''
<spoiler>
[[文件:CBElevator.png]]
电梯是普通的竖直对齐告示牌[[文件:Wall sign icon.png]]。
不过,这些告示牌的种类也不同,所以你在某层上用它们能做的事也不同。
* 在牌子的第二行使用 '''[Lift Up]''' 让玩家上到带有电梯牌子标识的上层
* 在牌子的第二行使用 '''[Lift Down]''' 让玩家下到带有电梯牌子标识的下层
* 在牌子的第二行使用 '''[Lift]''' 没有任何的触发效果,但是可以作为电梯牌子标识
牌子的第一行可以用来提醒玩家当前的楼层数
如果你开启了循环模式,点击“上楼”但是上面没有电梯层了的话,你就会回到最底层。
“下楼”也是如此。
观看教学视频来学习怎样制作电梯和它们工作的方式。
审核中
电梯在2.0版本后,不会使玩家卡在方块中了。
电梯现在也会检测玩家在上下楼后脚底有没有方块。
注意电梯是直接向上或向下传送玩家的。
确保楼层的高度是足够的,不然你会收到一条“您的目的地被阻塞”的消息。
</spoiler>
'''多楼层'''
<spoiler>
对于多楼层来说,一套电梯系统是不够的。
一套电梯系统仅仅只能在两个楼层间上下移动(由牌子定义)。
如果你想要多楼层的话,你需要多套电梯系统。
[[文件:Elevator double.png]]
三层楼的电梯系统
</spoiler>
'''权限'''
<spoiler>
{| class="wiki-table sortable"
|-
! 权限节点
! 效果
|-
| craftbook.mech.elevator
| 允许创建电梯
|-
| craftbook.mech.elevator.use
| 允许使用电梯
|}
</spoiler>
'''配置'''
<spoiler>
{| class="wiki-table sortable"
|-
! 配置内容及路径
! 默认值
! 效果
|-
| mechanics.elevator.enable
| false
| 启用电梯机制
|-
| mechanics.elevator.enable-buttons
| true
| 允许通过在电梯另一侧放置按钮的方式使用电梯
|-
| mechanics.elevator.allow-looping
| false
| 开启电梯的楼层循环模式
|-
| mechanics.elevator.smooth-movement
| false
| 使玩家在楼层间缓慢移动,而不是直接传送
|-
| mechanics.elevator.smooth-movement-speed
| 0.5
| 当上述设置启用时,玩家移动的速度
|}
</spoiler>
}}
====Next====
====Next====



2017年6月15日 (四) 04:02的版本

辣鸡c7w的万年大坑

简介

CraftBooks为Minecraft添加了:

  • 可交互式的机制,像桥梁,电梯和门
  • 红石相关特性,如集成电路和可编程逻辑芯片
  • Minecart 的增强功能,例如车站和加成器

★请记住,CraftBook是[开源]的。

安装

如何安装

<spoiler>

  1. 下载 [CraftBook] 和 [WorldEdit](WorldEdit为必需前置)
  2. 在服务端根目录下找到 plugins 文件夹,如果没有则创建之
  3. 将 WorldEdit.jar 和 CraftBook.jar 文件放入 plugins 文件夹中
  4. 重启服务器

</spoiler>

如何配置

<spoiler> 当CraftBook插件第一次运行时,默认的配置文件会被创建到 plugins/CraftBook/ 目录下。

编辑上述文件夹中的 config.yml 文件而改变配置。

设置权限,你可以使用 craftbook.* 来代替本插件的所有权限。 </spoiler>

使用

警告:默认没有任何的特性被启用!请到配置文件中去启用!

常用

(Variables) 变量

变量
CraftBook 的变量是为动态电路和一些机器而设计的。

变量是 CraftBook 的核心,并且被视为最强大的功能,因为它能够完成不可思议的事情。

使用

<spoiler>

变量可以说是一种 “关键字→数据” 类型的存储系统,允许一个值用关键字来表示。

这能够让机器或其它系统调和起来,让某一行文本保持不变,也能够表示一直在变化的动态值。

</spoiler>

创建变量

<spoiler>

要想创建变量,使用本页下方“指令”中的指令。

在变量被创建和修改之前,它首先需要被定义。

定义命令是用来定义变量的。

</spoiler>

语法

<spoiler>

基础的储存一个变量的语法是 %命名空间

(Configuration) 配置

(Permission Nodes) 权限

机制

(AI Mechanics) 怪物AI机制

怪物AI机制
怪物AI机制 改变怪物的表现方式。

视力AI机制

<spoiler>

视力AI机制改变怪物看见你的方式。

如果你在潜行中经过怪物,而又没有离怪物太近,怪物可能不会看见你。

怪物可能在你在墙后疾跑时看见你。

</spoiler>

临界之弓AI机制

<spoiler>

临界之弓AI机制会给怪物用它们的弓给你临界一击的机会。

临界一击会使你着火!

</spoiler>

攻击中立生物AI机制

<spoiler>

攻击中立生物AI机制能够让敌对生物攻击像猪和羊这样的中立生物。

注意:由于Bukkit服务端的一个BUG,对于某些使用特殊AI的生物此特性不会工作。

</spoiler>

配置

<spoiler>

{

(Ammeter) 电流表

电流表
电流表 能够当你获得当前红石线或红石设备内的红石信号的强弱。

通过持有煤炭物品右键红石设备就能查看信号强弱的输出。

红石线中的信号每隔一个方块,就会减弱 1 信号,信号源的信号强度是 15,这就让最大的限制是 15 方块。

权限

<spoiler>

{

(Better Leads) 更好的栓绳

更好的栓绳
更好的栓绳是延展Minecraft中的栓绳的功能的机制。

携带生物

<spoiler>

携带生物能够使其他的生物可以被栓绳拴住,例如僵尸。

被拴住的苦力怕

</spoiler>

停止目标

<spoiler>

停止目标能够使被玩家拴住的怪物停止攻击玩家。

本特性可以这样用:玩家拴住僵尸,他们就不会被他们拴住的僵尸攻击了。

警告:由于Bukkit中的Bug,本特性对于已经锁定玩家的生物不会有效,本特性只会停止锁定玩家的新怪物的追踪。

</spoiler>

驱散怪物

<spoiler>

驱散怪物机制能够停止敌对生物追踪持有相同类型怪物的玩家。

这被Michonne的行尸走肉所启发。

警告:由于Bukkit中的Bug,本特性对于已经锁定玩家的生物不会有效,本特性只会停止锁定玩家的新怪物的追踪。

</spoiler>

Hitch Persist

<spoiler>

Hitch Persist是允许公共栓绳的特性。当结被击打的时候,只有栓绳会掉下来,真正的结还在栅栏上。

</spoiler>

Owner Hitching

<spoiler>

本特性建立在公共栓绳之上。

我推荐你将本特性与Hitch Persist搭配使用,但这不是必需的。

当本特性启用时,如果玩家驯服了一匹马或狼并且将其系到栅栏上,又来了一个玩家做了同样的事情,玩家的怪物会打破栓绳被释放。

</spoiler>

权限

<spoiler>

{

(Better Physics) 更好的物理效果

更好的物理效果
重力梯

<spoiler>

重力梯能够让玩家在洞穴的顶部放置梯子,然后梯子会具有重力,掉落到底部,为玩家创建安全的方式下去。

当他或她降落到底部时,他或她能够破坏梯子,然后让梯子继续掉落,一次只会下落一个,当然支持简单的破坏方法。

</spoiler>

配置 <spoiler> {

(Better Pistons) 更好的活塞

更好的活塞(内含四种)
更好的活塞能够让活塞做更多的事情。

当前有四种活塞机制:

  • 破碎机
  • 弹跳机
  • 超强粘性活塞
  • 超级活塞

在配置文件中,您可以更改方块黑名单,方块黑名单中的方块不能与本系统交互。

破碎机 <spoiler>

破碎机能够破碎掉活塞前方对着的方块。

你需要在活塞旁贴一个牌子,牌子的第二行写上 [Crush]

只要活塞被红石信号充能,活塞前方的方块就会被破坏掉了。 </spoiler>

弹跳机 <spoiler>

弹跳机能推动上方的方块或实体。

你需要在活塞旁贴一个牌子,牌子的第二行写上 [Bounce]

牌子的第三行写上弹起的速度,最大的速度限制是 10 (这是 Minecraft 的限制)。

在活塞上方的方块或实体会被弹起。 </spoiler>

超强粘性活塞 <spoiler>

超强粘性活塞作为粘性活塞能够粘起1格远以外的方块。

你需要在活塞旁贴一个牌子,牌子的第二行写上 [SuperSticky]

牌子的第三行写上你想作用的方块的数量,最大的值是10.

第三行的数值也能代表方块每次移动的距离。

要想实现本功能,请以这样的格式键入:

最大距离-每次距离

例如 10-2 是让方块以每次2方块的速度移动,最大移动距离为10方块。 </spoiler>

超级活塞 <spoiler>

超级活塞能够使空气也被活塞推动。

你需要在活塞旁贴一个牌子,牌子的第二行写上 [SuperPush]

牌子的第三行写上被推动方块的数量。最大值是10。

第三行的数值也能代表方块每次移动的距离。

要想实现本功能,请以这样的格式键入:

最大距离-每次距离

例如 10-2 是让方块以每次2方块的速度移动,最大移动距离为10方块。 </spoiler>

权限 <spoiler> {

(Better Plants) 更好的植物

更好的植物
更好的植物是能够让普通的植物做更多不同的事情的机制。

蕨类植物农场

<spoiler>

蕨类植物农场能够让蕨类植物被种植。

小丛的蕨类植物在一段时间以后可以长成大丛的蕨类植物,然后大丛的蕨类植物上面的方块会变得可以被破坏,破坏后会掉落另一小丛的蕨类植物。

当大丛的蕨类植物被破坏后,原方块的位置会出现小丛的蕨类植物作为代替。

</spoiler>

配置

<spoiler>

{

(Bridges) 桥梁

桥梁
桥梁是可配置的,可以选择开启或关闭的区域平台。桥梁的宽度可以设置。
  • 它能够通过右键牌子更改
  • 它能够通过红石信号更改

作为桥梁它不是很高大上,但它有许多其他用途。

如果你想要吊桥的话请使用“门”。

如果你想要切换真正的桥梁的话,使用“区域切换”。

结构 <spoiler>

桥梁包括三部分:

  1. 由一种材料制成的桥体部分。默认地,你可以使用圆石,木板,玻璃,石台阶等,但此可以被修改。
  2. 在桥的一端放置一个告示牌,在桥上桥下都可,或者,你也可以在方块的一侧放置告示牌。告示牌第二行的内容必须是[Bridge]
  3. 在桥的另一端放置一个告示牌,在桥上桥下都可,或者,你也可以在方块的一侧放置告示牌。告示牌第二行的内容必须是[Bridge][Bridge End]。你只能右键第一种类型的告示牌。

如果玩家拥有权限的话,他们能够在牌子的第一行写下infinite来使桥梁不会用尽方块。(如果配置中设置为桥梁需要方块的话)。

牌子的第三行和第四行用于配置桥梁的宽度。牌子的第三行是桥梁在告示牌左面的宽度,第四行是桥梁在告示牌右面的宽度。

例如第三行填写 0 ,第四行填写 1 ,桥梁的宽度将会是2格,并且告示牌右面多出一格。如果不填写,默认值为 1。(确保默认宽度有3格)

告示牌桥上桥下都能放(侧边也可以),但必须在正中间。

警告:如果配置设置为需要方块,你在创建桥梁时必须将整个桥梁全部建筑出来,不然就不会工作。

你可以通过手持对应方块右键告示牌的方式来为桥梁补充方块。

查看教学视频来学习怎样制造桥梁。

[视频地址]

红石支持

桥梁支持红石:将红石信号放在牌子旁边即可。如果你使用红石的话,你可以将告示牌放在桥下而使桥梁看上去好看些。

  • 激活的红石信号会激活桥梁
  • 未激活的红石信号会移除桥梁

</spoiler> 使用 <spoiler> 除了明显的作为可伸缩的桥梁之外,它还能这样用:

  • 用它来阻挡水和岩浆
  • 用来坑毫无戒心的熊孩子(见下视频)
  • 隐藏房屋的一部分
  • 更改地下室的光线
  • 有心就能有其他用途

[视频地址] </spoiler> 权限 <spoiler> {

(Cauldron) 炼药锅

炼药锅
炼药锅 允许使用 Minecraft 中的炼药锅合成物品。

你想让炼药锅用方块建造吗?尝试使用 传说炼药锅 吧。

建造

<spoiler>

炼药锅需要装满水,并且在下方点火。

你必须使用炼药锅方块来建造它,并且我推荐你在火焰下方放置地狱岩,这样火焰就不会消失,你也不用重新点燃它。

</spoiler>

使用炼药锅

<spoiler>

将需要的物品投入炼药锅中。

重要的是你不能将其它没用的物品或是其它多余的物品投入炼药锅中。

当你用正确的物品填满了炼药锅后,右键炼药锅方块。

这样就会尝试去合成。

因为合成配方是有几率的,所以第一次尝试不一定会成功。

取决于物品合成的成功率,你可能要尝试一段时间。

成功之时,炼药锅会发出爆炸的特效。(这不会破坏任何方块,并且炼药锅还能继续使用)

原材料会被移除。

观看教学视频来学习怎样增加新配方和建造炼药锅。

[视频地址]

</spoiler>

勺子

<spoiler>

勺子是锹,你可以配置它是否为使用炼药锅的必需品。

勺子就是一把普通的锹。

如果你需要勺子来使用炼药锅的话,右键炼药锅这一步骤你必须持有着勺子。

依赖于勺子的品质,合成配方会有不同的几率。

效率附魔能够增加成功的几率。

当前来说,时运附魔对于合成没有任何效果。

</spoiler>

红石支持

<spoiler>

在配置中启用红石支持是可能的。

要想使用红石支持,将红石线指向炼药锅。

但这会允许玩家在没有权限时使用炼药锅,所以本配置默认是禁用的。

</spoiler>

配置合成配方

<spoiler>

合成配方配置文件在 plugins/CraftBook/ 目录下的 cauldron-recipes.yml 文件中。

本文件在CraftBook被安装时自动创建,当然如果没有你也可以自己新建一个。

每个配方都需要标识名,原材料和合成产物。

cauldron-recipes.yml配置示例

 recipes:
   # 配方的识别名
   default:
     # 在配方合成成功时显示的物品名
     name: "Default Recipe"
     # 关于配方原材料的描述
     description: "将一些煤炭和棕色的羊毛扔进去,获得钻石和黑色的羊毛。"
     # 成功的几率
     chance: 60
     ingredients:
       # 5 个煤炭
       coal: 5
       # 3 个棕色羊毛
       'wool:12': 3
     results:
       diamond: 1
       # 1 个黑色羊毛
       '35:15': 1

</spoiler>

权限

<spoiler>

{

(Chairs) 椅子

椅子
椅子能够让台阶或其他自定义的方块可以坐上去。

使用

<spoiler>

右键一个被定义为椅子的方块来坐上去。

如果椅子下方没有任何方块的话会出现一条信息,然后玩家不会坐上去。

</spoiler>

'是否需要告示牌?

<spoiler>

在配置中使椅子需要告示牌是可能的,这允许玩家指定他们想作为椅子的方块。

能够坐在每个方块上确实很让人恼火。

要想使一个方块变成椅子,在方块一侧贴上一块牌子。

对于椅子来说本特性是推荐的,这样能让它看起来更像扶手椅一样。

如果多个方块是连接着的话,你不需要在每个方块上都贴牌子。

一个牌子管理的最大连接方块的距离在配置中是可配置的。

</spoiler>

图片

<spoiler>

</spoiler>

权限

<spoiler>

{

(Chunk Anchors) 区块加载器

区块加载器
区块加载器 能让一个区块保持被加载的状态。

建造

<spoiler>

在地面上放置一块告示牌,第二行写上 [Chunk] 。

本区块就会自动加载了。

警告:一些插件会使区块强制卸载,这些插件不会被本插件阻止或有任何提示。

</spoiler>

红石

<spoiler>

如果配置允许这样的话,区块加载器可以被红石信号控制。

当前区块载入器的开关与否可以在牌子的第三行查看。

</spoiler>

权限

<spoiler>

{

(Command Items) 命令物品★

命令物品
命令物品允许你将命令绑定在特殊的物品上面,并且当物品被交互时指令会被触发。

这个物品可以有自定义的数据值,名字和说明行,并且你能很容易地将其与其他物品区分。

并且这些特殊的指令物品能够通过 CraftBook 插件的 自定义合成 机制而被合成。

你能够添加多条指令和冷却时间。

它也支持间隔时间,间隔时间可以让你在执行一些指令后执行另一串指令,也支持物品隐身 30 秒钟。

权限节点也可以使用,这能够限定玩家使用某些特定的命令物品。

命令物品可以以 控制台(CONSOLE) 、 玩家(PLAYER) 和 管理员(SUPERUSER) 的方式运行。

控制台就从后台运行该命令,玩家即触发物品的玩家,管理员即使触发物品的玩家在触发命令时有所有权限。

创建命令物品

<spoiler> 命令物品设置起来很简单,有两套强大并简单的系统。

你可以在配置文件中创建它们,但如果你感觉不舒适的话,你也可以在游戏中创建它们。

注意:如果你想让同一个物品根据不同的触发条件触发不同的指令的话,你也可以在相同的物品上记录多条记录,只要配置文件内的标识名不重复即可。

在配置文件中

命令物品的配置非常强大。

配置文件可以在你的 CraftBook 插件文件夹内找到,文件名为 command-items.yml 。

本文件应该以 command-items 开头,象征着本文件储存命令物品。

在文件内你能够看到许多已经定义好的命令物品,只要它们有不同的标识名。

在接下来的配置中,物品的标识名称是 'LightningRod' , 它在配方内容之上。

  LightningRod:
    item: "369|Lightning Rod"
    commands:
      - "strike"
    permission-node: "lightningrod.use"
    run-as: PLAYER
    click-type: CLICK_RIGHT
    delay: 0
    delayed-commands: []
    cooldown: 10
    cancel-action: true

物品

物品章节允许你选择你可以使用的道具。它使用[基础物品语法](见备注)。

命令

“命令”节是要运行的命令列表,它们不需要在指令前加上 / 字符。

命令能够包括类似于 @p 的选项,这会得到使用本物品的玩家名,@d会在某个生物触发以后,如果生物是玩家,返回玩家名。

(注意:@d在触发的实体不是玩家时会自动停止所有指令的执行)

选择器

下列的选择器即 CraftBook 支持的所有选择器,只要事件支持你就可以使用它们。

选择器 描述
@p 玩家的名字
@p.i 玩家对应在 CraftBook 插件内的ID
@p.u 玩家的 UUID
@p.w 玩家所处的世界名
@p.l 玩家的坐标
@p.x 玩家的精确 X 坐标
@p.y 玩家的精确 Y 坐标
@p.z 玩家的精确 Z 坐标
@p.bx 玩家所在方块的 X 坐标
@p.by 玩家所在方块的 Y 坐标
@p.bz 玩家所在方块的 Z 坐标
@d 受伤实体的名字或类型
@d.i 如果存在的话,受伤实体在 CraftBook 插件内的ID
@d.u 受伤实体的 UUID
@d.w 受伤实体所在世界名
@d.l 受伤实体的坐标
@d.x 受伤实体的精确 X 坐标
@d.y 受伤实体的精确 Y 坐标
@d.z 受伤实体的精确 Z 坐标
@d.bx 受伤实体所在方块的 X 坐标
@d.by 受伤实体所在方块的 Y 坐标
@d.bz 受伤实体所在方块的 Z 坐标
@b 方块的类型
@b.x 方块的 X 坐标
@b.y 方块的 Y 坐标
@b.z 方块的 Z 坐标
@b.w 方块所在世界
@b.l 方块的坐标
@e 实体类型
@e.u 实体的 UUID
@e.l 实体的坐标
@e.w 实体所在世界
@e.x 实体的精确 X 坐标
@e.y 实体的精确 Y 坐标
@e.z 实体的精确 Z 坐标
@e.bx 实体所在方块的 X 坐标
@e.by 实体所在方块的 Y 坐标
@e.bz 实体所在方块的 Z 坐标
@m 玩家所说的消息内容

权限节点

权限节点章节能够让你指定使用命令物品所需要的权限。

权限节点可以完全被自定义。

注意:尽管你设置了这个,玩家还是需要基础的使用命令物品的权限才能使用之。


作为何而运行

本章节允许你设置命令会以什么身份被运行。

可选的选项有: 'CONSOLE' (控制台) , 'PLAYER' (玩家) 或 'SUPERUSER' (管理员)。

控制台就从后台运行该命令,玩家即触发物品的玩家,管理员即使触发物品的玩家在触发命令时有所有权限。

点击类型

点击类型节能够让你设置玩家怎么样才能触发指令物品。

有效的点击类型有:

CLICK_LEFT - 当左键时,执行……
CLICK_RIGHT - 当右键时,执行……
CLICK_EITHER - 当左键或者右键时,执行……
CLICK_LEFT_BLOCK - 当在一个方块上左键时,执行……
CLICK_RIGHT_BLOCK - 当在一个方块上右键时,执行……
CLICK_EITHER_BLOCK - 在一个方块上左右键时,执行……
CLICK_LEFT_AIR - 在空气中左键时,执行……
CLICK_RIGHT_AIR - 在空气中右键时,执行……
CLICK_EITHER_AIR - 在空气中左右键时,执行……
ENTITY_RIGHT - 当实体被右键时,执行……
ENTITY_LEFT - 当实体被攻击时,执行……
ENTITY_PROJECTILE - 当实体被箭或者其他弹射物攻击时,执行……
ENTITY_EITHER - 当一个实体被右键或者攻击时,执行……
BLOCK_BREAK - 当方块被破坏时,执行……
BLOCK_PLACE - 当方块被放置时,执行……
BLOCK_PROJECTILE_AIR - 当弹射物在空气中停止运动时,执行……
BLOCK_PROJECTILE_BLOCK - 当弹射物撞击到方块上时,执行……
BLOCK_PROJECTILE_EITHER - 当弹射物以任何方式停止时,执行……
PROJECTILE_LAUNCH - 当弹射物被发射时,执行……
BLOCK_EITHER - 当方块被破坏或放置时,执行……
ITEM_CONSUME - 当物品被消耗时(吃掉/喝掉),执行……
ITEM_DROP - 当物品掉落时,执行……
ITEM_BREAK - 当物品因耐久为0而损坏时,执行……
ITEM_PICKUP - 当物品被捡起时,执行……
ITEM_CLICK_LEFT - 当在背包栏中左键物品时,执行……
ITEM_CLICK_RIGHT - 当在背包栏中右键物品时,执行……
ITEM_CLICK_EITHER - 当在背包栏中点击物品时,执行……
PLAYER_DEATH - 当玩家死亡时,执行……
PLAYER_CHAT - 当玩家发送聊天消息时,执行……
PASSIVE -  a.每半秒执行一次,本功能支持被延迟。(在本功能中冷却不会被显示)  b.它在切换手中物品或穿戴装甲时也能被触发。
ANY - 上述条件出现其中之一时,执行……

延迟命令

延迟命令选项能够让你在一段时间后继续执行一些命令。

这对于开启后关闭一些东西是很有用的。

延迟以游戏刻(ticks)为单位计算。

延迟命令也能够使用命令节提及的 @p 和 @d 选择器。

冷却

冷却使你在使用该命令物品后需要等待一段时间才能再次使用该物品。

本功能计算玩家的冷却时间,而不是物品的冷却时间。

所以如果你拥有大量该物品的话也不会跳过冷却时间。

冷却时间以秒为单位。

取消事件

如果本项设置为是(true)的话,当物品被触发时本来应该发生的事件不被触发。

如:当物品覆盖了该用途时,左键动物动物不会受伤。

可消耗物品

这些是使用本物品所需要的材料,并且这些材料在命令执行后会被移除。

物品的语法与上文提及的物品语法相同,并且可消耗物品可以是一个列表。

如果你想消耗命令物品本身的话,请使用 消耗自身 选项。

潜行状态

本选项可以让玩家在使用该命令物品时必须是潜行,站立或两者都可。

选项是 'require-sneaking-state:' 可设置项为 true(必须潜行), false(必须站立)或 either (两者都可)。

行为

行为是能够让不同的行为被执行的复杂系统,这在指令运行的前后均可。

通过使用本系统,也能为命令的执行添加测试条件,只有达到这些条件命令物品才会执行命令。

行为的类型

当前有三种类型的行为。

行为类型 描述 值的类型 是条件类型的吗?
SETVAR 设置某变量为给予的值 )变量名=数据值
MATHVAR 在变量上做数学运算 )变量名=[+,-,*,/,%]值
ISVAR 检测变量是否为给予的值 )变量=数据值

在数据值的格式中,( )为可选参数,[ ]为必选参数,你必须选择其中的一个。

在真正的配置文件中不能出现 ( ) 与 [ ] 这种字符。

行为的运行

当前行为可以在命令物品执行之前(BEFORE)或之后(AFTER)。

如果条件限制型行为设置为之前(BEFORE),要想激活命令物品返回值必须为是(TRUE)。

配置文件格式

 actions:
   actionName:
     type: ISVAR
     value: enabled=true
     run-stage: BEFORE

示例配置文件

command-items:
  command-items:
  LightningRod:
    item: "369|Lightning Rod"
    #一个叫做 Lightning Rod 的烈焰棒
    commands:
      - "strike"
    #执行 strike 命令
    permission-node: "lightningrod.use"
    #需要以下权限才能使用该物品 'lightningrod.use'
    run-as: PLAYER
    #以玩家的身份执行
    click-type: CLICK_RIGHT
    #在右键时执行
    delay: 0
    #没有间隔时间
    delayed-commands: []
    #在间隔时间后没有指令运行
    cooldown: 10
    #冷却时间 10 秒钟
    cancel-action: true
    #右键不会影响开箱子或按按钮之类的动作
    consumed-items:
      - "331"
    #每次使用会消耗 1 个红石
    require-sneaking-state: either
    #你在潜行与否没关系
    consume-self: true
    #使用时会消耗本身

游戏中的配置

观看视频教程来学习怎样在游戏中配置命令物品。

[视频地址]

</spoiler>

权限及配置

<spoiler>

权限

权限节点 效果
craftbook.mech.commanditems 允许使用命令物品
craftbook.mech.commanditems.bypasscooldown 允许玩家跳过命令物品的冷却时间
craftbook.mech.commanditems.give.命令物品名 允许玩家使用 【/commanditems give 命令物品名】 命令

配置

配置内容及路径 默认值 效果
mechanics.command-items.enable false 是否启用命令物品机制

</spoiler>

(Command Signs) 命令牌子

命令牌子
指令牌子会在给予红石信号或被右键时执行写在第三和第四行的指令。(注意:指令没有 / 字符)

建造

<spoiler>

要想建造一块指令牌子,放置一块牌子,在牌子的第二行写上 [Command] ,然后把想执行的指令写在第三和第四行就可以了。

右键牌子或者给予牌子红石信号,牌子上的命令就会被控制台执行。

要想获得右键牌子的玩家名,请使用 @p 。不过对于红石信号的触发方式, @p 选择器不会工作。

</spoiler>

延展牌子

<spoiler>

如果你需要更多输入命令的地方,你就能使用延展牌子。

延展牌子和普通的命令牌子一样,不过你需要在第一行输入 EXPANSION 。

如果延展牌子被右键的话,什么都不会发生,因为你只能右键或用红石信号激活主要的牌子。

延展牌子能够无限增加(直到增加到虚空),它们应该和主要牌子放在一列。

</spoiler>

权限

<spoiler>

{

(Cooking pots) 烹饪锅

烹饪锅
烹饪锅 能够让你在火上的箱子中烹饪生的食物。

建造

<spoiler>

烹饪锅包括三部分

  1. 用来燃烧的一个方块,侧面贴上一块第二行为 [Cook] 的牌子(这里的方块推荐用地狱岩)
  2. 方块上点火
  3. 火上放置一个箱子

将生的材料放入烹饪锅中,然后就会开始缓慢地烹饪,速度取决于燃料的品质。

烹饪锅是仅仅能够烹饪食物,还是也能够烧炼矿物是可配置的。

如果箱子被限制住无法打开的话,通过右键牌子也能够打开箱子。

所以你可以在箱子顶部放置方块。

</spoiler>

燃料

<spoiler>

如果选项中你设置了需要燃料,你就需要手持燃料右键牌子来补充燃料。

如果你设置不需要燃料,你也可以为其增加燃料,这回加快烹饪的速度。

</spoiler>

红石

<spoiler>

如果配置中开启了,你可以使用红石作为燃料源。

每级红石信号都会给予烹饪锅 1 点燃料点。

</spoiler>

权限

<spoiler>

{

(Custom crafting) 自定义合成★

自定义合成
自定义合成允许自定义合成台和熔炉的合成配方。
特性

<spoiler> CraftBook 插件支持许多自定义合成方面的特性。

首先,相同的合成配方可以合成出不同的东西。

合成完全可以支持物品名,描述行和附魔。

不仅如此,你还可以给配方增加权限节点,玩家需要有指定权限才能合成该物品。

</spoiler>

自定义合成

<spoiler> 配置文件

要想增加新的合成方法,查看 CraftBook/crafting-recipes.yml 文件。

本文件是你定义合成方法的地方。

文件必须以 "crafting-recipes:" 行开头,表明这里可以定义新的合成方法。


默认有两种合成。

类型(Type) 即你想要的合成方法的类型,目前有 "shapeless(无序合成), shaped(有序合成) 和 furnace(熔炉烧炼)"

无序合成

无序合成的建立是最简单的。

首先你需要增加你想要的合成原材料,以下面的方式:

'物品ID:物品附加值': 数量

合成产物节也应这样填写,但你只能指定一种产物,当然可以有任何数量。

有序合成

有序合成的创建一般来说很简单,但它需要提供合成的槽位。

原材料节应该这样填写:

'物品ID:物品附加值': 有序ID

你需要用有序ID来替换下方合成节中原材料物品的位置。

有序ID必须是单字符,如 “a”。

接下来是合成节,你需要这样填写:

 - "有序ID有序ID"
 - "有序ID有序ID"
2 X 2 的合成方法

或者

 - "有序ID有序ID有序ID"
 - "有序ID有序ID有序ID"
 - "有序ID有序ID有序ID"

3 X 3 的合成方法

或者

 - "有序ID"
 - "有序ID"
 - "有序ID" 

1 X 3 的合成方法

要想指定合成中的空槽位,请在原本的有序ID处填写一个半角空格。

不要在合成中用 “0” 来替换空槽位!


合成产物节和无序合成节提及的做法是一样的。

熔炉烧炼

熔炉烧炼添加起来也很容易,你只需要添加单个原材料,然后单个终产物。

这些内容均和无序合成一样,但是原材料不支持添加自定义数量。


特殊数据值

物品名、解释行和附魔

要想为原材料或终产物添加这些数据值,请查看 物品语法(见备注) 。

权限节点

要想让合成配方在合成时需要玩家的权限,在配方配置文件中增加一行以下标签即可:

permission-node: 'perm.node' 

多个终产物

要想拥有多个终产物,在配方的终产物节多添加几个终产物就好了。那很简单的。

伴随合成的行为

本节介绍当合成时可以伴随发生的行为。

后台运行指令

当物品被合成时,这个选项可以让后台执行指令。

语法规则是:

craft-actions:
  commands-console:
    - ban @p
    - pardon @p

玩家指令

当物品被合成时,这个选项能够让玩家执行指令。

语法规则是:

craft-actions:
  commands-player:
    - ban @p
    - pardon @p

示例配置文件

# CraftBook Custom Recipes. CraftBook Version: Demo Copy
# For more information on setting up custom recipes, see the wiki:
# http://wiki.sk89q.com/wiki/CraftBook/Custom_crafting

crafting-recipes:
  shapelessexample:
    type: shapeless
    ingredients: #mc only supports amount of 1 currently as ingredients.
      # light wooden plank
      'wood:2': 3
      # brown wool
      'wool:12': 2
    results:
      #64 Endstone.
      '121': 64
  shapeexample:
    type: shaped
    ingredients: #mc only supports amount of 1 currently as ingredients.
      # light wooden plank
      'wood:2': 'a'
      # brown wool
      'wool:12': 'b'
    shape: #two of a on top, 2 of b on bottom.
      - 'aa'
      - 'bb'
    results:
      #64 Endstone.
      '121': 64
  furnaceexample:
    type: furnace
    ingredients:
      # light wooden plank
      'wood:2': 1
    results:
      #1 Stone.
      'stone': 1

游戏中配置

观看教学视频来了解怎样在游戏中配置自定义合成方法。

[视频教程]

</spoiler>

权限及配置

<spoiler> 权限

权限节点 效果
craftbook.mech.recipes.add 允许玩家使用游戏内增加配方的指令
craftbook.mech.recipes.remove 允许玩家使用游戏内移除配方的指令

配置

配置内容及路径 默认值 效果
mechanics.custom-crafting.enable false 是否启用自定义合成机制

</spoiler>

(Custom Drops) 掉落物

自定义掉落物
自定义掉落物支持为怪物或者方块添加或移除不同的掉落物品。

这些掉落物品使用 基础物品语法(见备注)。

因此这些掉落物品支持数据值和附魔。

使用

<spoiler>

要想使用,杀死配置的怪物或破坏对应的方块就可以了。

</spoiler>

自定义配置

<spoiler>

示例文件:

custom-drops:
  #This definition will drop the bookshelf when you break it, instead of just books.
  exampleblock:
    block: "BOOKSHELF"
    drops:
      Bookshelf:
        item: "BOOKSHELF*1"
    type: block
    append: false
  #This definition will drop 0-2 possessed stone 5% of the time, and 1-6 Quartz shards 30% of the time when a pig is killed. It doesn't replace current drops.
  exampleentity:
    entity-type: "PIG"
    drops:
      PossessedStone:
        item: "STONE|Possessed Stone"
        chance: 5
        minimum-amount: 0
        maximum-amount: 2
      QuartzShard:
        item: "QUARTZ|Quartz Shard|&6A small shard of quarts!"
        chance: 30
        minimum-amount: 1
        maximum-amount: 6
    type: entity
    append: true

</spoiler>

权限

<spoiler>

{

(Dispenser Recipes) 发射器的新作用

发射器的新作用
你可以在发射器中放不同的东西,在充能时它会完成不同的任务。

建造

<spoiler>

当前的新作用有风扇、火焰箭、发射雪球、加农炮和经验发射器。

风扇

风扇能够推开附近的实体。

火焰箭

火焰箭能够从发射器中射出带有火焰的箭。

发射雪球

这能够从发射器中射出雪球。

加农炮

加农炮能够用相当大的力量从发射器中射出点燃的TNT。

经验发射器

经验发射器能够从发射器中射出经验瓶。

</spoiler>

配置

<spoiler> {

(Doors) 门

是可配置的,你可以切换开关的纵向平台。

它与桥梁很像,但是桥梁是横向的。

  • 门可以通过右键告示牌切换
  • 门也可以用红石信号激活

作为门它们不是很高大上,但它们确实有很多用途。

如果你想让它看起来像想象中的门的话,请使用 区域切换 。

建造

<spoiler>

门包括三部分:

  1. 由一种材料制成的门的主部分。

默认地,你可以使用石头,泥土,圆石,木板,原木,玻璃,羊毛,双层石台阶,砖块,书架,雪块或粘土方块。

但这些可以被配置更改。

  1. 在底部的中间位置放置一个告示牌。告示牌的第二行必须是 [Door Up]
  2. 在顶部的中间位置放置一个告示牌。告示牌的第二行必须是 [Door Down]
  3. 如果玩家有权限的话,他们可以在告示牌的第一行写上 infinite 让门不会耗尽方块。(如果配置中 stop-mechanism-dupe 被启用的话)
  4. 第三和第四行写下门的宽度,第三行是左侧宽度,第四行是右侧宽度。

如果 stop-mechanism-dupe 配置在配置文件中被启用的话,你必须先创建出整个门,不然门机制不会工作。

你可以通过手持对应方块右键告示牌的方式为门补充方块。

如果你想让门的一段不能被触发的话,请在第二行使用 [Door]

</spoiler>

红石支持

<spoiler>

门是支持红石的:将红石线放在牌子旁即可

  • 充能的红石信号会创建门
  • 未充能的红石信号会移除门

</spoiler>

使用

<spoiler>

除了作为明面上看起来是个门之外,它还可以:

  • 作为隐藏的图书馆入口
  • 切换一个区域是否在水和岩浆上浮起来,这对 PvE 和 PvP 都是很有用的
  • 用来控制敌对生物的陷阱,可以在 PvP 的情况下放出它们
  • 对于服务器新玩家的登入测试
  • 可以实现团队协作小游戏:一个人必须踩着压力板,另一个人才能通过
  • 搭配桥梁机制一起建成吊桥(对于城堡来说很有帮助)
  • 只要有心,就有其他用途

</spoiler>

权限

<spoiler>

{

(Elevators) 电梯

电梯
电梯能够让你快速的在楼层间移动(通过平行传送)。

电梯的牌子必须在同一列互相竖直对齐。

建造

<spoiler>

电梯是普通的竖直对齐告示牌

不过,这些告示牌的种类也不同,所以你在某层上用它们能做的事也不同。

  • 在牌子的第二行使用 [Lift Up] 让玩家上到带有电梯牌子标识的上层
  • 在牌子的第二行使用 [Lift Down] 让玩家下到带有电梯牌子标识的下层
  • 在牌子的第二行使用 [Lift] 没有任何的触发效果,但是可以作为电梯牌子标识

牌子的第一行可以用来提醒玩家当前的楼层数

如果你开启了循环模式,点击“上楼”但是上面没有电梯层了的话,你就会回到最底层。

“下楼”也是如此。

观看教学视频来学习怎样制作电梯和它们工作的方式。

审核中


电梯在2.0版本后,不会使玩家卡在方块中了。

电梯现在也会检测玩家在上下楼后脚底有没有方块。

注意电梯是直接向上或向下传送玩家的。

确保楼层的高度是足够的,不然你会收到一条“您的目的地被阻塞”的消息。

</spoiler>

多楼层

<spoiler>

对于多楼层来说,一套电梯系统是不够的。

一套电梯系统仅仅只能在两个楼层间上下移动(由牌子定义)。

如果你想要多楼层的话,你需要多套电梯系统。

三层楼的电梯系统

</spoiler>

权限

<spoiler>

{

Next

电路

载具

参考资料