修复PVP测试场亡灵生物白天被太阳灼烧(SUNBURN)的bug

- 生成练习生物(僵尸/小白)时挂载长时效防火(PotionEffectType.FIRE_RESISTANCE)效果
- 防火直接免疫太阳灼烧的着火伤害,亡灵生物不再白天自燃
- 仅作用于测试场练习生物,不影响玩家与其他世界
This commit is contained in:
2026-07-09 19:46:09 +08:00
parent ac92cdb31e
commit d7afdd2a47
@@ -14,6 +14,8 @@ import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;
import org.bukkit.projectiles.ProjectileSource;
import org.bukkit.util.Vector;
@@ -386,6 +388,12 @@ public class PVPTestManager implements Listener {
m.setPersistent(true);
m.setTarget(p);
}
// 亡灵生物(僵尸/小白)在白天会被太阳灼烧(SUNBURN)。
// 加一个长时效防火效果,直接免疫太阳灼烧,保证练习生物不会自燃。
mob.addPotionEffect(new PotionEffect(
PotionEffectType.FIRE_RESISTANCE,
630720000, // ≈1年(游戏刻),练习生物离开即清理,足够覆盖整次练习
0, false, false, false));
mobDifficulty.put(mob.getUniqueId(), diff);
playerMobs.computeIfAbsent(p.getUniqueId(), k -> new ArrayList<>()).add(mob.getUniqueId());
}