From: Kyle Tyo <36606155+VerinSenpai@users.noreply.github.com> Date: Mon, 30 Jun 2025 23:33:59 +0000 (-0400) Subject: Dsay Dirty and Follow commands converted to LEC and localized. (#38666) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=0009ad32ab90395c1eab01e282f7c1f450c638e4;p=space-station-14.git Dsay Dirty and Follow commands converted to LEC and localized. (#38666) * commit * whoopwhoopwhoop --- diff --git a/Content.Server/Administration/Commands/DSay.cs b/Content.Server/Administration/Commands/DSay.cs index 8e7f0f4bf0..f5e0b32793 100644 --- a/Content.Server/Administration/Commands/DSay.cs +++ b/Content.Server/Administration/Commands/DSay.cs @@ -2,39 +2,36 @@ using Content.Server.Chat.Systems; using Content.Shared.Administration; using Robust.Shared.Console; -namespace Content.Server.Administration.Commands -{ - [AdminCommand(AdminFlags.Moderator)] - sealed class DSay : IConsoleCommand - { - [Dependency] private readonly IEntityManager _e = default!; - - public string Command => "dsay"; +namespace Content.Server.Administration.Commands; - public string Description => Loc.GetString("dsay-command-description"); +[AdminCommand(AdminFlags.Moderator)] +public sealed class DsayCommand : LocalizedEntityCommands +{ + [Dependency] private readonly ChatSystem _chatSystem = default!; - public string Help => Loc.GetString("dsay-command-help-text", ("command", Command)); + public override string Command => "dsay"; - public void Execute(IConsoleShell shell, string argStr, string[] args) + public override void Execute(IConsoleShell shell, string argStr, string[] args) + { + if (shell.Player is not { } player) { - if (shell.Player is not { } player) - { - shell.WriteError(Loc.GetString("shell-cannot-run-command-from-server")); - return; - } + shell.WriteError(Loc.GetString("shell-cannot-run-command-from-server")); + return; + } - if (player.AttachedEntity is not { Valid: true } entity) - return; + if (player.AttachedEntity is not { Valid: true } entity) + { + shell.WriteError(Loc.GetString("shell-must-be-attached-to-entity")); + return; + } - if (args.Length < 1) - return; + if (args.Length < 1) + return; - var message = string.Join(" ", args).Trim(); - if (string.IsNullOrEmpty(message)) - return; + var message = string.Join(" ", args).Trim(); + if (string.IsNullOrEmpty(message)) + return; - var chat = _e.System(); - chat.TrySendInGameOOCMessage(entity, message, InGameOOCChatType.Dead, false, shell, player); - } + _chatSystem.TrySendInGameOOCMessage(entity, message, InGameOOCChatType.Dead, false, shell, player); } } diff --git a/Content.Server/Administration/Commands/DirtyCommand.cs b/Content.Server/Administration/Commands/DirtyCommand.cs index cc0b0fcec6..dd0b79291c 100644 --- a/Content.Server/Administration/Commands/DirtyCommand.cs +++ b/Content.Server/Administration/Commands/DirtyCommand.cs @@ -4,22 +4,18 @@ using Robust.Shared.Console; namespace Content.Server.Administration.Commands; [AdminCommand(AdminFlags.Debug)] -public sealed class DirtyCommand : IConsoleCommand +public sealed class DirtyCommand : LocalizedEntityCommands { - [Dependency] private readonly IEntityManager _entManager = default!; + public override string Command => "dirty"; - public string Command => "dirty"; - public string Description => "Marks all components on an entity as dirty, if not specified, dirties everything"; - public string Help => $"Usage: {Command} [entityUid]"; - - public async void Execute(IConsoleShell shell, string argStr, string[] args) + public override async void Execute(IConsoleShell shell, string argStr, string[] args) { switch (args.Length) { case 0: - foreach (var entity in _entManager.GetEntities()) + foreach (var entity in EntityManager.GetEntities()) { - DirtyAll(_entManager, entity); + DirtyAll(entity); } break; case 1: @@ -28,7 +24,7 @@ public sealed class DirtyCommand : IConsoleCommand shell.WriteError(Loc.GetString("shell-entity-uid-must-be-number")); return; } - DirtyAll(_entManager, _entManager.GetEntity(parsedTarget)); + DirtyAll(EntityManager.GetEntity(parsedTarget)); break; default: shell.WriteLine(Loc.GetString("shell-wrong-arguments-number")); @@ -36,11 +32,11 @@ public sealed class DirtyCommand : IConsoleCommand } } - private static void DirtyAll(IEntityManager manager, EntityUid entityUid) + private void DirtyAll(EntityUid entityUid) { - foreach (var component in manager.GetNetComponents(entityUid)) + foreach (var component in EntityManager.GetNetComponents(entityUid)) { - manager.Dirty(entityUid, component.component); + EntityManager.Dirty(entityUid, component.component); } } } diff --git a/Content.Server/Administration/Commands/FollowCommand.cs b/Content.Server/Administration/Commands/FollowCommand.cs index b59a99b8b4..27ecbb99cf 100644 --- a/Content.Server/Administration/Commands/FollowCommand.cs +++ b/Content.Server/Administration/Commands/FollowCommand.cs @@ -6,15 +6,13 @@ using Robust.Shared.Enums; namespace Content.Server.Administration.Commands; [AdminCommand(AdminFlags.Admin)] -public sealed class FollowCommand : IConsoleCommand +public sealed class FollowCommand : LocalizedEntityCommands { - [Dependency] private readonly IEntityManager _entManager = default!; + [Dependency] private readonly FollowerSystem _followerSystem = default!; - public string Command => "follow"; - public string Description => Loc.GetString("follow-command-description"); - public string Help => Loc.GetString("follow-command-help"); + public override string Command => "follow"; - public void Execute(IConsoleShell shell, string argStr, string[] args) + public override void Execute(IConsoleShell shell, string argStr, string[] args) { if (shell.Player is not { } player) { @@ -34,10 +32,7 @@ public sealed class FollowCommand : IConsoleCommand return; } - var entity = args[0]; - if (NetEntity.TryParse(entity, out var uidNet) && _entManager.TryGetEntity(uidNet, out var uid)) - { - _entManager.System().StartFollowingEntity(playerEntity, uid.Value); - } + if (NetEntity.TryParse(args[0], out var uidNet) && EntityManager.TryGetEntity(uidNet, out var uid)) + _followerSystem.StartFollowingEntity(playerEntity, uid.Value); } } diff --git a/Resources/Locale/en-US/administration/commands/dsay-command.ftl b/Resources/Locale/en-US/administration/commands/dsay-command.ftl deleted file mode 100644 index 4f9a7cc221..0000000000 --- a/Resources/Locale/en-US/administration/commands/dsay-command.ftl +++ /dev/null @@ -1,2 +0,0 @@ -dsay-command-description = Sends a message to deadchat as an admin -dsay-command-help-text = Usage: {$command} \ No newline at end of file diff --git a/Resources/Locale/en-US/administration/commands/follow-command.ftl b/Resources/Locale/en-US/administration/commands/follow-command.ftl deleted file mode 100644 index 3ef5fde075..0000000000 --- a/Resources/Locale/en-US/administration/commands/follow-command.ftl +++ /dev/null @@ -1,2 +0,0 @@ -follow-command-description = Makes you begin following an entity -follow-command-help = Usage: follow [netEntity] \ No newline at end of file diff --git a/Resources/Locale/en-US/commands/dirty-command.ftl b/Resources/Locale/en-US/commands/dirty-command.ftl new file mode 100644 index 0000000000..c3e7bc1c39 --- /dev/null +++ b/Resources/Locale/en-US/commands/dirty-command.ftl @@ -0,0 +1,2 @@ +cmd-dirty-desc = Marks all components on an entity as dirty. If not specified, dirties everything. +cmd-dirty-help = Usage: dirty [entityUid] diff --git a/Resources/Locale/en-US/commands/dsay-command.ftl b/Resources/Locale/en-US/commands/dsay-command.ftl new file mode 100644 index 0000000000..eef9747f86 --- /dev/null +++ b/Resources/Locale/en-US/commands/dsay-command.ftl @@ -0,0 +1,2 @@ +cmd-dsay-desc = Sends a message to deadchat as an admin. +cmd-dsay-help = Usage: dsay diff --git a/Resources/Locale/en-US/commands/follow-command.ftl b/Resources/Locale/en-US/commands/follow-command.ftl new file mode 100644 index 0000000000..04c805bc50 --- /dev/null +++ b/Resources/Locale/en-US/commands/follow-command.ftl @@ -0,0 +1,2 @@ +cmd-follow-desc = Makes you begin following an entity. +cmd-follow-help = Usage: follow [netEntity]