-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Change SSS system to use CVars instead of datafield (#35)
skibidi toilet
- Loading branch information
Showing
6 changed files
with
73 additions
and
43 deletions.
There are no files selected for viewing
23 changes: 23 additions & 0 deletions
23
Content.Server/_SSS/SuspicionGameRule/SuspicionRuleSystem.CVars.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
using Content.Shared.CCVar; | ||
|
||
namespace Content.Server._SSS.SuspicionGameRule; | ||
|
||
public sealed partial class SuspicionRuleSystem | ||
{ | ||
private void InitializeCVars() | ||
{ | ||
Subs.CVar(_cfg, CCVars.SSSTraitorPercentage, f => _traitorPercentage = f, true); | ||
Subs.CVar(_cfg, CCVars.SSSDetectivePercentage, f => _detectivePercentage = f, true); | ||
Subs.CVar(_cfg, CCVars.SSSPreparingDuration, i => _preparingDuration = i, true); | ||
Subs.CVar(_cfg, CCVars.SSSRoundDuration, i => _roundDuration = i, true); | ||
Subs.CVar(_cfg, CCVars.SSSTimeAddedPerKill, i => _timeAddedPerKill = i, true); | ||
Subs.CVar(_cfg, CCVars.SSSPostRoundDuration, i => _postRoundDuration = i, true); | ||
} | ||
|
||
private float _traitorPercentage = 0.25f; | ||
private float _detectivePercentage = 0.25f; | ||
private int _preparingDuration = 30; | ||
private int _roundDuration = 480; | ||
private int _timeAddedPerKill = 30; | ||
private int _postRoundDuration = 30; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,45 @@ | ||
using Robust.Shared.Configuration; | ||
// ReSharper disable InconsistentNaming rawr | ||
|
||
namespace Content.Shared.CCVar; | ||
|
||
public sealed partial class CCVars | ||
{ | ||
//NONE??? | ||
/// <summary> | ||
/// Percentage of total players that will be a traitor. | ||
/// The number of players will be multiplied by this number, and then rounded down. | ||
/// If the result is less than 1 or more than the player count, it is clamped to those values. | ||
/// </summary> | ||
public static readonly CVarDef<float> SSSTraitorPercentage = | ||
CVarDef.Create("sss.traitor_percentage", 0.25f, CVar.SERVERONLY); | ||
|
||
/// <summary> | ||
/// Percentage of total players that will be a detective (detective innocent). Handled similar to traitor percentage (rounded down etc). | ||
/// </summary> | ||
public static readonly CVarDef<float> SSSDetectivePercentage = | ||
CVarDef.Create("sss.detective_percentage", 0.25f, CVar.SERVERONLY); | ||
|
||
/// <summary> | ||
/// How long to wait before the game starts after the round starts. | ||
/// </summary> | ||
public static readonly CVarDef<int> SSSPreparingDuration = | ||
CVarDef.Create("sss.preparing_duration", 30, CVar.SERVERONLY); | ||
|
||
/// <summary> | ||
/// How long the round lasts in seconds. | ||
/// </summary> | ||
public static readonly CVarDef<int> SSSRoundDuration = | ||
CVarDef.Create("sss.round_duration", 480, CVar.SERVERONLY); | ||
|
||
/// <summary> | ||
/// How long to add to the round time when a player is killed. | ||
/// </summary> | ||
public static readonly CVarDef<int> SSSTimeAddedPerKill = | ||
CVarDef.Create("sss.time_added_per_kill", 30, CVar.SERVERONLY); | ||
|
||
/// <summary> | ||
/// How long to wait before restarting the round after the summary is displayed. | ||
/// </summary> | ||
public static readonly CVarDef<int> SSSPostRoundDuration = | ||
CVarDef.Create("sss.post_round_duration", 30, CVar.SERVERONLY); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters