Skip to content

Commit

Permalink
move IColoredBlock Color Handlers to common code (minor duplicate code)
Browse files Browse the repository at this point in the history
  • Loading branch information
thiakil committed Oct 9, 2020
1 parent dbb5626 commit 79fa46f
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 32 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -88,22 +88,7 @@ public static void modelRegEvent(ModelRegistryEvent event) {

@SubscribeEvent
public static void registerItemColorHandlers(ColorHandlerEvent.Item event) {
ClientRegistrationUtil.registerBlockColorHandler(event.getBlockColors(), event.getItemColors(), (state, world, pos, tintIndex) -> {
Block block = state.getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
return -1;
}, (stack, tintIndex) -> {
Item item = stack.getItem();
if (item instanceof BlockItem) {
Block block = ((BlockItem) item).getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
}
return -1;
},
ClientRegistrationUtil.registerIColoredBlockHandler(event.getBlockColors(), event.getItemColors(),
//Plastic Blocks
AdditionsBlocks.BLACK_PLASTIC_BLOCK, AdditionsBlocks.RED_PLASTIC_BLOCK, AdditionsBlocks.GREEN_PLASTIC_BLOCK, AdditionsBlocks.BROWN_PLASTIC_BLOCK,
AdditionsBlocks.BLUE_PLASTIC_BLOCK, AdditionsBlocks.PURPLE_PLASTIC_BLOCK, AdditionsBlocks.CYAN_PLASTIC_BLOCK, AdditionsBlocks.LIGHT_GRAY_PLASTIC_BLOCK,
Expand Down
17 changes: 1 addition & 16 deletions src/main/java/mekanism/client/ClientRegistration.java
Original file line number Diff line number Diff line change
Expand Up @@ -385,22 +385,7 @@ public static void registerItemColorHandlers(ColorHandlerEvent.Item event) {
return -1;
}, MekanismBlocks.QIO_DRIVE_ARRAY, MekanismBlocks.QIO_DASHBOARD, MekanismBlocks.QIO_IMPORTER, MekanismBlocks.QIO_EXPORTER,
MekanismBlocks.QIO_REDSTONE_ADAPTER);
ClientRegistrationUtil.registerBlockColorHandler(blockColors, itemColors, (state, world, pos, tintIndex) -> {
Block block = state.getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
return -1;
}, (stack, tintIndex) -> {
Item item = stack.getItem();
if (item instanceof BlockItem) {
Block block = ((BlockItem) item).getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
}
return -1;
},
ClientRegistrationUtil.registerIColoredBlockHandler(blockColors, itemColors,
//Fluid Tank
MekanismBlocks.BASIC_FLUID_TANK, MekanismBlocks.ADVANCED_FLUID_TANK, MekanismBlocks.ELITE_FLUID_TANK, MekanismBlocks.ULTIMATE_FLUID_TANK,
MekanismBlocks.CREATIVE_FLUID_TANK);
Expand Down
24 changes: 24 additions & 0 deletions src/main/java/mekanism/client/ClientRegistrationUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
import mekanism.api.providers.IItemProvider;
import mekanism.client.gui.machine.GuiAdvancedElectricMachine;
import mekanism.client.gui.machine.GuiElectricMachine;
import mekanism.client.render.MekanismRenderer;
import mekanism.common.block.interfaces.IColoredBlock;
import mekanism.common.inventory.container.tile.MekanismTileContainer;
import mekanism.common.registration.impl.ContainerTypeRegistryObject;
import mekanism.common.registration.impl.EntityTypeRegistryObject;
Expand All @@ -15,6 +17,7 @@
import mekanism.common.registration.impl.TileEntityTypeRegistryObject;
import mekanism.common.tile.prefab.TileEntityAdvancedElectricMachine;
import mekanism.common.tile.prefab.TileEntityElectricMachine;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.IHasContainer;
import net.minecraft.client.gui.ScreenManager;
Expand All @@ -32,7 +35,9 @@
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.PlayerInventory;
import net.minecraft.inventory.container.Container;
import net.minecraft.item.BlockItem;
import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.Item;
import net.minecraft.item.ItemModelsProperties;
import net.minecraft.particles.IParticleData;
import net.minecraft.tileentity.TileEntity;
Expand Down Expand Up @@ -118,6 +123,25 @@ public static void registerBlockColorHandler(BlockColors blockColors, ItemColors
}
}

public static void registerIColoredBlockHandler(BlockColors blockColors, ItemColors itemColors, IBlockProvider... blocks) {
ClientRegistrationUtil.registerBlockColorHandler(blockColors, itemColors, (state, world, pos, tintIndex) -> {
Block block = state.getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
return -1;
}, (stack, tintIndex) -> {
Item item = stack.getItem();
if (item instanceof BlockItem) {
Block block = ((BlockItem) item).getBlock();
if (block instanceof IColoredBlock) {
return MekanismRenderer.getColorARGB(((IColoredBlock) block).getColor(), 1);
}
}
return -1;
}, blocks);
}

public static void setRenderLayer(RenderType type, IBlockProvider... blockProviders) {
for (IBlockProvider blockProvider : blockProviders) {
RenderTypeLookup.setRenderLayer(blockProvider.getBlock(), type);
Expand Down

0 comments on commit 79fa46f

Please sign in to comment.