public Program() { subsystemManager = new SubsystemManager(this); Runtime.UpdateFrequency = UpdateFrequency.Update1; AutopilotSubsystem = new AutopilotSubsystem(); AutopilotSubsystem.Persist = true; IntelSubsystem = new IntelSubsystem(); CombatSubsystem = new HornetCombatSubsystem(IntelSubsystem); LookingGlassNetwork = new LookingGlassNetworkSubsystem(IntelSubsystem, "LG", false, false); AgentSubsystem = new AgentSubsystem(IntelSubsystem, AgentClass.None); TorpedoSubsystem = new TorpedoSubsystem(IntelSubsystem); TaskGenerator = new HornetAttackTaskGenerator(this, CombatSubsystem, AutopilotSubsystem, AgentSubsystem, null, IntelSubsystem); AgentSubsystem.AddTaskGenerator(TaskGenerator); TaskGenerator.HornetAttackTask.FocusedTarget = true; CombatLoaderSubsystem = new CombatLoaderSubsystem("Fermi Cargo", "Combat Supplies"); ScannerSubsystem = new ScannerNetworkSubsystem(IntelSubsystem); LookingGlassNetwork.AddPlugin("combat", new LookingGlass_Heisenberg(this)); subsystemManager.AddSubsystem("autopilot", AutopilotSubsystem); subsystemManager.AddSubsystem("intel", IntelSubsystem); subsystemManager.AddSubsystem("combat", CombatSubsystem); subsystemManager.AddSubsystem("agent", AgentSubsystem); subsystemManager.AddSubsystem("scanner", ScannerSubsystem); subsystemManager.AddSubsystem("lookingglass", LookingGlassNetwork); subsystemManager.DeserializeManager(Storage); }
// { // { MyItemType.MakeComponent("SteelPlate"), 87} , // { MyItemType.MakeComponent("Construction"), 47} , // { MyItemType.MakeComponent("LargeTube"), 5} , // { MyItemType.MakeComponent("Motor"), 10} , // { MyItemType.MakeComponent("Computer"), 37} , // { MyItemType.MakeComponent("MetalGrid"), 4} , // { MyItemType.MakeComponent("SmallTube"), 14} , // { MyItemType.MakeComponent("InteriorPlate"), 2} , // { MyItemType.MakeComponent("Girder"), 1} , // { MyItemType.MakeComponent("Explosives"), 2} , // { MyItemType.MakeComponent("PowerCell"), 2} , // }; public Program() { Context = new ExecutionContext(this); subsystemManager = new SubsystemManager(Context); Runtime.UpdateFrequency = UpdateFrequency.Update1; GridTerminalSystem.GetBlocksOfType <IMyTerminalBlock>(null, CollectBlocks); AutopilotSubsystem = new AtmoDrive(Controller, 5, Me); AutopilotSubsystem.FullAuto = false; IntelSubsystem = new IntelSubsystem(); Context.IntelSystem = IntelSubsystem; CombatSubsystem = new HornetCombatSubsystem(IntelSubsystem, false); LookingGlassNetwork = new LookingGlassNetworkSubsystem(IntelSubsystem, "LG", false, false); AgentSubsystem = new AgentSubsystem(IntelSubsystem, AgentClass.None); TaskGenerator = new HornetAttackTaskGenerator(this, CombatSubsystem, AutopilotSubsystem, AgentSubsystem, null, IntelSubsystem); AgentSubsystem.AddTaskGenerator(TaskGenerator); TaskGenerator.HornetAttackTask.FocusedTarget = true; CombatLoaderSubsystem = new CombatLoaderSubsystem(); //DockingSubsystem = new DockingSubsystem(IntelSubsystem, CombatLoaderSubsystem); TorpedoSubsystem = new TorpedoSubsystem(IntelSubsystem); ScannerSubsystem = new ScannerNetworkSubsystem(IntelSubsystem); LookingGlassNetwork.AddPlugin("combat", new LookingGlass_Fermi(this)); subsystemManager.AddSubsystem("autopilot", AutopilotSubsystem); subsystemManager.AddSubsystem("intel", IntelSubsystem); subsystemManager.AddSubsystem("combat", CombatSubsystem); subsystemManager.AddSubsystem("agent", AgentSubsystem); subsystemManager.AddSubsystem("scanner", ScannerSubsystem); subsystemManager.AddSubsystem("lookingglass", LookingGlassNetwork); subsystemManager.AddSubsystem("loader", CombatLoaderSubsystem); // subsystemManager.AddSubsystem("docking", DockingSubsystem); subsystemManager.AddSubsystem("torpedo", TorpedoSubsystem); subsystemManager.DeserializeManager(Storage); ParseConfigs(); }
public Program() { Context = new ExecutionContext(this); subsystemManager = new SubsystemManager(Context); Runtime.UpdateFrequency = UpdateFrequency.Update1; ParseConfigs(); // Add subsystems // Intel system setup IntelSubsystem intelSubsystem = new IntelSubsystem(1); Context.IntelSystem = intelSubsystem; subsystemManager.AddSubsystem("intel", intelSubsystem); LookingGlassNetworkSubsystem lookingGlassNetwork = null; // Looking Glass Setup if (LookingGlass) { lookingGlassNetwork = new LookingGlassNetworkSubsystem(intelSubsystem, "LG", !FixedLookingGlass, ThrusterLookingGlass); subsystemManager.AddSubsystem("lookingglass", lookingGlassNetwork); lookingGlassNetwork.AddPlugin("command", new LookingGlassPlugin_Command()); lookingGlassNetwork.AddPlugin("lidar", new LookingGlassPlugin_Lidar()); } // Hangar system setup HangarSubsystem hangarSubsystem = new HangarSubsystem(intelSubsystem); subsystemManager.AddSubsystem("hangar", hangarSubsystem); ScannerNetworkSubsystem scannerSubsystem = null; // Seeing-Eye scanner setup if (Scanner) { scannerSubsystem = new ScannerNetworkSubsystem(intelSubsystem, "SE"); subsystemManager.AddSubsystem("scanner", scannerSubsystem); } TorpedoSubsystem torpedoSubsystem = null; // Torpedo system setup if (Torpedos) { torpedoSubsystem = new TorpedoSubsystem(intelSubsystem); subsystemManager.AddSubsystem("torpedo", torpedoSubsystem); } lookingGlassNetwork?.AddPlugin("combat", new LookingGlassPlugin_Combat(torpedoSubsystem, hangarSubsystem, scannerSubsystem)); lookingGlassNetwork?.ActivatePlugin(DefaultLookingGlassPlugin); // // Command system setup TacticalCommandSubsystem tacticalSubsystem = new TacticalCommandSubsystem(intelSubsystem); subsystemManager.AddSubsystem("command", tacticalSubsystem); // Black ops // ECMInterfaceSubsystem ECM = new ECMInterfaceSubsystem(intelSubsystem); // subsystemManager.AddSubsystem("ECM", ECM); subsystemManager.AddSubsystem("loader", new CombatLoaderSubsystem(CombatLoaderCargo, CombatCargoStore)); subsystemManager.DeserializeManager(Storage); }