add sawmill factories
No files matched your search
@@ -97,7 +97,7 @@ task coreJar(type: Jar) {
|
||||
}
|
||||
|
||||
from zipTree(jar.outputs.getFiles().getSingleFile()).matching {
|
||||
exclude 'mekanism/tools/**', 'mekanism/generators/**', 'mekanism/defense/**', 'defense/**', 'assets/defense/**', 'mcmod.info', 'mekanism/ultimate/**', 'assets/mekanism/gui/factory/GuiUltimateFactory.png', 'assets/mekanism/textures/blocks/factory/ultimate/**'
|
||||
exclude 'mekanism/tools/**', 'mekanism/generators/**', 'mekanism/defense/**', 'defense/**', 'assets/defense/**', 'mcmod.info', 'mekanism/ultimate/**'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -166,7 +166,7 @@ task ultimateJar(type: Jar) {
|
||||
}
|
||||
|
||||
from zipTree(jar.outputs.getFiles().getSingleFile()).matching {
|
||||
include 'mekanism/ultimate/**', 'assets/mekanism/gui/factory/GuiUltimateFactory.png', 'assets/mekanism/textures/blocks/factory/ultimate/**'
|
||||
include 'mekanism/ultimate/**'
|
||||
exclude 'mcmod.info'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -206,6 +206,7 @@ public class MekanismConfig
|
||||
public static double factoryUsageMultiplier = 1D;
|
||||
public static int factoryEnergyStorageTicks = 400;
|
||||
public static boolean enableFactoryRecipes = true;
|
||||
public static boolean sawmillFactoriesEnabled = true;
|
||||
}
|
||||
|
||||
public static class recipes
|
||||
|
||||
@@ -817,6 +817,10 @@ public class Mekanism
|
||||
//Factory recipes
|
||||
if (MekanismConfig.recipes.enableFactories) {
|
||||
for (RecipeType type : RecipeType.values()) {
|
||||
if (type == RecipeType.SAWING) {
|
||||
continue;
|
||||
}
|
||||
|
||||
MachineType.BASIC_FACTORY.addRecipe(new ShapedMekanismRecipe(MekanismUtils.getFactory(FactoryTier.BASIC, type), new Object[]{
|
||||
"RCR", "iOi", "RCR", Character.valueOf('R'), "alloyBasic", Character.valueOf('C'), MekanismUtils.getControlCircuit(BaseTier.BASIC), Character.valueOf('i'), "ingotIron", Character.valueOf('O'), type.getStack()
|
||||
}));
|
||||
|
||||
@@ -3,6 +3,7 @@ package mekanism.common.base;
|
||||
import mekanism.api.gas.Gas;
|
||||
import mekanism.api.gas.GasStack;
|
||||
import mekanism.api.util.StackUtils;
|
||||
import mekanism.api.MekanismConfig.ultimate;
|
||||
import mekanism.common.InfuseStorage;
|
||||
import mekanism.common.block.BlockMachine.MachineType;
|
||||
import mekanism.common.recipe.RecipeHandler;
|
||||
@@ -12,6 +13,7 @@ import mekanism.common.recipe.inputs.InfusionInput;
|
||||
import mekanism.common.recipe.inputs.ItemStackInput;
|
||||
import mekanism.common.recipe.machines.AdvancedMachineRecipe;
|
||||
import mekanism.common.recipe.machines.BasicMachineRecipe;
|
||||
import mekanism.common.recipe.machines.ChanceMachineRecipe;
|
||||
import mekanism.common.recipe.machines.MachineRecipe;
|
||||
import mekanism.common.recipe.machines.MetallurgicInfuserRecipe;
|
||||
import mekanism.common.tile.TileEntityAdvancedElectricMachine;
|
||||
@@ -20,6 +22,7 @@ import net.minecraft.block.Block;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.common.util.ForgeDirection;
|
||||
import cpw.mods.fml.common.Loader;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
@@ -53,7 +56,8 @@ public interface IFactory
|
||||
COMBINING("Combining", "combiner", MachineType.COMBINER.getStack(), true, false, Recipe.COMBINER),
|
||||
PURIFYING("Purifying", "purifier", MachineType.PURIFICATION_CHAMBER.getStack(), true, true, Recipe.PURIFICATION_CHAMBER),
|
||||
INJECTING("Injecting", "injection", MachineType.CHEMICAL_INJECTION_CHAMBER.getStack(), true, true, Recipe.CHEMICAL_INJECTION_CHAMBER),
|
||||
INFUSING("Infusing", "metalinfuser", MachineType.METALLURGIC_INFUSER.getStack(), false, false, Recipe.METALLURGIC_INFUSER);
|
||||
INFUSING("Infusing", "metalinfuser", MachineType.METALLURGIC_INFUSER.getStack(), false, false, Recipe.METALLURGIC_INFUSER),
|
||||
SAWING("Sawing", "sawmill", MachineType.PRECISION_SAWMILL.getStack(), false, false, Recipe.PRECISION_SAWMILL);
|
||||
|
||||
private String name;
|
||||
private ResourceLocation sound;
|
||||
@@ -82,6 +86,16 @@ public interface IFactory
|
||||
{
|
||||
return getRecipe(new AdvancedMachineInput(input, gas));
|
||||
}
|
||||
|
||||
public ChanceMachineRecipe getChanceRecipe(ItemStackInput input)
|
||||
{
|
||||
return RecipeHandler.getChanceRecipe(input, recipe.get());
|
||||
}
|
||||
|
||||
public ChanceMachineRecipe getChanceRecipe(ItemStack input)
|
||||
{
|
||||
return getChanceRecipe(new ItemStackInput(input));
|
||||
}
|
||||
|
||||
public MetallurgicInfuserRecipe getRecipe(InfusionInput input)
|
||||
{
|
||||
@@ -99,6 +113,10 @@ public interface IFactory
|
||||
{
|
||||
return getRecipe(slotStack, gasType);
|
||||
}
|
||||
else if(this == SAWING)
|
||||
{
|
||||
return getChanceRecipe(slotStack);
|
||||
}
|
||||
else if(this == INFUSING)
|
||||
{
|
||||
if(infuse.type != null)
|
||||
@@ -242,6 +260,16 @@ public interface IFactory
|
||||
{
|
||||
return fuelSpeed;
|
||||
}
|
||||
|
||||
public boolean isChance()
|
||||
{
|
||||
return this == SAWING;
|
||||
}
|
||||
|
||||
public boolean isEnabled()
|
||||
{
|
||||
return this != SAWING || Loader.isModLoaded("MekanismUltimate") && ultimate.sawmillFactoriesEnabled;
|
||||
}
|
||||
|
||||
public static RecipeType getFromMachine(Block block, int meta)
|
||||
{
|
||||
|
||||
@@ -521,6 +521,11 @@ public class BlockMachine extends BlockContainer implements ISpecialBounds, IBlo
|
||||
case ELITE_FACTORY:
|
||||
for(RecipeType recipe : RecipeType.values())
|
||||
{
|
||||
if(recipe == RecipeType.SAWING && !recipe.isEnabled())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
ItemStack stack = new ItemStack(item, 1, type.meta);
|
||||
((IFactory)stack.getItem()).setRecipeType(recipe.ordinal(), stack);
|
||||
list.add(stack);
|
||||
|
||||
@@ -355,6 +355,7 @@ public class ItemBlockMachine extends ItemBlock implements IEnergizedItem, ISpec
|
||||
factory.recipeType = recipeType;
|
||||
factory.upgradeComponent.setSupported(Upgrade.GAS, recipeType.fuelEnergyUpgrades());
|
||||
factory.secondaryEnergyPerTick = factory.getSecondaryEnergyPerTick(recipeType);
|
||||
factory.updateOutputSlots();
|
||||
world.notifyBlocksOfNeighborChange(x, y, z, tileEntity.getBlockType());
|
||||
}
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@ import mekanism.common.recipe.RecipeHandler;
|
||||
import mekanism.common.recipe.inputs.InfusionInput;
|
||||
import mekanism.common.recipe.machines.AdvancedMachineRecipe;
|
||||
import mekanism.common.recipe.machines.BasicMachineRecipe;
|
||||
import mekanism.common.recipe.machines.ChanceMachineRecipe;
|
||||
import mekanism.common.recipe.machines.MetallurgicInfuserRecipe;
|
||||
import mekanism.common.security.ISecurityTile;
|
||||
import mekanism.common.tile.component.TileComponentConfig;
|
||||
@@ -226,6 +227,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
factory.ejectorComponent.setOutputData(TransmissionType.ITEM, factory.configComponent.getOutputs(TransmissionType.ITEM).get(2));
|
||||
factory.recipeType = recipeType;
|
||||
factory.upgradeComponent.setSupported(Upgrade.GAS, recipeType.fuelEnergyUpgrades());
|
||||
factory.updateOutputSlots();
|
||||
factory.securityComponent.readFrom(securityComponent);
|
||||
|
||||
for (int i = 0; i < tier.processes + 5; i++) {
|
||||
@@ -282,7 +284,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
if (inventory[2] != null && inventory[3] == null) {
|
||||
RecipeType toSet = null;
|
||||
for (RecipeType type : RecipeType.values()) {
|
||||
if (inventory[2].isItemEqual(type.getStack())) {
|
||||
if ((type != RecipeType.SAWING || type.isEnabled()) && inventory[2].isItemEqual(type.getStack())) {
|
||||
toSet = type;
|
||||
break;
|
||||
}
|
||||
@@ -304,6 +306,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
recipeType = toSet;
|
||||
gasTank.setGas(null);
|
||||
secondaryEnergyPerTick = getSecondaryEnergyPerTick(recipeType);
|
||||
updateOutputSlots();
|
||||
|
||||
worldObj.notifyBlocksOfNeighborChange(xCoord, yCoord, zCoord, getBlockType());
|
||||
MekanismUtils.saveChunk(this);
|
||||
@@ -428,6 +431,19 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
return MekanismUtils.getSecondaryEnergyPerTickMean(this, type.getSecondaryEnergyPerTick());
|
||||
}
|
||||
|
||||
public void updateOutputSlots() {
|
||||
if (configComponent != null) {
|
||||
int[] outputSlots = new int[tier.processes + (recipeType.isChance() ? 1 : 0)];
|
||||
for (int process = 0; process < tier.processes; process++) {
|
||||
outputSlots[process] = getOutputSlot(process);
|
||||
}
|
||||
if (recipeType.isChance()) {
|
||||
outputSlots[outputSlots.length - 1] = 4;
|
||||
}
|
||||
configComponent.getOutputs(TransmissionType.ITEM).get(2).availableSlots = outputSlots;
|
||||
}
|
||||
}
|
||||
|
||||
public void handleSecondaryFuel() {
|
||||
if (inventory[4] != null) {
|
||||
if (recipeType.usesFuel() && gasTank.getNeeded() > 0) {
|
||||
@@ -482,6 +498,8 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
return ChargeUtils.canBeOutputted(itemstack, false);
|
||||
} else if (slotID >= getOutputSlot(0) && slotID < getOutputSlot(0) + tier.processes) {
|
||||
return true;
|
||||
} else if (recipeType.isChance() && slotID == 4) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -534,6 +552,11 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
return recipe == null ? false : recipe.canOperate(inventory, inputSlot, outputSlot, gasTank, secondaryEnergyThisTick);
|
||||
}
|
||||
|
||||
if (recipeType.isChance()) {
|
||||
ChanceMachineRecipe<?> recipe = recipeType.getChanceRecipe(inventory[inputSlot]);
|
||||
return recipe != null && recipe.canOperate(inventory, inputSlot, outputSlot, 4);
|
||||
}
|
||||
|
||||
if (recipeType == RecipeType.INFUSING) {
|
||||
MetallurgicInfuserRecipe recipe = RecipeHandler.getMetallurgicInfuserRecipe(new InfusionInput(infuseStored, inventory[inputSlot]));
|
||||
return recipe == null ? false : recipe.canOperate(inventory, inputSlot, outputSlot, infuseStored);
|
||||
@@ -548,6 +571,12 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
AdvancedMachineRecipe<?> recipe = recipeType.getRecipe(inventory[inputSlot], gasTank.getGasType());
|
||||
recipe.operate(inventory, inputSlot, outputSlot, gasTank, secondaryEnergyThisTick);
|
||||
|
||||
} else if (recipeType.isChance()) {
|
||||
ChanceMachineRecipe<?> recipe = recipeType.getChanceRecipe(inventory[inputSlot]);
|
||||
if (recipe.getInput().useItemStackFromInventory(inventory, inputSlot, true)) {
|
||||
recipe.getOutput().applyOutputs(inventory, outputSlot, 4, true);
|
||||
}
|
||||
|
||||
} else if (recipeType == RecipeType.INFUSING) {
|
||||
MetallurgicInfuserRecipe recipe = RecipeHandler.getMetallurgicInfuserRecipe(new InfusionInput(infuseStored, inventory[inputSlot]));
|
||||
recipe.output(inventory, inputSlot, outputSlot, infuseStored);
|
||||
@@ -586,6 +615,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
if (recipeType != oldRecipe) {
|
||||
secondaryEnergyPerTick = getSecondaryEnergyPerTick(recipeType);
|
||||
}
|
||||
updateOutputSlots();
|
||||
|
||||
recipeTicks = dataStream.readInt();
|
||||
controlType = RedstoneControl.values()[dataStream.readInt()];
|
||||
@@ -631,6 +661,7 @@ public class TileEntityFactory extends TileEntityNoisyElectricBlock implements I
|
||||
if (recipeType != oldRecipe) {
|
||||
secondaryEnergyPerTick = getSecondaryEnergyPerTick(recipeType);
|
||||
}
|
||||
updateOutputSlots();
|
||||
|
||||
recipeTicks = nbtTags.getInteger("recipeTicks");
|
||||
controlType = RedstoneControl.values()[nbtTags.getInteger("controlType")];
|
||||
|
||||
@@ -3,6 +3,12 @@ package mekanism.common.tile;
|
||||
import java.util.Map;
|
||||
|
||||
import mekanism.api.MekanismConfig.usage;
|
||||
import mekanism.api.transmitters.TransmissionType;
|
||||
import mekanism.common.MekanismBlocks;
|
||||
import mekanism.common.Tier.BaseTier;
|
||||
import mekanism.common.Upgrade;
|
||||
import mekanism.common.base.IFactory.RecipeType;
|
||||
import mekanism.common.base.ITierUpgradeable;
|
||||
import mekanism.common.block.BlockMachine.MachineType;
|
||||
import mekanism.common.recipe.RecipeHandler.Recipe;
|
||||
import mekanism.common.recipe.inputs.ItemStackInput;
|
||||
@@ -12,7 +18,7 @@ import mekanism.common.util.MekanismUtils.ResourceType;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
||||
public class TileEntityPrecisionSawmill extends TileEntityChanceMachine<SawmillRecipe>
|
||||
public class TileEntityPrecisionSawmill extends TileEntityChanceMachine<SawmillRecipe> implements ITierUpgradeable
|
||||
{
|
||||
public TileEntityPrecisionSawmill()
|
||||
{
|
||||
@@ -25,6 +31,64 @@ public class TileEntityPrecisionSawmill extends TileEntityChanceMachine<SawmillR
|
||||
return Recipe.PRECISION_SAWMILL.get();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean upgrade(BaseTier upgradeTier)
|
||||
{
|
||||
if(upgradeTier != BaseTier.BASIC || !RecipeType.SAWING.isEnabled())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
worldObj.setBlockToAir(xCoord, yCoord, zCoord);
|
||||
worldObj.setBlock(xCoord, yCoord, zCoord, MekanismBlocks.MachineBlock, 5, 3);
|
||||
|
||||
TileEntityFactory factory = (TileEntityFactory)worldObj.getTileEntity(xCoord, yCoord, zCoord);
|
||||
factory.facing = facing;
|
||||
factory.clientFacing = clientFacing;
|
||||
factory.ticker = ticker;
|
||||
factory.redstone = redstone;
|
||||
factory.redstoneLastTick = redstoneLastTick;
|
||||
factory.doAutoSync = doAutoSync;
|
||||
factory.electricityStored = electricityStored;
|
||||
factory.soundURL = soundURL;
|
||||
factory.progress[0] = operatingTicks;
|
||||
factory.clientActive = clientActive;
|
||||
factory.isActive = isActive;
|
||||
factory.updateDelay = updateDelay;
|
||||
factory.controlType = controlType;
|
||||
factory.prevEnergy = prevEnergy;
|
||||
factory.upgradeComponent.readFrom(upgradeComponent);
|
||||
factory.upgradeComponent.setUpgradeSlot(0);
|
||||
factory.ejectorComponent.readFrom(ejectorComponent);
|
||||
factory.recipeType = RecipeType.SAWING;
|
||||
factory.upgradeComponent.setSupported(Upgrade.GAS, false);
|
||||
factory.secondaryEnergyPerTick = factory.getSecondaryEnergyPerTick(RecipeType.SAWING);
|
||||
factory.updateOutputSlots();
|
||||
factory.ejectorComponent.setOutputData(TransmissionType.ITEM, factory.configComponent.getOutputs(TransmissionType.ITEM).get(2));
|
||||
factory.securityComponent.readFrom(securityComponent);
|
||||
|
||||
for(TransmissionType transmission : configComponent.transmissions)
|
||||
{
|
||||
factory.configComponent.setConfig(transmission, configComponent.getConfig(transmission));
|
||||
factory.configComponent.setEjecting(transmission, configComponent.isEjecting(transmission));
|
||||
}
|
||||
|
||||
factory.inventory[5] = inventory[0];
|
||||
factory.inventory[1] = inventory[1];
|
||||
factory.inventory[8] = inventory[2];
|
||||
factory.inventory[0] = inventory[3];
|
||||
factory.inventory[4] = inventory[4];
|
||||
|
||||
for(Upgrade upgrade : factory.upgradeComponent.getSupportedTypes())
|
||||
{
|
||||
factory.recalculateUpgradables(upgrade);
|
||||
}
|
||||
|
||||
factory.upgraded = true;
|
||||
factory.markDirty();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public float getVolume()
|
||||
|
||||
@@ -8,11 +8,13 @@ import java.io.IOException;
|
||||
import mekanism.api.MekanismConfig;
|
||||
import mekanism.api.MekanismConfig.ultimate;
|
||||
import mekanism.common.Mekanism;
|
||||
import mekanism.common.Resource;
|
||||
import mekanism.common.Tier.BaseTier;
|
||||
import mekanism.common.Tier.FactoryTier;
|
||||
import mekanism.common.Version;
|
||||
import mekanism.common.base.IFactory.RecipeType;
|
||||
import mekanism.common.base.IModule;
|
||||
import mekanism.common.block.BlockMachine.MachineType;
|
||||
import mekanism.common.recipe.ShapedMekanismRecipe;
|
||||
import mekanism.common.util.MekanismUtils;
|
||||
import mekanism.ultimate.common.item.ItemBlockUltimateFactory;
|
||||
@@ -64,13 +66,49 @@ public class MekanismUltimate implements IModule
|
||||
|
||||
private void addRecipes()
|
||||
{
|
||||
if (!MekanismConfig.recipes.enableFactories || !ultimate.factoryEnabled || !ultimate.enableFactoryRecipes)
|
||||
if (!MekanismConfig.recipes.enableFactories)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (RecipeType.SAWING.isEnabled() && UltimateConfig.enableSawmillFactoryRecipes)
|
||||
{
|
||||
RecipeType type = RecipeType.SAWING;
|
||||
MachineType.BASIC_FACTORY.addRecipe(new ShapedMekanismRecipe(MekanismUtils.getFactory(FactoryTier.BASIC, type), new Object[] {
|
||||
"RCR", "iOi", "RCR",
|
||||
Character.valueOf('R'), "alloyBasic",
|
||||
Character.valueOf('C'), MekanismUtils.getControlCircuit(BaseTier.BASIC),
|
||||
Character.valueOf('i'), "ingotIron",
|
||||
Character.valueOf('O'), type.getStack()
|
||||
}));
|
||||
MachineType.ADVANCED_FACTORY.addRecipe(new ShapedMekanismRecipe(MekanismUtils.getFactory(FactoryTier.ADVANCED, type), new Object[] {
|
||||
"ECE", "oOo", "ECE",
|
||||
Character.valueOf('E'), "alloyAdvanced",
|
||||
Character.valueOf('C'), MekanismUtils.getControlCircuit(BaseTier.ADVANCED),
|
||||
Character.valueOf('o'), "ingot" + Resource.OSMIUM.getOredictName(),
|
||||
Character.valueOf('O'), MekanismUtils.getFactory(FactoryTier.BASIC, type)
|
||||
}));
|
||||
MachineType.ELITE_FACTORY.addRecipe(new ShapedMekanismRecipe(MekanismUtils.getFactory(FactoryTier.ELITE, type), new Object[] {
|
||||
"RCR", "gOg", "RCR",
|
||||
Character.valueOf('R'), "alloyElite",
|
||||
Character.valueOf('C'), MekanismUtils.getControlCircuit(BaseTier.ELITE),
|
||||
Character.valueOf('g'), "ingotGold",
|
||||
Character.valueOf('O'), MekanismUtils.getFactory(FactoryTier.ADVANCED, type)
|
||||
}));
|
||||
}
|
||||
|
||||
if (!ultimate.factoryEnabled || !ultimate.enableFactoryRecipes)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for (RecipeType type : RecipeType.values())
|
||||
{
|
||||
if (type == RecipeType.SAWING && (!type.isEnabled() || !UltimateConfig.enableSawmillFactoryRecipes))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
ItemStack result = MekanismUtils.getFactory(FactoryTier.ULTIMATE, type);
|
||||
ItemStack eliteFactory = MekanismUtils.getFactory(FactoryTier.ELITE, type);
|
||||
CraftingManager.getInstance().getRecipeList().add(new ShapedMekanismRecipe(result, new Object[] {
|
||||
@@ -103,6 +141,8 @@ public class MekanismUltimate implements IModule
|
||||
dataStream.writeDouble(ultimate.factoryUsageMultiplier);
|
||||
dataStream.writeInt(ultimate.factoryEnergyStorageTicks);
|
||||
dataStream.writeBoolean(ultimate.enableFactoryRecipes);
|
||||
dataStream.writeBoolean(ultimate.sawmillFactoriesEnabled);
|
||||
dataStream.writeBoolean(UltimateConfig.enableSawmillFactoryRecipes);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -113,6 +153,8 @@ public class MekanismUltimate implements IModule
|
||||
ultimate.factoryUsageMultiplier = dataStream.readDouble();
|
||||
ultimate.factoryEnergyStorageTicks = dataStream.readInt();
|
||||
ultimate.enableFactoryRecipes = dataStream.readBoolean();
|
||||
ultimate.sawmillFactoriesEnabled = dataStream.readBoolean();
|
||||
UltimateConfig.enableSawmillFactoryRecipes = dataStream.readBoolean();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -23,6 +23,10 @@ public class UltimateCommonProxy implements IGuiHandler
|
||||
"Number of ticks of full nine-process base usage that an Ultimate Factory can store.", 1, Integer.MAX_VALUE).getInt();
|
||||
ultimate.enableFactoryRecipes = MekanismUltimate.configuration.get("recipes", "EnableUltimateFactoryRecipes", true,
|
||||
"Enable crafting recipes for all Ultimate Factory variants.").getBoolean();
|
||||
ultimate.sawmillFactoriesEnabled = MekanismUltimate.configuration.get("machines", "SawingFactoriesEnabled", true,
|
||||
"Enable the backported Basic, Advanced, Elite, and Ultimate Sawing Factories. Existing placed factories remain usable when disabled.").setRequiresMcRestart(true).getBoolean();
|
||||
UltimateConfig.enableSawmillFactoryRecipes = MekanismUltimate.configuration.get("recipes", "EnableSawingFactoryRecipes", true,
|
||||
"Enable crafting recipes for all Sawing Factory tiers.").setRequiresMcRestart(true).getBoolean();
|
||||
|
||||
if (MekanismUltimate.configuration.hasChanged())
|
||||
{
|
||||
|
||||
@@ -6,6 +6,8 @@ import mekanism.common.Tier.FactoryTier;
|
||||
|
||||
public final class UltimateConfig
|
||||
{
|
||||
public static boolean enableSawmillFactoryRecipes = true;
|
||||
|
||||
private UltimateConfig()
|
||||
{
|
||||
}
|
||||
|
||||
@@ -100,6 +100,11 @@ public class BlockUltimateFactory extends BlockMachine
|
||||
|
||||
for (RecipeType type : RecipeType.values())
|
||||
{
|
||||
if (type == RecipeType.SAWING && !type.isEnabled())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
ItemStack stack = new ItemStack(item);
|
||||
((IFactory)stack.getItem()).setRecipeType(type.ordinal(), stack);
|
||||
list.add(stack);
|
||||
|
||||
@@ -633,6 +633,7 @@ gui.factory.Combining=Combining
|
||||
gui.factory.Purifying=Purifying
|
||||
gui.factory.Injecting=Injecting
|
||||
gui.factory.Infusing=Infusing
|
||||
gui.factory.Sawing=Sawing
|
||||
|
||||
gui.seismicReader.short=S. Reader
|
||||
gui.seismicReader.solids=Solids
|
||||
|
||||
|
After Width: | Height: | Size: 884 B |
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 761 B |
|
After Width: | Height: | Size: 978 B |
|
After Width: | Height: | Size: 832 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 832 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 615 B |
|
After Width: | Height: | Size: 2.4 KiB |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 891 B |
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 762 B |
|
After Width: | Height: | Size: 974 B |
|
After Width: | Height: | Size: 845 B |
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 845 B |
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 629 B |
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 870 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 766 B |
|
After Width: | Height: | Size: 989 B |
|
After Width: | Height: | Size: 834 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 834 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 615 B |
|
After Width: | Height: | Size: 2.4 KiB |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 1015 B |
|
After Width: | Height: | Size: 1.6 KiB |
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2
|
||||
]
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 934 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 694 B |
|
After Width: | Height: | Size: 2.9 KiB |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"animation": {
|
||||
"frametime": 1,
|
||||
"frames": [
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]
|
||||
}
|
||||
}
|
||||