mirror of
https://github.com/corvax-team/ss14-wl.git
synced 2026-02-14 19:29:57 +01:00
Splitting WLCCvar into separate logical group files (#403)
* splitting WLCCvar into separate logical group files * fix SendManifestDiscord
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
using Content.Server.Discord;
|
||||
using Content.Shared.CCVar;
|
||||
using Content.Shared.GameTicking;
|
||||
using Content.Shared._WL.CCVars; //WL-Change: Send Manifest in Discord
|
||||
|
||||
namespace Content.Server.GameTicking
|
||||
{
|
||||
@@ -81,14 +82,14 @@ namespace Content.Server.GameTicking
|
||||
}, true);
|
||||
Subs.CVar(_cfg, CCVars.RoundEndSoundCollection, value => RoundEndSoundCollection = value, true);
|
||||
//WL-Change: Send Manifest in Discord Start
|
||||
Subs.CVar(_cfg, CCVars.DiscordRoundManifestWebhook, value =>
|
||||
Subs.CVar(_cfg, WLCVars.DiscordRoundManifestWebhook, value =>
|
||||
{
|
||||
if (!string.IsNullOrWhiteSpace(value))
|
||||
{
|
||||
_discord.GetWebhook(value, data => _webhookIdentifierManifest = data.ToIdentifier());
|
||||
}
|
||||
}, true);
|
||||
Subs.CVar(_cfg, CCVars.DiscordRoundManifestWebhookEmbedColor, value =>
|
||||
Subs.CVar(_cfg, WLCVars.DiscordRoundManifestWebhookEmbedColor, value =>
|
||||
{
|
||||
_webhookEmbedColor = Color.DeepSkyBlue;
|
||||
if (Color.TryParse(value, out var color))
|
||||
|
||||
@@ -711,7 +711,7 @@ namespace Content.Server.GameTicking
|
||||
var payload = new WebhookPayload { Embeds = [embed] };
|
||||
await _discord.CreateMessage(_webhookIdentifierManifest.Value, payload);
|
||||
|
||||
if (!string.IsNullOrEmpty(roundEndMessage.RoundEndText))
|
||||
if (!string.IsNullOrEmpty(roundEndMessage.RoundEndText) && roundEndMessage.RoundEndText != "\n")
|
||||
{
|
||||
if (roundEndMessage.RoundEndText.Length <= 4096)
|
||||
{
|
||||
|
||||
@@ -59,20 +59,6 @@ public sealed partial class CCVars
|
||||
public static readonly CVarDef<string> DiscordRoundEndRoleWebhook =
|
||||
CVarDef.Create("discord.round_end_role", string.Empty, CVar.SERVERONLY);
|
||||
|
||||
//WL-Change: Send Manifest in Discord Start
|
||||
/// <summary>
|
||||
/// URL of the Discord webhook which will relay manifest messages.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> DiscordRoundManifestWebhook =
|
||||
CVarDef.Create("discord.round_manifest_webhook", string.Empty, CVar.SERVERONLY | CVar.CONFIDENTIAL);
|
||||
|
||||
/// <summary>
|
||||
/// HEX color of manifest discord webhook's embed.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> DiscordRoundManifestWebhookEmbedColor =
|
||||
CVarDef.Create("discord.round_manifest_webhook_embed_color", Color.DeepSkyBlue.ToHex(), CVar.SERVERONLY);
|
||||
//WL-Change: Send Manifest in Discord End
|
||||
|
||||
/// <summary>
|
||||
/// The token used to authenticate with Discord. For the Bot to function set: discord.token, discord.guild_id, and discord.prefix.
|
||||
/// If this is empty, the bot will not connect.
|
||||
|
||||
27
Content.Shared/_WL/CCVars/WLCCVars.Discord.cs
Normal file
27
Content.Shared/_WL/CCVars/WLCCVars.Discord.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Через какое время все токены на подключение аккаунта игры к дискорду будут недействительны.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> DiscordAuthTokensExpirationTime =
|
||||
CVarDef.Create("discord.auth_tokens_expiration_time", 300, CVar.REPLICATED);
|
||||
|
||||
/// <summary>
|
||||
/// URL of the Discord webhook which will relay manifest messages.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> DiscordRoundManifestWebhook =
|
||||
CVarDef.Create("discord.round_manifest_webhook", string.Empty, CVar.SERVERONLY | CVar.CONFIDENTIAL);
|
||||
|
||||
/// <summary>
|
||||
/// HEX color of manifest discord webhook's embed.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> DiscordRoundManifestWebhookEmbedColor =
|
||||
CVarDef.Create("discord.round_manifest_webhook_embed_color", Color.DeepSkyBlue.ToHex(), CVar.SERVERONLY);
|
||||
}
|
||||
21
Content.Shared/_WL/CCVars/WLCCVars.Game.cs
Normal file
21
Content.Shared/_WL/CCVars/WLCCVars.Game.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Через сколько времени(в секундах) появится кнопка возвращения в лобби.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> GhostReturnToLobbyButtonCooldown =
|
||||
CVarDef.Create("ghost.return_to_lobby_button_cooldown", 600, CVar.SERVERONLY); //WL-changes (10 minutes)
|
||||
|
||||
/// <summary>
|
||||
/// Нужно ли проверять игрока на возраст при выборе роли.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> IsAgeCheckNeeded =
|
||||
CVarDef.Create("game.is_age_check_needed", true, CVar.REPLICATED);
|
||||
}
|
||||
18
Content.Shared/_WL/CCVars/WLCCVars.HTTPAPI.cs
Normal file
18
Content.Shared/_WL/CCVars/WLCCVars.HTTPAPI.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Токен для авторизации htpp-запросов на api сервера.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> WLApiToken =
|
||||
CVarDef.Create(
|
||||
"admin.wl_api_token", string.Empty,
|
||||
CVar.SERVERONLY | CVar.CONFIDENTIAL,
|
||||
"Строковой токен, использующийся для авторизации HTTP-запросов, отправленных на http API сервера.");
|
||||
}
|
||||
15
Content.Shared/_WL/CCVars/WLCCVars.Ic.cs
Normal file
15
Content.Shared/_WL/CCVars/WLCCVars.Ic.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Количество символов в динамическом описании
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> MaxDynamicTextLength =
|
||||
CVarDef.Create("ic.dynamic_text_length", 1024, CVar.SERVER | CVar.REPLICATED);
|
||||
}
|
||||
23
Content.Shared/_WL/CCVars/WLCCVars.Poly.cs
Normal file
23
Content.Shared/_WL/CCVars/WLCCVars.Poly.cs
Normal file
@@ -0,0 +1,23 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Интервал, через который Поли™ будет готова выбрать новое сообщение!
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> PolyMessageChooseCooldown =
|
||||
CVarDef.Create("poly.choose_cooldown_time", 3600, CVar.SERVERONLY,
|
||||
"Интервал, через который Поли™ будет готова выбрать новое сообщение!");
|
||||
|
||||
/// <summary>
|
||||
/// Нужна ли очистка выбранных Поли™ сообщений после РАУНДА.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> PolyNeededRoundEndCleanup =
|
||||
CVarDef.Create("poly.round_end_cleanup", false, CVar.SERVERONLY,
|
||||
"Нужна ли очистка выбранных Поли™ сообщений после РАУНДА.");
|
||||
}
|
||||
15
Content.Shared/_WL/CCVars/WLCCVars.Skills.cs
Normal file
15
Content.Shared/_WL/CCVars/WLCCVars.Skills.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// ГАНС! ЕСЛИ ОНИ ВДРУГ НЕ НУЖНЫ ТО ПЕРЕКЛЮЧИ ПЕРЕКЛЮЧАТЕЛЬ!!!
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> SkillsEnabled =
|
||||
CVarDef.Create("skills.enabled", true, CVar.SERVER | CVar.REPLICATED | CVar.ARCHIVE);
|
||||
}
|
||||
28
Content.Shared/_WL/CCVars/WLCCVars.Vote.cs
Normal file
28
Content.Shared/_WL/CCVars/WLCCVars.Vote.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using Robust.Shared.Configuration;
|
||||
|
||||
namespace Content.Shared._WL.CCVars;
|
||||
|
||||
/// <summary>
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/// <summary>
|
||||
/// Доступна ли игрокам возможность вызвать шаттл голосованием?
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> VoteShuttleEnabled =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_enabled", true, CVar.SERVERONLY);
|
||||
|
||||
/// <summary>
|
||||
/// Сколько требуется согласных игроков для вызова.
|
||||
/// В процентах.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<float> VoteShuttlePlayersRatio =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_ratio", 0.6f, CVar.SERVERONLY);
|
||||
|
||||
/// <summary>
|
||||
/// Время голосования.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> VoteShuttleTimer =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_time", 40, CVar.SERVERONLY);
|
||||
}
|
||||
@@ -6,96 +6,7 @@ namespace Content.Shared._WL.CCVars;
|
||||
/// WL modules console variables
|
||||
/// </summary>
|
||||
[CVarDefs]
|
||||
public sealed class WLCVars
|
||||
public sealed partial class WLCVars
|
||||
{
|
||||
/*
|
||||
* Game
|
||||
*/
|
||||
/// <summary>
|
||||
/// Через сколько времени(в секундах) появится кнопка возвращения в лобби.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> GhostReturnToLobbyButtonCooldown =
|
||||
CVarDef.Create("ghost.return_to_lobby_button_cooldown", 600, CVar.SERVERONLY); //WL-changes (10 minutes)
|
||||
|
||||
/// <summary>
|
||||
/// Нужно ли проверять игрока на возраст при выборе роли.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> IsAgeCheckNeeded =
|
||||
CVarDef.Create("game.is_age_check_needed", true, CVar.REPLICATED);
|
||||
|
||||
/*
|
||||
* HTTP API
|
||||
*/
|
||||
/// <summary>
|
||||
/// Токен для авторизации htpp-запросов на api сервера.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<string> WLApiToken =
|
||||
CVarDef.Create(
|
||||
"admin.wl_api_token", string.Empty,
|
||||
CVar.SERVERONLY | CVar.CONFIDENTIAL,
|
||||
"Строковой токен, использующийся для авторизации HTTP-запросов, отправленных на http API сервера.");
|
||||
|
||||
/*
|
||||
* Discord
|
||||
*/
|
||||
/// <summary>
|
||||
/// Через какое время все токены на подключение аккаунта игры к дискорду будут недействительны.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> DiscordAuthTokensExpirationTime =
|
||||
CVarDef.Create("discord.auth_tokens_expiration_time", 300, CVar.REPLICATED);
|
||||
|
||||
/*
|
||||
* Poly
|
||||
*/
|
||||
/// <summary>
|
||||
/// Интервал, через который Поли™ будет готова выбрать новое сообщение!
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> PolyMessageChooseCooldown =
|
||||
CVarDef.Create("poly.choose_cooldown_time", 3600, CVar.SERVERONLY,
|
||||
"Интервал, через который Поли™ будет готова выбрать новое сообщение!");
|
||||
|
||||
/// <summary>
|
||||
/// Нужна ли очистка выбранных Поли™ сообщений после РАУНДА.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> PolyNeededRoundEndCleanup =
|
||||
CVarDef.Create("poly.round_end_cleanup", false, CVar.SERVERONLY,
|
||||
"Нужна ли очистка выбранных Поли™ сообщений после РАУНДА.");
|
||||
|
||||
/*
|
||||
* Vote
|
||||
*/
|
||||
/// <summary>
|
||||
/// Доступна ли игрокам возможность вызвать шаттл голосованием?
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> VoteShuttleEnabled =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_enabled", true, CVar.SERVERONLY);
|
||||
|
||||
/// <summary>
|
||||
/// Сколько требуется согласных игроков для вызова.
|
||||
/// В процентах.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<float> VoteShuttlePlayersRatio =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_ratio", 0.6f, CVar.SERVERONLY);
|
||||
|
||||
/// <summary>
|
||||
/// Время голосования.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<int> VoteShuttleTimer =
|
||||
CVarDef.Create("vote.evacuation_shuttle_vote_time", 40, CVar.SERVERONLY);
|
||||
|
||||
/*
|
||||
* Ic
|
||||
*/
|
||||
|
||||
public static readonly CVarDef<int> MaxDynamicTextLength =
|
||||
CVarDef.Create("ic.dynamic_text_length", 1024, CVar.SERVER | CVar.REPLICATED);
|
||||
|
||||
/*
|
||||
* Skills
|
||||
*/
|
||||
/// <summary>
|
||||
/// ГАНС! ЕСЛИ ОНИ ВДРУГ НЕ НУЖНЫ ТО ПЕРЕКЛЮЧИ ПЕРЕКЛЮЧАТЕЛЬ!!!
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> SkillsEnabled =
|
||||
CVarDef.Create("skills.enabled", true, CVar.SERVER | CVar.REPLICATED | CVar.ARCHIVE);
|
||||
// Реклама, которая работает!
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user