diff options
Diffstat (limited to 'src/main/java/goodgenerator/items/nuclear')
4 files changed, 378 insertions, 0 deletions
diff --git a/src/main/java/goodgenerator/items/nuclear/IsotopeMaterial.java b/src/main/java/goodgenerator/items/nuclear/IsotopeMaterial.java new file mode 100644 index 0000000000..593a663a71 --- /dev/null +++ b/src/main/java/goodgenerator/items/nuclear/IsotopeMaterial.java @@ -0,0 +1,60 @@ +// package goodgenerator.items.nuclear; +// +// import goodgenerator.loader.Loaders; +// import net.minecraft.item.ItemStack; +// +// import java.util.HashMap; +// import java.util.HashSet; +// +// public class IsotopeMaterial { +// +// public static final HashSet<IsotopeMaterial> mIsotopeMaterial = new HashSet<>(); +// public static final HashMap<Integer, IsotopeMaterial> mIDMap = new HashMap<>(); +// public static final HashMap<String, IsotopeMaterial> mNameMap = new HashMap<>(); +// +// public final int mID; +// public final int mNeutron; +// public final String mName; +// public final String mLocalizedName; +// public final String mMaterialName; +// public final short[] mRGB; +// public final short[] mRGBO; +// public final NuclearTextures mTexture; +// +// public IsotopeMaterial(int aID, String aName, String aMaterialName, String aLocalizedName, NuclearTextures +// aTexture, int aR, int aG, int aB, int aNeutron) { +// if (mIDMap.get(aID) != null) +// throw new UnsupportedOperationException("ID:" + aID + " is already used!"); +// this.mID = aID; +// this.mNeutron = aNeutron; +// this.mName = aName; +// this.mMaterialName = aMaterialName; +// this.mLocalizedName = aLocalizedName; +// this.mRGB = new short[] {(short) (aR * 0.6), (short) (aG * 0.6), (short) (aB * 0.6), 0}; +// this.mRGBO = new short[] {(short) aR, (short) aG, (short) aB, 0}; +// this.mTexture = aTexture; +// mIsotopeMaterial.add(this); +// mIDMap.put(this.mID, this); +// mNameMap.put(this.mName, this); +// } +// +// public ItemStack getFull(int aAmount) { +// if (aAmount > 64) aAmount = 64; +// return new ItemStack(Loaders.Isotope, aAmount, mID + 1000); +// } +// +// public ItemStack getTiny(int aAmount) { +// if (aAmount > 64) aAmount = 64; +// return new ItemStack(Loaders.Isotope, aAmount, mID + 2000); +// } +// +// public ItemStack getFullOxide(int aAmount) { +// if (aAmount > 64) aAmount = 64; +// return new ItemStack(Loaders.Isotope, aAmount, mID + 3000); +// } +// +// public ItemStack getTinyOxide(int aAmount) { +// if (aAmount > 64) aAmount = 64; +// return new ItemStack(Loaders.Isotope, aAmount, mID + 4000); +// } +// } diff --git a/src/main/java/goodgenerator/items/nuclear/IsotopeMaterialLoader.java b/src/main/java/goodgenerator/items/nuclear/IsotopeMaterialLoader.java new file mode 100644 index 0000000000..a014abaa32 --- /dev/null +++ b/src/main/java/goodgenerator/items/nuclear/IsotopeMaterialLoader.java @@ -0,0 +1,177 @@ +// package goodgenerator.items.nuclear; +// +// public class IsotopeMaterialLoader implements Runnable { +// +// protected static final int OffsetID = 0; +// +// public static final IsotopeMaterial Thorium232 = new IsotopeMaterial( +// OffsetID, +// "Thorium232", "Thorium", "Thorium-232", +// NuclearTextures.STABLE1, 59, 59, 59, +// 232 +// ); +// +// public static final IsotopeMaterial Thorium230 = new IsotopeMaterial( +// OffsetID + 1, +// "Thorium232", "Thorium", "Thorium-230", +// NuclearTextures.STABLE2, 59, 59, 59, +// 230 +// ); +// +// public static final IsotopeMaterial Uranium233 = new IsotopeMaterial( +// OffsetID + 2, +// "Uranium233", "Uranium", "Uranium-233", +// NuclearTextures.UNSTABLE4, 60, 167, 85, +// 233 +// ); +// +// public static final IsotopeMaterial Uranium235 = new IsotopeMaterial( +// OffsetID + 3, +// "Uranium235", "Uranium", "Uranium-235", +// NuclearTextures.UNSTABLE3, 60, 167, 85, +// 235 +// ); +// +// public static final IsotopeMaterial Uranium238 = new IsotopeMaterial( +// OffsetID + 4, +// "Uranium238", "Uranium", "Uranium-238", +// NuclearTextures.STABLE2, 60, 167, 85, +// 238 +// ); +// +// public static final IsotopeMaterial Neptunium236 = new IsotopeMaterial( +// OffsetID + 5, +// "Neptunium236", "Neptunium", "Neptunium-236", +// NuclearTextures.UNSTABLE1, 60, 170, 176, +// 236 +// ); +// +// public static final IsotopeMaterial Neptunium237 = new IsotopeMaterial( +// OffsetID + 6, +// "Neptunium237", "Neptunium", "Neptunium-237", +// NuclearTextures.STABLE2, 60, 170, 176, +// 237 +// ); +// +// public static final IsotopeMaterial Plutonium238 = new IsotopeMaterial( +// OffsetID + 7, +// "Plutonium238", "Plutonium", "Plutonium-238", +// NuclearTextures.STABLE1, 169, 169, 169, +// 238 +// ); +// +// public static final IsotopeMaterial Plutonium239 = new IsotopeMaterial( +// OffsetID + 8, +// "Plutonium239", "Plutonium", "Plutonium-239", +// NuclearTextures.UNSTABLE1, 169, 169, 169, +// 239 +// ); +// +// public static final IsotopeMaterial Plutonium241 = new IsotopeMaterial( +// OffsetID + 9, +// "Plutonium241", "Plutonium", "Plutonium-241", +// NuclearTextures.UNSTABLE2, 169, 169, 169, +// 241 +// ); +// +// public static final IsotopeMaterial Plutonium242 = new IsotopeMaterial( +// OffsetID + 10, +// "Plutonium242", "Plutonium", "Plutonium-242", +// NuclearTextures.STABLE2, 169, 169, 169, +// 242 +// ); +// +// public static final IsotopeMaterial Americium241 = new IsotopeMaterial( +// OffsetID + 11, +// "Americium241", "Americium", "Americium-241", +// NuclearTextures.STABLE1, 150, 120, 22, +// 241 +// ); +// +// public static final IsotopeMaterial Americium242 = new IsotopeMaterial( +// OffsetID + 12, +// "Americium242", "Americium", "Americium-242", +// NuclearTextures.UNSTABLE4, 150, 120, 22, +// 242 +// ); +// +// public static final IsotopeMaterial Americium243 = new IsotopeMaterial( +// OffsetID + 13, +// "Americium243", "Americium", "Americium-243", +// NuclearTextures.STABLE2, 150, 120, 22, +// 243 +// ); +// +// public static final IsotopeMaterial Curium243 = new IsotopeMaterial( +// OffsetID + 14, +// "Curium243", "Curium", "Curium-243", +// NuclearTextures.UNSTABLE1, 107, 6, 105, +// 243 +// ); +// +// public static final IsotopeMaterial Curium245 = new IsotopeMaterial( +// OffsetID + 15, +// "Curium245", "Curium", "Curium-245", +// NuclearTextures.UNSTABLE3, 107, 6, 105, +// 245 +// ); +// +// public static final IsotopeMaterial Curium246 = new IsotopeMaterial( +// OffsetID + 16, +// "Curium246", "Curium", "Curium-246", +// NuclearTextures.STABLE2, 107, 6, 105, +// 246 +// ); +// +// public static final IsotopeMaterial Curium247 = new IsotopeMaterial( +// OffsetID + 17, +// "Curium247", "Curium", "Curium-247", +// NuclearTextures.UNSTABLE4, 107, 6, 105, +// 247 +// ); +// +// public static final IsotopeMaterial Berkelium247 = new IsotopeMaterial( +// OffsetID + 18, +// "Berkelium247", "Berkelium", "Berkelium-247", +// NuclearTextures.STABLE2, 130, 54, 29, +// 247 +// ); +// +// public static final IsotopeMaterial Berkelium248 = new IsotopeMaterial( +// OffsetID + 19, +// "Berkelium248", "Berkelium", "Berkelium-248", +// NuclearTextures.UNSTABLE1, 130, 54, 29, +// 248 +// ); +// +// public static final IsotopeMaterial Californium249 = new IsotopeMaterial( +// OffsetID + 20, +// "Californium249", "Californium", "Californium-249", +// NuclearTextures.UNSTABLE2, 186, 55, 11, +// 249 +// ); +// +// public static final IsotopeMaterial Californium250 = new IsotopeMaterial( +// OffsetID + 21, +// "Californium250", "Californium", "Californium-250", +// NuclearTextures.STABLE1, 186, 55, 11, +// 250 +// ); +// +// public static final IsotopeMaterial Californium251 = new IsotopeMaterial( +// OffsetID + 22, +// "Californium251", "Californium", "Californium-251", +// NuclearTextures.UNSTABLE4, 186, 55, 11, +// 251 +// ); +// +// public static final IsotopeMaterial Californium252 = new IsotopeMaterial( +// OffsetID + 23, +// "Californium252", "Californium", "Californium-252", +// NuclearTextures.UNSTABLE1, 186, 55, 11, +// 252 +// ); +// +// @Override +// public void run() { } +// } diff --git a/src/main/java/goodgenerator/items/nuclear/NuclearMetaItemGenerator.java b/src/main/java/goodgenerator/items/nuclear/NuclearMetaItemGenerator.java new file mode 100644 index 0000000000..a0b71b52e5 --- /dev/null +++ b/src/main/java/goodgenerator/items/nuclear/NuclearMetaItemGenerator.java @@ -0,0 +1,110 @@ +// package goodgenerator.items.nuclear; +// +// import com.github.bartimaeusnek.bartworks.util.Pair; +// import cpw.mods.fml.relauncher.Side; +// import cpw.mods.fml.relauncher.SideOnly; +// import goodgenerator.main.GoodGenerator; +// import gregtech.api.interfaces.IIconContainer; +// import gregtech.api.items.GT_MetaGenerated_Item; +// import gregtech.api.util.GT_LanguageManager; +// import gregtech.api.util.GT_OreDictUnificator; +// import net.minecraft.creativetab.CreativeTabs; +// import net.minecraft.item.Item; +// import net.minecraft.item.ItemStack; +// import net.minecraft.util.EnumChatFormatting; +// import net.minecraft.util.IIcon; +// +// import java.util.List; +// +// import static goodgenerator.items.nuclear.IsotopeMaterial.mIDMap; +// import static goodgenerator.items.nuclear.IsotopeMaterial.mIsotopeMaterial; +// +// public class NuclearMetaItemGenerator extends GT_MetaGenerated_Item { +// +// /** +// * <p>Full ingot - 1000 +// * <p>Tiny ingot - 2000 +// * <p>Full-Oxide - 3000 +// * <p>Tiny-Oxide - 4000 +// */ +// public static final Pair<Integer, String>[] TYPE_OFFSET = new Pair[] { +// new Pair<>(1000, "%s"), +// new Pair<>(2000, "Tiny of %s"), +// new Pair<>(3000, "%s Oxide"), +// new Pair<>(4000, "Tiny of %s Oxide"), +// }; +// public static final Pair<Integer, String>[] OREPREFIX = new Pair[] { +// new Pair<>(1000, "item%s"), +// new Pair<>(2000, "itemTiny%s"), +// new Pair<>(3000, "item%sOxide"), +// new Pair<>(4000, "itemTiny%sOxide"), +// }; +// +// public NuclearMetaItemGenerator() { +// super("nuclearIsotopeMaterial", (short) 32766, (short) 0); +// this.setCreativeTab(GoodGenerator.GG); +// for (IsotopeMaterial tIsotope : mIsotopeMaterial) { +// for (Pair<Integer, String> tType : TYPE_OFFSET) { +// int tOffset = tType.getKey(); +// String tOreName = tType.getValue(); +// ItemStack tStack = new ItemStack(this, 1, tIsotope.mID + tOffset); +// GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".name", +// String.format(tOreName, tIsotope.mLocalizedName)); +// GT_LanguageManager.addStringLocalization(this.getUnlocalizedName(tStack) + ".tooltip", +// EnumChatFormatting.AQUA + String.format("%s's Isotope.", tIsotope.mMaterialName) + EnumChatFormatting.RESET); +// } +// for (Pair<Integer, String> tOreDict : OREPREFIX) { +// int tOffset = tOreDict.getKey(); +// String tOreName = tOreDict.getValue(); +// ItemStack tStack = new ItemStack(this, 1, tIsotope.mID + tOffset); +// GT_OreDictUnificator.registerOre(String.format(tOreName, tIsotope.mName), tStack); +// } +// } +// } +// +// @Override +// public String getItemStackDisplayName(ItemStack aStack) { +// return GT_LanguageManager.getTranslation(this.getUnlocalizedName(aStack) + ".name"); +// } +// +// @Override +// public IIconContainer getIconContainer(int aMetaData) { +// int tID = aMetaData % 1000; +// int tType = aMetaData / 1000 - 1; +// IsotopeMaterial tMaterial = mIDMap.get(tID); +// if (tMaterial != null) { +// return tMaterial.mTexture.mTextures[tType]; +// } +// return null; +// } +// +// @Override +// @SideOnly(Side.CLIENT) +// public void getSubItems(Item var1, CreativeTabs aCreativeTab, List aList) { +// for (IsotopeMaterial tIsotope : mIsotopeMaterial) { +// for (int i = 1; i <= 4; i ++) { +// ItemStack tStack = new ItemStack(this, 1, tIsotope.mID + i * 1000); +// aList.add(tStack); +// } +// } +// } +// +// @Override +// public short[] getRGBa(ItemStack aStack) { +// int tID = aStack.getItemDamage() % 1000; +// int tType = aStack.getItemDamage() / 1000; +// IsotopeMaterial tMaterial = mIDMap.get(tID); +// if (tMaterial != null) { +// if (tType == 1 || tType == 2) +// return tMaterial.mRGB; +// else +// return tMaterial.mRGBO; +// } +// return null; +// } +// +// @Override +// public final IIcon getIconFromDamage(int aMetaData) { +// return this.getIconContainer(aMetaData).getIcon(); +// } +// } diff --git a/src/main/java/goodgenerator/items/nuclear/NuclearTextures.java b/src/main/java/goodgenerator/items/nuclear/NuclearTextures.java new file mode 100644 index 0000000000..63314044cf --- /dev/null +++ b/src/main/java/goodgenerator/items/nuclear/NuclearTextures.java @@ -0,0 +1,31 @@ +// package goodgenerator.items.nuclear; +// +// import gregtech.api.enums.Textures; +// import gregtech.api.interfaces.IIconContainer; +// +// public class NuclearTextures { +// public static final NuclearTextures +// STABLE1 = new NuclearTextures("stable1"), +// STABLE2 = new NuclearTextures("stable2"), +// UNSTABLE1 = new NuclearTextures("unstable1"), +// UNSTABLE2 = new NuclearTextures("unstable2"), +// UNSTABLE3 = new NuclearTextures("unstable3"), +// UNSTABLE4 = new NuclearTextures("unstable4"); +// +// public final IIconContainer[] mTextures = new IIconContainer[4]; +// public final String mSetName; +// public static final String mTextureDir = "icons/isotope/"; +// public static final int +// FULL = 0, +// TINY = 1, +// FULL_OXIDE = 2, +// TINY_OXIDE = 3; +// +// public NuclearTextures(String aName) { +// mSetName = aName; +// mTextures[0] = new Textures.ItemIcons.CustomIcon(mTextureDir + aName); +// mTextures[1] = new Textures.ItemIcons.CustomIcon(mTextureDir + aName + "tiny"); +// mTextures[2] = new Textures.ItemIcons.CustomIcon(mTextureDir + aName); +// mTextures[3] = new Textures.ItemIcons.CustomIcon(mTextureDir + aName + "tiny"); +// } +// } |