diff options
Diffstat (limited to 'src')
99 files changed, 6096 insertions, 59 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java index 275e8ae107..8ffdc0b5a1 100644 --- a/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java +++ b/src/main/java/com/elisis/gtnhlanth/GTNHLanthanides.java @@ -1,18 +1,15 @@ package com.elisis.gtnhlanth; -import java.util.Arrays; import java.util.logging.Logger; -import net.minecraftforge.oredict.OreDictionary; - import com.elisis.gtnhlanth.common.CommonProxy; import com.elisis.gtnhlanth.common.register.BotWerkstoffMaterialPool; import com.elisis.gtnhlanth.common.register.LanthItemList; import com.elisis.gtnhlanth.common.register.WerkstoffMaterialPool; +import com.elisis.gtnhlanth.common.tileentity.recipe.beamline.BeamlineRecipeLoader; import com.elisis.gtnhlanth.loader.BotRecipes; import com.elisis.gtnhlanth.loader.RecipeLoader; import com.github.bartimaeusnek.bartworks.API.WerkstoffAdderRegistry; -import com.github.bartimaeusnek.bartworks.system.material.Werkstoff; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; @@ -21,8 +18,6 @@ import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLLoadCompleteEvent; import cpw.mods.fml.common.event.FMLPostInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; -import gregtech.api.enums.OrePrefixes; -import gregtech.api.util.GT_Log; @Mod( modid = Tags.MODID, @@ -46,9 +41,13 @@ public class GTNHLanthanides { @EventHandler public static void preInit(FMLPreInitializationEvent e) { + WerkstoffAdderRegistry.addWerkstoffAdder(new WerkstoffMaterialPool()); WerkstoffAdderRegistry.addWerkstoffAdder(new BotWerkstoffMaterialPool()); - LanthItemList.register(); + + LanthItemList.registerTypical(); + LanthItemList.registerGTMTE(); + // GregTech_API.sAfterGTPostload.add(new ZPMRubberChanges()); proxy.preInit(e); } @@ -61,37 +60,45 @@ public class GTNHLanthanides { @EventHandler public static void postInit(FMLPostInitializationEvent e) { + RecipeLoader.loadGeneral(); RecipeLoader.loadLanthanideRecipes(); RecipeLoader.addRandomChemCrafting(); + RecipeLoader.loadAccelerator(); + + BeamlineRecipeLoader.load(); + BotRecipes.addGTRecipe(); // RecipeLoader.loadZylonRecipes(); proxy.postInit(e); // GT_Log.out.print(FluidRegistry.getFluid("Sodium Tungstate").getName()); - GT_Log.out.print( - Arrays.toString( - Werkstoff.werkstoffNameHashMap.keySet() - .toArray())); - GT_Log.out.print( - Arrays.toString( - Werkstoff.werkstoffHashMap.keySet() - .toArray())); - - GT_Log.out.print( - "HMMM " + Arrays.toString( - OreDictionary - .getOreIDs(WerkstoffMaterialPool.DephosphatedSamariumConcentrate.get(OrePrefixes.dust, 1)))); + // GT_Log.out.print(Arrays.toString(Werkstoff.werkstoffNameHashMap.keySet().toArray())); + // GT_Log.out.print(Arrays.toString(Werkstoff.werkstoffHashMap.keySet().toArray())); + + /* + * GT_Log.out.print("HMMM " + Arrays.toString(OreDictionary.getOreIDs( + * WerkstoffMaterialPool.DephosphatedSamariumConcentrate.get(OrePrefixes.dust, 1)))); + */ } @EventHandler public static void onModLoadingComplete(FMLLoadCompleteEvent e) { - GT_Log.out.print("AAAAAAAAAAAAAA"); + // GT_Log.out.print("AAAAAAAAAAAAAA " + new + // ItemStack(LanthItemList.maskMap.get(MaskList.CPU)).getUnlocalizedName()); // - GT_Log.out.print("We are done loading"); + // GT_Log.out.print("We are done loading"); BotRecipes.removeRecipes(); RecipeLoader.removeCeriumSources(); - GT_Log.out.print("blah blah " + WerkstoffMaterialPool.PTMEGElastomer.hasGenerationFeature(OrePrefixes.ingot)); + /* + * for (GT_ItemStack stack : BeamlineRecipeAdder.instance.TargetChamberRecipes.mRecipeItemMap.keySet()) { + * GT_Log.out.print(" Recipes for: " + stack.mItem.getUnlocalizedName() + ": "); for (GT_Recipe recipe : + * BeamlineRecipeAdder.instance.TargetChamberRecipes.mRecipeItemMap.get(stack)) { + * GT_Log.out.print(Arrays.toString(recipe.mOutputs)); } } + */ + + // GT_Log.out.print("blah blah " + + // WerkstoffMaterialPool.PTMEGElastomer.hasGenerationFeature(OrePrefixes.ingot)); } } diff --git a/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamInformation.java b/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamInformation.java new file mode 100644 index 0000000000..9c10703c2e --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamInformation.java @@ -0,0 +1,51 @@ +package com.elisis.gtnhlanth.common.beamline; + +public class BeamInformation { + + private float energy; // in keV + private int rate; + + private Particle particle; + private int particleId; + + private float focus; + + public BeamInformation(float energy, int rate, int particleId, float focus) { + this.energy = energy; + this.rate = rate; + this.particleId = particleId; + this.particle = Particle.values()[particleId]; + this.focus = focus; + } + + public float getEnergy() { + return this.energy; + } + + public int getRate() { + return this.rate; + } + + public Particle getParticle() { + return this.particle; + } + + public int getParticleId() { + return this.particleId; + } + + public float getFocus() { + return this.focus; + } + + @Override + public String toString() { + return "Energy=" + this.getEnergy() + + ",Rate=" + + this.getRate() + + ",Particle=" + + this.getParticleId() + + ",Focus=" + + this.getFocus(); + } +} diff --git a/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamLinePacket.java b/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamLinePacket.java new file mode 100644 index 0000000000..bbd712a9b0 --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/common/beamline/BeamLinePacket.java @@ -0,0 +1,51 @@ +package com.elisis.gtnhlanth.common.beamline; + +import net.minecraft.nbt.NBTTagCompound; + +import com.github.technus.tectech.mechanics.dataTransport.DataPacket; + +public class BeamLinePacket extends DataPacket<BeamInformation> { + + public BeamLinePacket(BeamInformation content) { + super(content); + } + + public BeamLinePacket(NBTTagCompound compound) { + super(compound); + } + + @Override + protected BeamInformation contentFromNBT(NBTTagCompound nbt) { + /* + * NBTTagCompound compound = nbt.getCompoundTag("beamline"); + */ + return new BeamInformation( + nbt.getFloat("energy"), + nbt.getInteger("rate"), + nbt.getInteger("particleId"), + nbt.getInteger("focus")); + } + + @Override + protected NBTTagCompound contentToNBT() { + + NBTTagCompound compound = new NBTTagCompound(); + + compound.setFloat("energy", content.getEnergy()); + compound.setInteger("rate", content.getRate()); + compound.setInteger("particleId", content.getParticleId()); + compound.setFloat("focus", content.getFocus()); + + return compound; + } + + @Override + public boolean extraCheck() { + return true; + } + + @Override + protected BeamInformation unifyContentWith(BeamInformation arg0) { + throw new NoSuchMethodError("Unavailable to unify beam info data packet"); + } +} diff --git a/src/main/java/com/elisis/gtnhlanth/common/beamline/IConnectsToBeamline.java b/src/main/java/com/elisis/gtnhlanth/common/beamline/IConnectsToBeamline.java new file mode 100644 index 0000000000..763365647c --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/common/beamline/IConnectsToBeamline.java @@ -0,0 +1,14 @@ +package com.elisis.gtnhlanth.common.beamline; + +import net.minecraftforge.common.util.ForgeDirection; + +import gregtech.api.interfaces.metatileentity.IMetaTileEntity; + +public interface IConnectsToBeamline extends IMetaTileEntity { + + boolean canConnect(ForgeDirection side); + + IConnectsToBeamline getNext(IConnectsToBeamline source); + + boolean isDataInputFacing(ForgeDirection side); +} diff --git a/src/main/java/com/elisis/gtnhlanth/common/beamline/Particle.java b/src/main/java/com/elisis/gtnhlanth/common/beamline/Particle.java new file mode 100644 index 0000000000..f6bc2517f4 --- /dev/null +++ b/src/main/java/com/elisis/gtnhlanth/common/beamline/Particle.java @@ -0,0 +1,71 @@ +package com.elisis.gtnhlanth.common.beamline; + +import net.minecraft.util.StatCollector; + +public enum Particle { + + ELECTRON(true, 0, 0.511f, 5000, "electron", "e\u207B", -1, null), + PHOTON(false, 1, 0, 0, "photon", "\u03B3", 0, null), + NEUTRON(false, 2, 939.57f, 15000, "neutron", "n\u2070", 0, null), + PROTON(true, 3, 938.27f, 15000, "proton", "p\u207A", 1, null), + ALPHA(true, 4, 3727.38f, 8000, "alpha", "\u03B1", 2, null); + + private boolean canAcc; + + private float restMass; // in MeV + + private float maxSourceEnergy; // in keV + + private String name; + private String shortName; + + private float charge; // in multiples of elemental charge + + private String chargeSpecial; + + private Particle(boolean canAcc, int id, float restMass, float maxSourceEnergy, String name, String shortName, + float charge, String chargeSpecial) { // ID + // is + // symbolic + // only + this.canAcc = canAcc; + this.restMass = restMass; + this.maxSourceEnergy = maxSourceEnergy; + this.name = name; + this.shortName = shortName; + this.charge = charge; + this.chargeSpecial = chargeSpecial; + } + + public float getMass() { + return this.restMass; + } + + public float getCharge() { + return this.charge; + } + + public String getChargeSpecial() { + return this.chargeSpecial; + } + + public boolean canAccelerate() { + return this.canAcc; + } + + public float maxSourceEnergy() { + return this.maxSourceEnergy; + } + + public String getName() { + return this.name; + } + + public S |
