📄
XPlus KubeJS Tutorial v2 (zh_cn)
  • 一、前言
    • KubeJS 6 魔改教程更新日志
    • 1.1 常用游戏内指令与ProbeJS使用
    • 1.2 文件结构和脚本类型
    • 1.3 脚本基础和格式变化
    • 1.4 事件列表
  • 二、配方
    • 2.1 物品的表示——ItemStack和Ingredient
    • 2.2 配方的添加,修改和移除
    • 2.3 非标准配方修改
    • 2.4 配方ID
  • 三、内容修改
    • 3 标签
    • 4 方块注册和属性修改
    • 5 物品注册和属性修改
    • 6 特殊类型方块和物品
      • 6.1 作物方块和种子
      • 6.2 食物注册
      • 6.3 BlockBench入门教程
    • 7 附魔添加
    • 8 流体注册
    • 9.战利品表
    • 10 世界生成
  • 四、附属模组
    • 11 常用附属模组清单
    • 11.1 KubeJS Create
    • 11.2 LootJS —— 便捷战利品表修改
由 GitBook 提供支持
在本页
  • 一、监听事件
  • 二、Wrapper类的移除

这有帮助吗?

  1. 一、前言

1.3 脚本基础和格式变化

上一页1.2 文件结构和脚本类型下一页1.4 事件列表

最后更新于10个月前

这有帮助吗?


在KubeJS中,你需要使用来编写脚本,JavaScript的教程可以在网络上找到~~(肯定比我讲得好)~~。

一、监听事件

绝大多数KubeJS的脚本都需要以监听事件为基础。

相比于1.16.5中,KubeJS 6中事件组.事件名称(event => {})替代了先前的onEvent('字符串.事件.id', event => {})格式

以监听方块右键事件为例:

// 1.19(KubeJS 6)

BlockEvents.rightClicked(event => {
  if(event.block.id === 'minecraft:dirt') {
    console.info('Hi!')
  }
})

// 1.16.5 - 1.18.2

onEvent('block.right_click', event => {
  if(event.block.id === 'minecraft:dirt') {
    console.info('Hi!')
  }
})

此外,新的事件监听格式还支持通过传入参数设置事件ID,如事件组.事件名称(para, event => {})

// 1.19(KubeJS 6)

BlockEvents.rightClicked('minecraft:dirt', event => {// 'minecraft:dirt'为参数,该事件在右键点击泥土方块时触发
  console.info('Hi!')
})

BlockEvents.rightClicked('minecraft:stone', event => {// 'minecraft:stone'为参数,该事件在右键点击石头方块时触发
  console.info('Bye!')
})

// 1.16.5 - 1.18.2

onEvent('block.right_click', event => {
  if(event.block.id === 'minecraft:dirt') {// 手动判断方块ID
    console.info('Hi!')
  } else if(event.block.id === 'minecraft:stone') {
    console.info('Bye!')
  }
})

一些事件_必须_填写ID:

StartupEvents.register('item', event => {
  // 注册物品代码
})

ServerEvents.tags('item', event => {
  // 物品tag修改代码
})

有关事件详细教程,请见后续章节

二、Wrapper类的移除

在1.19+中,EntityJS, LevelJS, ItemStackJS, IngredientJS等Wrapper类被移除,带来了显著的性能和兼容性提升。旧版本中绝大多数的方法依旧被新版本支持。详细教程详见后文。

**在ProbeJS的帮助下,你可以快速编写代码而不必依赖于文档。**若仍有需要,可参考、、 、 或。

JavaScript语言
KubeJS源代码仓库
官方列表(旧)
1.16-1.18版本教程
Fabric JavaDoc
Forge JavaDoc