fix triggers not initializing statement parameters

This commit is contained in:
asiekierka 2014-10-29 18:20:11 +01:00
parent ab2196507e
commit 3c21b9c2e6
7 changed files with 31 additions and 5 deletions

View file

@ -15,6 +15,7 @@ import net.minecraft.util.IIcon;
import buildcraft.api.core.NetworkData;
public class StatementParameterItemStack implements IStatementParameter {
@NetworkData
protected ItemStack stack;

View file

@ -19,6 +19,7 @@ import net.minecraftforge.fluids.IFluidHandler;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerExternal;
import buildcraft.api.statements.StatementParameterItemStack;
import buildcraft.core.utils.StringUtils;
public class TriggerFluidContainer extends BCStatement implements ITriggerExternal {
@ -118,4 +119,9 @@ public class TriggerFluidContainer extends BCStatement implements ITriggerExtern
return StatementIconProvider.Trigger_FluidContainer_Full;
}
}
@Override
public IStatementParameter createParameter(int index) {
return new StatementParameterItemStack();
}
}

View file

@ -19,6 +19,7 @@ import net.minecraftforge.fluids.IFluidHandler;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerExternal;
import buildcraft.api.statements.StatementParameterItemStack;
import buildcraft.core.utils.StringUtils;
public class TriggerFluidContainerLevel extends BCStatement implements ITriggerExternal {
@ -101,4 +102,9 @@ public class TriggerFluidContainerLevel extends BCStatement implements ITriggerE
return StatementIconProvider.Trigger_FluidContainer_Below75;
}
}
@Override
public IStatementParameter createParameter(int index) {
return new StatementParameterItemStack();
}
}

View file

@ -18,6 +18,7 @@ import buildcraft.api.core.IInvSlot;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerExternal;
import buildcraft.api.statements.StatementParameterItemStack;
import buildcraft.core.ItemList;
import buildcraft.core.inventory.InventoryIterator;
import buildcraft.core.inventory.StackHelper;
@ -110,4 +111,9 @@ public class TriggerInventory extends BCStatement implements ITriggerExternal {
return StatementIconProvider.Trigger_Inventory_Full;
}
}
@Override
public IStatementParameter createParameter(int index) {
return new StatementParameterItemStack();
}
}

View file

@ -18,6 +18,7 @@ import buildcraft.api.core.IInvSlot;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerExternal;
import buildcraft.api.statements.StatementParameterItemStack;
import buildcraft.core.inventory.InventoryIterator;
import buildcraft.core.inventory.StackHelper;
import buildcraft.core.utils.StringUtils;
@ -104,4 +105,9 @@ public class TriggerInventoryLevel extends BCStatement implements ITriggerExtern
return StatementIconProvider.Trigger_Inventory_Below75;
}
}
@Override
public IStatementParameter createParameter(int index) {
return new StatementParameterItemStack();
}
}

View file

@ -350,11 +350,6 @@ public final class Gate implements IGate, IStatementContainer {
int oldRedstoneOutputSide = redstoneOutputSide;
redstoneOutputSide = 0;
/* for (ForgeDirection ioSide : ForgeDirection.VALID_DIRECTIONS) {
pipe.transport.allowInput(ioSide, true);
pipe.transport.allowOutput(ioSide, true);
} */
boolean wasActive = activeActions.size() > 0;

View file

@ -21,6 +21,7 @@ import buildcraft.api.gates.IGate;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerInternal;
import buildcraft.api.statements.StatementParameterItemStack;
import buildcraft.core.inventory.StackHelper;
import buildcraft.core.statements.BCStatement;
import buildcraft.core.utils.StringUtils;
@ -147,6 +148,11 @@ public class TriggerPipeContents extends BCStatement implements ITriggerInternal
return false;
}
@Override
public IStatementParameter createParameter(int index) {
return new StatementParameterItemStack();
}
@Override
@SideOnly(Side.CLIENT)