Add faster dump patch
This commit is contained in:
@@ -24,6 +24,7 @@ namespace CaptainOfIndustry {
|
||||
public static ConfigEntry<float> depotTransferSpeedMultiplier;
|
||||
public static ConfigEntry<float> worldMineSpeedMultiplier;
|
||||
public static ConfigEntry<float> housingCapacityMultiplier;
|
||||
public static ConfigEntry<float> dumpDelayMultiplier;
|
||||
|
||||
public void Awake() {
|
||||
excavatorCapacityMultiplier = Config.Bind("General", "Excavator Capacity Multiplier", 1, new ConfigDescription("Excavator Capacity Multiplier"));
|
||||
@@ -38,6 +39,7 @@ namespace CaptainOfIndustry {
|
||||
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"));
|
||||
|
||||
// shootingSpeedMultiplier.SettingChanged += (sender, args) => WeaponPropertiesManager.DoPatch();
|
||||
// energyGenMultiplier.SettingChanged += (sender, args) => GeneratorPropertiesManager.DoPatch();
|
||||
|
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection.Emit;
|
||||
@@ -15,6 +16,7 @@ using Mafi.Core.Entities.Dynamic;
|
||||
using Mafi.Core.Entities.Static;
|
||||
using Mafi.Core.Entities.Static.Layout;
|
||||
using Mafi.Core.Factory.Machines;
|
||||
using Mafi.Core.Factory.Transports;
|
||||
using Mafi.Core.Population;
|
||||
using Mafi.Core.Products;
|
||||
using Mafi.Core.Prototypes;
|
||||
@@ -366,5 +368,28 @@ namespace CaptainOfIndustry {
|
||||
Traverse.Create(__instance).Field<int>("Capacity").Value =
|
||||
(int)(__instance.Capacity * Main.housingCapacityMultiplier.Value);
|
||||
}
|
||||
|
||||
// ublic StackerProto(StaticEntityProto.ID id, Proto.Str strings, EntityLayout layout, EntityCosts costs, Electricity consumedPowerPerTick, ThicknessTilesI minDumpOffset, RelTile3i dumpHeadRelPos, Duration dumpDelay, Duration dumpPeriod, StackerProto.Gfx graphics, ThicknessTilesI defaultDumpOffset, IEnumerable<Tag> tags = null)
|
||||
|
||||
[HarmonyPostfix]
|
||||
[HarmonyPatch(typeof(StackerProto), MethodType.Constructor, new[] {
|
||||
typeof(StaticEntityProto.ID),
|
||||
typeof(Proto.Str),
|
||||
typeof(EntityLayout),
|
||||
typeof(EntityCosts),
|
||||
typeof(Electricity),
|
||||
typeof(ThicknessTilesI),
|
||||
typeof(RelTile3i),
|
||||
typeof(Duration),
|
||||
typeof(Duration),
|
||||
typeof(StackerProto.Gfx),
|
||||
typeof(ThicknessTilesI),
|
||||
typeof(IEnumerable<Tag>),
|
||||
})]
|
||||
static void dumpDelayMultiplier(StackerProto __instance) {
|
||||
Duration newDelay =
|
||||
new Duration(Math.Max((int)(__instance.DumpDelay.Ticks * Main.dumpDelayMultiplier.Value), 1));
|
||||
Traverse.Create(__instance).Field("DumpDelay").SetValue(newDelay);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user