diff --git a/Projects/TerraTech/TerraTech/ModuleWeaponGunManager.cs b/Projects/TerraTech/TerraTech/ModuleWeaponGunManager.cs index 5199f12..46845a5 100644 --- a/Projects/TerraTech/TerraTech/ModuleWeaponGunManager.cs +++ b/Projects/TerraTech/TerraTech/ModuleWeaponGunManager.cs @@ -9,10 +9,6 @@ namespace TerraTech { new MultipliedObjectManager(ConfigureManager); private static readonly MultipliedObjectManager fireDataManager = new MultipliedObjectManager(ConfigureFireData); - private static readonly MultipliedObjectManager projectileManager = - new MultipliedObjectManager(ConfigureProjectile); - private static readonly MultipliedObjectManager missileProjectileManager = - new MultipliedObjectManager(ConfigureMissileProjectile); public static ConfigEntry playerOnly; public static ConfigEntry kickbackStrengthMultiplier; @@ -22,9 +18,6 @@ namespace TerraTech { public static ConfigEntry shotCooldownMultiplier; public static ConfigEntry seekingRoundsAll; public static ConfigEntry resetBurstOnInterruptAll; - public static ConfigEntry projectileLifetimeMultiplier; - public static ConfigEntry missileProjectileBoosterLifetimeMultiplier; - public static ConfigEntry projectileExplodeOnStickAll; public static void Setup(ConfigFile config) { float min = 0.01f; @@ -67,22 +60,6 @@ namespace TerraTech { "FireData", "Reset Burst On Interrupt All", false, new ConfigDescription("Reset Burst On Interrupt All", new AcceptableValueRange(false, true))); resetBurstOnInterruptAll.SettingChanged += (sender, args) => DoPatch(); - - projectileLifetimeMultiplier = config.Bind( - "Projectile", "Lifetime Multiplier", 1f, - new ConfigDescription("Projectile Lifetime Multiplier", new AcceptableValueRange(min, max))); - projectileLifetimeMultiplier.SettingChanged += (sender, args) => DoPatch(); - - missileProjectileBoosterLifetimeMultiplier = - config.Bind("MissileProjectile", "Booster Lifetime Multiplier", 1f, - new ConfigDescription("Missile Projectile Booster Lifetime Multiplier", - new AcceptableValueRange(min, max))); - missileProjectileBoosterLifetimeMultiplier.SettingChanged += (sender, args) => DoPatch(); - - projectileExplodeOnStickAll = config.Bind( - "Projectile", "Explode On Stick All", false, - new ConfigDescription("Projectile Explode On Stick All", new AcceptableValueRange(false, true))); - projectileExplodeOnStickAll.SettingChanged += (sender, args) => DoPatch(); } private static void ConfigureManager(MultipliedObject obj) { @@ -99,16 +76,6 @@ namespace TerraTech { obj.AddField(new FieldConfiguration("m_KickbackStrength", kickbackStrengthMultiplier)); } - private static void ConfigureProjectile(MultipliedObject obj) { - obj.AddField(new FieldConfiguration("m_Lifetime", projectileLifetimeMultiplier)); - obj.AddField(new FieldConfiguration("m_ExplodeOnStick", projectileExplodeOnStickAll)); - } - - private static void ConfigureMissileProjectile(MultipliedObject obj) { - obj.AddField(new FieldConfiguration("m_MaxBoosterLifetime", - missileProjectileBoosterLifetimeMultiplier)); - } - private static readonly Func ShouldApply = obj => { if (!playerOnly.Value) return true; @@ -124,20 +91,7 @@ namespace TerraTech { var trav = Traverse.Create(__instance); var firingData = trav.Field("m_FiringData"); - var projectile = trav.Field("m_BulletPrefab"); - var projectileType = projectile.GetValueType(); - var isMissileProjectile = projectileType == typeof(MissileProjectile); - fireDataManager.OnObjectAttached(firingData.GetValue()); - if (isMissileProjectile) { - var mproj = projectile.GetValue(); - if (mproj != null) - missileProjectileManager.OnObjectAttached(mproj); - } else { - var proj = projectile.GetValue(); - if (proj != null) - projectileManager.OnObjectAttached(proj); - } } [HarmonyPrefix] @@ -149,28 +103,12 @@ namespace TerraTech { return; var firingData = trav.Field("m_FiringData"); - var projectile = trav.Field("m_BulletPrefab"); - var projectileType = projectile.GetValueType(); - var isMissileProjectile = projectileType == typeof(MissileProjectile); - fireDataManager.OnObjectDetached(firingData.GetValue()); - manager.OnObjectDetached(__instance); - if (isMissileProjectile) { - var mproj = projectile.GetValue(); - if (mproj != null) - missileProjectileManager.OnObjectDetached(mproj); - } else { - var proj = projectile.GetValue(); - if (proj != null) - projectileManager.OnObjectDetached(proj); - } } public static void DoPatch() { fireDataManager.ApplyAll(); manager.ApplyAll(); - projectileManager.ApplyAll(); - missileProjectileManager.ApplyAll(); } } }