Move some blocks to their own feature category and add some comments (#3618)

Start of a bigger cleanup happening in 1.13 to fix the worst issues.
This commit is contained in:
fscan
2018-07-14 21:25:06 +02:00
committed by GitHub
parent f4ef7edf86
commit c8eb792d38
3 changed files with 45 additions and 29 deletions
+1
View File
@@ -215,6 +215,7 @@ public final class AEConfig extends Configuration implements IConfigurableObject
this.clientSync();
this.addCustomCategoryComment( "features", "Warning: Disabling a feature may disable other features depending on it." );
for( final AEFeature feature : AEFeature.values() )
{
if( feature.isVisible() )
@@ -265,11 +265,13 @@ public final class ApiBlocks implements IBlocks
.build();
this.matrixFrame = registry.block( "matrix_frame", BlockMatrixFrame::new ).features( AEFeature.SPATIAL_IO ).build();
FeatureFactory deco = registry.features( AEFeature.DECORATIVE_QUARTZ_BLOCKS );
FeatureFactory deco = registry.features( AEFeature.DECORATIVE_BLOCKS );
this.quartzBlock = deco.block( "quartz_block", BlockQuartz::new ).build();
this.quartzPillar = deco.block( "quartz_pillar", BlockQuartzPillar::new ).build();
this.chiseledQuartzBlock = deco.block( "chiseled_quartz_block", BlockChiseledQuartz::new ).build();
this.quartzGlass = deco.block( "quartz_glass", BlockQuartzGlass::new )
this.quartzGlass = registry.features( AEFeature.QUARTZ_GLASS )
.block( "quartz_glass", BlockQuartzGlass::new )
.useCustomItemModel()
.rendering( new BlockRenderingCustomizer()
{
@@ -282,7 +284,7 @@ public final class ApiBlocks implements IBlocks
} )
.build();
this.quartzVibrantGlass = deco.block( "quartz_vibrant_glass", BlockQuartzLamp::new )
.addFeatures( AEFeature.DECORATIVE_LIGHTS )
.addFeatures( AEFeature.DECORATIVE_LIGHTS, AEFeature.QUARTZ_GLASS )
.useCustomItemModel()
.build();
this.quartzFixture = registry.block( "quartz_fixture", BlockQuartzFixture::new )
@@ -290,19 +292,28 @@ public final class ApiBlocks implements IBlocks
.useCustomItemModel()
.build();
this.fluixBlock = deco.block( "fluix_block", BlockFluix::new ).build();
this.skyStoneBlock = deco.block( "sky_stone_block", () -> new BlockSkyStone( SkystoneType.STONE ) ).build();
this.smoothSkyStoneBlock = deco.block( "smooth_sky_stone_block", () -> new BlockSkyStone( SkystoneType.BLOCK ) ).build();
this.skyStoneBrick = deco.block( "sky_stone_brick", () -> new BlockSkyStone( SkystoneType.BRICK ) ).build();
this.skyStoneSmallBrick = deco.block( "sky_stone_small_brick", () -> new BlockSkyStone( SkystoneType.SMALL_BRICK ) ).build();
this.fluixBlock = registry.features( AEFeature.FLUIX ).block( "fluix_block", BlockFluix::new ).build();
this.skyStoneBlock = registry.features( AEFeature.SKY_STONE )
.block( "sky_stone_block", () -> new BlockSkyStone( SkystoneType.STONE ) )
.build();
this.smoothSkyStoneBlock = registry.features( AEFeature.SKY_STONE )
.block( "smooth_sky_stone_block", () -> new BlockSkyStone( SkystoneType.BLOCK ) )
.build();
this.skyStoneBrick = deco.block( "sky_stone_brick", () -> new BlockSkyStone( SkystoneType.BRICK ) )
.addFeatures( AEFeature.SKY_STONE )
.build();
this.skyStoneSmallBrick = deco.block( "sky_stone_small_brick", () -> new BlockSkyStone( SkystoneType.SMALL_BRICK ) )
.addFeatures( AEFeature.SKY_STONE )
.build();
this.skyStoneChest = registry.block( "sky_stone_chest", () -> new BlockSkyChest( SkyChestType.STONE ) )
.features( AEFeature.SKY_STONE_CHESTS )
.features( AEFeature.SKY_STONE, AEFeature.SKY_STONE_CHESTS )
.tileEntity( new TileEntityDefinition( TileSkyChest.class, "sky_stone_chest" ) )
.rendering( new SkyChestRenderingCustomizer( SkyChestType.STONE ) )
.build();
this.smoothSkyStoneChest = registry.block( "smooth_sky_stone_chest", () -> new BlockSkyChest( SkyChestType.BLOCK ) )
.features( AEFeature.SKY_STONE_CHESTS )
.features( AEFeature.SKY_STONE, AEFeature.SKY_STONE_CHESTS )
.tileEntity( new TileEntityDefinition( TileSkyChest.class, "sky_stone_chest" ) )
.rendering( new SkyChestRenderingCustomizer( SkyChestType.BLOCK ) )
.build();
@@ -571,7 +582,7 @@ public final class ApiBlocks implements IBlocks
Block block = blockDef.maybeBlock().get();
IBlockDefinition slabDef = registry.block( slabId, () -> new BlockSlabCommon.Half( block ) )
.features( AEFeature.DECORATIVE_QUARTZ_BLOCKS )
.features( AEFeature.DECORATIVE_BLOCKS )
.disableItem()
.build();
@@ -584,7 +595,7 @@ public final class ApiBlocks implements IBlocks
// Reigster the double slab variant as well
IBlockDefinition doubleSlabDef = registry.block( doubleSlabId, () -> new BlockSlabCommon.Double( slabBlock, block ) )
.features( AEFeature.DECORATIVE_QUARTZ_BLOCKS )
.features( AEFeature.DECORATIVE_BLOCKS )
.disableItem()
.build();
@@ -594,7 +605,7 @@ public final class ApiBlocks implements IBlocks
// Make the slab item
IItemDefinition itemDef = registry.item( slabId, () -> new ItemSlab( slabBlock, slabBlock, doubleSlabBlock ) )
.features( AEFeature.DECORATIVE_QUARTZ_BLOCKS )
.features( AEFeature.DECORATIVE_BLOCKS )
.build();
Verify.verify( itemDef.maybeItem().isPresent() );
@@ -606,7 +617,7 @@ public final class ApiBlocks implements IBlocks
private static IBlockDefinition makeStairs( String registryName, FeatureFactory registry, IBlockDefinition block )
{
return registry.block( registryName, () -> new BlockStairCommon( block.maybeBlock().get(), block.identifier() ) )
.features( AEFeature.DECORATIVE_QUARTZ_BLOCKS )
.features( AEFeature.DECORATIVE_BLOCKS )
.rendering( new BlockRenderingCustomizer()
{
@Override
@@ -36,20 +36,22 @@ public enum AEFeature
CERTUS_QUARTZ_WORLD_GEN( "CertusQuartzWorldGen", Constants.CATEGORY_WORLD ),
METEORITE_WORLD_GEN( "MeteoriteWorldGen", Constants.CATEGORY_WORLD ),
DECORATIVE_LIGHTS( "DecorativeLights", Constants.CATEGORY_WORLD ),
DECORATIVE_QUARTZ_BLOCKS( "DecorativeQuartzBlocks", Constants.CATEGORY_WORLD ),
DECORATIVE_BLOCKS( "DecorativeBlocks", Constants.CATEGORY_WORLD, "Blocks that are not used in any essential recipes, also slabs and stairs." ),
SKY_STONE_CHESTS( "SkyStoneChests", Constants.CATEGORY_WORLD ),
SPAWN_PRESSES_IN_METEORITES( "SpawnPressesInMeteorites", Constants.CATEGORY_WORLD ),
GRIND_STONE( "GrindStone", Constants.CATEGORY_WORLD ),
FLOUR( "Flour", Constants.CATEGORY_WORLD ),
INSCRIBER( "Inscriber", Constants.CATEGORY_WORLD ),
CHARGER( "Charger", Constants.CATEGORY_WORLD ),
CRYSTAL_GROWTH_ACCELERATOR( "CrystalGrowthAccelerator", Constants.CATEGORY_WORLD ),
CHEST_LOOT( "ChestLoot", Constants.CATEGORY_WORLD ),
VILLAGER_TRADING( "VillagerTrading", Constants.CATEGORY_WORLD ),
TINY_TNT( "TinyTNT", Constants.CATEGORY_WORLD ),
CERTUS_ORE( "CertusOre", Constants.CATEGORY_WORLD ),
CHARGED_CERTUS_ORE( "ChargedCertusOre", Constants.CATEGORY_WORLD ),
GRIND_STONE( "GrindStone", Constants.CATEGORY_MACHINES ),
INSCRIBER( "Inscriber", Constants.CATEGORY_MACHINES ),
CHARGER( "Charger", Constants.CATEGORY_MACHINES ),
CRYSTAL_GROWTH_ACCELERATOR( "CrystalGrowthAccelerator", Constants.CATEGORY_MACHINES ),
POWER_GEN( "VibrationChamber", Constants.CATEGORY_MACHINES ),
POWERED_TOOLS( "PoweredTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS ),
CERTUS_QUARTZ_TOOLS( "CertusQuartzTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS ),
NETHER_QUARTZ_TOOLS( "NetherQuartzTools", Constants.CATEGORY_TOOLS_CLASSIFICATIONS ),
@@ -68,7 +70,6 @@ public enum AEFeature
COLOR_APPLICATOR( "ColorApplicator", Constants.CATEGORY_TOOLS ),
METEORITE_COMPASS( "MeteoriteCompass", Constants.CATEGORY_TOOLS ),
POWER_GEN( "PowerGen", Constants.CATEGORY_NETWORK_FEATURES ),
SECURITY( "Security", Constants.CATEGORY_NETWORK_FEATURES ),
SPATIAL_IO( "SpatialIO", Constants.CATEGORY_NETWORK_FEATURES ),
QUANTUM_NETWORK_BRIDGE( "QuantumNetworkBridge", Constants.CATEGORY_NETWORK_FEATURES ),
@@ -114,12 +115,11 @@ public enum AEFeature
GLASS_CABLES( "GlassCables", Constants.CATEGORY_CABLES ),
COVERED_CABLES( "CoveredCables", Constants.CATEGORY_CABLES ),
SMART_CABLES( "SmartCables", Constants.CATEGORY_CABLES ),
DENSE_CABLES( "DenseCables", Constants.CATEGORY_CABLES ),
ENERGY_CELLS( "EnergyCells", Constants.CATEGORY_ENERGY ),
ENERGY_ACCEPTOR( "EnergyAcceptor", Constants.CATEGORY_ENERGY ),
DENSE_ENERGY_CELLS( "DenseEnergyCells", Constants.CATEGORY_HIGHER_CAPACITY ),
DENSE_CABLES( "DenseCables", Constants.CATEGORY_HIGHER_CAPACITY ),
DENSE_ENERGY_CELLS( "DenseEnergyCells", Constants.CATEGORY_ENERGY ),
P2P_TUNNEL_ME( "P2PTunnelME", Constants.CATEGORY_P2P_TUNNELS ),
P2P_TUNNEL_ITEMS( "P2PTunnelItems", Constants.CATEGORY_P2P_TUNNELS ),
@@ -169,9 +169,6 @@ public enum AEFeature
ADVANCED_CARDS( "AdvancedCards", Constants.CATEGORY_UPGRADES ),
VIEW_CELL( "ViewCell", Constants.CATEGORY_UPGRADES ),
PROCESSORS( "Processors", Constants.CATEGORY_MATERIALS ),
PRINTED_CIRCUITS( "PrintedCircuits", Constants.CATEGORY_MATERIALS ),
PRESSES( "Presses", Constants.CATEGORY_MATERIALS ),
CRYSTAL_SEEDS( "CrystalSeeds", Constants.CATEGORY_MATERIALS ),
PURE_CRYSTALS( "PureCrystals", Constants.CATEGORY_MATERIALS ),
CERTUS( "Certus", Constants.CATEGORY_MATERIALS ),
@@ -179,8 +176,14 @@ public enum AEFeature
SILICON( "Silicon", Constants.CATEGORY_MATERIALS ),
DUSTS( "Dusts", Constants.CATEGORY_MATERIALS ),
NUGGETS( "Nuggets", Constants.CATEGORY_MATERIALS ),
MATTER_BALL( "MatterBall", Constants.CATEGORY_MATERIALS ),
CORES( "Cores", Constants.CATEGORY_MATERIALS ),
QUARTZ_GLASS( "QuartzGlass", Constants.CATEGORY_MATERIALS ),
SKY_STONE( "SkyStone", Constants.CATEGORY_MATERIALS ),
PROCESSORS( "Processors", Constants.CATEGORY_COMPONENTS ),
PRINTED_CIRCUITS( "PrintedCircuits", Constants.CATEGORY_COMPONENTS ),
PRESSES( "Presses", Constants.CATEGORY_COMPONENTS ),
MATTER_BALL( "MatterBall", Constants.CATEGORY_COMPONENTS ),
CORES( "Cores", Constants.CATEGORY_COMPONENTS ),
CHUNK_LOGGER_TRACE( "ChunkLoggerTrace", Constants.CATEGORY_COMMANDS, false );
@@ -249,6 +252,7 @@ public enum AEFeature
private static final String CATEGORY_MISC = "Misc";
private static final String CATEGORY_CRAFTING = "Crafting";
private static final String CATEGORY_WORLD = "World";
private static final String CATEGORY_MACHINES = "Machines";
private static final String CATEGORY_TOOLS = "Tools";
private static final String CATEGORY_TOOLS_CLASSIFICATIONS = "ToolsClassifications";
private static final String CATEGORY_NETWORK_BUSES = "NetworkBuses";
@@ -257,7 +261,6 @@ public enum AEFeature
private static final String CATEGORY_CRAFTING_FEATURES = "CraftingFeatures";
private static final String CATEGORY_STORAGE = "Storage";
private static final String CATEGORY_CABLES = "Cables";
private static final String CATEGORY_HIGHER_CAPACITY = "HigherCapacity";
private static final String CATEGORY_NETWORK_FEATURES = "NetworkFeatures";
private static final String CATEGORY_COMMANDS = "Commands";
private static final String CATEGORY_RENDERING = "Rendering";
@@ -267,5 +270,6 @@ public enum AEFeature
private static final String CATEGORY_ENERGY = "Energy";
private static final String CATEGORY_UPGRADES = "Upgrades";
private static final String CATEGORY_MATERIALS = "Materials";
private static final String CATEGORY_COMPONENTS = "CraftingComponents";
}
}