aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java14
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/client/textures/PrefixTextureLinker.java39
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BeforeGTPreload.java4
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java2
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java30
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java144
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java63
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java4
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/WerkstoffLoader.java51
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java9
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AfterLuVTierEnhacement.java6
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LoadItemContainers.java2
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LuVTierEnhancer.java9
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/PlatinumSludgeOverHaul.java6
-rw-r--r--src/main/java/com/github/bartimaeusnek/bartworks/system/worldgen/MapGenRuins.java4
-rw-r--r--src/main/java/com/github/bartimaeusnek/crossmod/galacticraft/solarsystems/Ross128SolarSystem.java2
-rw-r--r--src/main/java/com/github/bartimaeusnek/crossmod/thaumcraft/util/ThaumcraftHandler.java7
-rw-r--r--src/main/resources/assets/bartworks/lang/de_DE.lang199
-rw-r--r--src/main/resources/assets/bartworks/lang/fr_FR.lang22
-rw-r--r--src/main/resources/assets/bartworks/lang/zh_CN.lang2
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule.pngbin0 -> 211 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten.pngbin0 -> 135 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten_OVERLAY.pngbin0 -> 168 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule_OVERLAY.pngbin0 -> 308 bytes
-rw-r--r--src/main/resources/assets/gregtech/textures/items/materialicons/copy.bat1
129 files changed, 485 insertions, 135 deletions
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
index 1d452f0505..6182738f04 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/MainMod.java
@@ -30,6 +30,7 @@ import com.github.bartimaeusnek.bartworks.client.ClientEventHandler.TooltipEvent
import com.github.bartimaeusnek.bartworks.client.creativetabs.BioTab;
import com.github.bartimaeusnek.bartworks.client.creativetabs.GT2Tab;
import com.github.bartimaeusnek.bartworks.client.creativetabs.bartworksTab;
+import com.github.bartimaeusnek.bartworks.client.textures.PrefixTextureLinker;
import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
import com.github.bartimaeusnek.bartworks.common.loaders.BioCultureLoader;
import com.github.bartimaeusnek.bartworks.common.loaders.BioLabLoader;
@@ -48,6 +49,7 @@ import com.github.bartimaeusnek.bartworks.system.material.processingLoaders.Plat
import com.github.bartimaeusnek.bartworks.system.oredict.OreDictHandler;
import com.github.bartimaeusnek.bartworks.util.BWRecipes;
import com.github.bartimaeusnek.bartworks.util.BW_Util;
+import com.github.bartimaeusnek.crossmod.BartWorksCrossmod;
import com.google.common.collect.ArrayListMultimap;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Loader;
@@ -58,6 +60,7 @@ import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.event.FMLServerStartedEvent;
import cpw.mods.fml.common.network.IGuiHandler;
import cpw.mods.fml.common.network.NetworkRegistry;
+import cpw.mods.fml.common.registry.GameRegistry;
import gregtech.api.GregTech_API;
import gregtech.api.enums.*;
import gregtech.api.objects.GT_ItemStack;
@@ -89,6 +92,7 @@ import static gregtech.api.enums.GT_Values.VN;
+ "after:berriespp; "
+ "after:GalacticraftMars; "
+ "after:GalacticraftCore; "
+ + "after:Forestry; "
)
public final class MainMod {
public static final String NAME = "BartWorks";
@@ -122,9 +126,6 @@ public final class MainMod {
}
}
- //fixing BorosilicateGlass... -_-'
- Materials.BorosilicateGlass.add(SubTag.CRYSTAL, SubTag.NO_SMASHING, SubTag.NO_RECYCLING, SubTag.SMELTING_TO_FLUID);
-
if (Loader.isModLoaded("dreamcraft")) {
ConfigHandler.GTNH = true;
}
@@ -147,6 +148,8 @@ public final class MainMod {
INSTANCE.init();
Werkstoff.init();
GregTech_API.sAfterGTPostload.add(new CircuitPartLoader());
+ if (FMLCommonHandler.instance().getSide().isClient())
+ new PrefixTextureLinker();
}
}
@@ -219,7 +222,7 @@ public final class MainMod {
}
private static void unificationEnforcer() {
- for (Werkstoff werkstoff : Werkstoff.werkstoffHashMap.values()) {
+ for (Werkstoff werkstoff : Werkstoff.werkstoffHashSet) {
if (werkstoff.getGenerationFeatures().enforceUnification) {
if (werkstoff.contains(NOBLE_GAS)){
String name = werkstoff.getFluidOrGas(1).getFluid().getName();
@@ -310,6 +313,9 @@ public final class MainMod {
HashSet torem = new HashSet<>();
ItemStack toReplace = null;
for (Map.Entry<GT_ItemStack, FluidContainerRegistry.FluidContainerData> entry : sFilledContainerToData.entrySet()) {
+ final String MODID = GameRegistry.findUniqueIdentifierFor(data.filledContainer.getItem()).modId;
+ if (MODID.equals(MainMod.MOD_ID) || MODID.equals(BartWorksCrossmod.MOD_ID))
+ continue;
if (entry.getValue().fluid.equals(data.fluid) && !entry.getValue().filledContainer.equals(data.filledContainer)) {
toReplace = entry.getValue().filledContainer;
torem.add(entry);
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/client/textures/PrefixTextureLinker.java b/src/main/java/com/github/bartimaeusnek/bartworks/client/textures/PrefixTextureLinker.java
new file mode 100644
index 0000000000..96e69f4cf3
--- /dev/null
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/client/textures/PrefixTextureLinker.java
@@ -0,0 +1,39 @@
+package com.github.bartimaeusnek.bartworks.client.textures;
+
+import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gregtech.api.GregTech_API;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TextureSet;
+import gregtech.api.enums.Textures;
+
+import java.util.Arrays;
+import java.util.HashMap;
+
+@SideOnly(Side.CLIENT)
+public class PrefixTextureLinker implements Runnable {
+ public static HashMap<OrePrefixes,HashMap<TextureSet, Textures.ItemIcons.CustomIcon>> texMap = new HashMap<>();
+
+ {
+ GregTech_API.sBeforeGTLoad.add(this);
+ }
+
+ @Override
+ public void run() {
+
+ for (OrePrefixes prefixes : OrePrefixes.values()) {
+ HashMap curr = new HashMap<>();
+ if (prefixes.mTextureIndex == -1 && Werkstoff.GenerationFeatures.prefixLogic.get(prefixes) != 0) {
+ Arrays.stream(TextureSet.class.getFields()).filter(field -> field.getName().contains("SET")).forEach(SET -> {
+ try {
+ curr.put(SET.get(null), new Textures.ItemIcons.CustomIcon("materialicons/" + SET.getName().substring(4) + "/" + prefixes));
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ }
+ });
+ texMap.put(prefixes, curr);
+ }
+ }
+ }
+}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BeforeGTPreload.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BeforeGTPreload.java
index 2164330a96..ed84c5a98f 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BeforeGTPreload.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/loaders/BeforeGTPreload.java
@@ -28,6 +28,8 @@ import cpw.mods.fml.common.LoadController;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.ModContainer;
import cpw.mods.fml.common.registry.GameRegistry;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.SubTag;
import ic2.core.Ic2Items;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
@@ -45,6 +47,8 @@ public class BeforeGTPreload implements Runnable {
public void run() {
if (didrun)
return;
+ //fixing BorosilicateGlass... -_-'
+ Materials.BorosilicateGlass.add(SubTag.CRYSTAL, SubTag.NO_SMASHING, SubTag.NO_RECYCLING, SubTag.SMELTING_TO_FLUID);
Field activeContainer = FieldUtils.getDeclaredField(LoadController.class, "activeContainer", true);
ModContainer bartworks = null;
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
index 5ca5d59a19..154b2a1355 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/common/tileentities/tiered/GT_MetaTileEntity_BioLab.java
@@ -54,7 +54,7 @@ public class GT_MetaTileEntity_BioLab extends GT_MetaTileEntity_BasicMachine {
private static final String MGUINAME = "BW.GUI.BioLab.png";
public GT_MetaTileEntity_BioLab(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, 1, null, 6, 2, GT_MetaTileEntity_BioLab.MGUINAME, null, new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT_ACTIVE")/*this is topactive*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT")/*this is top*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM")));
+ super(aID, aName, aNameRegional, aTier, 1, (String) null, 6, 2, GT_MetaTileEntity_BioLab.MGUINAME, null, new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/fluid_extractor/OVERLAY_SIDE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/microwave/OVERLAY_FRONT")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT_ACTIVE")/*this is topactive*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/chemical_reactor/OVERLAY_FRONT")/*this is top*/), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM_ACTIVE")), new GT_RenderedTexture(new Textures.BlockIcons.CustomIcon("basicmachines/polarizer/OVERLAY_BOTTOM")));
}
public GT_MetaTileEntity_BioLab(String aName, int aTier, int aAmperage, String aDescription, ITexture[][][] aTextures, String aNEIName) {
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java
index e7a4c3aa02..c25dbd6bf1 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java
@@ -23,14 +23,18 @@
package com.github.bartimaeusnek.bartworks.system.material;
import com.github.bartimaeusnek.bartworks.API.IRadMaterial;
+import com.github.bartimaeusnek.bartworks.client.textures.PrefixTextureLinker;
import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
import com.github.bartimaeusnek.bartworks.system.oredict.OreDictAdder;
import com.github.bartimaeusnek.bartworks.util.ChatColorHelper;
import com.github.bartimaeusnek.bartworks.util.Pair;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.enums.TextureSet;
+import gregtech.api.enums.Textures;
import gregtech.api.interfaces.IIconContainer;
import gregtech.api.items.GT_MetaGenerated_Item;
import gregtech.api.util.GT_LanguageManager;
@@ -53,6 +57,7 @@ import net.minecraft.util.MathHelper;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
+import java.util.HashMap;
import java.util.List;
import static com.github.bartimaeusnek.bartworks.system.material.Werkstoff.werkstoffHashMap;
@@ -69,6 +74,11 @@ public class BW_MetaGenerated_Items extends GT_MetaGenerated_Item implements IRa
protected final OrePrefixes orePrefixes;
private final short aNumToGen = (short) werkstoffHashMap.size();
+ public BW_MetaGenerated_Items(OrePrefixes orePrefixes, Object unused){
+ super("bwMetaGeneratedGTEnhancement" + orePrefixes.name(), (short) 32766, (short) 0);
+ this.orePrefixes = orePrefixes;
+ }
+
public BW_MetaGenerated_Items(OrePrefixes orePrefixes) {
super("bwMetaGenerated" + orePrefixes.name(), (short) 32766, (short) 0);
this.orePrefixes = orePrefixes;
@@ -148,13 +158,23 @@ public class BW_MetaGenerated_Items extends GT_MetaGenerated_Item implements IRa
}
@Override
- public final IIconContainer getIconContainer(int aMetaData) {
- return werkstoffHashMap.get((short) aMetaData) == null ? null : this.orePrefixes.mTextureIndex == -1 ? null : werkstoffHashMap.get((short) aMetaData).getTexSet().mTextures[this.orePrefixes.mTextureIndex];
+ public IIconContainer getIconContainer(int aMetaData) {
+ if (werkstoffHashMap.get((short) aMetaData) == null)
+ return null;
+ if (this.orePrefixes.mTextureIndex == -1)
+ return getIconContainerBartWorks(aMetaData);
+ return werkstoffHashMap.get((short) aMetaData).getTexSet().mTextures[this.orePrefixes.mTextureIndex];
+ }
+
+ protected IIconContainer getIconContainerBartWorks(int aMetaData) {
+ if (FMLCommonHandler.instance().getSide().isClient())
+ return PrefixTextureLinker.texMap.get(this.orePrefixes).get(werkstoffHashMap.get((short) aMetaData).getTexSet());
+ return null;
}
@Override
@SideOnly(Side.CLIENT)
- public final void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
+ public void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
for (int i = 0; i < this.aNumToGen; i++) {
Werkstoff werkstoff = werkstoffHashMap.get((short) i);
if (werkstoff != null && ((werkstoff.getGenerationFeatures().toGenerate & Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes)) != 0) && ((werkstoff.getGenerationFeatures().blacklist & Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes)) == 0)) {
@@ -207,7 +227,7 @@ public class BW_MetaGenerated_Items extends GT_MetaGenerated_Item implements IRa
@Override
public int getItemStackLimit(ItemStack aStack) {
- return 64;
+ return this.orePrefixes.mDefaultStackSize;
}
@Override
@@ -235,6 +255,6 @@ public class BW_MetaGenerated_Items extends GT_MetaGenerated_Item implements IRa
@Override
public int getCapacity(ItemStack aStack) {
- return this.orePrefixes == OrePrefixes.cell || this.orePrefixes == OrePrefixes.cellPlasma ? 1000 : this.orePrefixes == WerkstoffLoader.cellMolten ? 144 : 0;
+ return this.orePrefixes == OrePrefixes.capsule || this.orePrefixes == OrePrefixes.cell || this.orePrefixes == OrePrefixes.cellPlasma ? 1000 : this.orePrefixes == WerkstoffLoader.cellMolten || this.orePrefixes == WerkstoffLoader.capsuleMolten ? 144 : 0;
}
}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java
new file mode 100644
index 0000000000..8cd06481d3
--- /dev/null
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java
@@ -0,0 +1,144 @@
+package com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement;
+
+import com.github.bartimaeusnek.bartworks.client.textures.PrefixTextureLinker;
+import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
+import com.github.bartimaeusnek.bartworks.system.material.BW_MetaGenerated_Items;
+import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
+import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
+import com.github.bartimaeusnek.bartworks.system.oredict.OreDictAdder;
+import com.github.bartimaeusnek.bartworks.util.Pair;
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.util.GT_LanguageManager;
+import gregtech.api.util.GT_OreDictUnificator;
+import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.item.EntityItem;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.world.World;
+
+import java.util.List;
+
+import static com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.GTMetaItemEnhancer.NoMetaValue;
+
+public class BWGTMetaItems extends BW_MetaGenerated_Items {
+
+ boolean hasList;
+
+ public BWGTMetaItems(OrePrefixes orePrefixes, List noSubIDMaterials) {
+ super(orePrefixes,null);
+ materialloop:
+ for (int i = 0; i < Materials.values().length; i++) {
+ ItemStack tStack = new ItemStack(this, 1, i);
+ Materials w = Materials.values()[i];
+ if (!((w.getMolten(1) != null && orePrefixes == WerkstoffLoader.capsuleMolten) || ((w.getFluid(1) != null || w.getGas(1) != null) && orePrefixes == OrePrefixes.capsule)))
+ continue;
+ for (Werkstoff werkstoff : Werkstoff.werkstoffHashSet)
+ if (w.mDefaultLocalName.equalsIgnoreCase(werkstoff.getDefaultName()))
+ continue materialloop;
+ GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".name", getDefaultLocalization(w));
+ GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".tooltip", w.getToolTip());
+ if (ConfigHandler.experimentalThreadedLoader)
+ OreDictAdder.addToMap(new Pair<>(this.orePrefixes.name() + w.mDefaultLocalName.replaceAll(" ",""), tStack));
+ else
+ GT_OreDictUnificator.registerOre(this.orePrefixes.name() + w.mDefaultLocalName.replaceAll(" ",""), tStack);
+ }
+ if (noSubIDMaterials != null){
+ hasList = true;
+ materialloop:
+ for (int i = 0; i < noSubIDMaterials.size(); i++) {
+ ItemStack tStack = new ItemStack(this, 1, i+1001);
+ Materials w = (Materials) noSubIDMaterials.get(i);
+ if (!((w.getMolten(1) != null && orePrefixes == WerkstoffLoader.capsuleMolten) || ((w.getFluid(1) != null || w.getGas(1) != null) && orePrefixes == OrePrefixes.capsule)))
+ continue;
+ for (Werkstoff werkstoff : Werkstoff.werkstoffHashSet)
+ if (w.mDefaultLocalName.equalsIgnoreCase(werkstoff.getDefaultName()))
+ continue materialloop;
+ GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".name", getDefaultLocalization(w));
+ GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".tooltip", w.getToolTip());
+ if (ConfigHandler.experimentalThreadedLoader)
+ OreDictAdder.addToMap(new Pair<>(this.orePrefixes.name() + w.mDefaultLocalName.replaceAll(" ",""), tStack));
+ else
+ GT_OreDictUnificator.registerOre(this.orePrefixes.name() + w.mDefaultLocalName.replaceAll(" ",""), tStack);
+ }
+ }
+ }
+
+ @Override
+ public IIconContainer getIconContainer(int aMetaData) {
+ if (this.orePrefixes.mTextureIndex == -1)
+ return getIconContainerBartWorks(aMetaData);
+ if (aMetaData > 1000 && hasList)
+ return NoMetaValue.get(aMetaData-1001).mIconSet.mTextures[this.orePrefixes.mTextureIndex];
+ if (aMetaData < 0 || aMetaData > Materials.values().length || Materials.values()[(short) aMetaData] == null)
+ return null;
+ return Materials.values()[(short) aMetaData].mIconSet.mTextures[this.orePrefixes.mTextureIndex];
+ }
+
+ public String getDefaultLocalization(Materials werkstoff) {
+ return werkstoff != null ? this.orePrefixes.mLocalizedMaterialPre + werkstoff.mDefaultLocalName + this.orePrefixes.mLocalizedMaterialPost : Materials._NULL.mDefaultLocalName;
+ }
+
+ protected IIconContainer getIconContainerBartWorks(int aMetaData) {
+ if (FMLCommonHandler.instance().getSide().isClient()) {
+ if (aMetaData > 1000 && hasList)
+ return PrefixTextureLinker.texMap.get(this.orePrefixes).get(NoMetaValue.get(aMetaData-1001).mIconSet);
+ return PrefixTextureLinker.texMap.get(this.orePrefixes).get(Materials.values()[(short) aMetaData].mIconSet);
+ }
+ return null;
+ }
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) {
+ for (int i = 0; i < Materials.values().length; i++) {
+ Materials w = Materials.values()[i];
+ if ((w == null) || (w.mTypes & Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes)) == 0 && Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes) != 0)
+ continue;
+ if ((w.getMolten(1) != null && orePrefixes == WerkstoffLoader.capsuleMolten) || ((w.getFluid(1) != null || w.getGas(1) != null) && orePrefixes == OrePrefixes.capsule))
+ aList.add(new ItemStack(this, 1, i));
+ }
+ for (int i = 0; i < NoMetaValue.size(); i++) {
+ Materials w = NoMetaValue.get(i);
+ if ((w == null) || (w.mTypes & Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes)) == 0 && Werkstoff.GenerationFeatures.prefixLogic.get(this.orePrefixes) != 0)
+ continue;
+ if (hasList && ((w.getMolten(1) != null && orePrefixes == WerkstoffLoader.capsuleMolten) || ((w.getFluid(1) != null || w.getGas(1) != null) && orePrefixes == OrePrefixes.capsule)))
+ aList.add(new ItemStack(this, 1, i+1001));
+ }
+ }
+
+ @Override
+ public short[] getColorForGUI(ItemStack aStack) {
+ if (aStack.getItemDamage() > 1000 && hasList)
+ return NoMetaValue.get(aStack.getItemDamage()-1001).mRGBa;
+ return Materials.values()[aStack.getItemDamage()].mRGBa;
+ }
+
+ @Override
+ public String getNameForGUI(ItemStack aStack) {
+ if (aStack.getItemDamage() > 1000 && hasList)
+ return NoMetaValue.get(aStack.getItemDamage()-1001).mDefaultLocalName;
+ return Materials.values()[aStack.getItemDamage()].mDefaultLocalName;
+ }
+
+ @Override
+ public void onUpdate(ItemStack aStack, World aWorld, Entity aPlayer, int aTimer, boolean aIsInHand) {
+
+ }
+
+ @Override
+ public short[] getRGBa(ItemStack aStack) {
+ if (aStack.getItemDamage() > 1000 && hasList)
+ return NoMetaValue.get(aStack.getItemDamage()-1001).mRGBa;
+ return Materials.values()[aStack.getItemDamage()].mRGBa;
+ }
+
+ public boolean onEntityItemUpdate(EntityItem aItemEntity) {
+ return false;
+ }
+}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java
new file mode 100644
index 0000000000..35214f636c
--- /dev/null
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/GTMetaItemEnhancer.java
@@ -0,0 +1,63 @@
+package com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement;
+
+import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
+import cpw.mods.fml.common.Loader;
+import gregtech.api.enums.GT_Values;
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_OreDictUnificator;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraftforge.fluids.Fluid;
+import net.minecraftforge.fluids.FluidContainerRegistry;
+import net.minecraftforge.fluids.FluidStack;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+public class GTMetaItemEnhancer {
+ static List<Materials> NoMetaValue;
+
+
+ static{
+ if (Loader.isModLoaded("Forestry")) {
+ NoMetaValue = Materials.getMaterialsMap().values().stream().filter(m -> m.mMetaItemSubID == -1).collect(Collectors.toList());
+ Item moltenCapsuls = new BWGTMetaItems(WerkstoffLoader.capsuleMolten, null);
+ Item capsuls = new BWGTMetaItems(OrePrefixes.capsule, NoMetaValue);
+
+ Materials[] values = Materials.values();
+ for (int i = 0, valuesLength = values.length; i < valuesLength; i++) {
+ Materials m = values[i];
+ if (m.mStandardMoltenFluid != null && GT_OreDictUnificator.get(WerkstoffLoader.cellMolten, m, 1) != null) {
+ final FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData(m.getMolten(144), new ItemStack(moltenCapsuls, 1, i), GT_ModHandler.getModItem("Forestry", "refractoryEmpty", 1));
+ FluidContainerRegistry.registerFluidContainer(emptyData);
+ GT_Utility.addFluidContainerData(emptyData);
+ GT_Values.RA.addFluidCannerRecipe(GT_ModHandler.getModItem("Forestry", "refractoryEmpty", 1), new ItemStack(moltenCapsuls, 1, i), m.getMolten(144), GT_Values.NF);
+ GT_Values.RA.addFluidCannerRecipe(new ItemStack(moltenCapsuls, 1, i), GT_Values.NI, GT_Values.NF, m.getMolten(144));
+ }
+ if (m.hasCorrespondingFluid() || m.hasCorrespondingGas()) {
+ Fluid f = m.hasCorrespondingFluid() ? m.getFluid(1).getFluid() : m.getGas(1).getFluid();
+ final FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData(new FluidStack(f, 1000), new ItemStack(capsuls, 1, i), GT_ModHandler.getModItem("Forestry", "waxCapsule", 1));
+ FluidContainerRegistry.registerFluidContainer(emptyData);
+ GT_Utility.addFluidContainerData(emptyData);
+ GT_Values.RA.addFluidCannerRecipe(GT_ModHandler.getModItem("Forestry", "waxCapsule", 1), new ItemStack(capsuls, 1, i), new FluidStack(f, 1000), GT_Values.NF);
+ GT_Values.RA.addFluidCannerRecipe(new ItemStack(capsuls, 1, i), GT_Values.NI, GT_Values.NF, new FluidStack(f, 1000));
+ }
+ }
+ for (int i = 0, valuesLength = NoMetaValue.size(); i < valuesLength; i++) {
+ Materials m = NoMetaValue.get(i);
+ if (m.getFluid(1) != null || m.getGas(1) != null) {
+ Fluid f = m.hasCorrespondingFluid() ? m.getFluid(1).getFluid() : m.getGas(1).getFluid();
+ final FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData(new FluidStack(f, 1000), new ItemStack(capsuls, 1, i + 1001), GT_ModHandler.getModItem("Forestry", "waxCapsule", 1));
+ FluidContainerRegistry.registerFluidContainer(emptyData);
+ GT_Utility.addFluidContainerData(emptyData);
+ GT_Values.RA.addFluidCannerRecipe(GT_ModHandler.getModItem("Forestry", "waxCapsule", 1), new ItemStack(capsuls, 1, i + 1001), new FluidStack(f, 1000), GT_Values.NF);
+ GT_Values.RA.addFluidCannerRecipe(new ItemStack(capsuls, 1, i + 1001), GT_Values.NI, GT_Values.NF, new FluidStack(f, 1000));
+ }
+ }
+ }
+ }
+
+}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
index 0cfc13e342..7be1117d4c 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/Werkstoff.java
@@ -36,6 +36,8 @@ import net.minecraftforge.fluids.FluidStack;
import java.nio.ByteBuffer;
import java.util.*;
+import static gregtech.api.enums.OrePrefixes.capsule;
+
public class Werkstoff implements IColorModulationContainer, ISubTagContainer {
public static final LinkedHashSet<Werkstoff> werkstoffHashSet = new LinkedHashSet<>();
@@ -402,7 +404,9 @@ public class Werkstoff implements IColorModulationContainer, ISubTagContainer {
Werkstoff.GenerationFeatures.prefixLogic.put(OrePrefixes.crushedCentrifuged,0b1000);
Werkstoff.GenerationFeatures.prefixLogic.put(OrePrefixes.cell,0b10000);
+ Werkstoff.GenerationFeatures.prefixLogic.put(OrePrefixes.capsule,0b10000);
+ Werkstoff.GenerationFeatures.prefixLogic.put(WerkstoffLoader.capsuleMolten,0b1000000);
Werkstoff.GenerationFeatures.prefixLogic.put(WerkstoffLoader.cellMolten,0b1000000);
Werkstoff.GenerationFeatures.prefixLogic.put(OrePrefixes.plate,0b10000000);
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/WerkstoffLoader.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/WerkstoffLoader.java
index 95337e0a7b..4e1011eb29 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/WerkstoffLoader.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/WerkstoffLoader.java
@@ -28,6 +28,7 @@ import com.github.bartimaeusnek.bartworks.client.renderer.BW_Renderer_Block_Ores
import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
import com.github.bartimaeusnek.bartworks.system.log.DebugLog;
import com.github.bartimaeusnek.bartworks.system.material.CircuitGeneration.BW_CircuitsLoader;
+import com.github.bartimaeusnek.bartworks.system.material.GT_Enhancement.GTMetaItemEnhancer;
import com.github.bartimaeusnek.bartworks.system.material.processingLoaders.AdditionalRecipes;
import com.github.bartimaeusnek.bartworks.system.oredict.OreDictAdder;
import com.github.bartimaeusnek.bartworks.system.oredict.OreDictHandler;
@@ -83,13 +84,13 @@ public class WerkstoffLoader implements Runnable {
public static final SubTag NOBLE_GAS_SMELTING = SubTag.getNewSubTag("NobleGasSmelting");
public static final SubTag NO_BLAST = SubTag.getNewSubTag("NoBlast");
public static OrePrefixes cellMolten;
+ public static OrePrefixes capsuleMolten;
public static ItemList rotorMold;
public static ItemList rotorShape;
public static ItemList smallGearShape;
public static ItemList ringMold;
public static ItemList boltMold;
-
static {
for (OrePrefixes prefix : OrePrefixes.values()){
if (prefix.toString().equals("cellMolten"))
@@ -108,7 +109,14 @@ public class WerkstoffLoader implements Runnable {
WerkstoffLoader.ringMold = Enum.valueOf(ItemList.class, "Shape_Mold_Ring");
WerkstoffLoader.boltMold = Enum.valueOf(ItemList.class, "Shape_Mold_Bolt");
} catch (NullPointerException | IllegalArgumentException e){}
+ //add tiberium
Element t = EnumHelper.addEnum(Element.class,"Tr",new Class[]{long.class, long.class, long.class, long.class, String.class, String.class, boolean.class}, new Object[]{123L, 203L, 0L, -1L, (String) null, "Tiberium", false});
+ //add molten & regular capsuls
+ if (Loader.isModLoaded("Forestry")) {
+ capsuleMolten = EnumHelper.addEnum(OrePrefixes.class, "capsuleMolten", new Class[]{String.class, String.class, String.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, boolean.class, int.class, long.class, int.class, int.class}, new Object[]{"Capsule of Molten stuff", "Molten ", " Capsule", true, true, true, true, false, false, false, true, false, false, 0b1000000, 3628800L, 64, -1});
+ capsule.mMaterialGenerationBits = 0b100000;
+ capsule.mDefaultStackSize = 64;
+ }
}
//TODO: FREE ID RANGE: 91-32766
@@ -1272,6 +1280,8 @@ public class WerkstoffLoader implements Runnable {
}
if (orePrefixes == ore)
return new ItemStack(WerkstoffLoader.BWOres, amount, werkstoff.getmID());
+ if (WerkstoffLoader.items.get(orePrefixes) == null)
+ new Exception("NO SUCH ITEM!"+orePrefixes+werkstoff.getDefaultName()).printStackTrace();
return new ItemStack(WerkstoffLoader.items.get(orePrefixes), amount, werkstoff.getmID()).copy();
}
@@ -1358,6 +1368,7 @@ public class WerkstoffLoader implements Runnable {
WerkstoffLoader.Calcium.add(WerkstoffLoader.ANAEROBE_SMELTING);
WerkstoffLoader.LuVTierMaterial.add(WerkstoffLoader.NOBLE_GAS_SMELTING);
+ WerkstoffLoader.LuVFineWireMaterial.add(WerkstoffLoader.NOBLE_GAS_SMELTING);
WerkstoffLoader.MagnetoResonaticDust.add(WerkstoffLoader.NO_BLAST);
@@ -1451,13 +1462,16 @@ public class WerkstoffLoader implements Runnable {
if ((WerkstoffLoader.toGenerateGlobal & 0b10000) != 0) {
WerkstoffLoader.items.put(cell, new BW_MetaGenerated_Items(cell));
//WerkstoffLoader.items.put(bottle, new BW_MetaGenerated_Items(bottle));
- //WerkstoffLoader.items.put(capsule, new BW_MetaGenerated_Items(capsule));
+ if (Loader.isModLoaded("Forestry"))
+ WerkstoffLoader.items.put(capsule, new BW_MetaGenerated_Items(capsule));
}
if ((WerkstoffLoader.toGenerateGlobal & 0b100000) != 0) {
WerkstoffLoader.items.put(cellPlasma, new BW_MetaGenerated_Items(cellPlasma));
}
if ((WerkstoffLoader.toGenerateGlobal & 0b1000000) != 0) {
WerkstoffLoader.items.put(WerkstoffLoader.cellMolten, new BW_MetaGenerated_Items(WerkstoffLoader.cellMolten));
+ if (Loader.isModLoaded("Forestry"))
+ WerkstoffLoader.items.put(capsuleMolten, new BW_MetaGenerated_Items(capsuleMolten));
}
if ((WerkstoffLoader.toGenerateGlobal & 0b10000000) != 0) {
WerkstoffLoader.items.put(plate, new BW_MetaGenerated_Items(plate));
@@ -1486,19 +1500,19 @@ public class WerkstoffLoader implements Runnable {
WerkstoffLoader.items.put(ingotQuadruple, new BW_MetaGenerated_Items(ingotQuadruple));
WerkstoffLoader.items.put(ingotQuintuple, new BW_MetaGenerated_Items(ingotQuintuple));
}
-
+ WerkstoffLoader.runGTItemDataRegistrator();
}
- public void gameRegistryHandler(){
+ void gameRegistryHandler(){
if (FMLCommonHandler.instance().getSide().isClient())
RenderingRegistry.registerBlockHandler(BW_Renderer_Block_Ores.INSTANCE);
GameRegistry.registerTileEntity(BW_MetaGeneratedOreTE.class, "bw.blockoresTE");
WerkstoffLoader.BWOres = new BW_MetaGenerated_Ores(Material.rock, BW_MetaGeneratedOreTE.class, "bw.blockores");
GameRegistry.registerBlock(WerkstoffLoader.BWOres, BW_MetaGeneratedOre_Item.class, "bw.blockores.01");
- WerkstoffLoader.runGTItemDataRegistrator();
+ new GTMetaItemEnhancer();
}
- public static void runGTItemDataRegistrator(){
+ private static void runGTItemDataRegistrator() {
HashSet<Materials> toRem = new HashSet<>();
for (Werkstoff werkstoff : Werkstoff.werkstoffHashSet) {
Materials werkstoffBridgeMaterial = werkstoff.getBridgeMaterial() != null ? werkstoff.getBridgeMaterial() : Materials.get(werkstoff.getDefaultName()) != Materials._NULL ? Materials.get(werkstoff.getDefaultName()) : new Materials(-1, werkstoff.getTexSet(), 0, 0, 0, false, werkstoff.getDefaultName().replaceAll(" ", ""), werkstoff.getDefaultName());
@@ -1555,8 +1569,9 @@ public class WerkstoffLoader implements Runnable {
werkstoffBridgeMaterial.mName = werkstoff.getDefaultName();
toRem.add(werkstoffBridgeMaterial);
werkstoff.setBridgeMaterial(werkstoffBridgeMaterial);
- if ((werkstoff.getGenerationFeatures().toGenerate & Werkstoff.GenerationFeatures.prefixLogic.get(prefixes)) != 0 && (werkstoff.getGenerationFeatures().blacklist & Werkstoff.GenerationFeatures.prefixLogic.get(prefixes)) == 0 && werkstoff.get(prefixes) != null && werkstoff.get(prefixes).getItem() != null)
- GT_OreDictUnificator.addAssociation(prefixes, werkstoffBridgeMaterial, werkstoff.get(prefixes), false);
+ if (WerkstoffLoader.items.get(prefixes) != null)
+ if ((werkstoff.getGenerationFeatures().toGenerate & Werkstoff.GenerationFeatures.prefixLogic.get(prefixes)) != 0 && (werkstoff.getGenerationFeatures().blacklist & Werkstoff.GenerationFeatures.prefixLogic.get(prefixes)) == 0 && werkstoff.get(prefixes) != null && werkstoff.get(prefixes).getItem() != null)
+ GT_OreDictUnificator.addAssociation(prefixes, werkstoffBridgeMaterial, werkstoff.get(prefixes), false);
}
}
}
@@ -2090,6 +2105,13 @@ public class WerkstoffLoader implements Runnable {
GT_Values.RA.addFluidCannerRecipe(Materials.Empty.getCells(1), werkstoff.get(cell), new FluidStack(fluids.get(werkstoff),1000), GT_Values.NF);
GT_Values.RA.addFluidCannerRecipe(werkstoff.get(cell), Materials.Empty.getCells(1), GT_Values.NF, new FluidStack(fluids.get(werkstoff),1000));
+ if (Loader.isModLoaded("Forestry")) {
+ FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData(new FluidStack(WerkstoffLoader.fluids.get(werkstoff), 1000), werkstoff.get(capsule), GT_ModHandler.getModItem("Forestry", "waxCapsule", 1), true);
+ GT_Utility.addFluidContainerData(emptyData);
+ FluidContainerRegistry.registerFluidContainer(emptyData);
+ GT_Values.RA.addFluidCannerRecipe(werkstoff.get(capsule), GT_Values.NI, GT_Values.NF, new FluidStack(fluids.get(werkstoff), 1000));
+ }
+
if ((werkstoff.getGenerationFeatures().toGenerate & 0b1) != 0){
GT_Values.RA.addFluidExtractionRecipe(werkstoff.get(dust),null,werkstoff.getFluidOrGas(1000),0,werkstoff.getStats().getMass() > 128 ? 64 : 30, (int) werkstoff.getStats().mass);
GT_Values.RA.addFluidSolidifierRecipe(GT_Utility.getIntegratedCircuit(1), werkstoff.getFluidOrGas(1000), werkstoff.get(dust), werkstoff.getStats().getMass() > 128 ? 64 : 30, (int) werkstoff.getStats().mass);
@@ -2131,11 +2153,18 @@ public class WerkstoffLoader implements Runnable {
return;
//Tank "Recipe"
- FluidContainerRegistry.FluidContainerData data = new FluidContainerRegistry.FluidContainerData(new FluidStack(WerkstoffLoader.molten.get(werkstoff), 144),werkstoff.get(cellMolten),Materials.Empty.getCells(1));
+ final FluidContainerRegistry.FluidContainerData data = new FluidContainerRegistry.FluidContainerData(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144),werkstoff.get(cellMolten),Materials.Empty.getCells(1));
FluidContainerRegistry.registerFluidContainer(werkstoff.getMolten(144),werkstoff.get(cell),Materials.Empty.getCells(1));
GT_Utility.addFluidContainerData(data);
- GT_Values.RA.addFluidCannerRecipe(Materials.Empty.getCells(1), werkstoff.get(cellMolten), new FluidStack(molten.get(werkstoff),144), GT_Values.NF);
- GT_Values.RA.addFluidCannerRecipe(werkstoff.get(cellMolten), Materials.Empty.getCells(1), GT_Values.NF, new FluidStack(molten.get(werkstoff),144));
+ GT_Values.RA.addFluidCannerRecipe(Materials.Empty.getCells(1), werkstoff.get(cellMolten), new FluidStack(Objects.requireNonNull(molten.get(werkstoff)),144), GT_Values.NF);
+ GT_Values.RA.addFluidCannerRecipe(werkstoff.get(cellMolten), Materials.Empty.getCells(1), GT_Values.NF, new FluidStack(Objects.requireNonNull(molten.get(werkstoff)),144));
+
+ if (Loader.isModLoaded("Forestry")) {
+ final FluidContainerRegistry.FluidContainerData emptyData = new FluidContainerRegistry.FluidContainerData(new FluidStack(Objects.requireNonNull(WerkstoffLoader.molten.get(werkstoff)), 144), werkstoff.get(capsuleMolten), GT_ModHandler.getModItem("Forestry", "refractoryEmpty", 1));
+ FluidContainerRegistry.registerFluidContainer(werkstoff.getMolten(144), werkstoff.get(capsuleMolten), GT_ModHandler.getModItem("Forestry", "refractoryEmpty", 1));
+ GT_Utility.addFluidContainerData(emptyData);
+ GT_Values.RA.addFluidCannerRecipe(werkstoff.get(capsuleMolten), GT_Values.NI, GT_Values.NF, new FluidStack(Objects.requireNonNull(molten.get(werkstoff)), 144));
+ }
if ((werkstoff.getGenerationFeatures().toGenerate & 0b10) != 0) {
GT_Values.RA.addFluidExtractionRecipe(werkstoff.get(ingot),null,werkstoff.getMolten(144),0,werkstoff.getStats().getMass() > 128 ? 64 : 30, (int) werkstoff.getStats().mass);
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java
index 8071b9b423..353493bb70 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AdditionalRecipes.java
@@ -142,7 +142,14 @@ public class AdditionalRecipes implements Runnable {
GT_Values.RA.addAssemblerRecipe(BW_NonMeta_MaterialItems.TiberiumCell_1.get(4L), GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel, 6L), BW_NonMeta_MaterialItems.TiberiumCell_4.get(1L), 150, 400);
GT_Values.RA.addAssemblerRecipe(BW_NonMeta_MaterialItems.TiberiumCell_2.get(2L), GT_OreDictUnificator.get(stick, Materials.TungstenSteel, 4L), BW_NonMeta_MaterialItems.TiberiumCell_4.get(1L), 100, 400);
- GT_Values.RA.addAssemblerRecipe(new ItemStack[]{ItemList.NaquadahCell_1.get(32L), GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L), GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L), GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L)},null, BW_NonMeta_MaterialItems.TheCoreCell.get(1L), 100, BW_Util.getMachineVoltageFromTier(6));
+ GT_Values.RA.addAssemblerRecipe(
+ new ItemStack[]{ItemList.NaquadahCell_1.get(32L),
+ GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L),
+ GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L),
+ GT_OreDictUnificator.get(stickLong, Materials.TungstenSteel,64L),
+ WerkstoffLoader.Tiberium.get(dust,64),
+ WerkstoffLoader.Tiberium.get(dust,64)
+ },null, BW_NonMeta_MaterialItems.TheCoreCell.get(1L), 100, BW_Util.getMachineVoltageFromTier(6));
GregTech_API.sAfterGTPostload.add(new LuVTierEnhancer());
AdditionalRecipes.oldGThelperMethod();
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AfterLuVTierEnhacement.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AfterLuVTierEnhacement.java
index 95ee440ddb..c7c1ed2585 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AfterLuVTierEnhacement.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/AfterLuVTierEnhacement.java
@@ -62,11 +62,11 @@ public class AfterLuVTierEnhacement implements Runnable {
new int[]{10_000,5_000,5_000,2_500,10_000,10_000},1000,2000);
GT_Values.RA.addCentrifugeRecipe(BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1), null,null,null,
ItemList.Depleted_Naquadah_4.get(8),
+ WerkstoffLoader.Zirconium.get(dust,64),
+ WerkstoffLoader.Zirconium.get(dust,64),
null,
null,
null,
- null,
- null,
- null,2000,8000);
+ new int[]{10_000,5_000,5_000},2000,8000);
}
}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LoadItemContainers.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LoadItemContainers.java
index bcc0917b9a..289d76c4f8 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LoadItemContainers.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LoadItemContainers.java
@@ -37,6 +37,6 @@ public class LoadItemContainers implements Runnable {
BW_NonMeta_MaterialItems.TiberiumCell_2.set(new GT_RadioactiveCellIC_Item("Double_Tiberiumcell", "Dual Fuel Rod (Tiberium)", 2, 50000, 2F, 1, 0.5F, BW_NonMeta_MaterialItems.Depleted_Tiberium_2.get(1), false));
BW_NonMeta_MaterialItems.TiberiumCell_4.set(new GT_RadioactiveCellIC_Item("Quad_Tiberiumcell", "Quad Fuel Rod (Tiberium)", 4, 50000, 2F, 1, 0.5F, BW_NonMeta_MaterialItems.Depleted_Tiberium_4.get(1), false));
BW_NonMeta_MaterialItems.Depleted_TheCoreCell.set(new GT_DepletetCell_Item("Core_Reactor_CellDep", "Depleted \"The Core\" Cell", 32));
- BW_NonMeta_MaterialItems.TheCoreCell.set(new GT_RadioactiveCellIC_Item("Core_Reactor_Cell", "\"The Core\" Cell", 32, 102400000, 8F, 32, 1F, BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1), false));
+ BW_NonMeta_MaterialItems.TheCoreCell.set(new GT_RadioactiveCellIC_Item("Core_Reactor_Cell", "\"The Core\" Cell", 32, 100000, 8F, 32, 1F, BW_NonMeta_MaterialItems.Depleted_TheCoreCell.get(1), false));
}
}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LuVTierEnhancer.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LuVTierEnhancer.java
index 50c9e0d311..85f800d77c 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LuVTierEnhancer.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/LuVTierEnhancer.java
@@ -131,7 +131,8 @@ public class LuVTierEnhancer implements Runnable {
continue;
ItemData ass = GT_OreDictUnificator.getAssociation(stack);
if (ass.mMaterial.mMaterial.equals(Materials.Osmiridium))
- recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix,stack.stackSize);
+ if (WerkstoffLoader.items.get(ass.mPrefix) != null)
+ recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix,stack.stackSize);
}
}
for (GT_Recipe recipe_assemblyLine : GT_Recipe.GT_Recipe_Map.sAssemblerRecipes.mRecipeList){
@@ -145,7 +146,8 @@ public class LuVTierEnhancer implements Runnable {
continue;
ItemData ass = GT_OreDictUnificator.getAssociation(stack);
if (ass.mMaterial.mMaterial.equals(Materials.Osmiridium))
- recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix,stack.stackSize);
+ if (WerkstoffLoader.items.get(ass.mPrefix) != null)
+ recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix, stack.stackSize);
}
}
for (GT_Recipe recipe_assemblyLine : GT_Recipe.GT_Recipe_Map.sAssemblylineVisualRecipes.mRecipeList){
@@ -157,7 +159,8 @@ public class LuVTierEnhancer implements Runnable {
continue;
ItemData ass = GT_OreDictUnificator.getAssociation(stack);
if (ass.mMaterial.mMaterial.equals(Materials.Osmiridium))
- recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix,stack.stackSize);
+ if (WerkstoffLoader.items.get(ass.mPrefix) != null)
+ recipe_assemblyLine.mInputs[i] = WerkstoffLoader.LuVFineWireMaterial.get(ass.mPrefix,stack.stackSize);
}
}
}
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/PlatinumSludgeOverHaul.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/PlatinumSludgeOverHaul.java
index b04e2e6db0..98d0438056 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/PlatinumSludgeOverHaul.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/processingLoaders/PlatinumSludgeOverHaul.java
@@ -520,15 +520,15 @@ public class PlatinumSludgeOverHaul {
if (Block.getBlockFromItem(stack.getItem()) instanceof GT_Generic_Block && !(Block.getBlockFromItem(stack.getItem()) instanceof GT_Block_Ores_Abstract))
return true;
+ if (GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_1.get(1),stack,true) || GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_2.get(1),stack,true) || GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_4.get(1),stack,true))
+ return true;
+
if (stack.getItem() instanceof GT_Generic_Item) {
if (!BW_Util.checkStackAndPrefix(stack))
return false;
return (!Arrays.asList(PlatinumSludgeOverHaul.OPBLACKLIST).contains(GT_OreDictUnificator.getAssociation(stack).mPrefix)) || Arrays.asList(PlatinumSludgeOverHaul.BLACKLIST).contains(GT_OreDictUnificator.getAssociation(stack).mMaterial.mMaterial);
}
- if (GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_1.get(1),stack,true) || GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_2.get(1),stack,true) || GT_Utility.areStacksEqual(ItemList.Depleted_Naquadah_4.get(1),stack,true))
- return true;
-
if (Loader.isModLoaded("miscutils")) {
try {
if (Class.forName("gtPlusPlus.core.item.base.BaseItemComponent").isAssignableFrom(stack.getItem().getClass()) && !(stack.getUnlocalizedName().contains("dust") || stack.getUnlocalizedName().contains("Dust")))
diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/worldgen/MapGenRuins.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/worldgen/MapGenRuins.java
index 8c5db993b3..ead000b328 100644
--- a/src/main/java/com/github/bartimaeusnek/bartworks/system/worldgen/MapGenRuins.java
+++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/worldgen/MapGenRuins.java
@@ -132,8 +132,8 @@ public abstract class MapGenRuins extends WorldGenerator {
this.setRoofBlocks(new int[]{9},Blocks.log);
this.setMiscBlocks(new int[]{1},Blocks.log);
this.statBlocks = new int[]{rand.nextInt(this.ToBuildWith[0].length)};
- int colored=rand.nextInt(15);
- int tier = rand.nextInt(6);
+ int colored = rand.nextInt(15);
+ int tier = secureRandom.nextInt(6);
boolean useColor = rand.nextBoolean();
byte set = 0;
byte toSet = (byte) (rand.nextInt(6-tier)+1);
diff --git a/src/main/java/com/github/bartimaeusnek/crossmod/galacticraft/solarsystems/Ross128SolarSystem.java b/src/main/java/com/github/bartimaeusnek/crossmod/galacticraft/solarsystems/Ross128SolarSystem.java
index a4410102a7..b548597e08 100644
--- a/src/main/java/com/github/bartimaeusnek/crossmod/galacticraft/solarsystems/Ross128SolarSystem.java
+++ b/src/main/java/com/github/bartimaeusnek/crossmod/galacticraft/solarsystems/Ross128SolarSystem.java
@@ -69,7 +69,7 @@ public class Ross128SolarSystem {
Ross128SolarSystem.Ross128ba.setRelativeDistanceFromCenter(new CelestialBody.ScalableDistance(10f, 15f)).setRelativeOrbitTime(1 / 0.01F);
Ross128SolarSystem.Ross128ba.setBodyIcon(new ResourceLocation(BartWorksCrossmod.MOD_ID + ":galacticraft/Ross128b/MapObjs/Ross128ba.png"));
Ross128SolarSystem.Ross128ba.setDimensionInfo(ConfigHandler.ross128BAID, WorldProviderRoss128Ba.class);
- Ross128SolarSystem.Ross128ba.setTierRequired(Loader.isModLoaded("galaxyspace") ? Math.min(ConfigHandler.ross128btier + 1, 8) : 3);
+ Ross128SolarSystem.Ross128ba.setTierRequired(Loader.isModLoaded("GalaxySpace") ? Math.min(ConfigHandler.ross128btier + 2, 8) : 3);
GalaxyRegistry.registerSolarSystem(Ross128SolarSystem.Ross128System);
GalaxyRegistry.registerPlanet(Ross128SolarSystem.Ross128b);
diff --git a/src/main/java/com/github/bartimaeusnek/crossmod/thaumcraft/util/ThaumcraftHandler.java b/src/main/java/com/github/bartimaeusnek/crossmod/thaumcraft/util/ThaumcraftHandler.java
index 353f656e4e..4d382a6c07 100644
--- a/src/main/java/com/github/bartimaeusnek/crossmod/thaumcraft/util/ThaumcraftHandler.java
+++ b/src/main/java/com/github/bartimaeusnek/crossmod/thaumcraft/util/ThaumcraftHandler.java
@@ -25,6 +25,7 @@ package com.github.bartimaeusnek.crossmod.thaumcraft.util;
import com.github.bartimaeusnek.bartworks.common.configs.ConfigHandler;
import com.github.bartimaeusnek.bartworks.system.log.DebugLog;
import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
+import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
import com.github.bartimaeusnek.bartworks.util.Pair;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.TC_Aspects;
@@ -150,10 +151,12 @@ public class ThaumcraftHandler {
if ((werkstoff.getGenerationFeatures().toGenerate & element.mMaterialGenerationBits) != 0 && (werkstoff.getGenerationFeatures().blacklist & element.mMaterialGenerationBits) == 0) {
if (element.mMaterialAmount >= 3628800L || element == OrePrefixes.ore) {
DebugLog.log("OrePrefix: "+element.name() + " mMaterialAmount: " + element.mMaterialAmount/3628800L);
- ThaumcraftHandler.AspectAdder.addAspectViaBW(werkstoff.get(element), werkstoff.getTCAspects(element == OrePrefixes.ore ? 1 : (int) (element.mMaterialAmount / 3628800L)));
+ if (WerkstoffLoader.items.get(element) != null)
+ ThaumcraftHandler.AspectAdder.addAspectViaBW(werkstoff.get(element), werkstoff.getTCAspects(element == OrePrefixes.ore ? 1 : (int) (element.mMaterialAmount / 3628800L)));
}
else if (element.mMaterialAmount >= 0L) {
- ThaumcraftHandler.AspectAdder.addAspectViaBW(werkstoff.get(element), new Pair<Object, Integer>(TC_Aspects.PERDITIO.mAspect, 1));
+ if (WerkstoffLoader.items.get(element) != null)
+ ThaumcraftHandler.AspectAdder.addAspectViaBW(werkstoff.get(element), new Pair<Object, Integer>(TC_Aspects.PERDITIO.mAspect, 1));
}
}
}
diff --git a/src/main/resources/assets/bartworks/lang/de_DE.lang b/src/main/resources/assets/bartworks/lang/de_DE.lang
index df76b57277..f3df754f6b 100644
--- a/src/main/resources/assets/bartworks/lang/de_DE.lang
+++ b/src/main/resources/assets/bartworks/lang/de_DE.lang
@@ -1,88 +1,96 @@
-itemGroup.GT2C=Gregtech 2 Compat
-item.GT_Rockcutter_Item_LV.name=Steinschneider LV
-item.GT_Rockcutter_Item_MV.name=Steinschneider MV
-item.GT_Rockcutter_Item_HV.name=Steinschneider HV
-item.GT_Teslastaff_Item.name=Teslastab
+BW_GlasBlocks.0.name=Borosilicat Glass Block
+BW_GlasBlocks.1.name=Nickel Verstärkter Borosilicate Glass Block
+BW_GlasBlocks.10.name=Farbiger Borosilicate Glass Block (Hell Grün)
+BW_GlasBlocks.11.name=Farbiger Borosilicate Glass Block (Braun)
+BW_GlasBlocks.12.name=Thorium Yttrium Glass Block
+BW_GlasBlocks.2.name=Tungsten Verstärkter Borosilicate Glass Block
+BW_GlasBlocks.3.name=Chrome Verstärkter Borosilicate Glass Block
+BW_GlasBlocks.4.name=Iridium Verstärkter Borosilicate Glass Block
+BW_GlasBlocks.5.name=Osmium Verstärkter Borosilicate Glass Block
+BW_GlasBlocks.6.name=Farbiger Borosilicate Glass Block (Rot)
+BW_GlasBlocks.7.name=Farbiger Borosilicate Glass Block (Grün)
+BW_GlasBlocks.8.name=Farbiger Borosilicate Glass Block (Lila)
+BW_GlasBlocks.9.name=Farbiger Borosilicate Glass Block (Gelb)
BW_ItemBlocks.0.name=Geätzte Lapis Zelle
BW_ItemBlocks.1.name=Plattierte Lapis Zelle
-GT_LESU_CASING.0.name=LESU Hülle
-
-itemGroup.bartworks=BartWorks Inter Temporal
BW_Machinery_Casings.0.name=Nickel-Zinc Ferrite Block
BW_Machinery_Casings.1.name=Transformer-Wicklungs Block
-item.BW_PaperRotor.name=Primitiver Papier Rotor (nur Wind)
-item.BW_LeatherRotor.name=Primitiver Leder Rotor (nur Wind)
-item.BW_WoolRotor.name=Primitiver Wolle Rotor (nur Wind)
+GT_LESU_CASING.0.name=LESU Hülle
+filled.item.petriDish.name=Petri Schale mit einer Kultur
+item.Agarose.name=Agarose
+item.BISOPellet.name=BISO Kügelchen
+item.BISOPelletBall.name=BISO Kügelchen Ball
+item.BISOPelletCompound.name=BISO Kügelchen Material
item.BW_CombinedRotor.name=Primitiver Multi-Material Rotor (nur Wind)
-tile.BWRotorBlock.0.name=Primitive Kinetische Achsen Box
-item.grindstone_top.name=Oberes Teil des Mahlsteins
-item.grindstone_bottom.name=Unteres Teil des Mahlsteins
-item.completed_grindstone.name=Mahlsteins
-item.rotors.leatherParts.name=Leder umspannter Holzrahmen
-item.rotors.woolParts.name=Wolle umspannter Holzrahmen
-item.rotors.paperParts.name=Papier umspannter Holzrahmen
-item.rotors.combinedParts.name=Multi-Material umspannter Holzrahmen
+item.BW_LeatherRotor.name=Primitiver Leder Rotor (nur Wind)
+item.BW_PaperRotor.name=Primitiver Papier Rotor (nur Wind)
item.BW_SimpleWindMeter.name=Einfaches Wind Meter
-tile.BWHeatedWaterPump.0.name=Einfache Stirling Wasser Pumpe
-item.BWrawtube.name=Verlängerte Glass Röhre
+item.BW_WoolRotor.name=Primitiver Wolle Rotor (nur Wind)
item.BWmotor.name=Einfache Wärmekraftmaschine
-
-itemGroup.BioTab=BartWorks BioEngineering
-filled.item.petriDish.name=Petri Schale mit einer Kultur
-item.petriDish.name=Sterilisierte Petri Schale
+item.BWrawtube.name=Verlängerte Glass Röhre
+item.BWstove.name=Einfacher Beheizter Ofen
+item.Cells.name=Bakterien Zellen
item.DNASampleFlask.name=DNA-Proben Flasche
-item.PlasmidCell.name=Plasmid-Proben Flasche
item.DetergentPowder.name=Waschmittel
-item.Agarose.name=Agarose
+item.GT_Rockcutter_Item_HV.name=Steinschneider HV
+item.GT_Rockcutter_Item_LV.name=Steinschneider LV
+item.GT_Rockcutter_Item_MV.name=Steinschneider MV
+item.GT_Teslastaff_Item.name=Teslastab
item.IncubationModule.name=Incubations Modul
-item.Cells.name=Bakterien Zellen
item.PlasmaMembrane.name=Plasma Membran
+item.PlasmidCell.name=Plasmid-Proben Flasche
+item.TRISOPellet.name=TRISO Kügelchen
+item.TRISOPelletBall.name=TRISO Kügelchen Ball
+item.TRISOPelletCompound.name=TRISO Kügelchen Material
+item.completed_grindstone.name=Mahlstein
+item.grindstone_bottom.name=Unteres Teil des Mahlsteins
+item.grindstone_top.name=Oberes Teil des Mahlsteins
+item.petriDish.name=Sterilisierte Petri Schale
+item.rotors.combinedParts.name=Multi-Material umspannter Holzrahmen
+item.rotors.leatherParts.name=Leder umspannter Holzrahmen
+item.rotors.paperParts.name=Papier umspannter Holzrahmen
+item.rotors.woolParts.name=Wolle umspannter Holzrahmen
+itemGroup.BioTab=BartWorks BioEngineering
+itemGroup.GT2C=Gregtech 2 Compat
+itemGroup.bartworks=BartWorks Inter Temporal
+itemGroup.bartworksMetaMaterials=BartWorks' Meta Materials
+itemGroup.bw.MetaItems.0=BartWorks Circuit Overhaul Items
+labModule.item.ClonalCellularSynthesisModule.name=Zelluläres Clone Modul
labModule.item.DNAExtractionModule.name=DNA Extractions Modul
labModule.item.PCRThermoclyclingModule.name=PCR Thermozykler
labModule.item.PlasmidSynthesisModule.name=Plasmid Synthese Modul
labModule.item.TransformationModule.name=Transformations Modul
-labModule.item.ClonalCellularSynthesisModule.name=Zelluläres Clone Modul
-BW_GlasBlocks.0.name=Borosilicat Glass Block
-BW_GlasBlocks.1.name=Nickel Verstärkter Borosilicate Glass Block
-BW_GlasBlocks.2.name=Tungsten Verstärkter Borosilicate Glass Block
-BW_GlasBlocks.3.name=Chrome Verstärkter Borosilicate Glass Block
-BW_GlasBlocks.4.name=Iridium Verstärkter Borosilicate Glass Block
-BW_GlasBlocks.5.name=Osmium Verstärkter Borosilicate Glass Block
-BW_GlasBlocks.6.name=Farbiger Borosilicate Glass Block (Rot)
-BW_GlasBlocks.7.name=Farbiger Borosilicate Glass Block (Grün)
-BW_GlasBlocks.8.name=Farbiger Borosilicate Glass Block (Lila)
-BW_GlasBlocks.9.name=Farbiger Borosilicate Glass Block (Gelb)
-BW_GlasBlocks.10.name=Farbiger Borosilicate Glass Block (Hell Grün)
-BW_GlasBlocks.11.name=Farbiger Borosilicate Glass Block (Braun)
-
-tooltip.glas.0.name=Glass-Tier:
+moon.Ross128ba=Ross128ba
+nei.biovat.0.name=Braucht Glass Tier:
+nei.biovat.1.name=Braucht genau
+nei.biovat.2.name=Braucht mindestens
+planet.Ross128b=Ross128b
+solarsystem.Ross128System=Ross128-System
+star.Ross128=Ross128
+tile.BWHeatedWaterPump.0.name=Einfache Stirling Wasser Pumpe
+tile.BWRotorBlock.0.name=Primitive Kinetische Achsen Box
+tile.acidgenerator.name=Säure Generator
+tile.biolab.name=Bio Labor
+tile.biovat.name=Bacterien Tank
+tile.bw.mbf.name=Mega Brennofen
+tile.bw.mvf.name=Mega Vacuum Gefrierer
+tile.bw.windmill.name=Windmühle
+tile.diode.name=Kabel Diode
+tile.energydistributor.name=Energie Distributor
+tile.manutrafo.name=Manualeller Trafo
+tile.radiohatch.name=Radio Hülle
tooltip.LESU.0.name=Maximale Kapazität!
tooltip.LESU.1.name=Mehrere Kontroller!
-
-tooltip.windmeter.0.name=Ein einfaches Windmeter, um einen Platz für die Windmühle zu finden.
-tooltip.windmeter.1.name=Benutzungen:
-tooltip.windmeter.2.name=nicht da zu sein.
-tooltip.windmeter.3.name=sehr niedrig zu sein.
-tooltip.windmeter.4.name=normal zu sein.
-tooltip.windmeter.5.name=eher stark zu sein.
-tooltip.windmeter.6.name=sehr stark zu sein.
-tooltip.windmeter.7.name=zu stark zu sein.
-tooltip.windmeter.8.name=Der Wind hier scheint
-tooltip.rotor.0.name=Durchmesser:
-tooltip.rotor.1.name=Haltbarkeit:
-tooltip.rotor.2.name=Effizienz:
-tooltip.cp.0.name=Ist ein Chip drinnen?
-
tooltip.bw.0.name=Hinzugefügt von
tooltip.bw.1.name=Hinzugefügt von bartimaeusnek durch
-tooltip.bw.yes.name=Ja
-tooltip.bw.no.name=Nein
-tooltip.bw.tier.name=Tier:
+tooltip.bw.empty.name=Leer
tooltip.bw.kg.0.name=kg
tooltip.bw.kg.1.name=kgs
-tooltip.bw.empty.name=Leer
-
-tooltip.teslastaff.0.name=Keine Garantie!
+tooltip.bw.no.name=Nein
+tooltip.bw.tier.name=Tier:
+tooltip.bw.yes.name=Ja
+tooltip.cp.0.name=Ist ein Chip drinnen?
+tooltip.glas.0.name=Glass-Tier:
tooltip.labmodule.0.name=A Module used to change the BioLab's working Mode
tooltip.labparts.0.name=An empty Sterilized Petri Dish.
tooltip.labparts.1.name=An empty DNA Flask.
@@ -93,28 +101,26 @@ tooltip.labparts.5.name=A Petri Dish containing:
tooltip.labparts.6.name=This is a weak culture, it can not be bred in the Bacterial Vat!
tooltip.labparts.7.name=A DNA Flask containing:
tooltip.labparts.8.name=A Plasmid Cell containing:
-
-tooltip.tile.waterpump.0.name=Produces
-tooltip.tile.waterpump.1.name=L/s Water when fueled.
-tooltip.tile.waterpump.2.name=Must be placed on the Ground.
-
-tooltip.tile.mbf.0.name=Controller Block for the Mega Blast Furnace;Size(WxHxD): 15x20x15 (Hollow);Controller: 3nd Layer Middle Center;Inner 13x18x13 Heating Coils (Hollow);Outer 15x18x15 Boronsilicate Glass;The glass limits the Energy Input tier;1+ Input Hatch/Bus (Any casing);1+ Output Bus (Any casing);1+ Energy Hatch (Any casing);1x Maintenance Hatch (Any casing);13x13 Muffler Hatches (Top middle);Heat Proof Machine Casings for the outer 15x15 (Layer 20);1+ Output Hatch to recover CO2/CO/SO2 (optional, any top layer casing); Recovery scales with Muffler Hatch tier;Heat Proof Machine Casings for Base;Each 900K over the min. Heat Capacity grants 5% speedup (multiplicatively);Each 1800K over the min. Heat Capacity allows for one upgraded overclock;Upgraded overclocks reduce recipe time to 25% and increase EU/t to 400%;Causes maximum
-tooltip.tile.mbf.1.name=Pollution per second
-tooltip.tile.mvf.0.name=Controller Block for the Mega Vacuum Freezer;Super cools hot ingots and cells;Size(WxHxD): 15x15x15 (Hollow);Controller: (Front centered);1x Input Bus (Any casing);1x Output Bus (Any casing);1x Maintenance Hatch (Any casing);1x Energy Hatch (Any casing);Frost Proof Machine Casings for the rest
+tooltip.rotor.0.name=Durchmesser:
+tooltip.rotor.1.name=Haltbarkeit:
+tooltip.rotor.2.name=Effizienz:
+tooltip.teslastaff.0.name=Keine Garantie!
+tooltip.tile.acidgen.0.name=An Acid Generator
+tooltip.tile.acidgen.1.name=Creates Power from Chemical Energy Potentials.
+tooltip.tile.biolab.0.name=The BioLab, a Multi-Use Bioengineering Station
tooltip.tile.bvat.0.name=Controller Block for the Bacterial Vat;Size(WxHxD): 5x4x5;Bottom and top are Stainless Steel Casings;Bottom and top must contain:;1x Maintenance, 1x Output Hatch;1 or more Input Hatches, 1 or more Input Buses, 0-1 Radiation Input Bus;The two middle layers must be build out of glass, hollow;The glass can be any glass, i.e. Tinkers Construct Clear Glass;Some Recipes need more advanced Glass Types;For maximum efficiency boost keep the Output Hatch always half filled!
-tooltip.tile.windmill.0.name=A primitive Grinder powered by Kinetic energy.;Size(WxHxD): 7x12x7;Layer 1: 7x7 Bricks, corners are air, controller at front centered.;Layer 2-5: 5x5 Hardened Clay, corners are air, can contain one door,;hollow, Wall must contain at least one Dispenser;Layer 6: 5x5 Wood Planks. Corners are filled, hollow.;Layer 7: 7x7 Wood Planks. Corners are air, hollow.;Layer 8: 7x7 Wood Planks. Corners are air, hollow,;front centered must be a Primitive Kinetic Shaftbox;Layer 9: 7x7 Wood Planks. Corners are air, hollow.;Layer 10: 5x5 Wood Planks. Corners are filled, hollow.;Layer 11: 3x3 Wood Planks. Corners are filled, hollow.;Layer 12: 1x1 Wood Plank.;Needs a Wind Mill Rotor in the Shaftbox to operate;Input items in Controller;Output items will appear in the dispensers;It is faster in regions with more wind (like IC2 Windmills)
+tooltip.tile.diode.0.name=A Simple diode that will allow Energy Flow in only one direction.
+tooltip.tile.eic.0.name=Controller Block for the Electric Implosion Compressor;Size(WxHxD): 3x9x3;Uses Electricity instead of Explosives;Controller: Layer 3, front, center;Layer 1 and Layer 9: Solid Steel Machine Casings, each: 1 Energy Hatch in the middle;Layer 2,3,7,8: Middle: Nickel-Zinc-Ferrit Blocks, Outer: Transformer-Winding Blocks;Layer 4,5,6: Neutronium Blocks;1+ Input Bus, 1+ Output Bus, 1 Maintenance Hatch at any Solid Steel Machine Casing;Do NOT Obstruct or mine the Moving parts while in Operation, will explode if you do so!
+tooltip.tile.energydistributor.0.name=Splits Amperage into several Sides.
+tooltip.tile.htr.0.name=Controller Block for the Thorium High Temperature Reactor;Size(WxHxD): 11x12x11 (Hollow);Controller: Front Center, Lowest Layer;Corners and the 2 touching blocks are air;Once build, Helium is inserted into the Fluid Input Hatch until it doesnt accept any more;1+ Output Hatch (Any Bottom casing);1+ Input Hatch (Any Top casing);1+ Input Bus (Any Top casing);1x Maintenance Hatch (Any casing);Raidation Proof Casings for the Rest;Needs a constant supply of coolant while running, will output after complete Operation;Needs at least 100k Fuel pebbles to start operation (can hold up to 675k pebbles);Consumes 1 Fuel Pellet per Operation;TRISO pebbles provide 30% more Energy;Each pebble increases the amount of converted coolant;One Operation takes 27 Ingame Days
tooltip.tile.lesu.0.name=Controller Block for the GT2-Styled L.E.S.U.;Size: ANY
tooltip.tile.lesu.1.name=Storage per LESU Casing:
tooltip.tile.lesu.2.name=Output EU: LESU Casings amount;Input EU: Next Voltage Tier to Output EU;Input/Output Amps can be configured via 4 Circuits in GUI;Output Side has a dot on it.
tooltip.tile.lesu.3.name=Only one Controller allowed, no Wallsharing!
tooltip.tile.manualtravo.0.name=Controller Block for the Manual Trafo;Operates in 4 different Modes:;Mode 1: Circuit 0 in controller: Direct-Upstep;Mode 2: Circuit 1 in controller: Direct-Downstep;Mode 3: Circuit 2 in controller: Tapped-Upstep;Mode 4: Circuit 3 in controller: Tapped-Downstep;For direct Modes: 3xHx3;Base Contains at least 1 Energy Hatch;1 Layer of Transformer-Winding Blocks for each Tier transformed;Middle of Transformer-Winding Blocks needs to be a Nickel-Zinc Ferrite Block;Top Contains at least 1 Dynamo Hatch;Maintenance Hatch can be placed anywhere;Tapped Mode is disabled at the Moment.
-tooltip.tile.tiereddsc.0.name=Voltage:
-tooltip.tile.tiereddsc.1.name=Amperage IN:
-tooltip.tile.tiereddsc.2.name=Amperage OUT:
-tooltip.tile.tiereddsc.3.name=Capacity:
-tooltip.tile.diode.0.name=A Simple diode that will allow Energy Flow in only one direction.
-tooltip.tile.energydistributor.0.name=Splits Amperage into several Sides.
-tooltip.tile.biolab.0.name=The BioLab, a Multi-Use Bioengineering Station
+tooltip.tile.mbf.0.name=Controller Block for the Mega Blast Furnace;Size(WxHxD): 15x20x15 (Hollow);Controller: 3nd Layer Middle Center;Inner 13x18x13 Heating Coils (Hollow);Outer 15x18x15 Boronsilicate Glass;The glass limits the Energy Input tier;1+ Input Hatch/Bus (Any casing);1+ Output Bus (Any casing);1+ Energy Hatch (Any casing);1x Maintenance Hatch (Any casing);13x13 Muffler Hatches (Top middle);Heat Proof Machine Casings for the outer 15x15 (Layer 20);1+ Output Hatch to recover CO2/CO/SO2 (optional, any top layer casing); Recovery scales with Muffler Hatch tier;Heat Proof Machine Casings for Base;Each 900K over the min. Heat Capacity grants 5% speedup (multiplicatively);Each 1800K over the min. Heat Capacity allows for one upgraded overclock;Upgraded overclocks reduce recipe time to 25% and increase EU/t to 400%;Causes maximum
+tooltip.tile.mbf.1.name=Pollution per second
+tooltip.tile.mvf.0.name=Controller Block for the Mega Vacuum Freezer;Super cools hot ingots and cells;Size(WxHxD): 15x15x15 (Hollow);Controller: (Front centered);1x Input Bus (Any casing);1x Output Bus (Any casing);1x Maintenance Hatch (Any casing);1x Energy Hatch (Any casing);Frost Proof Machine Casings for the rest
tooltip.tile.radhatch.0.name=Radioactive Item Chamber for Multiblocks
tooltip.tile.radhatch.1.name=Use a screwdriver to set the containment level
tooltip.tile.radhatch.2.name=Material:
@@ -125,19 +131,20 @@ tooltip.tile.radhatch.6.name=t
tooltip.tile.radhatch.7.name=s
tooltip.tile.radhatch.8.name=m
tooltip.tile.radhatch.9.name=h
-tooltip.tile.acidgen.0.name=An Acid Generator
-tooltip.tile.acidgen.1.name=Creates Power from Chemical Energy Potentials.
-nei.biovat.0.name=Braucht Glass Tier:
-nei.biovat.1.name=Braucht genau
-nei.biovat.2.name=Braucht mindestens
-
-tile.diode.name=Kabel Diode
-tile.energydistributor.name=Energie Distributor
-tile.acidgenerator.name=Säure Generator
-tile.bw.mbf.name=Mega Brennofen
-tile.bw.mvf.name=Mega Vacuum Gefrierer
-tile.biolab.name=Bio Labor
-tile.biovat.name=Bacterien Tank
-tile.radiohatch.name=Radio Hülle
-tile.bw.windmill.name=Windmühle
-tile.manutrafo.name=Manualeller Trafo \ No newline at end of file
+tooltip.tile.tiereddsc.0.name=Voltage:
+tooltip.tile.tiereddsc.1.name=Amperage IN:
+tooltip.tile.tiereddsc.2.name=Amperage OUT:
+tooltip.tile.tiereddsc.3.name=Kapazität:
+tooltip.tile.waterpump.0.name=Produziert
+tooltip.tile.waterpump.1.name=L/s Wasser wenn laufend.
+tooltip.tile.waterpump.2.name=Muss auf dem Boden stehen.
+tooltip.tile.windmill.0.name=A primitive Grinder powered by Kinetic energy.;Size(WxHxD): 7x12x7;Layer 1: 7x7 Bricks, corners are air, controller at front centered.;Layer 2-5: 5x5 Hardened Clay, corners are air, can contain one door,;hollow, Wall must contain at least one Dispenser;Layer 6: 5x5 Wood Planks. Corners are filled, hollow.;Layer 7: 7x7 Wood Planks. Corners are air, hollow.;Layer 8: 7x7 Wood Planks. Corners are air, hollow,;front centered must be a Primitive Kinetic Shaftbox;Layer 9: 7x7 Wood Planks. Corners are air, hollow.;Layer 10: 5x5 Wood Planks. Corners are filled, hollow.;Layer 11: 3x3 Wood Planks. Corners are filled, hollow.;Layer 12: 1x1 Wood Plank.;Needs a Wind Mill Rotor in the Shaftbox to operate;Input items in Controller;Output items will appear in the dispensers;It is faster in regions with more wind (like IC2 Windmills)
+tooltip.windmeter.0.name=Ein einfaches Windmeter, um einen Platz für die Windmühle zu finden.
+tooltip.windmeter.1.name=Benutzungen:
+tooltip.windmeter.2.name=nicht da zu sein.
+tooltip.windmeter.3.name=sehr niedrig zu sein.
+tooltip.windmeter.4.name=normal zu sein.
+tooltip.windmeter.5.name=eher stark zu sein.
+tooltip.windmeter.6.name=sehr stark zu sein.
+tooltip.windmeter.7.name=zu stark zu sein.
+tooltip.windmeter.8.name=Der Wind hier scheint \ No newline at end of file
diff --git a/src/main/resources/assets/bartworks/lang/fr_FR.lang b/src/main/resources/assets/bartworks/lang/fr_FR.lang
index 847d021e59..16aed282ec 100644
--- a/src/main/resources/assets/bartworks/lang/fr_FR.lang
+++ b/src/main/resources/assets/bartworks/lang/fr_FR.lang
@@ -55,6 +55,7 @@ BW_GlasBlocks.8.name=Bloc de Verre Boronsilicate coloré (Violet)
BW_GlasBlocks.9.name=Bloc de Verre Boronsilicate coloré (Jaune)
BW_GlasBlocks.10.name=Bloc de Verre Boronsilicate coloré (Vert Clair)
BW_GlasBlocks.11.name=Bloc de Verre Boronsilicate coloré (Marron)
+BW_GlasBlocks.12.name=Thorium Yttrium Glass Block
tooltip.glas.0.name=Tier de verre:
tooltip.LESU.0.name=Capacité maximum!
@@ -141,4 +142,23 @@ tile.biolab.name=Bio Lab
tile.biovat.name=Bio Cuve
tile.radiohatch.name=Trappe Radio
tile.bw.windmill.name=Eolienne
-tile.manutrafo.name=Transformateur Manuel \ No newline at end of file
+tile.manutrafo.name=Transformateur Manuel
+
+tooltip.tile.htr.0.name=Controller Block for the Thorium High Temperature Reactor;Size(WxHxD): 11x12x11 (Hollow);Controller: Front Center, Lowest Layer;Corners and the 2 touching blocks are air;Once build, Helium is inserted into the Fluid Input Hatch until it doesnt accept any more;1+ Output Hatch (Any Bottom casing);1+ Input Hatch (Any Top casing);1+ Input Bus (Any Top casing);1x Maintenance Hatch (Any casing);Raidation Proof Casings for the Rest;Needs a constant supply of coolant while running, will output after complete Operation;Needs at least 100k Fuel pebbles to start operation (can hold up to 675k pebbles);Consumes 1 Fuel Pellet per Operation;TRISO pebbles provide 30% more Energy;Each pebble increases the amount of converted coolant;One Operation takes 27 Ingame Days
+item.TRISOPellet.name=TRISO pebble
+item.TRISOPelletBall.name=TRISO pebble ball
+item.BISOPelletBall.name=BISO pebble ball
+item.BISOPellet.name=BISO pebble
+item.TRISOPelletCompound.name=TRISO pebble compund
+item.BISOPelletCompound.name=BISO pebble compund
+itemGroup.bartworksMetaMaterials=BartWorks' Meta Materials
+
+tooltip.tile.eic.0.name=Controller Block for the Electric Implosion Compressor;Size(WxHxD): 3x9x3;Uses Electricity instead of Explosives;Controller: Layer 3, front, center;Layer 1 and Layer 9: Solid Steel Machine Casings, each: 1 Energy Hatch in the middle;Layer 2,3,7,8: Middle: Nickel-Zinc-Ferrit Blocks, Outer: Transformer-Winding Blocks;Layer 4,5,6: Neutronium Blocks;1+ Input Bus, 1+ Output Bus, 1 Maintenance Hatch at any Solid Steel Machine Casing;Do NOT Obstruct or mine the Moving parts while in Operation, will explode if you do so!
+
+
+planet.Ross128b=Ross128b
+moon.Ross128ba=Ross128ba
+star.Ross128=Ross128
+solarsystem.Ross128System=Ross128-System
+
+itemGroup.bw.MetaItems.0=BartWorks Circuit Overhaul Items
diff --git a/src/main/resources/assets/bartworks/lang/zh_CN.lang b/src/main/resources/assets/bartworks/lang/zh_CN.lang
index 35818c0e8b..419c845f96 100644
--- a/src/main/resources/assets/bartworks/lang/zh_CN.lang
+++ b/src/main/resources/assets/bartworks/lang/zh_CN.lang
@@ -162,4 +162,4 @@ star.Ross128=罗斯128
solarsystem.Ross128System=罗斯128星系
itemGroup.bw.MetaItems.0=BartWorks电路更新物品
-//This zh_CN.lang is translated by huajijam for bartworks (19/7/19) \ No newline at end of file
+#This zh_CN.lang is translated by huajijam for bartworks (19/7/19) \ No newline at end of file
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DIAMOND/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/DULL/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/EMERALD/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FIERY/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FINE/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLINT/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/FLUID/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_HORIZONTAL/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GEM_VERTICAL/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/GLASS/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LAPIS/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LEAF/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/LIGNITE/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/MAGNETIC/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/METALLIC/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NETHERSTAR/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/NONE/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/OPAL/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/PAPER/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/POWDER/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/QUARTZ/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/ROUGH/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/RUBY/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SAND/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHARDS/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/SHINY/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule.png b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule.png
new file mode 100644
index 0000000000..9e388650d9
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten.png b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten.png
new file mode 100644
index 0000000000..3e9106f277
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten_OVERLAY.png
new file mode 100644
index 0000000000..b2bd85bf44
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsuleMolten_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule_OVERLAY.png b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule_OVERLAY.png
new file mode 100644
index 0000000000..7c6797718d
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/WOOD/capsule_OVERLAY.png
Binary files differ
diff --git a/src/main/resources/assets/gregtech/textures/items/materialicons/copy.bat b/src/main/resources/assets/gregtech/textures/items/materialicons/copy.bat
new file mode 100644
index 0000000000..9713953aac
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/items/materialicons/copy.bat
@@ -0,0 +1 @@
+for /r /d %%I in (*) do xcopy %1 "%%~fsI" /H /K /Y \ No newline at end of file