GeneratorExhaustGasComponent.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. using Content.Shared.Atmos;
  2. namespace Content.Shared.Power.Generator;
  3. /// <summary>
  4. /// Makes a generator emit a gas into the atmosphere when running.
  5. /// </summary>
  6. /// <remarks>
  7. /// The amount of gas produced is linear with the amount of fuel used.
  8. /// </remarks>
  9. /// <seealso cref="SharedGeneratorSystem"/>
  10. /// <seealso cref="FuelGeneratorComponent"/>
  11. [RegisterComponent]
  12. public sealed partial class GeneratorExhaustGasComponent : Component
  13. {
  14. /// <summary>
  15. /// The type of gas that will be emitted by the generator.
  16. /// </summary>
  17. [DataField("gasType"), ViewVariables(VVAccess.ReadWrite)]
  18. public Gas GasType = Gas.CarbonDioxide;
  19. /// <summary>
  20. /// The amount of moles of gas that should be produced when one unit of fuel is burned.
  21. /// </summary>
  22. [DataField("moleRatio"), ViewVariables(VVAccess.ReadWrite)]
  23. public float MoleRatio = 1;
  24. /// <summary>
  25. /// The temperature of created gas.
  26. /// </summary>
  27. [DataField("temperature"), ViewVariables(VVAccess.ReadWrite)]
  28. public float Temperature = Atmospherics.T0C + 100;
  29. }