This commit is contained in:
Vaern 2022-01-02 21:17:43 -08:00
parent d3e36fafe4
commit 58502b4b23
32 changed files with 417 additions and 1125 deletions

View File

@ -226,7 +226,7 @@ public class MachineReactorControl extends BlockContainer {
if(entity != null)
{
return (int)Math.ceil((double)entity.coreHeat * 15D / 50000D);
return (int)Math.ceil((double)entity.heat * 15D / 50000D);
}
return 0;

View File

@ -82,7 +82,8 @@ public class MineralRecipes {
addMineralSet(ModItems.nugget_pu_mix, ModItems.ingot_pu_mix, ModBlocks.block_pu_mix);
add1To9Pair(ModItems.ingot_neptunium_fuel, ModItems.nugget_neptunium_fuel);
addBillet(ModItems.billet_cobalt, ModItems.ingot_cobalt, ModItems.fragment_cobalt, CO.nugget());
addBillet(ModItems.billet_cobalt, ModItems.ingot_cobalt, ModItems.nugget_cobalt);
addBillet(ModItems.billet_co60, ModItems.ingot_co60, ModItems.nugget_co60);
addBillet(ModItems.billet_sr90, ModItems.ingot_sr90, ModItems.nugget_sr90, "nuggetStrontium90", "tinySr90");
addBillet(ModItems.billet_uranium, ModItems.ingot_uranium, ModItems.nugget_uranium, "nuggetUranium");
addBillet(ModItems.billet_u233, ModItems.ingot_u233, ModItems.nugget_u233, "nuggetUranium233", "tinyU233");
@ -373,8 +374,6 @@ public class MineralRecipes {
GameRegistry.addRecipe(new ItemStack(ModItems.egg_balefire_shard, 1), new Object[] { "##", "##", '#', ModItems.powder_balefire });
add9To1(ModItems.cell_balefire, ModItems.egg_balefire_shard);
GameRegistry.addRecipe(new ItemStack(ModItems.nugget_euphemium, 1), new Object[] { "#", '#', ModItems.rod_quad_euphemium });
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_euphemium, 1), new Object[] { "###", "###", "###", '#', ModItems.rod_quad_euphemium });
GameRegistry.addRecipe(new ItemStack(ModItems.ingot_euphemium, 1), new Object[] { "###", "###", "###", '#', ModItems.nugget_euphemium });
GameRegistry.addRecipe(new ItemStack(ModItems.nugget_euphemium, 9), new Object[] { "#", '#', ModItems.ingot_euphemium });

View File

@ -18,89 +18,20 @@ import net.minecraftforge.oredict.ShapedOreRecipe;
public class RodRecipes {
public static void register() {
//Single rods
CraftingManager.addRecipeAuto(new ItemStack(ModItems.rod_empty, 16), new Object[] { "SSS", "L L", "SSS", 'S', STEEL.plate(), 'L', PB.plate() });
addRodBilletUnload(U, ModItems.billet_uranium, ModItems.rod_uranium);
addRodBilletUnload(U233, ModItems.billet_u233, ModItems.rod_u233);
addRodBilletUnload(U235, ModItems.billet_u235, ModItems.rod_u235);
addRodBilletUnload(U238, ModItems.billet_u238, ModItems.rod_u238);
addRodBilletUnload(TH232, ModItems.billet_th232, ModItems.rod_th232);
addRodBilletUnload(PU, ModItems.billet_plutonium, ModItems.rod_plutonium);
addRodBilletUnload(PU238, ModItems.billet_pu238, ModItems.rod_pu238);
addRodBilletUnload(PU239, ModItems.billet_pu239, ModItems.rod_pu239);
addRodBilletUnload(PU240, ModItems.billet_pu240, ModItems.rod_pu240);
addRodBilletUnload(NP237, ModItems.billet_neptunium, ModItems.rod_neptunium);
addRodBilletUnload(PO210, ModItems.billet_polonium, ModItems.rod_polonium);
addRodBilletUnload(SA326, ModItems.billet_schrabidium, ModItems.rod_schrabidium);
addRodBilletUnload(SA327, ModItems.billet_solinium, ModItems.rod_solinium);
addRodBilletUnload(ModItems.egg_balefire_shard, ModItems.rod_balefire);
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_lead, 1), new Object[] { ModItems.rod_empty, PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.nugget_lead, 6), new Object[] { ModItems.rod_lead });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_lithium, 1), new Object[] { ModItems.rod_empty, LI.ingot() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_zirnox_lithium), new Object[] { ModItems.rod_zirnox_empty, LI.ingot(), LI.ingot() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.lithium, 1), new Object[] { ModItems.rod_lithium });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cell_tritium, 1), new Object[] { ModItems.rod_tritium, ModItems.cell_empty });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cell_tritium, 2), new Object[] { ModItems.rod_zirnox_tritium, ModItems.cell_empty, ModItems.cell_empty });
//Dual rods
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_empty, 2), new Object[] { ModItems.rod_dual_empty });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_dual_empty, 1), new Object[] { ModItems.rod_empty, ModItems.rod_empty });
addDualRodBilletUnload(U, ModItems.billet_uranium, ModItems.rod_dual_uranium);
addDualRodBilletUnload(U233, ModItems.billet_u233, ModItems.rod_dual_u233);
addDualRodBilletUnload(U235, ModItems.billet_u235, ModItems.rod_dual_u235);
addDualRodBilletUnload(U238, ModItems.billet_u238, ModItems.rod_dual_u238);
addDualRodBilletUnload(TH232, ModItems.billet_th232, ModItems.rod_dual_th232);
addDualRodBilletUnload(PU, ModItems.billet_plutonium, ModItems.rod_dual_plutonium);
addDualRodBilletUnload(PU238, ModItems.billet_pu238, ModItems.rod_dual_pu238);
addDualRodBilletUnload(PU239, ModItems.billet_pu239, ModItems.rod_dual_pu239);
addDualRodBilletUnload(PU240, ModItems.billet_pu240, ModItems.rod_dual_pu240);
addDualRodBilletUnload(NP237, ModItems.billet_neptunium, ModItems.rod_dual_neptunium);
addDualRodBilletUnload(PO210, ModItems.billet_polonium, ModItems.rod_dual_polonium);
addDualRodBilletUnload(SA326, ModItems.billet_schrabidium, ModItems.rod_dual_schrabidium);
addDualRodBilletUnload(SA327, ModItems.billet_solinium, ModItems.rod_dual_solinium);
addDualRodBilletUnload(ModItems.egg_balefire_shard, ModItems.rod_dual_balefire);
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_dual_lead, 1), new Object[] { ModItems.rod_dual_empty, PB.ingot(), PB.nugget(), PB.nugget(), PB.nugget() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.nugget_lead, 12), new Object[] { ModItems.rod_dual_lead });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_dual_lithium, 1), new Object[] { ModItems.rod_dual_empty, LI.ingot(), LI.ingot() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.lithium, 2), new Object[] { ModItems.rod_dual_lithium });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cell_tritium, 2), new Object[] { ModItems.rod_dual_tritium, ModItems.cell_empty, ModItems.cell_empty });
//Quad rods
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_empty, 4), new Object[] { ModItems.rod_quad_empty });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_quad_empty, 1), new Object[] { ModItems.rod_empty, ModItems.rod_empty, ModItems.rod_empty, ModItems.rod_empty });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_quad_empty, 1), new Object[] { ModItems.rod_dual_empty, ModItems.rod_dual_empty });
addQuadRodBilletUnload(U, ModItems.billet_uranium, ModItems.rod_quad_uranium);
addQuadRodBilletUnload(U233, ModItems.billet_u233, ModItems.rod_quad_u233);
addQuadRodBilletUnload(U235, ModItems.billet_u235, ModItems.rod_quad_u235);
addQuadRodBilletUnload(U238, ModItems.billet_u238, ModItems.rod_quad_u238);
addQuadRodBilletUnload(TH232, ModItems.billet_th232, ModItems.rod_quad_th232);
addQuadRodBilletUnload(PU, ModItems.billet_plutonium, ModItems.rod_quad_plutonium);
addQuadRodBilletUnload(PU238, ModItems.billet_pu238, ModItems.rod_quad_pu238);
addQuadRodBilletUnload(PU239, ModItems.billet_pu239, ModItems.rod_quad_pu239);
addQuadRodBilletUnload(PU240, ModItems.billet_pu240, ModItems.rod_quad_pu240);
addQuadRodBilletUnload(NP237, ModItems.billet_neptunium, ModItems.rod_quad_neptunium);
addQuadRodBilletUnload(PO210, ModItems.billet_polonium, ModItems.rod_quad_polonium);
addQuadRodBilletUnload(SA326, ModItems.billet_schrabidium, ModItems.rod_quad_schrabidium);
addQuadRodBilletUnload(SA327, ModItems.billet_solinium, ModItems.rod_quad_solinium);
addQuadRodBilletUnload(ModItems.egg_balefire_shard, ModItems.rod_quad_balefire);
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_quad_lead, 1), new Object[] { ModItems.rod_quad_empty, PB.ingot(), PB.ingot(), PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget(), PB.nugget() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.nugget_lead, 24), new Object[] { ModItems.rod_quad_lead });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_quad_lithium, 1), new Object[] { ModItems.rod_quad_empty, LI.ingot(), LI.ingot(), LI.ingot(), LI.ingot() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.lithium, 4), new Object[] { ModItems.rod_quad_lithium });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cell_tritium, 4), new Object[] { ModItems.rod_quad_tritium, ModItems.cell_empty, ModItems.cell_empty, ModItems.cell_empty, ModItems.cell_empty });
//Zirnox Fuel
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rod_zirnox_empty, 4), new Object[] { "Z Z", "ZBZ", "Z Z", 'Z', "nuggetZirconium", 'B', "ingotBeryllium" }));
addZIRNOXRod(ModItems.billet_uranium, ModItems.rod_zirnox_natural_uranium_fuel);
addZIRNOXRod(U, ModItems.rod_zirnox_natural_uranium_fuel);
addZIRNOXRod(ModItems.billet_uranium_fuel, ModItems.rod_zirnox_uranium_fuel);
addZIRNOXRod(ModItems.billet_th232, ModItems.rod_zirnox_th232);
addZIRNOXRod(TH232, ModItems.rod_zirnox_th232);
addZIRNOXRod(ModItems.billet_thorium_fuel, ModItems.rod_zirnox_thorium_fuel);
addZIRNOXRod(ModItems.billet_mox_fuel, ModItems.rod_zirnox_mox_fuel);
addZIRNOXRod(ModItems.billet_plutonium_fuel, ModItems.rod_zirnox_plutonium_fuel);
addZIRNOXRod(ModItems.billet_u233, ModItems.rod_zirnox_u233_fuel);
addZIRNOXRod(ModItems.billet_u235, ModItems.rod_zirnox_u235_fuel);
addZIRNOXRod(U233, ModItems.rod_zirnox_u233_fuel);
addZIRNOXRod(U235, ModItems.rod_zirnox_u235_fuel);
addZIRNOXRod(ModItems.billet_les, ModItems.rod_zirnox_les_fuel);
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rod_zirnox_lithium), new Object[] { ModItems.rod_zirnox_empty, LI.ingot(), LI.ingot() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.cell_tritium, 2), new Object[] { ModItems.rod_zirnox_tritium, ModItems.cell_empty, ModItems.cell_empty });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.waste_natural_uranium, 2, 1), new Object[] { ModItems.rod_zirnox_natural_uranium_fuel_depleted });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.waste_uranium, 2, 1), new Object[] { ModItems.rod_zirnox_uranium_fuel_depleted });
@ -179,15 +110,6 @@ public class RodRecipes {
addRBMKRod(ModItems.billet_zfb_pu241, ModItems.rbmk_fuel_zfb_pu241);
addRBMKRod(ModItems.billet_zfb_am_mix, ModItems.rbmk_fuel_zfb_am_mix);
CraftingManager.addShapelessAuto(new ItemStack(ModItems.rbmk_fuel_drx, 1), new Object[] { ModItems.rbmk_fuel_balefire, ModItems.particle_digamma });
//Rod recycling
CraftingManager.addShapelessAuto(new ItemStack(ModItems.nugget_australium, 6), new Object[] { ModItems.rod_australium });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.nugget_euphemium, 6), new Object[] { ModItems.rod_euphemium });
//Waste rod recycling
CraftingManager.addShapelessAuto(new ItemStack(ModItems.billet_nuclear_waste, 1), new Object[] { ModItems.rod_waste });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.billet_nuclear_waste, 2), new Object[] { ModItems.rod_dual_waste });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.billet_nuclear_waste, 4), new Object[] { ModItems.rod_quad_waste });
}
//Fill rods with one billet. For fuels only, therefore no unloading or ore dict
@ -279,8 +201,13 @@ public class RodRecipes {
CraftingManager.addShapelessAuto(new ItemStack(out), new Object[] { ModItems.rbmk_fuel_empty, billet, billet, billet, billet, billet, billet, billet, billet });
}
//Fill rods with 2 billets
/** Fill ZIRNOX rod with two billets **/
public static void addZIRNOXRod(Item billet, Item out) {
GameRegistry.addShapelessRecipe(new ItemStack(out), new Object[] { ModItems.rod_zirnox_empty, billet, billet });
CraftingManager.addShapelessAuto(new ItemStack(out), new Object[] { ModItems.rod_zirnox_empty, billet, billet });
}
/** Fill ZIRNOX rod with two billets with OreDict **/
public static void addZIRNOXRod(DictFrame mat, Item out) {
CraftingManager.addShapelessAuto(new ItemStack(out), new Object[] { ModItems.rod_zirnox_empty, mat.billet(), mat.billet() });
}
}

View File

@ -15,9 +15,9 @@ public class ControlTab extends CreativeTabs {
@Override
public Item getTabIconItem() {
if(ModItems.rod_balefire_blazing != null)
if(ModItems.pellet_rtg != null)
{
return ModItems.rod_balefire_blazing;
return ModItems.pellet_rtg;
}
return Items.iron_pickaxe;

View File

@ -8,6 +8,7 @@ import com.hbm.hazard.modifier.*;
import com.hbm.hazard.transformer.HazardTransformerRadiationNBT;
import com.hbm.hazard.type.*;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBreedingRod.BreedingRodType;
import com.hbm.util.Compat;
import com.hbm.util.Compat.ReikaIsotope;
@ -211,7 +212,7 @@ public class HazardRegistry {
HazardSystem.register(rod_zirnox_u233_fuel_depleted, makeData(RADIATION, u233 * rod_dual * 100));
HazardSystem.register(rod_zirnox_u235_fuel_depleted, makeData(RADIATION, u235 * rod_dual * 100));
HazardSystem.register(rod_zirnox_les_fuel_depleted, new HazardData().addEntry(RADIATION, saf * rod_dual * 100).addEntry(BLINDING, 5F));
HazardSystem.register(rod_zirnox_tritium, makeData(RADIATION, 0.01F * rod_dual));
HazardSystem.register(rod_zirnox_tritium, makeData(RADIATION, 0.001F * rod_dual));
registerOtherWaste(waste_natural_uranium, u * billet * 100);
registerOtherWaste(waste_uranium, uf * billet * 100);
@ -298,21 +299,17 @@ public class HazardRegistry {
HazardSystem.register(pellet_rtg_gold, new HazardData().addEntry(RADIATION, au198 * rtg).addEntry(HOT, 5F));
HazardSystem.register(pellet_rtg_americium, makeData(RADIATION, am241 * rtg));
registerRodRadiation(rod_th232, rod_dual_th232, rod_quad_th232, th232);
registerRodRadiation(rod_uranium, rod_dual_uranium, rod_quad_uranium, u);
registerRodRadiation(rod_u233, rod_dual_u233, rod_quad_u233, u233);
registerRodRadiation(rod_u235, rod_dual_u235, rod_quad_u235, u235);
registerRodRadiation(rod_u238, rod_dual_u238, rod_quad_u238, u238);
registerRodRadiation(rod_plutonium, rod_dual_plutonium, rod_quad_plutonium, pu);
registerRodRadiation(rod_pu238, rod_dual_pu238, rod_quad_pu238, pu238);
registerRodRadiation(rod_pu239, rod_dual_pu239, rod_quad_pu239, pu239);
registerRodRadiation(rod_pu240, rod_dual_pu240, rod_quad_pu240, pu240);
registerRodRadiation(rod_neptunium, rod_dual_neptunium, rod_quad_neptunium, np237);
registerRodRadiation(rod_polonium, rod_dual_polonium, rod_quad_polonium, po210);
registerRodRadiationExtra(rod_schrabidium, rod_dual_schrabidium, rod_quad_schrabidium, sa326, BLINDING, 3F);
registerRodRadiationExtra(rod_solinium, rod_dual_solinium, rod_quad_solinium, sa327, BLINDING, 3F);
registerRodRadiation(rod_balefire, rod_dual_balefire, rod_quad_balefire, bf);
registerRodRadiationExtra(rod_balefire_blazing, rod_dual_balefire_blazing, rod_quad_balefire_blazing, bfb, HOT, 5F);
registerBreedingRodRadiation(BreedingRodType.TRITIUM, 0.001F);
registerBreedingRodRadiation(BreedingRodType.CO60, co60);
registerBreedingRodRadiation(BreedingRodType.TH232, th232);
registerBreedingRodRadiation(BreedingRodType.THF, thf);
registerBreedingRodRadiation(BreedingRodType.U235, u235);
registerBreedingRodRadiation(BreedingRodType.NP237, np237);
registerBreedingRodRadiation(BreedingRodType.PU238, pu238); //it's in a container :)
registerBreedingRodRadiation(BreedingRodType.PU239, pu239);
registerBreedingRodRadiation(BreedingRodType.RGP, purg);
registerBreedingRodRadiation(BreedingRodType.WASTE, wst);
registerBreedingRodRadiation(BreedingRodType.URANIUM, u);
registerRBMKRod(rbmk_fuel_ueu, u * rod_rbmk, u * rod_rbmk * 100);
registerRBMKRod(rbmk_fuel_meu, uf * rod_rbmk, uf * rod_rbmk * 100);
@ -362,18 +359,6 @@ public class HazardRegistry {
private static HazardData makeData(HazardTypeBase hazard, float level) { return new HazardData().addEntry(hazard, level); }
private static HazardData makeData(HazardTypeBase hazard, float level, boolean override) { return new HazardData().addEntry(hazard, level, override); }
private static void registerRodRadiation(Item single, Item dual, Item quad, float base) {
HazardSystem.register(single, makeData(RADIATION, base * rod));
HazardSystem.register(dual, makeData(RADIATION, base * rod_dual));
HazardSystem.register(quad, makeData(RADIATION, base * rod_quad));
}
private static void registerRodRadiationExtra(Item single, Item dual, Item quad, float base, HazardTypeBase extra, float base2) {
HazardSystem.register(single, new HazardData().addEntry(RADIATION, base * rod).addEntry(extra, base2 * rod));
HazardSystem.register(dual, new HazardData().addEntry(RADIATION, base * rod_dual).addEntry(extra, base2 * rod_dual));
HazardSystem.register(quad, new HazardData().addEntry(RADIATION, base * rod_quad).addEntry(extra, base2 * rod_quad));
}
private static void registerRBMKPellet(Item pellet, float base, float dep) { registerRBMKPellet(pellet, base, dep, 0F); }
private static void registerRBMKPellet(Item pellet, float base, float dep, float blinding) {
@ -395,6 +380,12 @@ public class HazardRegistry {
HazardSystem.register(rod, data);
}
private static void registerBreedingRodRadiation(BreedingRodType type, float base) {
HazardSystem.register(new ItemStack(ModItems.rod, 1, type.ordinal()), makeData(RADIATION, base));
HazardSystem.register(new ItemStack(ModItems.rod_dual, 1, type.ordinal()), makeData(RADIATION, base * rod_dual));
HazardSystem.register(new ItemStack(ModItems.rod_quad, 1, type.ordinal()), makeData(RADIATION, base * rod_quad));
}
private static void registerOtherFuel(Item fuel, float base, float target) {
HazardData data = new HazardData();

View File

@ -21,14 +21,6 @@ public class FluidContainerRegistry {
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.bucket_mud), new ItemStack(Items.bucket), FluidType.WATZ, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.bucket_schrabidic_acid), new ItemStack(Items.bucket), FluidType.SCHRABIDIC, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_water), new ItemStack(ModItems.rod_empty), FluidType.WATER, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_dual_water), new ItemStack(ModItems.rod_dual_empty), FluidType.WATER, 2000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_quad_water), new ItemStack(ModItems.rod_quad_empty), FluidType.WATER, 4000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_coolant), new ItemStack(ModItems.rod_empty), FluidType.COOLANT, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_dual_coolant), new ItemStack(ModItems.rod_dual_empty), FluidType.COOLANT, 2000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_quad_coolant), new ItemStack(ModItems.rod_quad_empty), FluidType.COOLANT, 4000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_oil), new ItemStack(ModItems.canister_empty), FluidType.OIL, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_smear), new ItemStack(ModItems.canister_empty), FluidType.SMEAR, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_heavyoil), new ItemStack(ModItems.canister_empty), FluidType.HEAVYOIL, 1000));
@ -59,9 +51,6 @@ public class FluidContainerRegistry {
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_deuterium), new ItemStack(ModItems.cell_empty), FluidType.DEUTERIUM, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_tritium), new ItemStack(ModItems.cell_empty), FluidType.TRITIUM, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_tritium), new ItemStack(ModItems.rod_empty), FluidType.TRITIUM, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_dual_tritium), new ItemStack(ModItems.rod_dual_empty), FluidType.TRITIUM, 2000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_quad_tritium), new ItemStack(ModItems.rod_quad_empty), FluidType.TRITIUM, 4000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_uf6), new ItemStack(ModItems.cell_empty), FluidType.UF6, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_puf6), new ItemStack(ModItems.cell_empty), FluidType.PUF6, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_antimatter), new ItemStack(ModItems.cell_empty), FluidType.AMAT, 1000));

View File

@ -268,7 +268,7 @@ public class OreDictManager {
COLTAN .ingot(fragment_coltan) .dust(powder_coltan_ore) .block(block_coltan) .ore(ore_coltan);
NB .nugget(fragment_niobium) .ingot(ingot_niobium) .dustSmall(powder_niobium_tiny) .dust(powder_niobium) .block(block_niobium);
BE .nugget(nugget_beryllium) .billet(billet_beryllium) .ingot(ingot_beryllium) .dust(powder_beryllium) .block(block_beryllium) .ore(ore_beryllium);
CO .nugget(fragment_cobalt) .billet(billet_cobalt) .ingot(ingot_cobalt) .dustSmall(powder_cobalt_tiny) .dust(powder_cobalt) .block(block_cobalt) .ore(ore_cobalt, ore_nether_cobalt);
CO .nugget(fragment_cobalt) .nugget(nugget_cobalt) .billet(billet_cobalt) .ingot(ingot_cobalt) .dust(powder_cobalt) .dustSmall(powder_cobalt_tiny) .block(block_cobalt) .ore(ore_cobalt, ore_nether_cobalt);
B .nugget(fragment_boron) .ingot(ingot_boron) .dustSmall(powder_boron_tiny) .dust(powder_boron) .block(block_boron);
GRAPHITE .ingot(ingot_graphite) .block(block_graphite);
DURA .ingot(ingot_dura_steel) .dust(powder_dura_steel) .block(block_dura_steel);

View File

@ -10,20 +10,16 @@ import net.minecraft.item.ItemStack;
public class ContainerReactorControl extends Container {
private TileEntityReactorControl testNuke;
private int heat;
private TileEntityReactorControl control;
public ContainerReactorControl(InventoryPlayer invPlayer, TileEntityReactorControl tedf) {
heat = 0;
testNuke = tedf;
control = tedf;
this.addSlotToContainer(new Slot(tedf, 0, 26, 53));
this.addSlotToContainer(new Slot(tedf, 0, 92, 38));
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 9; j++)
{
for(int i = 0; i < 3; i++) {
for(int j = 0; j < 9; j++) {
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18));
}
}
@ -71,6 +67,6 @@ public class ContainerReactorControl extends Container {
@Override
public boolean canInteractWith(EntityPlayer player) {
return testNuke.isUseableByPlayer(player);
return control.isUseableByPlayer(player);
}
}

View File

@ -1,18 +1,25 @@
package com.hbm.inventory.gui;
import org.apache.commons.lang3.math.NumberUtils;
import org.lwjgl.input.Keyboard;
import org.lwjgl.input.Mouse;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.container.ContainerReactorControl;
import com.hbm.inventory.gui.GuiInfoContainer.NumberDisplay;
import com.hbm.lib.RefStrings;
import com.hbm.packet.AuxButtonPacket;
import com.hbm.packet.NBTControlPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.tileentity.machine.TileEntityReactorControl;
import net.minecraft.client.Minecraft;
import net.minecraft.client.audio.PositionedSoundRecord;
import net.minecraft.client.gui.GuiTextField;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
public class GUIReactorControl extends GuiInfoContainer {
@ -20,79 +27,104 @@ public class GUIReactorControl extends GuiInfoContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_reactor_control.png");
private TileEntityReactorControl control;
private final NumberDisplay[] displays = new NumberDisplay[3];
private GuiTextField[] fields;
public GUIReactorControl(InventoryPlayer invPlayer, TileEntityReactorControl tedf) {
super(new ContainerReactorControl(invPlayer, tedf));
control = tedf;
displays[0] = new NumberDisplay(6, 20, 0x08FF00).setDigitLength(3);
displays[1] = new NumberDisplay(66, 20, 0x08FF00).setDigitLength(4);
displays[2] = new NumberDisplay(126, 20, 0x08FF00).setDigitLength(3);
fields = new GuiTextField[4];
this.xSize = 176;
this.ySize = 166;
}
public void initGui() {
super.initGui();
Keyboard.enableRepeatEvents(true);
//rod extraction fields
for(byte i = 0; i < 2; i++) {
this.fields[i] = new GuiTextField(this.fontRendererObj, guiLeft + 35 + 30 * i, guiTop + 38, 26, 7);
this.fields[i].setTextColor(0x08FF00);
this.fields[i].setDisabledTextColour(-1);
this.fields[i].setEnableBackgroundDrawing(false);
this.fields[i].setMaxStringLength(3);
}
//heat fields
for(byte i = 0; i < 2; i++) {
this.fields[i + 2] = new GuiTextField(this.fontRendererObj, guiLeft + 35 + 30 * i, guiTop + 49, 26, 7);
this.fields[i + 2].setTextColor(0x08FF00);
this.fields[i + 2].setDisabledTextColour(-1);
this.fields[i + 2].setEnableBackgroundDrawing(false);
this.fields[i + 2].setMaxStringLength(4);
}
this.fields[0].setText(String.valueOf((int)control.levelUpper));
this.fields[1].setText(String.valueOf((int)control.levelLower));
this.fields[2].setText(String.valueOf((int)control.heatUpper));
this.fields[3].setText(String.valueOf((int)control.heatLower));
}
@Override
public void drawScreen(int mouseX, int mouseY, float f) {
super.drawScreen(mouseX, mouseY, f);
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 34, 88, 4, new String[] { "Fuel: " + control.fuel + "%" });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 40, 88, 4, new String[] { "Water: " + control.water + "/" + control.maxWater + "mB" });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 46, 88, 4, new String[] { "Coolant: " + control.cool + "/" + control.maxCool + "mB" });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 7, guiTop + 16, 18, 18, new String[] { "Reactor Status: " + (control.isOn ? "ON" : "OFF") });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 43, guiTop + 16, 18, 18, new String[] { "Automatic Shutdown: " + (control.auto ? "ENABLED" : "DISABLED") });
if(!control.isLinked) {
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 79, guiTop + 16, 18, 18, new String[] { "Reactor link not found!" });
}
if(control.water < control.maxWater * 0.1) {
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 79 + 18, guiTop + 16, 18, 18, new String[] { "Water level low!" });
}
if(control.cool < control.maxCool * 0.1) {
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 79 + 18 * 2, guiTop + 16, 18, 18, new String[] { "Coolant level low!" });
}
if(control.steam > control.maxSteam * 0.95) {
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 79 + 18 * 3, guiTop + 16, 18, 18, new String[] { "Steam buffer full!" });
}
if(control.coreHeat > (50000 * 0.85)) {
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 79 + 18 * 4, guiTop + 16, 18, 18, new String[] { "CORE TEMPERATURE CRITICAL!!" });
}
String s = "";
switch(control.compression) {
case 0: s = "Steam"; break;
case 1: s = "Dense Steam"; break;
case 2: s = "Super Dense Steam"; break;
}
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 52, 88, 4, new String[] { s + ": " + control.steam + "/" + control.maxSteam + "mB" });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 58, 88, 4, new String[] { "Hull Heat: " + Math.round((control.hullHeat) * 0.00001 * 980 + 20) + "°C" });
this.drawCustomInfo(this, mouseX, mouseY, guiLeft + 80, guiTop + 64, 88, 4, new String[] { "Core Heat: " + Math.round((control.coreHeat) * 0.00002 * 980 + 20) + "°C" });
}
protected void mouseClicked(int x, int y, int i) {
super.mouseClicked(x, y, i);
for(int j = 0; j < 4; j++) {
this.fields[j].mouseClicked(x, y, i);
}
if(guiLeft + 7 <= x && guiLeft + 7 + 18 > x && guiTop + 16 < y && guiTop + 16 + 18 >= y) {
if(guiLeft + 33 <= x && guiLeft + 33 + 58 > x && guiTop + 59 < y && guiTop + 59 + 10 >= y) {
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, control.isOn ? 0 : 1, 0));
}
NBTTagCompound data = new NBTTagCompound();
double[] vals = new double[] {0D ,0D, 0D, 0D};
for(int k = 0; k < 4; k++) {
double clamp = k < 2 ? 100 : 1000;
if(NumberUtils.isDigits(fields[k].getText())) {
int j = (int)MathHelper.clamp_double(Double.parseDouble(fields[k].getText()), 0, clamp);
fields[k].setText(j + "");
vals[k] = j;
} else {
fields[k].setText("0");
}
}
data.setDouble("levelUpper", vals[0]);
data.setDouble("levelLower", vals[1]);
data.setDouble("heatUpper", vals[2]);
data.setDouble("heatLower", vals[3]);
PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(data, control.xCoord, control.yCoord, control.zCoord));
}
if(guiLeft + 43 <= x && guiLeft + 43 + 18 > x && guiTop + 16 < y && guiTop + 16 + 18 >= y) {
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, control.auto ? 0 : 1, 1));
}
if(guiLeft + 63 <= x && guiLeft + 63 + 14 > x && guiTop + 52 < y && guiTop + 52 + 18 >= y) {
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, (control.compression + 1) % 3, 2));
}
for(int k = 0; k < 3; k++) {
if(guiLeft + 7 <= x && guiLeft + 7 + 22 > x && guiTop + 37 + k * 11 < y && guiTop + 37 + 10 + k * 11 >= y) {
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
NBTTagCompound data = new NBTTagCompound();
data.setInteger("function", k);
PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(data, control.xCoord, control.yCoord, control.zCoord));
}
}
}
@Override
@ -102,7 +134,7 @@ public class GUIReactorControl extends GuiInfoContainer {
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
this.fontRendererObj.drawString("Rods: " + control.rods + "%", 8, 40, 4210752);
}
@Override
@ -111,155 +143,26 @@ public class GUIReactorControl extends GuiInfoContainer {
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
if(control.hullHeat > 0) {
int i = (control.hullHeat * 88 / 100000);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 59, 0, 166, i, 4);
}
for(int i = 0; i < 4; i++)
this.fields[i].drawTextBox();
if(control.coreHeat > 0) {
int i = (control.coreHeat * 88 / 50000);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 65, 0, 170, i, 4);
}
if(control.steam > 0) {
int i = (control.steam * 88 / control.maxSteam);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 53, 0, 174 + 4 * control.compression, i, 4);
}
if(control.cool > 0) {
int i = (control.cool * 88 / control.maxCool);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 47, 0, 194, i, 4);
}
if(control.water > 0) {
int i = (control.water * 88 / control.maxWater);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 41, 0, 190, i, 4);
}
if(control.fuel > 0) {
int i = (control.fuel * 88 / 100);
i = (int) Math.min(i, 160);
drawTexturedModalRect(guiLeft + 80, guiTop + 35, 0, 186, i, 4);
}
if(control.isOn) {
drawTexturedModalRect(guiLeft + 7, guiTop + 16, 218, 0, 18, 18);
}
if(control.auto) {
drawTexturedModalRect(guiLeft + 43, guiTop + 16, 236, 0, 18, 18);
}
drawTexturedModalRect(guiLeft + 63, guiTop + 52, 176 + 14 * control.compression, 0, 14, 18);
if(!control.isLinked) {
drawTexturedModalRect(guiLeft + 79, guiTop + 16, 88, 166, 18, 18);
}
if(control.water < control.maxWater * 0.1) {
drawTexturedModalRect(guiLeft + 79 + 18, guiTop + 16, 88 + 18, 166, 18, 18);
}
if(control.cool < control.maxCool * 0.1) {
drawTexturedModalRect(guiLeft + 79 + 18 * 2, guiTop + 16, 88 + 18 * 2, 166, 18, 18);
}
if(control.steam > control.maxSteam * 0.95) {
drawTexturedModalRect(guiLeft + 79 + 18 * 3, guiTop + 16, 88 + 18 * 3, 166, 18, 18);
}
if(control.coreHeat > (50000 * 0.85)) {
drawTexturedModalRect(guiLeft + 79 + 18 * 4, guiTop + 16, 88 + 18 * 4, 166, 18, 18);
}
if(control.rods == control.maxRods && control.rods != 0) {
drawTexturedModalRect(guiLeft + 25, guiTop + 16, 176, 18, 18, 18);
} else if(control.rods > 0) {
drawTexturedModalRect(guiLeft + 25, guiTop + 16, 194, 18, 18, 18);
}
for(byte i = 0; i < 3; i++)
displays[i].drawNumber(control.getDisplayData()[i]);
}
protected void keyTyped(char ch, int i)
{
super.keyTyped(ch, i);
switch(ch) {
case '0':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 0, 0)); break;
case '1':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 10, 0)); break;
case '2':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 20, 0)); break;
case '3':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 30, 0)); break;
case '4':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 40, 0)); break;
case '5':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 50, 0)); break;
case '6':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 60, 0)); break;
case '7':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 70, 0)); break;
case '8':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 80, 0)); break;
case '9':
mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F));
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, 90, 0)); break;
}
}
public void handleMouseInput()
{
super.handleMouseInput();
int i = Mouse.getEventDWheel();
if(i != 0) {
if (i > 0)
{
i = 1;
}
if (i < 0)
{
i = -1;
}
int rods = control.rods + i;
if(rods < 0)
rods = 0;
if(rods > 100)
rods = 100;
PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(control.xCoord, control.yCoord, control.zCoord, rods, 0));
}
}
@Override
protected void keyTyped(char c, int i) {
for(byte j = 0; j < 4; j++) {
if(this.fields[j].textboxKeyTyped(c, i))
return;
}
if(i == 1 || i == this.mc.gameSettings.keyBindInventory.getKeyCode()) {
this.mc.thePlayer.closeScreen();
return;
}
super.keyTyped(c, i);
}
}

View File

@ -51,6 +51,8 @@ public class GUIReactorResearch extends GuiInfoContainer {
this.field = new GuiTextField(this.fontRendererObj, guiLeft + 8, guiTop + 99, 33, 16);
this.field.setEnableBackgroundDrawing(false);
this.field.setMaxStringLength(3);
//this.field.setText((int) (reactor.level * 100) + "");
}
@Override

View File

@ -213,7 +213,7 @@ public class AssemblerRecipes {
makeRecipe(new ComparableStack(ModItems.tritium_deuterium_cake, 1), new AStack[] {new ComparableStack(ModItems.cell_deuterium, 6), new ComparableStack(ModItems.cell_tritium, 2), new OreDictStack(LI.ingot(), 4), },150);
makeRecipe(new ComparableStack(ModItems.pellet_cluster, 1), new AStack[] {new OreDictStack(STEEL.plate(), 4), new ComparableStack(Blocks.tnt, 1), }, 50);
makeRecipe(new ComparableStack(ModItems.pellet_buckshot, 1), new AStack[] {new OreDictStack(PB.nugget(), 6), }, 50);
makeRecipe(new ComparableStack(ModItems.australium_iii, 1), new AStack[] {new ComparableStack(ModItems.rod_australium, 1), new OreDictStack(STEEL.ingot(), 1), new OreDictStack(STEEL.plate(), 6), new OreDictStack(CU.plate(), 2), new ComparableStack(ModItems.wire_copper, 6), },150);
makeRecipe(new ComparableStack(ModItems.australium_iii, 1), new AStack[] {new ComparableStack(ModItems.nugget_australium, 6), new OreDictStack(STEEL.ingot(), 1), new OreDictStack(STEEL.plate(), 6), new OreDictStack(CU.plate(), 2), new ComparableStack(ModItems.wire_copper, 6), },150);
makeRecipe(new ComparableStack(ModItems.magnetron, 1), new AStack[] {new OreDictStack(ALLOY.ingot(), 1), new OreDictStack(ALLOY.plate(), 2), new ComparableStack(ModItems.wire_tungsten, 1), new ComparableStack(ModItems.coil_tungsten, 1), },100);
makeRecipe(new ComparableStack(ModItems.pellet_schrabidium, 1), new AStack[] {new OreDictStack(SA326.ingot(), 5), new OreDictStack(IRON.plate(), 2), }, 200);
makeRecipe(new ComparableStack(ModItems.pellet_hes, 1), new AStack[] {new ComparableStack(ModItems.ingot_hes, 5), new OreDictStack(IRON.plate(), 2), }, 200);

View File

@ -11,7 +11,6 @@ import com.hbm.inventory.RecipesCommon.ComparableStack;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBreedingRod.*;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@ -36,6 +35,7 @@ public class BreederRecipes {
recipes.put(new ComparableStack(ModItems.meteorite_sword_etched), new BreederRecipe(new ItemStack(ModItems.meteorite_sword_bred), 1000));
}
/** Sets recipes for single, dual, and quad rods **/
public static void setRecipe(BreedingRodType inputType, BreedingRodType outputType, int flux) {
recipes.put(new ComparableStack(new ItemStack(ModItems.rod, 1, inputType.ordinal())), new BreederRecipe(new ItemStack(ModItems.rod, 1, outputType.ordinal()), flux));
recipes.put(new ComparableStack(new ItemStack(ModItems.rod_dual, 1, inputType.ordinal())), new BreederRecipe(new ItemStack(ModItems.rod_dual, 1, outputType.ordinal()), flux * 2));
@ -58,7 +58,7 @@ public class BreederRecipes {
if(stack == null)
return null;
ComparableStack sta = new ComparableStack(stack);
ComparableStack sta = new ComparableStack(stack).makeSingular();
return BreederRecipes.recipes.get(sta);
}

View File

@ -84,15 +84,15 @@ public class SILEXRecipes {
// UEU //
recipes.put(new ComparableStack(ModItems.rbmk_pellet_ueu, 1, i), new SILEXRecipe(600, 100)
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u238), 87 - i * 6))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 9 - i * 2))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u238), 88 - i * 6))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 8 - i * 2))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_long_tiny, 1, ItemWasteLong.WasteClass.URANIUM235.ordinal()), 2 + 3 * i))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_short_tiny, 1, ItemWasteShort.WasteClass.URANIUM235.ordinal()), 2 + 5 * i)) );
recipes.put(new ComparableStack(ModItems.rbmk_pellet_ueu, 1, i + 5), new SILEXRecipe(600, 100)
.addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_xe135_tiny), 1))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u238), 87 - i * 6))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 8 - i * 2))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u238), 88 - i * 6))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 7 - i * 2))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_long_tiny, 1, ItemWasteLong.WasteClass.URANIUM235.ordinal()), 2 + 3 * i))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_short_tiny, 1, ItemWasteShort.WasteClass.URANIUM235.ordinal()), 2 + 5 * i)) );
@ -120,7 +120,7 @@ public class SILEXRecipes {
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_long_tiny, 1, ItemWasteLong.WasteClass.URANIUM233.ordinal()), 4 + 8 * i))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_short_tiny, 1, ItemWasteShort.WasteClass.URANIUM233.ordinal()), 6 + 12 * i)) );
// MEU //
// HEU235 //
recipes.put(new ComparableStack(ModItems.rbmk_pellet_heu235, 1, i), new SILEXRecipe(600, 100)
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 90 - i * 20))
.addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_long_tiny, 1, ItemWasteLong.WasteClass.URANIUM235.ordinal()), 4 + 8 * i))

View File

@ -235,6 +235,7 @@ public class ModItems {
public static Item nugget_neptunium;
public static Item nugget_polonium;
public static Item nugget_technetium;
public static Item nugget_cobalt;
public static Item nugget_co60;
public static Item nugget_sr90;
public static Item nugget_au198;
@ -967,72 +968,6 @@ public class ModItems {
public static Item rod_quad_empty;
public static Item rod_quad;
public static Item rod_uranium;
public static Item rod_th232;
public static Item rod_u233;
public static Item rod_u235;
public static Item rod_u238;
public static Item rod_plutonium;
public static Item rod_pu238;
public static Item rod_pu239;
public static Item rod_pu240;
public static Item rod_neptunium;
public static Item rod_polonium;
public static Item rod_lead;
public static Item rod_schrabidium;
public static Item rod_solinium;
public static Item rod_euphemium;
public static Item rod_australium;
public static Item rod_weidanium;
public static Item rod_reiium;
public static Item rod_unobtainium;
public static Item rod_daffergon;
public static Item rod_verticium;
public static Item rod_balefire;
public static Item rod_balefire_blazing;
public static Item rod_dual_uranium;
public static Item rod_dual_th232;
public static Item rod_dual_u233;
public static Item rod_dual_u235;
public static Item rod_dual_u238;
public static Item rod_dual_plutonium;
public static Item rod_dual_pu238;
public static Item rod_dual_pu239;
public static Item rod_dual_pu240;
public static Item rod_dual_neptunium;
public static Item rod_dual_polonium;
public static Item rod_dual_lead;
public static Item rod_dual_schrabidium;
public static Item rod_dual_solinium;
public static Item rod_dual_balefire;
public static Item rod_dual_balefire_blazing;
public static Item rod_quad_uranium;
public static Item rod_quad_th232;
public static Item rod_quad_u233;
public static Item rod_quad_u235;
public static Item rod_quad_u238;
public static Item rod_quad_plutonium;
public static Item rod_quad_pu238;
public static Item rod_quad_pu239;
public static Item rod_quad_pu240;
public static Item rod_quad_neptunium;
public static Item rod_quad_polonium;
public static Item rod_quad_lead;
public static Item rod_quad_schrabidium;
public static Item rod_quad_solinium;
public static Item rod_quad_balefire;
public static Item rod_quad_balefire_blazing;
public static Item rod_water;
public static Item rod_dual_water;
public static Item rod_quad_water;
public static Item rod_coolant;
public static Item rod_dual_coolant;
public static Item rod_quad_coolant;
public static Item rod_zirnox_empty;
public static Item rod_zirnox_natural_uranium_fuel;
public static Item rod_zirnox_uranium_fuel;
@ -1163,9 +1098,6 @@ public class ModItems {
public static Item nuclear_waste_tiny;
public static Item nuclear_waste_vitrified;
public static Item nuclear_waste_vitrified_tiny;
public static Item rod_waste;
public static Item rod_dual_waste;
public static Item rod_quad_waste;
public static Item debris_graphite;
public static Item debris_metal;
@ -1188,13 +1120,6 @@ public class ModItems {
public static Item recycled_nuclear;
public static Item recycled_misc;
public static Item rod_lithium;
public static Item rod_dual_lithium;
public static Item rod_quad_lithium;
public static Item rod_tritium;
public static Item rod_dual_tritium;
public static Item rod_quad_tritium;
public static Item test_nuke_igniter;
public static Item test_nuke_propellant;
public static Item test_nuke_tier1_shielding;
@ -1947,7 +1872,6 @@ public class ModItems {
public static Item ingot_euphemium;
public static Item nugget_euphemium;
public static Item rod_quad_euphemium;
public static Item euphemium_helmet;
public static Item euphemium_plate;
public static Item euphemium_legs;
@ -2775,6 +2699,7 @@ public class ModItems {
nugget_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.nugget).setUnlocalizedName("nugget_neptunium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_neptunium");
nugget_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.nugget, true).setUnlocalizedName("nugget_polonium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_polonium");
nugget_technetium = new ItemHazard().addRadiation(ItemHazard.tc99 * ItemHazard.nugget).toItem().setUnlocalizedName("nugget_technetium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_technetium");
nugget_cobalt = new Item().setUnlocalizedName("nugget_cobalt").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_cobalt");
nugget_co60 = new ItemHazard().addRadiation(ItemHazard.co60 * ItemHazard.nugget).addFire(5).toItem().setUnlocalizedName("nugget_co60").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_co60");
nugget_sr90 = new Item().setUnlocalizedName("nugget_sr90").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_sr90");
nugget_au198 = new ItemHazard().addRadiation(ItemHazard.au198 * ItemHazard.nugget).addFire(15).toItem().setUnlocalizedName("nugget_au198").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_au198");
@ -3490,69 +3415,11 @@ public class ModItems {
recycled_misc = new Item().setUnlocalizedName("recycled_misc").setCreativeTab(null).setTextureName(RefStrings.MODID + ":recycled_misc");
rod_empty = new Item().setUnlocalizedName("rod_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rod_empty");
rod = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod").setMaxStackSize(1).setContainerItem(ModItems.rod_empty).setCreativeTab(MainRegistry.controlTab);
rod = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod").setContainerItem(ModItems.rod_empty).setCreativeTab(MainRegistry.controlTab);
rod_dual_empty = new Item().setUnlocalizedName("rod_dual_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rod_dual_empty");
rod_dual = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod_dual").setMaxStackSize(1).setContainerItem(ModItems.rod_dual_empty).setCreativeTab(MainRegistry.controlTab);
rod_dual = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod_dual").setContainerItem(ModItems.rod_dual_empty).setCreativeTab(MainRegistry.controlTab);
rod_quad_empty = new Item().setUnlocalizedName("rod_quad_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rod_quad_empty");
rod_quad = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod_quad").setMaxStackSize(1).setContainerItem(ModItems.rod_quad_empty).setCreativeTab(MainRegistry.controlTab);
rod_th232 = new ItemHazard().addRadiation(ItemHazard.th232 * ItemHazard.rod).toItem().setUnlocalizedName("rod_th232").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_th232");
rod_uranium = new ItemHazard(ItemHazard.u * ItemHazard.rod).setUnlocalizedName("rod_uranium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_uranium");
rod_u233 = new ItemHazard(ItemHazard.u233 * ItemHazard.rod).setUnlocalizedName("rod_u233").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_u233");
rod_u235 = new ItemHazard(ItemHazard.u235 * ItemHazard.rod).setUnlocalizedName("rod_u235").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_u235");
rod_u238 = new ItemHazard(ItemHazard.u238 * ItemHazard.rod).setUnlocalizedName("rod_u238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_u238");
rod_plutonium = new ItemHazard(ItemHazard.pu * ItemHazard.rod).setUnlocalizedName("rod_plutonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_plutonium");
rod_pu238 = new ItemHazard(ItemHazard.pu238 * ItemHazard.rod, true).setUnlocalizedName("rod_pu238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_pu238");
rod_pu239 = new ItemHazard(ItemHazard.pu239 * ItemHazard.rod).setUnlocalizedName("rod_pu239").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_pu239");
rod_pu240 = new ItemHazard(ItemHazard.pu240 * ItemHazard.rod).setUnlocalizedName("rod_pu240").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_pu240");
rod_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.rod).setUnlocalizedName("rod_neptunium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_neptunium");
rod_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.rod, true).setUnlocalizedName("rod_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_polonium");
rod_lead = new Item().setUnlocalizedName("rod_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_lead");
rod_schrabidium = new ItemHazard(ItemHazard.sa326 * ItemHazard.rod, false, true).setUnlocalizedName("rod_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_schrabidium");
rod_solinium = new ItemHazard(ItemHazard.sa327 * ItemHazard.rod, false, true).setUnlocalizedName("rod_solinium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_solinium");
rod_euphemium = new ItemCustomLore().setUnlocalizedName("rod_euphemium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_euphemium");
rod_australium = new ItemCustomLore().setUnlocalizedName("rod_australium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_australium");
rod_weidanium = new ItemCustomLore().setUnlocalizedName("rod_weidanium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_weidanium");
rod_reiium = new ItemCustomLore().setUnlocalizedName("rod_reiium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_reiium");
rod_unobtainium = new ItemCustomLore().setUnlocalizedName("rod_unobtainium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_unobtainium");
rod_daffergon = new ItemCustomLore().setUnlocalizedName("rod_daffergon").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_daffergon");
rod_verticium = new ItemCustomLore().setUnlocalizedName("rod_verticium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_verticium");
rod_balefire = new ItemHazard(150000F).setUnlocalizedName("rod_balefire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_balefire");
rod_balefire_blazing = new ItemHazard(250000F, true).setUnlocalizedName("rod_balefire_blazing").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_balefire_blazing");
rod_dual_th232 = new ItemHazard(ItemHazard.th232 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_th232").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_th232");
rod_dual_uranium = new ItemHazard(ItemHazard.u * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_uranium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_uranium");
rod_dual_u233 = new ItemHazard(ItemHazard.u233 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_u233").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_u233");
rod_dual_u235 = new ItemHazard(ItemHazard.u235 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_u235").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_u235");
rod_dual_u238 = new ItemHazard(ItemHazard.u238 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_u238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_u238");
rod_dual_plutonium = new ItemHazard(ItemHazard.pu * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_plutonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_plutonium");
rod_dual_pu238 = new ItemHazard(ItemHazard.pu238 * ItemHazard.rod_dual, true).setUnlocalizedName("rod_dual_pu238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_pu238");
rod_dual_pu239 = new ItemHazard(ItemHazard.pu239 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_pu239").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_pu239");
rod_dual_pu240 = new ItemHazard(ItemHazard.pu240 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_pu240").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_pu240");
rod_dual_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.rod_dual).setUnlocalizedName("rod_dual_neptunium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_neptunium");
rod_dual_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.rod_dual, true).setUnlocalizedName("rod_dual_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_polonium");
rod_dual_lead = new Item().setUnlocalizedName("rod_dual_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_lead");
rod_dual_schrabidium = new ItemHazard(ItemHazard.sa326 * ItemHazard.rod_dual, false, true).setUnlocalizedName("rod_dual_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_schrabidium");
rod_dual_solinium = new ItemHazard(ItemHazard.sa327 * ItemHazard.rod_dual, false, true).setUnlocalizedName("rod_dual_solinium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_solinium");
rod_dual_balefire = new ItemHazard(300000F).setUnlocalizedName("rod_dual_balefire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_balefire");
rod_dual_balefire_blazing = new ItemHazard(500000F, true).setUnlocalizedName("rod_dual_balefire_blazing").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_balefire_blazing");
rod_quad_th232 = new ItemHazard(ItemHazard.th232 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_th232").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_th232");
rod_quad_uranium = new ItemHazard(ItemHazard.u * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_uranium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_uranium");
rod_quad_u233 = new ItemHazard(ItemHazard.u233 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_u233").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_u233");
rod_quad_u235 = new ItemHazard(ItemHazard.u235 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_u235").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_u235");
rod_quad_u238 = new ItemHazard(ItemHazard.u238 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_u238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_u238");
rod_quad_plutonium = new ItemHazard(ItemHazard.pu * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_plutonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_plutonium");
rod_quad_pu238 = new ItemHazard(ItemHazard.pu238 * ItemHazard.rod_quad, true).setUnlocalizedName("rod_quad_pu238").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_pu238");
rod_quad_pu239 = new ItemHazard(ItemHazard.pu239 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_pu239").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_pu239");
rod_quad_pu240 = new ItemHazard(ItemHazard.pu240 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_pu240").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_pu240");
rod_quad_neptunium = new ItemHazard(ItemHazard.np237 * ItemHazard.rod_quad).setUnlocalizedName("rod_quad_neptunium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_neptunium");
rod_quad_polonium = new ItemHazard(ItemHazard.po210 * ItemHazard.rod_quad, true).setUnlocalizedName("rod_quad_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_polonium");
rod_quad_lead = new Item().setUnlocalizedName("rod_quad_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_lead");
rod_quad_schrabidium = new ItemHazard(ItemHazard.sa326 * ItemHazard.rod_quad, false, true).setUnlocalizedName("rod_quad_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_schrabidium");
rod_quad_solinium = new ItemHazard(ItemHazard.sa327 * ItemHazard.rod_quad, false, true).setUnlocalizedName("rod_quad_solinium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_solinium");
rod_quad_balefire = new ItemHazard(600000F).setUnlocalizedName("rod_quad_balefire").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_balefire");
rod_quad_balefire_blazing = new ItemHazard(1000000F, true).setUnlocalizedName("rod_quad_balefire_blazing").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_balefire_blazing");
rod_quad = (ItemEnumMulti) new ItemBreedingRod().setUnlocalizedName("rod_quad").setContainerItem(ModItems.rod_quad_empty).setCreativeTab(MainRegistry.controlTab);
rod_zirnox_empty = new Item().setUnlocalizedName("rod_zirnox_empty").setMaxStackSize(64).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rod_zirnox_empty");
rod_zirnox_natural_uranium_fuel = new ItemZirnoxRod(120000, 35).setUnlocalizedName("rod_zirnox_natural_uranium_fuel").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_zirnox_empty).setTextureName(RefStrings.MODID + ":rod_zirnox_natural_uranium_fuel");
@ -3592,22 +3459,6 @@ public class ModItems {
waste_plate_ra226be = new ItemDepletedFuel().setUnlocalizedName("waste_plate_ra226be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":waste_plate_ra226be");
waste_plate_sa326 = new ItemDepletedFuel().setUnlocalizedName("waste_plate_sa326").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":waste_plate_sa326");
rod_water = new ItemCustomLore().setUnlocalizedName("rod_water").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_water");
rod_dual_water = new ItemCustomLore().setUnlocalizedName("rod_dual_water").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_water");
rod_quad_water = new ItemCustomLore().setUnlocalizedName("rod_quad_water").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_water");
rod_coolant = new ItemCustomLore().setUnlocalizedName("rod_coolant").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_coolant");
rod_dual_coolant = new ItemCustomLore().setUnlocalizedName("rod_dual_coolant").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_coolant");
rod_quad_coolant = new ItemCustomLore().setUnlocalizedName("rod_quad_coolant").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_coolant");
rod_lithium = new ItemHazard().addHydroReactivity().toItem().setUnlocalizedName("rod_lithium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_lithium");
rod_dual_lithium = new ItemHazard().addHydroReactivity().toItem().setUnlocalizedName("rod_dual_lithium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_lithium");
rod_quad_lithium = new ItemHazard().addHydroReactivity().toItem().setUnlocalizedName("rod_quad_lithium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_lithium");
rod_tritium = new ItemHazard(0.5F).setUnlocalizedName("rod_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_tritium");
rod_dual_tritium = new ItemHazard(1F).setUnlocalizedName("rod_dual_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_tritium");
rod_quad_tritium = new ItemHazard(2F).setUnlocalizedName("rod_quad_tritium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_tritium");
pile_rod_uranium = new ItemPileRod().setUnlocalizedName("pile_rod_uranium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_uranium");
pile_rod_plutonium = new ItemPileRod().setUnlocalizedName("pile_rod_plutonium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_plutonium");
pile_rod_source = new ItemPileRod().setUnlocalizedName("pile_rod_source").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":pile_rod_source");
@ -3878,10 +3729,7 @@ public class ModItems {
scrap = new Item().setUnlocalizedName("scrap").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":scrap");
scrap_nuclear = new Item().setUnlocalizedName("scrap_nuclear").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":scrap_nuclear");
containment_box = new ItemLeadBox().setUnlocalizedName("containment_box").setCreativeTab(null).setTextureName(RefStrings.MODID + ":containment_box");
rod_waste = new ItemHazard(15F).setUnlocalizedName("rod_waste").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_empty).setTextureName(RefStrings.MODID + ":rod_waste");
rod_dual_waste = new ItemHazard(30F).setUnlocalizedName("rod_dual_waste").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_dual_empty).setTextureName(RefStrings.MODID + ":rod_dual_waste");
rod_quad_waste = new ItemHazard(60F).setUnlocalizedName("rod_quad_waste").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_waste");
debris_graphite = new Item().setUnlocalizedName("debris_graphite").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":debris_graphite");
debris_metal = new Item().setUnlocalizedName("debris_metal").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":debris_metal");
debris_fuel = new Item().setUnlocalizedName("debris_fuel").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":debris_fuel");
@ -4696,7 +4544,6 @@ public class ModItems {
ingot_euphemium = new ItemCustomLore().setUnlocalizedName("ingot_euphemium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_euphemium");
nugget_euphemium = new ItemCustomLore().setUnlocalizedName("nugget_euphemium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_euphemium");
rod_quad_euphemium = new ItemCustomLore().setUnlocalizedName("rod_quad_euphemium").setCreativeTab(MainRegistry.partsTab).setMaxStackSize(1).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_euphemium");
watch = new ItemCustomLore().setUnlocalizedName("watch").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":watch");
apple_euphemium = new ItemAppleEuphemium(20, 100, false).setUnlocalizedName("apple_euphemium").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":apple_euphemium");
@ -5923,6 +5770,7 @@ public class ModItems {
GameRegistry.registerItem(nugget_am_mix, nugget_am_mix.getUnlocalizedName());
GameRegistry.registerItem(nugget_neptunium, nugget_neptunium.getUnlocalizedName());
GameRegistry.registerItem(nugget_polonium, nugget_polonium.getUnlocalizedName());
GameRegistry.registerItem(nugget_cobalt, nugget_cobalt.getUnlocalizedName());
GameRegistry.registerItem(nugget_co60, nugget_co60.getUnlocalizedName());
GameRegistry.registerItem(nugget_sr90, nugget_sr90.getUnlocalizedName());
GameRegistry.registerItem(nugget_technetium, nugget_technetium.getUnlocalizedName());
@ -6577,102 +6425,6 @@ public class ModItems {
GameRegistry.registerItem(rod_quad_empty, rod_quad_empty.getUnlocalizedName());
GameRegistry.registerItem(rod_quad, rod_quad.getUnlocalizedName());
//Fuel Rods
GameRegistry.registerItem(rod_uranium, rod_uranium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_uranium, rod_dual_uranium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_uranium, rod_quad_uranium.getUnlocalizedName());
GameRegistry.registerItem(rod_th232, rod_th232.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_th232, rod_dual_th232.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_th232, rod_quad_th232.getUnlocalizedName());
GameRegistry.registerItem(rod_u233, rod_u233.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_u233, rod_dual_u233.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_u233, rod_quad_u233.getUnlocalizedName());
GameRegistry.registerItem(rod_u235, rod_u235.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_u235, rod_dual_u235.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_u235, rod_quad_u235.getUnlocalizedName());
GameRegistry.registerItem(rod_u238, rod_u238.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_u238, rod_dual_u238.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_u238, rod_quad_u238.getUnlocalizedName());
GameRegistry.registerItem(rod_plutonium, rod_plutonium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_plutonium, rod_dual_plutonium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_plutonium, rod_quad_plutonium.getUnlocalizedName());
GameRegistry.registerItem(rod_pu238, rod_pu238.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_pu238, rod_dual_pu238.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_pu238, rod_quad_pu238.getUnlocalizedName());
GameRegistry.registerItem(rod_pu239, rod_pu239.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_pu239, rod_dual_pu239.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_pu239, rod_quad_pu239.getUnlocalizedName());
GameRegistry.registerItem(rod_pu240, rod_pu240.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_pu240, rod_dual_pu240.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_pu240, rod_quad_pu240.getUnlocalizedName());
GameRegistry.registerItem(rod_neptunium, rod_neptunium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_neptunium, rod_dual_neptunium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_neptunium, rod_quad_neptunium.getUnlocalizedName());
GameRegistry.registerItem(rod_polonium, rod_polonium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_polonium, rod_dual_polonium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_polonium, rod_quad_polonium.getUnlocalizedName());
GameRegistry.registerItem(rod_lead, rod_lead.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_lead, rod_dual_lead.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_lead, rod_quad_lead.getUnlocalizedName());
GameRegistry.registerItem(rod_schrabidium, rod_schrabidium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_schrabidium, rod_dual_schrabidium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_schrabidium, rod_quad_schrabidium.getUnlocalizedName());
GameRegistry.registerItem(rod_solinium, rod_solinium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_solinium, rod_dual_solinium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_solinium, rod_quad_solinium.getUnlocalizedName());
GameRegistry.registerItem(rod_water, rod_water.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_water, rod_dual_water.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_water, rod_quad_water.getUnlocalizedName());
GameRegistry.registerItem(rod_coolant, rod_coolant.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_coolant, rod_dual_coolant.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_coolant, rod_quad_coolant.getUnlocalizedName());
GameRegistry.registerItem(rod_lithium, rod_lithium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_lithium, rod_dual_lithium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_lithium, rod_quad_lithium.getUnlocalizedName());
GameRegistry.registerItem(rod_tritium, rod_tritium.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_tritium, rod_dual_tritium.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_tritium, rod_quad_tritium.getUnlocalizedName());
GameRegistry.registerItem(rod_balefire, rod_balefire.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_balefire, rod_dual_balefire.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_balefire, rod_quad_balefire.getUnlocalizedName());
GameRegistry.registerItem(rod_balefire_blazing, rod_balefire_blazing.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_balefire_blazing, rod_dual_balefire_blazing.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_balefire_blazing, rod_quad_balefire_blazing.getUnlocalizedName());
GameRegistry.registerItem(rod_euphemium, rod_euphemium.getUnlocalizedName());
GameRegistry.registerItem(rod_australium, rod_australium.getUnlocalizedName());
GameRegistry.registerItem(rod_weidanium, rod_weidanium.getUnlocalizedName());
GameRegistry.registerItem(rod_reiium, rod_reiium.getUnlocalizedName());
GameRegistry.registerItem(rod_unobtainium, rod_unobtainium.getUnlocalizedName());
GameRegistry.registerItem(rod_daffergon, rod_daffergon.getUnlocalizedName());
GameRegistry.registerItem(rod_verticium, rod_verticium.getUnlocalizedName());
//Nuclear Waste
GameRegistry.registerItem(rod_quad_euphemium, rod_quad_euphemium.getUnlocalizedName());
GameRegistry.registerItem(rod_waste, rod_waste.getUnlocalizedName());
GameRegistry.registerItem(rod_dual_waste, rod_dual_waste.getUnlocalizedName());
GameRegistry.registerItem(rod_quad_waste, rod_quad_waste.getUnlocalizedName());
//ZIRNOX parts
GameRegistry.registerItem(rod_zirnox_empty, rod_zirnox_empty.getUnlocalizedName());
GameRegistry.registerItem(rod_zirnox_natural_uranium_fuel, rod_zirnox_natural_uranium_fuel.getUnlocalizedName());

View File

@ -8,8 +8,7 @@ public class ItemBreedingRod extends ItemEnumMulti {
super(BreedingRodType.class, true, true);
}
//TODO: Remove old rods
public static enum BreedingRodType {
public enum BreedingRodType {
LITHIUM,
TRITIUM,
CO,

View File

@ -34,36 +34,6 @@ public class ItemReactorSensor extends Item {
}
if (b == ModBlocks.reactor_hatch || b == ModBlocks.reactor_ejector
|| b == ModBlocks.reactor_inserter) {
int meta = world.getBlockMetadata(x, y, z);
switch(meta) {
case 2: z += 2; break;
case 3: z -= 2; break;
case 4: x += 2; break;
case 5: x -= 2; break;
}
}
b = world.getBlock(x, y, z);
if (b == ModBlocks.reactor_computer) {
if (stack.stackTagCompound == null)
stack.stackTagCompound = new NBTTagCompound();
stack.stackTagCompound.setInteger("x", x);
stack.stackTagCompound.setInteger("y", y);
stack.stackTagCompound.setInteger("z", z);
world.playSoundAtEntity(player, "hbm:item.techBoop", 1.0F, 1.0F);
player.swingItem();
return true;
}
return false;
}

View File

@ -96,12 +96,6 @@ public class ItemCustomLore extends Item {
list.add("a great taste in shades of green.");
}
if(this == ModItems.rod_quad_euphemium)
{
list.add("A quad fuel rod which contains a");
list.add("very small ammount of a strange new element.");
}
if(this == ModItems.ingot_euphemium)
{
list.add("A very special and yet strange element.");
@ -128,21 +122,6 @@ public class ItemCustomLore extends Item {
list.add("It stopped ticking at 2:34.");
}
if(this == ModItems.rod_lithium)
{
list.add("Turns into Tritium Rod");
}
if(this == ModItems.rod_dual_lithium)
{
list.add("Turns into Dual Tritium Rod");
}
if(this == ModItems.rod_quad_lithium)
{
list.add("Turns into Quad Tritium Rod");
}
if(this == ModItems.tritium_deuterium_cake)
{
list.add("Not actual cake, but great");
@ -390,7 +369,7 @@ public class ItemCustomLore extends Item {
public EnumRarity getRarity(ItemStack p_77613_1_) {
if(this == ModItems.nugget_euphemium || this == ModItems.ingot_euphemium ||
this == ModItems.rod_quad_euphemium || this == ModItems.plate_euphemium ||
this == ModItems.plate_euphemium ||
this == ModItems.watch || this == ModItems.powder_iodine ||
this == ModItems.powder_thorium || this == ModItems.powder_neodymium ||
this == ModItems.powder_neptunium || this == ModItems.powder_astatine ||
@ -402,8 +381,7 @@ public class ItemCustomLore extends Item {
return EnumRarity.epic;
}
if(this == ModItems.rod_schrabidium || this == ModItems.rod_dual_schrabidium ||
this == ModItems.rod_quad_schrabidium || this == ModItems.ingot_schrabidium ||
if(this == ModItems.ingot_schrabidium ||
this == ModItems.nugget_schrabidium || this == ModItems.plate_schrabidium ||
this == ModItems.cell_sas3 || this == ModItems.powder_schrabidium ||
this == ModItems.wire_schrabidium || this == ModItems.circuit_schrabidium ||

View File

@ -6,6 +6,7 @@ import com.hbm.blocks.ModBlocks;
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBattery;
import com.hbm.items.machine.ItemBreedingRod.BreedingRodType;
import com.hbm.lib.Library;
import cpw.mods.fml.relauncher.Side;
@ -509,16 +510,9 @@ public class ItemStarterKit extends Item {
player.inventory.addItemStackToInventory(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_prototype), 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.igniter, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.cell_sas3, 4));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_uranium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_uranium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_lead, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_lead, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_neptunium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_neptunium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_lead, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_lead, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_uranium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad_uranium, 1));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad, 4, BreedingRodType.URANIUM.ordinal()));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad, 4, BreedingRodType.LEAD.ordinal()));
player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_quad, 2, BreedingRodType.NP237.ordinal()));
giveHaz(world, player, 2);
}

View File

@ -5,6 +5,7 @@ import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBattery;
import com.hbm.items.machine.ItemBreedingRod.*;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
@ -112,13 +113,13 @@ public class HbmChestContents {
new WeightedRandomChestContent(ModItems.nugget_u238, 0, 3, 12, 5),
new WeightedRandomChestContent(ModItems.nugget_pu240, 0, 3, 8, 5),
new WeightedRandomChestContent(ModItems.nugget_neptunium, 0, 1, 4, 3),
new WeightedRandomChestContent(ModItems.rod_u238, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_neptunium, 0, 1, 1, 4),
new WeightedRandomChestContent(ModItems.rod_pu240, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual_u238, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual_pu240, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad_u238, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad_pu240, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.U238.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.NP237.ordinal(), 1, 1, 4),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.RGP.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual, BreedingRodType.U238.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual, BreedingRodType.RGP.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad, BreedingRodType.U238.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad, BreedingRodType.RGP.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.bottle_quantum, 0, 1, 1, 1),
new WeightedRandomChestContent(ModItems.gas_mask_m65, 60, 1, 1, 5),
new WeightedRandomChestContent(ModItems.hazmat_kit, 0, 1, 1, 1),
@ -129,18 +130,18 @@ public class HbmChestContents {
new WeightedRandomChestContent(ModItems.nugget_u235, 0, 3, 12, 5),
new WeightedRandomChestContent(ModItems.nugget_pu238, 0, 3, 12, 5),
new WeightedRandomChestContent(ModItems.nugget_pu239, 0, 3, 12, 5),
new WeightedRandomChestContent(ModItems.rod_u235, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_pu239, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual_u235, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual_pu239, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad_u235, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad_pu239, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.PU239.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual, BreedingRodType.U235.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual, BreedingRodType.PU239.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad, BreedingRodType.U235.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_quad, BreedingRodType.PU239.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_zirnox_uranium_fuel, 0, 1, 1, 4),
new WeightedRandomChestContent(ModItems.rod_zirnox_plutonium_fuel, 0, 1, 1, 4),
new WeightedRandomChestContent(ModItems.rod_zirnox_mox_fuel, 0, 1, 1, 4),
new WeightedRandomChestContent(ModItems.rod_zirnox_lithium, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_zirnox_th232, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_zirnox_thorium_fuel, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_dual, BreedingRodType.THF.ordinal(), 1, 1, 3),
new WeightedRandomChestContent(ModItems.rod_zirnox_tritium, 0, 1, 1, 1),
new WeightedRandomChestContent(ModItems.rod_zirnox_u233_fuel, 0, 1, 1, 1),
new WeightedRandomChestContent(ModItems.rod_zirnox_u235_fuel, 0, 1, 1, 1),
@ -167,7 +168,7 @@ public class HbmChestContents {
new WeightedRandomChestContent(ModItems.gun_kit_1, 0, 2, 3, 4),
new WeightedRandomChestContent(ModItems.gun_rpg, 0, 1, 1, 3),
new WeightedRandomChestContent(ModItems.ammo_rocket, 0, 1, 6, 3),
new WeightedRandomChestContent(ModItems.nugget_uranium_fuel, 0, 1, 1, 2),
new WeightedRandomChestContent(ModItems.rod, BreedingRodType.U235.ordinal(), 1, 1, 2),
new WeightedRandomChestContent(ModItems.billet_uranium_fuel, 0, 1, 1, 2),
new WeightedRandomChestContent(ModItems.ingot_uranium_fuel, 0, 1, 1, 2),
new WeightedRandomChestContent(ModItems.ammo_nuke_safe, 0, 1, 2, 1),

View File

@ -564,10 +564,10 @@ public class ModEventHandlerClient {
}
/// NUCLEAR FURNACE FUELS ///
int[] breeder = TileEntityNukeFurnace.getFuelValue(stack);
int breeder = TileEntityNukeFurnace.getFuelValue(stack);
if(breeder != null) {
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.furnace", (breeder[0] * breeder[1] * 5)));
if(breeder != 0) {
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.furnace", (breeder * 5)));
}
/// CUSTOM NUKE ///

View File

@ -99,66 +99,6 @@ public class AuxButtonPacket implements IMessage {
field.isOn = !field.isOn;
}
/*if (te instanceof TileEntityReactorControl) {
TileEntityReactorControl control = (TileEntityReactorControl)te;
if(m.id == 1)
control.auto = m.value == 1;
if(control.linkY > -1) {
TileEntity reac = p.worldObj.getTileEntity(control.linkX, control.linkY, control.linkZ);
if (reac instanceof TileEntityMachineReactorSmall) {
TileEntityMachineReactorSmall reactor = (TileEntityMachineReactorSmall)reac;
if(m.id == 0)
reactor.retracting = m.value == 0;
if(m.id == 2) {
FluidType type = FluidType.STEAM;
int fill = reactor.tanks[2].getFill();
switch(m.value) {
case 0: type = FluidType.STEAM; fill = (int)Math.floor(fill * 100); break;
case 1: type = FluidType.HOTSTEAM; fill = (int)Math.floor(fill / 10D); break;
case 2: type = FluidType.SUPERHOTSTEAM; fill = (int)Math.floor(fill / 10D); break;
}
if(fill > reactor.tanks[2].getMaxFill())
fill = reactor.tanks[2].getMaxFill();
reactor.tanks[2].setTankType(type);
reactor.tanks[2].setFill(fill);
}
}
if (reac instanceof TileEntityMachineReactorLarge) {
TileEntityMachineReactorLarge reactor = (TileEntityMachineReactorLarge)reac;
if(m.id == 0) {
reactor.rods = m.value;
}
if(m.id == 2) {
FluidType type = FluidType.STEAM;
int fill = reactor.tanks[2].getFill();
switch(m.value) {
case 0: type = FluidType.STEAM; fill = (int)Math.floor(fill * 100); break;
case 1: type = FluidType.HOTSTEAM; fill = (int)Math.floor(fill / 10D); break;
case 2: type = FluidType.SUPERHOTSTEAM; fill = (int)Math.floor(fill / 10D); break;
}
if(fill > reactor.tanks[2].getMaxFill())
fill = reactor.tanks[2].getMaxFill();
reactor.tanks[2].setTankType(type);
reactor.tanks[2].setFill(fill);
}
}
}
}*/
if (te instanceof TileEntityMachineReactorLarge) {
TileEntityMachineReactorLarge reactor = (TileEntityMachineReactorLarge)te;

View File

@ -73,8 +73,6 @@ public class PacketDispatcher {
wrapper.registerMessage(LoopedEntitySoundPacket.Handler.class, LoopedEntitySoundPacket.class, i++, Side.CLIENT);
//Entity sound packet that keeps client and server separated
wrapper.registerMessage(TEFFPacket.Handler.class, TEFFPacket.class, i++, Side.CLIENT);
//Information packet for the reactor control block
wrapper.registerMessage(TEControlPacket.Handler.class, TEControlPacket.class, i++, Side.CLIENT);
//Sends button information for ItemGunBase
wrapper.registerMessage(GunButtonPacket.Handler.class, GunButtonPacket.class, i++, Side.SERVER);
//Packet to send block break particles

View File

@ -1,138 +0,0 @@
package com.hbm.packet;
import com.hbm.tileentity.machine.TileEntityReactorControl;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
import net.minecraft.client.Minecraft;
import net.minecraft.tileentity.TileEntity;
public class TEControlPacket implements IMessage {
int x;
int y;
int z;
int hullHeat;
int coreHeat;
int fuel;
int water;
int cool;
int steam;
int maxWater;
int maxCool;
int maxSteam;
int compression;
int rods;
int maxRods;
boolean isOn;
boolean auto;
boolean isLinked;
public TEControlPacket() {
}
public TEControlPacket(int x, int y, int z, int hullHeat, int coreHeat, int fuel, int water, int cool, int steam, int maxWater, int maxCool, int maxSteam, int compression, int rods, int maxRods, boolean isOn, boolean auto, boolean isLinked) {
this.x = x;
this.y = y;
this.z = z;
this.hullHeat = hullHeat;
this.coreHeat = coreHeat;
this.fuel = fuel;
this.water = water;
this.cool = cool;
this.steam = steam;
this.maxWater = maxWater;
this.maxCool = maxCool;
this.maxSteam = maxSteam;
this.compression = compression;
this.rods = rods;
this.maxRods = maxRods;
this.isOn = isOn;
this.auto = auto;
this.isLinked = isLinked;
}
@Override
public void fromBytes(ByteBuf buf) {
x = buf.readInt();
y = buf.readInt();
z = buf.readInt();
hullHeat = buf.readInt();
coreHeat = buf.readInt();
fuel = buf.readInt();
water = buf.readInt();
cool = buf.readInt();
steam = buf.readInt();
maxWater = buf.readInt();
maxCool = buf.readInt();
maxSteam = buf.readInt();
compression = buf.readInt();
rods = buf.readInt();
maxRods = buf.readInt();
isOn = buf.readBoolean();
auto = buf.readBoolean();
isLinked = buf.readBoolean();
}
@Override
public void toBytes(ByteBuf buf) {
buf.writeInt(x);
buf.writeInt(y);
buf.writeInt(z);
buf.writeInt(hullHeat);
buf.writeInt(coreHeat);
buf.writeInt(fuel);
buf.writeInt(water);
buf.writeInt(cool);
buf.writeInt(steam);
buf.writeInt(maxWater);
buf.writeInt(maxCool);
buf.writeInt(maxSteam);
buf.writeInt(compression);
buf.writeInt(rods);
buf.writeInt(maxRods);
buf.writeBoolean(isOn);
buf.writeBoolean(auto);
buf.writeBoolean(isLinked);
}
public static class Handler implements IMessageHandler<TEControlPacket, IMessage> {
@Override
@SideOnly(Side.CLIENT)
public IMessage onMessage(TEControlPacket m, MessageContext ctx) {
TileEntity te = Minecraft.getMinecraft().theWorld.getTileEntity(m.x, m.y, m.z);
try {
if(te instanceof TileEntityReactorControl) {
TileEntityReactorControl control = (TileEntityReactorControl)te;
control.hullHeat = m.hullHeat;
control.coreHeat = m.coreHeat;
control.fuel = m.fuel;
control.water = m.water;
control.cool = m.cool;
control.steam = m.steam;
control.maxWater = m.maxWater;
control.maxCool = m.maxCool;
control.maxSteam = m.maxSteam;
control.compression = m.compression;
control.rods = m.rods;
control.maxRods = m.maxRods;
control.isOn = m.isOn;
control.auto = m.auto;
control.isLinked = m.isLinked;
}
} catch (Exception x) {
}
return null;
}
}
}

View File

@ -1,6 +1,7 @@
package com.hbm.tileentity.bomb;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBreedingRod.*;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -174,16 +175,16 @@ public class TileEntityNukePrototype extends TileEntity implements ISidedInvento
if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null && slots[5] != null && slots[6] != null && slots[7] != null && slots[8] != null && slots[9] != null && slots[10] != null && slots[11] != null && slots[12] != null && slots[13] != null)
if(slots[0].getItem() == ModItems.cell_sas3 &&
slots[1].getItem() == ModItems.cell_sas3 &&
slots[2].getItem() == ModItems.rod_quad_uranium &&
slots[3].getItem() == ModItems.rod_quad_uranium &&
slots[4].getItem() == ModItems.rod_quad_lead &&
slots[5].getItem() == ModItems.rod_quad_lead &&
slots[6].getItem() == ModItems.rod_quad_neptunium &&
slots[7].getItem() == ModItems.rod_quad_neptunium &&
slots[8].getItem() == ModItems.rod_quad_lead &&
slots[9].getItem() == ModItems.rod_quad_lead &&
slots[10].getItem() == ModItems.rod_quad_uranium &&
slots[11].getItem() == ModItems.rod_quad_uranium &&
slots[2].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.URANIUM.ordinal())) &&
slots[3].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.URANIUM.ordinal())) &&
slots[4].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.LEAD.ordinal())) &&
slots[5].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.LEAD.ordinal())) &&
slots[6].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.NP237.ordinal())) &&
slots[7].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.NP237.ordinal())) &&
slots[8].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.LEAD.ordinal())) &&
slots[9].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.LEAD.ordinal())) &&
slots[10].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.URANIUM.ordinal())) &&
slots[11].isItemEqual(new ItemStack(ModItems.rod_quad, 1, BreedingRodType.URANIUM.ordinal())) &&
slots[12].getItem() == ModItems.cell_sas3 &&
slots[13].getItem() == ModItems.cell_sas3)
{

View File

@ -6,6 +6,7 @@ import com.hbm.lib.Library;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
@ -103,7 +104,7 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve
switch(i)
{
case 1:
if(stack.getItem() == ModItems.rod_water || stack.getItem() == ModItems.rod_dual_water || stack.getItem() == ModItems.rod_quad_water || stack.getItem() == Items.water_bucket)
if(stack.getItem() == Items.water_bucket)
return true;
break;
case 2:
@ -283,30 +284,6 @@ public class TileEntityMachineDeuterium extends TileEntity implements ISidedInve
}
}
if (slots[1] != null && slots[1].getItem() == ModItems.rod_water && water + 250 <= maxFill) {
water += 250;
slots[1].stackSize--;
if (slots[1].stackSize == 0) {
this.slots[1] = this.slots[1].getItem().getContainerItem(this.slots[1]);
}
}
if (slots[1] != null && slots[1].getItem() == ModItems.rod_dual_water && water + 500 <= maxFill) {
water += 500;
slots[1].stackSize--;
if (slots[1].stackSize == 0) {
this.slots[1] = this.slots[1].getItem().getContainerItem(this.slots[1]);
}
}
if (slots[1] != null && slots[1].getItem() == ModItems.rod_quad_water && water + 1000 <= maxFill) {
water += 1000;
slots[1].stackSize--;
if (slots[1].stackSize == 0) {
this.slots[1] = this.slots[1].getItem().getContainerItem(this.slots[1]);
}
}
if (slots[1] != null && slots[1].getItem() == ModItems.inf_water) {
water = maxFill;
}

View File

@ -131,10 +131,10 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve
if(itemStack.getItem() instanceof ItemFuelRod)
return true;
if(i == 9)
if(itemStack.getItem() == ModItems.rod_water || itemStack.getItem() == ModItems.rod_dual_water || itemStack.getItem() == ModItems.rod_quad_water || itemStack.getItem() == Items.water_bucket)
if(itemStack.getItem() == Items.water_bucket)
return true;
if(i == 10)
if(itemStack.getItem() == ModItems.rod_coolant || itemStack.getItem() == ModItems.rod_dual_coolant || itemStack.getItem() == ModItems.rod_quad_coolant)
if(itemStack.getItem() == ModItems.fluid_tank_full)
return true;
if(i == 11)
if(itemStack.getItem() instanceof IBatteryItem)

View File

@ -5,7 +5,9 @@ import java.util.HashMap;
import com.hbm.blocks.machine.MachineNukeFurnace;
import com.hbm.inventory.RecipesCommon.ComparableStack;
import com.hbm.inventory.recipes.BreederRecipes;
import com.hbm.inventory.recipes.BreederRecipes.BreederRecipe;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBreedingRod.*;
import com.hbm.items.special.ItemCustomLore;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.ISidedInventory;
@ -22,7 +24,7 @@ public class TileEntityNukeFurnace extends TileEntity implements ISidedInventory
public int dualCookTime;
public int dualPower;
public static final int maxPower = 1000;
public static final int processingSpeed = 30;
public static final int processingSpeed = 25;
private static final int[] slots_top = new int[] {1};
private static final int[] slots_bottom = new int[] {2, 0};
@ -114,12 +116,9 @@ public class TileEntityNukeFurnace extends TileEntity implements ISidedInventory
return 0;
} else {
int[] power = getFuelValue(stack);
int power = getFuelValue(stack);
if(power == null)
return 0;
return power[0] * power[1] * 5;
return power;
}
}
@ -350,7 +349,7 @@ public class TileEntityNukeFurnace extends TileEntity implements ISidedInventory
}
}
private static HashMap<ComparableStack, int[]> fuels = new HashMap();
private static HashMap<ComparableStack, Integer> fuels = new HashMap();
//for the int array: [0] => level (1-4) [1] => amount of operations
/*
@ -359,57 +358,22 @@ public class TileEntityNukeFurnace extends TileEntity implements ISidedInventory
* Who even uses this furnace? Nobody, but it's better then removing it without prior approval
*/
public static void registerFuels() {
fuels.put(new ComparableStack(ModItems.rod_u233), new int[] {2, 2});
fuels.put(new ComparableStack(ModItems.rod_dual_u233), new int[] {2, 4});
fuels.put(new ComparableStack(ModItems.rod_quad_u233), new int[] {2, 8});
fuels.put(new ComparableStack(ModItems.rod_u235), new int[] {2, 3});
fuels.put(new ComparableStack(ModItems.rod_dual_u235), new int[] {2, 6});
fuels.put(new ComparableStack(ModItems.rod_quad_u235), new int[] {2, 12});
fuels.put(new ComparableStack(ModItems.rod_u238), new int[] {1, 1});
fuels.put(new ComparableStack(ModItems.rod_dual_u238), new int[] {1, 2});
fuels.put(new ComparableStack(ModItems.rod_quad_u238), new int[] {1, 4});
fuels.put(new ComparableStack(ModItems.rod_neptunium), new int[] {2, 3});
fuels.put(new ComparableStack(ModItems.rod_dual_neptunium), new int[] {2, 6});
fuels.put(new ComparableStack(ModItems.rod_quad_neptunium), new int[] {2, 12});
fuels.put(new ComparableStack(ModItems.rod_pu238), new int[] {1, 2});
fuels.put(new ComparableStack(ModItems.rod_dual_pu238), new int[] {1, 4});
fuels.put(new ComparableStack(ModItems.rod_quad_pu238), new int[] {1, 8});
fuels.put(new ComparableStack(ModItems.rod_pu239), new int[] {3, 5});
fuels.put(new ComparableStack(ModItems.rod_dual_pu239), new int[] {3, 10});
fuels.put(new ComparableStack(ModItems.rod_quad_pu239), new int[] {3, 20});
fuels.put(new ComparableStack(ModItems.rod_pu240), new int[] {1, 2});
fuels.put(new ComparableStack(ModItems.rod_dual_pu240), new int[] {1, 4});
fuels.put(new ComparableStack(ModItems.rod_quad_pu240), new int[] {1, 8});
fuels.put(new ComparableStack(ModItems.rod_schrabidium), new int[] {3, 10});
fuels.put(new ComparableStack(ModItems.rod_dual_schrabidium), new int[] {3, 20});
fuels.put(new ComparableStack(ModItems.rod_quad_schrabidium), new int[] {3, 40});
fuels.put(new ComparableStack(ModItems.rod_solinium), new int[] {3, 15});
fuels.put(new ComparableStack(ModItems.rod_dual_solinium), new int[] {3, 30});
fuels.put(new ComparableStack(ModItems.rod_quad_solinium), new int[] {3, 60});
fuels.put(new ComparableStack(ModItems.rod_polonium), new int[] {4, 2});
fuels.put(new ComparableStack(ModItems.rod_dual_polonium), new int[] {4, 4});
fuels.put(new ComparableStack(ModItems.rod_quad_polonium), new int[] {4, 8});
fuels.put(new ComparableStack(ModItems.rod_tritium), new int[] {1, 1});
fuels.put(new ComparableStack(ModItems.rod_dual_tritium), new int[] {1, 2});
fuels.put(new ComparableStack(ModItems.rod_quad_tritium), new int[] {1, 4});
fuels.put(new ComparableStack(ModItems.rod_balefire), new int[] {2, 150});
fuels.put(new ComparableStack(ModItems.rod_dual_balefire), new int[] {2, 300});
fuels.put(new ComparableStack(ModItems.rod_quad_balefire), new int[] {2, 600});
fuels.put(new ComparableStack(ModItems.rod_balefire_blazing), new int[] {4, 75});
fuels.put(new ComparableStack(ModItems.rod_dual_balefire_blazing), new int[] {4, 150});
fuels.put(new ComparableStack(ModItems.rod_quad_balefire_blazing), new int[] {4, 300});
setRecipe(BreedingRodType.TRITIUM, 5);
setRecipe(BreedingRodType.CO60, 10);
setRecipe(BreedingRodType.THF, 30);
setRecipe(BreedingRodType.U235, 50);
setRecipe(BreedingRodType.NP237, 30);
setRecipe(BreedingRodType.PU238, 20);
setRecipe(BreedingRodType.PU239, 50);
setRecipe(BreedingRodType.RGP, 30);
setRecipe(BreedingRodType.WASTE, 20);
}
/** Sets power for single, dual, and quad rods **/
public static void setRecipe(BreedingRodType type, int power) {
fuels.put(new ComparableStack(new ItemStack(ModItems.rod, 1, type.ordinal())), power);
fuels.put(new ComparableStack(new ItemStack(ModItems.rod_dual, 1, type.ordinal())), power * 2);
fuels.put(new ComparableStack(new ItemStack(ModItems.rod_quad, 1, type.ordinal())), power * 4);
}
/**
@ -417,14 +381,15 @@ public class TileEntityNukeFurnace extends TileEntity implements ISidedInventory
* @param stack
* @return an integer array (possibly null) with two fields, the HEAT value and the amount of operations
*/
public static int[] getFuelValue(ItemStack stack) {
public static int getFuelValue(ItemStack stack) {
if(stack == null)
return null;
return 0;
ComparableStack sta = new ComparableStack(stack);
int[] ret = fuels.get(sta);
ComparableStack sta = new ComparableStack(stack).makeSingular();
if(fuels.get(sta) != null)
return fuels.get(sta);
return ret;
return 0;
}
}

View File

@ -1,9 +1,14 @@
package com.hbm.tileentity.machine;
import com.hbm.blocks.ModBlocks;
import com.hbm.blocks.machine.ReactorResearch;
import com.hbm.interfaces.IControlReceiver;
import com.hbm.items.ModItems;
import com.hbm.packet.NBTControlPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.TEControlPacket;
import com.hbm.tileentity.TileEntityMachineBase;
import com.hbm.tileentity.machine.rbmk.TileEntityRBMKControlAuto.RBMKFunction;
import com.hbm.tileentity.machine.rbmk.TileEntityRBMKControlManual.RBMKColor;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import net.minecraft.block.Block;
@ -14,111 +19,20 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.util.Vec3;
public class TileEntityReactorControl extends TileEntity implements ISidedInventory {
public class TileEntityReactorControl extends TileEntityMachineBase implements IControlReceiver {
private ItemStack slots[];
private static final int[] slots_top = new int[] {0};
private static final int[] slots_bottom = new int[] {0};
private static final int[] slots_side = new int[] {0};
private String customName;
private static final int[] slots_io = new int[] {0};
public TileEntityReactorControl() {
slots = new ItemStack[1];
}
@Override
public int getSizeInventory() {
return slots.length;
}
@Override
public ItemStack getStackInSlot(int i) {
return slots[i];
}
@Override
public ItemStack getStackInSlotOnClosing(int i) {
if(slots[i] != null)
{
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
} else {
return null;
}
}
@Override
public void setInventorySlotContents(int i, ItemStack itemStack) {
slots[i] = itemStack;
if(itemStack != null && itemStack.stackSize > getInventoryStackLimit())
{
itemStack.stackSize = getInventoryStackLimit();
}
}
@Override
public String getInventoryName() {
return this.hasCustomInventoryName() ? this.customName : "container.reactorControl";
}
@Override
public boolean hasCustomInventoryName() {
return this.customName != null && this.customName.length() > 0;
}
public void setCustomName(String name) {
this.customName = name;
}
@Override
public int getInventoryStackLimit() {
return 64;
}
@Override
public boolean isUseableByPlayer(EntityPlayer player) {
if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this)
{
return false;
}else{
return player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <=64;
}
super(1);
}
@Override
public void openInventory() {}
@Override
public void closeInventory() {}
@Override
public boolean isItemValidForSlot(int i, ItemStack stack) {
return false;
}
@Override
public ItemStack decrStackSize(int i, int j) {
if(slots[i] != null)
{
if(slots[i].stackSize <= j)
{
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
}
ItemStack itemStack1 = slots[i].splitStack(j);
if (slots[i].stackSize == 0)
{
slots[i] = null;
}
return itemStack1;
} else {
return null;
}
public String getName() {
return "container.reactorControl";
}
@Override
@ -126,9 +40,12 @@ public class TileEntityReactorControl extends TileEntity implements ISidedInvent
super.readFromNBT(nbt);
NBTTagList list = nbt.getTagList("items", 10);
redstoned = nbt.getBoolean("red");
auto = nbt.getBoolean("auto");
lastRods = nbt.getInteger("lastRods");
isLinked = nbt.getBoolean("isLinked");
levelLower = nbt.getDouble("levelLower");
levelUpper = nbt.getDouble("levelUpper");
heatLower = nbt.getDouble("heatLower");
heatUpper = nbt.getDouble("heatUpper");
function = RodFunction.values()[nbt.getInteger("function")];
slots = new ItemStack[getSizeInventory()];
@ -148,9 +65,13 @@ public class TileEntityReactorControl extends TileEntity implements ISidedInvent
super.writeToNBT(nbt);
NBTTagList list = new NBTTagList();
nbt.setBoolean("red", redstoned);
nbt.setBoolean("auto", auto);
nbt.setInteger("lastRods", lastRods);
nbt.setBoolean("isLinked", isLinked);
nbt.setDouble("levelLower", levelLower);
nbt.setDouble("levelUpper", levelUpper);
nbt.setDouble("heatLower", heatLower);
nbt.setDouble("heatUpper", heatUpper);
nbt.setInteger("function", function.ordinal());
for(int i = 0; i < slots.length; i++)
{
@ -165,27 +86,153 @@ public class TileEntityReactorControl extends TileEntity implements ISidedInvent
nbt.setTag("items", list);
}
public TileEntityReactorResearch reactor;
public boolean isLinked;
public int heat;
public double levelLower;
public double levelUpper;
public double heatLower;
public double heatUpper;
public RodFunction function = RodFunction.LINEAR;
//TODO: Remove all large reactor functionality for this
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_)
{
return p_94128_1_ == 0 ? slots_bottom : (p_94128_1_ == 1 ? slots_top : slots_side);
}
public void updateEntity() {
if(!worldObj.isRemote) {
isLinked = establishLink();
if(isLinked) {
this.heat = reactor.heat;
double fauxLevel = 0;
@Override
public boolean canInsertItem(int i, ItemStack itemStack, int j) {
return false;
double lowerBound = Math.min(this.heatLower, this.heatUpper);
double upperBound = Math.max(this.heatLower, this.heatUpper);
if(this.heat < lowerBound) {
fauxLevel = this.levelLower;
} else if(this.heat > upperBound) {
fauxLevel = this.levelUpper;
} else {
switch(this.function) {
case LINEAR:
fauxLevel = (this.heat - this.heatLower) * ((this.levelUpper - this.levelLower) / (this.heatUpper - this.heatLower)) + this.levelLower;
break;
case QUAD:
fauxLevel = Math.pow((this.heat - this.heatLower) / (this.heatUpper - this.heatLower), 2) * (this.levelUpper - this.levelLower) + this.levelLower;
break;
case LOG:
fauxLevel = Math.pow((this.heat - this.heatUpper) / (this.heatLower - this.heatUpper), 2) * (this.levelLower - this.levelUpper) + this.levelUpper;
break;
default:
break;
}
}
double level = MathHelper.clamp_double((fauxLevel * 0.01D), 0D, 1D);
NBTTagCompound control = new NBTTagCompound();
control.setDouble("level", level);
PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(control, reactor.xCoord, reactor.yCoord, reactor.zCoord));
}
NBTTagCompound data = new NBTTagCompound();
data.setInteger("heat", heat);
data.setBoolean("isLinked", isLinked);
data.setDouble("levelLower", levelLower);
data.setDouble("levelUpper", levelUpper);
data.setDouble("heatLower", heatLower);
data.setDouble("heatUpper", heatUpper);
data.setInteger("function", function.ordinal());
this.networkPack(data, 150);
}
}
public void networkUnpack(NBTTagCompound data) {
this.heat = data.getInteger("heat");
isLinked = data.getBoolean("isLinked");
levelLower = data.getDouble("levelLower");
levelUpper = data.getDouble("levelUpper");
heatLower = data.getDouble("heatLower");
heatUpper = data.getDouble("heatUpper");
function = RodFunction.values()[data.getInteger("function")];
}
private boolean establishLink() {
if(slots[0] != null && slots[0].getItem() == ModItems.reactor_sensor && slots[0].stackTagCompound != null) {
int xCoord = slots[0].stackTagCompound.getInteger("x");
int yCoord = slots[0].stackTagCompound.getInteger("y");
int zCoord = slots[0].stackTagCompound.getInteger("z");
Block b = worldObj.getBlock(xCoord, yCoord, zCoord);
if(b == ModBlocks.reactor_research) {
int[] pos = ((ReactorResearch) ModBlocks.reactor_research).findCore(worldObj, xCoord, yCoord, zCoord);
if(pos != null) {
@Override
public boolean canExtractItem(int i, ItemStack itemStack, int j) {
TileEntity tile = worldObj.getTileEntity(pos[0], pos[1], pos[2]);
if(tile instanceof TileEntityReactorResearch) {
reactor = (TileEntityReactorResearch) tile;
return true;
}
}
}
}
return false;
}
public int linkX;
public int linkY;
public int linkZ;
public int[] getDisplayData() {
if(reactor != null) {
int[] data = new int[3];
data[0] = (int) reactor.level * 100;
data[1] = reactor.totalFlux;
data[2] = (int) Math.round((this.heat) * 0.00002 * 980 + 20);
return data;
} else {
return new int[] { 0, 0, 0 };
}
}
public int hullHeat;
@Override
public void receiveControl(NBTTagCompound data) {
if(data.hasKey("function")) {
this.function = RodFunction.values()[data.getInteger("function")];
} else {
this.levelLower = data.getDouble("levelLower");
this.levelUpper = data.getDouble("levelUpper");
this.heatLower = data.getDouble("heatLower");
this.heatUpper = data.getDouble("heatUpper");
}
this.markDirty();
}
@Override
public boolean hasPermission(EntityPlayer player) {
return Vec3.createVectorHelper(xCoord - player.posX, yCoord - player.posY, zCoord - player.posZ).lengthVector() < 20;
}
public enum RodFunction {
LINEAR,
QUAD,
LOG
}
/*public int hullHeat;
public int coreHeat;
public int fuel;
public int water;
@ -199,14 +246,14 @@ public class TileEntityReactorControl extends TileEntity implements ISidedInvent
public int maxRods;
public boolean isOn;
public boolean auto;
public boolean isLinked;
public boolean isLinkd;
public boolean redstoned;
private int lastRods = 100;
private int lastRods = 100;*/
@Override
/*@Override
public void updateEntity() {
/*if(!worldObj.isRemote)
if(!worldObj.isRemote)
{
if(slots[0] != null && slots[0].getItem() == ModItems.reactor_sensor &&
slots[0].stackTagCompound != null)
@ -352,6 +399,6 @@ public class TileEntityReactorControl extends TileEntity implements ISidedInvent
}
PacketDispatcher.wrapper.sendToAllAround(new TEControlPacket(xCoord, yCoord, zCoord, hullHeat, coreHeat, fuel, water, cool, steam, maxWater, maxCool, maxSteam, compression, rods, maxRods, isOn, auto, isLinked), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 30));
}*/
}
}
}*/
}

View File

@ -48,6 +48,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
public double targetLevel;
public int heat;
public byte water;
public final int maxHeat = 50000;
public int[] slotFlux = new int[12];
public int totalFlux = 0;
@ -84,6 +85,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
public void readFromNBT(NBTTagCompound nbt) {
super.readFromNBT(nbt);
heat = nbt.getInteger("heat");
water = nbt.getByte("water");
level = nbt.getDouble("level");
targetLevel = nbt.getDouble("targetLevel");
}
@ -92,6 +94,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
public void writeToNBT(NBTTagCompound nbt) {
super.writeToNBT(nbt);
nbt.setInteger("heat", heat);
nbt.setByte("water", water);
nbt.setDouble("level", level);
nbt.setDouble("targetLevel", targetLevel);
}
@ -122,11 +125,9 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
if(level > 0) {
reaction();
}
//getInteractions();
if(this.heat > 0) {
byte water = getWater();
water = getWater();
if(water > 0) {
this.heat -= (this.heat * (float) 0.07 * water / 12);
@ -142,7 +143,6 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
this.explode();
}
//change to 3D rad like demon-core
if(level > 0 && heat > 0 && !(blocksRad(xCoord + 1, yCoord + 1, zCoord) && blocksRad(xCoord - 1, yCoord + 1, zCoord) && blocksRad(xCoord, yCoord + 1, zCoord + 1) && blocksRad(xCoord, yCoord + 1, zCoord - 1))) {
float rad = (float) heat / (float) maxHeat * 50F;
ChunkRadiationManager.proxy.incrementRad(worldObj, xCoord, yCoord, zCoord, rad);
@ -150,6 +150,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
NBTTagCompound data = new NBTTagCompound();
data.setInteger("heat", heat);
data.setByte("water", water);
data.setDouble("level", level);
data.setDouble("targetLevel", targetLevel);
data.setIntArray("slotFlux", slotFlux);
@ -160,13 +161,14 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
public void networkUnpack(NBTTagCompound data) {
this.heat = data.getInteger("heat");
this.water = data.getByte("water");
this.level = data.getDouble("level");
this.targetLevel = data.getDouble("targetLevel");
this.slotFlux = data.getIntArray("slotFlux");
this.totalFlux = data.getInteger("totalFlux");
}
private byte getWater() {
public byte getWater() {
byte water = 0;
for(byte d = 0; d < 6; d++) {
@ -332,9 +334,6 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
public void receiveControl(NBTTagCompound data) {
if(data.hasKey("level")) {
this.setTarget(data.getDouble("level"));
if(targetLevel != level)
this.worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, "hbm:block.reactorStop", 1.0F, 1.0F);
}
this.markDirty();

View File

@ -908,6 +908,7 @@ item.billet_balefire_gold.name=Flashgold Billet
item.billet_beryllium.name=Beryllium Billet
item.billet_bismuth.name=Bismuth Billet
item.billet_co60.name=Cobalt-60 Billet
item.billet_cobalt.name=Cobalt Billet
item.billet_hes.name=Highly Enriched Schrabidium Fuel Billet
item.billet_les.name=Low Enriched Schrabidium Fuel Billet
item.billet_mox_fuel.name=MOX Fuel Billet
@ -2045,6 +2046,7 @@ item.nugget_australium_lesser.name=Lesser Australium Nugget
item.nugget_beryllium.name=Beryllium Nugget
item.nugget_bismuth.name=Bismuth Nugget
item.nugget_co60.name=Cobalt-60 Nugget
item.nugget_cobalt.name=Cobalt Nugget
item.nugget_daffergon.name=Daffergon Nugget
item.nugget_desh.name=Desh Nugget
item.nugget_dineutronium.name=Dineutronium Nugget

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B