附魔与药水效果

基本信息

Draconic Evolution 注册 1 个自定义附魔;自定义药水效果系统存在但已失效,实际生效的全部是原版药水 ID。

类型 内部名 本地化键 说明
附魔 DraconicEvolution.reaperEnchant enchantment.draconicevolution.reaperEnchant(英文值 Reaper) 收割者,唯一自定义附魔
自定义药水基类 PotionHandler.PotionBase potion.de.*.txt 全部注释,未生效,见下方

功能

收割者附魔(EnchantmentReaper)

类:com.brandon3055.draconicevolution.common.magic.EnchantmentReaper(EnchantmentReaper.java:11-33)。

构造签名 super(id, 2, EnumEnchantmentType.weapon),三个参数分别是:

参数 值 含义
id 来自配置 附魔 ID,默认 180
weight 2 附魔权重(Enchantment.setName 之前由父类字段设定)
type EnumEnchantmentType.weapon 只能附在武器上
  • 实例化于 CommonProxy.java:147:DraconicEvolution.reaperEnchant = new EnchantmentReaper(ConfigHandler.reaperEnchantID);
  • 附魔 ID 由配置项 Reaper Enchant id 决定,默认 180(ConfigHandler.java:359),配置分类为 magicId's。
  • 最高等级 5(EnchantmentReaper.java:17-20)。
  • 最低附魔门槛 getMinEnchantability(level) = 1 + 10 × (level - 1),即第 1 级 1 点、第 2 级 11 点、第 3 级 21 点……(EnchantmentReaper.java:22-25)。
  • 最高附魔门槛 getMaxEnchantability(level) = getMinEnchantability(level) + 50(EnchantmentReaper.java:27-30)——注意此处调用的是父类的 getMinEnchantability 而非本类重写版本,因此不随等级递增。

自定义药水系统 —— 已失效

common/magic/PotionHandler.java 定义了 PotionBase extends Potion 抽象基类,但:

  • PotionHandler.init() 是空方法(PotionHandler.java:11)。
  • renderInventoryEffect() 的整个方法体被注释掉(PotionHandler.java:25-43),包括全部 6 个效果名称的绘制代码。
  • shouldRenderInvText() 返回 false(PotionHandler.java:18-21)。

因此本地化文件中的 6 个药水键全部没有任何代码引用:

本地化键 英文值 状态
potion.de.effect.txt Effect 未引用
potion.de.flight.txt Flight 未引用
potion.de.highStep.txt High Step 未引用
potion.de.swiftness.txt Swiftness 未引用
potion.de.fireImmune.txt Fire Immunity 未引用
potion.de.jumpBoost.txt Jump Boost 未引用

实际生效的原版药水效果

龙之力护甲与食物直接使用原版 Potion 枚举:

效果 来源 参数
夜视 DraconicArmor.java:227, 230 new PotionEffect(Potion.nightVision.id, 419, 0, true)
夜视(脱下时清除) DraconicArmor.java:231 player.removePotionEffect(Potion.nightVision.id)
虚弱 DraconicArmor.java:269-272 护甲会屏蔽负面效果,但手持 TConstruct 巨剑时例外(ModHelper.isHoldingCleaver)
攻击伤害 +5 / 挖掘速度 +5 DezilsMarshmallow.java:34-35 new PotionEffect(Potion.damageBoost.id, 20*60*10, 5) 与 Potion.digSpeed.id,持续 200 秒
僵尸负面效果 MinecraftForgeEventHandler.java:359-360 PotionEffect(5, 10000, 3) + PotionEffect(11, 10000, 2)
玩家加速 MinecraftForgeEventHandler.java:364 PotionEffect(2, 500, 3)
末影龙抗性 EntityCustomDragon.java:78 PotionEffect(10, 600, 10, false)

数值

数值名 值 来源
收割者附魔默认 ID 180 ConfigHandler.java:359
收割者附魔最高等级 5 EnchantmentReaper.java:17-20
收割者最低附魔门槛 1 + 10 × (level − 1) EnchantmentReaper.java:23
收割者最高附魔门槛 最低值 + 50(恒定) EnchantmentReaper.java:29
收割者可附对象 仅武器 EnchantmentReaper.java:12
棉花糖增益持续时间 200 秒(20 × 60 × 10 tick) DezilsMarshmallow.java:34-35
棉花糖增益等级 +5 DezilsMarshmallow.java:34-35
夜视持续时间 419 tick DraconicArmor.java:227, 230

交互

触发 行为
装备龙之心 / 觉醒龙块制作的护甲头盔 获得夜视
卸下该头盔 清除夜视
穿着龙之护甲时 屏蔽负面药水效果(持 TConstruct 巨剑时失效)
食用 Dezil 的棉花糖 获得 200 秒攻击伤害 +5 与挖掘速度 +5
在铁砧 / 书桌对武器施加附魔 出现「收割者」选项
末影龙召唤完成 自动获得 600 tick 的抗性 X

相关条目

  • 护甲 - 夜视与负面效果屏蔽的来源
  • 祛魔台 - 唯一可以移除附魔的机器(msg.de.toggleOblit / info.de.toolInventoryEnch)
  • 单方块机器 - 能量注入器、升级调整器