主题
作用
NoFireSpread 用于阻止火焰继续蔓延,并可进一步阻止方块被火焰烧毁。
它特别适合主城、木质建筑区、展示区、长期生存建筑地图等不希望火势失控的场景。
默认配置:GroovyConfig/NoFireSpread.yml
如果你在
config.yml -> feature-scripts.config-directory中改过脚本配置目录,请以实际目录为准。
配置示例
yml
# 是否启用该脚本
enabled: true
# 生效世界列表
# 留空 [] 表示所有世界都生效
worlds: []
# 是否阻止火焰通过点燃事件继续蔓延
prevent-ignite-spread: true
# 是否阻止火焰方块继续扩散
prevent-fire-spread: true
# 是否阻止方块被火焰烧毁
prevent-block-burn: true关键项说明
worlds
限定脚本生效的世界。
[]:所有世界生效- 填世界名列表:只在这些世界生效
prevent-ignite-spread
阻止通过 BlockIgniteEvent 的 SPREAD 原因继续点燃周围方块。
prevent-fire-spread
阻止火焰方块本身通过 BlockSpreadEvent 扩散。
prevent-block-burn
阻止可燃方块因火焰而被烧毁。
实际行为
当前实现会同时监听:
BlockIgniteEventBlockSpreadEventBlockBurnEvent
也就是说,这不是单一拦截某一种火焰扩散入口,而是把“点燃继续扩散”“火焰方块扩散”“方块烧毁”这三类常见行为一起控制。
启用与重载
修改这个脚本的配置文件后,通常执行:
text
/hncore reload scripts如果你改的是 config.yml 中的脚本目录名、脚本系统总开关等核心配置,则应执行:
text
/hncore reload联动说明
- 想防止爆炸破坏建筑:搭配 ExplosionProtect
- 想进一步保护主城和展示区:搭配 WorldProtect、EndermanProtect
- 想看全部脚本索引:看 GroovyScripts 总览
注意事项
- 它控制的是“蔓延”和“烧毁”,不是简单禁用玩家点火行为
- 如果你还需要限制玩家打火石、火焰弹等交互点火,应另外通过保护类逻辑处理
