Skip to content

Commit 3261b03

Browse files
committed
1 parent e5f52b2 commit 3261b03

File tree

2 files changed

+21
-0
lines changed

2 files changed

+21
-0
lines changed

src/main/java/com/glodblock/github/client/model/DenseEncodedPatternModel.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,23 @@
11
package com.glodblock.github.client.model;
22

3+
import appeng.items.misc.ItemEncodedPattern;
34
import com.glodblock.github.FluidCraft;
45
import com.glodblock.github.util.Ae2ReflectClient;
56
import com.glodblock.github.util.NameConst;
7+
import net.minecraft.client.Minecraft;
68
import net.minecraft.client.renderer.block.model.IBakedModel;
9+
import net.minecraft.client.renderer.color.IItemColor;
710
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
811
import net.minecraft.client.renderer.vertex.VertexFormat;
912
import net.minecraft.client.resources.IResourceManager;
13+
import net.minecraft.item.ItemStack;
1014
import net.minecraft.util.ResourceLocation;
1115
import net.minecraftforge.client.model.ICustomModelLoader;
1216
import net.minecraftforge.client.model.IModel;
1317
import net.minecraftforge.client.model.ModelLoaderRegistry;
1418
import net.minecraftforge.client.model.PerspectiveMapWrapper;
1519
import net.minecraftforge.common.model.IModelState;
20+
import org.lwjgl.input.Keyboard;
1621

1722
import javax.annotation.Nonnull;
1823
import java.util.Collection;
@@ -29,6 +34,19 @@ public Collection<ResourceLocation> getDependencies() {
2934
return Collections.singletonList(BASE_MODEL);
3035
}
3136

37+
public static final IItemColor PATTERN_ITEM_COLOR_HANDLER = (stack, tintIndex) -> {
38+
ItemEncodedPattern iep = (ItemEncodedPattern) stack.getItem();
39+
ItemStack output = iep.getOutput(stack);
40+
if (!output.isEmpty() && isShiftKeyDown()) {
41+
return Minecraft.getMinecraft().getItemColors().colorMultiplier(output, tintIndex);
42+
}
43+
return 0xFFFFFF;
44+
};
45+
46+
private static boolean isShiftKeyDown() {
47+
return Keyboard.isKeyDown(Keyboard.KEY_LSHIFT) || Keyboard.isKeyDown(Keyboard.KEY_RSHIFT);
48+
}
49+
3250
// adapted from ae2's ItemEncodedPatternModel#bake
3351
@Override
3452
@Nonnull

src/main/java/com/glodblock/github/proxy/ClientProxy.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.glodblock.github.proxy;
22

33
import appeng.api.util.AEColor;
4+
import com.glodblock.github.client.model.DenseEncodedPatternModel;
45
import com.glodblock.github.client.render.DropColourHandler;
56
import com.glodblock.github.client.render.RenderIngredientBuffer;
67
import com.glodblock.github.client.render.RenderLargeIngredientBuffer;
@@ -59,6 +60,8 @@ public void init(FMLInitializationEvent event){
5960
}, FCItems.FLUID_PACKET);
6061
Minecraft.getMinecraft().getItemColors().registerItemColorHandler((s, i) -> AEColor.TRANSPARENT.getVariantByTintIndex(i), FCItems.PART_FLUID_PATTERN_TERMINAL);
6162
Minecraft.getMinecraft().getItemColors().registerItemColorHandler((s, i) -> AEColor.TRANSPARENT.getVariantByTintIndex(i), FCItems.PART_EXTENDED_FLUID_PATTERN_TERMINAL);
63+
Minecraft.getMinecraft().getItemColors().registerItemColorHandler(DenseEncodedPatternModel.PATTERN_ITEM_COLOR_HANDLER, FCItems.DENSE_ENCODED_PATTERN);
64+
Minecraft.getMinecraft().getItemColors().registerItemColorHandler(DenseEncodedPatternModel.PATTERN_ITEM_COLOR_HANDLER, FCItems.DENSE_CRAFT_ENCODED_PATTERN);
6265
}
6366

6467
@Override

0 commit comments

Comments
 (0)