]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
make the detailed examine verb predicted (#35362)
authorMilon <milonpl.git@proton.me>
Fri, 21 Feb 2025 19:30:06 +0000 (20:30 +0100)
committerGitHub <noreply@github.com>
Fri, 21 Feb 2025 19:30:06 +0000 (11:30 -0800)
can we stop predicting things

Content.Server/DetailExaminable/DetailExaminableComponent.cs [deleted file]
Content.Server/DetailExaminable/DetailExaminableystem.cs [deleted file]
Content.Server/Implants/SubdermalImplantSystem.cs
Content.Server/Station/Systems/StationSpawningSystem.cs
Content.Shared/DetailExaminable/DetailExaminableComponent.cs [new file with mode: 0644]
Content.Shared/DetailExaminable/DetailExaminableystem.cs [new file with mode: 0644]

diff --git a/Content.Server/DetailExaminable/DetailExaminableComponent.cs b/Content.Server/DetailExaminable/DetailExaminableComponent.cs
deleted file mode 100644 (file)
index 3cefb75..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-namespace Content.Server.DetailExaminable
-{
-    [RegisterComponent]
-    public sealed partial class DetailExaminableComponent : Component
-    {
-        [DataField("content", required: true)] [ViewVariables(VVAccess.ReadWrite)]
-        public string Content = "";
-    }
-}
diff --git a/Content.Server/DetailExaminable/DetailExaminableystem.cs b/Content.Server/DetailExaminable/DetailExaminableystem.cs
deleted file mode 100644 (file)
index 85ca532..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-using Content.Shared.Examine;
-using Content.Shared.IdentityManagement;
-using Content.Shared.Verbs;
-using Robust.Shared.Utility;
-
-namespace Content.Server.DetailExaminable
-{
-    public sealed class DetailExaminableSystem : EntitySystem
-    {
-        [Dependency] private readonly ExamineSystemShared _examineSystem = default!;
-
-        public override void Initialize()
-        {
-            base.Initialize();
-
-            SubscribeLocalEvent<DetailExaminableComponent, GetVerbsEvent<ExamineVerb>>(OnGetExamineVerbs);
-        }
-
-        private void OnGetExamineVerbs(EntityUid uid, DetailExaminableComponent component, GetVerbsEvent<ExamineVerb> args)
-        {
-            if (Identity.Name(args.Target, EntityManager) != MetaData(args.Target).EntityName)
-                return;
-
-            var detailsRange = _examineSystem.IsInDetailsRange(args.User, uid);
-
-            var verb = new ExamineVerb()
-            {
-                Act = () =>
-                {
-                    var markup = new FormattedMessage();
-                    markup.AddMarkupOrThrow(component.Content);
-                    _examineSystem.SendExamineTooltip(args.User, uid, markup, false, false);
-                },
-                Text = Loc.GetString("detail-examinable-verb-text"),
-                Category = VerbCategory.Examine,
-                Disabled = !detailsRange,
-                Message = detailsRange ? null : Loc.GetString("detail-examinable-verb-disabled"),
-                Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/examine.svg.192dpi.png"))
-            };
-
-            args.Verbs.Add(verb);
-        }
-    }
-}
index 15b1d76b0d19d98d87aedd2ba3461e9730126797..c306e406a1b8972c0ee52c5f7c4f1383feb50779 100644 (file)
@@ -23,7 +23,7 @@ using System.Numerics;
 using Content.Shared.Movement.Pulling.Components;
 using Content.Shared.Movement.Pulling.Systems;
 using Content.Server.IdentityManagement;
-using Content.Server.DetailExaminable;
+using Content.Shared.DetailExaminable;
 using Content.Shared.Store.Components;
 using Robust.Shared.Collections;
 using Robust.Shared.Map.Components;
index de4b36df26592e1d78225e2e4a02d7a93b9241c4..a77716eddf931602c5673abf6301d778505f35aa 100644 (file)
@@ -1,5 +1,4 @@
 using Content.Server.Access.Systems;
-using Content.Server.DetailExaminable;
 using Content.Server.Humanoid;
 using Content.Server.IdentityManagement;
 using Content.Server.Mind.Commands;
@@ -9,6 +8,7 @@ using Content.Shared.Access.Components;
 using Content.Shared.Access.Systems;
 using Content.Shared.CCVar;
 using Content.Shared.Clothing;
+using Content.Shared.DetailExaminable;
 using Content.Shared.Humanoid;
 using Content.Shared.Humanoid.Prototypes;
 using Content.Shared.PDA;
diff --git a/Content.Shared/DetailExaminable/DetailExaminableComponent.cs b/Content.Shared/DetailExaminable/DetailExaminableComponent.cs
new file mode 100644 (file)
index 0000000..616906d
--- /dev/null
@@ -0,0 +1,10 @@
+using Robust.Shared.GameStates;
+
+namespace Content.Shared.DetailExaminable;
+
+[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
+public sealed partial class DetailExaminableComponent : Component
+{
+    [DataField(required: true), AutoNetworkedField]
+    public string Content = string.Empty;
+}
diff --git a/Content.Shared/DetailExaminable/DetailExaminableystem.cs b/Content.Shared/DetailExaminable/DetailExaminableystem.cs
new file mode 100644 (file)
index 0000000..ebb8f62
--- /dev/null
@@ -0,0 +1,45 @@
+using Content.Shared.Examine;
+using Content.Shared.IdentityManagement;
+using Content.Shared.Verbs;
+using Robust.Shared.Utility;
+
+namespace Content.Shared.DetailExaminable;
+
+public sealed class DetailExaminableSystem : EntitySystem
+{
+    [Dependency] private readonly ExamineSystemShared _examine = default!;
+
+    public override void Initialize()
+    {
+        base.Initialize();
+
+        SubscribeLocalEvent<DetailExaminableComponent, GetVerbsEvent<ExamineVerb>>(OnGetExamineVerbs);
+    }
+
+    private void OnGetExamineVerbs(Entity<DetailExaminableComponent> ent, ref GetVerbsEvent<ExamineVerb> args)
+    {
+        if (Identity.Name(args.Target, EntityManager) != MetaData(args.Target).EntityName)
+            return;
+
+        var detailsRange = _examine.IsInDetailsRange(args.User, ent);
+
+        var user = args.User;
+
+        var verb = new ExamineVerb
+        {
+            Act = () =>
+            {
+                var markup = new FormattedMessage();
+                markup.AddMarkupPermissive(ent.Comp.Content);
+                _examine.SendExamineTooltip(user, ent, markup, false, false);
+            },
+            Text = Loc.GetString("detail-examinable-verb-text"),
+            Category = VerbCategory.Examine,
+            Disabled = !detailsRange,
+            Message = detailsRange ? null : Loc.GetString("detail-examinable-verb-disabled"),
+            Icon = new SpriteSpecifier.Texture(new ("/Textures/Interface/VerbIcons/examine.svg.192dpi.png"))
+        };
+
+        args.Verbs.Add(verb);
+    }
+}