Files
tbd-station-14/Content.Server/Radiation/Systems/RadiationSystem.Cvar.cs
2022-10-11 14:09:10 +11:00

49 lines
1.7 KiB
C#

using Content.Shared.CCVar;
namespace Content.Server.Radiation.Systems;
// cvar updates
public partial class RadiationSystem
{
public float MinIntensity { get; private set; }
public float GridcastUpdateRate { get; private set; }
public bool GridcastSimplifiedSameGrid { get; private set; }
public float GridcastMaxDistance { get; private set; }
private void SubscribeCvars()
{
_cfg.OnValueChanged(CCVars.RadiationMinIntensity, SetMinRadiationIntensity, true);
_cfg.OnValueChanged(CCVars.RadiationGridcastUpdateRate, SetGridcastUpdateRate, true);
_cfg.OnValueChanged(CCVars.RadiationGridcastSimplifiedSameGrid, SetGridcastSimplifiedSameGrid, true);
_cfg.OnValueChanged(CCVars.RadiationGridcastMaxDistance, SetGridcastMaxDistance, true);
}
private void UnsubscribeCvars()
{
_cfg.UnsubValueChanged(CCVars.RadiationMinIntensity, SetMinRadiationIntensity);
_cfg.UnsubValueChanged(CCVars.RadiationGridcastUpdateRate, SetGridcastUpdateRate);
_cfg.UnsubValueChanged(CCVars.RadiationGridcastSimplifiedSameGrid, SetGridcastSimplifiedSameGrid);
_cfg.UnsubValueChanged(CCVars.RadiationGridcastMaxDistance, SetGridcastMaxDistance);
}
private void SetMinRadiationIntensity(float radiationMinIntensity)
{
MinIntensity = radiationMinIntensity;
}
private void SetGridcastUpdateRate(float updateRate)
{
GridcastUpdateRate = updateRate;
}
private void SetGridcastSimplifiedSameGrid(bool simplifiedSameGrid)
{
GridcastSimplifiedSameGrid = simplifiedSameGrid;
}
private void SetGridcastMaxDistance(float maxDistance)
{
GridcastMaxDistance = maxDistance;
}
}