TileEntity 注册总表
基本信息
| 属性 | 值 |
|---|---|
| 注册 TileEntity 总数 | 41 |
| 注册源 | com.fouristhenumber.utilitiesinexcess.ModTileEntities(enum,ModTileEntities.java:50-92) |
| 注册调用 | ModTileEntities.init() 遍历 VALUES 并调用 GameRegistry.registerTileEntity(ModTileEntities.java:97-103) |
| 计数校验 | 枚举常量数 41 / 无配置门条目 0(逐条解析常量首参确认) |
| 默认启用情况 | 41/41 无条件注册 |
| 调用时机 | CommonProxy.preInit(CommonProxy.java 的 preInit 段) |
功能
与方块 / 物品不同,TileEntity 注册完全不受配置开关控制。ModTileEntities 的两参构造 ModTileEntities(Class, String) 直接转发到 ModTileEntities(boolean isEnabled, Class, String) 并传入 true(ModTileEntities.java:112-114),41 个枚举常量全部使用两参构造——逐条解析确认没有任何一个常量的首参是布尔量或配置表达式。
因此即使把某个方块的开关关掉,其 TileEntity 仍会注册。由于方块不存在时 TileEntity 不会被实例化,这在实践中是无害冗余,但它是本模组中**唯一一处"注册与配置解耦"**的注册表。
VALUES 静态字段 ModTileEntities.VALUES = values()(ModTileEntities.java:95)供外部遍历使用。
数值
| TileEntity 族 | 数量 | 说明 |
|---|---|---|
| 发电机 | 12 | TileEntityBaseGenerator 的 12 个子类,与 36 个发电机方块对应 |
| 文件柜 | 3 | TileEntityFilingCabinet.Basic / .Advanced / .Elite(一个类的三个内部类) |
| 箱子 | 3 | 三档箱子的 TileEntity,同样构成继承链 |
| 垃圾桶 | 3 | 物品 / 流体 / 能量 |
| 尖刺 | 1 | 4 种尖刺共用 |
| 其余(独立类) | 19 | 采集器、智能泵、虚空采掘场、红石时钟等 |
| 合计 | 41 |
交互
| 触发 | 行为 |
|---|---|
preInit |
41 个 TileEntity 全部注册 |
| 世界加载 | 按方块绑定的 TE 类型实例化;无方块则不实例化 |
| 区块卸载 / 销毁 | 正常的 NBT 持久化与邻居更新 |
完整注册表
| 枚举常量 | 注册名 | 实现类 |
|---|---|---|
SPIKE |
Spike |
TileEntitySpike |
REDSTONE_CLOCK |
RedstoneClock |
TileEntityRedstoneClock |
TRASH_CAN_ITEM |
TrashCanItem |
TileEntityTrashCanItem |
TRASH_CAN_FLUID |
TrashCanFluid |
TileEntityTrashCanFluid |
TRASH_CAN_ENERGY |
TrashCanEnergy |
TileEntityTrashCanEnergy |
DRUM |
Drum |
TileEntityDrum |
PURE_LOVE |
PureLove |
TileEntityPureLove |
CHEST_MAX |
MarginallyMaximisedChest |
TileEntityMarginallyMaximisedChest |
CHEST_SHRUNK |
SignificantlyShrunkChest |
TileEntitySignificantlyShrunkChest |
CHEST_SMALL |
RadicallyReducedChest |
TileEntityRadicallyReducedChest |
MUFFLER_SOUND |
SoundMuffler |
TileEntitySoundMuffler |
MUFFLER_RAIN |
RainMuffler |
TileEntityRainMuffler |
BLOCK_UPDATE_DETECTOR |
BlockUpdateDetector |
TileEntityBlockUpdateDetector |
CONVEYOR |
Conveyor |
TileEntityConveyor |
PORTAL_UNDERWORLD |
PortalUnderWorld |
TileEntityPortalUnderWorld |
GENERATOR_LOW_TEMP_FURNACE |
LowTemperatureFurnaceGenerator |
TileEntityLowTemperatureFurnaceGenerator |
GENERATOR_FURNACE |
FurnaceGenerator |
TileEntityFurnaceGenerator |
GENERATOR_HIGH_TEMP_FURNACE |
HighTemperatureFurnaceGenerator |
TileEntityHighTemperatureFurnaceGenerator |
GENERATOR_LAVA |
LavaGenerator |
TileEntityLavaGenerator |
GENERATOR_ENDER |
EnderGenerator |
TileEntityEnderGenerator |
GENERATOR_REDSTONE |
RedstoneGenerator |
TileEntityRedstoneGenerator |
GENERATOR_FOOD |
FoodGenerator |
TileEntityFoodGenerator |
GENERATOR_POTION |
PotionGenerator |
TileEntityPotionGenerator |
GENERATOR_SOLAR |
SolarGenerator |
TileEntitySolarGenerator |
GENERATOR_TNT |
TNTGenerator |
TileEntityTNTGenerator |
GENERATOR_PINK |
PinkGenerator |
TileEntityPinkGenerator |
GENERATOR_NETHER_STAR |
NetherStarGenerator |
TileEntityNetherStarGenerator |
PACIFISTS_BENCH |
PacifistsBench |
TileEntityPacifistsBench |
TRADING_POST |
TradingPost |
TileEntityTradingPost |
ADVANCED_BLOCK_UPDATE_DETECTOR |
AdvancedBlockUpdateDetector |
TileEntityAdvancedBlockUpdateDetector |
CHANDELIER |
Chandelier |
TileEntityChandelier |
GIGA_TORCH |
GigaTorch |
TileEntityGigaTorch |
ENDER_LOCUS |
EnderLocus |
TileEntityEnderLocus |
VOID_QUARRY |
VoidQuarry |
TileEntityVoidQuarry |
VOID_MARKER |
VoidMarker |
TileEntityVoidMarker |
TRUE_GREENSCREEN |
TrueGreenscreen |
BlockTrueGreenscreen.TileEntityTrueGreenscreen |
FILING_CABINET_BASIC |
FilingCabinetBasic |
TileEntityFilingCabinet.Basic |
FILING_CABINET_ADVANCED |
FilingCabinetAdvanced |
TileEntityFilingCabinet.Advanced |
FILING_CABINET_ELITE |
FilingCabinetElite |
TileEntityFilingCabinet.Elite |
COLLECTOR |
Collector |
TileEntityCollector |
SMART_PUMP |
SmartPump |
TileEntitySmartPump |
注册名说明:上表"注册名"列是传给 GameRegistry.registerTileEntity 的 name 参数,它会拼成最终 ID utilitiesinexcess:<name>。注意它与方块注册名不一定同名——例如 SPIKE 的注册名是 Spike(而非方块的 wood_spike),REDSTONE_CLOCK 的注册名是 RedstoneClock。