idea for complex autocrafting
This commit is contained in:
parent
bc7c6451cd
commit
629938c923
2 changed files with 34 additions and 0 deletions
15
src/dark/api/reciepes/IAssemblyObject.java
Normal file
15
src/dark/api/reciepes/IAssemblyObject.java
Normal file
|
@ -0,0 +1,15 @@
|
|||
package dark.api.reciepes;
|
||||
|
||||
/** Applied to objects that are not complete and are being constructed from parts slowly. Used mainly
|
||||
* with assembly line armbots to create large objects like rockets automatically.
|
||||
*
|
||||
* @author DarkGuardsman */
|
||||
public interface IAssemblyObject
|
||||
{
|
||||
/** Gets the recipe that this object is being build from */
|
||||
public IAssemblyRecipe getRecipe();
|
||||
|
||||
/** Called each time the assembler makes a change to the object. Use this to trigger render
|
||||
* updates of the object */
|
||||
public void onChanged();
|
||||
}
|
19
src/dark/api/reciepes/IAssemblyRecipe.java
Normal file
19
src/dark/api/reciepes/IAssemblyRecipe.java
Normal file
|
@ -0,0 +1,19 @@
|
|||
package dark.api.reciepes;
|
||||
|
||||
import net.minecraft.item.ItemStack;
|
||||
|
||||
/** WIP feature to allow an item/block to be slowly built one step at a time. Object can be an
|
||||
* ItemStack, Entity, or even an object just for this purpose. Though if its not world based you'll
|
||||
* need to inform the assembler that it exists
|
||||
*
|
||||
* @author Darkgaurdsman */
|
||||
public interface IAssemblyRecipe
|
||||
{
|
||||
/** Cost in materials(ItemStack) to complete the next step in the build process */
|
||||
public ItemStack[] getCostAtStep(Object object, int step);
|
||||
|
||||
/** Number of steps to complete the crafting */
|
||||
public int getSteps(Object object);
|
||||
|
||||
public void nextStep(Object Object);
|
||||
}
|
Loading…
Reference in a new issue