📄
XPlus KubeJS Tutorial v1 (zh_cn)
  • 前言
    • 本文更新日志
  • 一、一切的开始
    • 1.1 常用指令
    • 1.2 文件结构
    • 1.3 脚本基础
    • 1.4 事件列表
  • 二、配方
    • 2.1 新建配方及物品表示
    • 2.2 配方的修改和删除
    • 2.3 非标准配方修改
  • 三、自定义修改初步
    • 3 标签
    • 4 自定义Loot Table
    • 5 自定义流体
    • 6 自定义世界生成
    • 7 添加方块
    • 10:自定义窗口标题和logo
  • 四、事件初步
    • 8 聊天事件
    • 9 计划重启
  • 五、针对其他模组的修改
    • 11.1 JEI信息修改
    • 11.2 REI信息修改
    • 11.3 FTB Quest相关修改
    • 11.4 KubeJs内置游戏阶段 (类似于GameStage)
  • 六、拓展模组简介
    • 12.1 KubeJS Create
    • 12.2 KubeJS Blood Magic
    • 12.3 KubeJS Mekanism
    • 12.4 KubeJS UI
    • 12.5 KubeJS Termal
    • 12.7 便捷战利品表修改(LootJS Forge)
    • 12.8 LootJS战利品表修改实例
  • 七、游戏内容修改进阶
    • 13 自定义物品和物品ToolTip
    • 14 方块和物品属性修改
  • 八、事件进阶
    • 15.0 事件列表
    • 15.1 玩家&实体事件,信息获取及操作
    • 15.2 实体生成 & RayTraceResultJS & ItemStackJS及其他
    • 15.3 方块信息获取及操作
    • 15.4 WorldJS 和 ServerJS
    • 15.5 本章例子
    • 15.6 测试用例
  • 九、杂项
    • 16 网络包和Painter API
    • 17 本地化相关
    • 18.1 熔炼之镐
    • 18.2 罐头示例(包含物品注册, 配方添加, 玩家交互和persistentData的使用)
    • 19 Forge事件监听
  • 十、1.18.2的变化和介绍
    • 20 1.18.2中的变化和功能
    • 20.1 ProbeJS
    • 20.2 组件(Component)的使用
    • 20.3 格式变化
      • 20.3.1 世界生成
      • 20.3.2 方块 / 物品注册
      • 20.3.3 事件
      • 20.3.4 global[] 的使用
    • 20.4 命令注册
    • 20.5 反射与Java access
由 GitBook 提供支持
在本页
  • 1、物品属性修改
  • 2、方块属性修改

这有帮助吗?

在GitHub上编辑
  1. 七、游戏内容修改进阶

14 方块和物品属性修改


KubeJs允许你修改一些已经存在的物品/方块的属性

1、物品属性修改

onEvent('item.modification', event => {
  event.modify('minecraft:ender_pearl', item => {
    item.maxStackSize = 64
    item.fireResistant = true
  })
})

该段示例脚本将末影珍珠每组最大数量调整为了64,并且不会被烧毁

以下是可以使用的方法(a = b):

  • maxStackSize // 每组数量

  • maxDamage // 最大耐久值

  • burnTime // 燃烧时间(燃料)

  • craftingReminder // 合成后剩余物品(字符串)

  • fireResistant // 是否抗火

  • rarity // 稀有度(如Rarity.COMMON)

  • tier = tierOptions => { // 物品等级

    • uses // 耐久

    • speed // 挖掘速度

    • attackDamageBonus // 攻击伤害

    • level // 工具等级

    • enchantmentValue // 附魔值

    • repairIngredient // 铁砧修复需要使用的物品,格式如Ingredient.of('物品注册名')

  • }

  • foodProperties = food => { // 食物设置。注: 使用函数而不是 a = b

    • hunger(int) // 饱食度

    • saturation(float) // 饱和度

    • meat(boolean) // 是否为肉食

    • alwaysEdible(boolean) // 是否总是可食用(无论饱食度)

    • fastToEat(boolean) // 是否能被快速吃掉

    • effect(效果ID(字符串), 时间(整形), 效果等级(整形), 获得倍率(浮点型)) // 吃掉后给予的效果

    • removeEffect(String effectId) // 吃掉后移除的效果

  • }

2、方块属性修改

onEvent('block.modification', event => {
  event.modify('minecraft:stone', block => {
    block.destroySpeed = 0.1
    block.hasCollision = false
  })
})

该段示例脚本将石头的破坏速度调整为0.1, 并且使其无碰撞箱

以下是可使用的方法(a = b):

  • material // 材质

  • boolean hasCollision // 是否有碰撞箱(布尔型)

  • destroySpeed // 破坏速度(浮点型)

  • explosionResistance // 爆炸抗性(浮点型)

  • randomlyTicking // 是否接受随机刻控制

  • soundType // 声音类型

  • friction // 摩擦(浮点型)

  • speedFactor // 速度倍率

  • jumpFactor // 跳跃倍率

  • lightEmission // 发光强度

  • requiredTool // 是否需要工具掉落

上一页13 自定义物品和物品ToolTip下一页15.0 事件列表

这有帮助吗?