地牢容器
基本信息
| 注册名 | 中文名 | 类 | TileEntity | GUI ID | 硬度 | 抗性 |
|---|---|---|---|---|---|---|
aether_legacy:treasure_chest |
藏宝箱 | BlockTreasureChest |
TileEntityTreasureChest |
5(treasure_chest) |
-1 | 2000.0 |
aether_legacy:chest_mimic |
拟箱怪 | BlockMimicChest |
TileEntityChestMimic |
— | 2.0 | — |
aether_legacy:pillar |
柱石 | BlockPillar |
无 | — | — | — |
aether_legacy:pillar_top |
顶柱 | BlockPillar |
无 | — | — | — |
注册位置:BlocksAether.java:201(chest_mimic)、:202(treasure_chest)、:204(pillar)、:205(pillar_top)。TileEntity 注册在 AetherTileEntities.java:11(藏宝箱)与 :12(拟箱怪)。
功能
藏宝箱
BlockTreasureChest extends BlockChest,super(56) 把箱子朝向固定为 meta 56(BlockTreasureChest.java:25),即原版单箱的固定朝向,因此藏宝箱不随放置方向旋转。
- 硬度
-1.0F(:27)、爆炸抗性2000.0F(:28)——不可破坏 createNewTileEntity返回TileEntityTreasureChest(:58-60)onBlockActivated打开 GUI(:63),GUI ID 为AetherGuiHandler.treasure_chest= 5(AetherGuiHandler.java:31)- 箱子实体被右键时调用
treasurechest.unlock(guiID.getItemDamage())(BlockTreasureChest.java:78),按手持物品的 meta 解锁对应等级的奖励
藏宝箱的战利品分三级,对应 ItemDungeonKey 的 meta:
| key meta | EnumDungeonKeyType |
中文名(zh_CN.lang) |
|---|---|---|
| 0 | Bronze |
青铜钥匙 |
| 1 | Silver |
白银钥匙 |
| 2 | Golden |
黄金钥匙 |
(EnumDungeonKeyType.java:5-7)
拟箱怪
BlockMimicChest extends BlockChest,super(13)(BlockMimicChest.java:17),硬度 2.0F(:19),可破坏(采集等级斧 0,BlocksAether.java:415)。
createNewTileEntity返回TileEntityChestMimic(BlockMimicChest.java:23-25)onBlockActivated(:28)不打开箱子,而是唤醒隐藏在地牢中的EntityMimic实体
拟箱怪是实体 aether_legacy:mimic(实体 ID 11)的伪装形态,见敌对生物。
柱石与顶柱
BlockPillar 用于地牢的立柱结构。两者都用同一个类,靠传入的纹理名区分:
| 方块 | 顶面/侧面纹理 | 顶面纹理 | 来源 |
|---|---|---|---|
pillar |
pillar_side |
pillar_top |
BlocksAether.java:204 |
pillar_top |
pillar_top |
pillar_carved |
BlocksAether.java:205 |
pillar_top 是柱子的顶端收头块,顶部贴图换成带雕纹的 pillar_carved。两者采集等级均为镐 0(BlocksAether.java:417-418)。
数值
| 数值名 | 值 | 来源 |
|---|---|---|
| 藏宝箱固定朝向 meta | 56 | BlockTreasureChest.java:25 |
| 藏宝箱硬度 | -1.0 | BlockTreasureChest.java:27 |
| 藏宝箱抗性 | 2000.0 | BlockTreasureChest.java:28 |
| 藏宝箱 GUI ID | 5 | AetherGuiHandler.java:31 |
| 拟箱怪固定朝向 meta | 13 | BlockMimicChest.java:17 |
| 拟箱怪硬度 | 2.0 | BlockMimicChest.java:19 |
| 藏宝箱实体 ID(TileEntity) | aether_legacy:treasure_chest |
AetherTileEntities.java:11 |
| 拟箱怪实体 ID(TileEntity) | aether_legacy:chest_mimic |
AetherTileEntities.java:12 |
交互
| 触发 | 藏宝箱 | 拟箱怪 |
|---|---|---|
| 右键 | 打开战利品 GUI(ID 5),并按手持钥匙 meta 解锁奖励 | 唤醒 EntityMimic 实体 |
| 破坏 | 不可破坏 | 可被斧破坏,掉落物见 getItemDropped |
| 中键拾取 | 掉落自身物品 | 掉落自身物品 |
藏宝箱的解锁依赖手持 ItemDungeonKey(BlockTreasureChest.java:78 传入 guiID.getItemDamage())。若手持物不是钥匙,damage 值决定实际解锁的等级。