@Override public boolean isValid(BptSlotInfo slot, IBptContext context) { BptSlotInfo newSlot = slot.clone(); slot.blockId = delegateTo; if (BlueprintManager.blockBptProps[delegateTo] != null) { return BlueprintManager.blockBptProps[delegateTo].isValid(newSlot, context); } else { return super.isValid(newSlot, context); } }
@Override public void rotateLeft(BptSlotInfo slot, IBptContext context) { BptSlotInfo newSlot = slot.clone(); slot.blockId = delegateTo; if (BlueprintManager.blockBptProps[delegateTo] != null) { BlueprintManager.blockBptProps[delegateTo].rotateLeft(newSlot, context); } else { super.rotateLeft(newSlot, context); } }
@Override public void addRequirements( BptSlotInfo slot, IBptContext context, LinkedList<ItemStack> requirements) { BptSlotInfo newSlot = slot.clone(); slot.blockId = delegateTo; if (BlueprintManager.blockBptProps[delegateTo] != null) { BlueprintManager.blockBptProps[delegateTo].addRequirements(newSlot, context, requirements); } else { super.addRequirements(newSlot, context, requirements); } }
@Override public void rotateLeft(BptSlotInfo slot, IBptContext context) { slot.meta = ForgeDirection.values()[slot.meta].getRotation(ForgeDirection.DOWN).ordinal(); }