Machine Inventory Manager

The Machine Inventory Manager is a tile entity added by Steve's Factory Manager. This block controls the use of every other block in this mod by use of commands. Each command has a different function but can be divided into a few main categories: Condition, Group and Trigger, Input and Output, and Others.

Commands
There are many commands the player can use in the Machine Inventory Manager. It is highly suggested that the player check the user preferences and adjust them to their liking. Above the user preferences in the GUI is a delete command to remove unwanted commands.

The standard command is usually comprised of these elements in this order:

Trigger → (Flow) → (Condition) → (Input) → (Crafting) → Output

Input is mandatory when dealing with items or liquids.

The other commands can be grouped in four categories:

Create Condition

 * One Input, Two outputs: True and False
 * Inventory: Chooses which inventory to check for condition.
 * Target: Checks designated side for the item variable. Example: To check Furnace fuel, the player must check from the side.
 * Item: Designates item variable to check for.

Create Liquid Condition

 * One Input, Two output: True and False
 * Tank: Chooses which tank to check for condition
 * Target: Checks designated side for the liquid variable. Example: To check Furnace fuel, the player must check from the side.
 * Liquid: Designates liquid variable to check for.

Create Redstone Condition

 * One Input, Two output: True and False.
 * Redstone Nodes: Chooses which block to check for redstone condition.
 * Sides: Checks designated side from which the redstone signal comes from.
 * Strength: Check designated redstone signal strength needed; can be inverted.

Trigger
Trigger commands are required as without them no functions will run. There are three different modes: On Interval, Redstone Controlled, and Block Update Detector.


 * On Interval: Interval: Perform function every X seconds, where X is an integer. Allows for a single output.
 * Redstone Controlled: Interval: Perform function every X seconds, where X is an integer
 * Redstone Receiver: Designates redstone receiver the player has selected
 * Redstone Sides: Designates side of the receiver to select; Analog Redstone: Analyze for redstone signal strength above a threshold (can be inverted).
 * Four different outputs: On Low/High Pulse/Signal, Self Explicit.
 * Block Update Detector: Interval: Perform function every X seconds, where X is an integer


 * Update Detector: Designates detector player has selected.
 * Update Sides: Designates side of updated block to be selected
 * Update Block: Designates what to look for in terms of ID and metadata.
 * Five different outputs: On Low/High Pulse/Signal, Self Explicit, and On Block Update.

Create Flow Control
There are two different modes: Collector and Split.


 * Collector: Any trigger inputs causes an output to occur; two or five inputs, one output.
 * Split: One trigger causes outputs to occur; one input, two or five outputs.

Create Command Group
Creates a group which is a sub page of the main page. It is helpful in keeping command trees compact and providing more space for the player to work with. It does not have any input or output commands by itself.

Create Group Node
This command has two modes: Input and Output. Input will let a trigger into the group from an external source while Output will send a trigger outside the group. This is used in conjunction with Command Group to trigger groups from an external source.

Input and Output
Input commands will take the item/liquid out of the container and place it into the system. Output commands will take the item/liquid out of the system and into the container.

Create Input/Create Output
This requires:
 * One input
 * One output
 * Inventory: Chooses which inventory to check.
 * Target: Designates which side to check.
 * Items: Selects item to take or insert.

Create Liquid Input/Create Liquid Output
This requires:
 * One input
 * One output
 * Tank: Chooses which tank to check for.
 * Target: Chooses which side to check for.
 * Liquid: Chooses liquid to take or insert.

Create Redstone Emitter
This requires:
 * One input
 * One output
 * Emitters: Chooses which emitters to emit to
 * Sides: Designates side to emit to
 * Output: Designates mode of transmission and signal strength
 * Pulse: Toggles the firing of a pulse; rate of firing is configurable

Create Auto Crafter
This requires:
 * One input
 * One output
 * Crafting: Uses a crafting grid interface where the player replicates the crafting components needed to create an item.
 * Priority: Determines if crafting happens before moving the item or after.
 * Excess Inventory: Selects inventory used in case of overflow or secondary output, items will drop in the world if the excess inventory is full.