存储与逻辑方块

基本信息

Draconic Evolution 共注册 5 个存储 / 逻辑类方块。

来源:ModBlocks.java:98-141(实例化)。

注册名 显示名 硬度 爆炸抗性 材质 TileEntity
draconiumChest 龙箱 5.0 2000.0 Material.iron TileDraconiumChest
teleporterStand 错位宝石底座 1.5 10.0 Material.rock TileTeleporterStand
placedItem 放置的物品 5 20 Material.circuits TilePlacedItem
safetyFlame 安全的火焰 5.0 10.0 Material.iron 无
cKeyStone 创造锁 5.0 10.0 Material.iron TileCKeyStone

龙箱细节(240 格、自动熔炼、能量缓冲)见 龙箱,此处不重复。

功能

龙箱(draconiumChest)

  • 继承 BlockCustomDrop,碰撞箱为 (0.0625, 0, 0.0625) → (0.9375, 0.875, 0.9375)(DraconiumChest.java:57),脚步声为 soundTypeStone。

  • 爆炸抗性 2000.0(DraconiumChest.java:58)。

  • 禁止存入的物品由 STORAGE_BLACKLIST 定义(DraconiumChest.java:49-50):

    private static final String[] STORAGE_BLACKLIST = new String[] {
        "tile.thermalexpansion.strongbox",
        "item.thermalexpansion.satchel",
        "tile.draconicevolution:draconiumChest" };
    

    判定方式是 stack.getUnlocalizedName().contains(...)(DraconiumChest.java:62-66),即子串匹配——所以任何未本地化名包含 draconiumChest 的物品都会被一并拒绝。

  • 潜行右键切换编辑模式(DraconiumChest.java:70-80)。

错位宝石底座(teleporterStand)

  • 材质 Material.rock,硬度仅 1.5,是本模组最脆弱的结构方块。
  • 供 错位宝石 / 高级错位宝石 放置与充能使用,对应 GUI GUITeleporter。
  • 错误提示本地化键:msg.teleporterUnSet、msg.teleporterBound、msg.teleporterOutOfFuel、msg.teleporterOutOfPearls、msg.teleporterLowHealth、msg.teleporterEntityDimensional、msg.teleporterPlayerConsent、msg.teleporterPlayerT1、msg.teleporterSentMob、msg.wrongKey。
  • 每个末影珍珠可使用的次数由配置 Teleporter Uses Per Pearl 控制,默认 1(ConfigHandler.java:106-110)。

放置的物品(placedItem)

  • 材质 Material.circuits,仅 1 格可交互,用来在世界中固定展示一个物品。
  • 对应默认按键 key.placeItem(KeyInputHandler.java:53,默认 V 键)。

安全的火焰(safetyFlame)

  • 唯一一个通过 ModBlocks.registerOther(this) 而非 register(this) 注册的方块(SafetyFlame.java:23),因为它不是 BlockDE 子类,走的是 Block.getUnlocalizedName() 的原生路径(ModBlocks.java:153-156)。
  • 熄灭后粒子发生器会转储其中的物品——这是「关掉却丢东西」事故的经典来源,对应本地化键 msg.oblittrue / msg.oblitfalse。

创造锁(cKeyStone)

  • 构造时调用 setBlockUnbreakable()(CKeyStone.java:34),无法被破坏。
  • 对应 TileEntity TileCKeyStone(CKeyStone.java:46-48)。
  • 有 4 个类型,本地化键 msg.cKeyStoneType0 – msg.cKeyStoneType3。

数值

数值名 值 来源
错位宝石底座硬度 1.5 TeleporterStand.java 构造函数
龙箱爆炸抗性 2000.0 DraconiumChest.java:58
放置的物品硬度 / 抗性 5 / 20 PlacedItem.java 构造函数
每颗末影珍珠可用次数 1 ConfigHandler.java:106-110
创造锁类型数 4 msg.cKeyStoneType0 – msg.cKeyStoneType3
错位宝石底座碰撞箱 1.5 硬度,Material.rock TeleporterStand.java

交互

触发 行为
潜行右键龙箱 切换编辑模式(DraconiumChest.java:70-80)
右键错位宝石底座 打开 GUITeleporter,设置传送目标与燃料
按 V 键 放置 / 拾取「放置的物品」中的展示物
创造锁被放置 无法被任何工具破坏
安全的火焰被破坏 掉落其中存储的物品(msg.oblittrue / msg.oblitfalse)

合成配方

  • 错位宝石 / 高级错位宝石属于工具类物品,其配方在 90 条合成配方中;错位宝石底座本身为普通合成。
  • 龙箱配方需要 nugget(龙粒)类材料,参见 合成配方系统。

相关条目