package mcjty.rftools.blocks.spaceprojector;
import net.minecraftforge.common.config.Configuration;
public class SpaceProjectorConfiguration {
public static final String CATEGORY_SPACEPROJECTOR = "spaceProjector";
public static int SPACEPROJECTOR_MAXENERGY = 100000;
public static int SPACEPROJECTOR_RECEIVEPERTICK = 1000;
public static int BUILDER_MAXENERGY = 10000000;
public static int BUILDER_RECEIVEPERTICK = 50000;
public static int builderRfPerOperation = 500;
public static int builderRfPerQuarry = 300;
public static int builderRfPerEntity = 5000;
public static int builderRfPerPlayer = 40000;
public static double dimensionCostFactor = 5.0f;
public static BuilderTileEntityMode teMode = BuilderTileEntityMode.MOVE_WHITELIST;
public static int maxSpaceChamberDimension = 128;
public static double voidShapeCardFactor = 0.5;
public static double silkquarryShapeCardFactor = 3;
public static double fortunequarryShapeCardFactor = 2;
public static boolean quarryChunkloads = true;
public static boolean shapeCardAllowed = true;
public static boolean quarryAllowed = true;
public static boolean clearingQuarryAllowed = true;
public static int quarryBaseSpeed = 8;
public static int quarryInfusionSpeedFactor = 20;
public static boolean quarrySkipTileEntities = true;
public static int maxBuilderOffset = 260;
public static int maxBuilderDimension = 512;
public static boolean oldSphereCylinderShape = false;
public static void init(Configuration cfg) {
SPACEPROJECTOR_MAXENERGY = cfg.get(CATEGORY_SPACEPROJECTOR, "spaceProjectorMaxRF", SPACEPROJECTOR_MAXENERGY,
"Maximum RF storage that the space projector can hold").getInt();
SPACEPROJECTOR_RECEIVEPERTICK = cfg.get(CATEGORY_SPACEPROJECTOR, "spaceProjectorRFPerTick", SPACEPROJECTOR_RECEIVEPERTICK,
"RF per tick that the space projector can receive").getInt();
BUILDER_MAXENERGY = cfg.get(CATEGORY_SPACEPROJECTOR, "builderMaxRF", BUILDER_MAXENERGY,
"Maximum RF storage that the builder can hold").getInt();
BUILDER_RECEIVEPERTICK = cfg.get(CATEGORY_SPACEPROJECTOR, "builderRFPerTick", BUILDER_RECEIVEPERTICK,
"RF per tick that the builder can receive").getInt();
builderRfPerOperation = cfg.get(CATEGORY_SPACEPROJECTOR, "builderRfPerOperation", builderRfPerOperation,
"RF per block operation for the builder when used to build").getInt();
builderRfPerQuarry = cfg.get(CATEGORY_SPACEPROJECTOR, "builderRfPerQuarry", builderRfPerQuarry,
"Base RF per block operation for the builder when used as a quarry or voider (actual cost depends on hardness of block)").getInt();
builderRfPerEntity = cfg.get(CATEGORY_SPACEPROJECTOR, "builderRfPerEntity", builderRfPerEntity,
"RF per entity move operation for the builder").getInt();
builderRfPerPlayer = cfg.get(CATEGORY_SPACEPROJECTOR, "builderRfPerPlayer", builderRfPerPlayer,
"RF per player move operation for the builder").getInt();
teMode = BuilderTileEntityMode.find(cfg.get(CATEGORY_SPACEPROJECTOR, "tileEntityMode", teMode.getName(),
"Can Tile Entities be moved? 'forbidden' means never, 'whitelist' means only whitelisted, 'blacklist' means all except blacklisted, 'allowed' means all").getString());
maxSpaceChamberDimension = cfg.get(CATEGORY_SPACEPROJECTOR, "maxSpaceChamberDimension", maxSpaceChamberDimension,
"Maximum dimension for the space chamber").getInt();
dimensionCostFactor = cfg.get(CATEGORY_SPACEPROJECTOR, "dimensionCostFactor", dimensionCostFactor,
"How much more expensive a move accross dimensions is").getDouble();
voidShapeCardFactor = cfg.get(CATEGORY_SPACEPROJECTOR, "voidShapeCardFactor", voidShapeCardFactor,
"The RF per operation of the builder is multiplied with this factor when using the void shape card").getDouble();
silkquarryShapeCardFactor = cfg.get(CATEGORY_SPACEPROJECTOR, "silkquarryShapeCardFactor", silkquarryShapeCardFactor,
"The RF per operation of the builder is multiplied with this factor when using the silk quarry shape card").getDouble();
fortunequarryShapeCardFactor = cfg.get(CATEGORY_SPACEPROJECTOR, "fortunequarryShapeCardFactor", fortunequarryShapeCardFactor,
"The RF per operation of the builder is multiplied with this factor when using the fortune quarry shape card").getDouble();
quarrySkipTileEntities = cfg.get(CATEGORY_SPACEPROJECTOR, "quarrySkipTileEntities", quarrySkipTileEntities,
"If true the quarry will skip all tile entities. Set this to false to allow harvesting ores that are tile entities. Be careful with this!").getBoolean();
quarryChunkloads = cfg.get(CATEGORY_SPACEPROJECTOR, "quarryChunkloads", quarryChunkloads,
"If true the quarry will chunkload a chunk at a time. If false the quarry will stop if a chunk is not loaded").getBoolean();
shapeCardAllowed = cfg.get(CATEGORY_SPACEPROJECTOR, "shapeCardAllowed", shapeCardAllowed,
"If true we allow shape cards to be crafted. Note that in order to use the quarry system you must also enable this").getBoolean();
quarryAllowed = cfg.get(CATEGORY_SPACEPROJECTOR, "quarryAllowed", quarryAllowed,
"If true we allow quarry cards to be crafted").getBoolean();
clearingQuarryAllowed = cfg.get(CATEGORY_SPACEPROJECTOR, "clearingQuarryAllowed", clearingQuarryAllowed,
"If true we allow the clearing quarry cards to be crafted (these can be heavier on the server)").getBoolean();
quarryBaseSpeed = cfg.get(CATEGORY_SPACEPROJECTOR, "quarryBaseSpeed", quarryBaseSpeed,
"The base speed (number of blocks per tick) of the quarry").getInt();
quarryInfusionSpeedFactor = cfg.get(CATEGORY_SPACEPROJECTOR, "quarryInfusionSpeedFactor", quarryInfusionSpeedFactor,
"Multiply the infusion factor with this value and add that to the quarry base speed").getInt();
maxBuilderOffset = cfg.get(CATEGORY_SPACEPROJECTOR, "maxBuilderOffset", maxBuilderOffset,
"Maximum offset of the shape when a shape card is used in the builder").getInt();
maxBuilderDimension = cfg.get(CATEGORY_SPACEPROJECTOR, "maxBuilderDimension", maxBuilderDimension,
"Maximum dimension of the shape when a shape card is used in the builder").getInt();
oldSphereCylinderShape = cfg.get(CATEGORY_SPACEPROJECTOR, "oldSphereCylinderShape", oldSphereCylinderShape,
"If true we go back to the old (wrong) sphere/cylinder calculation for the builder/shield").getBoolean();
}
}