diff --git a/Projects/CykaOfQud/CavesOfQud.csproj b/Projects/CykaOfQud/CavesOfQud.csproj
index 5fbdea5..a4a5369 100644
--- a/Projects/CykaOfQud/CavesOfQud.csproj
+++ b/Projects/CykaOfQud/CavesOfQud.csproj
@@ -41,5 +41,9 @@
$(GAME_MANAGED)/UnityEngine.CoreModule.dll
False
+
+ $(GAME_MANAGED)/Assembly-CSharp.dll
+ False
+
\ No newline at end of file
diff --git a/Projects/CykaOfQud/Class1.cs b/Projects/CykaOfQud/Class1.cs
index ef88486..db57449 100644
--- a/Projects/CykaOfQud/Class1.cs
+++ b/Projects/CykaOfQud/Class1.cs
@@ -13,76 +13,79 @@ namespace CykaOfQud {
private const string pluginName = "CykaOfQud";
private const string pluginVersion = "1.0.0";
- public static ConfigEntry excavatorCapacityMultiplier;
- public static ConfigEntry excavatorMineTileIterationsMultiplier;
- public static ConfigEntry truckCapacityMultiplier;
- public static ConfigEntry cargoShipCapacityMultiplier;
- public static ConfigEntry excavatorMiningCapacityMultiplier;
- public static ConfigEntry excavatorMiningAreaMultiplier;
- public static ConfigEntry excavatorMinReachMultiplier;
- public static ConfigEntry excavatorMaxReachMultiplier;
- public static ConfigEntry bufferCapacityMultiplier;
- public static ConfigEntry unityGenerationMultiplier;
- public static ConfigEntry depotTransferSpeedMultiplier;
- public static ConfigEntry worldMineSpeedMultiplier;
- public static ConfigEntry housingCapacityMultiplier;
- public static ConfigEntry dumpDelayMultiplier;
- public static ConfigEntry transportSpeedMultiplier;
- public static ConfigEntry shipyardCargoMultiplier;
- public static ConfigEntry autosaveInterval;
- public static ConfigEntry recipeMultipliers;
- public static Dictionary recipeMultipliersDict;
+ public static ConfigEntry xpPerLevelMultiplier;
+
+// public static ConfigEntry excavatorMineTileIterationsMultiplier;
+// public static ConfigEntry truckCapacityMultiplier;
+// public static ConfigEntry cargoShipCapacityMultiplier;
+// public static ConfigEntry excavatorMiningCapacityMultiplier;
+// public static ConfigEntry excavatorMiningAreaMultiplier;
+// public static ConfigEntry excavatorMinReachMultiplier;
+// public static ConfigEntry excavatorMaxReachMultiplier;
+// public static ConfigEntry bufferCapacityMultiplier;
+// public static ConfigEntry unityGenerationMultiplier;
+// public static ConfigEntry depotTransferSpeedMultiplier;
+// public static ConfigEntry worldMineSpeedMultiplier;
+// public static ConfigEntry housingCapacityMultiplier;
+// public static ConfigEntry dumpDelayMultiplier;
+// public static ConfigEntry transportSpeedMultiplier;
+// public static ConfigEntry shipyardCargoMultiplier;
+// public static ConfigEntry autosaveInterval;
+// public static ConfigEntry recipeMultipliers;
+// public static Dictionary recipeMultipliersDict;
public static ConfigEntry 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"));
diff --git a/Projects/CykaOfQud/Patches.cs b/Projects/CykaOfQud/Patches.cs
index f265670..0feeea5 100644
--- a/Projects/CykaOfQud/Patches.cs
+++ b/Projects/CykaOfQud/Patches.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Emit;
+using CykaOfQud;
using HarmonyLib;
//using Mafi;
//using Mafi.Collections.ImmutableCollections;
@@ -28,18 +29,20 @@ using HarmonyLib;
//using Mafi.Core.World.Entities;
namespace CykaOfIndustry {
-// [HarmonyPatch]
-// public class Patches {
-// [HarmonyPrefix]
-// [HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetCapacity")]
-// static void excavatorCapacityMultiplier(ref int quantity) {
-// if (Main.debugMode.Value)
-// Console.WriteLine("IndustrialCyka: Old excavator capacity {0}", quantity);
-// quantity *= Main.excavatorCapacityMultiplier.Value;
-// if (Main.debugMode.Value)
-// Console.WriteLine("IndustrialCyka: New excavator capacity {0}", quantity);
-// }
-//
+ [HarmonyPatch]
+ public class Patches {
+ [HarmonyPostfix]
+ [HarmonyPatch(typeof(XRL.World.Parts.Leveler), "GetXPForLevel")]
+ static int xpPerLevelMultiplier(ref int __result) {
+ if (Main.debugMode.Value)
+ Console.WriteLine("CykaOfQud: Old XP for level {0}", __result);
+ __result = (int)(__result * Main.xpPerLevelMultiplier.Value);
+ if (Main.debugMode.Value)
+ Console.WriteLine("CykaOfQud: New XP for level {0}", __result);
+ return __result;
+ }
+
+ }
// [HarmonyPrefix]
// [HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetMinedThicknessByDistanceMeters")]
// static void excavatorMiningAreaMultiplier(ref float[] thicknessMeters) {