コード例 #1
0
        public static void Patch()
        {
            try
            {
                QuickLogger.Message("Started patching - " + QuickLogger.GetAssemblyVersion());

                if (TechTypeHandler.TryGetModdedTechType("SeamothHullModule4", out TechType vehicleHullModule4) &&
                    TechTypeHandler.TryGetModdedTechType("SeamothHullModule5", out TechType vehicleHullModule5))
                {
                    VehicleUpgrader.SetModdedDepthModules(vehicleHullModule4, vehicleHullModule5);
                }

                SpeedBooster speedModule = SpeedBooster.Main;
                speedModule.Patch();

                VehicleUpgrader.SetSpeedBooster(speedModule);

                var harmony = HarmonyInstance.Create("com.upgradedvehicles.psmod");
                harmony.PatchAll(Assembly.GetExecutingAssembly());

                QuickLogger.Message("Finished patching");
            }
            catch (Exception ex)
            {
                QuickLogger.Error("EXCEPTION on Patch: " + ex.ToString());
            }
        }
コード例 #2
0
        public static void Patch()
        {
            try
            {
                Console.WriteLine($"[UpgradedVehicles] Start patching");

                var speedModule = new SpeedBooster();
                speedModule.Patch();

                var powerCore = new VehiclePowerCore(speedModule);
                powerCore.Patch();

                var mothMk2 = new SeaMothMk2(powerCore);
                mothMk2.Patch();

                var suitMk2 = new ExosuitMk2(powerCore);
                suitMk2.Patch();

                var mothMk3 = new SeaMothMk3(powerCore);
                mothMk3.Patch();

                HarmonyInstance harmony = HarmonyInstance.Create("com.upgradedvehicles.psmod");
                harmony.PatchAll(Assembly.GetExecutingAssembly());

                Console.WriteLine($"[UpgradedVehicles] Finish patching");
            }
            catch (Exception ex)
            {
                Console.WriteLine("[UpgradedVehicles] EXCEPTION on Patch: " + ex.ToString());
            }
        }
コード例 #3
0
        internal static void SetSpeedBooster(SpeedBooster speedModule)
        {
            if (!speedModule.IsPatched)
            {
                QuickLogger.Debug($"SpeedBooster was not patched", true);
                return;
            }

            CommonUpgradeModules.Add(speedModule.TechType);
        }
コード例 #4
0
 internal VehiclePowerCore(SpeedBooster speedBoostModule)
     : base(nameID: "VehiclePowerCore",
            friendlyName: "Vehicle Power Core",
            description: "A modified power core for constructing upgraded vehicles. Enables permanent enhancements without use of external upgrade modules.",
            template: TechType.PrecursorIonPowerCell,
            fabricatorType: CraftTree.Type.SeamothUpgrades,
            fabricatorTab: "CommonModules",
            requiredAnalysis: TechType.BaseUpgradeConsole,
            groupForPDA: TechGroup.Resources,
            categoryForPDA: TechCategory.Electronics)
 {
     SpeedBoosterID = speedBoostModule.TechType;
 }
コード例 #5
0
        public static void Patch()
        {
#if DEBUG
            QuickLogger.DebugLogsEnabled = true;
#endif

            try
            {
                QuickLogger.Info("Started patching - " + QuickLogger.GetAssemblyVersion());

                CrossModUpdates();

                CraftTreeHandler.AddTabNode(CraftTree.Type.Workbench, WorkBenchTab, "Armor Modules", SpriteManager.Get(TechType.VehicleArmorPlating));

                //Handle SpeedBooster
                var speedModule = new SpeedBooster();
                speedModule.Patch();

                //Handle HullArmorUpgrades
                var hullArmorMk2Module = new HullArmorMk2();
                hullArmorMk2Module.Patch();

                var hullArmorMk3Module = new HullArmorMk3(hullArmorMk2Module.TechType);
                hullArmorMk3Module.Patch();

                var hullArmorMk4Module = new HullArmorMk4(hullArmorMk3Module.TechType);
                hullArmorMk4Module.Patch();

                //Handle Config Options
                var configOptions = new UpgradeOptions();
                configOptions.Initialize();

                VehicleUpgrader.SetBonusSpeedMultipliers(configOptions.SeamothBonusSpeedMultiplier, configOptions.ExosuitBonusSpeedMultiplier);

                var harmony = HarmonyInstance.Create("com.upgradedvehicles.psmod");
                harmony.PatchAll(Assembly.GetExecutingAssembly());

                QuickLogger.Info("Finished patching");
            }
            catch (Exception ex)
            {
                QuickLogger.Error(ex);
            }
        }
コード例 #6
0
        private static void HandleSpeedBooster()
        {
            speedModule = SpeedBooster.GetSpeedBoosterCraftable();

            VehicleUpgrader.SetSpeedBooster(speedModule);
        }