Add xp multiplier.. of some variety

This commit is contained in:
2024-12-08 23:53:37 +01:00
parent fdc4ccef4c
commit bbcf1f229d
3 changed files with 87 additions and 77 deletions

View File

@@ -13,76 +13,79 @@ namespace CykaOfQud {
private const string pluginName = "CykaOfQud";
private const string pluginVersion = "1.0.0";
public static ConfigEntry<int> excavatorCapacityMultiplier;
public static ConfigEntry<float> excavatorMineTileIterationsMultiplier;
public static ConfigEntry<int> truckCapacityMultiplier;
public static ConfigEntry<int> cargoShipCapacityMultiplier;
public static ConfigEntry<float> excavatorMiningCapacityMultiplier;
public static ConfigEntry<int> excavatorMiningAreaMultiplier;
public static ConfigEntry<float> excavatorMinReachMultiplier;
public static ConfigEntry<float> excavatorMaxReachMultiplier;
public static ConfigEntry<float> bufferCapacityMultiplier;
public static ConfigEntry<float> unityGenerationMultiplier;
public static ConfigEntry<float> depotTransferSpeedMultiplier;
public static ConfigEntry<float> worldMineSpeedMultiplier;
public static ConfigEntry<float> housingCapacityMultiplier;
public static ConfigEntry<float> dumpDelayMultiplier;
public static ConfigEntry<float> transportSpeedMultiplier;
public static ConfigEntry<float> shipyardCargoMultiplier;
public static ConfigEntry<int> autosaveInterval;
public static ConfigEntry<string> recipeMultipliers;
public static Dictionary<string, int> recipeMultipliersDict;
public static ConfigEntry<float> xpPerLevelMultiplier;
// public static ConfigEntry<float> excavatorMineTileIterationsMultiplier;
// public static ConfigEntry<int> truckCapacityMultiplier;
// public static ConfigEntry<int> cargoShipCapacityMultiplier;
// public static ConfigEntry<float> excavatorMiningCapacityMultiplier;
// public static ConfigEntry<int> excavatorMiningAreaMultiplier;
// public static ConfigEntry<float> excavatorMinReachMultiplier;
// public static ConfigEntry<float> excavatorMaxReachMultiplier;
// public static ConfigEntry<float> bufferCapacityMultiplier;
// public static ConfigEntry<float> unityGenerationMultiplier;
// public static ConfigEntry<float> depotTransferSpeedMultiplier;
// public static ConfigEntry<float> worldMineSpeedMultiplier;
// public static ConfigEntry<float> housingCapacityMultiplier;
// public static ConfigEntry<float> dumpDelayMultiplier;
// public static ConfigEntry<float> transportSpeedMultiplier;
// public static ConfigEntry<float> shipyardCargoMultiplier;
// public static ConfigEntry<int> autosaveInterval;
// public static ConfigEntry<string> recipeMultipliers;
// public static Dictionary<string, int> recipeMultipliersDict;
public static ConfigEntry<bool> debugMode;
public void Awake() {
excavatorCapacityMultiplier = Config.Bind("General", "Excavator Capacity Multiplier", 1,
new ConfigDescription("Excavator Capacity Multiplier"));
excavatorMineTileIterationsMultiplier = Config.Bind("General", "Excavator Mine Tile Iterations Multiplier",
1f,
new ConfigDescription("Excavator Mine Tile Iterations Multiplier"));
truckCapacityMultiplier = Config.Bind("General", "Truck Capacity Multiplier", 1,
new ConfigDescription("Truck Capacity Multiplier"));
cargoShipCapacityMultiplier = Config.Bind("General", "Cargo Ship Capacity Multiplier", 1,
new ConfigDescription("Cargo Ship Capacity Multiplier"));
excavatorMiningAreaMultiplier = Config.Bind("General", "Excavator Mining Area Multiplier", 1,
new ConfigDescription("Excavator Mining Area Multiplier"));
excavatorMiningCapacityMultiplier = Config.Bind("General", "Excavator Mining Capacity Multiplier", 1f,
new ConfigDescription("Excavator Mining Capacity Multiplier"));
excavatorMinReachMultiplier = Config.Bind("General", "Excavator Min Reach Multiplier", 1f,
new ConfigDescription("Excavator Min Reach Multiplier"));
excavatorMaxReachMultiplier = Config.Bind("General", "Excavator Max Reach Multiplier", 1f,
new ConfigDescription("Excavator Max Reach Multiplier"));
bufferCapacityMultiplier = Config.Bind("General", "Buffer Capacity Multiplier", 1f,
new ConfigDescription("Buffer Capacity Multiplier"));
unityGenerationMultiplier = Config.Bind("General", "Unity Generation Multiplier", 1f,
new ConfigDescription("Unity Generation Multiplier"));
depotTransferSpeedMultiplier = Config.Bind("General", "Depot Transfer Speed Multiplier", 1f,
new ConfigDescription("Depot Transfer Speed Multiplier"));
worldMineSpeedMultiplier = Config.Bind("General", "World Mine Speed Multiplier", 1f,
new ConfigDescription("World Mine Speed Multiplier"));
housingCapacityMultiplier = Config.Bind("General", "Housing Capacity Multiplier", 1f,
new ConfigDescription("Housing Capacity Multiplier"));
dumpDelayMultiplier = Config.Bind("General", "Dump Delay Multiplier", 1f,
new ConfigDescription("Dump Delay Multiplier"));
transportSpeedMultiplier = Config.Bind("General", "Transport Speed Multiplier", 1f,
new ConfigDescription("Transport Speed Multiplier"));
shipyardCargoMultiplier = Config.Bind("General", "Shipyard Cargo Multiplier", 1f,
new ConfigDescription("Shipyard Cargo Multiplier"));
autosaveInterval = Config.Bind("General", "Autosave Interval", 1,
new ConfigDescription("Autosave Interval in minutes"));
recipeMultipliers = Config.Bind("General", "Recipe Multipliers", "dirt:4",
new ConfigDescription("Recipe Multipliers"));
xpPerLevelMultiplier = Config.Bind("General", "XP Per Level Multiplier", 1f,
new ConfigDescription("XP Per Level Multiplier"));
// excavatorCapacityMultiplier = Config.Bind("General", "Excavator Capacity Multiplier", 1,
// new ConfigDescription("Excavator Capacity Multiplier"));
// excavatorMineTileIterationsMultiplier = Config.Bind("General", "Excavator Mine Tile Iterations Multiplier",
// 1f,
// new ConfigDescription("Excavator Mine Tile Iterations Multiplier"));
// truckCapacityMultiplier = Config.Bind("General", "Truck Capacity Multiplier", 1,
// new ConfigDescription("Truck Capacity Multiplier"));
// cargoShipCapacityMultiplier = Config.Bind("General", "Cargo Ship Capacity Multiplier", 1,
// new ConfigDescription("Cargo Ship Capacity Multiplier"));
// excavatorMiningAreaMultiplier = Config.Bind("General", "Excavator Mining Area Multiplier", 1,
// new ConfigDescription("Excavator Mining Area Multiplier"));
// excavatorMiningCapacityMultiplier = Config.Bind("General", "Excavator Mining Capacity Multiplier", 1f,
// new ConfigDescription("Excavator Mining Capacity Multiplier"));
// excavatorMinReachMultiplier = Config.Bind("General", "Excavator Min Reach Multiplier", 1f,
// new ConfigDescription("Excavator Min Reach Multiplier"));
// excavatorMaxReachMultiplier = Config.Bind("General", "Excavator Max Reach Multiplier", 1f,
// new ConfigDescription("Excavator Max Reach Multiplier"));
// bufferCapacityMultiplier = Config.Bind("General", "Buffer Capacity Multiplier", 1f,
// new ConfigDescription("Buffer Capacity Multiplier"));
// unityGenerationMultiplier = Config.Bind("General", "Unity Generation Multiplier", 1f,
// new ConfigDescription("Unity Generation Multiplier"));
// depotTransferSpeedMultiplier = Config.Bind("General", "Depot Transfer Speed Multiplier", 1f,
// new ConfigDescription("Depot Transfer Speed Multiplier"));
// worldMineSpeedMultiplier = Config.Bind("General", "World Mine Speed Multiplier", 1f,
// new ConfigDescription("World Mine Speed Multiplier"));
// housingCapacityMultiplier = Config.Bind("General", "Housing Capacity Multiplier", 1f,
// new ConfigDescription("Housing Capacity Multiplier"));
// dumpDelayMultiplier = Config.Bind("General", "Dump Delay Multiplier", 1f,
// new ConfigDescription("Dump Delay Multiplier"));
// transportSpeedMultiplier = Config.Bind("General", "Transport Speed Multiplier", 1f,
// new ConfigDescription("Transport Speed Multiplier"));
// shipyardCargoMultiplier = Config.Bind("General", "Shipyard Cargo Multiplier", 1f,
// new ConfigDescription("Shipyard Cargo Multiplier"));
// autosaveInterval = Config.Bind("General", "Autosave Interval", 1,
// new ConfigDescription("Autosave Interval in minutes"));
// recipeMultipliers = Config.Bind("General", "Recipe Multipliers", "dirt:4",
// new ConfigDescription("Recipe Multipliers"));
recipeMultipliersDict = recipeMultipliers.Value.Split(',')
.ToDictionary(x => x.Split(':')[0], x => int.Parse(x.Split(':')[1]));
recipeMultipliers.SettingChanged += (sender, args) => {
recipeMultipliersDict = recipeMultipliers.Value.Split(',')
.ToDictionary(x => x.Split(':')[0], x => int.Parse(x.Split(':')[1]));
Console.WriteLine("IndustrialCyka: Recipe multipliers parsed as:");
foreach (var kvp in recipeMultipliersDict)
Console.WriteLine("\tIndustrialCyka: {0} x {1}", kvp.Key, kvp.Value);
};
// recipeMultipliersDict = recipeMultipliers.Value.Split(',')
// .ToDictionary(x => x.Split(':')[0], x => int.Parse(x.Split(':')[1]));
// recipeMultipliers.SettingChanged += (sender, args) => {
// recipeMultipliersDict = recipeMultipliers.Value.Split(',')
// .ToDictionary(x => x.Split(':')[0], x => int.Parse(x.Split(':')[1]));
// Console.WriteLine("IndustrialCyka: Recipe multipliers parsed as:");
// foreach (var kvp in recipeMultipliersDict)
// Console.WriteLine("\tIndustrialCyka: {0} x {1}", kvp.Key, kvp.Value);
// };
debugMode = Config.Bind("General", "Debug Mode", false, new ConfigDescription("Debug Mode"));