苍蝇配方
这里设置苍蝇能产出什么,以及由哪些苍蝇繁育得到。前提是该苍蝇已经在 自定义苍蝇品种 中注册。
脚本放在 kubejs/server_scripts/,例如:
text
kubejs/server_scripts/poopsky_fly_recipes.js基本写法
假设你已经注册了 ID 为 apple 的苍蝇,下面的代码会开始配置它的配方:
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
})这里的 register('apple') 不会重新创建品种,只是选中 apple,方便接着设置它的配方。
苍蝇桶产物
使用 .flyBarrel():
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.flyBarrel('minecraft:apple', 2)
})这表示:
text
apple 苍蝇 → 2 个苹果第二个参数是数量;只产出一个时可以省略:
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.flyBarrel('minecraft:apple')
})繁育配方
使用 .breeding():
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.breeding('red', 'orange', 0.35)
})表示:
text
red + orange → apple变异成功率为 35%。概率填写 0 到 1 的小数:
text
0 ~ 1例如:
| 数值 | 概率 |
|---|---|
0.1 | 10% |
0.2 | 20% |
0.35 | 35% |
0.5 | 50% |
1 | 100% |
默认概率
也可以省略繁育概率:
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.breeding('red', 'orange')
})默认值为 0.2,也就是 20%。
添加多个繁育方式
同一只苍蝇可以连续添加多个 .breeding():
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.breeding('red', 'orange', 0.35)
.breeding('white', 'orange', 0.5)
})这样 apple 有两种繁育方式:
text
red + orange → apple,35%
white + orange → apple,50%完整示例
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.flyBarrel('minecraft:apple', 2)
.breeding('red', 'orange', 0.35)
.breeding('white', 'orange', 0.5)
})这段代码会让:
apple苍蝇在苍蝇桶里产出2个苹果red + orange有35%概率得到applewhite + orange有50%概率得到apple
可用方法
| 方法 | 作用 | 默认值 |
|---|---|---|
.flyBarrel(物品, 数量) | 添加苍蝇桶产物 | 数量可省略 |
.breeding(父本1, 父本2, 概率) | 添加繁育方式 | 0.2 |
和苍蝇注册有什么区别?
苍蝇本身在 kubejs/startup_scripts/ 注册,例如:
javascript
PoopSkyStartupEvents.flytype(event => {
event.register('apple')
.name('Apple Fly')
})配方则写在 kubejs/server_scripts/,例如:
javascript
PoopSkyServerEvents.flyType(event => {
event.register('apple')
.flyBarrel('minecraft:apple', 2)
})可以这样区分:
text
startup_scripts → 添加这只苍蝇
server_scripts → 设置这只苍蝇能做什么热重载
苍蝇配方属于服务端脚本。修改后执行:
text
/reload即可生效。
自定义苍蝇品种其他模组配方