This commit is contained in:
Vaern 2022-01-01 14:15:42 -08:00
parent 2f9abdf00f
commit 26e1c36dac
15 changed files with 72 additions and 14 deletions

View File

@ -226,12 +226,14 @@ public class HazardRegistry {
registerOtherFuel(plate_fuel_mox, mox * ingot, mox * ingot * 100);
registerOtherFuel(plate_fuel_pu239, pu239 * ingot, pu239 * ingot * 100);
registerOtherFuel(plate_fuel_sa326, sa326 * ingot, sa326 * ingot * 100);
registerOtherFuel(plate_fuel_ra226be, rabe * ingot, rabe * ingot * 100);
registerOtherWaste(waste_plate_u233, u233 * ingot * 100);
registerOtherWaste(waste_plate_u235, u235 * ingot * 100);
registerOtherWaste(waste_plate_mox, mox * ingot * 100);
registerOtherWaste(waste_plate_pu239, pu239 * ingot * 100);
registerOtherWaste(waste_plate_sa326, sa326 * ingot * 100);
registerOtherWaste(waste_plate_ra226be, rabe * ingot * 100);
HazardSystem.register(debris_graphite, new HazardData().addEntry(RADIATION, 70F).addEntry(HOT, 5F));
HazardSystem.register(debris_metal, makeData(RADIATION, 5F));

View File

@ -47,7 +47,7 @@ public class ContainerMachineReactorBreeding extends Container {
return null;
}
} else if (!this.mergeItemStack(stack, 1, 2, false)) {
} else if (!this.mergeItemStack(stack, 0, 1, false)) {
return null;
}

View File

@ -20,12 +20,12 @@ private TileEntityReactorResearch reactor;
this.addSlotToContainer(new Slot(tedf, 0, 95, 22));
this.addSlotToContainer(new Slot(tedf, 1, 131, 22));
this.addSlotToContainer(new Slot(tedf, 2, 77, 40));
this.addSlotToContainer(new Slot(tedf, 3, 112, 40));
this.addSlotToContainer(new Slot(tedf, 3, 113, 40));
this.addSlotToContainer(new Slot(tedf, 4, 149, 40));
this.addSlotToContainer(new Slot(tedf, 5, 95, 58));
this.addSlotToContainer(new Slot(tedf, 6, 131, 58));
this.addSlotToContainer(new Slot(tedf, 7, 77, 76));
this.addSlotToContainer(new Slot(tedf, 8, 112, 76));
this.addSlotToContainer(new Slot(tedf, 8, 113, 76));
this.addSlotToContainer(new Slot(tedf, 9, 149, 76));
this.addSlotToContainer(new Slot(tedf, 10, 95, 94));
this.addSlotToContainer(new Slot(tedf, 11, 131, 94));

View File

@ -114,6 +114,9 @@ public class GUIReactorResearch extends GuiInfoContainer {
for(int x = 0; x < 3; x++)
for(int y = 0; y < 3; y++)
drawTexturedModalRect(guiLeft + 81 + 36 * x, guiTop + 26 + 36 * y, 176, 0, 8, 8);
for(int x = 0; x < 2; x++)
for(int y = 0; y < 2; y++)
drawTexturedModalRect(guiLeft + 99 + 36 * x, guiTop + 44 + 36 * y, 176, 0, 8, 8);
}
if(timer > 0) {

View File

@ -55,7 +55,7 @@ public class CentrifugeRecipes {
recipes.put(new ComparableStack(ModItems.waste_u233), new ItemStack[] {
new ItemStack(ModItems.nugget_u235, 1),
new ItemStack(ModItems.nugget_u235, 1),
new ItemStack(ModItems.nugget_neptunium, 1),
new ItemStack(ModItems.nugget_technetium, 1),
new ItemStack(ModItems.nuclear_waste_tiny, 3) });
@ -71,6 +71,42 @@ public class CentrifugeRecipes {
new ItemStack(ModItems.nuclear_waste_tiny, 2),
new ItemStack(ModItems.nuclear_waste_tiny, 2) });
recipes.put(new ComparableStack(ModItems.waste_plate_mox), new ItemStack[] {
new ItemStack(ModItems.nugget_technetium, 1), //strontium-90 here
new ItemStack(ModItems.nugget_pu_mix, 3),
new ItemStack(ModItems.powder_cs137_tiny, 1),
new ItemStack(ModItems.nuclear_waste_tiny, 4) });
recipes.put(new ComparableStack(ModItems.waste_plate_pu239), new ItemStack[] {
new ItemStack(ModItems.nugget_pu240),
new ItemStack(ModItems.nugget_technetium, 1),
new ItemStack(ModItems.powder_cs137_tiny, 2),
new ItemStack(ModItems.nuclear_waste_tiny, 2) });
recipes.put(new ComparableStack(ModItems.waste_plate_ra226be), new ItemStack[] {
new ItemStack(ModItems.nugget_beryllium, 2),
new ItemStack(ModItems.nugget_polonium, 3),
new ItemStack(ModItems.powder_coal_tiny, 2),
new ItemStack(ModItems.nugget_lead, 2) });
recipes.put(new ComparableStack(ModItems.waste_plate_sa326), new ItemStack[] {
new ItemStack(ModItems.nugget_solinium, 1),
new ItemStack(ModItems.powder_neodymium_tiny,1),
new ItemStack(ModItems.nugget_tantalium, 1),
new ItemStack(ModItems.nuclear_waste_tiny, 6) });
recipes.put(new ComparableStack(ModItems.waste_plate_u233), new ItemStack[] {
new ItemStack(ModItems.nugget_u235, 1),
new ItemStack(ModItems.powder_i131_tiny, 1),
new ItemStack(ModItems.nugget_technetium, 1), //strontium-90 here
new ItemStack(ModItems.nuclear_waste_tiny, 6) });
recipes.put(new ComparableStack(ModItems.waste_plate_u235), new ItemStack[] {
new ItemStack(ModItems.nugget_neptunium, 1),
new ItemStack(ModItems.nugget_pu238, 1),
new ItemStack(ModItems.nugget_technetium, 1),
new ItemStack(ModItems.nuclear_waste_tiny, 6) });
recipes.put(new ComparableStack(ModItems.powder_cloud), new ItemStack[] {
new ItemStack(ModItems.powder_copper, 1),
new ItemStack(ModItems.sulfur, 1),

View File

@ -25,5 +25,6 @@ public class FuelPoolRecipes {
recipes.put(new ComparableStack(new ItemStack(ModItems.waste_plate_mox, 1, 1)), new ItemStack(ModItems.waste_plate_mox));
recipes.put(new ComparableStack(new ItemStack(ModItems.waste_plate_pu239, 1, 1)), new ItemStack(ModItems.waste_plate_pu239));
recipes.put(new ComparableStack(new ItemStack(ModItems.waste_plate_sa326, 1, 1)), new ItemStack(ModItems.waste_plate_sa326));
recipes.put(new ComparableStack(new ItemStack(ModItems.waste_plate_ra226be, 1, 1)), new ItemStack(ModItems.waste_plate_ra226be));
}
}

View File

@ -259,6 +259,7 @@ public class AnvilRecipes {
constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModItems.ingot_mox_fuel, 1), new AnvilOutput(new ItemStack(ModItems.plate_fuel_mox))).setTier(4));
constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModItems.ingot_pu239, 1), new AnvilOutput(new ItemStack(ModItems.plate_fuel_pu239))).setTier(4));
constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModItems.ingot_schrabidium, 1), new AnvilOutput(new ItemStack(ModItems.plate_fuel_sa326))).setTier(4));
constructionRecipes.add(new AnvilConstructionRecipe(new ComparableStack(ModItems.billet_ra226be, 1), new AnvilOutput(new ItemStack(ModItems.plate_fuel_ra226be))).setTier(4));
}
public static void registerConstructionAmmo() {

View File

@ -1057,6 +1057,7 @@ public class ModItems {
public static Item waste_plate_u235;
public static Item waste_plate_mox;
public static Item waste_plate_pu239;
public static Item waste_plate_ra226be;
public static Item waste_plate_sa326;
public static Item pile_rod_uranium;
@ -1068,6 +1069,7 @@ public class ModItems {
public static Item plate_fuel_u235;
public static Item plate_fuel_mox;
public static Item plate_fuel_pu239;
public static Item plate_fuel_ra226be;
public static Item plate_fuel_sa326;
public static Item rbmk_lid;
@ -3565,6 +3567,7 @@ public class ModItems {
waste_plate_u235 = new ItemDepletedFuel().setUnlocalizedName("waste_plate_u235").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":waste_plate_uranium");
waste_plate_mox = new ItemDepletedFuel().setUnlocalizedName("waste_plate_mox").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":waste_plate_mox");
waste_plate_pu239 = new ItemDepletedFuel().setUnlocalizedName("waste_plate_pu239").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":waste_plate_mox");
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");
@ -3592,6 +3595,7 @@ public class ModItems {
plate_fuel_u235 = new ItemPlateFuel(2200000).setFunction(FunctionEnum.SQUARE_ROOT, 40).setUnlocalizedName("plate_fuel_u235").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":plate_fuel_u235");
plate_fuel_mox = new ItemPlateFuel(2400000).setFunction(FunctionEnum.LOGARITHM, 50).setUnlocalizedName("plate_fuel_mox").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":plate_fuel_mox");
plate_fuel_pu239 = new ItemPlateFuel(2000000).setFunction(FunctionEnum.NEGATIVE_QUADRATIC, 25).setUnlocalizedName("plate_fuel_pu239").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":plate_fuel_pu239");
plate_fuel_ra226be = new ItemPlateFuel(1300000).setFunction(FunctionEnum.PASSIVE, 30).setUnlocalizedName("plate_fuel_ra226be").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":plate_fuel_ra226be");
plate_fuel_sa326 = new ItemPlateFuel(2000000).setFunction(FunctionEnum.LINEAR, 60).setUnlocalizedName("plate_fuel_sa326").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":plate_fuel_sa326");
rbmk_lid = new ItemRBMKLid().setUnlocalizedName("rbmk_lid").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_lid");
@ -6673,6 +6677,7 @@ public class ModItems {
GameRegistry.registerItem(waste_plate_u235, waste_plate_u235.getUnlocalizedName());
GameRegistry.registerItem(waste_plate_mox, waste_plate_mox.getUnlocalizedName());
GameRegistry.registerItem(waste_plate_pu239, waste_plate_pu239.getUnlocalizedName());
GameRegistry.registerItem(waste_plate_ra226be, waste_plate_ra226be.getUnlocalizedName());
GameRegistry.registerItem(waste_plate_sa326, waste_plate_sa326.getUnlocalizedName());
//Pile parts
@ -6686,6 +6691,7 @@ public class ModItems {
GameRegistry.registerItem(plate_fuel_u235, plate_fuel_u235.getUnlocalizedName());
GameRegistry.registerItem(plate_fuel_mox, plate_fuel_mox.getUnlocalizedName());
GameRegistry.registerItem(plate_fuel_pu239, plate_fuel_pu239.getUnlocalizedName());
GameRegistry.registerItem(plate_fuel_ra226be, plate_fuel_ra226be.getUnlocalizedName());
GameRegistry.registerItem(plate_fuel_sa326, plate_fuel_sa326.getUnlocalizedName());
//RBMK parts

View File

@ -41,29 +41,35 @@ public class ItemPlateFuel extends ItemFuelRod {
LOGARITHM(),
SQUARE_ROOT(),
NEGATIVE_QUADRATIC(),
LINEAR();
LINEAR(),
PASSIVE();
private FunctionEnum() { }
}
public String getFunctionDesc() {
switch(this.function) {
case LOGARITHM: return "log10(x + 1) * 0.5 * " + reactivity;
case SQUARE_ROOT: return "sqrt(x) * " + reactivity + " / 10";
case NEGATIVE_QUADRATIC: return "[x - (x² / 10000)] / 100 * " + reactivity;
case LINEAR: return "x / 100 * " + reactivity;
case LOGARITHM: return "f(x) = log10(x + 1) * 0.5 * " + reactivity;
case SQUARE_ROOT: return "f(x) = sqrt(x) * " + reactivity + " / 10";
case NEGATIVE_QUADRATIC: return "f(x) = [x - (x² / 10000)] / 100 * " + reactivity;
case LINEAR: return "f(x) = x / 100 * " + reactivity;
case PASSIVE: return "f(x) = " + reactivity;
default: return "x";
}
}
public int react(World world, ItemStack stack, int flux) {
setLifeTime(stack, getLifeTime(stack) + flux);
if(this.function != FunctionEnum.PASSIVE)
setLifeTime(stack, getLifeTime(stack) + flux);
switch(this.function) {
case LOGARITHM: return (int) (Math.log10(flux + 1) * 0.5D * reactivity);
case SQUARE_ROOT: return (int) (Math.sqrt(flux) * this.reactivity / 10);
case NEGATIVE_QUADRATIC: return (int) (Math.max(flux - (flux * flux / 10000) / 100 * reactivity, 0));
case LINEAR: return (int) (flux / 100 * reactivity);
case PASSIVE:
setLifeTime(stack, getLifeTime(stack) + reactivity);
return reactivity;
default: return 0;
}
}

View File

@ -40,7 +40,7 @@ public class TileEntityMachineReactorBreeding extends TileEntityMachineBase {
if(canProcess()) {
progress += 0.005F * (this.flux / BreederRecipes.getOutput(slots[0]).flux);
progress += 0.0025F * (this.flux / BreederRecipes.getOutput(slots[0]).flux);
if(this.progress >= 1.0F) {
this.progress = 0F;

View File

@ -65,6 +65,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
fuelMap.put(new ComparableStack(ModItems.plate_fuel_mox), new ItemStack(ModItems.waste_plate_mox, 1, 1));
fuelMap.put(new ComparableStack(ModItems.plate_fuel_pu239), new ItemStack(ModItems.waste_plate_pu239, 1, 1));
fuelMap.put(new ComparableStack(ModItems.plate_fuel_sa326), new ItemStack(ModItems.waste_plate_sa326, 1, 1));
fuelMap.put(new ComparableStack(ModItems.plate_fuel_ra226be), new ItemStack(ModItems.waste_plate_ra226be, 1, 1));
}
public String getName() {
@ -260,7 +261,7 @@ public class TileEntityReactorResearch extends TileEntityMachineBase implements
if(slots[i].getItem() instanceof ItemPlateFuel) {
ItemPlateFuel rod = (ItemPlateFuel) slots[i].getItem();
int outFlux = rod.react(worldObj, slots[i], slotFlux[i] + 1);
int outFlux = rod.react(worldObj, slots[i], slotFlux[i]);
this.heat += outFlux * 2;
slotFlux[i] = 0;
totalFlux += outFlux;

View File

@ -2186,11 +2186,12 @@ item.plate_dalekanium.name=Angry Metal
item.plate_desh.name=Desh Compound Plate
item.plate_dineutronium.name=Dineutronium Compound Plate
item.plate_euphemium.name=Euphemium Compound Plate
item.plate_fuel_u233.name=HEU-233 Plate Fuel
item.plate_fuel_u235.name=HEU-235 Plate Fuel
item.plate_fuel_mox.name=HEMOX Plate Fuel
item.plate_fuel_pu239.name=HEP-239 Plate Fuel
item.plate_fuel_ra226be.name=Ra-226Be Plate Fuel
item.plate_fuel_sa326.name=HES-326 Plate Fuel
item.plate_fuel_u233.name=HEU-233 Plate Fuel
item.plate_fuel_u235.name=HEU-235 Plate Fuel
item.plate_gold.name=Gold Plate
item.plate_iron.name=Iron Plate
item.plate_kevlar.name=Kevlar-Ceramic Compound
@ -2794,6 +2795,7 @@ item.waste_mox.name=Depleted MOX Fuel
item.waste_natural_uranium.name=Depleted Natural Uranium Fuel
item.waste_plate_mox.name=Depleted HEMOX Plate Fuel
item.waste_plate_pu239.name=Depleted HEP-239 Plate Fuel
item.waste_plate_ra226be.name=Depleted Ra-226Be Plate Fuel
item.waste_plate_sa326.name=Depleted HES-326 Plate Fuel
item.waste_plate_u233.name=Depleted HEU-233 Plate Fuel
item.waste_plate_u235.name=Depleted HEU-235 Plate Fuel

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 602 B