Add maximum atmos temperature limit (#22882)
* Add Tmax * Increase Tmax
This commit is contained in:
@@ -4,6 +4,7 @@ using System.Runtime.CompilerServices;
|
|||||||
using Content.Server.Atmos.Reactions;
|
using Content.Server.Atmos.Reactions;
|
||||||
using Content.Shared.Atmos;
|
using Content.Shared.Atmos;
|
||||||
using Robust.Shared.Serialization;
|
using Robust.Shared.Serialization;
|
||||||
|
using Robust.Shared.Utility;
|
||||||
|
|
||||||
namespace Content.Server.Atmos
|
namespace Content.Server.Atmos
|
||||||
{
|
{
|
||||||
@@ -58,8 +59,9 @@ namespace Content.Server.Atmos
|
|||||||
get => _temperature;
|
get => _temperature;
|
||||||
set
|
set
|
||||||
{
|
{
|
||||||
|
DebugTools.Assert(!float.IsNaN(_temperature));
|
||||||
if (Immutable) return;
|
if (Immutable) return;
|
||||||
_temperature = MathF.Max(value, Atmospherics.TCMB);
|
_temperature = MathF.Min(MathF.Max(value, Atmospherics.TCMB), Atmospherics.Tmax);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,15 @@ namespace Content.Shared.Atmos
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public const float T20C = 293.15f;
|
public const float T20C = 293.15f;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Do not allow any gas mixture temperatures to exceed this number. It is occasionally possible
|
||||||
|
/// to have very small heat capacity (e.g. room that was just unspaced) and for large amounts of
|
||||||
|
/// energy to be transferred to it, even for a brief moment. However, this messes up subsequent
|
||||||
|
/// calculations and so cap it here. The physical interpretation is that at this temperature, any
|
||||||
|
/// gas that you would have transforms into plasma.
|
||||||
|
/// </summary>
|
||||||
|
public const float Tmax = 200e3f;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Liters in a cell.
|
/// Liters in a cell.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user