// ABOUT ME // Components merged into the Missile Launcher. They broadcast, over the heat // network, whether this launcher is currently set to Thermal Canister Missiles. // // Why it exists: banking heat is only worth anything if something on the ship // actually spends heat as ammunition. On a ship with no thermal launchers, // holding the heat network near full buys nothing, so the radiators should just // behave as they do in vanilla. Radiators treat a received 0 as permission to // vent freely. // // ThermalMissilesToggle is the launcher's own vanilla mode toggle // (ModeToggle, Mode = MissileType, OnMode = 4), so this signal follows the // player's ammunition selection live, including mid-battle switches. // // Carried as a NetworkValue rather than a NetworkToggle: vanilla marks every // NetworkToggle IncludeInPhysical = false, so they do not carry a signal on a // real ship. AutoRad_One { Type = StaticValue; Value = 1 } AutoRad_Zero { Type = StaticValue; Value = 0 } AutoRad_ThermalAmmoValue { Type = ToggleValueSelector Toggle = ThermalMissilesToggle ToggleOnValue = AutoRad_One ToggleOffValue = AutoRad_Zero } AutoRad_NetworkedThermalAmmo { Type = NetworkValue ValueSource = AutoRad_ThermalAmmoValue Categories = [ auto_radiator_ammo_user ] IncludeInBlueprints = false } // Routes the broadcast onto the heat network. NetworkHeatOutputProxy is what // the launcher's thermal ports anchor on. Those ports are only operational in // thermal missile mode, so a launcher loaded with anything else is simply not // on the network -- which is the behaviour we want anyway. AutoRad_Router { Type = NetworkRouter RouteGenerators [ { Type = Bidirectional Routes [ [NetworkHeatOutputProxy, AutoRad_NetworkedThermalAmmo, 0] ] } ] }