Merge remote-tracking branch 'origin/master'

This commit is contained in:
Bob 2021-11-06 18:26:40 +01:00
commit f36f8ca826
20 changed files with 98 additions and 81 deletions

View File

@ -95,8 +95,8 @@ public class FluidTypeHandler {
PLASMA_DH3 (0xFF83AA, 6, 2, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_dh3", 3480, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID),
HELIUM3 (0xFCF0C4, 7, 2, 2, 3, 4, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.helium3"),
DEATH (0x717A88, 8, 2, 2, 2, 0, 1, EnumSymbol.ACID, "hbmfluid.death", 300, FluidTrait.CORROSIVE_2);
DEATH (0x717A88, 8, 2, 2, 2, 0, 1, EnumSymbol.ACID, "hbmfluid.death", 300, FluidTrait.CORROSIVE_2),
ETHANOL (0xe0ffff, 9, 2, 2, 2, 3, 0, EnumSymbol.NONE, "hbmfluid.ethanol");
//Approximate HEX Color of the fluid, used for pipe rendering
private int color;

View File

@ -141,7 +141,7 @@ public class SILEXRecipeHandler extends TemplateRecipeHandler {
if(recipe.getKey() instanceof ItemStack) {
if (NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey()))
if (NEIServerUtils.areStacksSameTypeCrafting(ingredient, (ItemStack)recipe.getKey()))
this.arecipes.add(new RecipeSet(recipe.getKey(), recipe.getValue()));
} else if (recipe.getKey() instanceof ArrayList) {
@ -149,7 +149,7 @@ public class SILEXRecipeHandler extends TemplateRecipeHandler {
for(Object o : (ArrayList)recipe.getKey()) {
ItemStack stack = (ItemStack)o;
if (NEIServerUtils.areStacksSameType(ingredient, stack))
if (NEIServerUtils.areStacksSameTypeCrafting(ingredient, stack))
this.arecipes.add(new RecipeSet(stack, recipe.getValue()));
}
}
@ -174,12 +174,6 @@ public class SILEXRecipeHandler extends TemplateRecipeHandler {
RecipeSet rec = (RecipeSet) this.arecipes.get(recipe);
FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer;
/*int index = 0;
for(Double chance : rec.chances) {
fontRenderer.drawString(((int)(chance * 10D) / 10D) + "%", 84, 28 + index * 18 - 9 * ((rec.chances.size() + 1) / 2), 0x404040);
index++;
}*/
for(int i = 0; i < rec.chances.size(); i++) {

View File

@ -42,6 +42,7 @@ public class FluidContainerRegistry {
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_lightoil), new ItemStack(ModItems.canister_empty), FluidType.LIGHTOIL, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_kerosene), new ItemStack(ModItems.canister_empty), FluidType.KEROSENE, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_biofuel), new ItemStack(ModItems.canister_empty), FluidType.BIOFUEL, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_ethanol), new ItemStack(ModItems.canister_empty), FluidType.ETHANOL, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_gasoline), new ItemStack(ModItems.canister_empty), FluidType.GASOLINE, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_fracksol), new ItemStack(ModItems.canister_empty), FluidType.FRACKSOL, 1000));
FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_NITAN), new ItemStack(ModItems.canister_empty), FluidType.NITAN, 1000));

View File

@ -36,6 +36,7 @@ public class GUIMachineDiesel extends GuiInfoContainer {
" Diesel (500 HE/t)",
" Petroil (300 HE/t)",
" Biofuel (400 HE/t)",
" Ethanol (200 HE/t)",
" LPG (450 HE/t)",
" Hydrogen (10 HE/t)",
" Leaded Gasoline (1500 HE/t)",

View File

@ -1474,6 +1474,9 @@ public class MachineRecipes {
list.add(new ItemStack(ModItems.fluorite, 8));
list.add(new ItemStack(ModItems.nugget_bismuth, 4));
break;
case ETHANOL:
list.add(new ItemStack(ModItems.biomass, 6));
break;
default:
break;
}
@ -2033,6 +2036,9 @@ public class MachineRecipes {
case OSMIRIDIUM_DEATH:
output[0] = new FluidStack(1000, FluidType.DEATH);
break;
case ETHANOL:
output[0] = new FluidStack(1000, FluidType.ETHANOL);
break;
default:
break;
}

View File

@ -812,6 +812,7 @@ public class ModItems {
public static Item canister_naphtha;
public static Item canister_lightoil;
public static Item canister_biofuel;
public static Item canister_ethanol;
public static Item gas_empty;
public static Item gas_full;
@ -3197,6 +3198,7 @@ public class ModItems {
canister_naphtha = new ItemCustomLore().setUnlocalizedName("canister_naphtha").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_naphtha");
canister_lightoil = new ItemCustomLore().setUnlocalizedName("canister_lightoil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_lightoil");
canister_biofuel = new ItemCustomLore().setUnlocalizedName("canister_biofuel").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_biofuel");
canister_ethanol = new ItemCustomLore().setUnlocalizedName("canister_ethanol").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_ethanol");
gas_empty = new Item().setUnlocalizedName("gas_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":gas_empty");
gas_full = new Item().setUnlocalizedName("gas_full").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_full");
gas_petroleum = new Item().setUnlocalizedName("gas_petroleum").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_petroleum");
@ -6137,6 +6139,7 @@ public class ModItems {
GameRegistry.registerItem(canister_reoil, canister_reoil.getUnlocalizedName());
GameRegistry.registerItem(canister_petroil, canister_petroil.getUnlocalizedName());
GameRegistry.registerItem(canister_biofuel, canister_biofuel.getUnlocalizedName());
GameRegistry.registerItem(canister_ethanol, canister_ethanol.getUnlocalizedName());
GameRegistry.registerItem(canister_napalm, canister_napalm.getUnlocalizedName());
GameRegistry.registerItem(canister_gasoline, canister_gasoline.getUnlocalizedName());
GameRegistry.registerItem(canister_fracksol, canister_fracksol.getUnlocalizedName());

View File

@ -104,7 +104,8 @@ public class ItemChemistryTemplate extends Item {
GASOLINE,
FRACKSOL,
HELIUM3,
OSMIRIDIUM_DEATH;
OSMIRIDIUM_DEATH,
ETHANOL;
public static EnumChemistryTemplate getEnum(int i) {
if(i < EnumChemistryTemplate.values().length)
@ -306,6 +307,8 @@ public class ItemChemistryTemplate extends Item {
return 200;
case OSMIRIDIUM_DEATH:
return 240;
case ETHANOL:
return 50;
default:
return 100;
}

View File

@ -72,8 +72,8 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I
@Override
public boolean isItemValidForSlot(int i, ItemStack stack) {
switch(i)
{
switch(i) {
case 0:
if(stack.getItem() instanceof IBatteryItem)
return true;
@ -98,12 +98,10 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I
slots = new ItemStack[getSizeInventory()];
for(int i = 0; i < list.tagCount(); i++)
{
for(int i = 0; i < list.tagCount(); i++) {
NBTTagCompound nbt1 = list.getCompoundTagAt(i);
byte b0 = nbt1.getByte("slot");
if(b0 >= 0 && b0 < slots.length)
{
if(b0 >= 0 && b0 < slots.length) {
slots[b0] = ItemStack.loadItemStackFromNBT(nbt1);
}
}
@ -119,12 +117,10 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I
NBTTagList list = new NBTTagList();
for(int i = 0; i < slots.length; i++)
{
if(slots[i] != null)
{
for(int i = 0; i < slots.length; i++) {
if(slots[i] != null) {
NBTTagCompound nbt1 = new NBTTagCompound();
nbt1.setByte("slot", (byte)i);
nbt1.setByte("slot", (byte) i);
slots[i].writeToNBT(nbt1);
list.appendTag(nbt1);
}
@ -133,10 +129,9 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I
}
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_)
{
return p_94128_1_ == 0 ? slots_bottom : (p_94128_1_ == 1 ? slots_top : slots_side);
}
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
return p_94128_1_ == 0 ? slots_bottom : (p_94128_1_ == 1 ? slots_top : slots_side);
}
@Override
public boolean canInsertItem(int i, ItemStack itemStack, int j) {
@ -199,19 +194,17 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I
if(con.getPowerNet() != null && !con.getPowerNet().isSubscribed(this))
con.getPowerNet().subscribe(this);
}
}
}*/
//////////////////////////////////////////////////////////////////////
this.maxPower = ((MachineBattery)worldObj.getBlock(xCoord, yCoord, zCoord)).maxPower;*/
this.maxPower = ((MachineBattery)worldObj.getBlock(xCoord, yCoord, zCoord)).maxPower;
if(mode == 1 || mode == 2)
{
if(mode == 1 || mode == 2) {
age++;
if(age >= 20)
{
if(age >= 20) {
age = 0;
}
if(age == 9 || age == 19)
ffgeuaInit();
}

View File

@ -154,6 +154,8 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IS
return 5000;
if(type.name().equals(FluidType.LPG.name()))
return 450;
if(type.name().equals(FluidType.ETHANOL.name()))
return 200;
return 0;
}

View File

@ -1,14 +1,19 @@
package com.hbm.tileentity.machine;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import com.hbm.blocks.BlockDummyable;
import com.hbm.interfaces.IConsumer;
import com.hbm.interfaces.ISource;
import com.hbm.inventory.RecipesCommon.ComparableStack;
import com.hbm.items.ModItems;
import com.hbm.items.special.ItemWasteLong;
import com.hbm.items.special.ItemWasteShort;
import com.hbm.lib.Library;
import com.hbm.tileentity.TileEntityMachineBase;
import com.hbm.util.Tuple.Triplet;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@ -202,57 +207,45 @@ public class TileEntityMachineRadGen extends TileEntityMachineBase implements IS
return i >= 12;
}
private int getPowerFromItem(ItemStack stack) {
Item item = stack.getItem();
public static final HashMap<ComparableStack, Triplet<Integer, Integer, ItemStack>> fuels = new HashMap();
static {
if(item == ModItems.nuclear_waste_short)
return 150;
if(item == ModItems.nuclear_waste_long)
return 50;
if(item == ModItems.nuclear_waste_short_tiny)
return 15;
if(item == ModItems.nuclear_waste_long_tiny)
return 5;
if(item == ModItems.scrap_nuclear)
return 5;
for(int i = 0; i < ItemWasteShort.WasteClass.values().length; i++) {
fuels.put( new ComparableStack(ModItems.nuclear_waste_short, 1, i), new Triplet<Integer, Integer, ItemStack>(150, 30 * 60 * 20, new ItemStack(ModItems.nuclear_waste_short_depleted, 1, i)));
fuels.put( new ComparableStack(ModItems.nuclear_waste_short_tiny, 1, i), new Triplet<Integer, Integer, ItemStack>(15, 3 * 60 * 20, new ItemStack(ModItems.nuclear_waste_short_depleted_tiny, 1, i)));
}
for(int i = 0; i < ItemWasteLong.WasteClass.values().length; i++) {
fuels.put( new ComparableStack(ModItems.nuclear_waste_long, 1, i), new Triplet<Integer, Integer, ItemStack>(50, 2 * 60 * 60 * 20, new ItemStack(ModItems.nuclear_waste_long_depleted, 1, i)));
fuels.put( new ComparableStack(ModItems.nuclear_waste_long_tiny, 1, i), new Triplet<Integer, Integer, ItemStack>(5, 12 * 60 * 20, new ItemStack(ModItems.nuclear_waste_long_depleted_tiny, 1, i)));
}
return 0;
fuels.put( new ComparableStack(ModItems.scrap_nuclear), new Triplet<Integer, Integer, ItemStack>(5, 5 * 60 * 20, null));
}
private Triplet<Integer, Integer, ItemStack> grabResult(ItemStack stack) {
return fuels.get(new ComparableStack(stack).makeSingular());
}
private int getPowerFromItem(ItemStack stack) {
Triplet<Integer, Integer, ItemStack> result = grabResult(stack);
if(result == null)
return 0;
return result.getX();
}
private int getDurationFromItem(ItemStack stack) {
Item item = stack.getItem();
if(item == ModItems.nuclear_waste_short)
return 30 * 60 * 20;
if(item == ModItems.nuclear_waste_long)
return 2 * 60 * 60 * 20;
if(item == ModItems.nuclear_waste_short_tiny)
return 3 * 60 * 20;
if(item == ModItems.nuclear_waste_long_tiny)
return 12 * 60 * 20;
if(item == ModItems.scrap_nuclear)
return 5 * 60 * 20;
return 0;
Triplet<Integer, Integer, ItemStack> result = grabResult(stack);
if(result == null)
return 0;
return result.getY();
}
private ItemStack getOutputFromItem(ItemStack stack) {
Item item = stack.getItem();
if(item == ModItems.nuclear_waste_short)
return new ItemStack(ModItems.nuclear_waste_short_depleted, 1, stack.getItemDamage());
if(item == ModItems.nuclear_waste_long)
return new ItemStack(ModItems.nuclear_waste_long_depleted, 1, stack.getItemDamage());
if(item == ModItems.nuclear_waste_short_tiny)
return new ItemStack(ModItems.nuclear_waste_short_depleted_tiny, 1, stack.getItemDamage());
if(item == ModItems.nuclear_waste_long_tiny)
return new ItemStack(ModItems.nuclear_waste_long_depleted_tiny, 1, stack.getItemDamage());
return null;
Triplet<Integer, Integer, ItemStack> result = grabResult(stack);
if(result == null)
return null;
return result.getZ();
}
@Override

View File

@ -68,7 +68,7 @@ public abstract class TileEntityRBMKBase extends TileEntity implements INBTPacke
/**
* Approx melting point of steel
* This metric won't be used because fuel tends to melt much earlier than that
* Fuels often burn much hotter than this but it won't affect the column too much due to low diffusion
* @return
*/
public double maxHeat() {
@ -88,6 +88,7 @@ public abstract class TileEntityRBMKBase extends TileEntity implements INBTPacke
return true;
}
//unused
public int trackingRange() {
return 25;
}
@ -96,9 +97,17 @@ public abstract class TileEntityRBMKBase extends TileEntity implements INBTPacke
public void updateEntity() {
if(!worldObj.isRemote) {
this.worldObj.theProfiler.startSection("rbmkBase_heat_movement");
moveHeat();
if(RBMKDials.getReasimBoilers(worldObj)) boilWater();
if(RBMKDials.getReasimBoilers(worldObj)) {
this.worldObj.theProfiler.endStartSection("rbmkBase_reasim_boilers");
boilWater();
}
this.worldObj.theProfiler.endStartSection("rbmkBase_rpassive_cooling");
coolPassively();
this.worldObj.theProfiler.endSection();
NBTTagCompound data = new NBTTagCompound();
this.writeToNBT(data);

View File

@ -46,7 +46,11 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon
if(!worldObj.isRemote) {
if(this.worldObj.getTotalWorldTime() % 10 == 0) {
this.worldObj.theProfiler.startSection("rbmkConsole_rescan");
rescan();
this.worldObj.theProfiler.endSection();
prepareNetworkPack();
}
}

View File

@ -78,8 +78,10 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
//for spreading, we want the buffered flux to be 0 because we want to know exactly how much gets reflected back
this.fluxFast = 0;
this.fluxSlow = 0;
this.worldObj.theProfiler.startSection("rbmkRod_flux_spread");
spreadFlux(rType, fluxOut);
this.worldObj.theProfiler.endSection();
hasRod = true;
@ -192,7 +194,7 @@ public class TileEntityRBMKRod extends TileEntityRBMKSlottedBase implements IRBM
//return the neutrons back to this with no further action required
if(te instanceof TileEntityRBMKReflector) {
this.receiveFlux(stream, flux);
this.receiveFlux(this.isModerated() ? NType.SLOW : stream, flux);
return 0;
}

View File

@ -127,6 +127,7 @@ chem.DYN_DNT=Dineutronium-Dynosynthese
chem.DYN_EUPH=Euphemium-Dynosynthese
chem.DYN_SCHRAB=Schrabidium-Dynosynthese
chem.ELECTROLYSIS=Kryo-Elektrolyse
chem.ETHANOL=Ethanolherstellung
chem.FC_BITUMEN=Bitumen-Cracking
chem.FC_DIESEL_KEROSENE=Diesel-Cracking
chem.FC_GAS_PETROLEUM=Erdgas-Cracking
@ -441,6 +442,7 @@ hbmfluid.cryogel=Kryogel
hbmfluid.death=Osmiridiumlösung
hbmfluid.deuterium=Deuterium
hbmfluid.diesel=Diesel
hbmfluid.ethanol=Ethanol
hbmfluid.fracksol=Frackinglösung
hbmfluid.gas=Erdgas
hbmfluid.gasoline=Bleibenzin
@ -889,6 +891,7 @@ item.canister_biofuel.name=Biodieselkanister
item.canister_bitumen.name=Bitumenkanister
item.canister_canola.name=Schmiermittelkanister
item.canister_empty.name=Leerer Kanister
item.canister_ethanol.name=Ethanolkanister
item.canister_fracksol.name=Frackinglösungskanister
item.canister_fuel.name=Dieselkanister
item.canister_gasoline.name=Bleibenzinkanister

View File

@ -195,6 +195,7 @@ chem.DYN_DNT=Dineutronium Dynosynthesis
chem.DYN_EUPH=Euphemium Dynosynthesis
chem.DYN_SCHRAB=Schrabidium Dynosynthesis
chem.ELECTROLYSIS=Cryo-Electrolysis
chem.ETHANOL=Ethanol Production
chem.FC_BITUMEN=Bitumen Cracking
chem.FC_DIESEL_KEROSENE=Diesel Cracking
chem.FC_GAS_PETROLEUM=Gas Cracking
@ -509,6 +510,7 @@ hbmfluid.cryogel=Cryogel
hbmfluid.death=Osmiridic Solution
hbmfluid.deuterium=Deuterium
hbmfluid.diesel=Diesel
hbmfluid.ethanol=Ethanol
hbmfluid.fracksol=Fracking Solution
hbmfluid.gas=Natural Gas
hbmfluid.gasoline=Leaded Gasoline
@ -957,6 +959,7 @@ item.canister_biofuel.name=Biofuel Canister
item.canister_bitumen.name=Bitumen Canister
item.canister_canola.name=Engine Lubricant
item.canister_empty.name=Empty Canister
item.canister_ethanol.name=Ethanol Canister
item.canister_fracksol.name=Fracking Solution Canister
item.canister_fuel.name=Diesel Canister
item.canister_gasoline.name=Leaded Gasoline Canister

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -8,7 +8,7 @@
"url": "",
"updateUrl": "",
"authorList": ["HbMinecraft"],
"credits": "rodolphito (explosion algorithms), grangerave (explosion algorithms), Hoboy (textures, models), Doctor17 (russian localization), Drillgon200 (effects, models, porting), UFFR (fork with all sorts of features), Bismarck (chinese localization), FirzzleFrazzle (models), Minecreep (models), VT-6/24 (models, textures), PheodoreKaczynski (textures), Vær (fibrosis code), Adam29 (liquid petroleum), Pashtet (russian localization), Sten89 (models), Pixelguru26 (textures), impbk2002 (project settings), OvermindDL1 (project settings), TehTemmie (reacher radiation function)",
"credits": "rodolphito (explosion algorithms), grangerave (explosion algorithms), Hoboy (textures, models), Doctor17 (russian localization), Drillgon200 (effects, models, porting), UFFR (fork with all sorts of features), Pu-238 (Tom impact effects), Bismarck (chinese localization), FirzzleFrazzle (models), Minecreep (models), VT-6/24 (models, textures), PheodoreKaczynski (textures), Vær (fibrosis code), Adam29 (liquid petroleum, ethanol), Pashtet (russian localization), Sten89 (models), Pixelguru26 (textures), impbk2002 (project settings), OvermindDL1 (project settings), TehTemmie (reacher radiation function)",
"logoFile": "",
"screenshots": [],
"dependencies": []