]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Dsay Dirty and Follow commands converted to LEC and localized. (#38666)
authorKyle Tyo <36606155+VerinSenpai@users.noreply.github.com>
Mon, 30 Jun 2025 23:33:59 +0000 (19:33 -0400)
committerGitHub <noreply@github.com>
Mon, 30 Jun 2025 23:33:59 +0000 (01:33 +0200)
* commit

* whoopwhoopwhoop

Content.Server/Administration/Commands/DSay.cs
Content.Server/Administration/Commands/DirtyCommand.cs
Content.Server/Administration/Commands/FollowCommand.cs
Resources/Locale/en-US/administration/commands/dsay-command.ftl [deleted file]
Resources/Locale/en-US/administration/commands/follow-command.ftl [deleted file]
Resources/Locale/en-US/commands/dirty-command.ftl [new file with mode: 0644]
Resources/Locale/en-US/commands/dsay-command.ftl [new file with mode: 0644]
Resources/Locale/en-US/commands/follow-command.ftl [new file with mode: 0644]

index 8e7f0f4bf05abc1d574ab08540572569bc2a3307..f5e0b3279337b83a80c59dfef71649e7ac8dd0f3 100644 (file)
@@ -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<ChatSystem>();
-            chat.TrySendInGameOOCMessage(entity, message, InGameOOCChatType.Dead, false, shell, player);
-        }
+        _chatSystem.TrySendInGameOOCMessage(entity, message, InGameOOCChatType.Dead, false, shell, player);
     }
 }
index cc0b0fcec67da5c4633fef9f084875162067d05c..dd0b79291c7ab903500956bb6352e2ced29fb1ab 100644 (file)
@@ -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);
         }
     }
 }
index b59a99b8b4caaec19614786a7b78adeaeba88673..27ecbb99cfb6bf62d70adc28807b3fa198a81dce 100644 (file)
@@ -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<FollowerSystem>().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 (file)
index 4f9a7cc..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-dsay-command-description = Sends a message to deadchat as an admin
-dsay-command-help-text = Usage: {$command} <message>
\ 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 (file)
index 3ef5fde..0000000
+++ /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 (file)
index 0000000..c3e7bc1
--- /dev/null
@@ -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 (file)
index 0000000..eef9747
--- /dev/null
@@ -0,0 +1,2 @@
+cmd-dsay-desc = Sends a message to deadchat as an admin.
+cmd-dsay-help = Usage: dsay <message>
diff --git a/Resources/Locale/en-US/commands/follow-command.ftl b/Resources/Locale/en-US/commands/follow-command.ftl
new file mode 100644 (file)
index 0000000..04c805b
--- /dev/null
@@ -0,0 +1,2 @@
+cmd-follow-desc = Makes you begin following an entity.
+cmd-follow-help = Usage: follow [netEntity]