aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java
diff options
context:
space:
mode:
authorAlkalus <draknyte1@hotmail.com>2017-11-20 20:19:10 +1000
committerAlkalus <draknyte1@hotmail.com>2017-11-20 20:19:10 +1000
commite480daed410bd80d5eda9abbd37f7bd96021e911 (patch)
tree672cf0a91af0e131914c9eb4a19f7eb9dd2418fb /src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java
parent3a7576cc5a52ce052c1bc40ddb7dbcb63e2a6381 (diff)
downloadGT5-Unofficial-e480daed410bd80d5eda9abbd37f7bd96021e911.tar.gz
GT5-Unofficial-e480daed410bd80d5eda9abbd37f7bd96021e911.tar.bz2
GT5-Unofficial-e480daed410bd80d5eda9abbd37f7bd96021e911.zip
$ Fixed the Upgraded Alchemical Furnace being built from heavily obfuscated code.
% Adjusted Wither Guard recipe to now output 32x per craft, at the added cost of a Netherstar per craft. % Small formatting changes.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java')
-rw-r--r--src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java388
1 files changed, 197 insertions, 191 deletions
diff --git a/src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java b/src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java
index 226c7cf393..ec39e7f4af 100644
--- a/src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java
+++ b/src/Java/gtPlusPlus/xmod/thaumcraft/common/tile/TileFastAlchemyFurnace.java
@@ -22,12 +22,12 @@ import thaumcraft.common.tiles.TileAlembic;
import thaumcraft.common.tiles.TileBellows;
public class TileFastAlchemyFurnace extends TileAlchemyFurnace {
- private static final int[] slots_bottom = {1};
- private static final int[] slots_top = new int[0];
- private static final int[] slots_sides = {0};
+ private static final int[] slots_bottom;
+ private static final int[] slots_top;
+ private static final int[] slots_sides;
public AspectList aspects;
public int vis;
- private int maxVis;
+ private final int maxVis;
public int smeltTime;
int bellows;
boolean speedBoost;
@@ -40,255 +40,247 @@ public class TileFastAlchemyFurnace extends TileAlchemyFurnace {
public TileFastAlchemyFurnace() {
this.aspects = new AspectList();
-
- this.maxVis = 100;
- this.smeltTime = 25;
+ this.maxVis = 150;
+ this.smeltTime = 100;
this.bellows = -1;
- this.speedBoost = false;
-
+ this.speedBoost = true;
this.furnaceItemStacks = new ItemStack[2];
-
this.count = 0;
}
- public int func_70302_i_() {
+ @Override
+ public int getSizeInventory() {
return this.furnaceItemStacks.length;
}
- public ItemStack func_70301_a(int par1) {
+ @Override
+ public ItemStack getStackInSlot(final int par1) {
return this.furnaceItemStacks[par1];
}
- public ItemStack func_70298_a(int par1, int par2) {
- if (this.furnaceItemStacks[par1] != null) {
- if (this.furnaceItemStacks[par1].stackSize <= par2) {
- ItemStack itemstack = this.furnaceItemStacks[par1];
- this.furnaceItemStacks[par1] = null;
- return itemstack;
- }
-
- ItemStack itemstack = this.furnaceItemStacks[par1].splitStack(par2);
-
- if (this.furnaceItemStacks[par1].stackSize == 0) {
- this.furnaceItemStacks[par1] = null;
- }
-
+ @Override
+ public ItemStack decrStackSize(final int par1, final int par2) {
+ if (this.furnaceItemStacks[par1] == null) {
+ return null;
+ }
+ if (this.furnaceItemStacks[par1].stackSize <= par2) {
+ final ItemStack itemstack = this.furnaceItemStacks[par1];
+ this.furnaceItemStacks[par1] = null;
return itemstack;
}
-
- return null;
+ final ItemStack itemstack = this.furnaceItemStacks[par1].splitStack(par2);
+ if (this.furnaceItemStacks[par1].stackSize == 0) {
+ this.furnaceItemStacks[par1] = null;
+ }
+ return itemstack;
}
- public ItemStack func_70304_b(int par1) {
+ @Override
+ public ItemStack getStackInSlotOnClosing(final int par1) {
if (this.furnaceItemStacks[par1] != null) {
- ItemStack itemstack = this.furnaceItemStacks[par1];
+ final ItemStack itemstack = this.furnaceItemStacks[par1];
this.furnaceItemStacks[par1] = null;
return itemstack;
}
-
return null;
}
- public void func_70299_a(int par1, ItemStack par2ItemStack) {
+ @Override
+ public void setInventorySlotContents(final int par1, final ItemStack par2ItemStack) {
this.furnaceItemStacks[par1] = par2ItemStack;
-
- if ((par2ItemStack == null) || (par2ItemStack.stackSize <= func_70297_j_()))
- return;
- par2ItemStack.stackSize = func_70297_j_();
+ if ((par2ItemStack != null) && (par2ItemStack.stackSize > this.getInventoryStackLimit())) {
+ par2ItemStack.stackSize = this.getInventoryStackLimit();
+ }
}
- public String func_145825_b() {
- return ((func_145818_k_()) ? this.customName : "container.alchemyfurnace");
+ @Override
+ public String getInventoryName() {
+ return this.hasCustomInventoryName() ? this.customName : "container.alchemyfurnace";
}
- public boolean func_145818_k_() {
- return ((this.customName != null) && (this.customName.length() > 0));
+ @Override
+ public boolean hasCustomInventoryName() {
+ return (this.customName != null) && (this.customName.length() > 0);
}
- public void setGuiDisplayName(String par1Str) {
+ @Override
+ public void setGuiDisplayName(final String par1Str) {
this.customName = par1Str;
}
- public void readCustomNBT(NBTTagCompound nbttagcompound) {
+ @Override
+ public void readCustomNBT(final NBTTagCompound nbttagcompound) {
this.furnaceBurnTime = nbttagcompound.getShort("BurnTime");
this.vis = nbttagcompound.getShort("Vis");
}
- public void writeCustomNBT(NBTTagCompound nbttagcompound) {
+ @Override
+ public void writeCustomNBT(final NBTTagCompound nbttagcompound) {
nbttagcompound.setShort("BurnTime", (short) this.furnaceBurnTime);
nbttagcompound.setShort("Vis", (short) this.vis);
}
- public void func_145839_a(NBTTagCompound nbtCompound) {
- super.func_145839_a(nbtCompound);
- NBTTagList nbttaglist = nbtCompound.getTagList("Items", 10);
- this.furnaceItemStacks = new ItemStack[func_70302_i_()];
-
+ @Override
+ public void readFromNBT(final NBTTagCompound nbtCompound) {
+ super.readFromNBT(nbtCompound);
+ final NBTTagList nbttaglist = nbtCompound.getTagList("Items", 10);
+ this.furnaceItemStacks = new ItemStack[this.getSizeInventory()];
for (int i = 0; i < nbttaglist.tagCount(); ++i) {
- NBTTagCompound nbttagcompound1 = nbttaglist.getCompoundTagAt(i);
- byte b0 = nbttagcompound1.getByte("Slot");
-
- if ((b0 < 0) || (b0 >= this.furnaceItemStacks.length))
- continue;
- this.furnaceItemStacks[b0] = ItemStack.loadItemStackFromNBT(nbttagcompound1);
+ final NBTTagCompound nbttagcompound1 = nbttaglist.getCompoundTagAt(i);
+ final byte b0 = nbttagcompound1.getByte("Slot");
+ if ((b0 >= 0) && (b0 < this.furnaceItemStacks.length)) {
+ this.furnaceItemStacks[b0] = ItemStack.loadItemStackFromNBT(nbttagcompound1);
+ }
}
-
this.speedBoost = nbtCompound.getBoolean("speedBoost");
this.furnaceCookTime = nbtCompound.getShort("CookTime");
this.currentItemBurnTime = TileEntityFurnace.getItemBurnTime(this.furnaceItemStacks[1]);
-
if (nbtCompound.hasKey("CustomName")) {
this.customName = nbtCompound.getString("CustomName");
}
-
this.aspects.readFromNBT(nbtCompound);
this.vis = this.aspects.visSize();
}
- public void func_145841_b(NBTTagCompound nbtCompound) {
- super.func_145841_b(nbtCompound);
+ @Override
+ public void writeToNBT(final NBTTagCompound nbtCompound) {
+ super.writeToNBT(nbtCompound);
nbtCompound.setBoolean("speedBoost", this.speedBoost);
nbtCompound.setShort("CookTime", (short) this.furnaceCookTime);
- NBTTagList nbttaglist = new NBTTagList();
-
+ final NBTTagList nbttaglist = new NBTTagList();
for (int i = 0; i < this.furnaceItemStacks.length; ++i) {
- if (this.furnaceItemStacks[i] == null)
- continue;
- NBTTagCompound nbttagcompound1 = new NBTTagCompound();
- nbttagcompound1.setByte("Slot", (byte) i);
- this.furnaceItemStacks[i].writeToNBT(nbttagcompound1);
- nbttaglist.appendTag(nbttagcompound1);
+ if (this.furnaceItemStacks[i] != null) {
+ final NBTTagCompound nbttagcompound1 = new NBTTagCompound();
+ nbttagcompound1.setByte("Slot", (byte) i);
+ this.furnaceItemStacks[i].writeToNBT(nbttagcompound1);
+ nbttaglist.appendTag(nbttagcompound1);
+ }
}
-
nbtCompound.setTag("Items", nbttaglist);
-
- if (func_145818_k_()) {
+ if (this.hasCustomInventoryName()) {
nbtCompound.setString("CustomName", this.customName);
}
-
this.aspects.writeToNBT(nbtCompound);
}
- public int func_70297_j_() {
+ @Override
+ public int getInventoryStackLimit() {
return 64;
}
+ @Override
@SideOnly(Side.CLIENT)
- public int getCookProgressScaled(int par1) {
- if (this.smeltTime <= 0)
+ public int getCookProgressScaled(final int par1) {
+ if (this.smeltTime <= 0) {
this.smeltTime = 1;
- return (this.furnaceCookTime * par1 / this.smeltTime);
+ }
+ return (this.furnaceCookTime * par1) / this.smeltTime;
}
+ @Override
@SideOnly(Side.CLIENT)
- public int getContentsScaled(int par1) {
- return (this.vis * par1 / this.maxVis);
+ public int getContentsScaled(final int par1) {
+ return (this.vis * par1) / this.maxVis;
}
+ @Override
@SideOnly(Side.CLIENT)
- public int getBurnTimeRemainingScaled(int par1) {
+ public int getBurnTimeRemainingScaled(final int par1) {
if (this.currentItemBurnTime == 0) {
this.currentItemBurnTime = 200;
}
-
- return (this.furnaceBurnTime * par1 / this.currentItemBurnTime);
+ return (this.furnaceBurnTime * par1) / this.currentItemBurnTime;
}
+ @Override
public boolean isBurning() {
- return (this.furnaceBurnTime > 0);
+ return this.furnaceBurnTime > 0;
}
- public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) {
+ @Override
+ public void onDataPacket(final NetworkManager net, final S35PacketUpdateTileEntity pkt) {
super.onDataPacket(net, pkt);
- if (this.worldObj != null)
- this.worldObj.updateLightByType(EnumSkyBlock.Block, this.xCoord, this.yCoord,
- this.zCoord);
+ if (this.worldObj != null) {
+ this.worldObj.updateLightByType(EnumSkyBlock.Block, this.xCoord, this.yCoord, this.zCoord);
+ }
}
+ @Override
public boolean canUpdate() {
return true;
}
- public void func_145845_h() {
- boolean flag = this.furnaceBurnTime > 0;
- boolean flag1 = false;
- this.count += 1;
+ @Override
+ public void updateEntity() {
+ final boolean flag = this.furnaceBurnTime > 0;
+ boolean flag2 = false;
+ ++this.count;
if (this.furnaceBurnTime > 0) {
- this.furnaceBurnTime -= 1;
+ --this.furnaceBurnTime;
}
-
- if (!(this.worldObj.isRemote)) {
- if (this.bellows < 0)
- getBellows();
-
- if ((this.count % ((this.speedBoost) ? 20 : 40) == 0) && (this.aspects.size() > 0)) {
- AspectList exlude = new AspectList();
+ if (!this.worldObj.isRemote) {
+ if (this.bellows < 0) {
+ this.getBellows();
+ }
+ if (((this.count % (this.speedBoost ? 10 : 20)) == 0) && (this.aspects.size() > 0)) {
+ final AspectList exlude = new AspectList();
int deep = 0;
TileEntity tile = null;
while (deep < 5) {
++deep;
- tile = this.worldObj.getTileEntity(this.xCoord, this.yCoord + deep,
- this.zCoord);
- if (!(tile instanceof TileAlembic))
+ tile = this.worldObj.getTileEntity(this.xCoord, this.yCoord + deep, this.zCoord);
+ if (!(tile instanceof TileAlembic)) {
break;
- TileAlembic alembic = (TileAlembic) tile;
+ }
+ final TileAlembic alembic = (TileAlembic) tile;
if ((alembic.aspect != null) && (alembic.amount < alembic.maxAmount)
&& (this.aspects.getAmount(alembic.aspect) > 0)) {
- takeFromContainer(alembic.aspect, 1);
+ this.takeFromContainer(alembic.aspect, 1);
alembic.addToContainer(alembic.aspect, 1);
exlude.merge(alembic.aspect, 1);
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord,
- this.zCoord);
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord + deep,
- this.zCoord);
+ this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
+ this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord + deep, this.zCoord);
}
tile = null;
}
-
deep = 0;
while (deep < 5) {
++deep;
- tile = this.worldObj.getTileEntity(this.xCoord, this.yCoord + deep,
- this.zCoord);
- if (!(tile instanceof TileAlembic))
+ tile = this.worldObj.getTileEntity(this.xCoord, this.yCoord + deep, this.zCoord);
+ if (!(tile instanceof TileAlembic)) {
break;
- TileAlembic alembic = (TileAlembic) tile;
- if ((alembic.aspect == null) || (alembic.amount == 0))
- ;
+ }
+ final TileAlembic alembic = (TileAlembic) tile;
+ if ((alembic.aspect != null) && (alembic.amount != 0)) {
+ continue;
+ }
Aspect as = null;
if (alembic.aspectFilter == null) {
- as = takeRandomAspect(exlude);
- } else if (takeFromContainer(alembic.aspectFilter, 1)) {
+ as = this.takeRandomAspect(exlude);
+ } else if (this.takeFromContainer(alembic.aspectFilter, 1)) {
as = alembic.aspectFilter;
}
-
if (as != null) {
alembic.addToContainer(as, 1);
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord,
- this.zCoord);
- this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord + deep,
- this.zCoord);
+ this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
+ this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord + deep, this.zCoord);
break;
}
-
}
-
}
-
- if ((this.furnaceBurnTime == 0) && (canSmelt())) {
- this.currentItemBurnTime = (this.furnaceBurnTime = TileEntityFurnace
- .getItemBurnTime(this.furnaceItemStacks[1]));
-
+ if ((this.furnaceBurnTime == 0) && this.canSmelt()) {
+ final int itemBurnTime = TileEntityFurnace.getItemBurnTime(this.furnaceItemStacks[1]);
+ this.furnaceBurnTime = itemBurnTime;
+ this.currentItemBurnTime = itemBurnTime;
if (this.furnaceBurnTime > 0) {
- flag1 = true;
+ flag2 = true;
this.speedBoost = false;
-
if (this.furnaceItemStacks[1] != null) {
if (this.furnaceItemStacks[1].isItemEqual(new ItemStack(ConfigItems.itemResource, 1, 0))) {
this.speedBoost = true;
}
- this.furnaceItemStacks[1].stackSize -= 1;
-
+ final ItemStack itemStack = this.furnaceItemStacks[1];
+ --itemStack.stackSize;
if (this.furnaceItemStacks[1].stackSize == 0) {
this.furnaceItemStacks[1] = this.furnaceItemStacks[1].getItem()
.getContainerItem(this.furnaceItemStacks[1]);
@@ -296,126 +288,134 @@ public class TileFastAlchemyFurnace extends TileAlchemyFurnace {
}
}
}
-
- if ((isBurning()) && (canSmelt())) {
- this.furnaceCookTime += 1;
-
+ if (this.isBurning() && this.canSmelt()) {
+ ++this.furnaceCookTime;
if (this.furnaceCookTime >= this.smeltTime) {
this.furnaceCookTime = 0;
- smeltItem();
- flag1 = true;
+ this.smeltItem();
+ flag2 = true;
}
} else {
this.furnaceCookTime = 0;
}
-
- if (flag != this.furnaceBurnTime > 0) {
- flag1 = true;
+ if (flag != (this.furnaceBurnTime > 0)) {
+ flag2 = true;
this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
}
}
-
- if (!(flag1))
- return;
- markDirty();
+ if (flag2) {
+ this.markDirty();
+ }
}
private boolean canSmelt() {
if (this.furnaceItemStacks[0] == null) {
return false;
}
-
AspectList al = ThaumcraftCraftingManager.getObjectTags(this.furnaceItemStacks[0]);
al = ThaumcraftCraftingManager.getBonusTags(this.furnaceItemStacks[0], al);
-
- if ((al == null) || (al.size() == 0))
+ if ((al == null) || (al.size() == 0)) {
return false;
- int vs = al.visSize();
- if (vs > this.maxVis - this.vis)
+ }
+ final int vs = al.visSize();
+ if (vs > (this.maxVis - this.vis)) {
return false;
- this.smeltTime = (int) (vs * 10 * (1.0F - (0.125F * this.bellows)));
+ }
+ this.smeltTime = (int) (vs * 10 * (1.0f - (0.125f * this.bellows)));
return true;
}
+ @Override
public void getBellows() {
- this.bellows = TileBellows.getBellows(this.worldObj, this.xCoord, this.yCoord,
- this.zCoord, ForgeDirection.VALID_DIRECTIONS);
+ this.bellows = TileBellows.getBellows(this.worldObj, this.xCoord, this.yCoord, this.zCoord,
+ ForgeDirection.VALID_DIRECTIONS);
}
+ @Override
public void smeltItem() {
- if (!(canSmelt())) {
- return;
- }
- AspectList al = ThaumcraftCraftingManager.getObjectTags(this.furnaceItemStacks[0]);
- al = ThaumcraftCraftingManager.getBonusTags(this.furnaceItemStacks[0], al);
-
- for (Aspect a : al.getAspects()) {
- this.aspects.add(a, al.getAmount(a));
+ if (this.canSmelt()) {
+ AspectList al = ThaumcraftCraftingManager.getObjectTags(this.furnaceItemStacks[0]);
+ al = ThaumcraftCraftingManager.getBonusTags(this.furnaceItemStacks[0], al);
+ for (final Aspect a : al.getAspects()) {
+ this.aspects.add(a, al.getAmount(a));
+ }
+ this.vis = this.aspects.visSize();
+ final ItemStack itemStack = this.furnaceItemStacks[0];
+ --itemStack.stackSize;
+ if (this.furnaceItemStacks[0].stackSize <= 0) {
+ this.furnaceItemStacks[0] = null;
+ }
}
-
- this.vis = this.aspects.visSize();
-
- this.furnaceItemStacks[0].stackSize -= 1;
-
- if (this.furnaceItemStacks[0].stackSize > 0)
- return;
- this.furnaceItemStacks[0] = null;
}
- public static boolean isItemFuel(ItemStack par0ItemStack) {
- return (TileEntityFurnace.getItemBurnTime(par0ItemStack) > 0);
+ public static boolean isItemFuel(final ItemStack par0ItemStack) {
+ return TileEntityFurnace.getItemBurnTime(par0ItemStack) > 0;
}
- public boolean func_70300_a(EntityPlayer par1EntityPlayer) {
- return (this.worldObj.getTileEntity(this.xCoord, this.yCoord,
- this.zCoord) == this);
+ @Override
+ public boolean isUseableByPlayer(final EntityPlayer par1EntityPlayer) {
+ return (this.worldObj.getTileEntity(this.xCoord, this.yCoord, this.zCoord) == this)
+ && (par1EntityPlayer.getDistanceSq(this.xCoord + 0.5, this.yCoord + 0.5, this.zCoord + 0.5) <= 64.0);
}
- public void func_70295_k_() {
+ @Override
+ public void openInventory() {
}
- public void func_70305_f() {
+ @Override
+ public void closeInventory() {
}
- public boolean func_94041_b(int par1, ItemStack par2ItemStack) {
+ @Override
+ public boolean isItemValidForSlot(final int par1, final ItemStack par2ItemStack) {
if (par1 == 0) {
AspectList al = ThaumcraftCraftingManager.getObjectTags(par2ItemStack);
al = ThaumcraftCraftingManager.getBonusTags(par2ItemStack, al);
- if ((al != null) && (al.size() > 0))
+ if ((al != null) && (al.size() > 0)) {
return true;
+ }
}
- return ((par1 == 1) ? isItemFuel(par2ItemStack) : false);
+ return (par1 == 1) && isItemFuel(par2ItemStack);
}
- public int[] func_94128_d(int par1) {
- return ((par1 == 1) ? slots_top : (par1 == 0) ? slots_bottom : slots_sides);
+ @Override
+ public int[] getAccessibleSlotsFromSide(final int par1) {
+ return (par1 == 0)
+ ? TileFastAlchemyFurnace.slots_bottom
+ : ((par1 == 1) ? TileFastAlchemyFurnace.slots_top : TileFastAlchemyFurnace.slots_sides);
}
- public boolean func_102007_a(int par1, ItemStack par2ItemStack, int par3) {
- return ((par3 == 1) ? false : func_94041_b(par1, par2ItemStack));
+ @Override
+ public boolean canInsertItem(final int par1, final ItemStack par2ItemStack, final int par3) {
+ return (par3 != 1) && this.isItemValidForSlot(par1, par2ItemStack);
}
- public boolean func_102008_b(int par1, ItemStack par2ItemStack, int par3) {
- return ((par3 != 0) || (par1 != 1) || (par2ItemStack.getItem() == Items.bucket));
+ @Override
+ public boolean canExtractItem(final int par1, final ItemStack par2ItemStack, final int par3) {
+ return (par3 != 0) || (par1 != 1) || (par2ItemStack.getItem() == Items.bucket);
}
- public Aspect takeRandomAspect(AspectList exlude) {
+ @Override
+ public Aspect takeRandomAspect(final AspectList exlude) {
if (this.aspects.size() > 0) {
- AspectList temp = this.aspects.copy();
- if (exlude.size() > 0)
- for (Aspect a : exlude.getAspects())
+ final AspectList temp = this.aspects.copy();
+ if (exlude.size() > 0) {
+ for (final Aspect a : exlude.getAspects()) {
temp.remove(a);
+ }
+ }
if (temp.size() > 0) {
- Aspect tag = temp.getAspects()[this.worldObj.rand.nextInt(temp.getAspects().length)];
+ final Aspect tag = temp.getAspects()[this.worldObj.rand.nextInt(temp.getAspects().length)];
this.aspects.remove(tag, 1);
- this.vis -= 1;
+ --this.vis;
return tag;
}
}
return null;
}
- public boolean takeFromContainer(Aspect tag, int amount) {
+ @Override
+ public boolean takeFromContainer(final Aspect tag, final int amount) {
if ((this.aspects != null) && (this.aspects.getAmount(tag) >= amount)) {
this.aspects.remove(tag, amount);
this.vis -= amount;
@@ -423,4 +423,10 @@ public class TileFastAlchemyFurnace extends TileAlchemyFurnace {
}
return false;
}
+
+ static {
+ slots_bottom = new int[]{1};
+ slots_top = new int[0];
+ slots_sides = new int[]{0};
+ }
} \ No newline at end of file