跳到正文
烈焰甘蔗Wiki

Sun Scorned

PotionSunScorned 的官方英文名。本组 9 个效果中逻辑最完整的一个 —— 它明确覆写了 performEffect 与 isReady。

基本信息

属性 值
类 thaumcraft.common.lib.potions.PotionSunScorned
注册处 Config.java:364-365
本地化键 potion.sunscorned = Sun Scorned
效果 ID 运行时分配:默认值 17 会被 Potion.getNextPotionId() 覆盖(Config.java:364),故无法核实静态 ID
减益(有害) 是 —— 构造第 2 参传 true,isBadEffect() = true
图标 (6, 2)
颜色 16308330
效力 setEffectiveness(0.25D)(Config.java:367)
触发间隔 isReady = par1 % 40 == 0,即每 40 tick

效果(performEffect,仅服务端 !worldObj.isRemote)

float f = target.getBrightness(1.0F);

明亮分支(PotionSunScorned.java:51-57)—— 三条条件全部满足才点燃:

  1. f > 0.5F
  2. rand.nextFloat() * 30.0F < (f - 0.4F) * 2.0F
  3. worldObj.canBlockSeeTheSky(目标方块坐标) —— 头顶无遮挡

→ target.setFire(4),即燃烧 4 秒。

阴暗分支(PotionSunScorned.java:59-61)—— else if (f < 0.25F && rand.nextFloat() > f * 2.0F) 时:

→ target.heal(1.0F),治疗 1 点生命值。

订正记录

原条目写"在阳光下会使玩家缓慢失去生命值"。语义不准:源码中明亮分支是 setFire(4)(点燃,不是直接扣血),且完全不看目标是不是玩家,对任何实体一致。阴暗分支则是净治疗。

时长

未调用 setDuration → 时长由施加方构造的 PotionEffect 决定。

相关条目

浏览全部模组