Add debug logs
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
using System.Reflection.Emit;
|
||||
using HarmonyLib;
|
||||
using Mafi;
|
||||
@@ -24,7 +23,6 @@ using Mafi.Core.Products;
|
||||
using Mafi.Core.Prototypes;
|
||||
using Mafi.Core.Terrain;
|
||||
using Mafi.Core.Vehicles.Excavators;
|
||||
using Mafi.Core.Vehicles.Jobs;
|
||||
using Mafi.Core.World.Entities;
|
||||
|
||||
namespace CykaOfIndustry {
|
||||
@@ -33,36 +31,46 @@ namespace CykaOfIndustry {
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetCapacity")]
|
||||
static void excavatorCapacityMultiplier(ref int quantity) {
|
||||
// Console.WriteLine("IndustrialCyka: Old excavator capacity: {0}", quantity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old excavator capacity {0}", quantity);
|
||||
quantity *= Main.excavatorCapacityMultiplier.Value;
|
||||
// Console.WriteLine("IndustrialCyka: Old excavator capacity: {0}", quantity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New excavator capacity {0}", quantity);
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetMinedThicknessByDistanceMeters")]
|
||||
static void excavatorMiningAreaMultiplier(ref float[] thicknessMeters) {
|
||||
for (int i = 0; i < thicknessMeters.Length; i++) {
|
||||
// Console.WriteLine("IndustrialCyka: Old mining area: {0}", thicknessMeters[i]);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old mining area {0}", thicknessMeters[i]);
|
||||
thicknessMeters[i] *= Main.excavatorMiningAreaMultiplier.Value;
|
||||
// Console.WriteLine("IndustrialCyka: New mining area: {0}", thicknessMeters[i]);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New mining area {0}", thicknessMeters[i]);
|
||||
}
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetMaxMiningDistance")]
|
||||
static void excavatorReachMultiplier(ref RelTile1i minMiningDistance, ref RelTile1i maxMiningDistance) {
|
||||
Console.WriteLine("Min distance: {0}, max distance: {1}", minMiningDistance, maxMiningDistance);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old min mining distance {0}, max mining distance {1}",
|
||||
minMiningDistance, maxMiningDistance);
|
||||
minMiningDistance = new RelTile1i((int)(minMiningDistance.Value * Main.excavatorMinReachMultiplier.Value));
|
||||
maxMiningDistance = new RelTile1i((int)(maxMiningDistance.Value * Main.excavatorMaxReachMultiplier.Value));
|
||||
Console.WriteLine("Min distance: {0}, max distance: {1}", minMiningDistance, maxMiningDistance);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New min mining distance {0}, max mining distance {1}",
|
||||
minMiningDistance, maxMiningDistance);
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(TruckProtoBuilder.TruckProtoBuilderState), "SetCapacity")]
|
||||
static void truckCapacityMultiplier(ref int quantity) {
|
||||
// Console.WriteLine("IndustrialCyka: Old truck capacity: {0}", quantity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old truck capacity {0}", quantity);
|
||||
quantity *= Main.truckCapacityMultiplier.Value;
|
||||
// Console.WriteLine("IndustrialCyka: New truck capacity: {0}", quantity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New truck capacity {0}", quantity);
|
||||
}
|
||||
|
||||
// [HarmonyPrefix]
|
||||
@@ -80,9 +88,11 @@ namespace CykaOfIndustry {
|
||||
typeof(CargoShipModuleProto.Gfx)
|
||||
})]
|
||||
static void cargoShipCapacityMultiplier(CargoShipModuleProto __instance) {
|
||||
// Console.WriteLine("IndustrialCyka: Old ship capacity: {0}", __instance.Capacity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old ship capacity {0}", __instance.Capacity);
|
||||
__instance.Capacity = new Quantity(__instance.Capacity.Value * Main.cargoShipCapacityMultiplier.Value);
|
||||
// Console.WriteLine("IndustrialCyka: New ship capacity: {0}", __instance.Capacity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New ship capacity {0}", __instance.Capacity);
|
||||
}
|
||||
|
||||
// No workey... idk how it's supposed to work, speed is always 1 or 100%
|
||||
@@ -133,8 +143,10 @@ namespace CykaOfIndustry {
|
||||
typeof(IEnumerable<Tag>)
|
||||
})]
|
||||
static void storageCapacityMultiplier(StorageProto __instance) {
|
||||
// Console.WriteLine("IndustrialCyka: Old storage capacity: {0}", __instance.Capacity.Value);
|
||||
// Console.WriteLine("IndustrialCyka: Old storage transfer limit: {0}", __instance.TransferLimit.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old storage capacity {0}", __instance.Capacity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old storage transfer limit {0}", __instance.TransferLimit);
|
||||
Traverse traverse = Traverse.Create(__instance);
|
||||
|
||||
traverse.Field("Capacity")
|
||||
@@ -142,17 +154,21 @@ namespace CykaOfIndustry {
|
||||
traverse.Field("TransferLimit").SetValue(new Quantity(10000));
|
||||
traverse.Field("TransferLimitDuration").SetValue(Duration.FromTicks(1));
|
||||
|
||||
// Console.WriteLine("IndustrialCyka: New storage capacity: {0}", __instance.Capacity.Value);
|
||||
// Console.WriteLine("IndustrialCyka: New storage transfer limit: {0}", __instance.TransferLimit.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New storage capacity {0}", __instance.Capacity);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New storage transfer limit {0}", __instance.TransferLimit);
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
[HarmonyPatch(typeof(UpointsManager), "GenerateUnity")]
|
||||
static void unityGenerationMultiplier(Proto.ID categoryId, ref Upoints generated) {
|
||||
// Console.WriteLine("IndustrialCyka: Old generated {0} unity", generated.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old generated {0} unity", generated.Value);
|
||||
Fix32 multi = Fix32.FromFloat(Main.unityGenerationMultiplier.Value);
|
||||
generated = new Upoints(generated.Value * multi);
|
||||
// Console.WriteLine("IndustrialCyka: New generated {0} unity", generated.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New generated {0} unity", generated.Value);
|
||||
}
|
||||
|
||||
[HarmonyTranspiler]
|
||||
@@ -206,8 +222,12 @@ namespace CykaOfIndustry {
|
||||
return;
|
||||
}
|
||||
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old buffer capacity {0}", newCapacity);
|
||||
Quantity newNewCapacity = new Quantity((int)(newCapacity.Value * Main.bufferCapacityMultiplier.Value));
|
||||
newCapacity = newNewCapacity;
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New buffer capacity {0}", newCapacity);
|
||||
}
|
||||
|
||||
[HarmonyPostfix]
|
||||
@@ -229,14 +249,16 @@ namespace CykaOfIndustry {
|
||||
typeof(IEnumerable<Tag>),
|
||||
})]
|
||||
static void depotTransferSpeedMultiplier(CargoDepotModuleProto __instance) {
|
||||
// Console.WriteLine("IndustrialCyka: Old storage capacity: {0}", __instance.Capacity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old depot transfer speed {0}", __instance.QuantityPerExchange);
|
||||
Traverse traverse = Traverse.Create(__instance);
|
||||
|
||||
traverse.Field("QuantityPerExchange")
|
||||
.SetValue(new Quantity((int)(__instance.QuantityPerExchange.Value *
|
||||
Main.depotTransferSpeedMultiplier.Value)));
|
||||
|
||||
// Console.WriteLine("IndustrialCyka: New storage capacity: {0}", __instance.Capacity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New depot transfer speed {0}", __instance.QuantityPerExchange);
|
||||
}
|
||||
|
||||
[HarmonyPostfix]
|
||||
@@ -258,7 +280,9 @@ namespace CykaOfIndustry {
|
||||
typeof(IEnumerable<Tag>),
|
||||
})]
|
||||
static void worldMineSpeedMultiplier(WorldMapMineProto __instance) {
|
||||
// Console.WriteLine("Before: {0}", __instance.ProducedProductPerStep.Quantity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old world mine speed {0}",
|
||||
__instance.ProducedProductPerStep.Quantity);
|
||||
ProductQuantity newProductQuantity = new ProductQuantity(__instance.ProducedProductPerStep.Product,
|
||||
new Quantity((int)(__instance.ProducedProductPerStep.Quantity.Value *
|
||||
Main.worldMineSpeedMultiplier.Value)));
|
||||
@@ -266,7 +290,9 @@ namespace CykaOfIndustry {
|
||||
Traverse.Create(__instance)
|
||||
.Field("ProducedProductPerStep")
|
||||
.SetValue(newProductQuantity);
|
||||
// Console.WriteLine("After: {0}", __instance.ProducedProductPerStep.Quantity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New world mine speed {0}",
|
||||
__instance.ProducedProductPerStep.Quantity);
|
||||
}
|
||||
|
||||
[HarmonyPostfix]
|
||||
@@ -297,9 +323,8 @@ namespace CykaOfIndustry {
|
||||
int newLevelsPerUpgrade = 10;
|
||||
int newMaxLevel = (int)Math.Ceiling((double)maxLevel / newLevelsPerUpgrade) * newLevelsPerUpgrade;
|
||||
|
||||
// Console.WriteLine("Level: {0}, MaxLevel: {1}, LevelsPerUpgrade: {2}", level, maxLevel, levelsPerUpgrade);
|
||||
// Console.WriteLine("NewMaxLevel: {0}", newMaxLevel);
|
||||
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old max level {0}, new max level {1}", maxLevel, newMaxLevel);
|
||||
traverse.Field("MaxLevel").SetValue(newMaxLevel);
|
||||
traverse.Field("LevelsPerUpgrade").SetValue(newLevelsPerUpgrade);
|
||||
}
|
||||
@@ -341,6 +366,8 @@ namespace CykaOfIndustry {
|
||||
|
||||
if (codes[i].opcode.Equals(matchTable[matches])) {
|
||||
if (matches == totalMatch - 1) {
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Patching world mine level increment");
|
||||
codes[i + 4].opcode = OpCodes.Add;
|
||||
codes[i + 5].opcode = OpCodes.Brtrue_S;
|
||||
break;
|
||||
@@ -370,8 +397,12 @@ namespace CykaOfIndustry {
|
||||
typeof(SettlementHousingModuleProto.Gfx),
|
||||
})]
|
||||
static void housingCapacityMultiplier(SettlementHousingModuleProto __instance) {
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old housing capacity {0}", __instance.Capacity);
|
||||
Traverse.Create(__instance).Field<int>("Capacity").Value =
|
||||
(int)(__instance.Capacity * Main.housingCapacityMultiplier.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New housing capacity {0}", __instance.Capacity);
|
||||
}
|
||||
|
||||
[HarmonyPostfix]
|
||||
@@ -390,9 +421,13 @@ namespace CykaOfIndustry {
|
||||
typeof(IEnumerable<Tag>),
|
||||
})]
|
||||
static void dumpDelayMultiplier(StackerProto __instance) {
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old dumpDelay {0}", __instance.DumpDelay);
|
||||
Duration newDelay =
|
||||
new Duration(Math.Max((int)(__instance.DumpDelay.Ticks * Main.dumpDelayMultiplier.Value), 1));
|
||||
Traverse.Create(__instance).Field("DumpDelay").SetValue(newDelay);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New dumpDelay {0}", __instance.DumpDelay);
|
||||
}
|
||||
|
||||
[HarmonyPrefix]
|
||||
@@ -435,9 +470,14 @@ namespace CykaOfIndustry {
|
||||
if (IoPort.MAX_TRANSFER_PER_TICK.Value < 10000)
|
||||
typeof(IoPort).GetField("MAX_TRANSFER_PER_TICK").SetValue(null, new Quantity(10000));
|
||||
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Old maxQuantityPerTransportedProduct {0}",
|
||||
maxQuantityPerTransportedProduct);
|
||||
maxQuantityPerTransportedProduct *= 1000;
|
||||
maxQuantityPerTransportedProduct = maxQuantityPerTransportedProduct.Min(new Quantity(10000));
|
||||
Console.WriteLine("maxQuantityPerTransportedProduct {0}", maxQuantityPerTransportedProduct);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: New maxQuantityPerTransportedProduct {0}",
|
||||
maxQuantityPerTransportedProduct);
|
||||
|
||||
speedPerTick *= 10;
|
||||
transportedProductsSpacing = speedPerTick;
|
||||
@@ -469,9 +509,13 @@ namespace CykaOfIndustry {
|
||||
[HarmonyPatch(typeof(Excavator), "MineMixedAt")]
|
||||
public class MineMixedAtPatch {
|
||||
public static Dictionary<Excavator, Quantity> originalCapacity = new Dictionary<Excavator, Quantity>();
|
||||
|
||||
public static Dictionary<Excavator, ImmutableArray<ThicknessTilesF>> originalMinedThicknessByDistance =
|
||||
new Dictionary<Excavator, ImmutableArray<ThicknessTilesF>>();
|
||||
|
||||
public static Dictionary<ExcavatorProto.Timings, int> originalMineTileIterations =
|
||||
new Dictionary<ExcavatorProto.Timings, int>();
|
||||
|
||||
static void Prefix(ref Excavator __instance) {
|
||||
if (!originalCapacity.ContainsKey(__instance)) {
|
||||
originalCapacity.Add(__instance, __instance.Prototype.Capacity);
|
||||
@@ -480,7 +524,8 @@ namespace CykaOfIndustry {
|
||||
var trav = Traverse.Create(__instance.Prototype);
|
||||
trav.Field("Capacity")
|
||||
.SetValue(new Quantity(originalCapacity[__instance].Value * Main.excavatorCapacityMultiplier.Value));
|
||||
// Console.WriteLine("IndustrialCyka: Excavator capacity: {0}", __instance.Prototype.Capacity.Value);
|
||||
if (Main.debugMode.Value)
|
||||
Console.WriteLine("IndustrialCyka: Excavator capacity: {0}", __instance.Prototype.Capacity.Value);
|
||||
|
||||
if (!originalMinedThicknessByDistance.ContainsKey(__instance)) {
|
||||
originalMinedThicknessByDistance.Add(__instance,
|
||||
|
||||
Reference in New Issue
Block a user