diff options
-rw-r--r-- | src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java | 99 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/item/ModItems.java | 74 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/item/base/BaseItemTCShard.java | 62 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/recipe/RECIPES_General.java | 48 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/util/Utils.java | 58 | ||||
-rw-r--r-- | src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java | 6 | ||||
-rw-r--r-- | src/resources/assets/miscutils/textures/items/itemShard.png | bin | 0 -> 3138 bytes |
7 files changed, 287 insertions, 60 deletions
diff --git a/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java b/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java new file mode 100644 index 0000000000..6707bcbdfd --- /dev/null +++ b/src/Java/gtPlusPlus/core/handler/events/BlockEventHandler.java @@ -0,0 +1,99 @@ +package gtPlusPlus.core.handler.events; + +import gtPlusPlus.core.util.Utils; + +import java.util.Random; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockLog; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLiving; +import net.minecraft.entity.passive.EntityPig; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.Blocks; +import net.minecraft.init.Items; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.EntityDamageSource; +import net.minecraftforge.common.util.ForgeDirection; +import net.minecraftforge.event.entity.living.LivingDropsEvent; +import net.minecraftforge.event.entity.player.PlayerInteractEvent; +import net.minecraftforge.event.world.BlockEvent; +import cpw.mods.fml.common.eventhandler.Event; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; + +public class BlockEventHandler { + private Random random = new Random(); + + @SubscribeEvent + public void onBlockLeftClicked(PlayerInteractEvent event) { + if (event.action != PlayerInteractEvent.Action.LEFT_CLICK_BLOCK) return; + + ItemStack heldItem = event.entityPlayer.getHeldItem(); + Block block = event.world.getBlock(event.x, event.y, event.z); + + // If the block clicked was Stone, the player was holding an Iron Pickaxe and a random integer from 0 (inclusive) to 2 (exclusive) is 0 (50% chance) + if (block == Blocks.stone && heldItem != null && heldItem.getItem() == Items.iron_pickaxe && random.nextInt(2) == 0) { + ForgeDirection direction = ForgeDirection.getOrientation(event.face); // Convert the numeric face to a ForgeDirection + int fireX = event.x + direction.offsetX, fireY = event.y + direction.offsetY, fireZ = event.z + direction.offsetZ; // Offset the block's coordinates according to the direction + + if (event.world.isAirBlock(fireX, fireY, fireZ)) { // If the block at the new coordinates is Air + event.world.setBlock(fireX, fireY, fireZ, Blocks.fire); // Replace it with Fire + event.useBlock = Event.Result.DENY; // Prevent the Fire from being extinguished (also prevents Block#onBlockClicked from being called) + } + } + } + + @SubscribeEvent + public void onEntityDrop(LivingDropsEvent event) { + if (event.entityLiving instanceof EntityPig && event.source instanceof EntityDamageSource) { + // getEntity will return the Entity that caused the damage,even for indirect damage sources like arrows/fireballs + // (where it will return the Entity that shot the projectile rather than the projectile itself) + Entity sourceEntity = event.source.getEntity(); + ItemStack heldItem = sourceEntity instanceof EntityLiving ? ((EntityLiving) sourceEntity).getHeldItem() : + sourceEntity instanceof EntityPlayer ? ((EntityPlayer) sourceEntity).getHeldItem() : null; + + if (heldItem != null && heldItem.getItem() == Items.iron_pickaxe) { + System.out.println("EntityPig drops event"); + event.drops.clear(); + event.entityLiving.dropItem(Items.diamond, 64); + } + } + } + + @SubscribeEvent + public void onBlockBreak(BlockEvent.BreakEvent event) { + if (event.block == Blocks.stone) { + event.setCanceled(true); + event.world.setBlock(event.x, event.y, event.z, Blocks.flowing_lava); + } + } + + @SubscribeEvent + public void harvestDrops(BlockEvent.HarvestDropsEvent event) { + if (event.block == Blocks.cocoa && event.harvester != null) { + event.harvester.addChatComponentMessage(new ChatComponentText("Cocoa!")); + } + } + + @SubscribeEvent + public void logsHarvest(BlockEvent.HarvestDropsEvent event) { + if (event.block instanceof BlockLog) { + // http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/modification-development/2444501-harvestdropevent-changing-drops-of-vanilla-blocks + + // Utils.sendServerMessage("Logs! Harvester: %s Drops: %s", event.harvester != null ? event.harvester.getCommandSenderName() : "<none>", event.drops.stream().map(ItemStack.toString()).collect(Collectors.joining(", "))); + if (event.harvester != null) { + ItemStack heldItem = event.harvester.getHeldItem(); + if (heldItem == null || heldItem.getItem().getHarvestLevel(heldItem, "axe") < 1) { + event.drops.clear(); + Utils.sendServerMessage("Harvester had wrong tool, clearing drops"); + } else { + Utils.sendServerMessage("Harvester had correct tool, not clearing drops"); + } + } else { + event.drops.clear(); + Utils.sendServerMessage("No harvester, clearing drops"); + } + } + } +} diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index fa579ddce0..7244a58eb4 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -99,7 +99,7 @@ public final class ModItems { public static MultiPickaxeBase MP_GTMATERIAL; public static MultiSpadeBase MS_GTMATERIAL; - + public static BaseItemDecidust itemBaseDecidust; public static BaseItemCentidust itemBaseCentidust; @@ -139,14 +139,21 @@ public final class ModItems { public static Item dustCalciumCarbonate; public static Item dust2LiOH_CaCO3; public static Item dustLi2BeF4; - + public static Item dustAer; public static Item dustIgnis; public static Item dustTerra; public static Item dustAqua; - + public static BaseEuItem metaItem2; + public static BaseItemTCShard shardAer; + public static BaseItemTCShard shardIgnis; + public static BaseItemTCShard shardTerra; + public static BaseItemTCShard shardAqua; + + public static BaseItemTCShard shardDull; + //@SuppressWarnings("unused") @SuppressWarnings("unused") @@ -159,25 +166,25 @@ public final class ModItems { if (CORE.DEBUG){ DEBUG_INIT.registerItems(); } - - + + //Some Simple forms of materials itemStickyRubber = new Item().setUnlocalizedName("itemStickyRubber").setCreativeTab(tabMachines).setTextureName(CORE.MODID + ":itemStickyRubber"); GameRegistry.registerItem(itemStickyRubber, "itemStickyRubber"); GT_OreDictUnificator.registerOre("ingotRubber", ItemUtils.getItemStack(CORE.MODID+":itemStickyRubber", 1)); - - - - - + + + + + //Register Hydrogen Blobs first, so we can replace old helium blobs. itemHydrogenBlob = new CoreItem("itemHydrogenBlob", tabMisc).setTextureName(CORE.MODID + ":itemHydrogenBlob"); GT_OreDictUnificator.registerOre("dustHydrogen", new ItemStack(ModItems.itemHydrogenBlob)); //Register Old Helium Blob, this will be replaced when held by a player. itemHeliumBlob = new CoreItem("itemHeliumBlob", tabMisc, ItemUtils.getSimpleStack(itemHydrogenBlob)).setTextureName(CORE.MODID + ":itemHeliumBlob"); - - + + //Make some backpacks //Primary colours backpack_Red = new BaseItemBackpack("backpackRed", Utils.rgbtoHexValue(200, 0, 0)); @@ -207,11 +214,11 @@ public final class ModItems { try{ //Elements generate first so they can be used in compounds. - + //Uranium-233 is a fissile isotope of uranium that is bred from thorium-232 as part of the thorium fuel cycle. - MaterialGenerator.generate(ELEMENT.getInstance().URANIUM233); - MaterialGenerator.generate(ELEMENT.getInstance().ZIRCONIUM); - + MaterialGenerator.generate(ELEMENT.getInstance().URANIUM233); + MaterialGenerator.generate(ELEMENT.getInstance().ZIRCONIUM); + //Carbides - Tungsten Carbide exists in .09 so don't generate it. - Should still come before alloys though if (!CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){ MaterialGenerator.generate(ALLOY.TUNGSTEN_CARBIDE); @@ -220,9 +227,9 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.ZIRCONIUM_CARBIDE); MaterialGenerator.generate(ALLOY.TANTALUM_CARBIDE); MaterialGenerator.generate(ALLOY.NIOBIUM_CARBIDE); - + //Generate some Alloys - + //Misc Alloys MaterialGenerator.generate(ALLOY.ENERGYCRYSTAL); MaterialGenerator.generate(ALLOY.BLOODSTEEL); @@ -232,7 +239,7 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.TUMBAGA); //Potin is traditionally an alloy of bronze, tin and lead, with varying quantities of each possible MaterialGenerator.generate(ALLOY.POTIN); - + //Staballoy & Tantalloy MaterialGenerator.generate(ALLOY.STABALLOY); MaterialGenerator.generate(ALLOY.TANTALLOY_60); @@ -243,12 +250,12 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.INCONEL_690); MaterialGenerator.generate(ALLOY.INCONEL_792); - + //Maraging Steel MaterialGenerator.generate(ALLOY.MARAGING250); MaterialGenerator.generate(ALLOY.MARAGING300); MaterialGenerator.generate(ALLOY.MARAGING350); - + //Composite Alloys MaterialGenerator.generate(ALLOY.STELLITE); MaterialGenerator.generate(ALLOY.TALONITE); @@ -263,12 +270,12 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.INCOLOY_020); MaterialGenerator.generate(ALLOY.INCOLOY_DS); MaterialGenerator.generate(ALLOY.INCOLOY_MA956); - + //Leagrisium MaterialGenerator.generate(ALLOY.LEAGRISIUM); //Must be the final Alloy to Generate MaterialGenerator.generate(ALLOY.QUANTUM); - + } catch (Throwable r){ Utils.LOG_INFO("Failed to Generated a Material. "+r.getMessage()); @@ -279,13 +286,24 @@ public final class ModItems { System.exit(1); } - - //Energy Crystal Components + //TC Style Shards, for use in making energy crystal mix. + //A dull shard, able to be infused with an element. + shardDull = new BaseItemTCShard("Drained", Utils.rgbtoHexValue(25, 25, 25)); + //Generates four elemental shards when TC is not installed. + if (!LoadedMods.Thaumcraft){ + shardAer = new BaseItemTCShard("Aer", Utils.rgbtoHexValue(225, 225, 5)); + shardIgnis = new BaseItemTCShard("Ignis", Utils.rgbtoHexValue(255, 5, 5)); + shardTerra = new BaseItemTCShard("Terra", Utils.rgbtoHexValue(5, 255, 5)); + shardAqua = new BaseItemTCShard("Aqua", Utils.rgbtoHexValue(5, 5, 255)); + } + //Generates a set of four special dusts to be used in my recipes. dustAer = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AER, true)[0]; dustIgnis = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().IGNIS, true)[0]; dustTerra = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().TERRA, true)[0]; dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0]; + + //Nuclear Fuel Dusts dustUraniumTetraFluoride = ItemUtils.generateSpecialUseDusts("UraniumTetrafluoride", "Uranium Tetrafluoride", Utils.rgbtoHexValue(17, 179, 42))[0]; dustUraniumHexaFluoride = ItemUtils.generateSpecialUseDusts("UraniumHexafluoride", "Uranium Hexafluoride", Utils.rgbtoHexValue(9, 199, 32))[0]; @@ -303,7 +321,7 @@ public final class ModItems { dustCalciumHydroxide = ItemUtils.generateSpecialUseDusts("CalciumHydroxide", "Hydrated Lime", Utils.rgbtoHexValue(255, 255, 255))[0]; //https://en.wikipedia.org/wiki/Calcium_hydroxide dustCalciumCarbonate = ItemUtils.generateSpecialUseDusts("CalciumCarbonate", "Calcium Carbonate", Utils.rgbtoHexValue(255, 255, 255))[0]; //https://en.wikipedia.org/wiki/Calcium_carbonate dust2LiOH_CaCO3 = ItemUtils.generateSpecialUseDusts("2LiOHCaCO3", "2LiOH & CaCO3 Compound", Utils.rgbtoHexValue(255, 255, 255))[0]; //https://en.wikipedia.org/wiki/Calcium_carbonate - + //FLiBe Fuel Compounds dustLi2BeF4 = ItemUtils.generateSpecialUseDusts("Li2BeF4", "Li2BeF4 Fuel Compound", Utils.rgbtoHexValue(255, 255, 255))[0]; //https://en.wikipedia.org/wiki/FLiBe @@ -314,11 +332,11 @@ public final class ModItems { metaItem2.registerItem(3, "Test Item 3", 1000765000, 4, "I Hold EU 3.", 32000); metaItem2.registerItem(4, "Whirlygig", 1043644000, (short) 5, "Spin me right round.", EnumRarity.rare, EnumChatFormatting.DARK_GREEN, true); metaItem2.registerItem(5, "Whirlygig 2", 2124867000, (short) 7, "Spin me right round.", EnumRarity.uncommon, EnumChatFormatting.RED, true); - + // ItemList.Battery_RE_HV_Cadmium.set(BaseEuItem. //GameRegistry.registerItem(this, unlocalName); - + boolean gtStyleTools = LoadedMods.Gregtech; Materials[] rm = Materials.values(); diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemTCShard.java b/src/Java/gtPlusPlus/core/item/base/BaseItemTCShard.java new file mode 100644 index 0000000000..684736db40 --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/base/BaseItemTCShard.java @@ -0,0 +1,62 @@ +package gtPlusPlus.core.item.base; + +import gregtech.api.util.GT_OreDictUnificator; +import gtPlusPlus.core.creative.AddToCreativeTab; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.item.ItemUtils; + +import java.util.List; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import cpw.mods.fml.common.registry.GameRegistry; + +public class BaseItemTCShard extends Item{ + + public final String unlocalName; + public final String displayName; + public final int itemColour; + + public BaseItemTCShard(String DisplayName, int colour) { + this.unlocalName = "item"+Utils.sanitizeString(DisplayName); + this.displayName = DisplayName; + this.itemColour = colour; + this.setCreativeTab(AddToCreativeTab.tabMisc); + this.setUnlocalizedName(unlocalName); + this.setMaxStackSize(64); + this.setTextureName(CORE.MODID + ":" + "itemShard"); + GameRegistry.registerItem(this, unlocalName); + GT_OreDictUnificator.registerOre("shard"+DisplayName, ItemUtils.getSimpleStack(this)); + GT_OreDictUnificator.registerOre("gemInfused"+DisplayName, ItemUtils.getSimpleStack(this)); + } + + @Override + public String getItemStackDisplayName(ItemStack p_77653_1_) { + return (this.displayName+" Shard"); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + public void addInformation(ItemStack stack, EntityPlayer aPlayer, List list, boolean bool) { + //super.addInformation(stack, aPlayer, list, bool); + } + + + @Override + public int getColorFromItemStack(ItemStack stack, int HEX_OxFFFFFF) { + return itemColour; + } + + @Override + public void onUpdate(ItemStack iStack, World world, Entity entityHolding, int p_77663_4_, boolean p_77663_5_) { + + } + + +} + + diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java index aa3026133e..532187c793 100644 --- a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java +++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java @@ -12,37 +12,69 @@ import net.minecraft.item.ItemStack; public class RECIPES_General { + static ItemStack NULL = null; static ItemStack RECIPE_Paper = ItemUtils.getSimpleStack(Items.paper); + static ItemStack RECIPE_Dirt = ItemUtils.getSimpleStack(Item.getItemFromBlock(Blocks.dirt)); + static ItemStack RECIPE_Snow = ItemUtils.getSimpleStack(Item.getItemFromBlock(Blocks.snow)); + static ItemStack RECIPE_Obsidian = ItemUtils.getSimpleStack(Item.getItemFromBlock(Blocks.obsidian)); static String RECIPE_LapisDust = "dustLazurite"; static ItemStack OUTPUT_Blueprint = ItemUtils.getSimpleStack(ModItems.itemBlueprintBase); static ItemStack RECIPE_CraftingTable = ItemUtils.getSimpleStack(Item.getItemFromBlock(Blocks.crafting_table)); static String RECIPE_BronzePlate = "plateAnyBronze"; static ItemStack RECIPE_BasicCasingIC2; static ItemStack OUTPUT_Workbench_Bronze = ItemUtils.getSimpleStack(Item.getItemFromBlock(ModBlocks.blockWorkbench)); - static ItemStack NULL = null; + static String RECIPE_HydrogenDust = "dustHydrogen"; public static void RECIPES_LOAD(){ - if (LoadedMods.Gregtech){ RECIPE_BasicCasingIC2 = ItemUtils.getItemStack("IC2:blockMachine", 1); - run(); + run(); } } - + private static void run(){ - - + //Workbench Blueprint RecipeUtils.recipeBuilder( RECIPE_Paper, RECIPE_LapisDust, NULL, RECIPE_Paper, RECIPE_LapisDust, NULL, RECIPE_LapisDust, RECIPE_LapisDust, NULL, OUTPUT_Blueprint); - + + //Bronze Workbench RecipeUtils.recipeBuilder( RECIPE_BronzePlate, RECIPE_CraftingTable, RECIPE_BronzePlate, RECIPE_BronzePlate, RECIPE_BasicCasingIC2, RECIPE_BronzePlate, RECIPE_BronzePlate, RECIPE_BronzePlate, RECIPE_BronzePlate, OUTPUT_Workbench_Bronze); + + //Generates recipes for the Dull shard when TC is not installed. + if (!LoadedMods.Thaumcraft){ + //Dull Shard to Aer + RecipeUtils.recipeBuilder( + RECIPE_HydrogenDust, RECIPE_HydrogenDust, RECIPE_HydrogenDust, + RECIPE_HydrogenDust, ItemUtils.getSimpleStack(ModItems.shardDull), RECIPE_HydrogenDust, + RECIPE_HydrogenDust, RECIPE_HydrogenDust, RECIPE_HydrogenDust, + ItemUtils.getSimpleStack(ModItems.shardAer)); + //Dull Shard to Ignis + RecipeUtils.recipeBuilder( + RECIPE_Obsidian, RECIPE_Obsidian, RECIPE_Obsidian, + RECIPE_Obsidian, ItemUtils.getSimpleStack(ModItems.shardDull), RECIPE_Obsidian, + RECIPE_Obsidian, RECIPE_Obsidian, RECIPE_Obsidian, + ItemUtils.getSimpleStack(ModItems.shardIgnis)); + //Dull Shard to Terra + RecipeUtils.recipeBuilder( + RECIPE_Dirt, RECIPE_Dirt, RECIPE_Dirt, + RECIPE_Dirt, ItemUtils.getSimpleStack(ModItems.shardDull), RECIPE_Dirt, + RECIPE_Dirt, RECIPE_Dirt, RECIPE_Dirt, + ItemUtils.getSimpleStack(ModItems.shardTerra)); + //Dull Shard to Aqua + RecipeUtils.recipeBuilder( + RECIPE_LapisDust, RECIPE_LapisDust, RECIPE_LapisDust, + RECIPE_LapisDust, ItemUtils.getSimpleStack(ModItems.shardDull), RECIPE_LapisDust, + RECIPE_LapisDust, RECIPE_LapisDust, RECIPE_LapisDust, + ItemUtils.getSimpleStack(ModItems.shardAqua)); + } + } - + } diff --git a/src/Java/gtPlusPlus/core/util/Utils.java b/src/Java/gtPlusPlus/core/util/Utils.java index 99b5a30827..3c406d9046 100644 --- a/src/Java/gtPlusPlus/core/util/Utils.java +++ b/src/Java/gtPlusPlus/core/util/Utils.java @@ -20,6 +20,9 @@ import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.item.Item.ToolMaterial; import net.minecraft.item.ItemStack; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.IChatComponent; import net.minecraft.world.World; import net.minecraftforge.common.util.EnumHelper; import net.minecraftforge.fluids.*; @@ -33,7 +36,7 @@ import cpw.mods.fml.common.FMLLog; public class Utils { public static final int WILDCARD_VALUE = Short.MAX_VALUE; - + public static final boolean isServer(){ return FMLCommonHandler.instance().getEffectiveSide().isServer(); } @@ -44,23 +47,23 @@ public class Utils { Utils.LOG_WARNING("Timer expired."); } } - + public static boolean isModUpToDate(){ - + if (CORE.MASTER_VERSION.toLowerCase().equals("offline")){ return false; } - + if (CORE.MASTER_VERSION.equals(CORE.VERSION.toLowerCase())){ return true; } return false; } - + public static TC_AspectStack getTcAspectStack (TC_Aspects aspect, long size){ return getTcAspectStack(aspect.name(), (int) size); } - + public static TC_AspectStack getTcAspectStack (String aspect, long size){ return getTcAspectStack(aspect, (int) size); } @@ -68,7 +71,7 @@ public class Utils { public static TC_AspectStack getTcAspectStack (TC_Aspects aspect, int size){ return getTcAspectStack(aspect.name(), size); } - + public static TC_AspectStack getTcAspectStack (String aspect, int size){ TC_AspectStack returnValue = null; @@ -102,8 +105,8 @@ public class Utils { } catch (NoSuchFieldError r){ Utils.LOG_INFO("Invalid Thaumcraft Aspects - Report this issue to Alkalus"); } - - + + } else if (aspect.toUpperCase() == "PRAECANTATIO"){ //Adds in Compat for older GT Versions which Misspell aspects. @@ -184,6 +187,15 @@ public class Utils { g.drawRect (MinA, MinB, MaxA, MaxB); } + // Send a message to all players on the server + public static void sendServerMessage(String translationKey) { + sendServerMessage(new ChatComponentText(translationKey)); + } + // Send a message to all players on the server + public static void sendServerMessage(IChatComponent chatComponent) { + MinecraftServer.getServer().getConfigurationManager().sendChatMsg(chatComponent); + } + /** * Returns if that Liquid is IC2Steam. */ @@ -246,28 +258,28 @@ public class Utils { sb.append(")"); return sb.toString(); } - + /** * * @param colourStr e.g. "#FFFFFF" * @return */ public static Color hex2Rgb(String colorStr) { - return new Color( - Integer.valueOf( colorStr.substring( 1, 3 ), 16 ), - Integer.valueOf( colorStr.substring( 3, 5 ), 16 ), - Integer.valueOf( colorStr.substring( 5, 7 ), 16 ) ); + return new Color( + Integer.valueOf( colorStr.substring( 1, 3 ), 16 ), + Integer.valueOf( colorStr.substring( 3, 5 ), 16 ), + Integer.valueOf( colorStr.substring( 5, 7 ), 16 ) ); } - + /** * * @param colourInt e.g. 0XFFFFFF * @return Colour */ public static Color hex2Rgb(int colourInt) { - return Color.decode(String.valueOf(colourInt)); + return Color.decode(String.valueOf(colourInt)); } - + /** * * @param colourInt e.g. 0XFFFFFF @@ -305,7 +317,7 @@ public class Utils { List<Object> targetList = new ArrayList<Object>(Arrays.asList(sourceArray)); return targetList; } - + public static List<Object> convertArrayListToList(ArrayList sourceArray) { List<Object> targetList = new ArrayList<Object>(Arrays.asList(sourceArray)); return targetList; @@ -491,11 +503,11 @@ public class Utils { } return null; } - + public static String sanitizeString(String input){ String temp; String output; - + temp = input.replace(" ", ""); temp = temp.replace("-", ""); temp = temp.replace("_", ""); @@ -512,9 +524,9 @@ public class Utils { temp = temp.replace(" ", ""); output = temp; return output; - + } - + public static ToolMaterial generateMaterialFromGT(Materials gtMaterial){ String name = gtMaterial.name(); int harvestLevel = gtMaterial.mToolQuality; @@ -524,7 +536,7 @@ public class Utils { int enchantability = gtMaterial.mEnchantmentToolsLevel; ToolMaterial temp = EnumHelper.addToolMaterial(name, harvestLevel, durability, efficiency, damage, enchantability); return temp; - + } diff --git a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java index d96d813e6f..58ce45f43c 100644 --- a/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java +++ b/src/Java/gtPlusPlus/core/util/materials/MaterialUtils.java @@ -55,7 +55,11 @@ public class MaterialUtils { int radioactivity = 0; if (material.isRadioactive()){ radioactivity = 1; - } + } + if (name.toLowerCase().contains("infused")){ + String tempname = name.substring(7, name.length()); + name = "Infused " + tempname; + } if (hasValidRGBA(rgba) || element == Element.H || (material == Materials.InfusedAir || material == Materials.InfusedFire || material == Materials.InfusedEarth || material == Materials.InfusedWater)){ //ModItems.itemBaseDecidust = UtilsItems.generateDecidust(material); //ModItems.itemBaseCentidust = UtilsItems.generateCentidust(material); diff --git a/src/resources/assets/miscutils/textures/items/itemShard.png b/src/resources/assets/miscutils/textures/items/itemShard.png Binary files differnew file mode 100644 index 0000000000..ee88e8eca9 --- /dev/null +++ b/src/resources/assets/miscutils/textures/items/itemShard.png |