Taint Poison
Thaumcraft 4 注册的 9 个自定义药水效果之一,也是少数在公共 API 包中定义的药水。
基本信息
| 属性 | 值 |
|---|---|
| 类 | thaumcraft.api.potions.PotionFluxTaint |
| 注册处 | Config.java:308-309 |
| 本地化键 | potion.fluxtaint = Taint Poison |
| 效果 ID | 运行时分配:config.get("Potions","potionTaintPoisonID", 19) 得到的默认值随后被 Potion.getNextPotionId() 覆盖(Config.java:308),故无法核实静态 ID |
| 减益(有害) | 是 —— 构造第 2 参传 true,且 isBadEffect() 覆写为 true |
| 图标 | (3, 1) |
| 颜色 | 6697847 |
| 效力 | setEffectiveness(0.25D)(Config.java:311) |
| 触发间隔 | isReady = int k = 40 >> 等级,即每 40 >> amplifier tick 触发一次 |
效果(performEffect,PotionFluxTaint.java)
⚠️ 订正:原条目写"持续缓慢消耗生命值"。语义写反了一半 —— 对被污染生物而言它是治疗,不是伤害。
对目标执行三分支判断:
- 目标是
ITaintedMob(污染生物接口)→heal(1.0)治疗,不造成伤害; - 目标非亡灵、且不是玩家 → 造成
1.0点伤害; - 目标非亡灵、且(最大生命值 > 1 或目标是玩家)→ 造成
1.0点伤害。
即:污染生物被它治疗,普通生物和玩家被它扣血。原条目"缓慢消耗玩家生命值"只在"目标是玩家"这一支成立,对污染生物完全相反。
时长
PotionFluxTaint 及其父类路径未调用 setDuration,因此实际持续时间完全由施加方构造的 PotionEffect 传入的时长决定,本类不设默认值。
相关条目
- Flux Flu — 同属 Vis 消耗系
- Flux Phage — 同属 Vis 消耗系,可传染
- Flux Goo — 魔法坩埚在 Taint 模式下的产物
- Thaumarhia — 会把方块变成 Flux Goo