热砂

基本信息

属性 值
注册名 Natura:heatsand
方块类 mods.natura.blocks.nether.HeatSand
父类 net.minecraft.block.BlockFalling
硬度 3f(构造函数内设置)
采集等级 铲 0 级
脚步声 Block.soundTypeSand
碰撞箱高度 0.875(顶部 1/8 留空)
开关 无(始终注册)

功能

热砂是受重力影响的下界材料方块,并带接触伤害。它继承 BlockFalling(HeatSand.java:19),因此支持原版砂砾的全部行为:被破坏后掉落成下落方块实体。

接触伤害

onEntityCollidedWithBlock(HeatSand.java:43-54)对踩在其上的实体造成 1 点 DamageSource.inFire 伤害:

  • 玩家:仅当副手槽位(inventory.getStackInSlot(36))为空时才受伤 —— 拿着盾牌的玩家可以免疫
  • 其他生物:仅当实体 !isImmuneToFire() 时受伤
  • 方法中原本还有减速逻辑 motionX *= 0.4D; motionZ *= 0.4D,已被注释掉(:51-52),故当前没有减速效果

碰撞箱

getCollisionBoundingBoxFromPool 覆写了原版,使碰撞箱顶部留出 1/8 空隙(f = 0.125F),使生物站上去时略微陷入(HeatSand.java:37-41)。

数值

数值名 值 来源
硬度 3.0 HeatSand.java:25
碰撞箱高度 0.875 HeatSand.java:38-40
接触伤害 1 点 HeatSand.java:46,51
伤害类型 DamageSource.inFire 同上
光照等级 0(发光被注释) NContent.java:159

NContent.java:159 的 setLightLevel(0.375f) 已被注释,因此热砂不发光。

交互

触发 行为
玩家无副手物品踩上 受到 1 点燃烧伤害
玩家手持副手物品(如盾牌)踩上 免疫
免疫火属性的生物踩上 免疫
破坏 掉落为下落方块实体(BlockFalling 行为)

合成配方

无序合成:热砂 + 污秽土 → 1 个灵魂沙(NContent.java:927,注意该配方在 if (PHNatura.enableNetherGlass) 之外,无条件注册):

材料 产物
热砂 + 污秽土 灵魂沙 ×1

熔炼:热砂 → 下界玻璃 meta 1(经验 0.3,见 下界玻璃)。

相关条目