高级物品收集器
基本信息
| 属性 | 值 |
|---|---|
| 注册名 | RandomThings:advancedItemCollector |
| 类 | lumien.randomthings.Blocks.BlockAdvancedItemCollector |
| TileEntity | TileEntityAdvancedItemCollector(ModTileEntities.java:26,注册名 advanceditemcollector) |
| 材质 | Material.rock |
| 硬度 | 1.5F(BlockAdvancedItemCollector.java:30) |
| 碰撞箱 | (0.35, 0, 0.35) → (0.65, 0.3, 0.65)(:32) |
| 贴图 | RandomThings:itemCollector/advancedItemCollector(:31) |
| GUI ID | GuiIds.ADVANCED_ITEMCOLLECTOR = 2(GuiIds.java:7) |
| 开关 | 共用 Blocks.ItemCollector(无独立开关) |
功能
与物品收集器共用同一套朝向规则与极小碰撞箱(:32 数值与 BlockItemCollector.java:23 完全一致),核心差异是它有自己的内部库存。
breakBlock 覆写会遍历 te.getInventory(),把每一格非空物品以随机偏移散落为 EntityItem,每批 10–30 个(BlockAdvancedItemCollector.java:37-60):
float f = this.rng.nextFloat() * 0.8F + 0.1F;
float f1 = this.rng.nextFloat() * 0.8F + 0.1F;
int j1 = this.rng.nextInt(21) + 10;
即单次散落数量为 [10, 30](nextInt(21) 取 0–20 再加 10),并按 itemstack.stackSize 截断。
它与物品收集器在 ModBlocks.init() 中处于同一个 if 分支(ModBlocks.java:46-49),配置层面也共用 Blocks.ItemCollector(RTConfiguration.java:201)。
数值
| 数值名 | 值 |
|---|---|
| 碰撞箱高度 | 0.3 格 |
| 掉落散落批量 | 10–30 个/次(BlockAdvancedItemCollector.java:55) |
| 独立配置项 | 无,共用 Blocks.ItemCollector |
| 过滤器槽 | 由 ContainerAdvancedItemCollector 提供 |
交互
| 触发 | 行为 |
|---|---|
| 右键 | 打开 GUI ID 2(zh_CN.lang:179 有中文标题「高级物品收集器」) |
| 朝向格变空气 | 自毁 + 掉落 |
| 破坏 | 内部库存随机散落 |
合成配方
xdx
gig
| 字符 | 物品 |
|---|---|
d |
钻石(gemDiamond) |
g |
荧石粉(dustGlowstone) |
i |
物品收集器 |
来源:Library/Recipes.java:195-205。