Add movement speed patch
This commit is contained in:
@@ -1,96 +1,53 @@
|
||||
using System.Linq;
|
||||
using BepInEx;
|
||||
using BepInEx.Configuration;
|
||||
using HarmonyLib;
|
||||
using HarmonyLib.Tools;
|
||||
|
||||
namespace Regiments {
|
||||
[BepInPlugin(pluginGuid, pluginName, pluginVersion)]
|
||||
public class Main : BaseUnityPlugin {
|
||||
private const string pluginGuid = "CykaMod";
|
||||
private const string pluginName = "CykaMod";
|
||||
private const string pluginVersion = "1.0.0";
|
||||
|
||||
public static ConfigEntry<float> SPMultiplier;
|
||||
public static ConfigEntry<float> TPMultiplier;
|
||||
public static ConfigEntry<float> SupplyAOEMultiplier;
|
||||
public static ConfigEntry<float> HQAOEMultiplier;
|
||||
public static ConfigEntry<float> SupplyAmountMultiplier;
|
||||
public static ConfigEntry<float> FireRateMultiplier;
|
||||
public static ConfigEntry<float> AimIntervalMultiplier;
|
||||
public static ConfigEntry<float> SupplyRateMultiplier;
|
||||
// public static ConfigEntry<float> magnetRadiusMultiplier;
|
||||
// public static ConfigEntry<float> beamStrenghtMultiplier;
|
||||
// public static ConfigEntry<float> beamRadiusMultiplier;
|
||||
// public static ConfigEntry<float> fuelTankRefillMultiplier;
|
||||
// public static ConfigEntry<float> fuelTankCapacityMultiplier;
|
||||
// public static ConfigEntry<float> minerGroundArea;
|
||||
// public static ConfigEntry<float> minerMiningSpeed;
|
||||
// public static ConfigEntry<float> wheelTorqueMultiplier;
|
||||
// public static ConfigEntry<float> wheelSpeedMultiplier;
|
||||
// public static ConfigEntry<float> jetThrustMultiplier;
|
||||
|
||||
public void Awake() {
|
||||
SPMultiplier = Config.Bind("General", "SP Multiplier", 1f,
|
||||
new ConfigDescription("SP Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
TPMultiplier = Config.Bind("General", "TP Multiplier", 1f,
|
||||
new ConfigDescription("TP Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyAOEMultiplier = Config.Bind("General", "Supply AOE Multiplier", 1f,
|
||||
new ConfigDescription("Supply AOE Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyAmountMultiplier = Config.Bind("General", "Supply Point Amount Multiplier", 1f,
|
||||
new ConfigDescription("Supply Point Amount Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyRateMultiplier = Config.Bind("General", "The rate at which HP and ammo is resupplied", 1f,
|
||||
new ConfigDescription("The rate at which HP and ammo is resupplied", new AcceptableValueRange<float>(1f, 16f)));
|
||||
HQAOEMultiplier = Config.Bind("General", "HQ AOE Multiplier", 1f,
|
||||
new ConfigDescription("HQ AOE Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
FireRateMultiplier = Config.Bind("General", "Fire Rate Multiplier", 1f,
|
||||
new ConfigDescription("Fire Rate Multiplier",
|
||||
new AcceptableValueRange<float>(0.1f, 32f)));
|
||||
AimIntervalMultiplier = Config.Bind("General", "Aiming Interval Multiplier", 1f,
|
||||
new ConfigDescription("Aiming Interval Multiplier", new AcceptableValueRange<float>(0.1f, 32f)));
|
||||
// beamStrenghtMultiplier = Config.Bind("Attractors", "Beam Strength Multiplier", 1f,
|
||||
// new ConfigDescription("Beam Strength Multiplier", new AcceptableValueRange<float>(1f, 16f)));
|
||||
// beamRadiusMultiplier = Config.Bind("Attractors", "Beam Radius Multiplier", 1f,
|
||||
// new ConfigDescription("Beam Radius Multiplier", new AcceptableValueRange<float>(1f, 16f)));
|
||||
//
|
||||
// fuelTankRefillMultiplier = Config.Bind("Propulsion", "Fuel Tank Refill Rate Multiplier", 1f,
|
||||
// new ConfigDescription("Fuel Tank Refill Rate Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
// fuelTankCapacityMultiplier = Config.Bind("Propulsion", "Fuel Tank Capacity Multiplier", 1f,
|
||||
// new ConfigDescription("Fuel Tank Capacity Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
// wheelTorqueMultiplier = Config.Bind("Propulsion", "Wheel Torque Multiplier", 1f,
|
||||
// new ConfigDescription("Wheel Torque Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
// wheelSpeedMultiplier = Config.Bind("Propulsion", "Wheel Max RPM Multiplier", 1f,
|
||||
// new ConfigDescription("Wheel Max RPM Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
// jetThrustMultiplier = Config.Bind("Propulsion", "Jet Thrust Multiplier", 1f,
|
||||
// new ConfigDescription("Jet Thrust Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
//
|
||||
// minerGroundArea = Config.Bind("Production", "Miner Ground Deposit Scan Area", 1f,
|
||||
// new ConfigDescription("Miner Ground Deposit Scan Area", new AcceptableValueRange<float>(1f, 32f)));
|
||||
// minerMiningSpeed = Config.Bind("Production", "Miner Mining Speed", 1f,
|
||||
// new ConfigDescription("Miner Mining Speed", new AcceptableValueRange<float>(1f, 32f)));
|
||||
//
|
||||
// allProjectilesHoming = Config.Bind("General", "Make All Projectiles Home", false);
|
||||
|
||||
// shootingSpeedMultiplier.SettingChanged += (sender, args) => WeaponPropertiesManager.DoPatch();
|
||||
// energyGenMultiplier.SettingChanged += (sender, args) => GeneratorPropertiesManager.DoPatch();
|
||||
// magnetStrenghtMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
|
||||
// magnetRadiusMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
|
||||
// beamStrenghtMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
|
||||
// beamRadiusMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
|
||||
// fuelTankRefillMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
|
||||
// fuelTankCapacityMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
|
||||
// wheelTorqueMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
|
||||
// wheelSpeedMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
|
||||
// jetThrustMultiplier.SettingChanged += (sender, args) => ThrusterPropertiesManager.DoPatch();
|
||||
// minerGroundArea.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
|
||||
// minerMiningSpeed.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
|
||||
|
||||
Logger.LogInfo("Cyka mod loaded");
|
||||
HarmonyFileLog.Enabled = true;
|
||||
Harmony harmony = new Harmony(pluginGuid);
|
||||
harmony.PatchAll();
|
||||
var originalMethods = harmony.GetPatchedMethods();
|
||||
Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
|
||||
}
|
||||
}
|
||||
}
|
||||
using System.Linq;
|
||||
using BepInEx;
|
||||
using BepInEx.Configuration;
|
||||
using HarmonyLib;
|
||||
using HarmonyLib.Tools;
|
||||
|
||||
namespace Regiments {
|
||||
[BepInPlugin(pluginGuid, pluginName, pluginVersion)]
|
||||
public class Main : BaseUnityPlugin {
|
||||
private const string pluginGuid = "CykaMod";
|
||||
private const string pluginName = "CykaMod";
|
||||
private const string pluginVersion = "1.0.0";
|
||||
|
||||
public static ConfigEntry<float> SPMultiplier;
|
||||
public static ConfigEntry<float> TPMultiplier;
|
||||
public static ConfigEntry<float> SupplyAOEMultiplier;
|
||||
public static ConfigEntry<float> HQAOEMultiplier;
|
||||
public static ConfigEntry<float> SupplyAmountMultiplier;
|
||||
public static ConfigEntry<float> FireRateMultiplier;
|
||||
public static ConfigEntry<float> AimIntervalMultiplier;
|
||||
public static ConfigEntry<float> SupplyRateMultiplier;
|
||||
public static ConfigEntry<float> MovementSpeedMultiplier;
|
||||
|
||||
public void Awake() {
|
||||
SPMultiplier = Config.Bind("General", "SP Multiplier", 1f,
|
||||
new ConfigDescription("SP Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
TPMultiplier = Config.Bind("General", "TP Multiplier", 1f,
|
||||
new ConfigDescription("TP Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyAOEMultiplier = Config.Bind("General", "Supply AOE Multiplier", 1f,
|
||||
new ConfigDescription("Supply AOE Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyAmountMultiplier = Config.Bind("General", "Supply Point Amount Multiplier", 1f,
|
||||
new ConfigDescription("Supply Point Amount Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
SupplyRateMultiplier = Config.Bind("General", "The rate at which HP and ammo is resupplied", 1f,
|
||||
new ConfigDescription("The rate at which HP and ammo is resupplied", new AcceptableValueRange<float>(1f, 16f)));
|
||||
HQAOEMultiplier = Config.Bind("General", "HQ AOE Multiplier", 1f,
|
||||
new ConfigDescription("HQ AOE Multiplier", new AcceptableValueRange<float>(1f, 32f)));
|
||||
FireRateMultiplier = Config.Bind("General", "Fire Rate Multiplier", 1f,
|
||||
new ConfigDescription("Fire Rate Multiplier",
|
||||
new AcceptableValueRange<float>(0.1f, 32f)));
|
||||
AimIntervalMultiplier = Config.Bind("General", "Aiming Interval Multiplier", 1f,
|
||||
new ConfigDescription("Aiming Interval Multiplier", new AcceptableValueRange<float>(0.1f, 32f)));
|
||||
MovementSpeedMultiplier = Config.Bind("General", "Movement Speed Multiplier", 1f,
|
||||
new ConfigDescription("Movement Speed Multiplier", new AcceptableValueRange<float>(0.1f, 32f)));
|
||||
|
||||
Logger.LogInfo("Cyka mod loaded");
|
||||
HarmonyFileLog.Enabled = true;
|
||||
Harmony harmony = new Harmony(pluginGuid);
|
||||
harmony.PatchAll();
|
||||
var originalMethods = harmony.GetPatchedMethods();
|
||||
Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -1,22 +1,14 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Reflection.Emit;
|
||||
using birdseye;
|
||||
using birdseye.Regiments;
|
||||
using birdseye.Regiments.Commanders;
|
||||
using birdseye.Regiments.GameModes;
|
||||
using birdseye.Regiments.Menu.GUI;
|
||||
using birdseye.Regiments.Platoons;
|
||||
using birdseye.Regiments.Platoons.Modules;
|
||||
using birdseye.Regiments.Units.Rigging;
|
||||
using birdseye.Regiments.Units.WeaponSystems;
|
||||
using birdseye.Regiments.Zones;
|
||||
using HarmonyLib;
|
||||
using UnityEngine;
|
||||
|
||||
// Patch maxSupPoints in PlatoonSupplyModule
|
||||
// Patch Operational Authority point gain
|
||||
|
||||
namespace Regiments {
|
||||
[HarmonyPatch]
|
||||
public class Patches {
|
||||
@@ -120,6 +112,12 @@ namespace Regiments {
|
||||
Console.WriteLine("Patching refit step to: {0} {1}", hpVal, ammoVal);
|
||||
}
|
||||
|
||||
[HarmonyPostfix]
|
||||
[HarmonyPatch(typeof(UnitMovementRig), nameof(UnitMovementRig.maxSpeed), MethodType.Getter)]
|
||||
static void MovementSpeedMultiplier(ref float __result) {
|
||||
__result *= Main.MovementSpeedMultiplier.Value;
|
||||
}
|
||||
|
||||
// [HarmonyPatch(typeof(AdvancedRulesData), "Validate")]
|
||||
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
|
||||
// var codes = new List<CodeInstruction>(instructions);
|
||||
|
Reference in New Issue
Block a user