Compare commits

..
11 Commits
Author SHA1 Message Date
mezz 4708ba94a8 Fix #877 TileStairs NullPointerException 2015-10-08 18:06:23 -07:00
mezz 141a1493a8 Bump version to 3.6.11 2015-10-06 21:29:45 -07:00
mezz b6c93ef188 Fix #870 Analyzer turns pollen into saplings
(cherry picked from commit 01245f32c5)

Conflicts:
	src/main/java/forestry/core/gadgets/TileAnalyzer.java
2015-10-06 21:29:28 -07:00
mezz e0fc9cbb64 Bump version to 3.6.10 2015-10-03 00:27:05 -07:00
mezz e9e48cea77 Fix #861 Worktable client crash 2015-10-03 00:27:01 -07:00
mezz 27b9b7bc57 Fix Carpenter output Dupe bug 2015-09-26 23:06:56 -07:00
Nirek-K 06b1f9fabf Allow Biogas Engine fuel tank to be drained externally.
(cherry picked from commit 81d2c1971c)
2015-09-26 19:51:33 -07:00
Nirek-K b00f92ab76 Fix #847 TradeStation not outputting items to automation (also fix insertion filtering)
(cherry picked from commit 9478ffb7c1)
2015-09-26 14:45:04 -07:00
mezz 83a41d41d3 Bump version to 3.6.8 2015-09-24 01:47:11 -07:00
Nirek-K a47fab4579 Make plantball value slightly less terrible (equal to 9 wheat, so 'slightly' better to combine wheat, still worse for things like saplings)
(cherry picked from commit 31bd1e82fd)
2015-09-24 01:46:48 -07:00
Nirek-K 07389fe1dc Fix #829 IC2 plantballs not working in fermenter
(cherry picked from commit b56a299f63)
2015-09-24 01:46:42 -07:00
9 changed files with 48 additions and 26 deletions

No files matched your search

+1 -1
View File
@@ -2,4 +2,4 @@ mcversion=1.7.10
forgeversion=10.13.3.1370-1.7.10
version_major=3
version_minor=6
version_patch=7
version_patch=11
@@ -122,7 +122,7 @@ public class BlockArbStairs extends BlockStairs {
TileStairs stairs = getStairTile(world, x, y, z);
NBTTagCompound nbttagcompound = new NBTTagCompound();
if (stairs == null || stairs.getWoodType() == null) {
if (stairs == null) {
return nbttagcompound;
}
@@ -141,7 +141,7 @@ public class BlockArbStairs extends BlockStairs {
@Override
public IIcon getIcon(IBlockAccess world, int x, int y, int z, int side) {
TileStairs stairs = getStairTile(world, x, y, z);
if (stairs != null && stairs.getWoodType() != null) {
if (stairs != null) {
return stairs.getWoodType().getPlankIcon();
} else {
return WoodType.LARCH.getPlankIcon();
@@ -10,6 +10,7 @@
******************************************************************************/
package forestry.arboriculture.gadgets;
import javax.annotation.Nonnull;
import java.io.IOException;
import net.minecraft.nbt.NBTTagCompound;
@@ -25,13 +26,15 @@ import forestry.core.proxy.Proxies;
public class TileStairs extends TileEntity implements IStreamable {
private WoodType woodType;
@Nonnull
private WoodType woodType = WoodType.LARCH;
@Nonnull
public WoodType getWoodType() {
return this.woodType;
}
public void setWoodType(WoodType woodType) {
public void setWoodType(@Nonnull WoodType woodType) {
this.woodType = woodType;
sendNetworkUpdate();
}
@@ -49,10 +52,7 @@ public class TileStairs extends TileEntity implements IStreamable {
@Override
public void writeToNBT(NBTTagCompound nbttagcompound) {
super.writeToNBT(nbttagcompound);
if (woodType != null) {
nbttagcompound.setShort("WT", (short) woodType.ordinal());
}
nbttagcompound.setShort("WT", (short) woodType.ordinal());
}
/* UPDATING */
+14 -4
View File
@@ -51,6 +51,8 @@ import forestry.core.network.PacketItemStackDisplay;
import forestry.core.proxy.Proxies;
import forestry.core.utils.GeneticsUtil;
import forestry.core.utils.GuiUtil;
import forestry.plugins.PluginArboriculture;
import forestry.plugins.PluginManager;
public class TileAnalyzer extends TilePowered implements ISidedInventory, ILiquidTankContainer, IItemStackDisplay {
@@ -159,7 +161,7 @@ public class TileAnalyzer extends TilePowered implements ISidedInventory, ILiqui
}
}
// Look for bees in input slots.
// Look for specimens in input slots.
IInvSlot slot = getInputSlot();
boolean noInput = (slot == null);
@@ -169,11 +171,19 @@ public class TileAnalyzer extends TilePowered implements ISidedInventory, ILiqui
}
ItemStack inputStack = slot.getStackInSlot();
ItemStack ersatz = GeneticsUtil.convertSaplingToGeneticEquivalent(inputStack);
if (ersatz != null) {
inputStack = ersatz;
if (PluginManager.Module.ARBORICULTURE.isEnabled() && !PluginArboriculture.treeInterface.isMember(inputStack)) {
ItemStack ersatz = GeneticsUtil.convertSaplingToGeneticEquivalent(inputStack);
if (ersatz != null) {
inputStack = ersatz;
}
}
IIndividual individual = AlleleManager.alleleRegistry.getIndividual(inputStack);
if (individual == null) {
return false;
}
if (!individual.isAnalyzed()) {
boolean hasHoney = resourceTank.getFluidAmount() >= HONEY_REQUIRED;
setErrorCondition(!hasHoney, EnumErrorCode.NORESOURCE);
@@ -1102,12 +1102,14 @@ public abstract class InvTools {
}
public static boolean tryAddStack(IInventory inventory, ItemStack stack, int startSlot, int slots, boolean all, boolean doAdd) {
int added = addStack(inventory, stack, startSlot, slots, doAdd);
if (all) {
return added == stack.stackSize;
} else {
return added > 0;
int added = addStack(inventory, stack, startSlot, slots, false);
boolean success = all ? (added == stack.stackSize) : (added > 0);
if (success && doAdd) {
addStack(inventory, stack, startSlot, slots, true);
}
return success;
}
public static int addStack(IInventory inventory, ItemStack stack, boolean doAdd) {
@@ -68,7 +68,7 @@ public class EngineBronze extends Engine implements ISidedInventory, ILiquidTank
setInternalInventory(new EngineBronzeInventoryAdapter(this));
fuelTank = new FilteredTank(Defaults.ENGINE_TANK_CAPACITY, FuelManager.bronzeEngineFuel.keySet());
fuelTank.tankMode = StandardTank.TankMode.INPUT;
fuelTank.tankMode = StandardTank.TankMode.DEFAULT;
heatingTank = new FilteredTank(Defaults.ENGINE_TANK_CAPACITY, FluidRegistry.LAVA);
heatingTank.tankMode = StandardTank.TankMode.INPUT;
this.tankManager = new TankManager(fuelTank, heatingTank);
@@ -177,11 +177,14 @@ public class TileWorktable extends TileBase implements ICrafterWorktable {
ItemStack[] set = InvTools.getStacks(currentRecipe.getMatrix(), SLOT_CRAFTING_1, SLOT_CRAFTING_COUNT);
ItemStack[] removed = InvTools.removeSets(this, 1, set, SLOT_INVENTORY_1, SLOT_INVENTORY_COUNT, player, false, true, true);
if (removed == null) {
return false;
}
for (int i = 0; i < removed.length; i++) {
craftingInventory.setInventorySlotContents(i, removed[i]);
}
return removed != null;
return true;
}
@Override
@@ -58,6 +58,9 @@ public class TradeStation extends WorldSavedData implements ITradeStation, IInve
for (int i = SLOT_STAMPS_1; i < SLOT_STAMPS_1 + SLOT_STAMPS_COUNT; i++) {
slots.add(i);
}
for (int i = SLOT_RECEIVE_BUFFER; i < SLOT_RECEIVE_BUFFER + SLOT_RECEIVE_BUFFER_COUNT; i++) {
slots.add(i);
}
for (int i = SLOT_SEND_BUFFER; i < SLOT_SEND_BUFFER + SLOT_SEND_BUFFER_COUNT; i++) {
slots.add(i);
}
@@ -95,6 +98,10 @@ public class TradeStation extends WorldSavedData implements ITradeStation, IInve
return false;
}
@Override
public boolean isItemValidForSlot(int i, ItemStack itemstack) {
return canSlotAccept(i, itemstack);
}
}
// / CONSTANTS
@@ -275,11 +275,11 @@ public class PluginIC2 extends ForestryPlugin {
}
}
if (plantBall != null && compressedPlantBall != null) {
RecipeUtil.injectLeveledRecipe(plantBall, GameMode.getGameMode().getIntegerSetting("fermenter.yield.wheat") * 4, Fluids.BIOMASS);
RecipeUtil.injectLeveledRecipe(compressedPlantBall, GameMode.getGameMode().getIntegerSetting("fermenter.yield.wheat") * 5, Fluids.BIOMASS);
} else {
Proxies.log.fine("No IC2 plantballs found.");
if (plantBall != null) {
RecipeUtil.injectLeveledRecipe(plantBall, GameMode.getGameMode().getIntegerSetting("fermenter.yield.wheat") * 9, Fluids.BIOMASS);
}
if (compressedPlantBall != null) {
RecipeUtil.injectLeveledRecipe(compressedPlantBall, GameMode.getGameMode().getIntegerSetting("fermenter.yield.wheat") * 9, Fluids.BIOMASS);
}
if (resin != null) {