]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Fix crayon losing durability on stamped paper (#34202)
authorthemias <89101928+themias@users.noreply.github.com>
Fri, 10 Jan 2025 15:37:11 +0000 (10:37 -0500)
committerGitHub <noreply@github.com>
Fri, 10 Jan 2025 15:37:11 +0000 (16:37 +0100)
Content.Shared/Paper/PaperSystem.cs

index 211eb7eba814a43db4d30fda67ca3da45dcb1eee..3c10ff2aaac93b59769334bc3c981ea83e00881c 100644 (file)
@@ -101,22 +101,25 @@ public sealed class PaperSystem : EntitySystem
     {
         // only allow editing if there are no stamps or when using a cyberpen
         var editable = entity.Comp.StampedBy.Count == 0 || _tagSystem.HasTag(args.Used, "WriteIgnoreStamps");
-        if (_tagSystem.HasTag(args.Used, "Write") && editable)
+        if (_tagSystem.HasTag(args.Used, "Write"))
         {
-            if (entity.Comp.EditingDisabled)
+            if (editable)
             {
-                var paperEditingDisabledMessage = Loc.GetString("paper-tamper-proof-modified-message");
-                _popupSystem.PopupEntity(paperEditingDisabledMessage, entity, args.User);
-
-                args.Handled = true;
-                return;
+                if (entity.Comp.EditingDisabled)
+                {
+                    var paperEditingDisabledMessage = Loc.GetString("paper-tamper-proof-modified-message");
+                    _popupSystem.PopupEntity(paperEditingDisabledMessage, entity, args.User);
+
+                    args.Handled = true;
+                    return;
+                }
+                var writeEvent = new PaperWriteEvent(entity, args.User);
+                RaiseLocalEvent(args.Used, ref writeEvent);
+
+                entity.Comp.Mode = PaperAction.Write;
+                _uiSystem.OpenUi(entity.Owner, PaperUiKey.Key, args.User);
+                UpdateUserInterface(entity);
             }
-            var writeEvent = new PaperWriteEvent(entity, args.User);
-            RaiseLocalEvent(args.Used, ref writeEvent);
-
-            entity.Comp.Mode = PaperAction.Write;
-            _uiSystem.OpenUi(entity.Owner, PaperUiKey.Key, args.User);
-            UpdateUserInterface(entity);
             args.Handled = true;
             return;
         }