Merge remote-tracking branch 'HbmMods/master'

This commit is contained in:
Vaern 2022-02-21 10:21:29 -08:00
commit ce34316e9c
72 changed files with 235 additions and 180 deletions

View File

@ -15,6 +15,7 @@ import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

View File

@ -43,11 +43,14 @@ public class MachineChemplant extends BlockDummyable {
public void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) {
super.fillSpace(world, x, y, z, dir, o);
ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN);
x -= dir.offsetX;
z -= dir.offsetZ;
ForgeDirection rot = dir.getRotation(ForgeDirection.UP);
this.makeExtra(world, x + rot.offsetX * 2, y, z + rot.offsetZ * 2);
this.makeExtra(world, x - rot.offsetX * 1, y, z - rot.offsetZ * 1);
this.makeExtra(world, x + rot.offsetX * 2 + dir.offsetX, y, z + rot.offsetZ * 2 + dir.offsetZ);
this.makeExtra(world, x - rot.offsetX * 1 + dir.offsetX, y, z - rot.offsetZ * 1 + dir.offsetZ);
this.makeExtra(world, x + rot.offsetX * 2 - dir.offsetX, y, z + rot.offsetZ * 2 - dir.offsetZ);
this.makeExtra(world, x - rot.offsetX * 1 - dir.offsetX, y, z - rot.offsetZ * 1 - dir.offsetZ);
}
}

View File

@ -24,6 +24,12 @@ public class BobmazonOfferFactory {
public static List<Offer> special = new ArrayList();
public static void init() {
materials.clear();
machines.clear();
weapons.clear();
tools.clear();
special.clear();
int inflation = 5;
materials.add(new Offer(new ItemStack(ModItems.ingot_uranium), Requirement.NUCLEAR, 6 * inflation));

View File

@ -4,16 +4,5 @@ import com.hbm.inventory.fluid.FluidType;
public interface IFluidAcceptor extends IFluidContainer {
int getMaxFillForReceive(FluidType type);
/*
* Behavior for overriding when a fluid container has matching types as in and outputs
* Only a temporary fix until the fluid system is rewritten
*/
default void setFillForTransferIncoming(int fill, FluidType type) {
this.setFillForTransfer(fill, type);
}
default int getFluidFillIncoming(FluidType type) {
return this.getFluidFill(type);
}
int getMaxFluidFill(FluidType type);
}

View File

@ -8,7 +8,7 @@ public interface IFluidContainer {
public void setFillForSync(int fill, int index);
//Args: fill: what the fill should be set to; type, what type the tank in question has
void setFillForTransfer(int fill, FluidType type);
void setFluidFill(int fill, FluidType type);
//Args: type, what the type should be set to; index, index for array if there are multiple tanks
public void setTypeForSync(FluidType type, int index);

View File

@ -13,16 +13,4 @@ public interface IFluidSource extends IFluidContainer {
boolean getTact();
List<IFluidAcceptor> getFluidList(FluidType type);
void clearFluidList(FluidType type);
/*
* Behavior for overriding when a fluid container has matching types as in and outputs
* Only a temporary fix until the fluid system is rewritten
*/
default void setFillForTransferOutgoing(int fill, FluidType type) {
this.setFillForTransfer(fill, type);
}
default int getFluidFillOutgoing(FluidType type) {
return this.getFluidFill(type);
}
}

View File

@ -361,6 +361,7 @@ public class ChemplantRecipes {
public static class ChemRecipe {
public int listing;
private int id;
public String name;
public AStack[] inputs;
@ -373,6 +374,7 @@ public class ChemplantRecipes {
this.id = index;
this.name = name;
this.duration = duration;
this.listing = recipes.size();
this.inputs = new AStack[4];
this.outputs = new ItemStack[4];

View File

@ -59,8 +59,6 @@ public class ItemChemistryIcon extends Item {
@SideOnly(Side.CLIENT)
public IIcon getIconFromDamage(int i) {
int j = MathHelper.clamp_int(i, 0, icons.length - 1);
return this.icons[j];
return this.icons[ChemplantRecipes.indexMapping.get(i).listing];
}
}

View File

@ -496,17 +496,17 @@ public class Library {
if(tileentity instanceof IFluidDuct)
{
if(tileentity instanceof TileEntityFluidDuctSimple && ((TileEntityFluidDuctSimple)tileentity).getType() == type)
if(tileentity instanceof TileEntityFluidDuct && ((TileEntityFluidDuct)tileentity).getType().name().equals(type.name()))
{
if(Library.checkUnionListForFluids(((TileEntityFluidDuctSimple)tileentity).uoteab, that))
if(Library.checkUnionListForFluids(((TileEntityFluidDuct)tileentity).uoteab, that))
{
for(int i = 0; i < ((TileEntityFluidDuctSimple)tileentity).uoteab.size(); i++)
for(int i = 0; i < ((TileEntityFluidDuct)tileentity).uoteab.size(); i++)
{
if(((TileEntityFluidDuctSimple)tileentity).uoteab.get(i).source == that)
if(((TileEntityFluidDuct)tileentity).uoteab.get(i).source == that)
{
if(((TileEntityFluidDuctSimple)tileentity).uoteab.get(i).ticked != newTact)
if(((TileEntityFluidDuct)tileentity).uoteab.get(i).ticked != newTact)
{
((TileEntityFluidDuctSimple)tileentity).uoteab.get(i).ticked = newTact;
((TileEntityFluidDuct)tileentity).uoteab.get(i).ticked = newTact;
transmitFluid(x, y + 1, z, that.getTact(), that, worldObj, type);
transmitFluid(x, y - 1, z, that.getTact(), that, worldObj, type);
transmitFluid(x - 1, y, z, that.getTact(), that, worldObj, type);
@ -517,7 +517,7 @@ public class Library {
}
}
} else {
((TileEntityFluidDuctSimple)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleansForFluids(that, newTact));
((TileEntityFluidDuct)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleansForFluids(that, newTact));
}
}
if(tileentity instanceof TileEntityGasDuct && ((TileEntityGasDuct)tileentity).type.name().equals(type.name()))
@ -618,8 +618,8 @@ public class Library {
}
}
if(tileentity instanceof IFluidAcceptor && newTact && ((IFluidAcceptor)tileentity).getMaxFillForReceive(type) > 0 &&
((IFluidAcceptor)tileentity).getMaxFillForReceive(type) - ((IFluidAcceptor)tileentity).getMaxFillForReceive(type) > 0) {
if(tileentity instanceof IFluidAcceptor && newTact && ((IFluidAcceptor)tileentity).getMaxFluidFill(type) > 0 &&
((IFluidAcceptor)tileentity).getMaxFluidFill(type) - ((IFluidAcceptor)tileentity).getFluidFill(type) > 0) {
that.getFluidList(type).add((IFluidAcceptor)tileentity);
}
@ -628,18 +628,18 @@ public class Library {
int size = that.getFluidList(type).size();
if(size > 0)
{
int part = that.getFluidFillOutgoing(type) / size;
int part = that.getFluidFill(type) / size;
for(IFluidAcceptor consume : that.getFluidList(type))
{
if(consume.getFluidFillIncoming(type) < consume.getMaxFillForReceive(type))
if(consume.getFluidFill(type) < consume.getMaxFluidFill(type))
{
if(consume.getMaxFillForReceive(type) - consume.getFluidFillIncoming(type) >= part)
if(consume.getMaxFluidFill(type) - consume.getFluidFill(type) >= part)
{
that.setFillForTransferOutgoing(that.getFluidFillOutgoing(type) - part, type);
consume.setFillForTransferIncoming(consume.getFluidFillIncoming(type) + part, type);
that.setFluidFill(that.getFluidFill(type) - part, type);
consume.setFluidFill(consume.getFluidFill(type) + part, type);
} else {
that.setFillForTransferOutgoing(that.getFluidFillOutgoing(type) - (consume.getMaxFillForReceive(type) - consume.getFluidFillIncoming(type)), type);
consume.setFillForTransferIncoming(consume.getMaxFillForReceive(type), type);
that.setFluidFill(that.getFluidFill(type) - (consume.getMaxFluidFill(type) - consume.getFluidFill(type)), type);
consume.setFluidFill(consume.getMaxFluidFill(type), type);
}
}
}

View File

@ -3,7 +3,7 @@ package com.hbm.lib;
public class RefStrings {
public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (4144)";
public static final String VERSION = "1.0.27 BETA (4152)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version

View File

@ -28,6 +28,7 @@ import com.hbm.entity.projectile.EntityBurningFOEQ;
import com.hbm.extprop.HbmLivingProps;
import com.hbm.extprop.HbmPlayerProps;
import com.hbm.handler.ArmorModHandler;
import com.hbm.handler.BobmazonOfferFactory;
import com.hbm.handler.BossSpawnHandler;
import com.hbm.handler.EntityEffectHandler;
import com.hbm.hazard.HazardSystem;
@ -533,6 +534,8 @@ public class ModEventHandler {
public void onLoad(WorldEvent.Load event) {
DimensionManager.unregisterProviderType(0);
DimensionManager.registerProviderType(0, WorldProviderNTM.class, true);
BobmazonOfferFactory.init();
}
@SubscribeEvent(priority = EventPriority.LOWEST)

View File

@ -52,13 +52,13 @@ public class TileEntityProxyCombo extends TileEntityProxyBase implements IEnergy
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(!fluid)
return;
if(getTile() instanceof IFluidAcceptor) {
((IFluidAcceptor)getTile()).setFillForTransfer(fill, type);
((IFluidAcceptor)getTile()).setFluidFill(fill, type);
}
}
@ -87,13 +87,13 @@ public class TileEntityProxyCombo extends TileEntityProxyBase implements IEnergy
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(!fluid)
return 0;
if(getTile() instanceof IFluidAcceptor) {
return ((IFluidAcceptor)getTile()).getMaxFillForReceive(type);
return ((IFluidAcceptor)getTile()).getMaxFluidFill(type);
}
return 0;

View File

@ -503,7 +503,7 @@ public class TileEntityCompactLauncher extends TileEntity implements ISidedInven
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -519,7 +519,7 @@ public class TileEntityCompactLauncher extends TileEntity implements ISidedInven
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(fill);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -482,7 +482,7 @@ public class TileEntityLaunchTable extends TileEntity implements ISidedInventory
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -498,7 +498,7 @@ public class TileEntityLaunchTable extends TileEntity implements ISidedInventory
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(fill);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -469,7 +469,7 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IF
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if(type.name().equals(tanks[1].getTankType().name()))
@ -483,7 +483,7 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IF
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))

View File

@ -365,7 +365,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory,
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@ -379,7 +379,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory,
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getMaxFill();
else

View File

@ -379,7 +379,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory,
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@ -393,7 +393,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory,
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getMaxFill();
else

View File

@ -166,7 +166,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -184,7 +184,7 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -102,7 +102,7 @@ public class TileEntityCondenser extends TileEntity implements IFluidAcceptor, I
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -120,7 +120,7 @@ public class TileEntityCondenser extends TileEntity implements IFluidAcceptor, I
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -187,7 +187,7 @@ public class TileEntityCoreEmitter extends TileEntityMachineBase implements IEne
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@ -201,7 +201,7 @@ public class TileEntityCoreEmitter extends TileEntityMachineBase implements IEne
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getMaxFill();
else

View File

@ -103,7 +103,7 @@ public class TileEntityCoreInjector extends TileEntityMachineBase implements IFl
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -113,7 +113,7 @@ public class TileEntityCoreInjector extends TileEntityMachineBase implements IFl
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -91,7 +91,7 @@ public class TileEntityCoreReceiver extends TileEntityMachineBase implements IEn
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@ -105,7 +105,7 @@ public class TileEntityCoreReceiver extends TileEntityMachineBase implements IEn
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getMaxFill();
else

View File

@ -134,7 +134,7 @@ public class TileEntityDeuteriumExtractor extends TileEntityMachineBase implemen
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -152,7 +152,7 @@ public class TileEntityDeuteriumExtractor extends TileEntityMachineBase implemen
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -398,7 +398,7 @@ public class TileEntityFWatzCore extends TileEntity implements ISidedInventory,
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[1].getTankType().name()))
tanks[1].setFill(i);
else if(type.name().equals(tanks[2].getTankType().name()))
@ -416,7 +416,7 @@ public class TileEntityFWatzCore extends TileEntity implements ISidedInventory,
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[1].getTankType().name()))
return tanks[1].getMaxFill();
else if(type.name().equals(tanks[2].getTankType().name()))

View File

@ -1209,7 +1209,7 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -1231,7 +1231,7 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if(type.name().equals(tanks[1].getTankType().name()))

View File

@ -317,7 +317,7 @@ public class TileEntityITER extends TileEntityMachineBase implements IEnergyUser
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if (type.name().equals(tanks[1].getTankType().name()))
@ -378,7 +378,7 @@ public class TileEntityITER extends TileEntityMachineBase implements IEnergyUser
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -350,7 +350,7 @@ public class TileEntityMachineBoiler extends TileEntity implements ISidedInvento
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -368,7 +368,7 @@ public class TileEntityMachineBoiler extends TileEntity implements ISidedInvento
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -352,7 +352,7 @@ public class TileEntityMachineBoilerElectric extends TileEntity implements ISide
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -370,7 +370,7 @@ public class TileEntityMachineBoilerElectric extends TileEntity implements ISide
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -345,7 +345,7 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type.name().equals(this.tank.getTankType().name()) ? tank.getMaxFill() : 0;
}
@ -355,7 +355,7 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List;
import com.hbm.blocks.BlockDummyable;
import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IFluidAcceptor;
import com.hbm.interfaces.IFluidSource;
import com.hbm.inventory.FluidTank;
@ -23,7 +24,9 @@ import api.hbm.energy.IEnergyUser;
import net.minecraft.inventory.IInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraftforge.common.util.ForgeDirection;
public class TileEntityMachineChemplantNew extends TileEntityMachineBase implements IEnergyUser, IFluidSource, IFluidAcceptor {
@ -70,6 +73,9 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
if(!worldObj.isRemote) {
this.speed = 100;
this.consumption = 100;
this.isProgressing = false;
this.power = Library.chargeTEFromItems(slots, 0, power, maxPower);
@ -138,7 +144,7 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
private void updateConnections() {
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset).getOpposite();
ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN);
this.trySubscribe(worldObj, xCoord + rot.offsetX * 3, yCoord, zCoord + rot.offsetZ * 3, rot);
@ -169,21 +175,21 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
}
private void setupTanks(ChemRecipe recipe) {
if(recipe.inputFluids.length > 0) tanks[0].setTankType(recipe.inputFluids[0].type);
if(recipe.inputFluids.length > 1) tanks[1].setTankType(recipe.inputFluids[1].type);
if(recipe.outputFluids.length > 0) tanks[2].setTankType(recipe.outputFluids[0].type);
if(recipe.outputFluids.length > 1) tanks[3].setTankType(recipe.outputFluids[1].type);
if(recipe.inputFluids[0] != null) tanks[0].setTankType(recipe.inputFluids[0].type);
if(recipe.inputFluids[1] != null) tanks[1].setTankType(recipe.inputFluids[1].type);
if(recipe.outputFluids[0] != null) tanks[2].setTankType(recipe.outputFluids[0].type);
if(recipe.outputFluids[1] != null) tanks[3].setTankType(recipe.outputFluids[1].type);
}
private boolean hasRequiredFluids(ChemRecipe recipe) {
if(recipe.inputFluids.length > 0 && tanks[0].getFill() < recipe.inputFluids[0].fill) return false;
if(recipe.inputFluids.length > 1 && tanks[1].getFill() < recipe.inputFluids[1].fill) return false;
if(recipe.inputFluids[0] != null && tanks[0].getFill() < recipe.inputFluids[0].fill) return false;
if(recipe.inputFluids[1] != null && tanks[1].getFill() < recipe.inputFluids[1].fill) return false;
return true;
}
private boolean hasSpaceForFluids(ChemRecipe recipe) {
if(recipe.outputFluids.length > 0 && tanks[2].getFill() + recipe.outputFluids[0].fill > tanks[2].getMaxFill()) return false;
if(recipe.outputFluids.length > 1 && tanks[3].getFill() + recipe.outputFluids[1].fill > tanks[3].getMaxFill()) return false;
if(recipe.outputFluids[0] != null && tanks[2].getFill() + recipe.outputFluids[0].fill > tanks[2].getMaxFill()) return false;
if(recipe.outputFluids[1] != null && tanks[3].getFill() + recipe.outputFluids[1].fill > tanks[3].getMaxFill()) return false;
return true;
}
@ -209,41 +215,48 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
produceFluids(recipe);
consumeItems(recipe);
produceItems(recipe);
this.progress = 0;
this.markDirty();
}
}
private void consumeFluids(ChemRecipe recipe) {
if(recipe.inputFluids.length > 0) tanks[0].setFill(tanks[0].getFill() - recipe.inputFluids[0].fill);
if(recipe.inputFluids.length > 1) tanks[1].setFill(tanks[1].getFill() - recipe.inputFluids[1].fill);
if(recipe.inputFluids[0] != null) tanks[0].setFill(tanks[0].getFill() - recipe.inputFluids[0].fill);
if(recipe.inputFluids[1] != null) tanks[1].setFill(tanks[1].getFill() - recipe.inputFluids[1].fill);
}
private void produceFluids(ChemRecipe recipe) {
if(recipe.outputFluids.length > 0) tanks[2].setFill(tanks[2].getFill() + recipe.outputFluids[0].fill);
if(recipe.outputFluids.length > 1) tanks[3].setFill(tanks[3].getFill() + recipe.outputFluids[1].fill);
if(recipe.outputFluids[0] != null) tanks[2].setFill(tanks[2].getFill() + recipe.outputFluids[0].fill);
if(recipe.outputFluids[1] != null) tanks[3].setFill(tanks[3].getFill() + recipe.outputFluids[1].fill);
}
private void consumeItems(ChemRecipe recipe) {
for(AStack in : recipe.inputs) {
InventoryUtil.tryConsumeAStack(slots, 13, 16, in);
if(in != null)
InventoryUtil.tryConsumeAStack(slots, 13, 16, in);
}
}
private void produceItems(ChemRecipe recipe) {
for(ItemStack out : recipe.outputs) {
InventoryUtil.tryAddItemToInventory(slots, 5, 8, out);
if(out != null)
InventoryUtil.tryAddItemToInventory(slots, 5, 8, out.copy());
}
}
//TODO: move this into a util class
private void loadItems() {
if(slots[4] == null || slots[4].getItem() != ModItems.chemistry_template)
return;
ChemRecipe recipe = ChemplantRecipes.indexMapping.get(slots[4].getItemDamage());
if(recipe != null) {
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset).getOpposite();
int x = xCoord - dir.offsetX * 2;
int z = zCoord - dir.offsetZ * 2;
@ -291,10 +304,11 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
private void unloadItems() {
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset);
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - BlockDummyable.offset).getOpposite();
ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN);
int x = xCoord - dir.offsetX * 2;
int z = zCoord - dir.offsetZ * 2;
int x = xCoord + dir.offsetX * 3 + rot.offsetX;
int z = zCoord + dir.offsetZ * 3 + rot.offsetZ;
TileEntity te = worldObj.getTileEntity(x, yCoord, z);
@ -309,7 +323,7 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
if(out != null) {
for(int j = 0; j < inv.getSizeInventory(); j++) {
ItemStack target = inv.getStackInSlot(i);
ItemStack target = inv.getStackInSlot(j);
if(InventoryUtil.doesStackDataMatch(out, target) && target.stackSize < target.getMaxStackSize()) {
this.decrStackSize(i, 1);
@ -353,7 +367,7 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
for(FluidTank tank : tanks) {
if(tank.getTankType() == type) {
@ -381,10 +395,11 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
for(FluidTank tank : tanks) {
if(tank.getTankType() == type) {
return tank.getMaxFill();
}
}
@ -446,4 +461,50 @@ public class TileEntityMachineChemplantNew extends TileEntityMachineBase impleme
}
}
}
@Deprecated
public void handleButtonPacket(int value, int meta) { }
@Override
public void readFromNBT(NBTTagCompound nbt) {
super.readFromNBT(nbt);
this.power = nbt.getLong("power");
this.progress = nbt.getInteger("progress");
for(int i = 0; i < tanks.length; i++) {
tanks[i].readFromNBT(nbt, "t" + i);
}
}
@Override
public void writeToNBT(NBTTagCompound nbt) {
super.writeToNBT(nbt);
nbt.setLong("power", power);
nbt.setInteger("progress", progress);
for(int i = 0; i < tanks.length; i++) {
tanks[i].writeToNBT(nbt, "t" + i);
}
}
AxisAlignedBB bb = null;
@Override
public AxisAlignedBB getRenderBoundingBox() {
if(bb == null) {
bb = AxisAlignedBB.getBoundingBox(
xCoord - 2,
yCoord,
zCoord - 2,
xCoord + 3,
yCoord + 4,
zCoord + 3
);
}
return bb;
}
}

View File

@ -314,7 +314,7 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@ -325,7 +325,7 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type.name().equals(this.tank.getTankType().name()) ? tank.getMaxFill() : 0;
}

View File

@ -268,7 +268,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
tank.setFill(fill);
}
@ -283,7 +283,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return tank.getMaxFill();
}

View File

@ -360,7 +360,7 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == Fluids.COOLANT)
coolant.setFill(fill);
else if(type == Fluids.AMAT)
@ -420,7 +420,7 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == Fluids.COOLANT)
return coolant.getMaxFill();

View File

@ -215,7 +215,7 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IE
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type == this.tank.getTankType() ? tank.getMaxFill() : 0;
}
@ -225,7 +225,7 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IE
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == tank.getTankType())
tank.setFill(i);
}

View File

@ -345,7 +345,7 @@ public class TileEntityMachineGasCent extends TileEntityMachineBase implements I
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type.name().equals(this.tank.getTankType().name()) ? tank.getMaxFill() : 0;
}
@ -355,7 +355,7 @@ public class TileEntityMachineGasCent extends TileEntityMachineBase implements I
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -520,7 +520,7 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if(type.name().equals(tanks[1].getTankType().name()))
@ -530,7 +530,7 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))

View File

@ -216,7 +216,7 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == Fluids.WATER)
tanks[0].setFill(fill);
@ -242,7 +242,7 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
for(int i = 0; i < 3; i++)
if(tanks[i].getTankType() == type)

View File

@ -295,7 +295,7 @@ public class TileEntityMachineInserter extends TileEntity implements ISidedInven
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -317,7 +317,7 @@ public class TileEntityMachineInserter extends TileEntity implements ISidedInven
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if(type.name().equals(tanks[1].getTankType().name()))

View File

@ -170,7 +170,7 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -188,7 +188,7 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -605,7 +605,7 @@ public class TileEntityMachineMiningLaser extends TileEntityMachineBase implemen
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == Fluids.OIL)
tank.setFill(fill);
}

View File

@ -203,7 +203,7 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -215,7 +215,7 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -256,7 +256,7 @@ public class TileEntityMachineRadiolysis extends TileEntityMachineBase implement
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
for(FluidTank tank : tanks) {
if(tank.getTankType() == type) {
tank.setFill(fill);
@ -280,7 +280,7 @@ public class TileEntityMachineRadiolysis extends TileEntityMachineBase implement
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(tanks[0].getTankType() == type) {
return tanks[0].getMaxFill();
}

View File

@ -785,7 +785,7 @@ public class TileEntityMachineReactorLarge extends TileEntity
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -795,7 +795,7 @@ public class TileEntityMachineReactorLarge extends TileEntity
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -336,7 +336,7 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type == this.tank.getTankType() ? tank.getMaxFill() : 0;
}
@ -346,7 +346,7 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == tank.getTankType())
tank.setFill(i);
}

View File

@ -288,7 +288,7 @@ public class TileEntityMachineTurbine extends TileEntity implements ISidedInvent
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(i);
else if(type.name().equals(tanks[1].getTankType().name()))
@ -306,7 +306,7 @@ public class TileEntityMachineTurbine extends TileEntity implements ISidedInvent
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();

View File

@ -507,7 +507,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type == this.tank.getTankType() ? tank.getMaxFill() : 0;
}
@ -517,7 +517,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == tank.getTankType())
tank.setFill(i);
}

View File

@ -407,14 +407,14 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IF
return false;
}
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == Fluids.SUPERHOTSTEAM) return steam.getMaxFill();
if(type == Fluids.CARBONDIOXIDE) return carbonDioxide.getMaxFill();
if(type == Fluids.WATER) return water.getMaxFill();
return 0;
}
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == Fluids.SUPERHOTSTEAM) steam.setFill(i);
if(type == Fluids.CARBONDIOXIDE) carbonDioxide.setFill(i);
if(type == Fluids.WATER) water.setFill(i);

View File

@ -296,7 +296,7 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == tank.getTankType())
tank.setFill(fill);
@ -317,7 +317,7 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == tank.getTankType())
return tank.getMaxFill();

View File

@ -75,7 +75,7 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor,
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == Fluids.WATER)
water.setFill(fill);
if(type == Fluids.STEAM)
@ -117,7 +117,7 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor,
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == Fluids.WATER)
return water.getMaxFill();
if(type == Fluids.STEAM)

View File

@ -357,7 +357,7 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
return tanks[0].getMaxFill();
else if (type.name().equals(tanks[1].getTankType().name()))
@ -373,7 +373,7 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if (type.name().equals(tanks[0].getTankType().name()))
tanks[0].setFill(fill);
else if (type.name().equals(tanks[1].getTankType().name()))

View File

@ -259,7 +259,7 @@ public class TileEntityStorageDrum extends TileEntityMachineBase implements IFlu
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == tanks[0].getTankType())
tanks[0].setFill(i);
else if(type == tanks[1].getTankType())

View File

@ -730,7 +730,7 @@ public class TileEntityWatzCore extends TileEntity implements ISidedInventory, I
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
tank.setFill(i);
}

View File

@ -117,7 +117,7 @@ public class TileEntityMachineCatalyticCracker extends TileEntity implements IFl
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
for(FluidTank tank : tanks) {
if(tank.getTankType() == type) {
tank.setFill(fill);
@ -141,7 +141,7 @@ public class TileEntityMachineCatalyticCracker extends TileEntity implements IFl
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == tanks[0].getTankType())
return tanks[0].getMaxFill();
else if(type == tanks[1].getTankType())

View File

@ -110,7 +110,7 @@ public class TileEntityMachineFrackingTower extends TileEntityOilDrillBase imple
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type == tanks[2].getTankType() ? tanks[2].getMaxFill() : 0;
}
}

View File

@ -135,7 +135,7 @@ public class TileEntityMachineFractionTower extends TileEntity implements IFluid
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
for(FluidTank tank : tanks) {
if(tank.getTankType() == type) {
tank.setFill(fill);
@ -159,7 +159,7 @@ public class TileEntityMachineFractionTower extends TileEntity implements IFluid
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == tanks[0].getTankType())
return tanks[0].getMaxFill();
else

View File

@ -280,7 +280,7 @@ public class TileEntityMachineGasFlare extends TileEntity implements ISidedInven
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type.name().equals(this.tank.getTankType().name()) ? tank.getMaxFill() : 0;
}
@ -290,7 +290,7 @@ public class TileEntityMachineGasFlare extends TileEntity implements ISidedInven
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -175,7 +175,7 @@ public class TileEntityMachineLiquefactor extends TileEntityMachineBase implemen
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == tank.getTankType())
tank.setFill(fill);
}

View File

@ -259,7 +259,7 @@ public class TileEntityMachineRefinery extends TileEntityMachineBase implements
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
for(int i = 0; i < 5; i++) {
if(type == tanks[i].getTankType()) {
@ -286,7 +286,7 @@ public class TileEntityMachineRefinery extends TileEntityMachineBase implements
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == tanks[0].getTankType())
return tanks[0].getMaxFill();
else

View File

@ -186,7 +186,7 @@ public class TileEntityMachineSolidifier extends TileEntityMachineBase implement
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == tank.getTankType())
tank.setFill(fill);
}
@ -202,7 +202,7 @@ public class TileEntityMachineSolidifier extends TileEntityMachineBase implement
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return tank.getTankType() == type ? tank.getMaxFill() : 0;
}

View File

@ -275,7 +275,7 @@ public abstract class TileEntityOilDrillBase extends TileEntityMachineBase imple
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
for(FluidTank tank : tanks) {
if(type == tank.getTankType()) {
tank.setFill(i);

View File

@ -117,7 +117,7 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I
public boolean getTact() { return worldObj.getTotalWorldTime() % 2 == 0; }
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == feed.getTankType())
feed.setFill(i);
@ -137,7 +137,7 @@ public class TileEntityRBMKBoiler extends TileEntityRBMKSlottedBase implements I
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == feed.getTankType())
return feed.getMaxFill();

View File

@ -105,7 +105,7 @@ public class TileEntityRBMKCooler extends TileEntityRBMKBase implements IFluidAc
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == tank.getTankType())
tank.setFill(fill);
}
@ -121,7 +121,7 @@ public class TileEntityRBMKCooler extends TileEntityRBMKBase implements IFluidAc
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type == tank.getTankType() ? tank.getMaxFill() : 0;
}

View File

@ -68,7 +68,7 @@ public class TileEntityRBMKInlet extends TileEntity implements IFluidAcceptor {
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == Fluids.WATER) water.setFill(fill);
}
@ -84,7 +84,7 @@ public class TileEntityRBMKInlet extends TileEntity implements IFluidAcceptor {
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(type == Fluids.WATER) return water.getMaxFill();
return 0;
}

View File

@ -188,7 +188,7 @@ public class TileEntityRBMKOutgasser extends TileEntityRBMKSlottedBase implement
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
if(type == gas.getTankType())
gas.setFill(fill);

View File

@ -74,7 +74,7 @@ public class TileEntityRBMKOutlet extends TileEntity implements IFluidSource {
}
@Override
public void setFillForTransfer(int fill, FluidType type) {
public void setFluidFill(int fill, FluidType type) {
steam.setFill(fill);
}

View File

@ -132,7 +132,7 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(mode == 2 || mode == 3)
return 0;
@ -171,7 +171,7 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type == tank.getTankType()) tank.setFill(i);
}

View File

@ -109,7 +109,7 @@ public class TileEntityMachineFluidTank extends TileEntityMachineBase implements
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
if(mode == 2 || mode == 3)
return 0;
@ -149,7 +149,7 @@ public class TileEntityMachineFluidTank extends TileEntityMachineBase implements
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -227,7 +227,7 @@ public class TileEntityMachinePuF6Tank extends TileEntity implements ISidedInven
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -229,7 +229,7 @@ public class TileEntityMachineUF6Tank extends TileEntity implements ISidedInvent
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -144,7 +144,7 @@ public class TileEntityTurretFritz extends TileEntityTurretBaseNT implements IFl
}
@Override
public int getMaxFillForReceive(FluidType type) {
public int getMaxFluidFill(FluidType type) {
return type.name().equals(this.tank.getTankType().name()) ? tank.getMaxFill() : 0;
}
@ -154,7 +154,7 @@ public class TileEntityTurretFritz extends TileEntityTurretBaseNT implements IFl
}
@Override
public void setFillForTransfer(int i, FluidType type) {
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}

View File

@ -433,7 +433,11 @@ public class InventoryUtil {
ItemStack[] copy = ItemStackUtil.carefulCopyArrayTruncate(array, start, end);
for(ItemStack item : items) {
ItemStack remainder = tryAddItemToInventory(copy, item);
if(item == null)
continue;
ItemStack remainder = tryAddItemToInventory(copy, item.copy());
if(remainder != null) {
return false;
}

View File

@ -3,7 +3,7 @@
"modid": "hbm",
"name": "Hbm's Nuclear Tech",
"description": "A mod that adds weapons, nuclear themed stuff and machines",
"version":"1.0.27_X4144",
"version":"1.0.27_X4152",
"mcversion": "1.7.10",
"url": "",
"updateUrl": "",