mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
113 lines
5.1 KiB
Java
113 lines
5.1 KiB
Java
package com.hbm.items.special;
|
|
|
|
import com.hbm.items.ItemEnumMulti;
|
|
import com.hbm.items.special.ItemByproduct.EnumByproduct;
|
|
import static com.hbm.items.special.ItemByproduct.EnumByproduct.*;
|
|
|
|
import java.util.Locale;
|
|
|
|
import com.hbm.lib.RefStrings;
|
|
import com.hbm.util.EnumUtil;
|
|
|
|
import cpw.mods.fml.relauncher.Side;
|
|
import cpw.mods.fml.relauncher.SideOnly;
|
|
import net.minecraft.client.renderer.texture.IIconRegister;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.util.IIcon;
|
|
import net.minecraft.util.StatCollector;
|
|
|
|
public class ItemBedrockOre extends ItemEnumMulti {
|
|
|
|
protected IIcon overlayIcon;
|
|
|
|
public ItemBedrockOre() {
|
|
super(EnumBedrockOre.class, false, false);
|
|
}
|
|
|
|
@Override
|
|
@SideOnly(Side.CLIENT)
|
|
public boolean requiresMultipleRenderPasses() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
@SideOnly(Side.CLIENT)
|
|
public void registerIcons(IIconRegister p_94581_1_) {
|
|
super.registerIcons(p_94581_1_);
|
|
|
|
this.overlayIcon = p_94581_1_.registerIcon(RefStrings.MODID + ":ore_overlay");
|
|
}
|
|
|
|
@Override
|
|
@SideOnly(Side.CLIENT)
|
|
public IIcon getIconFromDamageForRenderPass(int meta, int pass) {
|
|
return pass == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(meta, pass);
|
|
}
|
|
|
|
@Override
|
|
@SideOnly(Side.CLIENT)
|
|
public int getColorFromItemStack(ItemStack stack, int pass) {
|
|
|
|
if(pass == 1) {
|
|
EnumBedrockOre ore = EnumUtil.grabEnumSafely(EnumBedrockOre.class, stack.getItemDamage());
|
|
return ore.color;
|
|
}
|
|
|
|
return 0xffffff;
|
|
}
|
|
|
|
@Override
|
|
public String getItemStackDisplayName(ItemStack stack) {
|
|
|
|
EnumBedrockOre ore = EnumUtil.grabEnumSafely(EnumBedrockOre.class, stack.getItemDamage());
|
|
String oreName = StatCollector.translateToLocal("item.ore." + ore.oreName.toLowerCase(Locale.US));
|
|
return StatCollector.translateToLocalFormatted(this.getUnlocalizedNameInefficiently(stack) + ".name", oreName);
|
|
}
|
|
|
|
/*
|
|
* BYPRODUCT TIER 1: NITRIC ACID - CHEMPLANT GATE / NO GATE
|
|
* BYPRODUCT TIER 2: ORGANIC SOLVENT - CRACKING OIL GATE
|
|
* BYPRODUCT TIER 3: HIPERF SOLVENT - RBMK GATE
|
|
* BYPRODUCT TIER 4: SCHRABIDIC ACID - FUSION GATE?
|
|
*/
|
|
|
|
/*
|
|
* [BEDROCK x1] -C-> [CENTRIFUGED x4] -(PER)-> [CLEANED x4] -C-> [SEPARATED x16] -(SUL)-> [PURIFIED x16] -C-> [ENRICHED x64]
|
|
* \
|
|
* \-------(NIT)-> [NITRATED x16] -C-> [NITROCRYSTALLINE x32] -(ORG)-> [DEEP-CLEANED x32] -C-> [ENRICHED x64]
|
|
* v \ v
|
|
* [BYPRODUCT TIER 1] \ [BYPRODUCT TIER 2]
|
|
* \
|
|
* \-----------(HPS)-> [SEARED x32] -C-> [ENRICHED x64]
|
|
* v
|
|
* [BYPRODUCT TIER 3]
|
|
*/
|
|
|
|
public static enum EnumBedrockOre {
|
|
//Ore Byproduct 1, 2, 3
|
|
IRON("Iron", 0xE2C0AA, B_SULFUR, B_TITANIUM, B_TITANIUM), //titanium, sulfur from pyrite
|
|
COPPER("Copper", 0xEC9A63, B_SULFUR, B_SULFUR, B_SULFUR), //sulfur sulfur sulfur sulfur
|
|
BORAX("Borax", 0xE4BE74, B_LITHIUM, B_CALCIUM, B_CALCIUM), //calcium from ulexite, uhhh lithium?
|
|
ASBESTOS("Asbestos", 0xBFBFB9, B_SILICON, B_SILICON, B_SILICON), //quartz i guess?
|
|
NIOBIUM("Niobium", 0xAF58D8, B_IRON, B_IRON, B_IRON), //iron in columbite, often found along tantalite
|
|
TITANIUM("Titanium", 0xF2EFE2, B_SILICON, B_CALCIUM, B_ALUMINIUM), //titanite is titanium + calcium + silicon with traces of iron and aluminium
|
|
TUNGSTEN("Tungsten", 0x2C293C, B_LEAD, B_IRON, B_BISMUTH), //ferberite has iron, raspite has lead, russelite is bismuth tungsten
|
|
GOLD("Gold", 0xF9D738, B_LEAD, B_COPPER, B_BISMUTH), //occurs with copper, lead and rare bismuthide
|
|
URANIUM("Uranium", 0x868D82, B_LEAD, B_RADIUM, B_POLONIUM), //uranium and its decay products
|
|
THORIUM("Thorium", 0x7D401D, B_SILICON, B_URANIUM, B_TECHNETIUM), //thorium occours with uraninite and decay products
|
|
CHLOROCALCITE("Chlorocalcite", 0xCDE036, B_LITHIUM, B_SILICON, B_SILICON), //i guess?
|
|
FLUORITE("Fluorite", 0xF6F3E7, B_SILICON, B_LITHIUM, B_ALUMINIUM); //different silicon-bearing gemstones, generic lithium, aluminium from sodium compound trailings
|
|
|
|
public String oreName;
|
|
public int color;
|
|
public EnumByproduct[] byproducts;
|
|
|
|
/** Byproduct count must be consistent with current tier count, use NULL if no byproduct should be generated! */
|
|
private EnumBedrockOre(String name, int color, EnumByproduct... by) {
|
|
this.oreName = name;
|
|
this.color = color;
|
|
this.byproducts = by;
|
|
}
|
|
}
|
|
}
|