diff --git a/Content.Benchmarks/ColorInterpolateBenchmark.cs b/Content.Benchmarks/ColorInterpolateBenchmark.cs
index c09b26ef54..03ee12de5f 100644
--- a/Content.Benchmarks/ColorInterpolateBenchmark.cs
+++ b/Content.Benchmarks/ColorInterpolateBenchmark.cs
@@ -12,7 +12,7 @@ using SysVector4 = System.Numerics.Vector4;
namespace Content.Benchmarks
{
[DisassemblyDiagnoser]
- public class ColorInterpolateBenchmark
+ public sealed class ColorInterpolateBenchmark
{
#if NETCOREAPP
private const MethodImplOptions AggressiveOpt = MethodImplOptions.AggressiveOptimization;
diff --git a/Content.Benchmarks/ComponentFetchBenchmark.cs b/Content.Benchmarks/ComponentFetchBenchmark.cs
index 2fad40ca67..c29df7aa6e 100644
--- a/Content.Benchmarks/ComponentFetchBenchmark.cs
+++ b/Content.Benchmarks/ComponentFetchBenchmark.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Utility;
namespace Content.Benchmarks
{
[SimpleJob]
- public class ComponentFetchBenchmark
+ public sealed class ComponentFetchBenchmark
{
[Params(5000)] public int NEnt { get; set; }
@@ -218,39 +218,39 @@ namespace Content.Benchmarks
public EntityUid Uid;
}
- private class BComponent1 : BComponent
+ private sealed class BComponent1 : BComponent
{
}
- private class BComponent2 : BComponent
+ private sealed class BComponent2 : BComponent
{
}
- private class BComponent3 : BComponent
+ private sealed class BComponent3 : BComponent
{
}
- private class BComponent4 : BComponent
+ private sealed class BComponent4 : BComponent
{
}
- private class BComponentLookup : BComponent
+ private sealed class BComponentLookup : BComponent
{
}
- private class BComponent6 : BComponent
+ private sealed class BComponent6 : BComponent
{
}
- private class BComponent7 : BComponent
+ private sealed class BComponent7 : BComponent
{
}
- private class BComponent8 : BComponent
+ private sealed class BComponent8 : BComponent
{
}
- private class BComponent9 : BComponent
+ private sealed class BComponent9 : BComponent
{
}
}
diff --git a/Content.Benchmarks/DependencyInjectBenchmark.cs b/Content.Benchmarks/DependencyInjectBenchmark.cs
index e87a43288e..aed00ec70b 100644
--- a/Content.Benchmarks/DependencyInjectBenchmark.cs
+++ b/Content.Benchmarks/DependencyInjectBenchmark.cs
@@ -6,7 +6,7 @@ namespace Content.Benchmarks
{
// To actually run this benchmark you'll have to make DependencyCollection public so it's accessible.
- public class DependencyInjectBenchmark
+ public sealed class DependencyInjectBenchmark
{
[Params(InjectMode.Reflection, InjectMode.DynamicMethod)]
public InjectMode Mode { get; set; }
diff --git a/Content.Benchmarks/DynamicTreeBenchmark.cs b/Content.Benchmarks/DynamicTreeBenchmark.cs
index 9dff449809..056982c847 100644
--- a/Content.Benchmarks/DynamicTreeBenchmark.cs
+++ b/Content.Benchmarks/DynamicTreeBenchmark.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Physics;
namespace Content.Benchmarks
{
[SimpleJob, MemoryDiagnoser]
- public class DynamicTreeBenchmark
+ public sealed class DynamicTreeBenchmark
{
private static readonly Box2[] _aabbs1 =
{
diff --git a/Content.Benchmarks/EntityFetchBenchmark.cs b/Content.Benchmarks/EntityFetchBenchmark.cs
index 3db0783502..165f0e9fb8 100644
--- a/Content.Benchmarks/EntityFetchBenchmark.cs
+++ b/Content.Benchmarks/EntityFetchBenchmark.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Utility;
namespace Content.Benchmarks
{
[SimpleJob]
- public class EntityFetchBenchmark
+ public sealed class EntityFetchBenchmark
{
[Params(1000)] public int N { get; set; }
diff --git a/Content.Benchmarks/EntityManagerGetAllComponents.cs b/Content.Benchmarks/EntityManagerGetAllComponents.cs
index e81e09c7a9..a10ab758c9 100644
--- a/Content.Benchmarks/EntityManagerGetAllComponents.cs
+++ b/Content.Benchmarks/EntityManagerGetAllComponents.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Reflection;
namespace Content.Benchmarks
{
- public class EntityManagerGetAllComponents
+ public sealed class EntityManagerGetAllComponents
{
private IEntityManager _entityManager;
@@ -87,7 +87,7 @@ namespace Content.Benchmarks
return count;
}
- private class DummyComponent : Component
+ private sealed class DummyComponent : Component
{
}
}
diff --git a/Content.Benchmarks/NetSerializerIntBenchmark.cs b/Content.Benchmarks/NetSerializerIntBenchmark.cs
index 3fe810dc07..5480da7f7d 100644
--- a/Content.Benchmarks/NetSerializerIntBenchmark.cs
+++ b/Content.Benchmarks/NetSerializerIntBenchmark.cs
@@ -6,7 +6,7 @@ using BenchmarkDotNet.Attributes;
namespace Content.Benchmarks
{
[SimpleJob]
- public class NetSerializerIntBenchmark
+ public sealed class NetSerializerIntBenchmark
{
private MemoryStream _writeStream;
private MemoryStream _readStream;
diff --git a/Content.Benchmarks/NetSerializerStringBenchmark.cs b/Content.Benchmarks/NetSerializerStringBenchmark.cs
index 1d8aad77b5..6d79d28398 100644
--- a/Content.Benchmarks/NetSerializerStringBenchmark.cs
+++ b/Content.Benchmarks/NetSerializerStringBenchmark.cs
@@ -13,7 +13,7 @@ namespace Content.Benchmarks
// Code for the *Slow and *Unsafe implementations taken from NetSerializer, licensed under the MIT license.
[MemoryDiagnoser]
- public class NetSerializerStringBenchmark
+ public sealed class NetSerializerStringBenchmark
{
private const int StringByteBufferLength = 256;
private const int StringCharBufferLength = 128;
diff --git a/Content.Benchmarks/StereoToMonoBenchmark.cs b/Content.Benchmarks/StereoToMonoBenchmark.cs
index 89dec8a3dd..545c2ff472 100644
--- a/Content.Benchmarks/StereoToMonoBenchmark.cs
+++ b/Content.Benchmarks/StereoToMonoBenchmark.cs
@@ -3,7 +3,7 @@ using BenchmarkDotNet.Attributes;
namespace Content.Benchmarks
{
- public class StereoToMonoBenchmark
+ public sealed class StereoToMonoBenchmark
{
[Params(128, 256, 512)]
public int N { get; set; }
diff --git a/Content.Client/AI/ClientAiDebugSystem.cs b/Content.Client/AI/ClientAiDebugSystem.cs
index 74a5e20d96..e9b1c3b2cf 100644
--- a/Content.Client/AI/ClientAiDebugSystem.cs
+++ b/Content.Client/AI/ClientAiDebugSystem.cs
@@ -13,7 +13,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.AI
{
#if DEBUG
- public class ClientAiDebugSystem : EntitySystem
+ public sealed class ClientAiDebugSystem : EntitySystem
{
[Dependency] private readonly IEyeManager _eyeManager = default!;
diff --git a/Content.Client/AI/ClientPathfindingDebugSystem.cs b/Content.Client/AI/ClientPathfindingDebugSystem.cs
index 428fbeffeb..638bbc2976 100644
--- a/Content.Client/AI/ClientPathfindingDebugSystem.cs
+++ b/Content.Client/AI/ClientPathfindingDebugSystem.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Timing;
namespace Content.Client.AI
{
#if DEBUG
- public class ClientPathfindingDebugSystem : EntitySystem
+ public sealed class ClientPathfindingDebugSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IEyeManager _eyeManager = default!;
diff --git a/Content.Client/AME/UI/AMEControllerBoundUserInterface.cs b/Content.Client/AME/UI/AMEControllerBoundUserInterface.cs
index aaeaf538f3..4700292400 100644
--- a/Content.Client/AME/UI/AMEControllerBoundUserInterface.cs
+++ b/Content.Client/AME/UI/AMEControllerBoundUserInterface.cs
@@ -7,7 +7,7 @@ using static Content.Shared.AME.SharedAMEControllerComponent;
namespace Content.Client.AME.UI
{
[UsedImplicitly]
- public class AMEControllerBoundUserInterface : BoundUserInterface
+ public sealed class AMEControllerBoundUserInterface : BoundUserInterface
{
private AMEWindow? _window;
diff --git a/Content.Client/AME/UI/AMEWindow.xaml.cs b/Content.Client/AME/UI/AMEWindow.xaml.cs
index 83f7b354db..da7abc7587 100644
--- a/Content.Client/AME/UI/AMEWindow.xaml.cs
+++ b/Content.Client/AME/UI/AMEWindow.xaml.cs
@@ -12,7 +12,7 @@ using static Content.Shared.AME.SharedAMEControllerComponent;
namespace Content.Client.AME.UI
{
[GenerateTypedNameReferences]
- public partial class AMEWindow : DefaultWindow
+ public sealed partial class AMEWindow : DefaultWindow
{
public AMEWindow(AMEControllerBoundUserInterface ui)
{
diff --git a/Content.Client/AME/Visualizers/AMEControllerVisualizer.cs b/Content.Client/AME/Visualizers/AMEControllerVisualizer.cs
index d4c1a19427..27526e1e64 100644
--- a/Content.Client/AME/Visualizers/AMEControllerVisualizer.cs
+++ b/Content.Client/AME/Visualizers/AMEControllerVisualizer.cs
@@ -7,7 +7,7 @@ using static Content.Shared.AME.SharedAMEControllerComponent;
namespace Content.Client.AME.Visualizers
{
[UsedImplicitly]
- public class AMEControllerVisualizer : AppearanceVisualizer
+ public sealed class AMEControllerVisualizer : AppearanceVisualizer
{
public override void InitializeEntity(EntityUid entity)
{
diff --git a/Content.Client/AME/Visualizers/AMEVisualizer.cs b/Content.Client/AME/Visualizers/AMEVisualizer.cs
index 98910b0b6d..dabbccba20 100644
--- a/Content.Client/AME/Visualizers/AMEVisualizer.cs
+++ b/Content.Client/AME/Visualizers/AMEVisualizer.cs
@@ -7,7 +7,7 @@ using static Content.Shared.AME.SharedAMEShieldComponent;
namespace Content.Client.AME.Visualizers
{
[UsedImplicitly]
- public class AMEVisualizer : AppearanceVisualizer
+ public sealed class AMEVisualizer : AppearanceVisualizer
{
public override void InitializeEntity(EntityUid entity)
{
diff --git a/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs b/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs
index e492d7e89b..ec639c8b90 100644
--- a/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs
+++ b/Content.Client/Access/UI/IdCardConsoleBoundUserInterface.cs
@@ -7,7 +7,7 @@ using static Content.Shared.Access.Components.SharedIdCardConsoleComponent;
namespace Content.Client.Access.UI
{
- public class IdCardConsoleBoundUserInterface : BoundUserInterface
+ public sealed class IdCardConsoleBoundUserInterface : BoundUserInterface
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IEntityManager _entityManager = default!;
diff --git a/Content.Client/Access/UI/IdCardConsoleWindow.xaml.cs b/Content.Client/Access/UI/IdCardConsoleWindow.xaml.cs
index c6be90059f..8562d8e73b 100644
--- a/Content.Client/Access/UI/IdCardConsoleWindow.xaml.cs
+++ b/Content.Client/Access/UI/IdCardConsoleWindow.xaml.cs
@@ -13,7 +13,7 @@ using static Content.Shared.Access.Components.SharedIdCardConsoleComponent;
namespace Content.Client.Access.UI
{
[GenerateTypedNameReferences]
- public partial class IdCardConsoleWindow : DefaultWindow
+ public sealed partial class IdCardConsoleWindow : DefaultWindow
{
private readonly IdCardConsoleBoundUserInterface _owner;
diff --git a/Content.Client/Actions/ActionsSystem.cs b/Content.Client/Actions/ActionsSystem.cs
index e56112b2c5..b5201fcd62 100644
--- a/Content.Client/Actions/ActionsSystem.cs
+++ b/Content.Client/Actions/ActionsSystem.cs
@@ -12,7 +12,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Actions
{
[UsedImplicitly]
- public class ActionsSystem : EntitySystem
+ public sealed class ActionsSystem : EntitySystem
{
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Client/Actions/Assignments/ActionAssignments.cs b/Content.Client/Actions/Assignments/ActionAssignments.cs
index 5eb0f79632..a7e3e7d8aa 100644
--- a/Content.Client/Actions/Assignments/ActionAssignments.cs
+++ b/Content.Client/Actions/Assignments/ActionAssignments.cs
@@ -9,7 +9,7 @@ namespace Content.Client.Actions.Assignments
///
/// Tracks and manages the hotbar assignments for actions.
///
- public class ActionAssignments
+ public sealed class ActionAssignments
{
// the slots and assignments fields hold client's assignments (what action goes in what slot),
// which are completely client side and independent of what actions they've actually been granted and
diff --git a/Content.Client/Actions/UI/ActionAlertTooltip.cs b/Content.Client/Actions/UI/ActionAlertTooltip.cs
index b64faa56b1..392e67873a 100644
--- a/Content.Client/Actions/UI/ActionAlertTooltip.cs
+++ b/Content.Client/Actions/UI/ActionAlertTooltip.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Actions.UI
///
/// Tooltip for actions or alerts because they are very similar.
///
- public class ActionAlertTooltip : PanelContainer
+ public sealed class ActionAlertTooltip : PanelContainer
{
private const float TooltipTextMaxWidth = 350;
diff --git a/Content.Client/Actions/UI/ActionMenu.cs b/Content.Client/Actions/UI/ActionMenu.cs
index dfce37feb8..b3140a32b5 100644
--- a/Content.Client/Actions/UI/ActionMenu.cs
+++ b/Content.Client/Actions/UI/ActionMenu.cs
@@ -27,7 +27,7 @@ namespace Content.Client.Actions.UI
/// Action selection menu, allows filtering and searching over all possible
/// actions and populating those actions into the hotbar.
///
- public class ActionMenu : DefaultWindow
+ public sealed class ActionMenu : DefaultWindow
{
private const string ItemTag = "item";
private const string NotItemTag = "not item";
diff --git a/Content.Client/Actions/UI/ActionMenuItem.cs b/Content.Client/Actions/UI/ActionMenuItem.cs
index 32e42aa9ec..03293e03f5 100644
--- a/Content.Client/Actions/UI/ActionMenuItem.cs
+++ b/Content.Client/Actions/UI/ActionMenuItem.cs
@@ -10,7 +10,7 @@ namespace Content.Client.Actions.UI
///
/// An individual action visible in the action menu.
///
- public class ActionMenuItem : ContainerButton
+ public sealed class ActionMenuItem : ContainerButton
{
// shorter than default tooltip delay so user can
// quickly explore what each action is
diff --git a/Content.Client/Actions/UI/ActionSlot.cs b/Content.Client/Actions/UI/ActionSlot.cs
index 57ee669280..77f0ac4c07 100644
--- a/Content.Client/Actions/UI/ActionSlot.cs
+++ b/Content.Client/Actions/UI/ActionSlot.cs
@@ -25,7 +25,7 @@ namespace Content.Client.Actions.UI
/// A slot in the action hotbar. Not extending BaseButton because
/// its needs diverged too much.
///
- public class ActionSlot : PanelContainer
+ public sealed class ActionSlot : PanelContainer
{
// shorter than default tooltip delay so user can more easily
// see what actions they've been given
diff --git a/Content.Client/Administration/AdminNameOverlay.cs b/Content.Client/Administration/AdminNameOverlay.cs
index 821a140f06..e4963cbfa6 100644
--- a/Content.Client/Administration/AdminNameOverlay.cs
+++ b/Content.Client/Administration/AdminNameOverlay.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Administration
{
- internal class AdminNameOverlay : Overlay
+ internal sealed class AdminNameOverlay : Overlay
{
private readonly AdminSystem _system;
private readonly IEntityManager _entityManager;
diff --git a/Content.Client/Administration/AdminSystem.Menu.cs b/Content.Client/Administration/AdminSystem.Menu.cs
index 6f02c3df1c..964dcf4114 100644
--- a/Content.Client/Administration/AdminSystem.Menu.cs
+++ b/Content.Client/Administration/AdminSystem.Menu.cs
@@ -19,7 +19,7 @@ using Robust.Shared.Network;
namespace Content.Client.Administration
{
- public partial class AdminSystem
+ public sealed partial class AdminSystem
{
[Dependency] private readonly INetManager _netManager = default!;
[Dependency] private readonly IInputManager _inputManager = default!;
diff --git a/Content.Client/Administration/AdminSystem.Overlay.cs b/Content.Client/Administration/AdminSystem.Overlay.cs
index 6c85e04bd0..4c6b24a6d6 100644
--- a/Content.Client/Administration/AdminSystem.Overlay.cs
+++ b/Content.Client/Administration/AdminSystem.Overlay.cs
@@ -5,7 +5,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Administration
{
- public partial class AdminSystem
+ public sealed partial class AdminSystem
{
[Dependency] private readonly IClientAdminManager _adminManager = default!;
[Dependency] private readonly IEyeManager _eyeManager = default!;
diff --git a/Content.Client/Administration/AdminSystem.cs b/Content.Client/Administration/AdminSystem.cs
index 3b4b0a9240..137a4ea3fb 100644
--- a/Content.Client/Administration/AdminSystem.cs
+++ b/Content.Client/Administration/AdminSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Network;
namespace Content.Client.Administration
{
- public partial class AdminSystem : EntitySystem
+ public sealed partial class AdminSystem : EntitySystem
{
public event Action>? PlayerListChanged;
diff --git a/Content.Client/Administration/AdminVerbSystem.cs b/Content.Client/Administration/AdminVerbSystem.cs
index e8dc2f5589..cb440a92da 100644
--- a/Content.Client/Administration/AdminVerbSystem.cs
+++ b/Content.Client/Administration/AdminVerbSystem.cs
@@ -9,7 +9,7 @@ namespace Content.Client.Verbs
///
/// Client-side admin verb system. These usually open some sort of UIs.
///
- class AdminVerbSystem : EntitySystem
+ sealed class AdminVerbSystem : EntitySystem
{
[Dependency] private readonly IClientConGroupController _clientConGroupController = default!;
[Dependency] private readonly IClientConsoleHost _clientConsoleHost = default!;
diff --git a/Content.Client/Administration/BwoinkSystem.cs b/Content.Client/Administration/BwoinkSystem.cs
index 9b83d8a27f..14a39f0eb1 100644
--- a/Content.Client/Administration/BwoinkSystem.cs
+++ b/Content.Client/Administration/BwoinkSystem.cs
@@ -20,7 +20,7 @@ using Robust.Shared.Network;
namespace Content.Client.Administration
{
[UsedImplicitly]
- public class BwoinkSystem : SharedBwoinkSystem
+ public sealed class BwoinkSystem : SharedBwoinkSystem
{
[Dependency] private readonly IClientAdminManager _adminManager = default!;
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Client/Administration/Logs/AdminLogSystem.cs b/Content.Client/Administration/Logs/AdminLogSystem.cs
index 895fd62925..1a423ab01d 100644
--- a/Content.Client/Administration/Logs/AdminLogSystem.cs
+++ b/Content.Client/Administration/Logs/AdminLogSystem.cs
@@ -2,6 +2,6 @@
namespace Content.Client.Administration.Logs;
-public class AdminLogSystem : SharedAdminLogSystem
+public sealed class AdminLogSystem : SharedAdminLogSystem
{
}
diff --git a/Content.Client/Administration/Managers/ClientAdminManager.cs b/Content.Client/Administration/Managers/ClientAdminManager.cs
index 37ad8aa7e0..1f3ed03bb9 100644
--- a/Content.Client/Administration/Managers/ClientAdminManager.cs
+++ b/Content.Client/Administration/Managers/ClientAdminManager.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Reflection;
namespace Content.Client.Administration.Managers
{
- public class ClientAdminManager : IClientAdminManager, IClientConGroupImplementation, IPostInjectInit
+ public sealed class ClientAdminManager : IClientAdminManager, IClientConGroupImplementation, IPostInjectInit
{
[Dependency] private readonly IClientNetManager _netMgr = default!;
[Dependency] private readonly IClientConGroupController _conGroup = default!;
diff --git a/Content.Client/Administration/Managers/GamePrototypeLoadManager.cs b/Content.Client/Administration/Managers/GamePrototypeLoadManager.cs
index 15944516a2..74cd9cd7d3 100644
--- a/Content.Client/Administration/Managers/GamePrototypeLoadManager.cs
+++ b/Content.Client/Administration/Managers/GamePrototypeLoadManager.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Administration.Managers;
-public class GamePrototypeLoadManager : IGamePrototypeLoadManager
+public sealed class GamePrototypeLoadManager : IGamePrototypeLoadManager
{
[Dependency] private readonly IClientNetManager _netManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/Administration/UI/AdminAnnounceWindow.xaml.cs b/Content.Client/Administration/UI/AdminAnnounceWindow.xaml.cs
index 94b373d87b..0cc0a8f61b 100644
--- a/Content.Client/Administration/UI/AdminAnnounceWindow.xaml.cs
+++ b/Content.Client/Administration/UI/AdminAnnounceWindow.xaml.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Administration.UI
{
[GenerateTypedNameReferences]
- public partial class AdminAnnounceWindow : DefaultWindow
+ public sealed partial class AdminAnnounceWindow : DefaultWindow
{
[Dependency] private readonly ILocalizationManager _localization = default!;
diff --git a/Content.Client/Administration/UI/AdminMenuWindow.xaml.cs b/Content.Client/Administration/UI/AdminMenuWindow.xaml.cs
index 76d12af176..be0c5da45d 100644
--- a/Content.Client/Administration/UI/AdminMenuWindow.xaml.cs
+++ b/Content.Client/Administration/UI/AdminMenuWindow.xaml.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Administration.UI
{
[GenerateTypedNameReferences]
- public partial class AdminMenuWindow : DefaultWindow
+ public sealed partial class AdminMenuWindow : DefaultWindow
{
[Dependency] private readonly IGameHud? _gameHud = default!;
diff --git a/Content.Client/Administration/UI/AdminMenuWindowEui.cs b/Content.Client/Administration/UI/AdminMenuWindowEui.cs
index f26ae5a1a6..24e78c7a5a 100644
--- a/Content.Client/Administration/UI/AdminMenuWindowEui.cs
+++ b/Content.Client/Administration/UI/AdminMenuWindowEui.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface.Controls;
namespace Content.Client.Administration.UI
{
- public class AdminAnnounceEui : BaseEui
+ public sealed class AdminAnnounceEui : BaseEui
{
private readonly AdminAnnounceWindow _window;
diff --git a/Content.Client/Administration/UI/BwoinkWindow.xaml.cs b/Content.Client/Administration/UI/BwoinkWindow.xaml.cs
index 92bc73f09e..3af538d887 100644
--- a/Content.Client/Administration/UI/BwoinkWindow.xaml.cs
+++ b/Content.Client/Administration/UI/BwoinkWindow.xaml.cs
@@ -19,7 +19,7 @@ namespace Content.Client.Administration.UI
/// This window connects to a BwoinkSystem channel. BwoinkSystem manages the rest.
///
[GenerateTypedNameReferences]
- public partial class BwoinkWindow : DefaultWindow
+ public sealed partial class BwoinkWindow : DefaultWindow
{
[Dependency] private readonly IClientAdminManager _adminManager = default!;
[Dependency] private readonly IClientConsoleHost _console = default!;
diff --git a/Content.Client/Administration/UI/CustomControls/AdminLogImpactButton.cs b/Content.Client/Administration/UI/CustomControls/AdminLogImpactButton.cs
index 5cf2e94f9c..879569ce2e 100644
--- a/Content.Client/Administration/UI/CustomControls/AdminLogImpactButton.cs
+++ b/Content.Client/Administration/UI/CustomControls/AdminLogImpactButton.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface.Controls;
namespace Content.Client.Administration.UI.CustomControls;
-public class AdminLogImpactButton : Button
+public sealed class AdminLogImpactButton : Button
{
public AdminLogImpactButton(LogImpact impact)
{
diff --git a/Content.Client/Administration/UI/CustomControls/AdminLogLabel.cs b/Content.Client/Administration/UI/CustomControls/AdminLogLabel.cs
index ee7fee8e70..0de38ce234 100644
--- a/Content.Client/Administration/UI/CustomControls/AdminLogLabel.cs
+++ b/Content.Client/Administration/UI/CustomControls/AdminLogLabel.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface.Controls;
namespace Content.Client.Administration.UI.CustomControls;
-public class AdminLogLabel : RichTextLabel
+public sealed class AdminLogLabel : RichTextLabel
{
public AdminLogLabel(ref SharedAdminLog log, HSeparator separator)
{
diff --git a/Content.Client/Administration/UI/CustomControls/AdminLogPlayerButton.cs b/Content.Client/Administration/UI/CustomControls/AdminLogPlayerButton.cs
index 3e4c71732b..a3b0438561 100644
--- a/Content.Client/Administration/UI/CustomControls/AdminLogPlayerButton.cs
+++ b/Content.Client/Administration/UI/CustomControls/AdminLogPlayerButton.cs
@@ -3,7 +3,7 @@ using Robust.Client.UserInterface.Controls;
namespace Content.Client.Administration.UI.CustomControls;
-public class AdminLogPlayerButton : Button
+public sealed class AdminLogPlayerButton : Button
{
public AdminLogPlayerButton(Guid id)
{
diff --git a/Content.Client/Administration/UI/CustomControls/AdminLogTypeButton.cs b/Content.Client/Administration/UI/CustomControls/AdminLogTypeButton.cs
index 6ee1ae95d8..e0a8a55e79 100644
--- a/Content.Client/Administration/UI/CustomControls/AdminLogTypeButton.cs
+++ b/Content.Client/Administration/UI/CustomControls/AdminLogTypeButton.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface.Controls;
namespace Content.Client.Administration.UI.CustomControls;
-public class AdminLogTypeButton : Button
+public sealed class AdminLogTypeButton : Button
{
public AdminLogTypeButton(LogType type)
{
diff --git a/Content.Client/Administration/UI/CustomControls/BwoinkPanel.xaml.cs b/Content.Client/Administration/UI/CustomControls/BwoinkPanel.xaml.cs
index 3135389af4..582147b69b 100644
--- a/Content.Client/Administration/UI/CustomControls/BwoinkPanel.xaml.cs
+++ b/Content.Client/Administration/UI/CustomControls/BwoinkPanel.xaml.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Utility;
namespace Content.Client.Administration.UI.CustomControls
{
[GenerateTypedNameReferences]
- public partial class BwoinkPanel : BoxContainer
+ public sealed partial class BwoinkPanel : BoxContainer
{
private readonly BwoinkSystem _bwoinkSystem;
public readonly NetUserId ChannelId;
diff --git a/Content.Client/Administration/UI/CustomControls/CommandButton.cs b/Content.Client/Administration/UI/CustomControls/CommandButton.cs
index 5e5c224aaa..2b61a0fe02 100644
--- a/Content.Client/Administration/UI/CustomControls/CommandButton.cs
+++ b/Content.Client/Administration/UI/CustomControls/CommandButton.cs
@@ -4,6 +4,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Administration.UI.CustomControls
{
+ [Virtual]
public class CommandButton : Button
{
public string? Command { get; set; }
diff --git a/Content.Client/Administration/UI/CustomControls/HSeparator.cs b/Content.Client/Administration/UI/CustomControls/HSeparator.cs
index 3e7005942d..2dfb0b27fe 100644
--- a/Content.Client/Administration/UI/CustomControls/HSeparator.cs
+++ b/Content.Client/Administration/UI/CustomControls/HSeparator.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Administration.UI.CustomControls;
-public class HSeparator : Control
+public sealed class HSeparator : Control
{
private static readonly Color SeparatorColor = Color.FromHex("#3D4059");
diff --git a/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml.cs b/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml.cs
index 332994fdb5..02c87dc778 100644
--- a/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml.cs
+++ b/Content.Client/Administration/UI/CustomControls/PlayerListControl.xaml.cs
@@ -11,7 +11,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Administration.UI.CustomControls
{
[GenerateTypedNameReferences]
- public partial class PlayerListControl : BoxContainer
+ public sealed partial class PlayerListControl : BoxContainer
{
private readonly AdminSystem _adminSystem;
diff --git a/Content.Client/Administration/UI/CustomControls/UICommandButton.cs b/Content.Client/Administration/UI/CustomControls/UICommandButton.cs
index d4ec6e9fe7..ea10c7637e 100644
--- a/Content.Client/Administration/UI/CustomControls/UICommandButton.cs
+++ b/Content.Client/Administration/UI/CustomControls/UICommandButton.cs
@@ -4,7 +4,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Administration.UI.CustomControls
{
- public class UICommandButton : CommandButton
+ public sealed class UICommandButton : CommandButton
{
public Type? WindowType { get; set; }
private DefaultWindow? _window;
diff --git a/Content.Client/Administration/UI/CustomControls/VSeparator.cs b/Content.Client/Administration/UI/CustomControls/VSeparator.cs
index b413cacd49..3f4dbc18bc 100644
--- a/Content.Client/Administration/UI/CustomControls/VSeparator.cs
+++ b/Content.Client/Administration/UI/CustomControls/VSeparator.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Administration.UI.CustomControls;
-public class VSeparator : PanelContainer
+public sealed class VSeparator : PanelContainer
{
private static readonly Color SeparatorColor = Color.FromHex("#3D4059");
diff --git a/Content.Client/Administration/UI/Logs/AdminLogsControl.xaml.cs b/Content.Client/Administration/UI/Logs/AdminLogsControl.xaml.cs
index 8b8fea5efd..210d14babe 100644
--- a/Content.Client/Administration/UI/Logs/AdminLogsControl.xaml.cs
+++ b/Content.Client/Administration/UI/Logs/AdminLogsControl.xaml.cs
@@ -16,7 +16,7 @@ using static Robust.Client.UserInterface.Controls.LineEdit;
namespace Content.Client.Administration.UI.Logs;
[GenerateTypedNameReferences]
-public partial class AdminLogsControl : Control
+public sealed partial class AdminLogsControl : Control
{
private readonly Comparer _adminLogTypeButtonComparer =
Comparer.Create((a, b) =>
diff --git a/Content.Client/Administration/UI/Logs/AdminLogsEui.cs b/Content.Client/Administration/UI/Logs/AdminLogsEui.cs
index 90492f5de6..39917c31a9 100644
--- a/Content.Client/Administration/UI/Logs/AdminLogsEui.cs
+++ b/Content.Client/Administration/UI/Logs/AdminLogsEui.cs
@@ -13,7 +13,7 @@ using static Content.Shared.Administration.AdminLogsEuiMsg;
namespace Content.Client.Administration.UI.Logs;
[UsedImplicitly]
-public class AdminLogsEui : BaseEui
+public sealed class AdminLogsEui : BaseEui
{
[Dependency] private readonly IClyde _clyde = default!;
[Dependency] private readonly IUserInterfaceManager _uiManager = default!;
diff --git a/Content.Client/Administration/UI/Logs/AdminLogsWindow.xaml.cs b/Content.Client/Administration/UI/Logs/AdminLogsWindow.xaml.cs
index 8743296815..23e6e9145e 100644
--- a/Content.Client/Administration/UI/Logs/AdminLogsWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Logs/AdminLogsWindow.xaml.cs
@@ -5,7 +5,7 @@ using Robust.Client.UserInterface.XAML;
namespace Content.Client.Administration.UI.Logs;
[GenerateTypedNameReferences]
-public partial class AdminLogsWindow : DefaultWindow
+public sealed partial class AdminLogsWindow : DefaultWindow
{
public AdminLogsWindow()
{
diff --git a/Content.Client/Administration/UI/SetOutfit/SetOutfitMenu.xaml.cs b/Content.Client/Administration/UI/SetOutfit/SetOutfitMenu.xaml.cs
index 4aa3ce0a93..d06fcc3726 100644
--- a/Content.Client/Administration/UI/SetOutfit/SetOutfitMenu.xaml.cs
+++ b/Content.Client/Administration/UI/SetOutfit/SetOutfitMenu.xaml.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Administration.UI.SetOutfit
{
[GenerateTypedNameReferences]
- public partial class SetOutfitMenu : DefaultWindow
+ public sealed partial class SetOutfitMenu : DefaultWindow
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IClientConsoleHost _consoleHost = default!;
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/AdminShuttleWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/AdminShuttleWindow.xaml.cs
index 48377196b9..fbd7c3dcf3 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/AdminShuttleWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/AdminShuttleWindow.xaml.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Administration.UI.Tabs.AdminTab
{
[GenerateTypedNameReferences]
- public partial class AdminShuttleWindow : DefaultWindow
+ public sealed partial class AdminShuttleWindow : DefaultWindow
{
public AdminShuttleWindow()
{
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml.cs
index 02dad6cbd2..63534659f4 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/AdminTab.xaml.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface;
namespace Content.Client.Administration.UI.Tabs.AdminTab
{
[GenerateTypedNameReferences]
- public partial class AdminTab : Control
+ public sealed partial class AdminTab : Control
{
}
}
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/BanWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/BanWindow.xaml.cs
index c40b2369ef..f3ac70bbef 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/BanWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/BanWindow.xaml.cs
@@ -13,7 +13,7 @@ namespace Content.Client.Administration.UI.Tabs.AdminTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class BanWindow : DefaultWindow
+ public sealed partial class BanWindow : DefaultWindow
{
public BanWindow()
{
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml.cs
index bc9b246c17..3532609fec 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/PlayerActionsWindow.xaml.cs
@@ -12,7 +12,7 @@ namespace Content.Client.Administration.UI.Tabs.AdminTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class PlayerActionsWindow : DefaultWindow
+ public sealed partial class PlayerActionsWindow : DefaultWindow
{
private PlayerInfo? _selectedPlayer;
diff --git a/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml.cs
index 267cbc1219..c5a9bd036a 100644
--- a/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminTab/TeleportWindow.xaml.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Administration.UI.Tabs.AdminTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class TeleportWindow : DefaultWindow
+ public sealed partial class TeleportWindow : DefaultWindow
{
private PlayerInfo? _selectedPlayer;
diff --git a/Content.Client/Administration/UI/Tabs/AdminbusTab/StationEventsWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AdminbusTab/StationEventsWindow.xaml.cs
index b69ff79758..62048c45ab 100644
--- a/Content.Client/Administration/UI/Tabs/AdminbusTab/StationEventsWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AdminbusTab/StationEventsWindow.xaml.cs
@@ -14,7 +14,7 @@ namespace Content.Client.Administration.UI.Tabs.AdminbusTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class StationEventsWindow : DefaultWindow
+ public sealed partial class StationEventsWindow : DefaultWindow
{
private List? _data;
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
index 820425e0b6..bc27287d28 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddAtmosWindow.xaml.cs
@@ -14,7 +14,7 @@ namespace Content.Client.Administration.UI.Tabs.AtmosTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class AddAtmosWindow : DefaultWindow
+ public sealed partial class AddAtmosWindow : DefaultWindow
{
private IEnumerable? _data;
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
index a4c250d080..4818ed804b 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AddGasWindow.xaml.cs
@@ -16,7 +16,7 @@ namespace Content.Client.Administration.UI.Tabs.AtmosTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class AddGasWindow : DefaultWindow
+ public sealed partial class AddGasWindow : DefaultWindow
{
private IEnumerable? _gridData;
private IEnumerable? _gasData;
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml.cs
index b7d682e12a..b757c1b4f0 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/AtmosTab.xaml.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface;
namespace Content.Client.Administration.UI.Tabs.AtmosTab
{
[GenerateTypedNameReferences]
- public partial class AtmosTab : Control
+ public sealed partial class AtmosTab : Control
{
}
}
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
index 86e13bfa43..7e5fa9c19f 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/FillGasWindow.xaml.cs
@@ -16,7 +16,7 @@ namespace Content.Client.Administration.UI.Tabs.AtmosTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class FillGasWindow : DefaultWindow
+ public sealed partial class FillGasWindow : DefaultWindow
{
private IEnumerable? _gridData;
private IEnumerable? _gasData;
diff --git a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
index db4360ac28..af0b1b6e18 100644
--- a/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/AtmosTab/SetTemperatureWindow.xaml.cs
@@ -14,7 +14,7 @@ namespace Content.Client.Administration.UI.Tabs.AtmosTab
{
[GenerateTypedNameReferences]
[UsedImplicitly]
- public partial class SetTemperatureWindow : DefaultWindow
+ public sealed partial class SetTemperatureWindow : DefaultWindow
{
private IEnumerable? _data;
diff --git a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml.cs b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml.cs
index 903c3c2578..e99fed59ff 100644
--- a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTab.xaml.cs
@@ -15,7 +15,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Administration.UI.Tabs.PlayerTab
{
[GenerateTypedNameReferences]
- public partial class PlayerTab : Control
+ public sealed partial class PlayerTab : Control
{
private readonly AdminSystem _adminSystem;
diff --git a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTabEntry.xaml.cs b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTabEntry.xaml.cs
index 5c3aeb356f..fe4bc0a4b4 100644
--- a/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTabEntry.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/PlayerTab/PlayerTabEntry.xaml.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Client.Administration.UI.Tabs.PlayerTab;
[GenerateTypedNameReferences]
-public partial class PlayerTabEntry : ContainerButton
+public sealed partial class PlayerTabEntry : ContainerButton
{
public EntityUid? PlayerUid;
diff --git a/Content.Client/Administration/UI/Tabs/RoundTab.xaml.cs b/Content.Client/Administration/UI/Tabs/RoundTab.xaml.cs
index 0e897bd376..28073bc91d 100644
--- a/Content.Client/Administration/UI/Tabs/RoundTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/RoundTab.xaml.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface;
namespace Content.Client.Administration.UI.Tabs
{
[GenerateTypedNameReferences]
- public partial class RoundTab : Control
+ public sealed partial class RoundTab : Control
{
}
}
diff --git a/Content.Client/Administration/UI/Tabs/ServerTab.xaml.cs b/Content.Client/Administration/UI/Tabs/ServerTab.xaml.cs
index 9f7d6a0e40..e76b390aae 100644
--- a/Content.Client/Administration/UI/Tabs/ServerTab.xaml.cs
+++ b/Content.Client/Administration/UI/Tabs/ServerTab.xaml.cs
@@ -4,7 +4,7 @@ using Robust.Client.UserInterface;
namespace Content.Client.Administration.UI.Tabs
{
[GenerateTypedNameReferences]
- public partial class ServerTab : Control
+ public sealed partial class ServerTab : Control
{
}
}
diff --git a/Content.Client/Alerts/ClientAlertsSystem.cs b/Content.Client/Alerts/ClientAlertsSystem.cs
index c1792923c4..d4c92e2c27 100644
--- a/Content.Client/Alerts/ClientAlertsSystem.cs
+++ b/Content.Client/Alerts/ClientAlertsSystem.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Alerts;
[UsedImplicitly]
-internal class ClientAlertsSystem : AlertsSystem
+internal sealed class ClientAlertsSystem : AlertsSystem
{
public AlertOrderPrototype? AlertOrder { get; set; }
@@ -37,7 +37,7 @@ internal class ClientAlertsSystem : AlertsSystem
protected override void LoadPrototypes()
{
base.LoadPrototypes();
-
+
AlertOrder = _prototypeManager.EnumeratePrototypes().FirstOrDefault();
if (AlertOrder == null)
Logger.ErrorS("alert", "no alertOrder prototype found, alerts will be in random order");
diff --git a/Content.Client/Alerts/UI/AlertControl.cs b/Content.Client/Alerts/UI/AlertControl.cs
index 4f84a1567b..22845e91ac 100644
--- a/Content.Client/Alerts/UI/AlertControl.cs
+++ b/Content.Client/Alerts/UI/AlertControl.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Timing;
namespace Content.Client.Alerts.UI
{
- public class AlertControl : BaseButton
+ public sealed class AlertControl : BaseButton
{
// shorter than default tooltip delay so user can more easily
// see what alerts they have
diff --git a/Content.Client/Alerts/UI/AlertsUI.xaml.cs b/Content.Client/Alerts/UI/AlertsUI.xaml.cs
index 470b683cb3..4b349c2bde 100644
--- a/Content.Client/Alerts/UI/AlertsUI.xaml.cs
+++ b/Content.Client/Alerts/UI/AlertsUI.xaml.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Timing;
namespace Content.Client.Alerts.UI;
-public class AlertsFramePresenter : IDisposable
+public sealed class AlertsFramePresenter : IDisposable
{
[Dependency] private readonly IEntitySystemManager _systemManager = default!;
[Dependency] private readonly IUserInterfaceManager _userInterfaceManager = default!;
diff --git a/Content.Client/Arcade/BlockGameMenu.cs b/Content.Client/Arcade/BlockGameMenu.cs
index 360306e6e7..5452d7c5d0 100644
--- a/Content.Client/Arcade/BlockGameMenu.cs
+++ b/Content.Client/Arcade/BlockGameMenu.cs
@@ -18,7 +18,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.Arcade
{
- public class BlockGameMenu : DefaultWindow
+ public sealed class BlockGameMenu : DefaultWindow
{
private static readonly Color OverlayBackgroundColor = new(74,74,81,180);
private static readonly Color OverlayShadowColor = new(0,0,0,83);
diff --git a/Content.Client/Arcade/SpaceVillainArcadeMenu.cs b/Content.Client/Arcade/SpaceVillainArcadeMenu.cs
index e8b400c1f1..bbd7635459 100644
--- a/Content.Client/Arcade/SpaceVillainArcadeMenu.cs
+++ b/Content.Client/Arcade/SpaceVillainArcadeMenu.cs
@@ -7,7 +7,7 @@ using Vector2 = Robust.Shared.Maths.Vector2;
namespace Content.Client.Arcade
{
- public class SpaceVillainArcadeMenu : DefaultWindow
+ public sealed class SpaceVillainArcadeMenu : DefaultWindow
{
public SpaceVillainArcadeBoundUserInterface Owner { get; set; }
@@ -92,7 +92,7 @@ namespace Content.Client.Arcade
_enemyActionLabel.Text = message.EnemyActionMessage;
}
- private class ActionButton : Button
+ private sealed class ActionButton : Button
{
private readonly SpaceVillainArcadeBoundUserInterface _owner;
private readonly SharedSpaceVillainArcadeComponent.PlayerAction _playerAction;
diff --git a/Content.Client/Arcade/UI/BlockGameBoundUserInterface.cs b/Content.Client/Arcade/UI/BlockGameBoundUserInterface.cs
index 568784fd69..b1182199f7 100644
--- a/Content.Client/Arcade/UI/BlockGameBoundUserInterface.cs
+++ b/Content.Client/Arcade/UI/BlockGameBoundUserInterface.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Client.Arcade.UI
{
- public class BlockGameBoundUserInterface : BoundUserInterface
+ public sealed class BlockGameBoundUserInterface : BoundUserInterface
{
private BlockGameMenu? _menu;
diff --git a/Content.Client/Arcade/UI/SpaceVillainArcadeBoundUserInterface.cs b/Content.Client/Arcade/UI/SpaceVillainArcadeBoundUserInterface.cs
index 442b148c10..c9f4d9b79b 100644
--- a/Content.Client/Arcade/UI/SpaceVillainArcadeBoundUserInterface.cs
+++ b/Content.Client/Arcade/UI/SpaceVillainArcadeBoundUserInterface.cs
@@ -5,7 +5,7 @@ using static Content.Shared.Arcade.SharedSpaceVillainArcadeComponent;
namespace Content.Client.Arcade.UI
{
- public class SpaceVillainArcadeBoundUserInterface : BoundUserInterface
+ public sealed class SpaceVillainArcadeBoundUserInterface : BoundUserInterface
{
[ViewVariables] private SpaceVillainArcadeMenu? _menu;
diff --git a/Content.Client/Atmos/Components/GasAnalyzerComponent.cs b/Content.Client/Atmos/Components/GasAnalyzerComponent.cs
index d6a4aee4ff..e16cca3dcf 100644
--- a/Content.Client/Atmos/Components/GasAnalyzerComponent.cs
+++ b/Content.Client/Atmos/Components/GasAnalyzerComponent.cs
@@ -12,7 +12,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Client.Atmos.Components
{
[RegisterComponent]
- internal class GasAnalyzerComponent : SharedGasAnalyzerComponent, IItemStatus
+ internal sealed class GasAnalyzerComponent : SharedGasAnalyzerComponent, IItemStatus
{
[ViewVariables(VVAccess.ReadWrite)] private bool _uiUpdateNeeded;
[ViewVariables] private GasAnalyzerDanger Danger { get; set; }
diff --git a/Content.Client/Atmos/EntitySystems/AtmosphereSystem.cs b/Content.Client/Atmos/EntitySystems/AtmosphereSystem.cs
index ee67361146..d7f9d60d83 100644
--- a/Content.Client/Atmos/EntitySystems/AtmosphereSystem.cs
+++ b/Content.Client/Atmos/EntitySystems/AtmosphereSystem.cs
@@ -4,7 +4,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.EntitySystems
{
[UsedImplicitly]
- public class AtmosphereSystem : SharedAtmosphereSystem
+ public sealed class AtmosphereSystem : SharedAtmosphereSystem
{
}
}
diff --git a/Content.Client/Atmos/Monitor/AtmosMonitorVisualizer.cs b/Content.Client/Atmos/Monitor/AtmosMonitorVisualizer.cs
index dc86118e1e..1a1a6d458d 100644
--- a/Content.Client/Atmos/Monitor/AtmosMonitorVisualizer.cs
+++ b/Content.Client/Atmos/Monitor/AtmosMonitorVisualizer.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Monitor
{
- public class AtmosMonitorVisualizer : AppearanceVisualizer
+ public sealed class AtmosMonitorVisualizer : AppearanceVisualizer
{
[Dependency] IEntityManager _entityManager = default!;
[DataField("layerMap")]
diff --git a/Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs b/Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs
index 0c28dd3b0e..df419b282c 100644
--- a/Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs
+++ b/Content.Client/Atmos/Monitor/UI/AirAlarmBoundUserInterface.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Log;
namespace Content.Client.Atmos.Monitor.UI
{
- public class AirAlarmBoundUserInterface : BoundUserInterface
+ public sealed class AirAlarmBoundUserInterface : BoundUserInterface
{
private AirAlarmWindow? _window;
diff --git a/Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs b/Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs
index 76155762fc..3b79f618bc 100644
--- a/Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs
+++ b/Content.Client/Atmos/Monitor/UI/AirAlarmWindow.xaml.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Atmos.Monitor.UI
{
[GenerateTypedNameReferences]
- public partial class AirAlarmWindow : DefaultWindow
+ public sealed partial class AirAlarmWindow : DefaultWindow
{
public event Action? AtmosDeviceDataChanged;
public event Action? AtmosAlarmThresholdChanged;
diff --git a/Content.Client/Atmos/Monitor/UI/Widgets/PumpControl.xaml.cs b/Content.Client/Atmos/Monitor/UI/Widgets/PumpControl.xaml.cs
index 071bac229a..71af09af64 100644
--- a/Content.Client/Atmos/Monitor/UI/Widgets/PumpControl.xaml.cs
+++ b/Content.Client/Atmos/Monitor/UI/Widgets/PumpControl.xaml.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Atmos.Monitor.UI.Widgets
{
[GenerateTypedNameReferences]
- public partial class PumpControl : BoxContainer
+ public sealed partial class PumpControl : BoxContainer
{
private GasVentPumpData _data;
private string _address;
diff --git a/Content.Client/Atmos/Monitor/UI/Widgets/ScrubberControl.xaml.cs b/Content.Client/Atmos/Monitor/UI/Widgets/ScrubberControl.xaml.cs
index 24726bbe9c..9aaee77f98 100644
--- a/Content.Client/Atmos/Monitor/UI/Widgets/ScrubberControl.xaml.cs
+++ b/Content.Client/Atmos/Monitor/UI/Widgets/ScrubberControl.xaml.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Atmos.Monitor.UI.Widgets
{
[GenerateTypedNameReferences]
- public partial class ScrubberControl : BoxContainer
+ public sealed partial class ScrubberControl : BoxContainer
{
private GasVentScrubberData _data;
private string _address;
diff --git a/Content.Client/Atmos/Monitor/UI/Widgets/ThresholdControl.xaml.cs b/Content.Client/Atmos/Monitor/UI/Widgets/ThresholdControl.xaml.cs
index 52d9695c84..d05d92f8f2 100644
--- a/Content.Client/Atmos/Monitor/UI/Widgets/ThresholdControl.xaml.cs
+++ b/Content.Client/Atmos/Monitor/UI/Widgets/ThresholdControl.xaml.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Atmos.Monitor.UI.Widgets
{
[GenerateTypedNameReferences]
- public partial class ThresholdControl : BoxContainer
+ public sealed partial class ThresholdControl : BoxContainer
{
private AtmosAlarmThreshold _threshold;
private AtmosMonitorThresholdType _type;
@@ -151,7 +151,7 @@ namespace Content.Client.Atmos.Monitor.UI.Widgets
}
- private class ThresholdBoundControl : BoxContainer
+ private sealed class ThresholdBoundControl : BoxContainer
{
// raw values to use in thresholds, prefer these
// over directly setting Modified(Value/LastValue)
diff --git a/Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs b/Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs
index e73e5a065b..6530ee9ba4 100644
--- a/Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs
+++ b/Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Atmos.Overlays
{
- public class AtmosDebugOverlay : Overlay
+ public sealed class AtmosDebugOverlay : Overlay
{
private readonly AtmosDebugOverlaySystem _atmosDebugOverlaySystem;
diff --git a/Content.Client/Atmos/UI/GasAnalyzerBoundUserInterface.cs b/Content.Client/Atmos/UI/GasAnalyzerBoundUserInterface.cs
index ad25648633..fe91547f5a 100644
--- a/Content.Client/Atmos/UI/GasAnalyzerBoundUserInterface.cs
+++ b/Content.Client/Atmos/UI/GasAnalyzerBoundUserInterface.cs
@@ -4,7 +4,7 @@ using static Content.Shared.Atmos.Components.SharedGasAnalyzerComponent;
namespace Content.Client.Atmos.UI
{
- public class GasAnalyzerBoundUserInterface : BoundUserInterface
+ public sealed class GasAnalyzerBoundUserInterface : BoundUserInterface
{
public GasAnalyzerBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey)
{
diff --git a/Content.Client/Atmos/UI/GasAnalyzerMenu.cs b/Content.Client/Atmos/UI/GasAnalyzerMenu.cs
index 965211432e..8549165383 100644
--- a/Content.Client/Atmos/UI/GasAnalyzerMenu.cs
+++ b/Content.Client/Atmos/UI/GasAnalyzerMenu.cs
@@ -14,7 +14,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.Atmos.UI
{
- public class GasAnalyzerWindow : BaseWindow
+ public sealed class GasAnalyzerWindow : BaseWindow
{
public GasAnalyzerBoundUserInterface Owner { get; }
diff --git a/Content.Client/Atmos/UI/GasCanisterBoundUserInterface.cs b/Content.Client/Atmos/UI/GasCanisterBoundUserInterface.cs
index 0f21ef4b1d..d67d64fb05 100644
--- a/Content.Client/Atmos/UI/GasCanisterBoundUserInterface.cs
+++ b/Content.Client/Atmos/UI/GasCanisterBoundUserInterface.cs
@@ -9,7 +9,7 @@ namespace Content.Client.Atmos.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class GasCanisterBoundUserInterface : BoundUserInterface
+ public sealed class GasCanisterBoundUserInterface : BoundUserInterface
{
private GasCanisterWindow? _window;
diff --git a/Content.Client/Atmos/UI/GasCanisterWindow.xaml.cs b/Content.Client/Atmos/UI/GasCanisterWindow.xaml.cs
index 6f90db5df5..69fc5a73aa 100644
--- a/Content.Client/Atmos/UI/GasCanisterWindow.xaml.cs
+++ b/Content.Client/Atmos/UI/GasCanisterWindow.xaml.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Atmos.UI
/// Client-side UI used to control a canister.
///
[GenerateTypedNameReferences]
- public partial class GasCanisterWindow : DefaultWindow
+ public sealed partial class GasCanisterWindow : DefaultWindow
{
private readonly ButtonGroup _buttonGroup = new();
diff --git a/Content.Client/Atmos/UI/GasFilterBoundUserInterface.cs b/Content.Client/Atmos/UI/GasFilterBoundUserInterface.cs
index 271748e9d9..c0c5944995 100644
--- a/Content.Client/Atmos/UI/GasFilterBoundUserInterface.cs
+++ b/Content.Client/Atmos/UI/GasFilterBoundUserInterface.cs
@@ -12,7 +12,7 @@ namespace Content.Client.Atmos.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class GasFilterBoundUserInterface : BoundUserInterface
+ public sealed class GasFilterBoundUserInterface : BoundUserInterface
{
private GasFilterWindow? _window;
diff --git a/Content.Client/Atmos/UI/GasFilterWindow.xaml.cs b/Content.Client/Atmos/UI/GasFilterWindow.xaml.cs
index c02e195d4c..d52de513d6 100644
--- a/Content.Client/Atmos/UI/GasFilterWindow.xaml.cs
+++ b/Content.Client/Atmos/UI/GasFilterWindow.xaml.cs
@@ -14,7 +14,7 @@ namespace Content.Client.Atmos.UI
/// Client-side UI used to control a gas filter.
///
[GenerateTypedNameReferences]
- public partial class GasFilterWindow : DefaultWindow
+ public sealed partial class GasFilterWindow : DefaultWindow
{
private readonly ButtonGroup _buttonGroup = new();
diff --git a/Content.Client/Atmos/UI/GasMixerBoundUserInteface.cs b/Content.Client/Atmos/UI/GasMixerBoundUserInteface.cs
index 5be7a367f7..900b91fea2 100644
--- a/Content.Client/Atmos/UI/GasMixerBoundUserInteface.cs
+++ b/Content.Client/Atmos/UI/GasMixerBoundUserInteface.cs
@@ -13,7 +13,7 @@ namespace Content.Client.Atmos.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class GasMixerBoundUserInterface : BoundUserInterface
+ public sealed class GasMixerBoundUserInterface : BoundUserInterface
{
private GasMixerWindow? _window;
diff --git a/Content.Client/Atmos/UI/GasMixerWindow.xaml.cs b/Content.Client/Atmos/UI/GasMixerWindow.xaml.cs
index 1aefbf6cbf..009f4d29be 100644
--- a/Content.Client/Atmos/UI/GasMixerWindow.xaml.cs
+++ b/Content.Client/Atmos/UI/GasMixerWindow.xaml.cs
@@ -19,7 +19,7 @@ namespace Content.Client.Atmos.UI
/// Client-side UI used to control a gas mixer.
///
[GenerateTypedNameReferences]
- public partial class GasMixerWindow : DefaultWindow
+ public sealed partial class GasMixerWindow : DefaultWindow
{
public bool MixerStatus = true;
diff --git a/Content.Client/Atmos/UI/GasPressurePumpBoundUserInterface.cs b/Content.Client/Atmos/UI/GasPressurePumpBoundUserInterface.cs
index 95b305a99d..75a129fad7 100644
--- a/Content.Client/Atmos/UI/GasPressurePumpBoundUserInterface.cs
+++ b/Content.Client/Atmos/UI/GasPressurePumpBoundUserInterface.cs
@@ -13,7 +13,7 @@ namespace Content.Client.Atmos.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class GasPressurePumpBoundUserInterface : BoundUserInterface
+ public sealed class GasPressurePumpBoundUserInterface : BoundUserInterface
{
private GasPressurePumpWindow? _window;
diff --git a/Content.Client/Atmos/UI/GasPressurePumpWindow.xaml.cs b/Content.Client/Atmos/UI/GasPressurePumpWindow.xaml.cs
index 2977091387..22d8a1e9df 100644
--- a/Content.Client/Atmos/UI/GasPressurePumpWindow.xaml.cs
+++ b/Content.Client/Atmos/UI/GasPressurePumpWindow.xaml.cs
@@ -16,7 +16,7 @@ namespace Content.Client.Atmos.UI
/// Client-side UI used to control a gas pressure pump.
///
[GenerateTypedNameReferences]
- public partial class GasPressurePumpWindow : DefaultWindow
+ public sealed partial class GasPressurePumpWindow : DefaultWindow
{
public bool PumpStatus = true;
diff --git a/Content.Client/Atmos/UI/GasVolumePumpBoundUserInterface.cs b/Content.Client/Atmos/UI/GasVolumePumpBoundUserInterface.cs
index 6fa2b510c3..5348416f07 100644
--- a/Content.Client/Atmos/UI/GasVolumePumpBoundUserInterface.cs
+++ b/Content.Client/Atmos/UI/GasVolumePumpBoundUserInterface.cs
@@ -10,7 +10,7 @@ namespace Content.Client.Atmos.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class GasVolumePumpBoundUserInterface : BoundUserInterface
+ public sealed class GasVolumePumpBoundUserInterface : BoundUserInterface
{
private GasVolumePumpWindow? _window;
diff --git a/Content.Client/Atmos/UI/GasVolumePumpWindow.xaml.cs b/Content.Client/Atmos/UI/GasVolumePumpWindow.xaml.cs
index dc0fc288bb..2ca567302d 100644
--- a/Content.Client/Atmos/UI/GasVolumePumpWindow.xaml.cs
+++ b/Content.Client/Atmos/UI/GasVolumePumpWindow.xaml.cs
@@ -16,7 +16,7 @@ namespace Content.Client.Atmos.UI
/// Client-side UI used to control a gas volume pump.
///
[GenerateTypedNameReferences]
- public partial class GasVolumePumpWindow : DefaultWindow
+ public sealed partial class GasVolumePumpWindow : DefaultWindow
{
public bool PumpStatus = true;
diff --git a/Content.Client/Atmos/Visualizers/AtmosPlaqueVisualizer.cs b/Content.Client/Atmos/Visualizers/AtmosPlaqueVisualizer.cs
index 5bf7c324d6..80382624dd 100644
--- a/Content.Client/Atmos/Visualizers/AtmosPlaqueVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/AtmosPlaqueVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class AtmosPlaqueVisualizer : AppearanceVisualizer
+ public sealed class AtmosPlaqueVisualizer : AppearanceVisualizer
{
[DataField("layer")]
private int Layer { get; }
diff --git a/Content.Client/Atmos/Visualizers/FireVisualizer.cs b/Content.Client/Atmos/Visualizers/FireVisualizer.cs
index 504543201f..fe84d6bf6c 100644
--- a/Content.Client/Atmos/Visualizers/FireVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/FireVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class FireVisualizer : AppearanceVisualizer
+ public sealed class FireVisualizer : AppearanceVisualizer
{
[DataField("fireStackAlternateState")]
private int _fireStackAlternateState = 3;
diff --git a/Content.Client/Atmos/Visualizers/GasAnalyzerVisualizer.cs b/Content.Client/Atmos/Visualizers/GasAnalyzerVisualizer.cs
index ca5eca40a6..6875174036 100644
--- a/Content.Client/Atmos/Visualizers/GasAnalyzerVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/GasAnalyzerVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class GasAnalyzerVisualizer : AppearanceVisualizer
+ public sealed class GasAnalyzerVisualizer : AppearanceVisualizer
{
[DataField("state_off")]
private string? _stateOff;
diff --git a/Content.Client/Atmos/Visualizers/GasCanisterVisualizer.cs b/Content.Client/Atmos/Visualizers/GasCanisterVisualizer.cs
index 99ba7c2539..d89acfc342 100644
--- a/Content.Client/Atmos/Visualizers/GasCanisterVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/GasCanisterVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class GasCanisterVisualizer : AppearanceVisualizer
+ public sealed class GasCanisterVisualizer : AppearanceVisualizer
{
[DataField("pressureStates")]
private readonly string[] _statePressure = {"", "", "", ""};
diff --git a/Content.Client/Atmos/Visualizers/GasFilterVisualizer.cs b/Content.Client/Atmos/Visualizers/GasFilterVisualizer.cs
index 5ad5468c42..3fea6381fd 100644
--- a/Content.Client/Atmos/Visualizers/GasFilterVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/GasFilterVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class GasFilterVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class GasFilterVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => FilterVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/GasPortableVisualizer.cs b/Content.Client/Atmos/Visualizers/GasPortableVisualizer.cs
index 42251edaaf..de8beba07d 100644
--- a/Content.Client/Atmos/Visualizers/GasPortableVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/GasPortableVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class GasPortableVisualizer : AppearanceVisualizer
+ public sealed class GasPortableVisualizer : AppearanceVisualizer
{
[DataField("stateConnected")]
private string? _stateConnected;
diff --git a/Content.Client/Atmos/Visualizers/GasValveVisualizer.cs b/Content.Client/Atmos/Visualizers/GasValveVisualizer.cs
index 6cd963b4a4..4cfb7eab73 100644
--- a/Content.Client/Atmos/Visualizers/GasValveVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/GasValveVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class GasValveVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class GasValveVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => FilterVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/OutletInjectorVisualizer.cs b/Content.Client/Atmos/Visualizers/OutletInjectorVisualizer.cs
index ec23d7b503..1eb5bbaa9e 100644
--- a/Content.Client/Atmos/Visualizers/OutletInjectorVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/OutletInjectorVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class OutletInjectorVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class OutletInjectorVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => OutletInjectorVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/PassiveVentVisualizer.cs b/Content.Client/Atmos/Visualizers/PassiveVentVisualizer.cs
index d2d08244bc..3eb507fa8a 100644
--- a/Content.Client/Atmos/Visualizers/PassiveVentVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/PassiveVentVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class PassiveVentVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class PassiveVentVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => PassiveVentVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/PressurePumpVisualizer.cs b/Content.Client/Atmos/Visualizers/PressurePumpVisualizer.cs
index e0b5db06d3..7eff2bdc6e 100644
--- a/Content.Client/Atmos/Visualizers/PressurePumpVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/PressurePumpVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class PressurePumpVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class PressurePumpVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => PressurePumpVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/ScrubberVisualizer.cs b/Content.Client/Atmos/Visualizers/ScrubberVisualizer.cs
index 295633cc35..8ac626b17a 100644
--- a/Content.Client/Atmos/Visualizers/ScrubberVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/ScrubberVisualizer.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class ScrubberVisualizer : AppearanceVisualizer
+ public sealed class ScrubberVisualizer : AppearanceVisualizer
{
private string _offState = "scrub_off";
private string _scrubState = "scrub_on";
diff --git a/Content.Client/Atmos/Visualizers/ThermoMachineVisualizer.cs b/Content.Client/Atmos/Visualizers/ThermoMachineVisualizer.cs
index ab7db6ae92..b7dfc69740 100644
--- a/Content.Client/Atmos/Visualizers/ThermoMachineVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/ThermoMachineVisualizer.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class ThermoMachineVisualizer : EnabledAtmosDeviceVisualizer
+ public sealed class ThermoMachineVisualizer : EnabledAtmosDeviceVisualizer
{
protected override object LayerMap => Layers.Enabled;
protected override Enum DataKey => ThermoMachineVisuals.Enabled;
diff --git a/Content.Client/Atmos/Visualizers/VentPumpVisualizer.cs b/Content.Client/Atmos/Visualizers/VentPumpVisualizer.cs
index 15bf0938de..57e17cab3b 100644
--- a/Content.Client/Atmos/Visualizers/VentPumpVisualizer.cs
+++ b/Content.Client/Atmos/Visualizers/VentPumpVisualizer.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Atmos.Visualizers
{
[UsedImplicitly]
- public class VentPumpVisualizer : AppearanceVisualizer
+ public sealed class VentPumpVisualizer : AppearanceVisualizer
{
private string _offState = "vent_off";
private string _inState = "vent_in";
diff --git a/Content.Client/Audio/BackgroundAudioSystem.cs b/Content.Client/Audio/BackgroundAudioSystem.cs
index 29f7c98187..9e4ce2d1ad 100644
--- a/Content.Client/Audio/BackgroundAudioSystem.cs
+++ b/Content.Client/Audio/BackgroundAudioSystem.cs
@@ -18,7 +18,7 @@ using Robust.Shared.Random;
namespace Content.Client.Audio
{
[UsedImplicitly]
- public class BackgroundAudioSystem : EntitySystem
+ public sealed class BackgroundAudioSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IRobustRandom _robustRandom = default!;
diff --git a/Content.Client/Body/Components/BodyComponent.cs b/Content.Client/Body/Components/BodyComponent.cs
index c49b850969..d82ac656f8 100644
--- a/Content.Client/Body/Components/BodyComponent.cs
+++ b/Content.Client/Body/Components/BodyComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Client.Body.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedBodyComponent))]
- public class BodyComponent : SharedBodyComponent, IDraggable
+ public sealed class BodyComponent : SharedBodyComponent, IDraggable
{
bool IDraggable.CanStartDrag(StartDragDropEvent args)
{
diff --git a/Content.Client/Body/Components/BodyPartComponent.cs b/Content.Client/Body/Components/BodyPartComponent.cs
index 127990ee93..9dd47352c9 100644
--- a/Content.Client/Body/Components/BodyPartComponent.cs
+++ b/Content.Client/Body/Components/BodyPartComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Client.Body.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedBodyPartComponent))]
- public class BodyPartComponent : SharedBodyPartComponent
+ public sealed class BodyPartComponent : SharedBodyPartComponent
{
}
}
diff --git a/Content.Client/Body/UI/BodyScannerBoundUserInterface.cs b/Content.Client/Body/UI/BodyScannerBoundUserInterface.cs
index 417059745a..c340095bd8 100644
--- a/Content.Client/Body/UI/BodyScannerBoundUserInterface.cs
+++ b/Content.Client/Body/UI/BodyScannerBoundUserInterface.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Client.Body.UI
{
[UsedImplicitly]
- public class BodyScannerBoundUserInterface : BoundUserInterface
+ public sealed class BodyScannerBoundUserInterface : BoundUserInterface
{
[ViewVariables]
private BodyScannerDisplay? _display;
diff --git a/Content.Client/Botany/PlantHolderVisualizer.cs b/Content.Client/Botany/PlantHolderVisualizer.cs
index aee51cab44..1994f64c9b 100644
--- a/Content.Client/Botany/PlantHolderVisualizer.cs
+++ b/Content.Client/Botany/PlantHolderVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Utility;
namespace Content.Client.Botany
{
[UsedImplicitly]
- public class PlantHolderVisualizer : AppearanceVisualizer
+ public sealed class PlantHolderVisualizer : AppearanceVisualizer
{
public override void InitializeEntity(EntityUid entity)
{
diff --git a/Content.Client/Buckle/BuckleComponent.cs b/Content.Client/Buckle/BuckleComponent.cs
index 0842d56402..52743e3695 100644
--- a/Content.Client/Buckle/BuckleComponent.cs
+++ b/Content.Client/Buckle/BuckleComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Client.Buckle
{
[RegisterComponent]
[ComponentReference(typeof(SharedBuckleComponent))]
- public class BuckleComponent : SharedBuckleComponent
+ public sealed class BuckleComponent : SharedBuckleComponent
{
private bool _buckled;
private int? _originalDrawDepth;
diff --git a/Content.Client/Buckle/BuckleVisualizer.cs b/Content.Client/Buckle/BuckleVisualizer.cs
index 035b6e8aa0..6daae3eec5 100644
--- a/Content.Client/Buckle/BuckleVisualizer.cs
+++ b/Content.Client/Buckle/BuckleVisualizer.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Buckle
{
[UsedImplicitly]
- public class BuckleVisualizer : AppearanceVisualizer
+ public sealed class BuckleVisualizer : AppearanceVisualizer
{
public override void OnChangeData(AppearanceComponent component)
{
diff --git a/Content.Client/Buckle/Strap/StrapComponent.cs b/Content.Client/Buckle/Strap/StrapComponent.cs
index 5bfa5520a0..27da0cfe3e 100644
--- a/Content.Client/Buckle/Strap/StrapComponent.cs
+++ b/Content.Client/Buckle/Strap/StrapComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Client.Buckle.Strap
{
[RegisterComponent]
[ComponentReference(typeof(SharedStrapComponent))]
- public class StrapComponent : SharedStrapComponent
+ public sealed class StrapComponent : SharedStrapComponent
{
public override bool DragDropOn(DragDropEvent eventArgs)
{
diff --git a/Content.Client/Cargo/CargoConsoleBoundUserInterface.cs b/Content.Client/Cargo/CargoConsoleBoundUserInterface.cs
index 117b54d4c6..944c133ecb 100644
--- a/Content.Client/Cargo/CargoConsoleBoundUserInterface.cs
+++ b/Content.Client/Cargo/CargoConsoleBoundUserInterface.cs
@@ -11,7 +11,7 @@ using static Robust.Client.UserInterface.Controls.BaseButton;
namespace Content.Client.Cargo
{
- public class CargoConsoleBoundUserInterface : BoundUserInterface
+ public sealed class CargoConsoleBoundUserInterface : BoundUserInterface
{
[ViewVariables]
private CargoConsoleMenu? _menu;
diff --git a/Content.Client/Cargo/Components/CargoOrderDatabaseComponent.cs b/Content.Client/Cargo/Components/CargoOrderDatabaseComponent.cs
index f99c6dc46d..5279e6dc0e 100644
--- a/Content.Client/Cargo/Components/CargoOrderDatabaseComponent.cs
+++ b/Content.Client/Cargo/Components/CargoOrderDatabaseComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Client.Cargo.Components
{
[RegisterComponent]
- public class CargoOrderDatabaseComponent : SharedCargoOrderDatabaseComponent
+ public sealed class CargoOrderDatabaseComponent : SharedCargoOrderDatabaseComponent
{
private readonly List _orders = new();
@@ -22,7 +22,7 @@ namespace Content.Client.Cargo.Components
///
/// Removes all orders from the database.
///
- public virtual void Clear()
+ public void Clear()
{
_orders.Clear();
}
@@ -31,7 +31,7 @@ namespace Content.Client.Cargo.Components
/// Adds an order to the database.
///
/// The order to be added.
- public virtual void AddOrder(CargoOrderData order)
+ public void AddOrder(CargoOrderData order)
{
if (!_orders.Contains(order))
_orders.Add(order);
diff --git a/Content.Client/Cargo/Components/GalacticMarketComponent.cs b/Content.Client/Cargo/Components/GalacticMarketComponent.cs
index 27bb68b298..b26ee0b1f4 100644
--- a/Content.Client/Cargo/Components/GalacticMarketComponent.cs
+++ b/Content.Client/Cargo/Components/GalacticMarketComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Cargo.Components
{
[RegisterComponent]
- public class GalacticMarketComponent : SharedGalacticMarketComponent
+ public sealed class GalacticMarketComponent : SharedGalacticMarketComponent
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs b/Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs
index 82a1ea13b6..126bf1d3e3 100644
--- a/Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs
+++ b/Content.Client/Cargo/UI/CargoConsoleMenu.xaml.cs
@@ -19,7 +19,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.Cargo.UI
{
[GenerateTypedNameReferences]
- public partial class CargoConsoleMenu : DefaultWindow
+ public sealed partial class CargoConsoleMenu : DefaultWindow
{
public CargoConsoleBoundUserInterface Owner { get; private set; }
diff --git a/Content.Client/Cargo/UI/CargoConsoleOrderMenu.xaml.cs b/Content.Client/Cargo/UI/CargoConsoleOrderMenu.xaml.cs
index e098612937..20f1653473 100644
--- a/Content.Client/Cargo/UI/CargoConsoleOrderMenu.xaml.cs
+++ b/Content.Client/Cargo/UI/CargoConsoleOrderMenu.xaml.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Cargo.UI
{
[GenerateTypedNameReferences]
- partial class CargoConsoleOrderMenu : DefaultWindow
+ sealed partial class CargoConsoleOrderMenu : DefaultWindow
{
public CargoConsoleOrderMenu()
{
diff --git a/Content.Client/Cargo/UI/CargoOrderRow.xaml.cs b/Content.Client/Cargo/UI/CargoOrderRow.xaml.cs
index 27e1aaa061..77abcf4069 100644
--- a/Content.Client/Cargo/UI/CargoOrderRow.xaml.cs
+++ b/Content.Client/Cargo/UI/CargoOrderRow.xaml.cs
@@ -6,7 +6,7 @@ using Robust.Client.UserInterface.XAML;
namespace Content.Client.Cargo.UI
{
[GenerateTypedNameReferences]
- public partial class CargoOrderRow : PanelContainer
+ public sealed partial class CargoOrderRow : PanelContainer
{
public CargoOrderData? Order { get; set; }
diff --git a/Content.Client/Cargo/UI/CargoProductRow.xaml.cs b/Content.Client/Cargo/UI/CargoProductRow.xaml.cs
index 2c7c396500..0f3796dac2 100644
--- a/Content.Client/Cargo/UI/CargoProductRow.xaml.cs
+++ b/Content.Client/Cargo/UI/CargoProductRow.xaml.cs
@@ -6,7 +6,7 @@ using Robust.Client.UserInterface.XAML;
namespace Content.Client.Cargo.UI
{
[GenerateTypedNameReferences]
- public partial class CargoProductRow : PanelContainer
+ public sealed partial class CargoProductRow : PanelContainer
{
public CargoProductPrototype? Product { get; set; }
diff --git a/Content.Client/Cargo/UI/GalacticBankSelectionMenu.cs b/Content.Client/Cargo/UI/GalacticBankSelectionMenu.cs
index d148d5586b..b742676829 100644
--- a/Content.Client/Cargo/UI/GalacticBankSelectionMenu.cs
+++ b/Content.Client/Cargo/UI/GalacticBankSelectionMenu.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Localization;
namespace Content.Client.Cargo.UI
{
- public class GalacticBankSelectionMenu : DefaultWindow
+ public sealed class GalacticBankSelectionMenu : DefaultWindow
{
private readonly ItemList _accounts;
private int _accountCount;
diff --git a/Content.Client/CharacterAppearance/MagicMirrorBoundUserInterface.cs b/Content.Client/CharacterAppearance/MagicMirrorBoundUserInterface.cs
index bceb82bcc1..bf53552c12 100644
--- a/Content.Client/CharacterAppearance/MagicMirrorBoundUserInterface.cs
+++ b/Content.Client/CharacterAppearance/MagicMirrorBoundUserInterface.cs
@@ -18,7 +18,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.CharacterAppearance
{
[UsedImplicitly]
- public class MagicMirrorBoundUserInterface : BoundUserInterface
+ public sealed class MagicMirrorBoundUserInterface : BoundUserInterface
{
private MagicMirrorWindow? _window;
@@ -72,7 +72,7 @@ namespace Content.Client.CharacterAppearance
}
}
- public class ColorSlider : Control
+ public sealed class ColorSlider : Control
{
private readonly Slider _slider;
private readonly LineEdit _textBox;
@@ -276,7 +276,7 @@ namespace Content.Client.CharacterAppearance
// ColorSlider
}
- public class EyeColorPicker : Control
+ public sealed class EyeColorPicker : Control
{
public event Action? OnEyeColorPicked;
@@ -329,7 +329,7 @@ namespace Content.Client.CharacterAppearance
// ColorSlider
}
- public class MagicMirrorWindow : DefaultWindow
+ public sealed class MagicMirrorWindow : DefaultWindow
{
private readonly HairStylePicker _hairStylePicker;
private readonly HairStylePicker _facialHairStylePicker;
diff --git a/Content.Client/CharacterAppearance/Systems/HumanoidAppearanceSystem.cs b/Content.Client/CharacterAppearance/Systems/HumanoidAppearanceSystem.cs
index ba9aaf098d..6a167591e1 100644
--- a/Content.Client/CharacterAppearance/Systems/HumanoidAppearanceSystem.cs
+++ b/Content.Client/CharacterAppearance/Systems/HumanoidAppearanceSystem.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.CharacterAppearance.Systems
{
- public class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
+ public sealed class HumanoidAppearanceSystem : SharedHumanoidAppearanceSystem
{
[Dependency] private readonly SpriteAccessoryManager _accessoryManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/CharacterInfo/Components/CharacterInfoSystem.cs b/Content.Client/CharacterInfo/Components/CharacterInfoSystem.cs
index 965260a3a1..7227c16cee 100644
--- a/Content.Client/CharacterInfo/Components/CharacterInfoSystem.cs
+++ b/Content.Client/CharacterInfo/Components/CharacterInfoSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Maths;
namespace Content.Client.CharacterInfo.Components;
-public class CharacterInfoSystem : EntitySystem
+public sealed class CharacterInfoSystem : EntitySystem
{
public override void Initialize()
{
@@ -97,13 +97,13 @@ public class CharacterInfoSystem : EntitySystem
{
Orientation = BoxContainer.LayoutOrientation.Horizontal
};
-
+
briefinghBox.AddChild(new Label
{
Text = briefing,
Modulate = Color.Yellow
});
-
+
vbox.AddChild(briefinghBox);
comp.Control.ObjectivesContainer.AddChild(vbox);
}
diff --git a/Content.Client/CharacterInfo/ProgressTextureRect.cs b/Content.Client/CharacterInfo/ProgressTextureRect.cs
index 57e75bc27d..74113fe2aa 100644
--- a/Content.Client/CharacterInfo/ProgressTextureRect.cs
+++ b/Content.Client/CharacterInfo/ProgressTextureRect.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Maths;
namespace Content.Client.CharacterInfo
{
- public class ProgressTextureRect : TextureRect
+ public sealed class ProgressTextureRect : TextureRect
{
public float Progress;
diff --git a/Content.Client/CharacterInterface/CharacterInterfaceComponent.cs b/Content.Client/CharacterInterface/CharacterInterfaceComponent.cs
index 033eda82d2..03c92d3b29 100644
--- a/Content.Client/CharacterInterface/CharacterInterfaceComponent.cs
+++ b/Content.Client/CharacterInterface/CharacterInterfaceComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Client.CharacterInterface
/// user interfaces into a single window and keybind for the user
///
[RegisterComponent]
- public class CharacterInterfaceComponent : Component
+ public sealed class CharacterInterfaceComponent : Component
{
///
/// Window to hold each of the character interfaces
@@ -27,7 +27,7 @@ namespace Content.Client.CharacterInterface
///
/// A window that collects and shows all the individual character user interfaces
///
- public class CharacterWindow : DefaultWindow
+ public sealed class CharacterWindow : DefaultWindow
{
private readonly List _windowComponents;
diff --git a/Content.Client/Chat/ChatHelper.cs b/Content.Client/Chat/ChatHelper.cs
index 03664d76d0..a0db4f97d5 100644
--- a/Content.Client/Chat/ChatHelper.cs
+++ b/Content.Client/Chat/ChatHelper.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Chat
{
- public class ChatHelper
+ public sealed class ChatHelper
{
public static Color ChatColor(ChatChannel channel) =>
channel switch
diff --git a/Content.Client/Chat/StoredChatMessage.cs b/Content.Client/Chat/StoredChatMessage.cs
index 49264c8fb0..e7c350ca51 100644
--- a/Content.Client/Chat/StoredChatMessage.cs
+++ b/Content.Client/Chat/StoredChatMessage.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Chat
{
- public class StoredChatMessage
+ public sealed class StoredChatMessage
{
// TODO Make me reflected with respect to MsgChatMessage
diff --git a/Content.Client/Chat/UI/ChatBox.xaml.cs b/Content.Client/Chat/UI/ChatBox.xaml.cs
index 8496a7ac04..5b31ca0526 100644
--- a/Content.Client/Chat/UI/ChatBox.xaml.cs
+++ b/Content.Client/Chat/UI/ChatBox.xaml.cs
@@ -22,6 +22,7 @@ using Robust.Shared.Utility;
namespace Content.Client.Chat.UI
{
[GenerateTypedNameReferences]
+ [Virtual]
public partial class ChatBox : Control
{
[Dependency] protected readonly IChatManager ChatMgr = default!;
diff --git a/Content.Client/Chat/UI/HudChatBox.cs b/Content.Client/Chat/UI/HudChatBox.cs
index 824a906d01..2fe626893c 100644
--- a/Content.Client/Chat/UI/HudChatBox.cs
+++ b/Content.Client/Chat/UI/HudChatBox.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Timing;
namespace Content.Client.Chat.UI
{
- public class HudChatBox : ChatBox
+ public sealed class HudChatBox : ChatBox
{
// TODO: Revisit the resizing stuff after https://github.com/space-wizards/RobustToolbox/issues/1392 is done,
// Probably not "supposed" to inject IClyde, but I give up.
diff --git a/Content.Client/Chat/UI/SpeechBubble.cs b/Content.Client/Chat/UI/SpeechBubble.cs
index a72a843775..a430b11757 100644
--- a/Content.Client/Chat/UI/SpeechBubble.cs
+++ b/Content.Client/Chat/UI/SpeechBubble.cs
@@ -166,7 +166,7 @@ namespace Content.Client.Chat.UI
}
}
- public class TextSpeechBubble : SpeechBubble
+ public sealed class TextSpeechBubble : SpeechBubble
{
public TextSpeechBubble(string text, EntityUid senderEntity, IEyeManager eyeManager, IChatManager chatManager, IEntityManager entityManager, string speechStyleClass)
diff --git a/Content.Client/Chemistry/ChemicalReactionSystem.cs b/Content.Client/Chemistry/ChemicalReactionSystem.cs
index 71f3817792..96aa6db29b 100644
--- a/Content.Client/Chemistry/ChemicalReactionSystem.cs
+++ b/Content.Client/Chemistry/ChemicalReactionSystem.cs
@@ -2,7 +2,7 @@ using Content.Shared.Chemistry.Reaction;
namespace Content.Client.Chemistry
{
- public class ChemicalReactionSystem : SharedChemicalReactionSystem
+ public sealed class ChemicalReactionSystem : SharedChemicalReactionSystem
{
}
diff --git a/Content.Client/Chemistry/Components/InjectorComponent.cs b/Content.Client/Chemistry/Components/InjectorComponent.cs
index 99bab0793a..4a6864cad2 100644
--- a/Content.Client/Chemistry/Components/InjectorComponent.cs
+++ b/Content.Client/Chemistry/Components/InjectorComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Client.Chemistry.Components
/// Client behavior for injectors & syringes. Used for item status on injectors
///
[RegisterComponent]
- public class InjectorComponent : SharedInjectorComponent, IItemStatus
+ public sealed class InjectorComponent : SharedInjectorComponent, IItemStatus
{
[ViewVariables] private FixedPoint2 CurrentVolume { get; set; }
[ViewVariables] private FixedPoint2 TotalVolume { get; set; }
diff --git a/Content.Client/Chemistry/UI/ChemMasterBoundUserInterface.cs b/Content.Client/Chemistry/UI/ChemMasterBoundUserInterface.cs
index d4d44d9451..259dff389d 100644
--- a/Content.Client/Chemistry/UI/ChemMasterBoundUserInterface.cs
+++ b/Content.Client/Chemistry/UI/ChemMasterBoundUserInterface.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Chemistry.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class ChemMasterBoundUserInterface : BoundUserInterface
+ public sealed class ChemMasterBoundUserInterface : BoundUserInterface
{
private ChemMasterWindow? _window;
@@ -76,7 +76,7 @@ namespace Content.Client.Chemistry.UI
SendMessage(new UiActionMessage(action, button.Amount, button.Id, button.IsBuffer, null, null, null, null));
}
else
- {
+ {
SendMessage(new UiActionMessage(action, null, null, null, label, pillType, pillAmount, bottleAmount));
}
}
diff --git a/Content.Client/Chemistry/UI/ChemMasterWindow.xaml.cs b/Content.Client/Chemistry/UI/ChemMasterWindow.xaml.cs
index e8847b1e7c..fd9b1c5ea6 100644
--- a/Content.Client/Chemistry/UI/ChemMasterWindow.xaml.cs
+++ b/Content.Client/Chemistry/UI/ChemMasterWindow.xaml.cs
@@ -26,7 +26,7 @@ namespace Content.Client.Chemistry.UI
/// Client-side UI used to control a
///
[GenerateTypedNameReferences]
- public partial class ChemMasterWindow : DefaultWindow
+ public sealed partial class ChemMasterWindow : DefaultWindow
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
public event Action? OnLabelEntered;
@@ -267,7 +267,7 @@ namespace Content.Client.Chemistry.UI
}
}
- public class ChemButton : Button
+ public sealed class ChemButton : Button
{
public FixedPoint2 Amount { get; set; }
public bool IsBuffer = true;
diff --git a/Content.Client/Chemistry/UI/ReagentDispenserBoundUserInterface.cs b/Content.Client/Chemistry/UI/ReagentDispenserBoundUserInterface.cs
index ba6bb80c34..b507460cee 100644
--- a/Content.Client/Chemistry/UI/ReagentDispenserBoundUserInterface.cs
+++ b/Content.Client/Chemistry/UI/ReagentDispenserBoundUserInterface.cs
@@ -14,7 +14,7 @@ namespace Content.Client.Chemistry.UI
/// Initializes a and updates it when new server messages are received.
///
[UsedImplicitly]
- public class ReagentDispenserBoundUserInterface : BoundUserInterface
+ public sealed class ReagentDispenserBoundUserInterface : BoundUserInterface
{
private ReagentDispenserWindow? _window;
private ReagentDispenserBoundUserInterfaceState? _lastState;
diff --git a/Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs b/Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs
index a91e358eb9..d88561732e 100644
--- a/Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs
+++ b/Content.Client/Chemistry/UI/ReagentDispenserWindow.xaml.cs
@@ -20,7 +20,7 @@ namespace Content.Client.Chemistry.UI
/// Client-side UI used to control a
///
[GenerateTypedNameReferences]
- public partial class ReagentDispenserWindow : DefaultWindow
+ public sealed partial class ReagentDispenserWindow : DefaultWindow
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/Chemistry/UI/TransferAmountBoundUserInterface.cs b/Content.Client/Chemistry/UI/TransferAmountBoundUserInterface.cs
index cf8f6f8ac2..fd501a8fa3 100644
--- a/Content.Client/Chemistry/UI/TransferAmountBoundUserInterface.cs
+++ b/Content.Client/Chemistry/UI/TransferAmountBoundUserInterface.cs
@@ -6,7 +6,7 @@ using Robust.Client.GameObjects;
namespace Content.Client.Chemistry.UI
{
[UsedImplicitly]
- public class TransferAmountBoundUserInterface : BoundUserInterface
+ public sealed class TransferAmountBoundUserInterface : BoundUserInterface
{
private TransferAmountWindow? _window;
diff --git a/Content.Client/Chemistry/UI/TransferAmountWindow.xaml.cs b/Content.Client/Chemistry/UI/TransferAmountWindow.xaml.cs
index 8fc18dec06..767e5cc823 100644
--- a/Content.Client/Chemistry/UI/TransferAmountWindow.xaml.cs
+++ b/Content.Client/Chemistry/UI/TransferAmountWindow.xaml.cs
@@ -6,7 +6,7 @@ using Robust.Client.UserInterface.XAML;
namespace Content.Client.Chemistry.UI
{
[GenerateTypedNameReferences]
- public partial class TransferAmountWindow : DefaultWindow
+ public sealed partial class TransferAmountWindow : DefaultWindow
{
public TransferAmountWindow()
{
diff --git a/Content.Client/Chemistry/Visualizers/FoamVisualizer.cs b/Content.Client/Chemistry/Visualizers/FoamVisualizer.cs
index 2cb7a4bef5..7964f40e4f 100644
--- a/Content.Client/Chemistry/Visualizers/FoamVisualizer.cs
+++ b/Content.Client/Chemistry/Visualizers/FoamVisualizer.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Chemistry.Visualizers
{
[UsedImplicitly]
- public class FoamVisualizer : AppearanceVisualizer, ISerializationHooks
+ public sealed class FoamVisualizer : AppearanceVisualizer, ISerializationHooks
{
private const string AnimationKey = "foamdissolve_animation";
diff --git a/Content.Client/Chemistry/Visualizers/SmokeVisualizer.cs b/Content.Client/Chemistry/Visualizers/SmokeVisualizer.cs
index 666afaa4f6..38690b293d 100644
--- a/Content.Client/Chemistry/Visualizers/SmokeVisualizer.cs
+++ b/Content.Client/Chemistry/Visualizers/SmokeVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Maths;
namespace Content.Client.Chemistry.Visualizers
{
[UsedImplicitly]
- public class SmokeVisualizer : AppearanceVisualizer
+ public sealed class SmokeVisualizer : AppearanceVisualizer
{
public override void OnChangeData(AppearanceComponent component)
{
diff --git a/Content.Client/Chemistry/Visualizers/SolutionContainerVisualizer.cs b/Content.Client/Chemistry/Visualizers/SolutionContainerVisualizer.cs
index 945aa03c73..f97e1b479c 100644
--- a/Content.Client/Chemistry/Visualizers/SolutionContainerVisualizer.cs
+++ b/Content.Client/Chemistry/Visualizers/SolutionContainerVisualizer.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Chemistry.Visualizers
{
[UsedImplicitly]
- public class SolutionContainerVisualizer : AppearanceVisualizer
+ public sealed class SolutionContainerVisualizer : AppearanceVisualizer
{
[DataField("maxFillLevels")] private int _maxFillLevels = 0;
[DataField("fillBaseName")] private string? _fillBaseName = null;
diff --git a/Content.Client/Chemistry/Visualizers/VaporVisualizer.cs b/Content.Client/Chemistry/Visualizers/VaporVisualizer.cs
index c6cd5dc945..bd479ba8fd 100644
--- a/Content.Client/Chemistry/Visualizers/VaporVisualizer.cs
+++ b/Content.Client/Chemistry/Visualizers/VaporVisualizer.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Chemistry.Visualizers
{
[UsedImplicitly]
- public class VaporVisualizer : AppearanceVisualizer, ISerializationHooks
+ public sealed class VaporVisualizer : AppearanceVisualizer, ISerializationHooks
{
private const string AnimationKey = "flick_animation";
diff --git a/Content.Client/Clickable/ClickMapManager.cs b/Content.Client/Clickable/ClickMapManager.cs
index 497a8a7493..f1f864bfd5 100644
--- a/Content.Client/Clickable/ClickMapManager.cs
+++ b/Content.Client/Clickable/ClickMapManager.cs
@@ -12,7 +12,7 @@ using SixLabors.ImageSharp.PixelFormats;
namespace Content.Client.Clickable
{
- internal class ClickMapManager : IClickMapManager, IPostInjectInit
+ internal sealed class ClickMapManager : IClickMapManager, IPostInjectInit
{
private const float Threshold = 0.25f;
private const int ClickRadius = 2;
diff --git a/Content.Client/Cloning/UI/AcceptCloningEui.cs b/Content.Client/Cloning/UI/AcceptCloningEui.cs
index 41626579db..027f250c5c 100644
--- a/Content.Client/Cloning/UI/AcceptCloningEui.cs
+++ b/Content.Client/Cloning/UI/AcceptCloningEui.cs
@@ -5,7 +5,7 @@ using JetBrains.Annotations;
namespace Content.Client.Cloning.UI
{
[UsedImplicitly]
- public class AcceptCloningEui : BaseEui
+ public sealed class AcceptCloningEui : BaseEui
{
private readonly AcceptCloningWindow _window;
diff --git a/Content.Client/Cloning/UI/CloningPodBoundUserInterface.cs b/Content.Client/Cloning/UI/CloningPodBoundUserInterface.cs
index e28f40d203..f6d1933c64 100644
--- a/Content.Client/Cloning/UI/CloningPodBoundUserInterface.cs
+++ b/Content.Client/Cloning/UI/CloningPodBoundUserInterface.cs
@@ -7,7 +7,7 @@ using static Content.Shared.Cloning.SharedCloningPodComponent;
namespace Content.Client.Cloning.UI
{
[UsedImplicitly]
- public class CloningPodBoundUserInterface : BoundUserInterface
+ public sealed class CloningPodBoundUserInterface : BoundUserInterface
{
public CloningPodBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey)
{
diff --git a/Content.Client/Cloning/UI/CloningPodWindow.cs b/Content.Client/Cloning/UI/CloningPodWindow.cs
index 31862d0a3e..3ee31aff99 100644
--- a/Content.Client/Cloning/UI/CloningPodWindow.cs
+++ b/Content.Client/Cloning/UI/CloningPodWindow.cs
@@ -208,7 +208,7 @@ namespace Content.Client.Cloning.UI
}
[DebuggerDisplay("cloningbutton {" + nameof(Index) + "}")]
- private class CloningScanButton : Control
+ private sealed class CloningScanButton : Control
{
public string Scan { get; set; } = default!;
public int Id { get; set; }
diff --git a/Content.Client/Clothing/ClothingComponent.cs b/Content.Client/Clothing/ClothingComponent.cs
index 1dbaf33123..0a775c87b7 100644
--- a/Content.Client/Clothing/ClothingComponent.cs
+++ b/Content.Client/Clothing/ClothingComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Clothing
[ComponentReference(typeof(SharedItemComponent))]
[ComponentReference(typeof(ItemComponent))]
[NetworkedComponent()]
- public class ClothingComponent : ItemComponent
+ public sealed class ClothingComponent : ItemComponent
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("femaleMask")]
diff --git a/Content.Client/Clothing/ClothingSystem.cs b/Content.Client/Clothing/ClothingSystem.cs
index e630bae637..757db8060a 100644
--- a/Content.Client/Clothing/ClothingSystem.cs
+++ b/Content.Client/Clothing/ClothingSystem.cs
@@ -14,7 +14,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Clothing;
-public class ClothingSystem : EntitySystem
+public sealed class ClothingSystem : EntitySystem
{
///
/// This is a shitty hotfix written by me (Paul) to save me from renaming all files.
diff --git a/Content.Client/Clothing/MagbootsSystem.cs b/Content.Client/Clothing/MagbootsSystem.cs
index 040df94a50..d16b70fc4b 100644
--- a/Content.Client/Clothing/MagbootsSystem.cs
+++ b/Content.Client/Clothing/MagbootsSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Client.Clothing
{
- public class MagbootsSystem : EntitySystem
+ public sealed class MagbootsSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Client/CombatMode/ColoredScreenBorderOverlay.cs b/Content.Client/CombatMode/ColoredScreenBorderOverlay.cs
index 590f4d6b22..e042e5081b 100644
--- a/Content.Client/CombatMode/ColoredScreenBorderOverlay.cs
+++ b/Content.Client/CombatMode/ColoredScreenBorderOverlay.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.CombatMode
{
- public class ColoredScreenBorderOverlay : Overlay
+ public sealed class ColoredScreenBorderOverlay : Overlay
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/Commands/GroupingEntityMenuCommand.cs b/Content.Client/Commands/GroupingEntityMenuCommand.cs
index 99efb93c71..f64c5c6332 100644
--- a/Content.Client/Commands/GroupingEntityMenuCommand.cs
+++ b/Content.Client/Commands/GroupingEntityMenuCommand.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Commands
{
- public class GroupingEntityMenuCommand : IConsoleCommand
+ public sealed class GroupingEntityMenuCommand : IConsoleCommand
{
public string Command => "entitymenug";
diff --git a/Content.Client/Commands/HideMechanismsCommand.cs b/Content.Client/Commands/HideMechanismsCommand.cs
index 910db5b887..b8cbeb21a7 100644
--- a/Content.Client/Commands/HideMechanismsCommand.cs
+++ b/Content.Client/Commands/HideMechanismsCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Commands
{
- public class HideMechanismsCommand : IConsoleCommand
+ public sealed class HideMechanismsCommand : IConsoleCommand
{
public string Command => "hidemechanisms";
public string Description => $"Reverts the effects of {ShowMechanismsCommand.CommandName}";
diff --git a/Content.Client/Commands/OpenAHelpCommand.cs b/Content.Client/Commands/OpenAHelpCommand.cs
index ddaf8121c4..6cff7c08eb 100644
--- a/Content.Client/Commands/OpenAHelpCommand.cs
+++ b/Content.Client/Commands/OpenAHelpCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Network;
namespace Content.Client.Commands
{
[AnyCommand]
- public class OpenAHelpCommand : IConsoleCommand
+ public sealed class OpenAHelpCommand : IConsoleCommand
{
public string Command => "openahelp";
public string Description => $"Opens AHelp channel for a given NetUserID, or your personal channel if none given.";
diff --git a/Content.Client/Commands/ShowMechanismsCommand.cs b/Content.Client/Commands/ShowMechanismsCommand.cs
index 433ee6b13c..1221d97ebf 100644
--- a/Content.Client/Commands/ShowMechanismsCommand.cs
+++ b/Content.Client/Commands/ShowMechanismsCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Commands
{
- public class ShowMechanismsCommand : IConsoleCommand
+ public sealed class ShowMechanismsCommand : IConsoleCommand
{
public const string CommandName = "showmechanisms";
diff --git a/Content.Client/Commands/ToggleHealthOverlayCommand.cs b/Content.Client/Commands/ToggleHealthOverlayCommand.cs
index a2c2a55b8b..76000f42a1 100644
--- a/Content.Client/Commands/ToggleHealthOverlayCommand.cs
+++ b/Content.Client/Commands/ToggleHealthOverlayCommand.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Client.Commands
{
- public class ToggleHealthOverlayCommand : IConsoleCommand
+ public sealed class ToggleHealthOverlayCommand : IConsoleCommand
{
public string Command => "togglehealthoverlay";
public string Description => "Toggles a health bar above mobs.";
diff --git a/Content.Client/Commands/ToggleOutlineCommand.cs b/Content.Client/Commands/ToggleOutlineCommand.cs
index f8cefbf8d2..3f02435493 100644
--- a/Content.Client/Commands/ToggleOutlineCommand.cs
+++ b/Content.Client/Commands/ToggleOutlineCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Commands
{
[AnyCommand]
- public class ToggleOutlineCommand : IConsoleCommand
+ public sealed class ToggleOutlineCommand : IConsoleCommand
{
public string Command => "toggleoutline";
diff --git a/Content.Client/Communications/UI/CommunicationsConsoleBoundUserInterface.cs b/Content.Client/Communications/UI/CommunicationsConsoleBoundUserInterface.cs
index fa7411aeb9..5e6a35dc40 100644
--- a/Content.Client/Communications/UI/CommunicationsConsoleBoundUserInterface.cs
+++ b/Content.Client/Communications/UI/CommunicationsConsoleBoundUserInterface.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Client.Communications.UI
{
- public class CommunicationsConsoleBoundUserInterface : BoundUserInterface
+ public sealed class CommunicationsConsoleBoundUserInterface : BoundUserInterface
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
diff --git a/Content.Client/Communications/UI/CommunicationsConsoleMenu.cs b/Content.Client/Communications/UI/CommunicationsConsoleMenu.cs
index 773086c3c7..8b2fc31f76 100644
--- a/Content.Client/Communications/UI/CommunicationsConsoleMenu.cs
+++ b/Content.Client/Communications/UI/CommunicationsConsoleMenu.cs
@@ -10,7 +10,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Client.Communications.UI
{
- public class CommunicationsConsoleMenu : DefaultWindow
+ public sealed class CommunicationsConsoleMenu : DefaultWindow
{
private CommunicationsConsoleBoundUserInterface Owner { get; set; }
private readonly CancellationTokenSource _timerCancelTokenSource = new();
diff --git a/Content.Client/Computer/ComputerBoundUserInterface.cs b/Content.Client/Computer/ComputerBoundUserInterface.cs
index c402942d0a..cb216fc76e 100644
--- a/Content.Client/Computer/ComputerBoundUserInterface.cs
+++ b/Content.Client/Computer/ComputerBoundUserInterface.cs
@@ -9,6 +9,7 @@ namespace Content.Client.Computer
/// ComputerBoundUserInterface shunts all sorts of responsibilities that are in the BoundUserInterface for architectural reasons into the Window.
/// NOTE: Despite the name, ComputerBoundUserInterface does not and will not care about things like power.
///
+ [Virtual]
public class ComputerBoundUserInterface : ComputerBoundUserInterfaceBase where TWindow : BaseWindow, IComputerWindow, new() where TState : BoundUserInterfaceState
{
[Dependency] private readonly IDynamicTypeFactory _dynamicTypeFactory = default!;
@@ -54,6 +55,7 @@ namespace Content.Client.Computer
/// This class is to avoid a lot of <> being written when we just want to refer to SendMessage.
/// We could instead qualify a lot of generics even further, but that is a waste of time.
///
+ [Virtual]
public class ComputerBoundUserInterfaceBase : BoundUserInterface
{
public ComputerBoundUserInterfaceBase(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey) {}
diff --git a/Content.Client/Configurable/UI/ConfigurationBoundUserInterface.cs b/Content.Client/Configurable/UI/ConfigurationBoundUserInterface.cs
index bc4bd2e5ad..0bbec64126 100644
--- a/Content.Client/Configurable/UI/ConfigurationBoundUserInterface.cs
+++ b/Content.Client/Configurable/UI/ConfigurationBoundUserInterface.cs
@@ -6,7 +6,7 @@ using static Content.Shared.Configurable.SharedConfigurationComponent;
namespace Content.Client.Configurable.UI
{
- public class ConfigurationBoundUserInterface : BoundUserInterface
+ public sealed class ConfigurationBoundUserInterface : BoundUserInterface
{
public Regex? Validation { get; internal set; }
diff --git a/Content.Client/Configurable/UI/ConfigurationMenu.cs b/Content.Client/Configurable/UI/ConfigurationMenu.cs
index 218c1382b1..4b94e3055e 100644
--- a/Content.Client/Configurable/UI/ConfigurationMenu.cs
+++ b/Content.Client/Configurable/UI/ConfigurationMenu.cs
@@ -10,7 +10,7 @@ using static Robust.Client.UserInterface.Controls.BoxContainer;
namespace Content.Client.Configurable.UI
{
- public class ConfigurationMenu : DefaultWindow
+ public sealed class ConfigurationMenu : DefaultWindow
{
public ConfigurationBoundUserInterface Owner { get; }
diff --git a/Content.Client/Construction/ConstructionGhostComponent.cs b/Content.Client/Construction/ConstructionGhostComponent.cs
index 1d10a5dea0..54bf4bfb66 100644
--- a/Content.Client/Construction/ConstructionGhostComponent.cs
+++ b/Content.Client/Construction/ConstructionGhostComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Client.Construction
{
[RegisterComponent]
- public class ConstructionGhostComponent : Component
+ public sealed class ConstructionGhostComponent : Component
{
[ViewVariables] public ConstructionPrototype? Prototype { get; set; }
[ViewVariables] public int GhostId { get; set; }
diff --git a/Content.Client/Construction/ConstructionSystem.cs b/Content.Client/Construction/ConstructionSystem.cs
index 78eac7f829..60ae6065b6 100644
--- a/Content.Client/Construction/ConstructionSystem.cs
+++ b/Content.Client/Construction/ConstructionSystem.cs
@@ -23,7 +23,7 @@ namespace Content.Client.Construction
/// The client-side implementation of the construction system, which is used for constructing entities in game.
///
[UsedImplicitly]
- public class ConstructionSystem : SharedConstructionSystem
+ public sealed class ConstructionSystem : SharedConstructionSystem
{
[Dependency] private readonly IPlayerManager _playerManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
@@ -246,7 +246,7 @@ namespace Content.Client.Construction
}
}
- public class CraftingAvailabilityChangedArgs : EventArgs
+ public sealed class CraftingAvailabilityChangedArgs : EventArgs
{
public bool Available { get; }
diff --git a/Content.Client/Construction/MachineFrameVisualizer.cs b/Content.Client/Construction/MachineFrameVisualizer.cs
index 239d1657ac..5c0bae6e83 100644
--- a/Content.Client/Construction/MachineFrameVisualizer.cs
+++ b/Content.Client/Construction/MachineFrameVisualizer.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Client.Construction
{
[UsedImplicitly]
- public class MachineFrameVisualizer : AppearanceVisualizer
+ public sealed class MachineFrameVisualizer : AppearanceVisualizer
{
public override void OnChangeData(AppearanceComponent component)
{
diff --git a/Content.Client/Construction/UI/ConstructionMenu.xaml.cs b/Content.Client/Construction/UI/ConstructionMenu.xaml.cs
index 26e998ee3a..125d9210cf 100644
--- a/Content.Client/Construction/UI/ConstructionMenu.xaml.cs
+++ b/Content.Client/Construction/UI/ConstructionMenu.xaml.cs
@@ -53,7 +53,7 @@ namespace Content.Client.Construction.UI
}
[GenerateTypedNameReferences]
- public partial class ConstructionMenu : DefaultWindow, IConstructionMenuView
+ public sealed partial class ConstructionMenu : DefaultWindow, IConstructionMenuView
{
public bool BuildButtonPressed
{
diff --git a/Content.Client/Construction/UI/ConstructionMenuPresenter.cs b/Content.Client/Construction/UI/ConstructionMenuPresenter.cs
index f06c56b309..f3b023e60d 100644
--- a/Content.Client/Construction/UI/ConstructionMenuPresenter.cs
+++ b/Content.Client/Construction/UI/ConstructionMenuPresenter.cs
@@ -25,7 +25,7 @@ namespace Content.Client.Construction.UI
/// model. This is where the bulk of UI work is done, either calling functions in the model to change state, or collecting
/// data out of the model to *present* to the screen though the UI framework.
///
- internal class ConstructionMenuPresenter : IDisposable
+ internal sealed class ConstructionMenuPresenter : IDisposable
{
[Dependency] private readonly IEntitySystemManager _systemManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Client/ContextMenu/UI/ContextMenuElement.xaml.cs b/Content.Client/ContextMenu/UI/ContextMenuElement.xaml.cs
index 5e5dd9a210..d39bd7f5ad 100644
--- a/Content.Client/ContextMenu/UI/ContextMenuElement.xaml.cs
+++ b/Content.Client/ContextMenu/UI/ContextMenuElement.xaml.cs
@@ -15,6 +15,7 @@ namespace Content.Client.ContextMenu.UI
/// If this entry has a sub-menu, it also shows a little ">" icon on the right.
///
[GenerateTypedNameReferences]
+ [Virtual]
public partial class ContextMenuElement : ContainerButton
{
public const string StyleClassContextMenuButton = "contextMenuButton";
diff --git a/Content.Client/ContextMenu/UI/ContextMenuPopup.xaml.cs b/Content.Client/ContextMenu/UI/ContextMenuPopup.xaml.cs
index 6eab81ded2..063535819d 100644
--- a/Content.Client/ContextMenu/UI/ContextMenuPopup.xaml.cs
+++ b/Content.Client/ContextMenu/UI/ContextMenuPopup.xaml.cs
@@ -12,7 +12,7 @@ namespace Content.Client.ContextMenu.UI
/// The base context-menu pop-up window used for both the entity and verb menus.
///
[GenerateTypedNameReferences]
- public partial class ContextMenuPopup : Popup
+ public sealed partial class ContextMenuPopup : Popup
{
public const string StyleClassContextMenuPopup = "contextMenuPopup";
@@ -52,7 +52,7 @@ namespace Content.Client.ContextMenu.UI
UserInterfaceManager.ModalRoot.AddChild(this);
MenuBody.OnChildRemoved += ctrl => _presenter.OnRemoveElement(this, ctrl);
-
+
if (ParentElement != null)
{
DebugTools.Assert(ParentElement.SubMenu == null);
diff --git a/Content.Client/ContextMenu/UI/ContextMenuPresenter.cs b/Content.Client/ContextMenu/UI/ContextMenuPresenter.cs
index 62e7251861..a19f225214 100644
--- a/Content.Client/ContextMenu/UI/ContextMenuPresenter.cs
+++ b/Content.Client/ContextMenu/UI/ContextMenuPresenter.cs
@@ -13,6 +13,7 @@ namespace Content.Client.ContextMenu.UI
///
/// This largely involves setting up timers to open and close sub-menus when hovering over other menu elements.
///
+ [Virtual]
public class ContextMenuPresenter : IDisposable
{
public static readonly TimeSpan HoverDelay = TimeSpan.FromSeconds(0.2);
@@ -179,7 +180,7 @@ namespace Content.Client.ContextMenu.UI
}
///
- /// Removes event subscriptions when an element is removed from a menu,
+ /// Removes event subscriptions when an element is removed from a menu,
///
public void OnRemoveElement(ContextMenuPopup menu, Control control)
{
diff --git a/Content.Client/ContextMenu/UI/EntityMenuElement.cs b/Content.Client/ContextMenu/UI/EntityMenuElement.cs
index ba96a9522a..00ce165a06 100644
--- a/Content.Client/ContextMenu/UI/EntityMenuElement.cs
+++ b/Content.Client/ContextMenu/UI/EntityMenuElement.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Maths;
namespace Content.Client.ContextMenu.UI
{
- public partial class EntityMenuElement : ContextMenuElement
+ public sealed partial class EntityMenuElement : ContextMenuElement
{
public const string StyleClassEntityMenuCountText = "contextMenuCount";
diff --git a/Content.Client/Conveyor/Visualizers/ConveyorVisualizer.cs b/Content.Client/Conveyor/Visualizers/ConveyorVisualizer.cs
index 5a40c18de5..1c9e66989f 100644
--- a/Content.Client/Conveyor/Visualizers/ConveyorVisualizer.cs
+++ b/Content.Client/Conveyor/Visualizers/ConveyorVisualizer.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Conveyor.Visualizers
{
[UsedImplicitly]
- public class ConveyorVisualizer : AppearanceVisualizer
+ public sealed class ConveyorVisualizer : AppearanceVisualizer
{
[DataField("state_running")]
private string? _stateRunning;
diff --git a/Content.Client/Conveyor/Visualizers/TwoWayLeverVisualizer.cs b/Content.Client/Conveyor/Visualizers/TwoWayLeverVisualizer.cs
index 6608578501..15f617fbfd 100644
--- a/Content.Client/Conveyor/Visualizers/TwoWayLeverVisualizer.cs
+++ b/Content.Client/Conveyor/Visualizers/TwoWayLeverVisualizer.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Client.Conveyor.Visualizers
{
[UsedImplicitly]
- public class TwoWayLeverVisualizer : AppearanceVisualizer
+ public sealed class TwoWayLeverVisualizer : AppearanceVisualizer
{
[DataField("state_forward")]
private string? _stateForward;
diff --git a/Content.Client/Cooldown/CooldownGraphic.cs b/Content.Client/Cooldown/CooldownGraphic.cs
index 44a89a826e..5e916f0a74 100644
--- a/Content.Client/Cooldown/CooldownGraphic.cs
+++ b/Content.Client/Cooldown/CooldownGraphic.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Cooldown
{
- public class CooldownGraphic : Control
+ public sealed class CooldownGraphic : Control
{
[Dependency] private readonly IPrototypeManager _protoMan = default!;
diff --git a/Content.Client/Crayon/UI/CrayonBoundUserInterface.cs b/Content.Client/Crayon/UI/CrayonBoundUserInterface.cs
index 24d7f5c73d..bd69d867a4 100644
--- a/Content.Client/Crayon/UI/CrayonBoundUserInterface.cs
+++ b/Content.Client/Crayon/UI/CrayonBoundUserInterface.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Prototypes;
namespace Content.Client.Crayon.UI
{
- public class CrayonBoundUserInterface : BoundUserInterface
+ public sealed class CrayonBoundUserInterface : BoundUserInterface
{
public CrayonBoundUserInterface(ClientUserInterfaceComponent owner, object uiKey) : base(owner, uiKey)
{
diff --git a/Content.Client/Crayon/UI/CrayonWindow.xaml.cs b/Content.Client/Crayon/UI/CrayonWindow.xaml.cs
index f92f58951b..0fac212c08 100644
--- a/Content.Client/Crayon/UI/CrayonWindow.xaml.cs
+++ b/Content.Client/Crayon/UI/CrayonWindow.xaml.cs
@@ -15,7 +15,7 @@ using static Robust.Client.UserInterface.Controls.BaseButton;
namespace Content.Client.Crayon.UI
{
[GenerateTypedNameReferences]
- public partial class CrayonWindow : DefaultWindow
+ public sealed partial class CrayonWindow : DefaultWindow
{
public CrayonBoundUserInterface Owner { get; }
diff --git a/Content.Client/Cuffs/Components/CuffableComponent.cs b/Content.Client/Cuffs/Components/CuffableComponent.cs
index 3fa3866241..86012e33c4 100644
--- a/Content.Client/Cuffs/Components/CuffableComponent.cs
+++ b/Content.Client/Cuffs/Components/CuffableComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Cuffs.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedCuffableComponent))]
- public class CuffableComponent : SharedCuffableComponent
+ public sealed class CuffableComponent : SharedCuffableComponent
{
[ViewVariables]
private string? _currentRSI;
diff --git a/Content.Client/Cuffs/Components/HandcuffComponent.cs b/Content.Client/Cuffs/Components/HandcuffComponent.cs
index a5351aa864..b5d5267965 100644
--- a/Content.Client/Cuffs/Components/HandcuffComponent.cs
+++ b/Content.Client/Cuffs/Components/HandcuffComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Client.Cuffs.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedHandcuffComponent))]
- public class HandcuffComponent : SharedHandcuffComponent
+ public sealed class HandcuffComponent : SharedHandcuffComponent
{
public override void HandleComponentState(ComponentState? curState, ComponentState? nextState)
{
diff --git a/Content.Client/Damage/DamageVisualizer.cs b/Content.Client/Damage/DamageVisualizer.cs
index 489d63875f..a04e83a183 100644
--- a/Content.Client/Damage/DamageVisualizer.cs
+++ b/Content.Client/Damage/DamageVisualizer.cs
@@ -35,7 +35,7 @@ namespace Content.Client.Damage
/// of the sprite layer, and then passing in a bool value
/// (true to enable, false to disable).
///
- public class DamageVisualizer : AppearanceVisualizer
+ public sealed class DamageVisualizer : AppearanceVisualizer
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IEntityManager _entityManager = default!;
@@ -161,7 +161,7 @@ namespace Content.Client.Damage
// deals with the edge case of human damage visuals not
// being in color without making a Dict
/// The RSI path for the damage visualizer
diff --git a/Content.Client/Damage/DamageVisualizerComponent.cs b/Content.Client/Damage/DamageVisualizerComponent.cs
index 6230ecb571..cd4b401251 100644
--- a/Content.Client/Damage/DamageVisualizerComponent.cs
+++ b/Content.Client/Damage/DamageVisualizerComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Client.Damage
// store it in the entity itself as a separate,
// dynamically added component.
[RegisterComponent]
- public class DamageVisualizerDataComponent : Component
+ public sealed class DamageVisualizerDataComponent : Component
{
public List
///
[RegisterComponent]
- public class ExplosiveComponent : Component
+ public sealed class ExplosiveComponent : Component
{
[DataField("devastationRange")]
public int DevastationRange;
diff --git a/Content.Server/Explosion/Components/OnUseTimerTriggerComponent.cs b/Content.Server/Explosion/Components/OnUseTimerTriggerComponent.cs
index 47912dfdb4..fdc928e91d 100644
--- a/Content.Server/Explosion/Components/OnUseTimerTriggerComponent.cs
+++ b/Content.Server/Explosion/Components/OnUseTimerTriggerComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Explosion.Components
{
[RegisterComponent]
- public class OnUseTimerTriggerComponent : Component
+ public sealed class OnUseTimerTriggerComponent : Component
{
[DataField("delay")] public float Delay = 0f;
}
diff --git a/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs b/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
index 87463675ee..eaae0cd036 100644
--- a/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
+++ b/Content.Server/Explosion/Components/TriggerOnCollideComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Explosion.Components
{
[RegisterComponent]
- public class TriggerOnCollideComponent : Component
+ public sealed class TriggerOnCollideComponent : Component
{
}
}
diff --git a/Content.Server/Explosion/EntitySystems/ExplosionSystem.cs b/Content.Server/Explosion/EntitySystems/ExplosionSystem.cs
index 096d3a6e02..a37725516c 100644
--- a/Content.Server/Explosion/EntitySystems/ExplosionSystem.cs
+++ b/Content.Server/Explosion/EntitySystems/ExplosionSystem.cs
@@ -25,7 +25,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Explosion.EntitySystems
{
- public class ExplosionSystem : EntitySystem
+ public sealed class ExplosionSystem : EntitySystem
{
///
/// Distance used for camera shake when distance from explosion is (0.0, 0.0).
diff --git a/Content.Server/Extinguisher/FireExtinguisherComponent.cs b/Content.Server/Extinguisher/FireExtinguisherComponent.cs
index 4422e1ed52..449f56d334 100644
--- a/Content.Server/Extinguisher/FireExtinguisherComponent.cs
+++ b/Content.Server/Extinguisher/FireExtinguisherComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Extinguisher;
[RegisterComponent]
[Friend(typeof(FireExtinguisherSystem))]
-public class FireExtinguisherComponent : Component
+public sealed class FireExtinguisherComponent : Component
{
[DataField("refillSound")] public SoundSpecifier RefillSound = new SoundPathSpecifier("/Audio/Effects/refill.ogg");
diff --git a/Content.Server/Extinguisher/FireExtinguisherSystem.cs b/Content.Server/Extinguisher/FireExtinguisherSystem.cs
index f3c463daad..a40df29234 100644
--- a/Content.Server/Extinguisher/FireExtinguisherSystem.cs
+++ b/Content.Server/Extinguisher/FireExtinguisherSystem.cs
@@ -17,7 +17,7 @@ using Robust.Shared.Player;
namespace Content.Server.Extinguisher;
-public class FireExtinguisherSystem : EntitySystem
+public sealed class FireExtinguisherSystem : EntitySystem
{
[Dependency] private readonly SolutionContainerSystem _solutionContainerSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
diff --git a/Content.Server/Flash/Components/FlashComponent.cs b/Content.Server/Flash/Components/FlashComponent.cs
index a4e73b3ed9..bd076e84ee 100644
--- a/Content.Server/Flash/Components/FlashComponent.cs
+++ b/Content.Server/Flash/Components/FlashComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Flash.Components
{
[RegisterComponent, Friend(typeof(FlashSystem))]
- public class FlashComponent : Component
+ public sealed class FlashComponent : Component
{
[DataField("duration")]
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Flash/Components/FlashImmunityComponent.cs b/Content.Server/Flash/Components/FlashImmunityComponent.cs
index 9ab80f3a50..e4f1afa7cb 100644
--- a/Content.Server/Flash/Components/FlashImmunityComponent.cs
+++ b/Content.Server/Flash/Components/FlashImmunityComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Flash.Components
{
[RegisterComponent, Friend(typeof(FlashSystem))]
- public class FlashImmunityComponent : Component
+ public sealed class FlashImmunityComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("enabled")]
diff --git a/Content.Server/Flash/FlashSystem.cs b/Content.Server/Flash/FlashSystem.cs
index 63af4e152c..53bf9c0c77 100644
--- a/Content.Server/Flash/FlashSystem.cs
+++ b/Content.Server/Flash/FlashSystem.cs
@@ -198,7 +198,7 @@ namespace Content.Server.Flash
}
}
- public class FlashAttemptEvent : CancellableEntityEventArgs
+ public sealed class FlashAttemptEvent : CancellableEntityEventArgs
{
public readonly EntityUid Target;
public readonly EntityUid? User;
diff --git a/Content.Server/Fluids/Components/BucketComponent.cs b/Content.Server/Fluids/Components/BucketComponent.cs
index 3337349c6c..72979e46de 100644
--- a/Content.Server/Fluids/Components/BucketComponent.cs
+++ b/Content.Server/Fluids/Components/BucketComponent.cs
@@ -22,7 +22,7 @@ namespace Content.Server.Fluids.Components
/// Can a mop click on this entity and dump its fluids
///
[RegisterComponent]
- public class BucketComponent : Component, IInteractUsing
+ public sealed class BucketComponent : Component, IInteractUsing
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Fluids/Components/MopComponent.cs b/Content.Server/Fluids/Components/MopComponent.cs
index d601aa60ac..cce1e87219 100644
--- a/Content.Server/Fluids/Components/MopComponent.cs
+++ b/Content.Server/Fluids/Components/MopComponent.cs
@@ -22,12 +22,12 @@ namespace Content.Server.Fluids.Components
/// For cleaning up puddles
///
[RegisterComponent]
- public class MopComponent : Component, IAfterInteract
+ public sealed class MopComponent : Component, IAfterInteract
{
[Dependency] private readonly IEntityManager _entities = default!;
public const string SolutionName = "mop";
-
+
///
/// Used to prevent do_after spam if we're currently mopping.
///
@@ -169,7 +169,7 @@ namespace Content.Server.Fluids.Components
// Transfers solution from the puddle to the mop
solutionSystem.TryAddSolution(Owner, contents, solutionSystem.SplitSolution(target, puddleSolution, transferAmount));
-
+
SoundSystem.Play(Filter.Pvs(Owner), _pickupSound.GetSound(), Owner);
// if the mop became full after that puddle, let the player know.
diff --git a/Content.Server/Fluids/Components/SpillableComponent.cs b/Content.Server/Fluids/Components/SpillableComponent.cs
index 311c8e5816..34d59a0a83 100644
--- a/Content.Server/Fluids/Components/SpillableComponent.cs
+++ b/Content.Server/Fluids/Components/SpillableComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Fluids.Components;
[RegisterComponent]
-public class SpillableComponent : Component
+public sealed class SpillableComponent : Component
{
[DataField("solution")]
public string SolutionName = "puddle";
diff --git a/Content.Server/Fluids/EntitySystems/SpraySystem.cs b/Content.Server/Fluids/EntitySystems/SpraySystem.cs
index da74c9b200..98e1d81056 100644
--- a/Content.Server/Fluids/EntitySystems/SpraySystem.cs
+++ b/Content.Server/Fluids/EntitySystems/SpraySystem.cs
@@ -125,7 +125,7 @@ public sealed class SpraySystem : EntitySystem
}
}
-public class SprayAttemptEvent : CancellableEntityEventArgs
+public sealed class SprayAttemptEvent : CancellableEntityEventArgs
{
public EntityUid User;
diff --git a/Content.Server/GameTicking/Commands/DelayStartCommand.cs b/Content.Server/GameTicking/Commands/DelayStartCommand.cs
index b679f2eb7f..206ece995f 100644
--- a/Content.Server/GameTicking/Commands/DelayStartCommand.cs
+++ b/Content.Server/GameTicking/Commands/DelayStartCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class DelayStartCommand : IConsoleCommand
+ sealed class DelayStartCommand : IConsoleCommand
{
public string Command => "delaystart";
public string Description => "Delays the round start.";
diff --git a/Content.Server/GameTicking/Commands/EndRoundCommand.cs b/Content.Server/GameTicking/Commands/EndRoundCommand.cs
index fa66c8e44a..b4dbb94b4c 100644
--- a/Content.Server/GameTicking/Commands/EndRoundCommand.cs
+++ b/Content.Server/GameTicking/Commands/EndRoundCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class EndRoundCommand : IConsoleCommand
+ sealed class EndRoundCommand : IConsoleCommand
{
public string Command => "endround";
public string Description => "Ends the round and moves the server to PostRound.";
diff --git a/Content.Server/GameTicking/Commands/ForceMapCommand.cs b/Content.Server/GameTicking/Commands/ForceMapCommand.cs
index e3f94a257b..33b414eb5c 100644
--- a/Content.Server/GameTicking/Commands/ForceMapCommand.cs
+++ b/Content.Server/GameTicking/Commands/ForceMapCommand.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Localization;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class ForceMapCommand : IConsoleCommand
+ sealed class ForceMapCommand : IConsoleCommand
{
public string Command => "forcemap";
public string Description => "forcemap-command-description";
diff --git a/Content.Server/GameTicking/Commands/ForcePresetCommand.cs b/Content.Server/GameTicking/Commands/ForcePresetCommand.cs
index 8c17235781..23da792921 100644
--- a/Content.Server/GameTicking/Commands/ForcePresetCommand.cs
+++ b/Content.Server/GameTicking/Commands/ForcePresetCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class ForcePresetCommand : IConsoleCommand
+ sealed class ForcePresetCommand : IConsoleCommand
{
public string Command => "forcepreset";
public string Description => "Forces a specific game preset to start for the current lobby.";
diff --git a/Content.Server/GameTicking/Commands/GoLobbyCommand.cs b/Content.Server/GameTicking/Commands/GoLobbyCommand.cs
index adaaff11e1..80d8cea620 100644
--- a/Content.Server/GameTicking/Commands/GoLobbyCommand.cs
+++ b/Content.Server/GameTicking/Commands/GoLobbyCommand.cs
@@ -12,7 +12,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- public class GoLobbyCommand : IConsoleCommand
+ public sealed class GoLobbyCommand : IConsoleCommand
{
public string Command => "golobby";
public string Description => "Enables the lobby and restarts the round.";
diff --git a/Content.Server/GameTicking/Commands/JoinGameCommand.cs b/Content.Server/GameTicking/Commands/JoinGameCommand.cs
index 4e24403b8b..0fcc87a433 100644
--- a/Content.Server/GameTicking/Commands/JoinGameCommand.cs
+++ b/Content.Server/GameTicking/Commands/JoinGameCommand.cs
@@ -15,7 +15,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.GameTicking.Commands
{
[AnyCommand]
- class JoinGameCommand : IConsoleCommand
+ sealed class JoinGameCommand : IConsoleCommand
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Server/GameTicking/Commands/MappingCommand.cs b/Content.Server/GameTicking/Commands/MappingCommand.cs
index 1c3a5d6444..d284b6dfa5 100644
--- a/Content.Server/GameTicking/Commands/MappingCommand.cs
+++ b/Content.Server/GameTicking/Commands/MappingCommand.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Utility;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Server | AdminFlags.Mapping)]
- class MappingCommand : IConsoleCommand
+ sealed class MappingCommand : IConsoleCommand
{
[Dependency] private readonly IEntityManager _entities = default!;
diff --git a/Content.Server/GameTicking/Commands/ObserveCommand.cs b/Content.Server/GameTicking/Commands/ObserveCommand.cs
index 7220de1d79..ec5b74a7a4 100644
--- a/Content.Server/GameTicking/Commands/ObserveCommand.cs
+++ b/Content.Server/GameTicking/Commands/ObserveCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AnyCommand]
- class ObserveCommand : IConsoleCommand
+ sealed class ObserveCommand : IConsoleCommand
{
public string Command => "observe";
public string Description => "";
diff --git a/Content.Server/GameTicking/Commands/RespawnCommand.cs b/Content.Server/GameTicking/Commands/RespawnCommand.cs
index c8d828f6a0..8941e041f2 100644
--- a/Content.Server/GameTicking/Commands/RespawnCommand.cs
+++ b/Content.Server/GameTicking/Commands/RespawnCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Network;
namespace Content.Server.GameTicking.Commands
{
- class RespawnCommand : IConsoleCommand
+ sealed class RespawnCommand : IConsoleCommand
{
public string Command => "respawn";
public string Description => "Respawns a player, kicking them back to the lobby.";
diff --git a/Content.Server/GameTicking/Commands/RestartRoundCommand.cs b/Content.Server/GameTicking/Commands/RestartRoundCommand.cs
index 4341c0ed07..eedfa83c39 100644
--- a/Content.Server/GameTicking/Commands/RestartRoundCommand.cs
+++ b/Content.Server/GameTicking/Commands/RestartRoundCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- public class RestartRoundCommand : IConsoleCommand
+ public sealed class RestartRoundCommand : IConsoleCommand
{
public string Command => "restartround";
public string Description => "Ends the current round and starts the countdown for the next lobby.";
@@ -29,7 +29,7 @@ namespace Content.Server.GameTicking.Commands
}
[AdminCommand(AdminFlags.Round)]
- public class RestartRoundNowCommand : IConsoleCommand
+ public sealed class RestartRoundNowCommand : IConsoleCommand
{
public string Command => "restartroundnow";
public string Description => "Moves the server from PostRound to a new PreRoundLobby.";
diff --git a/Content.Server/GameTicking/Commands/SetGamePresetCommand.cs b/Content.Server/GameTicking/Commands/SetGamePresetCommand.cs
index 3c9c15e7f0..0c84102846 100644
--- a/Content.Server/GameTicking/Commands/SetGamePresetCommand.cs
+++ b/Content.Server/GameTicking/Commands/SetGamePresetCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class SetGamePresetCommand : IConsoleCommand
+ sealed class SetGamePresetCommand : IConsoleCommand
{
public string Command => "setgamepreset";
public string Description => "";
diff --git a/Content.Server/GameTicking/Commands/StartRoundCommand.cs b/Content.Server/GameTicking/Commands/StartRoundCommand.cs
index 7e436608e7..8b5de7b3ed 100644
--- a/Content.Server/GameTicking/Commands/StartRoundCommand.cs
+++ b/Content.Server/GameTicking/Commands/StartRoundCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class StartRoundCommand : IConsoleCommand
+ sealed class StartRoundCommand : IConsoleCommand
{
public string Command => "startround";
public string Description => "Ends PreRoundLobby state and starts the round.";
diff --git a/Content.Server/GameTicking/Commands/ToggleDisallowLateJoinCommand.cs b/Content.Server/GameTicking/Commands/ToggleDisallowLateJoinCommand.cs
index 2695fa6a8a..fa918152ec 100644
--- a/Content.Server/GameTicking/Commands/ToggleDisallowLateJoinCommand.cs
+++ b/Content.Server/GameTicking/Commands/ToggleDisallowLateJoinCommand.cs
@@ -9,7 +9,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AdminCommand(AdminFlags.Round)]
- class ToggleDisallowLateJoinCommand : IConsoleCommand
+ sealed class ToggleDisallowLateJoinCommand : IConsoleCommand
{
public string Command => "toggledisallowlatejoin";
public string Description => "Allows or disallows latejoining during mid-game.";
diff --git a/Content.Server/GameTicking/Commands/ToggleReadyCommand.cs b/Content.Server/GameTicking/Commands/ToggleReadyCommand.cs
index 8084b55465..caa6216328 100644
--- a/Content.Server/GameTicking/Commands/ToggleReadyCommand.cs
+++ b/Content.Server/GameTicking/Commands/ToggleReadyCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Commands
{
[AnyCommand]
- class ToggleReadyCommand : IConsoleCommand
+ sealed class ToggleReadyCommand : IConsoleCommand
{
public string Command => "toggleready";
public string Description => "";
diff --git a/Content.Server/GameTicking/Events/RoundStartingEvent.cs b/Content.Server/GameTicking/Events/RoundStartingEvent.cs
index 4edf1371a3..c56c0bb1d9 100644
--- a/Content.Server/GameTicking/Events/RoundStartingEvent.cs
+++ b/Content.Server/GameTicking/Events/RoundStartingEvent.cs
@@ -5,6 +5,6 @@ namespace Content.Server.GameTicking.Events;
///
/// Raised at the start of , after round id has been incremented
///
-public class RoundStartingEvent : EntityEventArgs
+public sealed class RoundStartingEvent : EntityEventArgs
{
}
diff --git a/Content.Server/GameTicking/GameTicker.CVars.cs b/Content.Server/GameTicking/GameTicker.CVars.cs
index 94e081cfe5..5c86dc53bd 100644
--- a/Content.Server/GameTicking/GameTicker.CVars.cs
+++ b/Content.Server/GameTicking/GameTicker.CVars.cs
@@ -4,7 +4,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
[ViewVariables]
public bool LobbyEnabled { get; private set; } = false;
diff --git a/Content.Server/GameTicking/GameTicker.GamePreset.cs b/Content.Server/GameTicking/GameTicker.GamePreset.cs
index 5ad06d1c4b..4087f9afb5 100644
--- a/Content.Server/GameTicking/GameTicker.GamePreset.cs
+++ b/Content.Server/GameTicking/GameTicker.GamePreset.cs
@@ -12,7 +12,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
public const float PresetFailedCooldownIncrease = 30f;
@@ -168,7 +168,7 @@ namespace Content.Server.GameTicking
}
}
- public class GhostAttemptHandleEvent : HandledEntityEventArgs
+ public sealed class GhostAttemptHandleEvent : HandledEntityEventArgs
{
public Mind.Mind Mind { get; }
public bool CanReturnGlobal { get; }
diff --git a/Content.Server/GameTicking/GameTicker.GameRule.cs b/Content.Server/GameTicking/GameTicker.GameRule.cs
index 993a84b5d4..84ceac547d 100644
--- a/Content.Server/GameTicking/GameTicker.GameRule.cs
+++ b/Content.Server/GameTicking/GameTicker.GameRule.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
// No duplicates.
[ViewVariables] private readonly HashSet _addedGameRules = new();
diff --git a/Content.Server/GameTicking/GameTicker.JobController.cs b/Content.Server/GameTicking/GameTicker.JobController.cs
index 025e13c455..45e5c95070 100644
--- a/Content.Server/GameTicking/GameTicker.JobController.cs
+++ b/Content.Server/GameTicking/GameTicker.JobController.cs
@@ -17,7 +17,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
// This code is responsible for the assigning & picking of jobs.
- public partial class GameTicker
+ public sealed partial class GameTicker
{
[ViewVariables]
private readonly List _manifest = new();
diff --git a/Content.Server/GameTicking/GameTicker.Lobby.cs b/Content.Server/GameTicking/GameTicker.Lobby.cs
index d1344c4c9c..6b1af86b3e 100644
--- a/Content.Server/GameTicking/GameTicker.Lobby.cs
+++ b/Content.Server/GameTicking/GameTicker.Lobby.cs
@@ -11,7 +11,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
[ViewVariables]
private readonly Dictionary _playersInLobby = new();
diff --git a/Content.Server/GameTicking/GameTicker.LobbyMusic.cs b/Content.Server/GameTicking/GameTicker.LobbyMusic.cs
index f9f5be9d8d..5e8f0f09b6 100644
--- a/Content.Server/GameTicking/GameTicker.LobbyMusic.cs
+++ b/Content.Server/GameTicking/GameTicker.LobbyMusic.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
private const string LobbyMusicCollection = "LobbyMusic";
diff --git a/Content.Server/GameTicking/GameTicker.Player.cs b/Content.Server/GameTicking/GameTicker.Player.cs
index 3fcfcb2648..caba79931f 100644
--- a/Content.Server/GameTicking/GameTicker.Player.cs
+++ b/Content.Server/GameTicking/GameTicker.Player.cs
@@ -17,7 +17,7 @@ using Robust.Shared.Utility;
namespace Content.Server.GameTicking
{
[UsedImplicitly]
- public partial class GameTicker
+ public sealed partial class GameTicker
{
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Server/GameTicking/GameTicker.RoundFlow.cs b/Content.Server/GameTicking/GameTicker.RoundFlow.cs
index fcd27ce8bf..ccd0f1c25c 100644
--- a/Content.Server/GameTicking/GameTicker.RoundFlow.cs
+++ b/Content.Server/GameTicking/GameTicker.RoundFlow.cs
@@ -29,7 +29,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
private static readonly Counter RoundNumberMetric = Metrics.CreateCounter(
"ss14_round_number",
@@ -572,7 +572,7 @@ namespace Content.Server.GameTicking
PostRound = 2
}
- public class GameRunLevelChangedEvent
+ public sealed class GameRunLevelChangedEvent
{
public GameRunLevel Old { get; }
public GameRunLevel New { get; }
@@ -589,7 +589,7 @@ namespace Content.Server.GameTicking
/// Contains a list of game map prototypes to load; modify it if you want to load different maps,
/// for example as part of a game rule.
///
- public class LoadingMapsEvent : EntityEventArgs
+ public sealed class LoadingMapsEvent : EntityEventArgs
{
public List Maps;
@@ -603,7 +603,7 @@ namespace Content.Server.GameTicking
/// Event raised to refresh the late join status.
/// If you want to disallow late joins, listen to this and call Disallow.
///
- public class RefreshLateJoinAllowedEvent
+ public sealed class RefreshLateJoinAllowedEvent
{
public bool DisallowLateJoin { get; private set; } = false;
@@ -617,7 +617,7 @@ namespace Content.Server.GameTicking
/// Attempt event raised on round start.
/// This can be listened to by GameRule systems to cancel round start if some condition is not met, like player count.
///
- public class RoundStartAttemptEvent : CancellableEntityEventArgs
+ public sealed class RoundStartAttemptEvent : CancellableEntityEventArgs
{
public IPlayerSession[] Players { get; }
public bool Forced { get; }
@@ -634,7 +634,7 @@ namespace Content.Server.GameTicking
/// You can use this to spawn people off-station, like in the case of nuke ops or wizard.
/// Remove the players you spawned from the PlayerPool and call on them.
///
- public class RulePlayerSpawningEvent
+ public sealed class RulePlayerSpawningEvent
{
///
/// Pool of players to be spawned.
@@ -657,7 +657,7 @@ namespace Content.Server.GameTicking
/// Event raised after players were assigned jobs by the GameTicker.
/// You can give on-station people special roles by listening to this event.
///
- public class RulePlayerJobsAssignedEvent
+ public sealed class RulePlayerJobsAssignedEvent
{
public IPlayerSession[] Players { get; }
public IReadOnlyDictionary Profiles { get; }
@@ -674,7 +674,7 @@ namespace Content.Server.GameTicking
///
/// Event raised to allow subscribers to add text to the round end summary screen.
///
- public class RoundEndTextAppendEvent
+ public sealed class RoundEndTextAppendEvent
{
private bool _doNewLine;
diff --git a/Content.Server/GameTicking/GameTicker.Spawning.cs b/Content.Server/GameTicking/GameTicker.Spawning.cs
index 449b99dd56..3100c67b71 100644
--- a/Content.Server/GameTicking/GameTicker.Spawning.cs
+++ b/Content.Server/GameTicking/GameTicker.Spawning.cs
@@ -32,7 +32,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
private const string ObserverPrototypeName = "MobObserver";
@@ -366,7 +366,7 @@ namespace Content.Server.GameTicking
/// You can use this event to spawn a player off-station on late-join but also at round start.
/// When this event is handled, the GameTicker will not perform its own player-spawning logic.
///
- public class PlayerBeforeSpawnEvent : HandledEntityEventArgs
+ public sealed class PlayerBeforeSpawnEvent : HandledEntityEventArgs
{
public IPlayerSession Player { get; }
public HumanoidCharacterProfile Profile { get; }
@@ -389,7 +389,7 @@ namespace Content.Server.GameTicking
/// You can use this to handle people late-joining, or to handle people being spawned at round start.
/// Can be used to give random players a role, modify their equipment, etc.
///
- public class PlayerSpawnCompleteEvent : EntityEventArgs
+ public sealed class PlayerSpawnCompleteEvent : EntityEventArgs
{
public EntityUid Mob { get; }
public IPlayerSession Player { get; }
diff --git a/Content.Server/GameTicking/GameTicker.StatusShell.cs b/Content.Server/GameTicking/GameTicker.StatusShell.cs
index 48fffcbcc0..9f5270eaf0 100644
--- a/Content.Server/GameTicking/GameTicker.StatusShell.cs
+++ b/Content.Server/GameTicking/GameTicker.StatusShell.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
///
/// Used for thread safety, given is called from another thread.
diff --git a/Content.Server/GameTicking/GameTicker.Updates.cs b/Content.Server/GameTicking/GameTicker.Updates.cs
index 2c67e686a1..22f0dda3f5 100644
--- a/Content.Server/GameTicking/GameTicker.Updates.cs
+++ b/Content.Server/GameTicking/GameTicker.Updates.cs
@@ -8,7 +8,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.GameTicking
{
- public partial class GameTicker
+ public sealed partial class GameTicker
{
private static readonly TimeSpan UpdateRestartDelay = TimeSpan.FromSeconds(20);
diff --git a/Content.Server/GameTicking/GameTicker.cs b/Content.Server/GameTicking/GameTicker.cs
index 5e254d1c7b..08d9221bbf 100644
--- a/Content.Server/GameTicking/GameTicker.cs
+++ b/Content.Server/GameTicking/GameTicker.cs
@@ -27,7 +27,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.GameTicking
{
- public partial class GameTicker : SharedGameTicker
+ public sealed partial class GameTicker : SharedGameTicker
{
[ViewVariables] private bool _initialized;
[ViewVariables] private bool _postInitialized;
diff --git a/Content.Server/GameTicking/Presets/GamePresetPrototype.cs b/Content.Server/GameTicking/Presets/GamePresetPrototype.cs
index f511535780..f1fa1a1919 100644
--- a/Content.Server/GameTicking/Presets/GamePresetPrototype.cs
+++ b/Content.Server/GameTicking/Presets/GamePresetPrototype.cs
@@ -11,7 +11,7 @@ namespace Content.Server.GameTicking.Presets
/// A round-start setup preset, such as which antagonists to spawn.
///
[Prototype("gamePreset")]
- public class GamePresetPrototype : IPrototype
+ public sealed class GamePresetPrototype : IPrototype
{
[DataField("id", required:true)]
public string ID { get; } = default!;
diff --git a/Content.Server/GameTicking/Rules/GameRulePrototype.cs b/Content.Server/GameTicking/Rules/GameRulePrototype.cs
index 57edcbe5dc..7d6de84836 100644
--- a/Content.Server/GameTicking/Rules/GameRulePrototype.cs
+++ b/Content.Server/GameTicking/Rules/GameRulePrototype.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.GameTicking.Rules;
[Prototype("gameRule")]
-public class GameRulePrototype : IPrototype
+public sealed class GameRulePrototype : IPrototype
{
[DataField("id", required:true)]
public string ID { get; } = default!;
diff --git a/Content.Server/GameTicking/Rules/InactivityTimeRestartRuleSystem.cs b/Content.Server/GameTicking/Rules/InactivityTimeRestartRuleSystem.cs
index 2859847417..56fa714b0b 100644
--- a/Content.Server/GameTicking/Rules/InactivityTimeRestartRuleSystem.cs
+++ b/Content.Server/GameTicking/Rules/InactivityTimeRestartRuleSystem.cs
@@ -9,7 +9,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.GameTicking.Rules;
-public class InactivityTimeRestartRuleSystem : GameRuleSystem
+public sealed class InactivityTimeRestartRuleSystem : GameRuleSystem
{
[Dependency] private readonly IChatManager _chatManager = default!;
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Server/GameTicking/Rules/SandboxRuleSystem.cs b/Content.Server/GameTicking/Rules/SandboxRuleSystem.cs
index 0863fc1b61..64aa8a9773 100644
--- a/Content.Server/GameTicking/Rules/SandboxRuleSystem.cs
+++ b/Content.Server/GameTicking/Rules/SandboxRuleSystem.cs
@@ -3,7 +3,7 @@ using Robust.Shared.IoC;
namespace Content.Server.GameTicking.Rules;
-public class SandboxRuleSystem : GameRuleSystem
+public sealed class SandboxRuleSystem : GameRuleSystem
{
[Dependency] private readonly ISandboxManager _sandbox = default!;
diff --git a/Content.Server/GameTicking/Rules/TraitorDeathMatchRuleSystem.cs b/Content.Server/GameTicking/Rules/TraitorDeathMatchRuleSystem.cs
index 86ac08df94..e1c36968c5 100644
--- a/Content.Server/GameTicking/Rules/TraitorDeathMatchRuleSystem.cs
+++ b/Content.Server/GameTicking/Rules/TraitorDeathMatchRuleSystem.cs
@@ -32,7 +32,7 @@ using Robust.Shared.Random;
namespace Content.Server.GameTicking.Rules;
-public class TraitorDeathMatchRuleSystem : GameRuleSystem
+public sealed class TraitorDeathMatchRuleSystem : GameRuleSystem
{
[Dependency] private readonly IConfigurationManager _cfg = default!;
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs
index 30b185fa63..442abdcde0 100644
--- a/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs
+++ b/Content.Server/GameTicking/Rules/TraitorRuleSystem.cs
@@ -27,7 +27,7 @@ using Robust.Shared.Utility;
namespace Content.Server.GameTicking.Rules;
-public class TraitorRuleSystem : GameRuleSystem
+public sealed class TraitorRuleSystem : GameRuleSystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IRobustRandom _random = default!;
@@ -41,7 +41,7 @@ public class TraitorRuleSystem : GameRuleSystem
private readonly List _traitors = new ();
private const string TraitorPrototypeID = "Traitor";
-
+
public int TotalTraitors => _traitors.Count;
public override void Initialize()
@@ -188,7 +188,7 @@ public class TraitorRuleSystem : GameRuleSystem
if (traitor.Mind.TryAddObjective(objective))
difficulty += objective.Difficulty;
}
-
+
//give traitors their codewords to keep in their character info menu
traitor.Mind.Briefing = Loc.GetString("traitor-role-codewords", ("codewords", string.Join(", ",codewords)));
}
diff --git a/Content.Server/Ghost/Components/GhostOnMoveComponent.cs b/Content.Server/Ghost/Components/GhostOnMoveComponent.cs
index 4852ee5b66..f76da835f3 100644
--- a/Content.Server/Ghost/Components/GhostOnMoveComponent.cs
+++ b/Content.Server/Ghost/Components/GhostOnMoveComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Ghost.Components
{
[RegisterComponent]
- public class GhostOnMoveComponent : Component
+ public sealed class GhostOnMoveComponent : Component
{
[DataField("canReturn")] public bool CanReturn { get; set; } = true;
diff --git a/Content.Server/Ghost/Components/GhostRadioComponent.cs b/Content.Server/Ghost/Components/GhostRadioComponent.cs
index 8fa7d8fb57..65b3cdd1c6 100644
--- a/Content.Server/Ghost/Components/GhostRadioComponent.cs
+++ b/Content.Server/Ghost/Components/GhostRadioComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Ghost.Components
{
[RegisterComponent]
[ComponentReference(typeof(IRadio))]
- public class GhostRadioComponent : Component, IRadio
+ public sealed class GhostRadioComponent : Component, IRadio
{
[Dependency] private readonly IServerNetManager _netManager = default!;
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Ghost/Ghost.cs b/Content.Server/Ghost/Ghost.cs
index 65a591cd7d..ddcfd18a8c 100644
--- a/Content.Server/Ghost/Ghost.cs
+++ b/Content.Server/Ghost/Ghost.cs
@@ -10,7 +10,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Ghost
{
[AnyCommand]
- public class Ghost : IConsoleCommand
+ public sealed class Ghost : IConsoleCommand
{
public string Command => "ghost";
public string Description => "Give up on life and become a ghost.";
diff --git a/Content.Server/Ghost/GhostBooEvent.cs b/Content.Server/Ghost/GhostBooEvent.cs
index 17ee1e7803..a7927268d9 100644
--- a/Content.Server/Ghost/GhostBooEvent.cs
+++ b/Content.Server/Ghost/GhostBooEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Ghost
{
- public class GhostBooEvent : HandledEntityEventArgs
+ public sealed class GhostBooEvent : HandledEntityEventArgs
{
}
diff --git a/Content.Server/Ghost/GhostSystem.cs b/Content.Server/Ghost/GhostSystem.cs
index 78d59aa0b6..4ba3ebc8c0 100644
--- a/Content.Server/Ghost/GhostSystem.cs
+++ b/Content.Server/Ghost/GhostSystem.cs
@@ -23,7 +23,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Ghost
{
[UsedImplicitly]
- public class GhostSystem : SharedGhostSystem
+ public sealed class GhostSystem : SharedGhostSystem
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly IPlayerManager _playerManager = default!;
diff --git a/Content.Server/Ghost/ObserverRole.cs b/Content.Server/Ghost/ObserverRole.cs
index eb57069f84..39069eabb1 100644
--- a/Content.Server/Ghost/ObserverRole.cs
+++ b/Content.Server/Ghost/ObserverRole.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Ghost
///
/// This is used to mark Observers properly, as they get Minds
///
- public class ObserverRole : Role
+ public sealed class ObserverRole : Role
{
public override string Name => Loc.GetString("observer-role-name");
public override bool Antagonist => false;
diff --git a/Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs b/Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs
index eaeda0f8a7..6d046173e4 100644
--- a/Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs
+++ b/Content.Server/Ghost/Roles/Components/GhostRoleMobSpawnerComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Ghost.Roles.Components
/// Allows a ghost to take this role, spawning a new entity.
///
[RegisterComponent, ComponentReference(typeof(GhostRoleComponent))]
- public class GhostRoleMobSpawnerComponent : GhostRoleComponent
+ public sealed class GhostRoleMobSpawnerComponent : GhostRoleComponent
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Ghost/Roles/Components/GhostTakeoverAvailableComponent.cs b/Content.Server/Ghost/Roles/Components/GhostTakeoverAvailableComponent.cs
index 87ee07c368..2234cf6483 100644
--- a/Content.Server/Ghost/Roles/Components/GhostTakeoverAvailableComponent.cs
+++ b/Content.Server/Ghost/Roles/Components/GhostTakeoverAvailableComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Ghost.Roles.Components
/// Allows a ghost to take over the Owner entity.
///
[RegisterComponent, ComponentReference(typeof(GhostRoleComponent))]
- public class GhostTakeoverAvailableComponent : GhostRoleComponent
+ public sealed class GhostTakeoverAvailableComponent : GhostRoleComponent
{
public override bool Take(IPlayerSession session)
{
diff --git a/Content.Server/Ghost/Roles/GhostRoleMarkerRole.cs b/Content.Server/Ghost/Roles/GhostRoleMarkerRole.cs
index e9a87f0a8f..23cf5b5dbb 100644
--- a/Content.Server/Ghost/Roles/GhostRoleMarkerRole.cs
+++ b/Content.Server/Ghost/Roles/GhostRoleMarkerRole.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Ghost.Roles
/// This is used for round end display of ghost roles.
/// It may also be used to ensure some ghost roles count as antagonists in future.
///
- public class GhostRoleMarkerRole : Role
+ public sealed class GhostRoleMarkerRole : Role
{
private readonly string _name;
public override string Name => _name;
diff --git a/Content.Server/Ghost/Roles/GhostRoleSystem.cs b/Content.Server/Ghost/Roles/GhostRoleSystem.cs
index 35100e807b..c68b5a1d54 100644
--- a/Content.Server/Ghost/Roles/GhostRoleSystem.cs
+++ b/Content.Server/Ghost/Roles/GhostRoleSystem.cs
@@ -27,7 +27,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Ghost.Roles
{
[UsedImplicitly]
- public class GhostRoleSystem : EntitySystem
+ public sealed class GhostRoleSystem : EntitySystem
{
[Dependency] private readonly EuiManager _euiManager = default!;
[Dependency] private readonly IPlayerManager _playerManager = default!;
@@ -259,7 +259,7 @@ namespace Content.Server.Ghost.Roles
}
[AnyCommand]
- public class GhostRoles : IConsoleCommand
+ public sealed class GhostRoles : IConsoleCommand
{
public string Command => "ghostroles";
public string Description => "Opens the ghost role request window.";
diff --git a/Content.Server/Ghost/Roles/MakeGhostRoleCommand.cs b/Content.Server/Ghost/Roles/MakeGhostRoleCommand.cs
index 4c5d405c74..238c3701b0 100644
--- a/Content.Server/Ghost/Roles/MakeGhostRoleCommand.cs
+++ b/Content.Server/Ghost/Roles/MakeGhostRoleCommand.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Ghost.Roles
{
[AdminCommand(AdminFlags.Fun)]
- public class MakeGhostRoleCommand : IConsoleCommand
+ public sealed class MakeGhostRoleCommand : IConsoleCommand
{
public string Command => "makeghostrole";
public string Description => "Turns an entity into a ghost role.";
diff --git a/Content.Server/Ghost/Roles/UI/GhostRolesEui.cs b/Content.Server/Ghost/Roles/UI/GhostRolesEui.cs
index d5cc2bb594..f872f1cbb0 100644
--- a/Content.Server/Ghost/Roles/UI/GhostRolesEui.cs
+++ b/Content.Server/Ghost/Roles/UI/GhostRolesEui.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Ghost.Roles.UI
{
- public class GhostRolesEui : BaseEui
+ public sealed class GhostRolesEui : BaseEui
{
public override GhostRolesEuiState GetNewState()
{
diff --git a/Content.Server/Ghost/Roles/UI/MakeGhostRoleEui.cs b/Content.Server/Ghost/Roles/UI/MakeGhostRoleEui.cs
index ff2dca964e..48392cca36 100644
--- a/Content.Server/Ghost/Roles/UI/MakeGhostRoleEui.cs
+++ b/Content.Server/Ghost/Roles/UI/MakeGhostRoleEui.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Ghost.Roles.UI
{
- public class MakeGhostRoleEui : BaseEui
+ public sealed class MakeGhostRoleEui : BaseEui
{
public MakeGhostRoleEui(EntityUid entityUid)
{
diff --git a/Content.Server/Gravity/EntitySystems/WeightlessSystem.cs b/Content.Server/Gravity/EntitySystems/WeightlessSystem.cs
index 2fcbe2508f..7d89c54e4e 100644
--- a/Content.Server/Gravity/EntitySystems/WeightlessSystem.cs
+++ b/Content.Server/Gravity/EntitySystems/WeightlessSystem.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Utility;
namespace Content.Server.Gravity.EntitySystems
{
[UsedImplicitly]
- public class WeightlessSystem : EntitySystem
+ public sealed class WeightlessSystem : EntitySystem
{
[Dependency] private readonly IMapManager _mapManager = default!;
[Dependency] private readonly AlertsSystem _alertsSystem = default!;
diff --git a/Content.Server/Guardian/CanHostGuardianComponent.cs b/Content.Server/Guardian/CanHostGuardianComponent.cs
index 06e06a34b6..d7d77c2057 100644
--- a/Content.Server/Guardian/CanHostGuardianComponent.cs
+++ b/Content.Server/Guardian/CanHostGuardianComponent.cs
@@ -3,6 +3,6 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Guardian;
[RegisterComponent]
-public class CanHostGuardianComponent : Component
+public sealed class CanHostGuardianComponent : Component
{
}
diff --git a/Content.Server/Guardian/GuardianComponent.cs b/Content.Server/Guardian/GuardianComponent.cs
index be8fc5b889..dd75f6b25c 100644
--- a/Content.Server/Guardian/GuardianComponent.cs
+++ b/Content.Server/Guardian/GuardianComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Guardian
/// Given to guardians to monitor their link with the host
///
[RegisterComponent]
- public class GuardianComponent : Component
+ public sealed class GuardianComponent : Component
{
///
/// The guardian host entity
diff --git a/Content.Server/GuideGenerator/ChemistryJsonGenerator.cs b/Content.Server/GuideGenerator/ChemistryJsonGenerator.cs
index 6eabade395..e43f718521 100644
--- a/Content.Server/GuideGenerator/ChemistryJsonGenerator.cs
+++ b/Content.Server/GuideGenerator/ChemistryJsonGenerator.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.GuideGenerator;
-public class ChemistryJsonGenerator
+public sealed class ChemistryJsonGenerator
{
public static void PublishJson(StreamWriter file)
{
@@ -53,7 +53,7 @@ public class ChemistryJsonGenerator
file.Write(JsonSerializer.Serialize(prototypes, serializeOptions));
}
- public class FixedPointJsonConverter : JsonConverter
+ public sealed class FixedPointJsonConverter : JsonConverter
{
public override void Write(Utf8JsonWriter writer, FixedPoint2 value, JsonSerializerOptions options)
{
diff --git a/Content.Server/GuideGenerator/ReactionJsonGenerator.cs b/Content.Server/GuideGenerator/ReactionJsonGenerator.cs
index 58c2de143d..14d1001415 100644
--- a/Content.Server/GuideGenerator/ReactionJsonGenerator.cs
+++ b/Content.Server/GuideGenerator/ReactionJsonGenerator.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.GuideGenerator;
-public class ReactionJsonGenerator
+public sealed class ReactionJsonGenerator
{
public static void PublishJson(StreamWriter file)
{
diff --git a/Content.Server/GuideGenerator/ReagentEntry.cs b/Content.Server/GuideGenerator/ReagentEntry.cs
index d5179f74ef..cebb243d9b 100644
--- a/Content.Server/GuideGenerator/ReagentEntry.cs
+++ b/Content.Server/GuideGenerator/ReagentEntry.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.GuideGenerator;
-public class ReagentEntry
+public sealed class ReagentEntry
{
[JsonPropertyName("id")]
public string Id { get; }
@@ -47,7 +47,7 @@ public class ReagentEntry
}
}
-public class ReactionEntry
+public sealed class ReactionEntry
{
[JsonPropertyName("id")]
public string Id { get; }
@@ -80,7 +80,7 @@ public class ReactionEntry
}
}
-public class ReactantEntry
+public sealed class ReactantEntry
{
[JsonPropertyName("amount")]
public float Amount { get; }
diff --git a/Content.Server/GuideGenerator/UniversalJsonConverter.cs b/Content.Server/GuideGenerator/UniversalJsonConverter.cs
index 6de4608e4b..0e7f229cea 100644
--- a/Content.Server/GuideGenerator/UniversalJsonConverter.cs
+++ b/Content.Server/GuideGenerator/UniversalJsonConverter.cs
@@ -10,7 +10,7 @@ namespace Content.Server.GuideGenerator
// (serializing objects that inherit abstract base classes or interfaces) since
// System.Text.Json (our new JSON solution) doesn't support that while Newtonsoft.Json (our old
// solution) does.
- public class UniversalJsonConverter : JsonConverter
+ public sealed class UniversalJsonConverter : JsonConverter
{
// This converter can only convert types that are T or descend from T.
diff --git a/Content.Server/Hands/Components/HandsComponent.cs b/Content.Server/Hands/Components/HandsComponent.cs
index 0a7f45d544..99c1f2ccb9 100644
--- a/Content.Server/Hands/Components/HandsComponent.cs
+++ b/Content.Server/Hands/Components/HandsComponent.cs
@@ -24,7 +24,7 @@ namespace Content.Server.Hands.Components
[RegisterComponent]
[ComponentReference(typeof(SharedHandsComponent))]
#pragma warning disable 618
- public class HandsComponent : SharedHandsComponent, IBodyPartAdded, IBodyPartRemoved, IDisarmedAct
+ public sealed class HandsComponent : SharedHandsComponent, IBodyPartAdded, IBodyPartRemoved, IDisarmedAct
#pragma warning restore 618
{
[Dependency] private readonly IEntitySystemManager _entitySystemManager = default!;
diff --git a/Content.Server/Headset/HeadsetComponent.cs b/Content.Server/Headset/HeadsetComponent.cs
index fffcb915b0..2dc6f29bf7 100644
--- a/Content.Server/Headset/HeadsetComponent.cs
+++ b/Content.Server/Headset/HeadsetComponent.cs
@@ -19,7 +19,7 @@ namespace Content.Server.Headset
[ComponentReference(typeof(IRadio))]
[ComponentReference(typeof(IListen))]
#pragma warning disable 618
- public class HeadsetComponent : Component, IListen, IRadio, IExamine
+ public sealed class HeadsetComponent : Component, IListen, IRadio, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Holiday/Celebrate/DefaultHolidayCelebrate.cs b/Content.Server/Holiday/Celebrate/DefaultHolidayCelebrate.cs
index 6e5f274629..6c807e9544 100644
--- a/Content.Server/Holiday/Celebrate/DefaultHolidayCelebrate.cs
+++ b/Content.Server/Holiday/Celebrate/DefaultHolidayCelebrate.cs
@@ -2,7 +2,7 @@ using Content.Server.Holiday.Interfaces;
namespace Content.Server.Holiday.Celebrate
{
- public class DefaultHolidayCelebrate : IHolidayCelebrate
+ public sealed class DefaultHolidayCelebrate : IHolidayCelebrate
{
public void Celebrate(HolidayPrototype holiday)
{
diff --git a/Content.Server/Holiday/Greet/Custom.cs b/Content.Server/Holiday/Greet/Custom.cs
index 2013ea8d7f..f11647bea6 100644
--- a/Content.Server/Holiday/Greet/Custom.cs
+++ b/Content.Server/Holiday/Greet/Custom.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Holiday.Greet
{
[UsedImplicitly]
[DataDefinition]
- public class Custom : IHolidayGreet
+ public sealed class Custom : IHolidayGreet
{
[DataField("text")] private string _greet = string.Empty;
diff --git a/Content.Server/Holiday/Greet/DefaultHolidayGreet.cs b/Content.Server/Holiday/Greet/DefaultHolidayGreet.cs
index 7f45216d60..f799e5a6d1 100644
--- a/Content.Server/Holiday/Greet/DefaultHolidayGreet.cs
+++ b/Content.Server/Holiday/Greet/DefaultHolidayGreet.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Holiday.Greet
{
- public class DefaultHolidayGreet : IHolidayGreet
+ public sealed class DefaultHolidayGreet : IHolidayGreet
{
public string Greet(HolidayPrototype holiday) => Loc.GetString("holiday-greet", ("holidayName", holiday.Name));
}
diff --git a/Content.Server/Holiday/HolidayPrototype.cs b/Content.Server/Holiday/HolidayPrototype.cs
index fa11bb9492..bd7b30cb42 100644
--- a/Content.Server/Holiday/HolidayPrototype.cs
+++ b/Content.Server/Holiday/HolidayPrototype.cs
@@ -10,7 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Holiday
{
[Prototype("holiday")]
- public class HolidayPrototype : IPrototype
+ public sealed class HolidayPrototype : IPrototype
{
[ViewVariables] [DataField("name")] public string Name { get; private set; } = string.Empty;
diff --git a/Content.Server/Holiday/HolidaySystem.cs b/Content.Server/Holiday/HolidaySystem.cs
index 3d14aaa3e5..30142e3fd2 100644
--- a/Content.Server/Holiday/HolidaySystem.cs
+++ b/Content.Server/Holiday/HolidaySystem.cs
@@ -12,7 +12,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Holiday
{
- public class HolidaySystem : EntitySystem
+ public sealed class HolidaySystem : EntitySystem
{
[Dependency] private readonly IConfigurationManager _configManager = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
@@ -112,7 +112,7 @@ namespace Content.Server.Holiday
///
/// Event for when the list of currently active holidays has been refreshed.
///
- public class HolidaysRefreshedEvent : EntityEventArgs
+ public sealed class HolidaysRefreshedEvent : EntityEventArgs
{
public readonly IEnumerable Holidays;
diff --git a/Content.Server/Holiday/ShouldCelebrate/ChineseNewYear.cs b/Content.Server/Holiday/ShouldCelebrate/ChineseNewYear.cs
index 6e26b7846b..f71df8b82e 100644
--- a/Content.Server/Holiday/ShouldCelebrate/ChineseNewYear.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/ChineseNewYear.cs
@@ -4,7 +4,7 @@ using Content.Server.Holiday.Interfaces;
namespace Content.Server.Holiday.ShouldCelebrate
{
- public class ChineseNewYear : IHolidayShouldCelebrate
+ public sealed class ChineseNewYear : IHolidayShouldCelebrate
{
public bool ShouldCelebrate(DateTime date, HolidayPrototype holiday)
{
diff --git a/Content.Server/Holiday/ShouldCelebrate/Computus.cs b/Content.Server/Holiday/ShouldCelebrate/Computus.cs
index 311807aae9..bb3febe6c0 100644
--- a/Content.Server/Holiday/ShouldCelebrate/Computus.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/Computus.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Holiday.ShouldCelebrate
///
[UsedImplicitly]
[DataDefinition]
- public class Computus : DefaultHolidayShouldCelebrate
+ public sealed class Computus : DefaultHolidayShouldCelebrate
{
[DataField("daysEarly")]
private byte _daysEarly = 1;
diff --git a/Content.Server/Holiday/ShouldCelebrate/DayOfYear.cs b/Content.Server/Holiday/ShouldCelebrate/DayOfYear.cs
index c62c56fb1d..d6612b6aab 100644
--- a/Content.Server/Holiday/ShouldCelebrate/DayOfYear.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/DayOfYear.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Holiday.ShouldCelebrate
///
[UsedImplicitly]
[DataDefinition]
- public class DayOfYear : IHolidayShouldCelebrate
+ public sealed class DayOfYear : IHolidayShouldCelebrate
{
[DataField("dayOfYear")]
private uint _dayOfYear = 1;
diff --git a/Content.Server/Holiday/ShouldCelebrate/DefaultHolidayShouldCelebrate.cs b/Content.Server/Holiday/ShouldCelebrate/DefaultHolidayShouldCelebrate.cs
index 9f5c574b92..2cd8ef2160 100644
--- a/Content.Server/Holiday/ShouldCelebrate/DefaultHolidayShouldCelebrate.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/DefaultHolidayShouldCelebrate.cs
@@ -4,6 +4,7 @@ using Content.Server.Holiday.Interfaces;
namespace Content.Server.Holiday.ShouldCelebrate
{
+ [Virtual]
public class DefaultHolidayShouldCelebrate : IHolidayShouldCelebrate
{
public virtual bool ShouldCelebrate(DateTime date, HolidayPrototype holiday)
diff --git a/Content.Server/Holiday/ShouldCelebrate/FridayThirteenth.cs b/Content.Server/Holiday/ShouldCelebrate/FridayThirteenth.cs
index 2cc7bda7d4..9fbfcc656b 100644
--- a/Content.Server/Holiday/ShouldCelebrate/FridayThirteenth.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/FridayThirteenth.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Holiday.ShouldCelebrate
/// For Friday the 13th. Spooky!
///
[UsedImplicitly]
- public class FridayThirteenth : IHolidayShouldCelebrate
+ public sealed class FridayThirteenth : IHolidayShouldCelebrate
{
public bool ShouldCelebrate(DateTime date, HolidayPrototype holiday)
{
diff --git a/Content.Server/Holiday/ShouldCelebrate/WeekdayInMonth.cs b/Content.Server/Holiday/ShouldCelebrate/WeekdayInMonth.cs
index 425e0ed2ed..92614adf10 100644
--- a/Content.Server/Holiday/ShouldCelebrate/WeekdayInMonth.cs
+++ b/Content.Server/Holiday/ShouldCelebrate/WeekdayInMonth.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Holiday.ShouldCelebrate
/// For a holiday that happens the first instance of a weekday on a month.
///
[UsedImplicitly]
- public class WeekdayInMonth : DefaultHolidayShouldCelebrate
+ public sealed class WeekdayInMonth : DefaultHolidayShouldCelebrate
{
[DataField("weekday")] private DayOfWeek _weekday = DayOfWeek.Monday;
diff --git a/Content.Server/Info/RulesManager.cs b/Content.Server/Info/RulesManager.cs
index 975cb1a108..8b46b13a45 100644
--- a/Content.Server/Info/RulesManager.cs
+++ b/Content.Server/Info/RulesManager.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Network;
namespace Content.Server.Info;
-public class RulesManager : SharedRulesManager
+public sealed class RulesManager : SharedRulesManager
{
[Dependency] private readonly INetManager _netManager = default!;
diff --git a/Content.Server/Info/ShowRulesCommand.cs b/Content.Server/Info/ShowRulesCommand.cs
index 101f1dd99c..5d33f5118e 100644
--- a/Content.Server/Info/ShowRulesCommand.cs
+++ b/Content.Server/Info/ShowRulesCommand.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Network;
namespace Content.Server.Info;
[AdminCommand(AdminFlags.Admin)]
-public class ShowRulesCommand : IConsoleCommand
+public sealed class ShowRulesCommand : IConsoleCommand
{
public string Command => "showrules";
public string Description => "Opens the rules popup for the specified player.";
diff --git a/Content.Server/Instruments/InstrumentSystem.CVars.cs b/Content.Server/Instruments/InstrumentSystem.CVars.cs
index 9ffa8bb851..0467d94f2b 100644
--- a/Content.Server/Instruments/InstrumentSystem.CVars.cs
+++ b/Content.Server/Instruments/InstrumentSystem.CVars.cs
@@ -2,7 +2,7 @@ using Content.Shared.CCVar;
namespace Content.Server.Instruments;
-public partial class InstrumentSystem
+public sealed partial class InstrumentSystem
{
public int MaxMidiEventsPerSecond { get; private set; }
public int MaxMidiEventsPerBatch { get; private set; }
diff --git a/Content.Server/Interaction/Components/ClumsyComponent.cs b/Content.Server/Interaction/Components/ClumsyComponent.cs
index 33f9e82e72..f64f74e9f3 100644
--- a/Content.Server/Interaction/Components/ClumsyComponent.cs
+++ b/Content.Server/Interaction/Components/ClumsyComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Interaction.Components
/// A simple clumsy tag-component.
///
[RegisterComponent]
- public class ClumsyComponent : Component
+ public sealed class ClumsyComponent : Component
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Interaction/Components/EmitSoundOnUseComponent.cs b/Content.Server/Interaction/Components/EmitSoundOnUseComponent.cs
index e94c829150..d39f5e4e85 100644
--- a/Content.Server/Interaction/Components/EmitSoundOnUseComponent.cs
+++ b/Content.Server/Interaction/Components/EmitSoundOnUseComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Interaction.Components
/// Simple sound emitter that emits sound on UseInHand
///
[RegisterComponent]
- public class EmitSoundOnUseComponent : BaseEmitSoundComponent
+ public sealed class EmitSoundOnUseComponent : BaseEmitSoundComponent
{
}
}
diff --git a/Content.Server/Interaction/TilePryCommand.cs b/Content.Server/Interaction/TilePryCommand.cs
index fd5845b669..be2d7a1335 100644
--- a/Content.Server/Interaction/TilePryCommand.cs
+++ b/Content.Server/Interaction/TilePryCommand.cs
@@ -14,7 +14,7 @@ namespace Content.Server.Interaction
///
///
[AdminCommand(AdminFlags.Debug)]
- class TilePryCommand : IConsoleCommand
+ sealed class TilePryCommand : IConsoleCommand
{
[Dependency] private readonly IEntityManager _entities = default!;
diff --git a/Content.Server/Inventory/ServerInventoryComponent.cs b/Content.Server/Inventory/ServerInventoryComponent.cs
index 25a68ab064..14fffde52b 100644
--- a/Content.Server/Inventory/ServerInventoryComponent.cs
+++ b/Content.Server/Inventory/ServerInventoryComponent.cs
@@ -5,4 +5,4 @@ namespace Content.Server.Inventory;
[RegisterComponent]
[ComponentReference(typeof(InventoryComponent))]
-public class ServerInventoryComponent : InventoryComponent { }
+public sealed class ServerInventoryComponent : InventoryComponent { }
diff --git a/Content.Server/Jittering/JitteringSystem.cs b/Content.Server/Jittering/JitteringSystem.cs
index 5e1ac722b4..34f6cc9d39 100644
--- a/Content.Server/Jittering/JitteringSystem.cs
+++ b/Content.Server/Jittering/JitteringSystem.cs
@@ -2,7 +2,7 @@ using Content.Shared.Jittering;
namespace Content.Server.Jittering
{
- public class JitteringSystem : SharedJitteringSystem
+ public sealed class JitteringSystem : SharedJitteringSystem
{
// This entity system only exists on the server so it will be registered, otherwise we can't use SharedJitteringSystem...
}
diff --git a/Content.Server/Jobs/GiveItemOnHolidaySpecial.cs b/Content.Server/Jobs/GiveItemOnHolidaySpecial.cs
index bfd8c9bf6b..76c250ce0b 100644
--- a/Content.Server/Jobs/GiveItemOnHolidaySpecial.cs
+++ b/Content.Server/Jobs/GiveItemOnHolidaySpecial.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Jobs
{
[UsedImplicitly]
[DataDefinition]
- public class GiveItemOnHolidaySpecial : JobSpecial
+ public sealed class GiveItemOnHolidaySpecial : JobSpecial
{
[DataField("holiday", customTypeSerializer:typeof(PrototypeIdSerializer))]
public string Holiday { get; } = string.Empty;
diff --git a/Content.Server/Kitchen/Components/ExtractableComponent.cs b/Content.Server/Kitchen/Components/ExtractableComponent.cs
index 9c46bbc173..0a1d55ac1e 100644
--- a/Content.Server/Kitchen/Components/ExtractableComponent.cs
+++ b/Content.Server/Kitchen/Components/ExtractableComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Kitchen.Components
///
[RegisterComponent]
[Friend(typeof(ReagentGrinderSystem))]
- public class ExtractableComponent : Component
+ public sealed class ExtractableComponent : Component
{
[ViewVariables]
[DataField("juiceSolution")]
diff --git a/Content.Server/Kitchen/Components/KitchenSpikeComponent.cs b/Content.Server/Kitchen/Components/KitchenSpikeComponent.cs
index 66467dab1a..7e0d13fd60 100644
--- a/Content.Server/Kitchen/Components/KitchenSpikeComponent.cs
+++ b/Content.Server/Kitchen/Components/KitchenSpikeComponent.cs
@@ -13,12 +13,12 @@ using System.Threading;
namespace Content.Server.Kitchen.Components
{
[RegisterComponent, Friend(typeof(KitchenSpikeSystem))]
- public class KitchenSpikeComponent : SharedKitchenSpikeComponent, ISuicideAct
+ public sealed class KitchenSpikeComponent : SharedKitchenSpikeComponent, ISuicideAct
{
public int MeatParts;
public string? MeatPrototype;
- // TODO: Spiking alive mobs? (Replace with uid) (deal damage to their limbs on spiking, kill on first butcher attempt?)
+ // TODO: Spiking alive mobs? (Replace with uid) (deal damage to their limbs on spiking, kill on first butcher attempt?)
public string MeatSource1p = "?";
public string MeatSource0 = "?";
public string MeatName = "?";
diff --git a/Content.Server/Kitchen/Components/MicrowaveComponent.cs b/Content.Server/Kitchen/Components/MicrowaveComponent.cs
index 1c681e11a3..1086110dc3 100644
--- a/Content.Server/Kitchen/Components/MicrowaveComponent.cs
+++ b/Content.Server/Kitchen/Components/MicrowaveComponent.cs
@@ -31,7 +31,7 @@ namespace Content.Server.Kitchen.Components
{
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
- public class MicrowaveComponent : SharedMicrowaveComponent, IActivate, IInteractUsing, ISuicideAct, IBreakAct
+ public sealed class MicrowaveComponent : SharedMicrowaveComponent, IActivate, IInteractUsing, ISuicideAct, IBreakAct
{
[Dependency] private readonly IEntityManager _entities = default!;
@@ -550,7 +550,7 @@ namespace Content.Server.Kitchen.Components
}
}
- public class BeingMicrowavedEvent : HandledEntityEventArgs
+ public sealed class BeingMicrowavedEvent : HandledEntityEventArgs
{
public EntityUid Microwave;
diff --git a/Content.Server/Kitchen/Components/ReagentGrinderComponent.cs b/Content.Server/Kitchen/Components/ReagentGrinderComponent.cs
index 2511ccf781..98a8c0c91e 100644
--- a/Content.Server/Kitchen/Components/ReagentGrinderComponent.cs
+++ b/Content.Server/Kitchen/Components/ReagentGrinderComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Kitchen.Components
/// it contained, juice an apple and get "apple juice".
///
[RegisterComponent]
- public class ReagentGrinderComponent : SharedReagentGrinderComponent
+ public sealed class ReagentGrinderComponent : SharedReagentGrinderComponent
{
[ViewVariables] public ContainerSlot BeakerContainer = default!;
diff --git a/Content.Server/Kitchen/EntitySystems/KitchenSpikeSystem.cs b/Content.Server/Kitchen/EntitySystems/KitchenSpikeSystem.cs
index 7f11412cbb..d408dc460a 100644
--- a/Content.Server/Kitchen/EntitySystems/KitchenSpikeSystem.cs
+++ b/Content.Server/Kitchen/EntitySystems/KitchenSpikeSystem.cs
@@ -16,7 +16,7 @@ using static Content.Shared.Kitchen.Components.SharedKitchenSpikeComponent;
namespace Content.Server.Kitchen.EntitySystems
{
- internal class KitchenSpikeSystem : EntitySystem
+ internal sealed class KitchenSpikeSystem : EntitySystem
{
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly DoAfterSystem _doAfter = default!;
@@ -81,7 +81,7 @@ namespace Content.Server.Kitchen.EntitySystems
{
if (args.Handled)
return;
-
+
if (TryGetPiece(uid, args.User, args.Used))
args.Handled = true;
}
@@ -148,7 +148,7 @@ namespace Content.Server.Kitchen.EntitySystems
{
if (!Resolve(uid, ref component, ref appearance, false))
return;
-
+
appearance.SetData(KitchenSpikeVisuals.Status, (component.MeatParts > 0) ? KitchenSpikeStatus.Bloody : KitchenSpikeStatus.Empty);
}
@@ -217,7 +217,7 @@ namespace Content.Server.Kitchen.EntitySystems
return true;
}
- private class SpikingFinishedEvent : EntityEventArgs
+ private sealed class SpikingFinishedEvent : EntityEventArgs
{
public EntityUid VictimUid;
public EntityUid UserUid;
@@ -229,7 +229,7 @@ namespace Content.Server.Kitchen.EntitySystems
}
}
- private class SpikingFailEvent : EntityEventArgs
+ private sealed class SpikingFailEvent : EntityEventArgs
{
public EntityUid VictimUid;
diff --git a/Content.Server/Kitchen/Events/ExtractableScalingEvent.cs b/Content.Server/Kitchen/Events/ExtractableScalingEvent.cs
index fdef6c9c2a..7b135431aa 100644
--- a/Content.Server/Kitchen/Events/ExtractableScalingEvent.cs
+++ b/Content.Server/Kitchen/Events/ExtractableScalingEvent.cs
@@ -5,9 +5,9 @@ namespace Content.Server.Kitchen.Events
///
/// Used in scaling amount of solution to extract in juicing
///
- public class ExtractableScalingEvent : EntityEventArgs
+ public sealed class ExtractableScalingEvent : EntityEventArgs
{
-
+
public ExtractableScalingEvent()
{
Scalar = 1f;
diff --git a/Content.Server/Kudzu/GrowingKudzuComponent.cs b/Content.Server/Kudzu/GrowingKudzuComponent.cs
index 4d919826cd..7724acc2f3 100644
--- a/Content.Server/Kudzu/GrowingKudzuComponent.cs
+++ b/Content.Server/Kudzu/GrowingKudzuComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Kudzu;
[RegisterComponent]
-public class GrowingKudzuComponent : Component
+public sealed class GrowingKudzuComponent : Component
{
[DataField("growthLevel")]
public int GrowthLevel = 1;
diff --git a/Content.Server/Kudzu/GrowingKudzuSystem.cs b/Content.Server/Kudzu/GrowingKudzuSystem.cs
index 53b13c8692..319e2b47ef 100644
--- a/Content.Server/Kudzu/GrowingKudzuSystem.cs
+++ b/Content.Server/Kudzu/GrowingKudzuSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Random;
namespace Content.Server.Kudzu;
-public class GrowingKudzuSystem : EntitySystem
+public sealed class GrowingKudzuSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _robustRandom = default!;
diff --git a/Content.Server/Kudzu/SpreaderComponent.cs b/Content.Server/Kudzu/SpreaderComponent.cs
index 6af4079ed6..97f7bf92a4 100644
--- a/Content.Server/Kudzu/SpreaderComponent.cs
+++ b/Content.Server/Kudzu/SpreaderComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Kudzu;
/// Currently does not support growing in space.
///
[RegisterComponent, Friend(typeof(SpreaderSystem))]
-public class SpreaderComponent : Component
+public sealed class SpreaderComponent : Component
{
///
/// Chance for it to grow on any given tick, after the normal growth rate-limit (if it doesn't grow, SpreaderSystem will pick another one.).
diff --git a/Content.Server/Kudzu/SpreaderSystem.cs b/Content.Server/Kudzu/SpreaderSystem.cs
index d3935484ad..e4205b3b57 100644
--- a/Content.Server/Kudzu/SpreaderSystem.cs
+++ b/Content.Server/Kudzu/SpreaderSystem.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Random;
namespace Content.Server.Kudzu;
// Future work includes making the growths per interval thing not global, but instead per "group"
-public class SpreaderSystem : EntitySystem
+public sealed class SpreaderSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _robustRandom = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
diff --git a/Content.Server/Labels/Label/Components/HandLabelerComponent.cs b/Content.Server/Labels/Label/Components/HandLabelerComponent.cs
index d534192f93..3bde313a51 100644
--- a/Content.Server/Labels/Label/Components/HandLabelerComponent.cs
+++ b/Content.Server/Labels/Label/Components/HandLabelerComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Labels.Components
{
[RegisterComponent]
- public class HandLabelerComponent : Component
+ public sealed class HandLabelerComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("assignedLabel")]
diff --git a/Content.Server/Labels/Label/Components/LabelComponent.cs b/Content.Server/Labels/Label/Components/LabelComponent.cs
index 7c6edd43a2..621852b3f5 100644
--- a/Content.Server/Labels/Label/Components/LabelComponent.cs
+++ b/Content.Server/Labels/Label/Components/LabelComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Labels.Components
{
[RegisterComponent]
- public class LabelComponent : Component
+ public sealed class LabelComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("currentLabel")]
diff --git a/Content.Server/Labels/Label/Components/PaperLabelComponent.cs b/Content.Server/Labels/Label/Components/PaperLabelComponent.cs
index d4f980b6f5..e63bb05a98 100644
--- a/Content.Server/Labels/Label/Components/PaperLabelComponent.cs
+++ b/Content.Server/Labels/Label/Components/PaperLabelComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Labels.Components
/// This component allows you to attach and remove a piece of paper to an entity.
///
[RegisterComponent]
- public class PaperLabelComponent : Component
+ public sealed class PaperLabelComponent : Component
{
[DataField("labelSlot")]
public ItemSlot LabelSlot = new();
diff --git a/Content.Server/Labels/Label/HandLabelerSystem.cs b/Content.Server/Labels/Label/HandLabelerSystem.cs
index 4afb84f16e..93c9cbf332 100644
--- a/Content.Server/Labels/Label/HandLabelerSystem.cs
+++ b/Content.Server/Labels/Label/HandLabelerSystem.cs
@@ -18,7 +18,7 @@ namespace Content.Server.Labels
/// A hand labeler system that lets an object apply labels to objects with the .
///
[UsedImplicitly]
- public class HandLabelerSystem : EntitySystem
+ public sealed class HandLabelerSystem : EntitySystem
{
[Dependency] private readonly UserInterfaceSystem _userInterfaceSystem = default!;
diff --git a/Content.Server/Labels/Label/LabelSystem.cs b/Content.Server/Labels/Label/LabelSystem.cs
index bb56ece451..aac0320c7a 100644
--- a/Content.Server/Labels/Label/LabelSystem.cs
+++ b/Content.Server/Labels/Label/LabelSystem.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Labels
/// A system that lets players see the contents of a label on an object.
///
[UsedImplicitly]
- public class LabelSystem : EntitySystem
+ public sealed class LabelSystem : EntitySystem
{
[Dependency] private readonly ItemSlotsSystem _itemSlotsSystem = default!;
diff --git a/Content.Server/Lathe/Components/LatheComponent.cs b/Content.Server/Lathe/Components/LatheComponent.cs
index a1800ce947..06407ddbc8 100644
--- a/Content.Server/Lathe/Components/LatheComponent.cs
+++ b/Content.Server/Lathe/Components/LatheComponent.cs
@@ -21,7 +21,7 @@ namespace Content.Server.Lathe.Components
{
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
- public class LatheComponent : SharedLatheComponent, IInteractUsing, IActivate
+ public sealed class LatheComponent : SharedLatheComponent, IInteractUsing, IActivate
{
[Dependency] private readonly IEntityManager _entMan = default!;
@@ -35,7 +35,7 @@ namespace Content.Server.Lathe.Components
private LatheState _state = LatheState.Base;
- protected virtual LatheState State
+ protected LatheState State
{
get => _state;
set => _state = value;
diff --git a/Content.Server/Lathe/Components/LatheDatabaseComponent.cs b/Content.Server/Lathe/Components/LatheDatabaseComponent.cs
index fe589de577..a4292ef46b 100644
--- a/Content.Server/Lathe/Components/LatheDatabaseComponent.cs
+++ b/Content.Server/Lathe/Components/LatheDatabaseComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Lathe.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedLatheDatabaseComponent))]
- public class LatheDatabaseComponent : SharedLatheDatabaseComponent
+ public sealed class LatheDatabaseComponent : SharedLatheDatabaseComponent
{
///
/// Whether new recipes can be added to this database or not.
diff --git a/Content.Server/Lathe/Components/MaterialStorageComponent.cs b/Content.Server/Lathe/Components/MaterialStorageComponent.cs
index 58d466803b..8aa2167adb 100644
--- a/Content.Server/Lathe/Components/MaterialStorageComponent.cs
+++ b/Content.Server/Lathe/Components/MaterialStorageComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Lathe.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedMaterialStorageComponent))]
- public class MaterialStorageComponent : SharedMaterialStorageComponent
+ public sealed class MaterialStorageComponent : SharedMaterialStorageComponent
{
[ViewVariables]
protected override Dictionary Storage { get; set; } = new();
diff --git a/Content.Server/Lathe/Components/ProtolatheDatabaseComponent.cs b/Content.Server/Lathe/Components/ProtolatheDatabaseComponent.cs
index e20bdad292..a5bd0d2499 100644
--- a/Content.Server/Lathe/Components/ProtolatheDatabaseComponent.cs
+++ b/Content.Server/Lathe/Components/ProtolatheDatabaseComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Lathe.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedLatheDatabaseComponent))]
- public class ProtolatheDatabaseComponent : SharedProtolatheDatabaseComponent
+ public sealed class ProtolatheDatabaseComponent : SharedProtolatheDatabaseComponent
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Server/Light/Components/EmergencyLightComponent.cs b/Content.Server/Light/Components/EmergencyLightComponent.cs
index 23fd78c9eb..1039ccb1e4 100644
--- a/Content.Server/Light/Components/EmergencyLightComponent.cs
+++ b/Content.Server/Light/Components/EmergencyLightComponent.cs
@@ -18,7 +18,7 @@ namespace Content.Server.Light.Components
///
[RegisterComponent]
#pragma warning disable 618
- public class EmergencyLightComponent : SharedEmergencyLightComponent, IExamine
+ public sealed class EmergencyLightComponent : SharedEmergencyLightComponent, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Light/Components/LightBehaviourComponent.cs b/Content.Server/Light/Components/LightBehaviourComponent.cs
index f90edd129b..f9e2d6317e 100644
--- a/Content.Server/Light/Components/LightBehaviourComponent.cs
+++ b/Content.Server/Light/Components/LightBehaviourComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Light.Components
/// A component which applies a specific behaviour to a PointLightComponent on its owner.
///
[RegisterComponent]
- public class LightBehaviourComponent : SharedLightBehaviourComponent
+ public sealed class LightBehaviourComponent : SharedLightBehaviourComponent
{
}
diff --git a/Content.Server/Light/Components/LightBulbComponent.cs b/Content.Server/Light/Components/LightBulbComponent.cs
index c0625134f6..82a7112076 100644
--- a/Content.Server/Light/Components/LightBulbComponent.cs
+++ b/Content.Server/Light/Components/LightBulbComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Light.Components
/// Component that represents a light bulb. Can be broken, or burned, which turns them mostly useless.
///
[RegisterComponent, Friend(typeof(LightBulbSystem))]
- public class LightBulbComponent : Component, IBreakAct
+ public sealed class LightBulbComponent : Component, IBreakAct
{
[DataField("color")]
public Color Color = Color.White;
diff --git a/Content.Server/Light/Components/LightReplacerComponent.cs b/Content.Server/Light/Components/LightReplacerComponent.cs
index 37dc7bde62..eff51f62fc 100644
--- a/Content.Server/Light/Components/LightReplacerComponent.cs
+++ b/Content.Server/Light/Components/LightReplacerComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Light.Components
/// Can be reloaded by new light tubes or light bulbs
///
[RegisterComponent]
- public class LightReplacerComponent : Component
+ public sealed class LightReplacerComponent : Component
{
[DataField("sound")]
public SoundSpecifier Sound = new SoundPathSpecifier("/Audio/Weapons/click.ogg");
@@ -35,7 +35,7 @@ namespace Content.Server.Light.Components
[Serializable]
[DataDefinition]
- public class LightReplacerEntity
+ public sealed class LightReplacerEntity
{
[DataField("name", customTypeSerializer: typeof(PrototypeIdSerializer))]
public string PrototypeName = default!;
diff --git a/Content.Server/Light/Components/LitOnPoweredComponent.cs b/Content.Server/Light/Components/LitOnPoweredComponent.cs
index 5d1b3d4193..54555d4007 100644
--- a/Content.Server/Light/Components/LitOnPoweredComponent.cs
+++ b/Content.Server/Light/Components/LitOnPoweredComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Light.Components
/// state of an entity.
///
[RegisterComponent, Friend(typeof(PoweredLightSystem))]
- public class LitOnPoweredComponent : Component
+ public sealed class LitOnPoweredComponent : Component
{
}
}
diff --git a/Content.Server/Light/Components/MatchboxComponent.cs b/Content.Server/Light/Components/MatchboxComponent.cs
index 07b603b291..7512c1e2ec 100644
--- a/Content.Server/Light/Components/MatchboxComponent.cs
+++ b/Content.Server/Light/Components/MatchboxComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Light.Components
// TODO make changes in icons when different threshold reached
// e.g. different icons for 10% 50% 100%
[RegisterComponent]
- public class MatchboxComponent : Component
+ public sealed class MatchboxComponent : Component
{
}
}
diff --git a/Content.Server/Light/Components/MatchstickComponent.cs b/Content.Server/Light/Components/MatchstickComponent.cs
index 507d505afb..4ae57d9210 100644
--- a/Content.Server/Light/Components/MatchstickComponent.cs
+++ b/Content.Server/Light/Components/MatchstickComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Light.Components
{
[RegisterComponent]
[Friend(typeof(MatchstickSystem))]
- public class MatchstickComponent : Component
+ public sealed class MatchstickComponent : Component
{
///
/// Current state to matchstick. Can be Unlit, Lit or Burnt.
diff --git a/Content.Server/Light/Components/PoweredLightComponent.cs b/Content.Server/Light/Components/PoweredLightComponent.cs
index 35c0010220..9fb6fa71b6 100644
--- a/Content.Server/Light/Components/PoweredLightComponent.cs
+++ b/Content.Server/Light/Components/PoweredLightComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Server.Light.Components
/// Component that represents a wall light. It has a light bulb that can be replaced when broken.
///
[RegisterComponent, Friend(typeof(PoweredLightSystem))]
- public class PoweredLightComponent : Component
+ public sealed class PoweredLightComponent : Component
{
[DataField("burnHandSound")]
public SoundSpecifier BurnHandSound = new SoundPathSpecifier("/Audio/Effects/lightburn.ogg");
diff --git a/Content.Server/Light/Components/UnpoweredFlashlightComponent.cs b/Content.Server/Light/Components/UnpoweredFlashlightComponent.cs
index d627dcaddc..dcfe866498 100644
--- a/Content.Server/Light/Components/UnpoweredFlashlightComponent.cs
+++ b/Content.Server/Light/Components/UnpoweredFlashlightComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Light.Components
/// It doesn't consume any power and can be toggle only by verb.
///
[RegisterComponent]
- public class UnpoweredFlashlightComponent : Component
+ public sealed class UnpoweredFlashlightComponent : Component
{
[DataField("toggleFlashlightSound")]
public SoundSpecifier ToggleSound = new SoundPathSpecifier("/Audio/Items/flashlight_pda.ogg");
diff --git a/Content.Server/Light/EntitySystems/LitOnPoweredSystem.cs b/Content.Server/Light/EntitySystems/LitOnPoweredSystem.cs
index fad5fa9e07..9edd1f182d 100644
--- a/Content.Server/Light/EntitySystems/LitOnPoweredSystem.cs
+++ b/Content.Server/Light/EntitySystems/LitOnPoweredSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Light.EntitySystems
{
- public class LitOnPoweredSystem : EntitySystem
+ public sealed class LitOnPoweredSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Light/EntitySystems/MatchboxSystem.cs b/Content.Server/Light/EntitySystems/MatchboxSystem.cs
index 434c036898..520415645b 100644
--- a/Content.Server/Light/EntitySystems/MatchboxSystem.cs
+++ b/Content.Server/Light/EntitySystems/MatchboxSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Light.EntitySystems
{
- public class MatchboxSystem : EntitySystem
+ public sealed class MatchboxSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Light/EntitySystems/MatchstickSystem.cs b/Content.Server/Light/EntitySystems/MatchstickSystem.cs
index 80ba6e8a6c..d38d9e41ac 100644
--- a/Content.Server/Light/EntitySystems/MatchstickSystem.cs
+++ b/Content.Server/Light/EntitySystems/MatchstickSystem.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Player;
namespace Content.Server.Light.EntitySystems
{
- public class MatchstickSystem : EntitySystem
+ public sealed class MatchstickSystem : EntitySystem
{
private HashSet _litMatches = new();
[Dependency]
diff --git a/Content.Server/Light/EntitySystems/PoweredLightSystem.cs b/Content.Server/Light/EntitySystems/PoweredLightSystem.cs
index 344b0ddb8b..ef93e43537 100644
--- a/Content.Server/Light/EntitySystems/PoweredLightSystem.cs
+++ b/Content.Server/Light/EntitySystems/PoweredLightSystem.cs
@@ -29,7 +29,7 @@ namespace Content.Server.Light.EntitySystems
///
/// System for the PoweredLightComponens
///
- public class PoweredLightSystem : EntitySystem
+ public sealed class PoweredLightSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly DamageableSystem _damageableSystem = default!;
diff --git a/Content.Server/Light/EntitySystems/UnpoweredFlashlightSystem.cs b/Content.Server/Light/EntitySystems/UnpoweredFlashlightSystem.cs
index 74dc3c641f..a8aabcb31a 100644
--- a/Content.Server/Light/EntitySystems/UnpoweredFlashlightSystem.cs
+++ b/Content.Server/Light/EntitySystems/UnpoweredFlashlightSystem.cs
@@ -12,7 +12,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Light.EntitySystems
{
- public class UnpoweredFlashlightSystem : EntitySystem
+ public sealed class UnpoweredFlashlightSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Light/Events/LightToggleEvent.cs b/Content.Server/Light/Events/LightToggleEvent.cs
index d51d89a16a..72a04153d3 100644
--- a/Content.Server/Light/Events/LightToggleEvent.cs
+++ b/Content.Server/Light/Events/LightToggleEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Light.Events
{
- public class LightToggleEvent : EntityEventArgs
+ public sealed class LightToggleEvent : EntityEventArgs
{
public bool IsOn;
diff --git a/Content.Server/Lock/LockComponent.cs b/Content.Server/Lock/LockComponent.cs
index 09c0ede21a..d10ba7bdd5 100644
--- a/Content.Server/Lock/LockComponent.cs
+++ b/Content.Server/Lock/LockComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Storage.Components
/// Allows locking/unlocking, with access determined by AccessReader
///
[RegisterComponent]
- public class LockComponent : Component
+ public sealed class LockComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)] [DataField("locked")] public bool Locked { get; set; } = true;
[ViewVariables(VVAccess.ReadWrite)] [DataField("lockOnClick")] public bool LockOnClick { get; set; } = false;
diff --git a/Content.Server/Lock/LockSystem.cs b/Content.Server/Lock/LockSystem.cs
index c1ecc097ef..c0be85e314 100644
--- a/Content.Server/Lock/LockSystem.cs
+++ b/Content.Server/Lock/LockSystem.cs
@@ -21,7 +21,7 @@ namespace Content.Server.Lock
/// Handles (un)locking and examining of Lock components
///
[UsedImplicitly]
- public class LockSystem : EntitySystem
+ public sealed class LockSystem : EntitySystem
{
[Dependency] private readonly AccessReaderSystem _accessReader = default!;
diff --git a/Content.Server/Lock/LockToggledEvent.cs b/Content.Server/Lock/LockToggledEvent.cs
index 04ae77010b..cedbb1cd78 100644
--- a/Content.Server/Lock/LockToggledEvent.cs
+++ b/Content.Server/Lock/LockToggledEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Lock
{
- public class LockToggledEvent : EntityEventArgs
+ public sealed class LockToggledEvent : EntityEventArgs
{
public readonly bool Locked;
diff --git a/Content.Server/MachineLinking/Components/SignalButtonComponent.cs b/Content.Server/MachineLinking/Components/SignalButtonComponent.cs
index 99d363d6bf..cd2226e2d5 100644
--- a/Content.Server/MachineLinking/Components/SignalButtonComponent.cs
+++ b/Content.Server/MachineLinking/Components/SignalButtonComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class SignalButtonComponent : Component
+ public sealed class SignalButtonComponent : Component
{
}
}
diff --git a/Content.Server/MachineLinking/Components/SignalLinkerComponent.cs b/Content.Server/MachineLinking/Components/SignalLinkerComponent.cs
index fb6ad25fce..3addc0b1b5 100644
--- a/Content.Server/MachineLinking/Components/SignalLinkerComponent.cs
+++ b/Content.Server/MachineLinking/Components/SignalLinkerComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class SignalLinkerComponent : Component
+ public sealed class SignalLinkerComponent : Component
{
[ViewVariables]
public (SignalTransmitterComponent transmitter, string port)? Port;
diff --git a/Content.Server/MachineLinking/Components/SignalReceiverComponent.cs b/Content.Server/MachineLinking/Components/SignalReceiverComponent.cs
index 362b918b20..56c00039d3 100644
--- a/Content.Server/MachineLinking/Components/SignalReceiverComponent.cs
+++ b/Content.Server/MachineLinking/Components/SignalReceiverComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class SignalReceiverComponent : Component
+ public sealed class SignalReceiverComponent : Component
{
[DataField("inputs")]
private List _inputs = new();
diff --git a/Content.Server/MachineLinking/Components/SignalSwitchComponent.cs b/Content.Server/MachineLinking/Components/SignalSwitchComponent.cs
index c0fe44f8db..c8b8aa8286 100644
--- a/Content.Server/MachineLinking/Components/SignalSwitchComponent.cs
+++ b/Content.Server/MachineLinking/Components/SignalSwitchComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class SignalSwitchComponent : Component
+ public sealed class SignalSwitchComponent : Component
{
public bool State;
}
diff --git a/Content.Server/MachineLinking/Components/SignalTransmitterComponent.cs b/Content.Server/MachineLinking/Components/SignalTransmitterComponent.cs
index ba08197013..a3c41c6e27 100644
--- a/Content.Server/MachineLinking/Components/SignalTransmitterComponent.cs
+++ b/Content.Server/MachineLinking/Components/SignalTransmitterComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class SignalTransmitterComponent : Component
+ public sealed class SignalTransmitterComponent : Component
{
[DataField("outputs")]
private List _outputs = new();
diff --git a/Content.Server/MachineLinking/Components/TriggerOnSignalReceivedComponent.cs b/Content.Server/MachineLinking/Components/TriggerOnSignalReceivedComponent.cs
index 54a6b410a7..e5b81732bb 100644
--- a/Content.Server/MachineLinking/Components/TriggerOnSignalReceivedComponent.cs
+++ b/Content.Server/MachineLinking/Components/TriggerOnSignalReceivedComponent.cs
@@ -3,7 +3,7 @@
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class TriggerOnSignalReceivedComponent : Component
+ public sealed class TriggerOnSignalReceivedComponent : Component
{
}
}
diff --git a/Content.Server/MachineLinking/Components/TwoWayLeverComponent.cs b/Content.Server/MachineLinking/Components/TwoWayLeverComponent.cs
index 6ff0aa7a60..fad1e7a08e 100644
--- a/Content.Server/MachineLinking/Components/TwoWayLeverComponent.cs
+++ b/Content.Server/MachineLinking/Components/TwoWayLeverComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Components
{
[RegisterComponent]
- public class TwoWayLeverComponent : Component
+ public sealed class TwoWayLeverComponent : Component
{
public TwoWayLeverSignal State;
diff --git a/Content.Server/MachineLinking/Events/InvokePortEvent.cs b/Content.Server/MachineLinking/Events/InvokePortEvent.cs
index 31601ea9ff..dcd8f18994 100644
--- a/Content.Server/MachineLinking/Events/InvokePortEvent.cs
+++ b/Content.Server/MachineLinking/Events/InvokePortEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Events
{
- public class InvokePortEvent : EntityEventArgs
+ public sealed class InvokePortEvent : EntityEventArgs
{
public readonly string Port;
public readonly object? Value;
diff --git a/Content.Server/MachineLinking/Events/LinkAttemptEvent.cs b/Content.Server/MachineLinking/Events/LinkAttemptEvent.cs
index 593311c613..26d81d9351 100644
--- a/Content.Server/MachineLinking/Events/LinkAttemptEvent.cs
+++ b/Content.Server/MachineLinking/Events/LinkAttemptEvent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Events
{
- public class LinkAttemptEvent : CancellableEntityEventArgs
+ public sealed class LinkAttemptEvent : CancellableEntityEventArgs
{
public readonly EntityUid Attemptee;
public readonly SignalTransmitterComponent TransmitterComponent;
diff --git a/Content.Server/MachineLinking/Events/PortDisconnectedEvent.cs b/Content.Server/MachineLinking/Events/PortDisconnectedEvent.cs
index c9b049d29d..a392d48a3c 100644
--- a/Content.Server/MachineLinking/Events/PortDisconnectedEvent.cs
+++ b/Content.Server/MachineLinking/Events/PortDisconnectedEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Events
{
- public class PortDisconnectedEvent : EntityEventArgs
+ public sealed class PortDisconnectedEvent : EntityEventArgs
{
public readonly string Port;
diff --git a/Content.Server/MachineLinking/Events/SignalReceivedEvent.cs b/Content.Server/MachineLinking/Events/SignalReceivedEvent.cs
index 366db66c38..4984f4af3a 100644
--- a/Content.Server/MachineLinking/Events/SignalReceivedEvent.cs
+++ b/Content.Server/MachineLinking/Events/SignalReceivedEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Events
{
- public class SignalReceivedEvent : EntityEventArgs
+ public sealed class SignalReceivedEvent : EntityEventArgs
{
public readonly string Port;
public readonly object? Value;
diff --git a/Content.Server/MachineLinking/Events/SignalValueRequestedEvent.cs b/Content.Server/MachineLinking/Events/SignalValueRequestedEvent.cs
index 4f84410505..a472735202 100644
--- a/Content.Server/MachineLinking/Events/SignalValueRequestedEvent.cs
+++ b/Content.Server/MachineLinking/Events/SignalValueRequestedEvent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.Events
{
- public class SignalValueRequestedEvent : HandledEntityEventArgs
+ public sealed class SignalValueRequestedEvent : HandledEntityEventArgs
{
public readonly string Port;
public readonly Type Type;
diff --git a/Content.Server/MachineLinking/Exceptions/InvalidPortValueException.cs b/Content.Server/MachineLinking/Exceptions/InvalidPortValueException.cs
index 6e43b38c44..1deb6c952f 100644
--- a/Content.Server/MachineLinking/Exceptions/InvalidPortValueException.cs
+++ b/Content.Server/MachineLinking/Exceptions/InvalidPortValueException.cs
@@ -2,7 +2,7 @@ using System;
namespace Content.Server.MachineLinking.Exceptions
{
- public class InvalidPortValueException : Exception
+ public sealed class InvalidPortValueException : Exception
{
}
diff --git a/Content.Server/MachineLinking/Exceptions/LinkAlreadyRegisteredException.cs b/Content.Server/MachineLinking/Exceptions/LinkAlreadyRegisteredException.cs
index 93398f3940..5fe96dd5e2 100644
--- a/Content.Server/MachineLinking/Exceptions/LinkAlreadyRegisteredException.cs
+++ b/Content.Server/MachineLinking/Exceptions/LinkAlreadyRegisteredException.cs
@@ -2,7 +2,7 @@
namespace Content.Server.MachineLinking.Exceptions
{
- public class LinkAlreadyRegisteredException : Exception
+ public sealed class LinkAlreadyRegisteredException : Exception
{
}
diff --git a/Content.Server/MachineLinking/Exceptions/NoSignalValueProvidedException.cs b/Content.Server/MachineLinking/Exceptions/NoSignalValueProvidedException.cs
index f2989bd1ce..6e4132d6f3 100644
--- a/Content.Server/MachineLinking/Exceptions/NoSignalValueProvidedException.cs
+++ b/Content.Server/MachineLinking/Exceptions/NoSignalValueProvidedException.cs
@@ -2,7 +2,7 @@ using System;
namespace Content.Server.MachineLinking.Exceptions
{
- public class NoSignalValueProvidedException : Exception
+ public sealed class NoSignalValueProvidedException : Exception
{
}
diff --git a/Content.Server/MachineLinking/Exceptions/PortNotFoundException.cs b/Content.Server/MachineLinking/Exceptions/PortNotFoundException.cs
index 18b5279f8f..df7bd8a971 100644
--- a/Content.Server/MachineLinking/Exceptions/PortNotFoundException.cs
+++ b/Content.Server/MachineLinking/Exceptions/PortNotFoundException.cs
@@ -2,7 +2,7 @@ using System;
namespace Content.Server.MachineLinking.Exceptions
{
- public class PortNotFoundException : Exception
+ public sealed class PortNotFoundException : Exception
{
}
diff --git a/Content.Server/MachineLinking/Models/SignalLink.cs b/Content.Server/MachineLinking/Models/SignalLink.cs
index 9b14a3dd96..a683698ff4 100644
--- a/Content.Server/MachineLinking/Models/SignalLink.cs
+++ b/Content.Server/MachineLinking/Models/SignalLink.cs
@@ -2,7 +2,7 @@
namespace Content.Server.MachineLinking.Models
{
- public class SignalLink
+ public sealed class SignalLink
{
public readonly SignalTransmitterComponent TransmitterComponent;
public readonly SignalReceiverComponent ReceiverComponent;
diff --git a/Content.Server/MachineLinking/Models/SignalLinkCollection.cs b/Content.Server/MachineLinking/Models/SignalLinkCollection.cs
index 7afd01d2a2..ab6b011ec8 100644
--- a/Content.Server/MachineLinking/Models/SignalLinkCollection.cs
+++ b/Content.Server/MachineLinking/Models/SignalLinkCollection.cs
@@ -4,7 +4,7 @@ using Content.Server.MachineLinking.Exceptions;
namespace Content.Server.MachineLinking.Models
{
- public class SignalLinkCollection
+ public sealed class SignalLinkCollection
{
private Dictionary> _transmitterDict = new();
private Dictionary> _receiverDict = new();
diff --git a/Content.Server/MachineLinking/Models/SignalPort.cs b/Content.Server/MachineLinking/Models/SignalPort.cs
index 3dd36cceec..8131c9dabd 100644
--- a/Content.Server/MachineLinking/Models/SignalPort.cs
+++ b/Content.Server/MachineLinking/Models/SignalPort.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.MachineLinking.Models
{
[DataDefinition]
- public class SignalPort
+ public sealed class SignalPort
{
[DataField("name", required: true)] public string Name { get; } = default!;
[DataField("type")] public Type? Type { get; }
diff --git a/Content.Server/MachineLinking/System/SignalButtonSystem.cs b/Content.Server/MachineLinking/System/SignalButtonSystem.cs
index 2cddfe569b..062ce77664 100644
--- a/Content.Server/MachineLinking/System/SignalButtonSystem.cs
+++ b/Content.Server/MachineLinking/System/SignalButtonSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.System
{
[UsedImplicitly]
- public class SignalButtonSystem : EntitySystem
+ public sealed class SignalButtonSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/MachineLinking/System/SignalLinkerSystem.cs b/Content.Server/MachineLinking/System/SignalLinkerSystem.cs
index 88b5f09bd2..328c2ac08e 100644
--- a/Content.Server/MachineLinking/System/SignalLinkerSystem.cs
+++ b/Content.Server/MachineLinking/System/SignalLinkerSystem.cs
@@ -18,7 +18,7 @@ using Robust.Shared.Utility;
namespace Content.Server.MachineLinking.System
{
- public class SignalLinkerSystem : EntitySystem
+ public sealed class SignalLinkerSystem : EntitySystem
{
private InteractionSystem _interaction = default!;
diff --git a/Content.Server/MachineLinking/System/SignalSwitchSystem.cs b/Content.Server/MachineLinking/System/SignalSwitchSystem.cs
index 79e75de8a0..11549b9832 100644
--- a/Content.Server/MachineLinking/System/SignalSwitchSystem.cs
+++ b/Content.Server/MachineLinking/System/SignalSwitchSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MachineLinking.System
{
- public class SignalSwitchSystem : EntitySystem
+ public sealed class SignalSwitchSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/MachineLinking/System/TriggerOnSignalReceivedSystem.cs b/Content.Server/MachineLinking/System/TriggerOnSignalReceivedSystem.cs
index de992a855f..034a12606a 100644
--- a/Content.Server/MachineLinking/System/TriggerOnSignalReceivedSystem.cs
+++ b/Content.Server/MachineLinking/System/TriggerOnSignalReceivedSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.MachineLinking.System
{
- public class TriggerOnSignalReceivedSystem : EntitySystem
+ public sealed class TriggerOnSignalReceivedSystem : EntitySystem
{
[Dependency] private readonly TriggerSystem _trigger = default!;
diff --git a/Content.Server/MachineLinking/System/TwoWayLeverSystem.cs b/Content.Server/MachineLinking/System/TwoWayLeverSystem.cs
index 69bb55cf73..a8f71039fa 100644
--- a/Content.Server/MachineLinking/System/TwoWayLeverSystem.cs
+++ b/Content.Server/MachineLinking/System/TwoWayLeverSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.MachineLinking.System
{
- public class TwoWayLeverSystem : EntitySystem
+ public sealed class TwoWayLeverSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Maps/Conditions/HolidayMapCondition.cs b/Content.Server/Maps/Conditions/HolidayMapCondition.cs
index a68057380e..cf59138456 100644
--- a/Content.Server/Maps/Conditions/HolidayMapCondition.cs
+++ b/Content.Server/Maps/Conditions/HolidayMapCondition.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Maps.Conditions;
-public class HolidayMapCondition : GameMapCondition
+public sealed class HolidayMapCondition : GameMapCondition
{
[DataField("holidays")]
public string[] Holidays { get; } = default!;
diff --git a/Content.Server/Maps/GameMapManager.cs b/Content.Server/Maps/GameMapManager.cs
index 68cd21e9fe..0f980d5b37 100644
--- a/Content.Server/Maps/GameMapManager.cs
+++ b/Content.Server/Maps/GameMapManager.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Random;
namespace Content.Server.Maps;
-public class GameMapManager : IGameMapManager
+public sealed class GameMapManager : IGameMapManager
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IConfigurationManager _configurationManager = default!;
diff --git a/Content.Server/Maps/GameMapPrototype.cs b/Content.Server/Maps/GameMapPrototype.cs
index c1907a9e13..16c0251f28 100644
--- a/Content.Server/Maps/GameMapPrototype.cs
+++ b/Content.Server/Maps/GameMapPrototype.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Maps;
/// Prototype data for a game map.
///
[Prototype("gameMap")]
-public class GameMapPrototype : IPrototype
+public sealed class GameMapPrototype : IPrototype
{
///
[DataField("id", required: true)]
diff --git a/Content.Server/Maps/NameGenerators/NanotrasenNameGenerator.cs b/Content.Server/Maps/NameGenerators/NanotrasenNameGenerator.cs
index 4486315a84..6d3ad86295 100644
--- a/Content.Server/Maps/NameGenerators/NanotrasenNameGenerator.cs
+++ b/Content.Server/Maps/NameGenerators/NanotrasenNameGenerator.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Maps.NameGenerators;
[UsedImplicitly]
-public class NanotrasenNameGenerator : GameMapNameGenerator
+public sealed class NanotrasenNameGenerator : GameMapNameGenerator
{
///
/// Where the map comes from. Should be a two or three letter code, for example "VG" for Packedstation.
diff --git a/Content.Server/Materials/MaterialComponent.cs b/Content.Server/Materials/MaterialComponent.cs
index 15fc89fc02..5b99041459 100644
--- a/Content.Server/Materials/MaterialComponent.cs
+++ b/Content.Server/Materials/MaterialComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Materials
/// This is not a storage system for say smelteries.
///
[RegisterComponent]
- public class MaterialComponent : Component
+ public sealed class MaterialComponent : Component
{
[ViewVariables]
[DataField("materials", customTypeSerializer:typeof(PrototypeIdListSerializer))]
diff --git a/Content.Server/Medical/Components/MedicalScannerComponent.cs b/Content.Server/Medical/Components/MedicalScannerComponent.cs
index db38d798c5..0b8d0f72ac 100644
--- a/Content.Server/Medical/Components/MedicalScannerComponent.cs
+++ b/Content.Server/Medical/Components/MedicalScannerComponent.cs
@@ -26,7 +26,7 @@ namespace Content.Server.Medical.Components
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(SharedMedicalScannerComponent))]
- public class MedicalScannerComponent : SharedMedicalScannerComponent, IActivate, IDestroyAct
+ public sealed class MedicalScannerComponent : SharedMedicalScannerComponent, IActivate, IDestroyAct
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IServerPreferencesManager _prefsManager = null!;
diff --git a/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleComponent.cs b/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleComponent.cs
index 946c54a67e..2ecb05c6e3 100644
--- a/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleComponent.cs
+++ b/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Medical.CrewMonitoring
{
[RegisterComponent]
[Friend(typeof(CrewMonitoringConsoleSystem))]
- public class CrewMonitoringConsoleComponent : Component
+ public sealed class CrewMonitoringConsoleComponent : Component
{
///
/// List of all currently connected sensors to this console.
diff --git a/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleSystem.cs b/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleSystem.cs
index 607b1939ec..cc8397c0f0 100644
--- a/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleSystem.cs
+++ b/Content.Server/Medical/CrewMonitoring/CrewMonitoringConsoleSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Medical.CrewMonitoring
{
- public class CrewMonitoringConsoleSystem : EntitySystem
+ public sealed class CrewMonitoringConsoleSystem : EntitySystem
{
[Dependency] private readonly SuitSensorSystem _sensors = default!;
[Dependency] private readonly IGameTiming _gameTiming = default!;
diff --git a/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs b/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
index 7d4ed128c9..b415977418 100644
--- a/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
+++ b/Content.Server/Medical/SuitSensors/SuitSensorSystem.cs
@@ -22,7 +22,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Medical.SuitSensors
{
- public class SuitSensorSystem : EntitySystem
+ public sealed class SuitSensorSystem : EntitySystem
{
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Mind/Commands/MakeSentientCommand.cs b/Content.Server/Mind/Commands/MakeSentientCommand.cs
index ff0ea4ecd4..82873966b6 100644
--- a/Content.Server/Mind/Commands/MakeSentientCommand.cs
+++ b/Content.Server/Mind/Commands/MakeSentientCommand.cs
@@ -14,7 +14,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.Mind.Commands
{
[AdminCommand(AdminFlags.Fun)]
- public class MakeSentientCommand : IConsoleCommand
+ public sealed class MakeSentientCommand : IConsoleCommand
{
public string Command => "makesentient";
public string Description => "Makes an entity sentient (able to be controlled by a player)";
diff --git a/Content.Server/Mind/Commands/MindInfoCommand.cs b/Content.Server/Mind/Commands/MindInfoCommand.cs
index c83ef4b3b3..d75e4d42e2 100644
--- a/Content.Server/Mind/Commands/MindInfoCommand.cs
+++ b/Content.Server/Mind/Commands/MindInfoCommand.cs
@@ -9,7 +9,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Mind.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class MindInfoCommand : IConsoleCommand
+ public sealed class MindInfoCommand : IConsoleCommand
{
public string Command => "mindinfo";
diff --git a/Content.Server/Mind/Commands/RenameCommand.cs b/Content.Server/Mind/Commands/RenameCommand.cs
index 2303d35257..8ccde0b516 100644
--- a/Content.Server/Mind/Commands/RenameCommand.cs
+++ b/Content.Server/Mind/Commands/RenameCommand.cs
@@ -17,7 +17,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Mind.Commands;
[AdminCommand(AdminFlags.VarEdit)]
-public class RenameCommand : IConsoleCommand
+public sealed class RenameCommand : IConsoleCommand
{
public string Command => "rename";
public string Description => "Renames an entity and its cloner entries, ID cards, and PDAs.";
diff --git a/Content.Server/Mind/Components/MindComponent.cs b/Content.Server/Mind/Components/MindComponent.cs
index 6cb6c9a167..33cfd91f08 100644
--- a/Content.Server/Mind/Components/MindComponent.cs
+++ b/Content.Server/Mind/Components/MindComponent.cs
@@ -19,7 +19,7 @@ namespace Content.Server.Mind.Components
/// Stores a on a mob.
///
[RegisterComponent, Friend(typeof(MindSystem))]
- public class MindComponent : Component
+ public sealed class MindComponent : Component
{
///
/// The mind controlling this mob. Can be null.
@@ -48,11 +48,11 @@ namespace Content.Server.Mind.Components
public bool GhostOnShutdown { get; set; } = true;
}
- public class MindRemovedMessage : EntityEventArgs
+ public sealed class MindRemovedMessage : EntityEventArgs
{
}
- public class MindAddedMessage : EntityEventArgs
+ public sealed class MindAddedMessage : EntityEventArgs
{
}
}
diff --git a/Content.Server/Mind/Components/VisitingMindComponent.cs b/Content.Server/Mind/Components/VisitingMindComponent.cs
index 7cc29848f4..f4ae8f88a8 100644
--- a/Content.Server/Mind/Components/VisitingMindComponent.cs
+++ b/Content.Server/Mind/Components/VisitingMindComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Mind.Components
}
}
- public class MindUnvisitedMessage : EntityEventArgs
+ public sealed class MindUnvisitedMessage : EntityEventArgs
{
}
}
diff --git a/Content.Server/Mind/MindSystem.cs b/Content.Server/Mind/MindSystem.cs
index ed6801095d..997880cfaa 100644
--- a/Content.Server/Mind/MindSystem.cs
+++ b/Content.Server/Mind/MindSystem.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Mind;
-public class MindSystem : EntitySystem
+public sealed class MindSystem : EntitySystem
{
[Dependency] private readonly IMapManager _mapManager = default!;
[Dependency] private readonly GameTicker _gameTicker = default!;
diff --git a/Content.Server/Mind/MindTrackerSystem.cs b/Content.Server/Mind/MindTrackerSystem.cs
index 15924a190b..5903cb3034 100644
--- a/Content.Server/Mind/MindTrackerSystem.cs
+++ b/Content.Server/Mind/MindTrackerSystem.cs
@@ -17,7 +17,7 @@ namespace Content.Server.Mind
/// The Minds themselves contain metadata about their owners.
/// Anyway, this is because disconnected people and ghost roles have been breaking round end statistics for way too long.
///
- public class MindTrackerSystem : EntitySystem
+ public sealed class MindTrackerSystem : EntitySystem
{
[ViewVariables]
public readonly HashSet AllMinds = new();
diff --git a/Content.Server/Mining/Components/MineableComponent.cs b/Content.Server/Mining/Components/MineableComponent.cs
index a112c2e00c..edbfbdbc8c 100644
--- a/Content.Server/Mining/Components/MineableComponent.cs
+++ b/Content.Server/Mining/Components/MineableComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Mining.Components;
[RegisterComponent]
[Friend(typeof(MineableSystem))]
-public class MineableComponent : Component
+public sealed class MineableComponent : Component
{
public float BaseMineTime = 1.0f;
}
diff --git a/Content.Server/Mining/Components/PickaxeComponent.cs b/Content.Server/Mining/Components/PickaxeComponent.cs
index 1a34b349f4..d3f1a0c9da 100644
--- a/Content.Server/Mining/Components/PickaxeComponent.cs
+++ b/Content.Server/Mining/Components/PickaxeComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Mining.Components
{
[RegisterComponent]
- public class PickaxeComponent : Component
+ public sealed class PickaxeComponent : Component
{
[DataField("sound")]
public SoundSpecifier MiningSound { get; set; } = new SoundPathSpecifier("/Audio/Items/Mining/pickaxe.ogg");
diff --git a/Content.Server/Mining/MineableSystem.cs b/Content.Server/Mining/MineableSystem.cs
index 2301e3dbc0..fd2835c0d2 100644
--- a/Content.Server/Mining/MineableSystem.cs
+++ b/Content.Server/Mining/MineableSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Player;
namespace Content.Server.Mining;
-public class MineableSystem : EntitySystem
+public sealed class MineableSystem : EntitySystem
{
[Dependency] private readonly DoAfterSystem _doAfterSystem = default!;
[Dependency] private readonly DamageableSystem _damageableSystem = default!;
@@ -70,13 +70,13 @@ public class MineableSystem : EntitySystem
}
// grumble grumble
-public class MiningDoafterSuccess : EntityEventArgs
+public sealed class MiningDoafterSuccess : EntityEventArgs
{
public EntityUid Pickaxe;
public EntityUid Rock;
}
-public class MiningDoafterCancel : EntityEventArgs
+public sealed class MiningDoafterCancel : EntityEventArgs
{
public EntityUid Pickaxe;
public EntityUid Rock;
diff --git a/Content.Server/MoMMI/MoMMILink.cs b/Content.Server/MoMMI/MoMMILink.cs
index 7018107668..bc04e41dbb 100644
--- a/Content.Server/MoMMI/MoMMILink.cs
+++ b/Content.Server/MoMMI/MoMMILink.cs
@@ -128,7 +128,7 @@ namespace Content.Server.MoMMI
public object Contents = null!;
}
- private class MoMMIMessageOOC
+ private sealed class MoMMIMessageOOC
{
[JsonInclude] [JsonPropertyName("sender")]
public string Sender = null!;
@@ -137,7 +137,7 @@ namespace Content.Server.MoMMI
public string Contents = null!;
}
- private class OOCPostMessage
+ private sealed class OOCPostMessage
{
#pragma warning disable CS0649
[JsonInclude] [JsonPropertyName("password")]
diff --git a/Content.Server/MobState/States/CriticalMobState.cs b/Content.Server/MobState/States/CriticalMobState.cs
index f692ca59f1..dc046e6f68 100644
--- a/Content.Server/MobState/States/CriticalMobState.cs
+++ b/Content.Server/MobState/States/CriticalMobState.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MobState.States
{
- public class CriticalMobState : SharedCriticalMobState
+ public sealed class CriticalMobState : SharedCriticalMobState
{
public override void EnterState(EntityUid uid, IEntityManager entityManager)
{
diff --git a/Content.Server/MobState/States/DeadMobState.cs b/Content.Server/MobState/States/DeadMobState.cs
index 0a7c42fbf3..e9674716df 100644
--- a/Content.Server/MobState/States/DeadMobState.cs
+++ b/Content.Server/MobState/States/DeadMobState.cs
@@ -11,7 +11,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MobState.States
{
- public class DeadMobState : SharedDeadMobState
+ public sealed class DeadMobState : SharedDeadMobState
{
public override void EnterState(EntityUid uid, IEntityManager entityManager)
{
diff --git a/Content.Server/MobState/States/NormalMobState.cs b/Content.Server/MobState/States/NormalMobState.cs
index a5999f0c72..6e61e6e79a 100644
--- a/Content.Server/MobState/States/NormalMobState.cs
+++ b/Content.Server/MobState/States/NormalMobState.cs
@@ -8,7 +8,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.MobState.States
{
- public class NormalMobState : SharedNormalMobState
+ public sealed class NormalMobState : SharedNormalMobState
{
public override void UpdateState(EntityUid entity, FixedPoint2 threshold, IEntityManager entityManager)
{
diff --git a/Content.Server/Module/ServerModuleManager.cs b/Content.Server/Module/ServerModuleManager.cs
index 23282bea32..e5ad391c9c 100644
--- a/Content.Server/Module/ServerModuleManager.cs
+++ b/Content.Server/Module/ServerModuleManager.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Module
/// Provides simple way for shared code to check if it's being run by
/// the client of the server.
///
- public class ServerModuleManager : IModuleManager
+ public sealed class ServerModuleManager : IModuleManager
{
bool IModuleManager.IsClientModule => false;
bool IModuleManager.IsServerModule => true;
diff --git a/Content.Server/Morgue/Components/BodyBagEntityStorageComponent.cs b/Content.Server/Morgue/Components/BodyBagEntityStorageComponent.cs
index ae47946458..dc010a2b2e 100644
--- a/Content.Server/Morgue/Components/BodyBagEntityStorageComponent.cs
+++ b/Content.Server/Morgue/Components/BodyBagEntityStorageComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Morgue.Components
[ComponentReference(typeof(EntityStorageComponent))]
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
- public class BodyBagEntityStorageComponent : EntityStorageComponent
+ public sealed class BodyBagEntityStorageComponent : EntityStorageComponent
{
protected override bool AddToContents(EntityUid entity)
{
diff --git a/Content.Server/Morgue/Components/CrematoriumEntityStorageComponent.cs b/Content.Server/Morgue/Components/CrematoriumEntityStorageComponent.cs
index 008377a8cd..8bbdc0e138 100644
--- a/Content.Server/Morgue/Components/CrematoriumEntityStorageComponent.cs
+++ b/Content.Server/Morgue/Components/CrematoriumEntityStorageComponent.cs
@@ -29,7 +29,7 @@ namespace Content.Server.Morgue.Components
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
#pragma warning disable 618
- public class CrematoriumEntityStorageComponent : MorgueEntityStorageComponent, IExamine, ISuicideAct
+ public sealed class CrematoriumEntityStorageComponent : MorgueEntityStorageComponent, IExamine, ISuicideAct
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entities = default!;
diff --git a/Content.Server/Morgue/Components/MorgueEntityStorageComponent.cs b/Content.Server/Morgue/Components/MorgueEntityStorageComponent.cs
index 10cf6855a4..065b6cf844 100644
--- a/Content.Server/Morgue/Components/MorgueEntityStorageComponent.cs
+++ b/Content.Server/Morgue/Components/MorgueEntityStorageComponent.cs
@@ -31,6 +31,7 @@ namespace Content.Server.Morgue.Components
[ComponentReference(typeof(EntityStorageComponent))]
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
+ [Virtual]
#pragma warning disable 618
public class MorgueEntityStorageComponent : EntityStorageComponent, IExamine
#pragma warning restore 618
diff --git a/Content.Server/Morgue/Components/MorgueTrayComponent.cs b/Content.Server/Morgue/Components/MorgueTrayComponent.cs
index eb787bd7d4..8df4a339f1 100644
--- a/Content.Server/Morgue/Components/MorgueTrayComponent.cs
+++ b/Content.Server/Morgue/Components/MorgueTrayComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Morgue.Components
{
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
- public class MorgueTrayComponent : Component, IActivate
+ public sealed class MorgueTrayComponent : Component, IActivate
{
[ViewVariables]
public EntityUid Morgue { get; set; }
diff --git a/Content.Server/Morgue/MorgueSystem.cs b/Content.Server/Morgue/MorgueSystem.cs
index 8929681cbd..8ce75a3cf1 100644
--- a/Content.Server/Morgue/MorgueSystem.cs
+++ b/Content.Server/Morgue/MorgueSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Morgue
{
[UsedImplicitly]
- public class MorgueSystem : EntitySystem
+ public sealed class MorgueSystem : EntitySystem
{
private float _accumulatedFrameTime;
diff --git a/Content.Server/Movement/Components/FootstepModifierComponent.cs b/Content.Server/Movement/Components/FootstepModifierComponent.cs
index 4ad7cbd950..1e83eeb6b6 100644
--- a/Content.Server/Movement/Components/FootstepModifierComponent.cs
+++ b/Content.Server/Movement/Components/FootstepModifierComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Movement.Components
/// Changes footstep sound
///
[RegisterComponent]
- public class FootstepModifierComponent : Component
+ public sealed class FootstepModifierComponent : Component
{
[DataField("footstepSoundCollection", required: true)]
public SoundSpecifier SoundCollection = default!;
diff --git a/Content.Server/Movement/Components/StressTestMovementComponent.cs b/Content.Server/Movement/Components/StressTestMovementComponent.cs
index c275e492dd..c00d107a3f 100644
--- a/Content.Server/Movement/Components/StressTestMovementComponent.cs
+++ b/Content.Server/Movement/Components/StressTestMovementComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Maths;
namespace Content.Server.Movement.Components
{
[RegisterComponent]
- public class StressTestMovementComponent : Component
+ public sealed class StressTestMovementComponent : Component
{
public float Progress { get; set; }
public Vector2 Origin { get; set; }
diff --git a/Content.Server/NodeContainer/EntitySystems/NodeGroupSystem.cs b/Content.Server/NodeContainer/EntitySystems/NodeGroupSystem.cs
index b88f856569..a620fc4e44 100644
--- a/Content.Server/NodeContainer/EntitySystems/NodeGroupSystem.cs
+++ b/Content.Server/NodeContainer/EntitySystems/NodeGroupSystem.cs
@@ -23,7 +23,7 @@ namespace Content.Server.NodeContainer.EntitySystems
///
///
[UsedImplicitly]
- public class NodeGroupSystem : EntitySystem
+ public sealed class NodeGroupSystem : EntitySystem
{
[Dependency] private readonly IPlayerManager _playerManager = default!;
[Dependency] private readonly IAdminManager _adminManager = default!;
diff --git a/Content.Server/NodeContainer/NodeContainerComponent.cs b/Content.Server/NodeContainer/NodeContainerComponent.cs
index 49af08ab6c..39530354f8 100644
--- a/Content.Server/NodeContainer/NodeContainerComponent.cs
+++ b/Content.Server/NodeContainer/NodeContainerComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.NodeContainer
///
[RegisterComponent]
#pragma warning disable 618
- public class NodeContainerComponent : Component, IExamine
+ public sealed class NodeContainerComponent : Component, IExamine
#pragma warning restore 618
{
//HACK: THIS BEING readOnly IS A FILTHY HACK AND I HATE IT --moony
diff --git a/Content.Server/NodeContainer/NodeGroups/BaseNodeGroup.cs b/Content.Server/NodeContainer/NodeGroups/BaseNodeGroup.cs
index c0eb4a4469..b46f5d6143 100644
--- a/Content.Server/NodeContainer/NodeGroups/BaseNodeGroup.cs
+++ b/Content.Server/NodeContainer/NodeGroups/BaseNodeGroup.cs
@@ -40,6 +40,7 @@ namespace Content.Server.NodeContainer.NodeGroups
}
[NodeGroup(NodeGroupID.Default, NodeGroupID.WireNet)]
+ [Virtual]
public class BaseNodeGroup : INodeGroup
{
public bool Remaking { get; set; }
diff --git a/Content.Server/NodeContainer/NodeGroups/NodeGroupAttribute.cs b/Content.Server/NodeContainer/NodeGroups/NodeGroupAttribute.cs
index 7c6b210869..633fe50f1a 100644
--- a/Content.Server/NodeContainer/NodeGroups/NodeGroupAttribute.cs
+++ b/Content.Server/NodeContainer/NodeGroups/NodeGroupAttribute.cs
@@ -10,7 +10,7 @@ namespace Content.Server.NodeContainer.NodeGroups
///
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
[MeansImplicitUse]
- public class NodeGroupAttribute : Attribute
+ public sealed class NodeGroupAttribute : Attribute
{
public NodeGroupID[] NodeGroupIDs { get; }
diff --git a/Content.Server/NodeContainer/NodeGroups/NodeGroupFactory.cs b/Content.Server/NodeContainer/NodeGroups/NodeGroupFactory.cs
index 0722ea1dc4..dbd5917260 100644
--- a/Content.Server/NodeContainer/NodeGroups/NodeGroupFactory.cs
+++ b/Content.Server/NodeContainer/NodeGroups/NodeGroupFactory.cs
@@ -21,7 +21,7 @@ namespace Content.Server.NodeContainer.NodeGroups
INodeGroup MakeNodeGroup(NodeGroupID id);
}
- public class NodeGroupFactory : INodeGroupFactory
+ public sealed class NodeGroupFactory : INodeGroupFactory
{
[Dependency] private readonly IReflectionManager _reflectionManager = default!;
[Dependency] private readonly IDynamicTypeFactory _typeFactory = default!;
diff --git a/Content.Server/NodeContainer/Nodes/AdjacentNode.cs b/Content.Server/NodeContainer/Nodes/AdjacentNode.cs
index c46b22b987..db5dc70215 100644
--- a/Content.Server/NodeContainer/Nodes/AdjacentNode.cs
+++ b/Content.Server/NodeContainer/Nodes/AdjacentNode.cs
@@ -10,7 +10,7 @@ namespace Content.Server.NodeContainer.Nodes
/// A that can reach other s that are directly adjacent to it.
///
[DataDefinition]
- public class AdjacentNode : Node
+ public sealed class AdjacentNode : Node
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/NodeContainer/Nodes/PipeNode.cs b/Content.Server/NodeContainer/Nodes/PipeNode.cs
index f67e78e587..f01b6dcc8c 100644
--- a/Content.Server/NodeContainer/Nodes/PipeNode.cs
+++ b/Content.Server/NodeContainer/Nodes/PipeNode.cs
@@ -19,6 +19,7 @@ namespace Content.Server.NodeContainer.Nodes
/// correctly correspond.
///
[DataDefinition]
+ [Virtual]
public class PipeNode : Node, IGasMixtureHolder, IRotatableNode
{
///
diff --git a/Content.Server/NodeContainer/Nodes/PortPipeNode.cs b/Content.Server/NodeContainer/Nodes/PortPipeNode.cs
index 6a029a4c88..cec16069ae 100644
--- a/Content.Server/NodeContainer/Nodes/PortPipeNode.cs
+++ b/Content.Server/NodeContainer/Nodes/PortPipeNode.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.NodeContainer.Nodes
{
[DataDefinition]
- public class PortPipeNode : PipeNode
+ public sealed class PortPipeNode : PipeNode
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/NodeContainer/Nodes/PortablePipeNode.cs b/Content.Server/NodeContainer/Nodes/PortablePipeNode.cs
index 7b6ef85e34..3031e47ece 100644
--- a/Content.Server/NodeContainer/Nodes/PortablePipeNode.cs
+++ b/Content.Server/NodeContainer/Nodes/PortablePipeNode.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.NodeContainer.Nodes
{
[DataDefinition]
- public class PortablePipeNode : PipeNode
+ public sealed class PortablePipeNode : PipeNode
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/Nuke/Commands/SendNukeCodesCommand.cs b/Content.Server/Nuke/Commands/SendNukeCodesCommand.cs
index f7c85c4489..a4e001c1b8 100644
--- a/Content.Server/Nuke/Commands/SendNukeCodesCommand.cs
+++ b/Content.Server/Nuke/Commands/SendNukeCodesCommand.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Nuke.Commands
{
[UsedImplicitly]
[AdminCommand(AdminFlags.Fun)]
- public class SendNukeCodesCommand : IConsoleCommand
+ public sealed class SendNukeCodesCommand : IConsoleCommand
{
public string Command => "nukecodes";
public string Description => "Send nuke codes to the communication console";
diff --git a/Content.Server/Nuke/Commands/ToggleNukeCommand.cs b/Content.Server/Nuke/Commands/ToggleNukeCommand.cs
index 94ba74125b..5df0922ee6 100644
--- a/Content.Server/Nuke/Commands/ToggleNukeCommand.cs
+++ b/Content.Server/Nuke/Commands/ToggleNukeCommand.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Nuke.Commands
{
[UsedImplicitly]
[AdminCommand(AdminFlags.Fun)]
- public class ToggleNukeCommand : IConsoleCommand
+ public sealed class ToggleNukeCommand : IConsoleCommand
{
public string Command => "nukearm";
public string Description => "Toggle nuclear bomb timer. You can set timer directly. Uid is optional.";
diff --git a/Content.Server/Nuke/NukeCodePaperComponent.cs b/Content.Server/Nuke/NukeCodePaperComponent.cs
index 9b9047d0e6..27a8d3e54e 100644
--- a/Content.Server/Nuke/NukeCodePaperComponent.cs
+++ b/Content.Server/Nuke/NukeCodePaperComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Nuke
/// Can be used in mapping or admins spawn.
///
[RegisterComponent]
- public class NukeCodePaperComponent : Component
+ public sealed class NukeCodePaperComponent : Component
{
}
}
diff --git a/Content.Server/Nuke/NukeCodePaperSystem.cs b/Content.Server/Nuke/NukeCodePaperSystem.cs
index b68984da33..52ffea0f27 100644
--- a/Content.Server/Nuke/NukeCodePaperSystem.cs
+++ b/Content.Server/Nuke/NukeCodePaperSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Nuke
{
- public class NukeCodePaperSystem : EntitySystem
+ public sealed class NukeCodePaperSystem : EntitySystem
{
[Dependency] private readonly NukeCodeSystem _codes = default!;
diff --git a/Content.Server/Nuke/NukeCodeSystem.cs b/Content.Server/Nuke/NukeCodeSystem.cs
index b9f38955d6..c97072de01 100644
--- a/Content.Server/Nuke/NukeCodeSystem.cs
+++ b/Content.Server/Nuke/NukeCodeSystem.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Nuke
/// Nuclear code is generated once per round
/// One code works for all nukes
///
- public class NukeCodeSystem : EntitySystem
+ public sealed class NukeCodeSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly IChatManager _chat = default!;
diff --git a/Content.Server/Nuke/NukeComponent.cs b/Content.Server/Nuke/NukeComponent.cs
index a9a69a977a..dcad5a56a4 100644
--- a/Content.Server/Nuke/NukeComponent.cs
+++ b/Content.Server/Nuke/NukeComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Nuke
///
[RegisterComponent]
[Friend(typeof(NukeSystem))]
- public class NukeComponent : Component
+ public sealed class NukeComponent : Component
{
///
/// Default bomb timer value in seconds.
diff --git a/Content.Server/Nuke/NukeSystem.cs b/Content.Server/Nuke/NukeSystem.cs
index 05b151c5b4..b46d1e274a 100644
--- a/Content.Server/Nuke/NukeSystem.cs
+++ b/Content.Server/Nuke/NukeSystem.cs
@@ -23,7 +23,7 @@ using Robust.Shared.Player;
namespace Content.Server.Nuke
{
- public class NukeSystem : EntitySystem
+ public sealed class NukeSystem : EntitySystem
{
[Dependency] private readonly NukeCodeSystem _codes = default!;
[Dependency] private readonly ActionBlockerSystem _actionBlocker = default!;
diff --git a/Content.Server/Nutrition/Components/CigarComponent.cs b/Content.Server/Nutrition/Components/CigarComponent.cs
index 9978b4b097..e20e3555bd 100644
--- a/Content.Server/Nutrition/Components/CigarComponent.cs
+++ b/Content.Server/Nutrition/Components/CigarComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Nutrition.Components
/// A disposable, single-use smokable.
///
[RegisterComponent, Friend(typeof(SmokingSystem))]
- public class CigarComponent : Component
+ public sealed class CigarComponent : Component
{
}
}
diff --git a/Content.Server/Nutrition/Components/FoodComponent.cs b/Content.Server/Nutrition/Components/FoodComponent.cs
index 6cbbce4c23..15074786ae 100644
--- a/Content.Server/Nutrition/Components/FoodComponent.cs
+++ b/Content.Server/Nutrition/Components/FoodComponent.cs
@@ -14,7 +14,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Nutrition.Components
{
[RegisterComponent, Friend(typeof(FoodSystem))]
- public class FoodComponent : Component
+ public sealed class FoodComponent : Component
{
[DataField("solution")]
public string SolutionName { get; set; } = "food";
diff --git a/Content.Server/Nutrition/Components/ForcefeedOnCollideComponent.cs b/Content.Server/Nutrition/Components/ForcefeedOnCollideComponent.cs
index abaf177b16..acedf76e1d 100644
--- a/Content.Server/Nutrition/Components/ForcefeedOnCollideComponent.cs
+++ b/Content.Server/Nutrition/Components/ForcefeedOnCollideComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Nutrition.Components
/// A food item with this component will be forcefully fed to anyone
///
[RegisterComponent, Friend(typeof(ForcefeedOnCollideSystem))]
- public class ForcefeedOnCollideComponent : Component
+ public sealed class ForcefeedOnCollideComponent : Component
{
///
/// Since this component is primarily used by the pneumatic cannon, which adds this comp on throw start
diff --git a/Content.Server/Nutrition/Components/IngestionBlockerComponent.cs b/Content.Server/Nutrition/Components/IngestionBlockerComponent.cs
index c74dbe99d0..c814bf1305 100644
--- a/Content.Server/Nutrition/Components/IngestionBlockerComponent.cs
+++ b/Content.Server/Nutrition/Components/IngestionBlockerComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Nutrition.EntitySystems;
/// masks), then this component might become redundant.
///
[RegisterComponent, Friend(typeof(FoodSystem), typeof(DrinkSystem))]
-public class IngestionBlockerComponent : Component
+public sealed class IngestionBlockerComponent : Component
{
///
/// Is this component currently blocking consumption.
diff --git a/Content.Server/Nutrition/Components/SliceableFoodComponent.cs b/Content.Server/Nutrition/Components/SliceableFoodComponent.cs
index 0ac7c9e386..37e4f0c66e 100644
--- a/Content.Server/Nutrition/Components/SliceableFoodComponent.cs
+++ b/Content.Server/Nutrition/Components/SliceableFoodComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Nutrition.Components
{
[RegisterComponent, Friend(typeof(SliceableFoodSystem))]
- internal class SliceableFoodComponent : Component
+ internal sealed class SliceableFoodComponent : Component
{
[DataField("slice")]
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Nutrition/Components/SmokableComponent.cs b/Content.Server/Nutrition/Components/SmokableComponent.cs
index f830695f16..5a7429e145 100644
--- a/Content.Server/Nutrition/Components/SmokableComponent.cs
+++ b/Content.Server/Nutrition/Components/SmokableComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Nutrition.Components
{
[RegisterComponent, Friend(typeof(SmokingSystem))]
- public class SmokableComponent : Component
+ public sealed class SmokableComponent : Component
{
[DataField("solution")]
public string Solution { get; } = "smokable";
diff --git a/Content.Server/Nutrition/Components/UtensilComponent.cs b/Content.Server/Nutrition/Components/UtensilComponent.cs
index dbf9410a1f..b611ab3699 100644
--- a/Content.Server/Nutrition/Components/UtensilComponent.cs
+++ b/Content.Server/Nutrition/Components/UtensilComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Nutrition.Components
{
[RegisterComponent, Friend(typeof(UtensilSystem))]
- public class UtensilComponent : Component
+ public sealed class UtensilComponent : Component
{
[DataField("types")]
private UtensilType _types = UtensilType.None;
diff --git a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs
index 2d50fef708..27c1f01fb8 100644
--- a/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/CreamPieSystem.cs
@@ -18,7 +18,7 @@ using Robust.Shared.Player;
namespace Content.Server.Nutrition.EntitySystems
{
[UsedImplicitly]
- public class CreamPieSystem : SharedCreamPieSystem
+ public sealed class CreamPieSystem : SharedCreamPieSystem
{
[Dependency] private readonly SolutionContainerSystem _solutionsSystem = default!;
[Dependency] private readonly SpillableSystem _spillableSystem = default!;
diff --git a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs
index f1d6ca264a..9387b712ac 100644
--- a/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/DrinkSystem.cs
@@ -30,7 +30,7 @@ using Robust.Shared.Utility;
namespace Content.Server.Nutrition.EntitySystems
{
[UsedImplicitly]
- public class DrinkSystem : EntitySystem
+ public sealed class DrinkSystem : EntitySystem
{
[Dependency] private readonly FoodSystem _foodSystem = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Nutrition/EntitySystems/ForcefeedOnCollideSystem.cs b/Content.Server/Nutrition/EntitySystems/ForcefeedOnCollideSystem.cs
index c2ffa178e5..d41045dd28 100644
--- a/Content.Server/Nutrition/EntitySystems/ForcefeedOnCollideSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/ForcefeedOnCollideSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Nutrition.EntitySystems
{
- public class ForcefeedOnCollideSystem : EntitySystem
+ public sealed class ForcefeedOnCollideSystem : EntitySystem
{
[Dependency] private readonly FoodSystem _foodSystem = default!;
diff --git a/Content.Server/Nutrition/EntitySystems/HungerSystem.cs b/Content.Server/Nutrition/EntitySystems/HungerSystem.cs
index 1391518034..5d2bf0cf6d 100644
--- a/Content.Server/Nutrition/EntitySystems/HungerSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/HungerSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Nutrition.EntitySystems
{
[UsedImplicitly]
- public class HungerSystem : EntitySystem
+ public sealed class HungerSystem : EntitySystem
{
private float _accumulatedFrameTime;
diff --git a/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs b/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs
index 965fdbfc18..d791831ef8 100644
--- a/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/SliceableFoodSystem.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Player;
namespace Content.Server.Nutrition.EntitySystems
{
- internal class SliceableFoodSystem : EntitySystem
+ internal sealed class SliceableFoodSystem : EntitySystem
{
[Dependency] private readonly SolutionContainerSystem _solutionContainerSystem = default!;
diff --git a/Content.Server/Nutrition/EntitySystems/SmokingSystem.Cigar.cs b/Content.Server/Nutrition/EntitySystems/SmokingSystem.Cigar.cs
index e88fa6343e..ec9d5274f8 100644
--- a/Content.Server/Nutrition/EntitySystems/SmokingSystem.Cigar.cs
+++ b/Content.Server/Nutrition/EntitySystems/SmokingSystem.Cigar.cs
@@ -6,7 +6,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Nutrition.EntitySystems
{
- public partial class SmokingSystem
+ public sealed partial class SmokingSystem
{
private void InitializeCigars()
{
diff --git a/Content.Server/Nutrition/EntitySystems/SmokingSystem.cs b/Content.Server/Nutrition/EntitySystems/SmokingSystem.cs
index c9ba7d6724..356b4792b2 100644
--- a/Content.Server/Nutrition/EntitySystems/SmokingSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/SmokingSystem.cs
@@ -17,7 +17,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Nutrition.EntitySystems
{
- public partial class SmokingSystem : EntitySystem
+ public sealed partial class SmokingSystem : EntitySystem
{
[Dependency] private readonly ReactiveSystem _reactiveSystem = default!;
[Dependency] private readonly SolutionContainerSystem _solutionContainerSystem = default!;
@@ -127,7 +127,7 @@ namespace Content.Server.Nutrition.EntitySystems
///
/// Directed event raised when the smokable solution is empty.
///
- public class SmokableSolutionEmptyEvent : EntityEventArgs
+ public sealed class SmokableSolutionEmptyEvent : EntityEventArgs
{
}
}
diff --git a/Content.Server/Nutrition/EntitySystems/ThirstSystem.cs b/Content.Server/Nutrition/EntitySystems/ThirstSystem.cs
index e6ca6c57fd..68bb7885d0 100644
--- a/Content.Server/Nutrition/EntitySystems/ThirstSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/ThirstSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Nutrition.EntitySystems
{
[UsedImplicitly]
- public class ThirstSystem : EntitySystem
+ public sealed class ThirstSystem : EntitySystem
{
private float _accumulatedFrameTime;
diff --git a/Content.Server/Nutrition/EntitySystems/UtensilSystem.cs b/Content.Server/Nutrition/EntitySystems/UtensilSystem.cs
index c8a29f828c..6a0d0f6d80 100644
--- a/Content.Server/Nutrition/EntitySystems/UtensilSystem.cs
+++ b/Content.Server/Nutrition/EntitySystems/UtensilSystem.cs
@@ -14,7 +14,7 @@ namespace Content.Server.Nutrition.EntitySystems
///
/// Handles usage of the utensils on the food items
///
- internal class UtensilSystem : EntitySystem
+ internal sealed class UtensilSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _robustRandom = default!;
[Dependency] private readonly FoodSystem _foodSystem = default!;
diff --git a/Content.Server/Nutrition/Hungry.cs b/Content.Server/Nutrition/Hungry.cs
index e36505a9f9..d7b4c41644 100644
--- a/Content.Server/Nutrition/Hungry.cs
+++ b/Content.Server/Nutrition/Hungry.cs
@@ -10,7 +10,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Nutrition
{
[AdminCommand(AdminFlags.Debug)]
- public class Hungry : IConsoleCommand
+ public sealed class Hungry : IConsoleCommand
{
[Dependency] private readonly IEntityManager _entities = default!;
diff --git a/Content.Server/Objectives/Commands/AddObjectiveCommand.cs b/Content.Server/Objectives/Commands/AddObjectiveCommand.cs
index 6345d7351f..87a100d73a 100644
--- a/Content.Server/Objectives/Commands/AddObjectiveCommand.cs
+++ b/Content.Server/Objectives/Commands/AddObjectiveCommand.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.Objectives.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class AddObjectiveCommand : IConsoleCommand
+ public sealed class AddObjectiveCommand : IConsoleCommand
{
public string Command => "addobjective";
public string Description => "Adds an objective to the player's mind.";
diff --git a/Content.Server/Objectives/Commands/ListObjectivesCommand.cs b/Content.Server/Objectives/Commands/ListObjectivesCommand.cs
index ab2f438adf..4faddf8460 100644
--- a/Content.Server/Objectives/Commands/ListObjectivesCommand.cs
+++ b/Content.Server/Objectives/Commands/ListObjectivesCommand.cs
@@ -9,7 +9,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Objectives.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class ListObjectivesCommand : IConsoleCommand
+ public sealed class ListObjectivesCommand : IConsoleCommand
{
public string Command => "lsobjectives";
public string Description => "Lists all objectives in a players mind.";
diff --git a/Content.Server/Objectives/Commands/RemoveObjectiveCommand.cs b/Content.Server/Objectives/Commands/RemoveObjectiveCommand.cs
index 34bcd3cf76..eb79e83ac1 100644
--- a/Content.Server/Objectives/Commands/RemoveObjectiveCommand.cs
+++ b/Content.Server/Objectives/Commands/RemoveObjectiveCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Objectives.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class RemoveObjectiveCommand : IConsoleCommand
+ public sealed class RemoveObjectiveCommand : IConsoleCommand
{
public string Command => "rmobjective";
public string Description => "Removes an objective from the player's mind.";
diff --git a/Content.Server/Objectives/Conditions/DieCondition.cs b/Content.Server/Objectives/Conditions/DieCondition.cs
index 18dc7ea065..61fafcc2fb 100644
--- a/Content.Server/Objectives/Conditions/DieCondition.cs
+++ b/Content.Server/Objectives/Conditions/DieCondition.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Objectives.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class DieCondition : IObjectiveCondition
+ public sealed class DieCondition : IObjectiveCondition
{
private Mind.Mind? _mind;
diff --git a/Content.Server/Objectives/Conditions/KillRandomPersonCondition.cs b/Content.Server/Objectives/Conditions/KillRandomPersonCondition.cs
index ef0c93ae02..9e9fced3c1 100644
--- a/Content.Server/Objectives/Conditions/KillRandomPersonCondition.cs
+++ b/Content.Server/Objectives/Conditions/KillRandomPersonCondition.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Objectives.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class KillRandomPersonCondition : KillPersonCondition
+ public sealed class KillRandomPersonCondition : KillPersonCondition
{
public override IObjectiveCondition GetAssigned(Mind.Mind mind)
{
diff --git a/Content.Server/Objectives/Conditions/RandomTraitorAliveCondition.cs b/Content.Server/Objectives/Conditions/RandomTraitorAliveCondition.cs
index d78aa053fc..c6c508040c 100644
--- a/Content.Server/Objectives/Conditions/RandomTraitorAliveCondition.cs
+++ b/Content.Server/Objectives/Conditions/RandomTraitorAliveCondition.cs
@@ -14,7 +14,7 @@ using Content.Server.Roles;
namespace Content.Server.Objectives.Conditions
{
[DataDefinition]
- public class RandomTraitorAliveCondition : IObjectiveCondition
+ public sealed class RandomTraitorAliveCondition : IObjectiveCondition
{
protected Mind.Mind? Target;
diff --git a/Content.Server/Objectives/Conditions/StayAliveCondition.cs b/Content.Server/Objectives/Conditions/StayAliveCondition.cs
index 63c813d6b3..1154218881 100644
--- a/Content.Server/Objectives/Conditions/StayAliveCondition.cs
+++ b/Content.Server/Objectives/Conditions/StayAliveCondition.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Objectives.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class StayAliveCondition : IObjectiveCondition
+ public sealed class StayAliveCondition : IObjectiveCondition
{
private Mind.Mind? _mind;
diff --git a/Content.Server/Objectives/Conditions/StealCondition.cs b/Content.Server/Objectives/Conditions/StealCondition.cs
index 9c710fdb21..9e7b572093 100644
--- a/Content.Server/Objectives/Conditions/StealCondition.cs
+++ b/Content.Server/Objectives/Conditions/StealCondition.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Objectives.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class StealCondition : IObjectiveCondition, ISerializationHooks
+ public sealed class StealCondition : IObjectiveCondition, ISerializationHooks
{
private Mind.Mind? _mind;
[DataField("prototype")] private string _prototypeId = string.Empty;
diff --git a/Content.Server/Objectives/Objective.cs b/Content.Server/Objectives/Objective.cs
index ad576ac2bd..d51240a70a 100644
--- a/Content.Server/Objectives/Objective.cs
+++ b/Content.Server/Objectives/Objective.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Objectives
{
- public class Objective : IEquatable
+ public sealed class Objective : IEquatable
{
[ViewVariables]
public readonly Mind.Mind Mind;
diff --git a/Content.Server/Objectives/ObjectivePrototype.cs b/Content.Server/Objectives/ObjectivePrototype.cs
index 55feadacb8..e7b35d843c 100644
--- a/Content.Server/Objectives/ObjectivePrototype.cs
+++ b/Content.Server/Objectives/ObjectivePrototype.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Objectives
{
[Prototype("objective")]
- public class ObjectivePrototype : IPrototype
+ public sealed class ObjectivePrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Server/Objectives/ObjectivesManager.cs b/Content.Server/Objectives/ObjectivesManager.cs
index a17e252da3..f4d9588c2e 100644
--- a/Content.Server/Objectives/ObjectivesManager.cs
+++ b/Content.Server/Objectives/ObjectivesManager.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Random;
namespace Content.Server.Objectives
{
- public class ObjectivesManager : IObjectivesManager
+ public sealed class ObjectivesManager : IObjectivesManager
{
[Dependency] private IPrototypeManager _prototypeManager = default!;
[Dependency] private IRobustRandom _random = default!;
diff --git a/Content.Server/Objectives/Requirements/IncompatibleConditionsRequirement.cs b/Content.Server/Objectives/Requirements/IncompatibleConditionsRequirement.cs
index a280f4a57b..095d1f9f8f 100644
--- a/Content.Server/Objectives/Requirements/IncompatibleConditionsRequirement.cs
+++ b/Content.Server/Objectives/Requirements/IncompatibleConditionsRequirement.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Objectives.Requirements
{
[DataDefinition]
- public class IncompatibleConditionsRequirement : IObjectiveRequirement
+ public sealed class IncompatibleConditionsRequirement : IObjectiveRequirement
{
[DataField("conditions")]
private readonly List _incompatibleConditions = new();
diff --git a/Content.Server/Objectives/Requirements/IncompatibleObjectivesRequirement.cs b/Content.Server/Objectives/Requirements/IncompatibleObjectivesRequirement.cs
index 855c02be62..f5b2b095e3 100644
--- a/Content.Server/Objectives/Requirements/IncompatibleObjectivesRequirement.cs
+++ b/Content.Server/Objectives/Requirements/IncompatibleObjectivesRequirement.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Objectives.Requirements
{
[DataDefinition]
- public class IncompatibleObjectivesRequirement : IObjectiveRequirement
+ public sealed class IncompatibleObjectivesRequirement : IObjectiveRequirement
{
[DataField("objectives")]
private readonly List _incompatibleObjectives = new();
diff --git a/Content.Server/Objectives/Requirements/MultipleTraitorsRequirement.cs b/Content.Server/Objectives/Requirements/MultipleTraitorsRequirement.cs
index fd110e2838..b5f6dff013 100644
--- a/Content.Server/Objectives/Requirements/MultipleTraitorsRequirement.cs
+++ b/Content.Server/Objectives/Requirements/MultipleTraitorsRequirement.cs
@@ -8,7 +8,7 @@ using Content.Server.GameTicking.Rules;
namespace Content.Server.Objectives.Requirements
{
[DataDefinition]
- public class MultipleTraitorsRequirement : IObjectiveRequirement
+ public sealed class MultipleTraitorsRequirement : IObjectiveRequirement
{
[DataField("traitors")]
private readonly int _requiredTraitors = 2;
diff --git a/Content.Server/Objectives/Requirements/TraitorRequirement.cs b/Content.Server/Objectives/Requirements/TraitorRequirement.cs
index 178cf2e65b..4d399cc169 100644
--- a/Content.Server/Objectives/Requirements/TraitorRequirement.cs
+++ b/Content.Server/Objectives/Requirements/TraitorRequirement.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Objectives.Requirements
{
[UsedImplicitly]
[DataDefinition]
- public class TraitorRequirement : IObjectiveRequirement
+ public sealed class TraitorRequirement : IObjectiveRequirement
{
public bool CanBeAssigned(Mind.Mind mind)
{
diff --git a/Content.Server/PAI/PAISystem.cs b/Content.Server/PAI/PAISystem.cs
index 8a7ca864b4..eccdd40908 100644
--- a/Content.Server/PAI/PAISystem.cs
+++ b/Content.Server/PAI/PAISystem.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Player;
namespace Content.Server.PAI
{
- public class PAISystem : SharedPAISystem
+ public sealed class PAISystem : SharedPAISystem
{
[Dependency] private readonly PopupSystem _popupSystem = default!;
[Dependency] private readonly InstrumentSystem _instrumentSystem = default!;
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorControlBoxComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorControlBoxComponent.cs
index d413fb3bb4..70d79c30a2 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorControlBoxComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorControlBoxComponent.cs
@@ -34,7 +34,7 @@ namespace Content.Server.ParticleAccelerator.Components
///
[ComponentReference(typeof(IActivate))]
[RegisterComponent]
- public class ParticleAcceleratorControlBoxComponent : ParticleAcceleratorPartComponent, IActivate, IWires
+ public sealed class ParticleAcceleratorControlBoxComponent : ParticleAcceleratorPartComponent, IActivate, IWires
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEmitterComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEmitterComponent.cs
index 37b594115a..80960b094a 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEmitterComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEmitterComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.ParticleAccelerator.Components
{
[RegisterComponent]
[ComponentReference(typeof(ParticleAcceleratorPartComponent))]
- public class ParticleAcceleratorEmitterComponent : ParticleAcceleratorPartComponent
+ public sealed class ParticleAcceleratorEmitterComponent : ParticleAcceleratorPartComponent
{
[DataField("emitterType")]
public ParticleAcceleratorEmitterType Type = ParticleAcceleratorEmitterType.Center;
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEndCapComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEndCapComponent.cs
index 788acc4234..085860bf11 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEndCapComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorEndCapComponent.cs
@@ -4,7 +4,7 @@ namespace Content.Server.ParticleAccelerator.Components
{
[RegisterComponent]
[ComponentReference(typeof(ParticleAcceleratorPartComponent))]
- public class ParticleAcceleratorEndCapComponent : ParticleAcceleratorPartComponent
+ public sealed class ParticleAcceleratorEndCapComponent : ParticleAcceleratorPartComponent
{
}
}
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorFuelChamberComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorFuelChamberComponent.cs
index e862e8a3b8..747a3d7538 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorFuelChamberComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorFuelChamberComponent.cs
@@ -4,7 +4,7 @@ namespace Content.Server.ParticleAccelerator.Components
{
[RegisterComponent]
[ComponentReference(typeof(ParticleAcceleratorPartComponent))]
- public class ParticleAcceleratorFuelChamberComponent : ParticleAcceleratorPartComponent
+ public sealed class ParticleAcceleratorFuelChamberComponent : ParticleAcceleratorPartComponent
{
}
}
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorPowerBoxComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorPowerBoxComponent.cs
index 1ede1c6dae..95833005b1 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorPowerBoxComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorPowerBoxComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Server.ParticleAccelerator.Components
{
[RegisterComponent]
[ComponentReference(typeof(ParticleAcceleratorPartComponent))]
- public class ParticleAcceleratorPowerBoxComponent : ParticleAcceleratorPartComponent
+ public sealed class ParticleAcceleratorPowerBoxComponent : ParticleAcceleratorPartComponent
{
[ViewVariables] public PowerConsumerComponent? PowerConsumerComponent;
diff --git a/Content.Server/ParticleAccelerator/Components/ParticleProjectileComponent.cs b/Content.Server/ParticleAccelerator/Components/ParticleProjectileComponent.cs
index 741a83d89e..edcedee18a 100644
--- a/Content.Server/ParticleAccelerator/Components/ParticleProjectileComponent.cs
+++ b/Content.Server/ParticleAccelerator/Components/ParticleProjectileComponent.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Timing;
namespace Content.Server.ParticleAccelerator.Components
{
[RegisterComponent]
- public class ParticleProjectileComponent : Component
+ public sealed class ParticleProjectileComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPartSystem.cs b/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPartSystem.cs
index 7505a783ba..e68f5e5470 100644
--- a/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPartSystem.cs
+++ b/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPartSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.ParticleAccelerator.EntitySystems
{
[UsedImplicitly]
- public class ParticleAcceleratorPartSystem : EntitySystem
+ public sealed class ParticleAcceleratorPartSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPowerBoxSystem.cs b/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPowerBoxSystem.cs
index f4af45d873..b71f010544 100644
--- a/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPowerBoxSystem.cs
+++ b/Content.Server/ParticleAccelerator/EntitySystems/ParticleAcceleratorPowerBoxSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.ParticleAccelerator.EntitySystems
{
[UsedImplicitly]
- public class ParticleAcceleratorPowerBoxSystem : EntitySystem
+ public sealed class ParticleAcceleratorPowerBoxSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Physics/Controllers/MoverController.cs b/Content.Server/Physics/Controllers/MoverController.cs
index 6298ebcfc6..5bde14ece8 100644
--- a/Content.Server/Physics/Controllers/MoverController.cs
+++ b/Content.Server/Physics/Controllers/MoverController.cs
@@ -23,7 +23,7 @@ using Robust.Shared.Utility;
namespace Content.Server.Physics.Controllers
{
- public class MoverController : SharedMoverController
+ public sealed class MoverController : SharedMoverController
{
[Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
diff --git a/Content.Server/Physics/Controllers/PullController.cs b/Content.Server/Physics/Controllers/PullController.cs
index 191a8279e2..341961acc8 100644
--- a/Content.Server/Physics/Controllers/PullController.cs
+++ b/Content.Server/Physics/Controllers/PullController.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Physics.Controllers;
namespace Content.Server.Physics.Controllers
{
- public class PullController : VirtualController
+ public sealed class PullController : VirtualController
{
// Parameterization for pulling:
// Speeds. Note that the speed is mass-independent (multiplied by mass).
diff --git a/Content.Server/Plants/Components/PottedPlantHideComponent.cs b/Content.Server/Plants/Components/PottedPlantHideComponent.cs
index 01a27f9fe5..0dd64c0e3f 100644
--- a/Content.Server/Plants/Components/PottedPlantHideComponent.cs
+++ b/Content.Server/Plants/Components/PottedPlantHideComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Plants.Components
///
[RegisterComponent]
[Friend(typeof(PottedPlantHideSystem))]
- public class PottedPlantHideComponent : Component
+ public sealed class PottedPlantHideComponent : Component
{
[DataField("rustleSound")]
public SoundSpecifier RustleSound = new SoundPathSpecifier("/Audio/Effects/plant_rustle.ogg");
diff --git a/Content.Server/Plants/Components/RandomPottedPlantComponent.cs b/Content.Server/Plants/Components/RandomPottedPlantComponent.cs
index dfb99378b9..5255938530 100644
--- a/Content.Server/Plants/Components/RandomPottedPlantComponent.cs
+++ b/Content.Server/Plants/Components/RandomPottedPlantComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Plants.Components
{
[RegisterComponent]
[Friend(typeof(RandomPottedPlantSystem))]
- public class RandomPottedPlantComponent : Component
+ public sealed class RandomPottedPlantComponent : Component
{
[ViewVariables(VVAccess.ReadOnly)]
[DataField("selected")]
diff --git a/Content.Server/Plants/Systems/PottedPlantHideSystem.cs b/Content.Server/Plants/Systems/PottedPlantHideSystem.cs
index 10dd5e5dbd..e2ecfa51e6 100644
--- a/Content.Server/Plants/Systems/PottedPlantHideSystem.cs
+++ b/Content.Server/Plants/Systems/PottedPlantHideSystem.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Player;
namespace Content.Server.Plants.Systems
{
- public class PottedPlantHideSystem : EntitySystem
+ public sealed class PottedPlantHideSystem : EntitySystem
{
[Dependency] private readonly SecretStashSystem _stashSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
diff --git a/Content.Server/Plants/Systems/RandomPottedPlantSystem.cs b/Content.Server/Plants/Systems/RandomPottedPlantSystem.cs
index 0c626073f9..227d93030d 100644
--- a/Content.Server/Plants/Systems/RandomPottedPlantSystem.cs
+++ b/Content.Server/Plants/Systems/RandomPottedPlantSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Random;
namespace Content.Server.Plants.Systems
{
- public class RandomPottedPlantSystem : EntitySystem
+ public sealed class RandomPottedPlantSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/PneumaticCannon/PneumaticCannonComponent.cs b/Content.Server/PneumaticCannon/PneumaticCannonComponent.cs
index bd32d69ca8..69cbe1b49a 100644
--- a/Content.Server/PneumaticCannon/PneumaticCannonComponent.cs
+++ b/Content.Server/PneumaticCannon/PneumaticCannonComponent.cs
@@ -14,7 +14,7 @@ namespace Content.Server.PneumaticCannon
// TODO: ideally, this and most of the actual firing code doesn't need to exist, and guns can be flexible enough
// to handle shooting things that aren't ammo (just firing any entity)
[RegisterComponent, Friend(typeof(PneumaticCannonSystem))]
- public class PneumaticCannonComponent : Component
+ public sealed class PneumaticCannonComponent : Component
{
[ViewVariables]
public ContainerSlot GasTankSlot = default!;
diff --git a/Content.Server/PneumaticCannon/PneumaticCannonSystem.cs b/Content.Server/PneumaticCannon/PneumaticCannonSystem.cs
index a5ded0841d..67cff1a7a5 100644
--- a/Content.Server/PneumaticCannon/PneumaticCannonSystem.cs
+++ b/Content.Server/PneumaticCannon/PneumaticCannonSystem.cs
@@ -29,7 +29,7 @@ using Robust.Shared.Random;
namespace Content.Server.PneumaticCannon
{
- public class PneumaticCannonSystem : EntitySystem
+ public sealed class PneumaticCannonSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly StunSystem _stun = default!;
diff --git a/Content.Server/Pointing/Components/RoguePointingArrowComponent.cs b/Content.Server/Pointing/Components/RoguePointingArrowComponent.cs
index 3c8b8914db..f0cda35540 100644
--- a/Content.Server/Pointing/Components/RoguePointingArrowComponent.cs
+++ b/Content.Server/Pointing/Components/RoguePointingArrowComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Pointing.Components
{
[RegisterComponent]
[Friend(typeof(RoguePointingSystem))]
- public class RoguePointingArrowComponent : SharedRoguePointingArrowComponent
+ public sealed class RoguePointingArrowComponent : SharedRoguePointingArrowComponent
{
[ViewVariables]
public EntityUid? Chasing;
diff --git a/Content.Server/Popups/PopupMsgCommand.cs b/Content.Server/Popups/PopupMsgCommand.cs
index 499522f4e5..76f25e76ab 100644
--- a/Content.Server/Popups/PopupMsgCommand.cs
+++ b/Content.Server/Popups/PopupMsgCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Popups
{
[AdminCommand(AdminFlags.Debug)]
- public class PopupMsgCommand : IConsoleCommand
+ public sealed class PopupMsgCommand : IConsoleCommand
{
public string Command => "srvpopupmsg";
public string Description => "";
diff --git a/Content.Server/Popups/PopupSystem.cs b/Content.Server/Popups/PopupSystem.cs
index 755b359255..b6c063a0e9 100644
--- a/Content.Server/Popups/PopupSystem.cs
+++ b/Content.Server/Popups/PopupSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Player;
namespace Content.Server.Popups
{
- public class PopupSystem : SharedPopupSystem
+ public sealed class PopupSystem : SharedPopupSystem
{
public override void PopupCursor(string message, Filter filter)
{
diff --git a/Content.Server/Power/Components/ActivatableUIRequiresPowerComponent.cs b/Content.Server/Power/Components/ActivatableUIRequiresPowerComponent.cs
index fd79dac8ea..4859cc92e0 100644
--- a/Content.Server/Power/Components/ActivatableUIRequiresPowerComponent.cs
+++ b/Content.Server/Power/Components/ActivatableUIRequiresPowerComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Power.Components
{
[RegisterComponent]
- public class ActivatableUIRequiresPowerComponent : Component
+ public sealed class ActivatableUIRequiresPowerComponent : Component
{
}
}
diff --git a/Content.Server/Power/Components/ApcComponent.cs b/Content.Server/Power/Components/ApcComponent.cs
index 064dddfb26..eba69f9e6a 100644
--- a/Content.Server/Power/Components/ApcComponent.cs
+++ b/Content.Server/Power/Components/ApcComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Power.Components;
[RegisterComponent]
[Friend(typeof(ApcSystem))]
-public class ApcComponent : BaseApcNetComponent
+public sealed class ApcComponent : BaseApcNetComponent
{
[DataField("onReceiveMessageSound")]
public SoundSpecifier OnReceiveMessageSound = new SoundPathSpecifier("/Audio/Machines/machine_switch.ogg");
diff --git a/Content.Server/Power/Components/ApcPowerProviderComponent.cs b/Content.Server/Power/Components/ApcPowerProviderComponent.cs
index bace38634b..5612272e07 100644
--- a/Content.Server/Power/Components/ApcPowerProviderComponent.cs
+++ b/Content.Server/Power/Components/ApcPowerProviderComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Power.Components
{
[RegisterComponent]
[ComponentProtoName("PowerProvider")]
- public class ApcPowerProviderComponent : BaseApcNetComponent
+ public sealed class ApcPowerProviderComponent : BaseApcNetComponent
{
[ViewVariables] public List LinkedReceivers { get; } = new();
diff --git a/Content.Server/Power/Components/ApcPowerReceiverComponent.cs b/Content.Server/Power/Components/ApcPowerReceiverComponent.cs
index 766983d32e..2c5a6d68c8 100644
--- a/Content.Server/Power/Components/ApcPowerReceiverComponent.cs
+++ b/Content.Server/Power/Components/ApcPowerReceiverComponent.cs
@@ -21,7 +21,7 @@ namespace Content.Server.Power.Components
///
[RegisterComponent]
#pragma warning disable 618
- public class ApcPowerReceiverComponent : Component, IExamine
+ public sealed class ApcPowerReceiverComponent : Component, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entMan = default!;
@@ -105,7 +105,7 @@ namespace Content.Server.Power.Components
}
#pragma warning disable 618
- public class PowerChangedMessage : ComponentMessage
+ public sealed class PowerChangedMessage : ComponentMessage
#pragma warning restore 618
{
public readonly bool Powered;
diff --git a/Content.Server/Power/Components/BatteryChargerComponent.cs b/Content.Server/Power/Components/BatteryChargerComponent.cs
index c0ffc0265b..951bd324de 100644
--- a/Content.Server/Power/Components/BatteryChargerComponent.cs
+++ b/Content.Server/Power/Components/BatteryChargerComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Power.Components
/// Connects the loading side of a to a non-APC power network.
///
[RegisterComponent]
- public class BatteryChargerComponent : BasePowerNetComponent
+ public sealed class BatteryChargerComponent : BasePowerNetComponent
{
protected override void AddSelfToNet(IPowerNet net)
{
diff --git a/Content.Server/Power/Components/BatteryComponent.cs b/Content.Server/Power/Components/BatteryComponent.cs
index dd319c85b7..03ea204a21 100644
--- a/Content.Server/Power/Components/BatteryComponent.cs
+++ b/Content.Server/Power/Components/BatteryComponent.cs
@@ -11,6 +11,7 @@ namespace Content.Server.Power.Components
/// Battery node on the pow3r network. Needs other components to connect to actual networks.
///
[RegisterComponent]
+ [Virtual]
public class BatteryComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Power/Components/BatteryDischargerComponent.cs b/Content.Server/Power/Components/BatteryDischargerComponent.cs
index 3ba6bba41a..2f69931935 100644
--- a/Content.Server/Power/Components/BatteryDischargerComponent.cs
+++ b/Content.Server/Power/Components/BatteryDischargerComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Power.Components
{
[RegisterComponent]
- public class BatteryDischargerComponent : BasePowerNetComponent
+ public sealed class BatteryDischargerComponent : BasePowerNetComponent
{
protected override void AddSelfToNet(IPowerNet net)
{
diff --git a/Content.Server/Power/Components/BatterySelfRechargerComponent.cs b/Content.Server/Power/Components/BatterySelfRechargerComponent.cs
index 0c004fc5cb..289f229adb 100644
--- a/Content.Server/Power/Components/BatterySelfRechargerComponent.cs
+++ b/Content.Server/Power/Components/BatterySelfRechargerComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Power.Components
/// Self-recharging battery.
///
[RegisterComponent]
- public class BatterySelfRechargerComponent : Component
+ public sealed class BatterySelfRechargerComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)] [DataField("autoRecharge")] public bool AutoRecharge { get; set; }
diff --git a/Content.Server/Power/Components/CableComponent.cs b/Content.Server/Power/Components/CableComponent.cs
index d82fbbfec7..d3e7c698b7 100644
--- a/Content.Server/Power/Components/CableComponent.cs
+++ b/Content.Server/Power/Components/CableComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Power.Components
///
[RegisterComponent]
[Friend(typeof(CableSystem))]
- public class CableComponent : Component
+ public sealed class CableComponent : Component
{
[DataField("cableDroppedOnCutPrototype", customTypeSerializer: typeof(PrototypeIdSerializer))]
public readonly string CableDroppedOnCutPrototype = "CableHVStack1";
diff --git a/Content.Server/Power/Components/ExaminableBatteryComponent.cs b/Content.Server/Power/Components/ExaminableBatteryComponent.cs
index 608b4f119a..466621d5ce 100644
--- a/Content.Server/Power/Components/ExaminableBatteryComponent.cs
+++ b/Content.Server/Power/Components/ExaminableBatteryComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Power.Components
{
[RegisterComponent]
#pragma warning disable 618
- public class ExaminableBatteryComponent : Component, IExamine
+ public sealed class ExaminableBatteryComponent : Component, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entityManager = default!;
diff --git a/Content.Server/Power/Components/ExtensionCableProviderComponent.cs b/Content.Server/Power/Components/ExtensionCableProviderComponent.cs
index 3595954b59..8c7201e3bd 100644
--- a/Content.Server/Power/Components/ExtensionCableProviderComponent.cs
+++ b/Content.Server/Power/Components/ExtensionCableProviderComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Power.Components
{
[RegisterComponent]
[Friend(typeof(ExtensionCableSystem))]
- public class ExtensionCableProviderComponent : Component
+ public sealed class ExtensionCableProviderComponent : Component
{
///
/// The max distance this can connect to s from.
diff --git a/Content.Server/Power/Components/ExtensionCableReceiverComponent.cs b/Content.Server/Power/Components/ExtensionCableReceiverComponent.cs
index d0ca505a21..13da517dc9 100644
--- a/Content.Server/Power/Components/ExtensionCableReceiverComponent.cs
+++ b/Content.Server/Power/Components/ExtensionCableReceiverComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Power.Components
{
[RegisterComponent]
[Friend(typeof(ExtensionCableSystem))]
- public class ExtensionCableReceiverComponent : Component
+ public sealed class ExtensionCableReceiverComponent : Component
{
[ViewVariables]
public ExtensionCableProviderComponent? Provider { get; set; }
diff --git a/Content.Server/Power/Components/PowerConsumerComponent.cs b/Content.Server/Power/Components/PowerConsumerComponent.cs
index a8b2d041b9..9d469680e4 100644
--- a/Content.Server/Power/Components/PowerConsumerComponent.cs
+++ b/Content.Server/Power/Components/PowerConsumerComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Power.Components
/// Draws power directly from an MV or HV wire it is on top of.
///
[RegisterComponent]
- public class PowerConsumerComponent : BaseNetConnectorComponent
+ public sealed class PowerConsumerComponent : BaseNetConnectorComponent
{
///
/// How much power this needs to be fully powered.
diff --git a/Content.Server/Power/Components/PowerSupplierComponent.cs b/Content.Server/Power/Components/PowerSupplierComponent.cs
index 21a82a6158..c26d04edf8 100644
--- a/Content.Server/Power/Components/PowerSupplierComponent.cs
+++ b/Content.Server/Power/Components/PowerSupplierComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Power.Components
{
[RegisterComponent]
- public class PowerSupplierComponent : BasePowerNetComponent
+ public sealed class PowerSupplierComponent : BasePowerNetComponent
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("supplyRate")]
diff --git a/Content.Server/Power/EntitySystems/BatterySystem.cs b/Content.Server/Power/EntitySystems/BatterySystem.cs
index 6a01fcc304..723e25a5bb 100644
--- a/Content.Server/Power/EntitySystems/BatterySystem.cs
+++ b/Content.Server/Power/EntitySystems/BatterySystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Power.EntitySystems
{
[UsedImplicitly]
- public class BatterySystem : EntitySystem
+ public sealed class BatterySystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Power/EntitySystems/CableSystem.cs b/Content.Server/Power/EntitySystems/CableSystem.cs
index 81e1e50f57..2540ee344f 100644
--- a/Content.Server/Power/EntitySystems/CableSystem.cs
+++ b/Content.Server/Power/EntitySystems/CableSystem.cs
@@ -65,7 +65,7 @@ public sealed partial class CableSystem : EntitySystem
}
}
-public class CuttingFinishedEvent : EntityEventArgs
+public sealed class CuttingFinishedEvent : EntityEventArgs
{
public EntityUid User;
diff --git a/Content.Server/Power/EntitySystems/ExtensionCableSystem.cs b/Content.Server/Power/EntitySystems/ExtensionCableSystem.cs
index 40dd699d07..4ba2075e62 100644
--- a/Content.Server/Power/EntitySystems/ExtensionCableSystem.cs
+++ b/Content.Server/Power/EntitySystems/ExtensionCableSystem.cs
@@ -260,7 +260,7 @@ namespace Content.Server.Power.EntitySystems
///
/// Sent when a connects to a
///
- public class ProviderConnectedEvent : EntityEventArgs
+ public sealed class ProviderConnectedEvent : EntityEventArgs
{
///
/// The that connected.
@@ -275,7 +275,7 @@ namespace Content.Server.Power.EntitySystems
///
/// Sent when a disconnects from a
///
- public class ProviderDisconnectedEvent : EntityEventArgs
+ public sealed class ProviderDisconnectedEvent : EntityEventArgs
{
///
/// The that disconnected.
@@ -290,7 +290,7 @@ namespace Content.Server.Power.EntitySystems
///
/// Sent when a connects to a
///
- public class ReceiverConnectedEvent : EntityEventArgs
+ public sealed class ReceiverConnectedEvent : EntityEventArgs
{
///
/// The that connected.
@@ -305,7 +305,7 @@ namespace Content.Server.Power.EntitySystems
///
/// Sent when a disconnects from a
///
- public class ReceiverDisconnectedEvent : EntityEventArgs
+ public sealed class ReceiverDisconnectedEvent : EntityEventArgs
{
///
/// The that disconnected.
diff --git a/Content.Server/Power/EntitySystems/PowerNetSystem.cs b/Content.Server/Power/EntitySystems/PowerNetSystem.cs
index db524d5ab8..0998c50922 100644
--- a/Content.Server/Power/EntitySystems/PowerNetSystem.cs
+++ b/Content.Server/Power/EntitySystems/PowerNetSystem.cs
@@ -17,7 +17,7 @@ namespace Content.Server.Power.EntitySystems
/// Manages power networks, power state, and all power components.
///
[UsedImplicitly]
- public class PowerNetSystem : EntitySystem
+ public sealed class PowerNetSystem : EntitySystem
{
private readonly PowerState _powerState = new();
private readonly HashSet _powerNetReconnectQueue = new();
diff --git a/Content.Server/Power/NodeGroups/ApcNet.cs b/Content.Server/Power/NodeGroups/ApcNet.cs
index 90b2c9a8a2..6cbfbdfeeb 100644
--- a/Content.Server/Power/NodeGroups/ApcNet.cs
+++ b/Content.Server/Power/NodeGroups/ApcNet.cs
@@ -31,7 +31,7 @@ namespace Content.Server.Power.NodeGroups
[NodeGroup(NodeGroupID.Apc)]
[UsedImplicitly]
- public class ApcNet : BaseNetConnectorNodeGroup, IApcNet
+ public sealed class ApcNet : BaseNetConnectorNodeGroup, IApcNet
{
private readonly PowerNetSystem _powerNetSystem = EntitySystem.Get();
diff --git a/Content.Server/Power/NodeGroups/PowerNet.cs b/Content.Server/Power/NodeGroups/PowerNet.cs
index 45c347b6b2..ef102ea152 100644
--- a/Content.Server/Power/NodeGroups/PowerNet.cs
+++ b/Content.Server/Power/NodeGroups/PowerNet.cs
@@ -30,7 +30,7 @@ namespace Content.Server.Power.NodeGroups
[NodeGroup(NodeGroupID.HVPower, NodeGroupID.MVPower)]
[UsedImplicitly]
- public class PowerNet : BaseNetConnectorNodeGroup, IPowerNet
+ public sealed class PowerNet : BaseNetConnectorNodeGroup, IPowerNet
{
private readonly PowerNetSystem _powerNetSystem = EntitySystem.Get();
diff --git a/Content.Server/Power/Nodes/CableDeviceNode.cs b/Content.Server/Power/Nodes/CableDeviceNode.cs
index e89e15761c..b9d880445d 100644
--- a/Content.Server/Power/Nodes/CableDeviceNode.cs
+++ b/Content.Server/Power/Nodes/CableDeviceNode.cs
@@ -11,6 +11,7 @@ namespace Content.Server.Power.Nodes
/// Type of node that connects to a below it.
///
[DataDefinition]
+ [Virtual]
public class CableDeviceNode : Node
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
diff --git a/Content.Server/Power/Nodes/CableNode.cs b/Content.Server/Power/Nodes/CableNode.cs
index 1d681b0dee..1b7d9fd8e1 100644
--- a/Content.Server/Power/Nodes/CableNode.cs
+++ b/Content.Server/Power/Nodes/CableNode.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Power.Nodes
{
[DataDefinition]
- public class CableNode : Node
+ public sealed class CableNode : Node
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/Power/Nodes/CableTerminalNode.cs b/Content.Server/Power/Nodes/CableTerminalNode.cs
index 1c2d138b5d..9a5adc015d 100644
--- a/Content.Server/Power/Nodes/CableTerminalNode.cs
+++ b/Content.Server/Power/Nodes/CableTerminalNode.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Power.Nodes
{
[DataDefinition]
- public class CableTerminalNode : CableDeviceNode
+ public sealed class CableTerminalNode : CableDeviceNode
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/Power/Nodes/CableTerminalPortNode.cs b/Content.Server/Power/Nodes/CableTerminalPortNode.cs
index ea8f44dc12..de5c36b0ea 100644
--- a/Content.Server/Power/Nodes/CableTerminalPortNode.cs
+++ b/Content.Server/Power/Nodes/CableTerminalPortNode.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Power.Nodes
{
[DataDefinition]
- public class CableTerminalPortNode : Node
+ public sealed class CableTerminalPortNode : Node
{
public override IEnumerable GetReachableNodes(TransformComponent xform,
EntityQuery nodeQuery,
diff --git a/Content.Server/Power/SMES/PowerSmesSystem.cs b/Content.Server/Power/SMES/PowerSmesSystem.cs
index 98c4b4541a..172553f764 100644
--- a/Content.Server/Power/SMES/PowerSmesSystem.cs
+++ b/Content.Server/Power/SMES/PowerSmesSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Power.SMES
{
[UsedImplicitly]
- internal class PowerSmesSystem : EntitySystem
+ internal sealed class PowerSmesSystem : EntitySystem
{
public override void Update(float frameTime)
{
diff --git a/Content.Server/Power/SMES/SmesComponent.cs b/Content.Server/Power/SMES/SmesComponent.cs
index f7c9e40c8a..cb15d41df7 100644
--- a/Content.Server/Power/SMES/SmesComponent.cs
+++ b/Content.Server/Power/SMES/SmesComponent.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Power.SMES
/// Code interfacing with the powernet is handled in and .
///
[RegisterComponent]
- public class SmesComponent : Component
+ public sealed class SmesComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IGameTiming _gameTiming = default!;
diff --git a/Content.Server/Power/SetBatteryPercentCommand.cs b/Content.Server/Power/SetBatteryPercentCommand.cs
index 908cc2e5cc..502cca3ca5 100644
--- a/Content.Server/Power/SetBatteryPercentCommand.cs
+++ b/Content.Server/Power/SetBatteryPercentCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Power
{
[AdminCommand(AdminFlags.Admin)]
- public class SetBatteryPercentCommand : IConsoleCommand
+ public sealed class SetBatteryPercentCommand : IConsoleCommand
{
public string Command => "setbatterypercent";
public string Description => "Drains or recharges a battery by entity uid and percentage, i.e.: forall with Battery do setbatterypercent $ID 0";
diff --git a/Content.Server/PowerCell/PowerCellSystem.cs b/Content.Server/PowerCell/PowerCellSystem.cs
index fc16785d70..dacbe9be0f 100644
--- a/Content.Server/PowerCell/PowerCellSystem.cs
+++ b/Content.Server/PowerCell/PowerCellSystem.cs
@@ -17,7 +17,7 @@ using Content.Server.Kitchen.Components;
namespace Content.Server.PowerCell;
-public class PowerCellSystem : SharedPowerCellSystem
+public sealed class PowerCellSystem : SharedPowerCellSystem
{
[Dependency] private readonly SolutionContainerSystem _solutionsSystem = default!;
[Dependency] private readonly ExplosionSystem _explosionSystem = default!;
diff --git a/Content.Server/Preferences/Managers/ServerPreferencesManager.cs b/Content.Server/Preferences/Managers/ServerPreferencesManager.cs
index 44041577e8..0a51db7359 100644
--- a/Content.Server/Preferences/Managers/ServerPreferencesManager.cs
+++ b/Content.Server/Preferences/Managers/ServerPreferencesManager.cs
@@ -23,7 +23,7 @@ namespace Content.Server.Preferences.Managers
/// Sends before the client joins the lobby.
/// Receives and at any time.
///
- public class ServerPreferencesManager : IServerPreferencesManager
+ public sealed class ServerPreferencesManager : IServerPreferencesManager
{
[Dependency] private readonly IServerNetManager _netManager = default!;
[Dependency] private readonly IConfigurationManager _cfg = default!;
diff --git a/Content.Server/Projectiles/Components/HitscanComponent.cs b/Content.Server/Projectiles/Components/HitscanComponent.cs
index a931f640b9..3255bf4d22 100644
--- a/Content.Server/Projectiles/Components/HitscanComponent.cs
+++ b/Content.Server/Projectiles/Components/HitscanComponent.cs
@@ -19,7 +19,7 @@ namespace Content.Server.Projectiles.Components
/// Lasers etc.
///
[RegisterComponent]
- public class HitscanComponent : Component
+ public sealed class HitscanComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IGameTiming _gameTiming = default!;
diff --git a/Content.Server/Projectiles/Components/ProjectileComponent.cs b/Content.Server/Projectiles/Components/ProjectileComponent.cs
index 24f9555182..58ce7c0198 100644
--- a/Content.Server/Projectiles/Components/ProjectileComponent.cs
+++ b/Content.Server/Projectiles/Components/ProjectileComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Projectiles.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedProjectileComponent))]
- public class ProjectileComponent : SharedProjectileComponent
+ public sealed class ProjectileComponent : SharedProjectileComponent
{
[DataField("damage", required: true)]
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Pulling/PullingSystem.cs b/Content.Server/Pulling/PullingSystem.cs
index 7cb76f9d24..f7ea0aae57 100644
--- a/Content.Server/Pulling/PullingSystem.cs
+++ b/Content.Server/Pulling/PullingSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Players;
namespace Content.Server.Pulling
{
[UsedImplicitly]
- public class PullingSystem : SharedPullingSystem
+ public sealed class PullingSystem : SharedPullingSystem
{
public override void Initialize()
{
diff --git a/Content.Server/RCD/Components/RCDAmmoComponent.cs b/Content.Server/RCD/Components/RCDAmmoComponent.cs
index 9c9c0a4b59..c7021819cd 100644
--- a/Content.Server/RCD/Components/RCDAmmoComponent.cs
+++ b/Content.Server/RCD/Components/RCDAmmoComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.RCD.Components
{
[RegisterComponent]
- public class RCDAmmoComponent : Component
+ public sealed class RCDAmmoComponent : Component
{
//How much ammo we refill
[ViewVariables(VVAccess.ReadWrite)] [DataField("refillAmmo")] public int RefillAmmo = 5;
diff --git a/Content.Server/RCD/Components/RCDComponent.cs b/Content.Server/RCD/Components/RCDComponent.cs
index dd80c517fe..5e99b33766 100644
--- a/Content.Server/RCD/Components/RCDComponent.cs
+++ b/Content.Server/RCD/Components/RCDComponent.cs
@@ -14,7 +14,7 @@ namespace Content.Server.RCD.Components
}
[RegisterComponent]
- public class RCDComponent : Component
+ public sealed class RCDComponent : Component
{
[ViewVariables(VVAccess.ReadOnly)]
[DataField("maxAmmo")] public int MaxAmmo = 5;
diff --git a/Content.Server/RCD/Systems/RCDAmmoSystem.cs b/Content.Server/RCD/Systems/RCDAmmoSystem.cs
index d88754c105..943bef3b23 100644
--- a/Content.Server/RCD/Systems/RCDAmmoSystem.cs
+++ b/Content.Server/RCD/Systems/RCDAmmoSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Localization;
namespace Content.Server.RCD.Systems
{
- public class RCDAmmoSystem : EntitySystem
+ public sealed class RCDAmmoSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/RCD/Systems/RCDSystem.cs b/Content.Server/RCD/Systems/RCDSystem.cs
index 8c98ff2b39..31026bca73 100644
--- a/Content.Server/RCD/Systems/RCDSystem.cs
+++ b/Content.Server/RCD/Systems/RCDSystem.cs
@@ -19,7 +19,7 @@ using Robust.Shared.Player;
namespace Content.Server.RCD.Systems
{
- public class RCDSystem : EntitySystem
+ public sealed class RCDSystem : EntitySystem
{
[Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
diff --git a/Content.Server/Radar/RadarConsoleComponent.cs b/Content.Server/Radar/RadarConsoleComponent.cs
index 747c53ec1d..8d0b6297bb 100644
--- a/Content.Server/Radar/RadarConsoleComponent.cs
+++ b/Content.Server/Radar/RadarConsoleComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Radar;
[RegisterComponent]
-public class RadarConsoleComponent : Component
+public sealed class RadarConsoleComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("range")]
diff --git a/Content.Server/Radar/RadarConsoleSystem.cs b/Content.Server/Radar/RadarConsoleSystem.cs
index 5603ef02db..c146508fe3 100644
--- a/Content.Server/Radar/RadarConsoleSystem.cs
+++ b/Content.Server/Radar/RadarConsoleSystem.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Maths;
namespace Content.Server.Radar;
-public class RadarConsoleSystem : EntitySystem
+public sealed class RadarConsoleSystem : EntitySystem
{
[Dependency] private readonly IMapManager _mapManager = default!;
diff --git a/Content.Server/Radio/Components/HandheldRadioComponent.cs b/Content.Server/Radio/Components/HandheldRadioComponent.cs
index c2f417c004..4818e1c5b0 100644
--- a/Content.Server/Radio/Components/HandheldRadioComponent.cs
+++ b/Content.Server/Radio/Components/HandheldRadioComponent.cs
@@ -20,7 +20,7 @@ namespace Content.Server.Radio.Components
[ComponentReference(typeof(IListen))]
[ComponentReference(typeof(IActivate))]
#pragma warning disable 618
- public class HandheldRadioComponent : Component, IListen, IRadio, IActivate, IExamine
+ public sealed class HandheldRadioComponent : Component, IListen, IRadio, IActivate, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IChatManager _chatManager = default!;
diff --git a/Content.Server/Radio/EntitySystems/ListeningSystem.cs b/Content.Server/Radio/EntitySystems/ListeningSystem.cs
index 1c4b2b5763..6f9200101b 100644
--- a/Content.Server/Radio/EntitySystems/ListeningSystem.cs
+++ b/Content.Server/Radio/EntitySystems/ListeningSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Radio.EntitySystems
{
[UsedImplicitly]
- public class ListeningSystem : EntitySystem
+ public sealed class ListeningSystem : EntitySystem
{
public void PingListeners(EntityUid source, string message)
{
diff --git a/Content.Server/Radio/EntitySystems/RadioSystem.cs b/Content.Server/Radio/EntitySystems/RadioSystem.cs
index 350590f6a4..872f2e2086 100644
--- a/Content.Server/Radio/EntitySystems/RadioSystem.cs
+++ b/Content.Server/Radio/EntitySystems/RadioSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Radio.EntitySystems
{
[UsedImplicitly]
- public class RadioSystem : EntitySystem
+ public sealed class RadioSystem : EntitySystem
{
private readonly List _messages = new();
diff --git a/Content.Server/RandomAppearance/RandomAppearanceComponent.cs b/Content.Server/RandomAppearance/RandomAppearanceComponent.cs
index 78454df421..c40c1e8092 100644
--- a/Content.Server/RandomAppearance/RandomAppearanceComponent.cs
+++ b/Content.Server/RandomAppearance/RandomAppearanceComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.RandomAppearance;
[RegisterComponent]
[Friend(typeof(RandomAppearanceSystem))]
-public class RandomAppearanceComponent : Component, ISerializationHooks
+public sealed class RandomAppearanceComponent : Component, ISerializationHooks
{
[DataField("spriteStates")]
public string[] SpriteStates = {"0", "1", "2", "3", "4"};
diff --git a/Content.Server/RandomAppearance/RandomAppearanceSystem.cs b/Content.Server/RandomAppearance/RandomAppearanceSystem.cs
index 1fa8b94958..dec6923ad9 100644
--- a/Content.Server/RandomAppearance/RandomAppearanceSystem.cs
+++ b/Content.Server/RandomAppearance/RandomAppearanceSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Reflection;
namespace Content.Server.RandomAppearance;
-public class RandomAppearanceSystem : EntitySystem
+public sealed class RandomAppearanceSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Recycling/Components/RecyclableComponent.cs b/Content.Server/Recycling/Components/RecyclableComponent.cs
index a4adfe77bf..e94792b1d2 100644
--- a/Content.Server/Recycling/Components/RecyclableComponent.cs
+++ b/Content.Server/Recycling/Components/RecyclableComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Recycling.Components
{
[RegisterComponent]
- public class RecyclableComponent : Component
+ public sealed class RecyclableComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Recycling/Components/RecyclerComponent.cs b/Content.Server/Recycling/Components/RecyclerComponent.cs
index 63c44bc215..c2349f0e77 100644
--- a/Content.Server/Recycling/Components/RecyclerComponent.cs
+++ b/Content.Server/Recycling/Components/RecyclerComponent.cs
@@ -19,7 +19,7 @@ namespace Content.Server.Recycling.Components
// TODO: Add sound and safe beep
[RegisterComponent]
[Friend(typeof(RecyclerSystem))]
- public class RecyclerComponent : Component, ISuicideAct
+ public sealed class RecyclerComponent : Component, ISuicideAct
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Remotes/DoorRemoteComponent.cs b/Content.Server/Remotes/DoorRemoteComponent.cs
index b39781efff..414ee9521a 100644
--- a/Content.Server/Remotes/DoorRemoteComponent.cs
+++ b/Content.Server/Remotes/DoorRemoteComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Remotes
{
[RegisterComponent]
[Friend(typeof(DoorRemoteSystem))]
- public class DoorRemoteComponent : Component
+ public sealed class DoorRemoteComponent : Component
{
public override string Name => "DoorRemote";
diff --git a/Content.Server/Repairable/RepairableComponent.cs b/Content.Server/Repairable/RepairableComponent.cs
index 3ebc461189..d47fa64155 100644
--- a/Content.Server/Repairable/RepairableComponent.cs
+++ b/Content.Server/Repairable/RepairableComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Repairable
{
[RegisterComponent]
- public class RepairableComponent : Component
+ public sealed class RepairableComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)] [DataField("fuelCost")]
public int FuelCost = 5;
diff --git a/Content.Server/Repairable/RepairableSystem.cs b/Content.Server/Repairable/RepairableSystem.cs
index e6c4b55b7d..eded66f5da 100644
--- a/Content.Server/Repairable/RepairableSystem.cs
+++ b/Content.Server/Repairable/RepairableSystem.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Repairable
{
- public class RepairableSystem : EntitySystem
+ public sealed class RepairableSystem : EntitySystem
{
[Dependency] private readonly ToolSystem _toolSystem = default!;
[Dependency] private readonly DamageableSystem _damageableSystem = default!;
diff --git a/Content.Server/Research/Components/ResearchClientComponent.cs b/Content.Server/Research/Components/ResearchClientComponent.cs
index 376725c5ec..44c8ce1130 100644
--- a/Content.Server/Research/Components/ResearchClientComponent.cs
+++ b/Content.Server/Research/Components/ResearchClientComponent.cs
@@ -10,6 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Research.Components
{
[RegisterComponent]
+ [Virtual]
public class ResearchClientComponent : SharedResearchClientComponent, IActivate
{
[Dependency] private readonly IEntitySystemManager _entitySystemManager = default!;
diff --git a/Content.Server/Research/Components/ResearchConsoleComponent.cs b/Content.Server/Research/Components/ResearchConsoleComponent.cs
index ef9c6a35b8..d9fb09ea1e 100644
--- a/Content.Server/Research/Components/ResearchConsoleComponent.cs
+++ b/Content.Server/Research/Components/ResearchConsoleComponent.cs
@@ -20,7 +20,7 @@ namespace Content.Server.Research.Components
{
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
- public class ResearchConsoleComponent : SharedResearchConsoleComponent, IActivate
+ public sealed class ResearchConsoleComponent : SharedResearchConsoleComponent, IActivate
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Server/Research/Components/ResearchPointSourceComponent.cs b/Content.Server/Research/Components/ResearchPointSourceComponent.cs
index 725f8b1fe8..8d1dbf64d8 100644
--- a/Content.Server/Research/Components/ResearchPointSourceComponent.cs
+++ b/Content.Server/Research/Components/ResearchPointSourceComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Research.Components
{
[RegisterComponent]
[ComponentReference(typeof(IActivate))]
- public class ResearchPointSourceComponent : ResearchClientComponent
+ public sealed class ResearchPointSourceComponent : ResearchClientComponent
{
[DataField("pointspersecond")]
private int _pointsPerSecond;
diff --git a/Content.Server/Research/Components/ResearchServerComponent.cs b/Content.Server/Research/Components/ResearchServerComponent.cs
index 8d1a84ef19..bd89a6e3fd 100644
--- a/Content.Server/Research/Components/ResearchServerComponent.cs
+++ b/Content.Server/Research/Components/ResearchServerComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Research.Components
{
[RegisterComponent]
- public class ResearchServerComponent : Component
+ public sealed class ResearchServerComponent : Component
{
public static int ServerCount = 0;
diff --git a/Content.Server/Research/Components/TechnologyDatabaseComponent.cs b/Content.Server/Research/Components/TechnologyDatabaseComponent.cs
index 00ac1ad2e6..327a4199fd 100644
--- a/Content.Server/Research/Components/TechnologyDatabaseComponent.cs
+++ b/Content.Server/Research/Components/TechnologyDatabaseComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Players;
namespace Content.Server.Research.Components
{
[RegisterComponent]
- public class TechnologyDatabaseComponent : SharedTechnologyDatabaseComponent
+ public sealed class TechnologyDatabaseComponent : SharedTechnologyDatabaseComponent
{
public override ComponentState GetComponentState()
{
diff --git a/Content.Server/Research/ResearchSystem.cs b/Content.Server/Research/ResearchSystem.cs
index dc263dcf0a..e742f91a85 100644
--- a/Content.Server/Research/ResearchSystem.cs
+++ b/Content.Server/Research/ResearchSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Research
{
[UsedImplicitly]
- public class ResearchSystem : EntitySystem
+ public sealed class ResearchSystem : EntitySystem
{
private const float ResearchConsoleUIUpdateTime = 30f;
diff --git a/Content.Server/Resist/ResistLockerComponent.cs b/Content.Server/Resist/ResistLockerComponent.cs
index 0d2d094948..93d005c414 100644
--- a/Content.Server/Resist/ResistLockerComponent.cs
+++ b/Content.Server/Resist/ResistLockerComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Resist;
[RegisterComponent]
[Friend(typeof(ResistLockerSystem))]
-public class ResistLockerComponent : Component
+public sealed class ResistLockerComponent : Component
{
///
/// How long will this locker take to kick open, defaults to 2 minutes
diff --git a/Content.Server/Resist/ResistLockerSystem.cs b/Content.Server/Resist/ResistLockerSystem.cs
index b1cfc382ed..738dd3ecb7 100644
--- a/Content.Server/Resist/ResistLockerSystem.cs
+++ b/Content.Server/Resist/ResistLockerSystem.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Resist;
-public class ResistLockerSystem : EntitySystem
+public sealed class ResistLockerSystem : EntitySystem
{
[Dependency] private readonly DoAfterSystem _doAfterSystem = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
@@ -90,8 +90,8 @@ public class ResistLockerSystem : EntitySystem
{
component.CancelToken?.Cancel();
}
-
- private class ResistDoAfterComplete : EntityEventArgs
+
+ private sealed class ResistDoAfterComplete : EntityEventArgs
{
public readonly EntityUid User;
public readonly EntityUid Target;
@@ -102,7 +102,7 @@ public class ResistLockerSystem : EntitySystem
}
}
- private class ResistDoAfterCancelled : EntityEventArgs
+ private sealed class ResistDoAfterCancelled : EntityEventArgs
{
public readonly EntityUid User;
diff --git a/Content.Server/Roles/AddRoleCommand.cs b/Content.Server/Roles/AddRoleCommand.cs
index 1df153ec8a..af332da2bb 100644
--- a/Content.Server/Roles/AddRoleCommand.cs
+++ b/Content.Server/Roles/AddRoleCommand.cs
@@ -11,7 +11,7 @@ using System.Linq;
namespace Content.Server.Roles
{
[AdminCommand(AdminFlags.Fun)]
- public class AddRoleCommand : IConsoleCommand
+ public sealed class AddRoleCommand : IConsoleCommand
{
public string Command => "addrole";
diff --git a/Content.Server/Roles/Job.cs b/Content.Server/Roles/Job.cs
index c94ca22258..dbb6f87a89 100644
--- a/Content.Server/Roles/Job.cs
+++ b/Content.Server/Roles/Job.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Roles
{
- public class Job : Role
+ public sealed class Job : Role
{
[ViewVariables]
public JobPrototype Prototype { get; }
diff --git a/Content.Server/Roles/ListRolesCommand.cs b/Content.Server/Roles/ListRolesCommand.cs
index cc05849b8d..b670c0ceba 100644
--- a/Content.Server/Roles/ListRolesCommand.cs
+++ b/Content.Server/Roles/ListRolesCommand.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.Roles
{
[AdminCommand(AdminFlags.Fun)]
- public class ListRolesCommand : IConsoleCommand
+ public sealed class ListRolesCommand : IConsoleCommand
{
public string Command => "listroles";
diff --git a/Content.Server/Roles/RemoveRoleCommand.cs b/Content.Server/Roles/RemoveRoleCommand.cs
index baf0edb542..5593338373 100644
--- a/Content.Server/Roles/RemoveRoleCommand.cs
+++ b/Content.Server/Roles/RemoveRoleCommand.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.Roles
{
[AdminCommand(AdminFlags.Fun)]
- public class RemoveRoleCommand : IConsoleCommand
+ public sealed class RemoveRoleCommand : IConsoleCommand
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Server/Roles/RoleEvent.cs b/Content.Server/Roles/RoleEvent.cs
index dbddcc5ba4..eecae93e59 100644
--- a/Content.Server/Roles/RoleEvent.cs
+++ b/Content.Server/Roles/RoleEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Server.Roles
{
- public class RoleEvent : EntityEventArgs
+ public abstract class RoleEvent : EntityEventArgs
{
public readonly Role Role;
diff --git a/Content.Server/Rotatable/FlippableComponent.cs b/Content.Server/Rotatable/FlippableComponent.cs
index 89e822948a..1f64e11781 100644
--- a/Content.Server/Rotatable/FlippableComponent.cs
+++ b/Content.Server/Rotatable/FlippableComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Rotatable
{
[RegisterComponent]
- public class FlippableComponent : Component
+ public sealed class FlippableComponent : Component
{
///
/// Entity to replace this entity with when the current one is 'flipped'.
diff --git a/Content.Server/Rotatable/RotatableSystem.cs b/Content.Server/Rotatable/RotatableSystem.cs
index 0d47e75adb..73217da106 100644
--- a/Content.Server/Rotatable/RotatableSystem.cs
+++ b/Content.Server/Rotatable/RotatableSystem.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Rotatable
///
/// Handles verbs for the and components.
///
- public class RotatableSystem : EntitySystem
+ public sealed class RotatableSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/RoundEnd/RoundEndSystem.cs b/Content.Server/RoundEnd/RoundEndSystem.cs
index 44cf1018d1..7a17e0e4df 100644
--- a/Content.Server/RoundEnd/RoundEndSystem.cs
+++ b/Content.Server/RoundEnd/RoundEndSystem.cs
@@ -15,7 +15,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.RoundEnd
{
- public class RoundEndSystem : EntitySystem
+ public sealed class RoundEndSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly IChatManager _chatManager = default!;
@@ -154,7 +154,7 @@ namespace Content.Server.RoundEnd
}
}
- public class RoundEndSystemChangedEvent : EntityEventArgs
+ public sealed class RoundEndSystemChangedEvent : EntityEventArgs
{
public static RoundEndSystemChangedEvent Default { get; } = new();
}
diff --git a/Content.Server/Salvage/SalvageMagnetComponent.cs b/Content.Server/Salvage/SalvageMagnetComponent.cs
index ff9cb037e3..1be09ed49b 100644
--- a/Content.Server/Salvage/SalvageMagnetComponent.cs
+++ b/Content.Server/Salvage/SalvageMagnetComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Salvage
/// A salvage magnet.
///
[RegisterComponent]
- public class SalvageMagnetComponent : Component
+ public sealed class SalvageMagnetComponent : Component
{
///
/// Offset relative to magnet that salvage should spawn.
diff --git a/Content.Server/Salvage/SalvageMapPrototype.cs b/Content.Server/Salvage/SalvageMapPrototype.cs
index 07a583ee59..3c7661c395 100644
--- a/Content.Server/Salvage/SalvageMapPrototype.cs
+++ b/Content.Server/Salvage/SalvageMapPrototype.cs
@@ -10,7 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Salvage
{
[Prototype("salvageMap")]
- public class SalvageMapPrototype : IPrototype
+ public sealed class SalvageMapPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Server/Salvage/SalvageSystem.cs b/Content.Server/Salvage/SalvageSystem.cs
index 292ae4774c..37bd56f57e 100644
--- a/Content.Server/Salvage/SalvageSystem.cs
+++ b/Content.Server/Salvage/SalvageSystem.cs
@@ -24,7 +24,7 @@ using System.Linq;
namespace Content.Server.Salvage
{
- public class SalvageSystem : EntitySystem
+ public sealed class SalvageSystem : EntitySystem
{
[Dependency] private readonly IChatManager _chatManager = default!;
[Dependency] private readonly IPauseManager _pauseManager = default!;
@@ -368,7 +368,7 @@ namespace Content.Server.Salvage
}
}
- public class SalvageGridState
+ public sealed class SalvageGridState
{
public TimeSpan CurrentTime { get; set; }
public List ActiveMagnets { get; } = new();
diff --git a/Content.Server/Sandbox/Commands/ColorNetworkCommand.cs b/Content.Server/Sandbox/Commands/ColorNetworkCommand.cs
index 80d511a27a..d2ed7290fe 100644
--- a/Content.Server/Sandbox/Commands/ColorNetworkCommand.cs
+++ b/Content.Server/Sandbox/Commands/ColorNetworkCommand.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Maths;
namespace Content.Server.Sandbox.Commands
{
[AnyCommand]
- public class ColorNetworkCommand : IConsoleCommand
+ public sealed class ColorNetworkCommand : IConsoleCommand
{
public string Command => "colornetwork";
public string Description => Loc.GetString("color-network-command-description");
diff --git a/Content.Server/Security/Components/DeployableBarrierComponent.cs b/Content.Server/Security/Components/DeployableBarrierComponent.cs
index c54458213e..4c9dab2bc4 100644
--- a/Content.Server/Security/Components/DeployableBarrierComponent.cs
+++ b/Content.Server/Security/Components/DeployableBarrierComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Security
{
[RegisterComponent]
- public class DeployableBarrierComponent : Component
+ public sealed class DeployableBarrierComponent : Component
{
}
}
diff --git a/Content.Server/Security/Systems/DeployableBarrierSystem.cs b/Content.Server/Security/Systems/DeployableBarrierSystem.cs
index 2420b66f91..941e108bf3 100644
--- a/Content.Server/Security/Systems/DeployableBarrierSystem.cs
+++ b/Content.Server/Security/Systems/DeployableBarrierSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Security.Systems
{
- public class DeployableBarrierSystem : EntitySystem
+ public sealed class DeployableBarrierSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Singularity/Components/ContainmentFieldComponent.cs b/Content.Server/Singularity/Components/ContainmentFieldComponent.cs
index 8d6dc682fe..3b4b2a47c5 100644
--- a/Content.Server/Singularity/Components/ContainmentFieldComponent.cs
+++ b/Content.Server/Singularity/Components/ContainmentFieldComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Singularity.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedContainmentFieldComponent))]
- public class ContainmentFieldComponent : SharedContainmentFieldComponent
+ public sealed class ContainmentFieldComponent : SharedContainmentFieldComponent
{
public ContainmentFieldConnection? Parent;
}
diff --git a/Content.Server/Singularity/Components/ContainmentFieldConnection.cs b/Content.Server/Singularity/Components/ContainmentFieldConnection.cs
index f2f6a26eae..8e9a024598 100644
--- a/Content.Server/Singularity/Components/ContainmentFieldConnection.cs
+++ b/Content.Server/Singularity/Components/ContainmentFieldConnection.cs
@@ -9,7 +9,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.Singularity.Components
{
- public class ContainmentFieldConnection : IDisposable
+ public sealed class ContainmentFieldConnection : IDisposable
{
public readonly ContainmentFieldGeneratorComponent Generator1;
public readonly ContainmentFieldGeneratorComponent Generator2;
diff --git a/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs b/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs
index 3a02cc6d4d..7f7e040b9c 100644
--- a/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs
+++ b/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Singularity.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedContainmentFieldGeneratorComponent))]
- public class ContainmentFieldGeneratorComponent : SharedContainmentFieldGeneratorComponent
+ public sealed class ContainmentFieldGeneratorComponent : SharedContainmentFieldGeneratorComponent
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Singularity/Components/EmitterComponent.cs b/Content.Server/Singularity/Components/EmitterComponent.cs
index 09d68fa92f..95c3c8bcf6 100644
--- a/Content.Server/Singularity/Components/EmitterComponent.cs
+++ b/Content.Server/Singularity/Components/EmitterComponent.cs
@@ -11,7 +11,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Singularity.Components
{
[RegisterComponent]
- public class EmitterComponent : Component
+ public sealed class EmitterComponent : Component
{
public CancellationTokenSource? TimerCancel;
diff --git a/Content.Server/Singularity/Components/RadiationCollectorComponent.cs b/Content.Server/Singularity/Components/RadiationCollectorComponent.cs
index 623ecf226c..c9e28a8c02 100644
--- a/Content.Server/Singularity/Components/RadiationCollectorComponent.cs
+++ b/Content.Server/Singularity/Components/RadiationCollectorComponent.cs
@@ -13,7 +13,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Singularity.Components
{
[RegisterComponent]
- public class RadiationCollectorComponent : Component, IInteractHand, IRadiationAct
+ public sealed class RadiationCollectorComponent : Component, IInteractHand, IRadiationAct
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Singularity/Components/ServerSingularityComponent.cs b/Content.Server/Singularity/Components/ServerSingularityComponent.cs
index 1fa0a855bf..81a7b0e496 100644
--- a/Content.Server/Singularity/Components/ServerSingularityComponent.cs
+++ b/Content.Server/Singularity/Components/ServerSingularityComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Singularity.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedSingularityComponent))]
- public class ServerSingularityComponent : SharedSingularityComponent
+ public sealed class ServerSingularityComponent : SharedSingularityComponent
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Singularity/Components/SingularityGenerator.cs b/Content.Server/Singularity/Components/SingularityGenerator.cs
index b7d7853ccc..c01f1a8dde 100644
--- a/Content.Server/Singularity/Components/SingularityGenerator.cs
+++ b/Content.Server/Singularity/Components/SingularityGenerator.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Singularity.Components
{
[RegisterComponent]
- public class SingularityGeneratorComponent : Component
+ public sealed class SingularityGeneratorComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Singularity/Components/SinguloFoodComponent.cs b/Content.Server/Singularity/Components/SinguloFoodComponent.cs
index 0723b6bb89..e10294e064 100644
--- a/Content.Server/Singularity/Components/SinguloFoodComponent.cs
+++ b/Content.Server/Singularity/Components/SinguloFoodComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Singularity.Components
/// Overrides exactly how much energy this object gives to a singularity.
///
[RegisterComponent]
- public class SinguloFoodComponent : Component
+ public sealed class SinguloFoodComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("energy")]
diff --git a/Content.Server/Singularity/EntitySystems/EmitterSystem.cs b/Content.Server/Singularity/EntitySystems/EmitterSystem.cs
index 62536da68f..7e663a6691 100644
--- a/Content.Server/Singularity/EntitySystems/EmitterSystem.cs
+++ b/Content.Server/Singularity/EntitySystems/EmitterSystem.cs
@@ -27,7 +27,7 @@ using Timer = Robust.Shared.Timing.Timer;
namespace Content.Server.Singularity.EntitySystems
{
[UsedImplicitly]
- public class EmitterSystem : EntitySystem
+ public sealed class EmitterSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly AdminLogSystem _adminLog = default!;
diff --git a/Content.Server/Singularity/StartSingularityEngineCommand.cs b/Content.Server/Singularity/StartSingularityEngineCommand.cs
index b683cae410..041301c192 100644
--- a/Content.Server/Singularity/StartSingularityEngineCommand.cs
+++ b/Content.Server/Singularity/StartSingularityEngineCommand.cs
@@ -11,7 +11,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Singularity
{
[AdminCommand(AdminFlags.Admin)]
- public class StartSingularityEngineCommand : IConsoleCommand
+ public sealed class StartSingularityEngineCommand : IConsoleCommand
{
public string Command => "startsingularityengine";
public string Description => "Automatically turns on the particle accelerator and containment field emitters.";
diff --git a/Content.Server/Solar/Components/SolarControlConsoleComponent.cs b/Content.Server/Solar/Components/SolarControlConsoleComponent.cs
index f294642108..f84dcc6e4f 100644
--- a/Content.Server/Solar/Components/SolarControlConsoleComponent.cs
+++ b/Content.Server/Solar/Components/SolarControlConsoleComponent.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Maths;
namespace Content.Server.Solar.Components
{
[RegisterComponent]
- public class SolarControlConsoleComponent : Component
+ public sealed class SolarControlConsoleComponent : Component
{
}
}
diff --git a/Content.Server/Solar/Components/SolarPanelComponent.cs b/Content.Server/Solar/Components/SolarPanelComponent.cs
index 75a77a3472..9823914afb 100644
--- a/Content.Server/Solar/Components/SolarPanelComponent.cs
+++ b/Content.Server/Solar/Components/SolarPanelComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Server.Solar.Components
///
[RegisterComponent]
[Friend(typeof(PowerSolarSystem))]
- public class SolarPanelComponent : Component
+ public sealed class SolarPanelComponent : Component
{
///
/// Maximum supply output by this panel (coverage = 1)
diff --git a/Content.Server/Sound/Components/EmitSoundOnActivateComponent.cs b/Content.Server/Sound/Components/EmitSoundOnActivateComponent.cs
index 439f65cc34..b86a10f4ff 100644
--- a/Content.Server/Sound/Components/EmitSoundOnActivateComponent.cs
+++ b/Content.Server/Sound/Components/EmitSoundOnActivateComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Sound.Components
/// Simple sound emitter that emits sound on ActivateInWorld
///
[RegisterComponent]
- public class EmitSoundOnActivateComponent : BaseEmitSoundComponent
+ public sealed class EmitSoundOnActivateComponent : BaseEmitSoundComponent
{
}
}
diff --git a/Content.Server/Sound/Components/EmitSoundOnLandComponent.cs b/Content.Server/Sound/Components/EmitSoundOnLandComponent.cs
index b97a837d16..dd156b6d1b 100644
--- a/Content.Server/Sound/Components/EmitSoundOnLandComponent.cs
+++ b/Content.Server/Sound/Components/EmitSoundOnLandComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Sound.Components
/// Simple sound emitter that emits sound on LandEvent
///
[RegisterComponent]
- public class EmitSoundOnLandComponent : BaseEmitSoundComponent
+ public sealed class EmitSoundOnLandComponent : BaseEmitSoundComponent
{
}
}
diff --git a/Content.Server/Sound/EmitSoundSystem.cs b/Content.Server/Sound/EmitSoundSystem.cs
index 980245a281..0bab9c2326 100644
--- a/Content.Server/Sound/EmitSoundSystem.cs
+++ b/Content.Server/Sound/EmitSoundSystem.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Sound
/// Will play a sound on various events if the affected entity has a component derived from BaseEmitSoundComponent
///
[UsedImplicitly]
- public class EmitSoundSystem : EntitySystem
+ public sealed class EmitSoundSystem : EntitySystem
{
///
public override void Initialize()
diff --git a/Content.Server/Spawners/Components/ConditionalSpawnerComponent.cs b/Content.Server/Spawners/Components/ConditionalSpawnerComponent.cs
index 9fce84395c..b15c76c9cb 100644
--- a/Content.Server/Spawners/Components/ConditionalSpawnerComponent.cs
+++ b/Content.Server/Spawners/Components/ConditionalSpawnerComponent.cs
@@ -9,6 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Spawners.Components
{
[RegisterComponent]
+ [Virtual]
public class ConditionalSpawnerComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Spawners/Components/RandomSpawnerComponent.cs b/Content.Server/Spawners/Components/RandomSpawnerComponent.cs
index 11facff804..0f27ace2aa 100644
--- a/Content.Server/Spawners/Components/RandomSpawnerComponent.cs
+++ b/Content.Server/Spawners/Components/RandomSpawnerComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Spawners.Components
{
[RegisterComponent]
- public class RandomSpawnerComponent : ConditionalSpawnerComponent
+ public sealed class RandomSpawnerComponent : ConditionalSpawnerComponent
{
[ViewVariables(VVAccess.ReadWrite)]
[DataField("rarePrototypes", customTypeSerializer:typeof(PrototypeIdListSerializer))]
diff --git a/Content.Server/Spawners/Components/TimedSpawnerComponent.cs b/Content.Server/Spawners/Components/TimedSpawnerComponent.cs
index 3d78150b5e..ebb8690441 100644
--- a/Content.Server/Spawners/Components/TimedSpawnerComponent.cs
+++ b/Content.Server/Spawners/Components/TimedSpawnerComponent.cs
@@ -13,7 +13,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Spawners.Components
{
[RegisterComponent]
- public class TimedSpawnerComponent : Component, ISerializationHooks
+ public sealed class TimedSpawnerComponent : Component, ISerializationHooks
{
[Dependency] private readonly IRobustRandom _robustRandom = default!;
diff --git a/Content.Server/Speech/AccentSystem.cs b/Content.Server/Speech/AccentSystem.cs
index 65ea6c53eb..0a4c18448b 100644
--- a/Content.Server/Speech/AccentSystem.cs
+++ b/Content.Server/Speech/AccentSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Speech
{
- public class AccentSystem : EntitySystem
+ public sealed class AccentSystem : EntitySystem
{
[Dependency] private readonly IChatManager _chatManager = default!;
@@ -27,7 +27,7 @@ namespace Content.Server.Speech
}
}
- public class AccentGetEvent : EntityEventArgs
+ public sealed class AccentGetEvent : EntityEventArgs
{
///
/// The entity to apply the accent to.
diff --git a/Content.Server/Speech/Components/AddAccentClothingComponent.cs b/Content.Server/Speech/Components/AddAccentClothingComponent.cs
index b027179a5e..f6d4c63a1b 100644
--- a/Content.Server/Speech/Components/AddAccentClothingComponent.cs
+++ b/Content.Server/Speech/Components/AddAccentClothingComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Speech.Components;
/// Applies accent to user while they wear entity as a clothing.
///
[RegisterComponent]
-public class AddAccentClothingComponent : Component
+public sealed class AddAccentClothingComponent : Component
{
///
/// Component name for accent that will be applied.
diff --git a/Content.Server/Speech/Components/BackwardsAccentComponent.cs b/Content.Server/Speech/Components/BackwardsAccentComponent.cs
index cf8ea0b1d1..1a93ad7701 100644
--- a/Content.Server/Speech/Components/BackwardsAccentComponent.cs
+++ b/Content.Server/Speech/Components/BackwardsAccentComponent.cs
@@ -3,7 +3,7 @@
namespace Content.Server.Speech.Components
{
[RegisterComponent]
- public class BackwardsAccentComponent : Component
+ public sealed class BackwardsAccentComponent : Component
{
}
}
diff --git a/Content.Server/Speech/Components/OwOAccentComponent.cs b/Content.Server/Speech/Components/OwOAccentComponent.cs
index bd50c5ba15..8f3a1f8cbf 100644
--- a/Content.Server/Speech/Components/OwOAccentComponent.cs
+++ b/Content.Server/Speech/Components/OwOAccentComponent.cs
@@ -3,7 +3,7 @@
namespace Content.Server.Speech.Components
{
[RegisterComponent]
- public class OwOAccentComponent : Component
+ public sealed class OwOAccentComponent : Component
{
}
}
diff --git a/Content.Server/Speech/Components/ReplacementAccentComponent.cs b/Content.Server/Speech/Components/ReplacementAccentComponent.cs
index 8000e82110..f98eee15aa 100644
--- a/Content.Server/Speech/Components/ReplacementAccentComponent.cs
+++ b/Content.Server/Speech/Components/ReplacementAccentComponent.cs
@@ -21,7 +21,7 @@ namespace Content.Server.Speech.Components
/// Replaces any spoken sentences with a random word.
///
[RegisterComponent]
- public class ReplacementAccentComponent : Component
+ public sealed class ReplacementAccentComponent : Component
{
[DataField("accent", customTypeSerializer: typeof(PrototypeIdSerializer), required: true)]
public string Accent = default!;
diff --git a/Content.Server/Speech/Components/SpanishAccentComponent.cs b/Content.Server/Speech/Components/SpanishAccentComponent.cs
index e4a5e0b7a2..9a10c6484b 100644
--- a/Content.Server/Speech/Components/SpanishAccentComponent.cs
+++ b/Content.Server/Speech/Components/SpanishAccentComponent.cs
@@ -3,7 +3,7 @@
namespace Content.Server.Speech.Components
{
[RegisterComponent]
- public class SpanishAccentComponent : Component
+ public sealed class SpanishAccentComponent : Component
{
}
}
diff --git a/Content.Server/Speech/Components/StutteringAccentComponent.cs b/Content.Server/Speech/Components/StutteringAccentComponent.cs
index 1e6cf6be18..fd64e4db70 100644
--- a/Content.Server/Speech/Components/StutteringAccentComponent.cs
+++ b/Content.Server/Speech/Components/StutteringAccentComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Speech.Components
{
[RegisterComponent]
- public class StutteringAccentComponent : Component
+ public sealed class StutteringAccentComponent : Component
{
}
}
diff --git a/Content.Server/Speech/EntitySystems/AddAccentClothingSystem.cs b/Content.Server/Speech/EntitySystems/AddAccentClothingSystem.cs
index 263752f82b..8606ab004a 100644
--- a/Content.Server/Speech/EntitySystems/AddAccentClothingSystem.cs
+++ b/Content.Server/Speech/EntitySystems/AddAccentClothingSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Speech.EntitySystems;
-public class AddAccentClothingSystem : EntitySystem
+public sealed class AddAccentClothingSystem : EntitySystem
{
[Dependency] private readonly IComponentFactory _componentFactory = default!;
diff --git a/Content.Server/Speech/EntitySystems/BackwardsAccentSystem.cs b/Content.Server/Speech/EntitySystems/BackwardsAccentSystem.cs
index 1de42822ef..db133acee1 100644
--- a/Content.Server/Speech/EntitySystems/BackwardsAccentSystem.cs
+++ b/Content.Server/Speech/EntitySystems/BackwardsAccentSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Speech.EntitySystems
{
- public class BackwardsAccentSystem : EntitySystem
+ public sealed class BackwardsAccentSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Speech/EntitySystems/OwOAccentSystem.cs b/Content.Server/Speech/EntitySystems/OwOAccentSystem.cs
index 4ebb8beff3..1fcdd045eb 100644
--- a/Content.Server/Speech/EntitySystems/OwOAccentSystem.cs
+++ b/Content.Server/Speech/EntitySystems/OwOAccentSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Random;
namespace Content.Server.Speech.EntitySystems
{
- public class OwOAccentSystem : EntitySystem
+ public sealed class OwOAccentSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Speech/EntitySystems/ReplacementAccentSystem.cs b/Content.Server/Speech/EntitySystems/ReplacementAccentSystem.cs
index 94443cb0a8..ca12bbc2fc 100644
--- a/Content.Server/Speech/EntitySystems/ReplacementAccentSystem.cs
+++ b/Content.Server/Speech/EntitySystems/ReplacementAccentSystem.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Speech.EntitySystems
///
/// Replaces any spoken sentences with a random word.
///
- public class ReplacementAccentSystem : EntitySystem
+ public sealed class ReplacementAccentSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _proto = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Speech/EntitySystems/SpanishAccentSystem.cs b/Content.Server/Speech/EntitySystems/SpanishAccentSystem.cs
index 902919bce6..52cbaa2813 100644
--- a/Content.Server/Speech/EntitySystems/SpanishAccentSystem.cs
+++ b/Content.Server/Speech/EntitySystems/SpanishAccentSystem.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Speech.EntitySystems
{
- public class SpanishAccentSystem : EntitySystem
+ public sealed class SpanishAccentSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Speech/EntitySystems/StutteringSystem.cs b/Content.Server/Speech/EntitySystems/StutteringSystem.cs
index b860b8cf7f..63398a04c1 100644
--- a/Content.Server/Speech/EntitySystems/StutteringSystem.cs
+++ b/Content.Server/Speech/EntitySystems/StutteringSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Random;
namespace Content.Server.Speech.EntitySystems
{
- public class StutteringSystem : SharedStutteringSystem
+ public sealed class StutteringSystem : SharedStutteringSystem
{
[Dependency] private readonly StatusEffectsSystem _statusEffectsSystem = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Sprite/Components/RandomSpriteColorComponent.cs b/Content.Server/Sprite/Components/RandomSpriteColorComponent.cs
index 0f02b7c95d..b342fd37e9 100644
--- a/Content.Server/Sprite/Components/RandomSpriteColorComponent.cs
+++ b/Content.Server/Sprite/Components/RandomSpriteColorComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Sprite.Components
{
[RegisterComponent]
- public class RandomSpriteColorComponent : Component
+ public sealed class RandomSpriteColorComponent : Component
{
// This should handle random states + colors for layers.
// Saame with RandomSpriteState
diff --git a/Content.Server/Sprite/Components/RandomSpriteStateComponent.cs b/Content.Server/Sprite/Components/RandomSpriteStateComponent.cs
index 00224c7956..fc33c1b633 100644
--- a/Content.Server/Sprite/Components/RandomSpriteStateComponent.cs
+++ b/Content.Server/Sprite/Components/RandomSpriteStateComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Sprite.Components
{
[RegisterComponent]
- public class RandomSpriteStateComponent : Component
+ public sealed class RandomSpriteStateComponent : Component
{
[DataField("spriteStates")] public List? SpriteStates;
diff --git a/Content.Server/Stack/StackComponent.cs b/Content.Server/Stack/StackComponent.cs
index fb980032e7..a3e903feab 100644
--- a/Content.Server/Stack/StackComponent.cs
+++ b/Content.Server/Stack/StackComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Stack
// TODO: Naming and presentation and such could use some improvement.
[RegisterComponent, Friend(typeof(StackSystem))]
[ComponentReference(typeof(SharedStackComponent))]
- public class StackComponent : SharedStackComponent
+ public sealed class StackComponent : SharedStackComponent
{
[ViewVariables(VVAccess.ReadWrite)]
public bool ThrowIndividually { get; set; } = false;
diff --git a/Content.Server/Stack/StackSystem.cs b/Content.Server/Stack/StackSystem.cs
index 8164517fb9..9495ebd50e 100644
--- a/Content.Server/Stack/StackSystem.cs
+++ b/Content.Server/Stack/StackSystem.cs
@@ -21,7 +21,7 @@ namespace Content.Server.Stack
/// This is a good example for learning how to code in an ECS manner.
///
[UsedImplicitly]
- public class StackSystem : SharedStackSystem
+ public sealed class StackSystem : SharedStackSystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly PopupSystem _popupSystem = default!;
diff --git a/Content.Server/Standing/StandingStateSystem.cs b/Content.Server/Standing/StandingStateSystem.cs
index 88dd64902e..e8e8a54fcb 100644
--- a/Content.Server/Standing/StandingStateSystem.cs
+++ b/Content.Server/Standing/StandingStateSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Random;
namespace Content.Server.Standing;
-public class StandingStateSystem : EntitySystem
+public sealed class StandingStateSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Station/Components/BecomesStationComponent.cs b/Content.Server/Station/Components/BecomesStationComponent.cs
index afd58da400..cbfbf5fd5d 100644
--- a/Content.Server/Station/Components/BecomesStationComponent.cs
+++ b/Content.Server/Station/Components/BecomesStationComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Station;
///
[RegisterComponent]
[Friend(typeof(GameTicker))]
-public class BecomesStationComponent : Component
+public sealed class BecomesStationComponent : Component
{
///
/// Mapping only. Should use StationIds in all other
diff --git a/Content.Server/Station/Components/PartOfStationComponent.cs b/Content.Server/Station/Components/PartOfStationComponent.cs
index af0599b37e..b86adf7591 100644
--- a/Content.Server/Station/Components/PartOfStationComponent.cs
+++ b/Content.Server/Station/Components/PartOfStationComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Server.Station;
///
[RegisterComponent]
[Friend(typeof(GameTicker))]
-public class PartOfStationComponent : Component
+public sealed class PartOfStationComponent : Component
{
[DataField("id", required: true)] // does yamllinter even lint maps for required fields?
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Station/Components/StationComponent.cs b/Content.Server/Station/Components/StationComponent.cs
index 6fadcfd1ac..2bf681b598 100644
--- a/Content.Server/Station/Components/StationComponent.cs
+++ b/Content.Server/Station/Components/StationComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Station;
[RegisterComponent, Friend(typeof(StationSystem))]
-public class StationComponent : Component
+public sealed class StationComponent : Component
{
[ViewVariables]
public StationId Station = StationId.Invalid;
diff --git a/Content.Server/Station/StationSystem.cs b/Content.Server/Station/StationSystem.cs
index 19fa9be7af..d6956d2fd5 100644
--- a/Content.Server/Station/StationSystem.cs
+++ b/Content.Server/Station/StationSystem.cs
@@ -16,7 +16,7 @@ namespace Content.Server.Station;
///
/// System that manages the jobs available on a station, and maybe other things later.
///
-public class StationSystem : EntitySystem
+public sealed class StationSystem : EntitySystem
{
[Dependency] private GameTicker _gameTicker = default!;
[Dependency] private IChatManager _chatManager = default!;
@@ -44,7 +44,7 @@ public class StationSystem : EntitySystem
_stationInfo = new();
}
- public class StationInfoData
+ public sealed class StationInfoData
{
public string Name;
diff --git a/Content.Server/StationEvents/Events/KudzuGrowth.cs b/Content.Server/StationEvents/Events/KudzuGrowth.cs
index 7185b1278b..ef6b3194df 100644
--- a/Content.Server/StationEvents/Events/KudzuGrowth.cs
+++ b/Content.Server/StationEvents/Events/KudzuGrowth.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Random;
namespace Content.Server.StationEvents.Events;
-public class KudzuGrowth : StationEvent
+public sealed class KudzuGrowth : StationEvent
{
[Dependency] private IRobustRandom _robustRandom = default!;
[Dependency] private IEntityManager _entityManager = default!;
diff --git a/Content.Server/Storage/Components/CursedEntityStorageComponent.cs b/Content.Server/Storage/Components/CursedEntityStorageComponent.cs
index d50b288868..1f67f4ff08 100644
--- a/Content.Server/Storage/Components/CursedEntityStorageComponent.cs
+++ b/Content.Server/Storage/Components/CursedEntityStorageComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Storage.Components
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
[RegisterComponent]
- public class CursedEntityStorageComponent : EntityStorageComponent
+ public sealed class CursedEntityStorageComponent : EntityStorageComponent
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly IRobustRandom _robustRandom = default!;
diff --git a/Content.Server/Storage/Components/EntityStorageComponent.cs b/Content.Server/Storage/Components/EntityStorageComponent.cs
index 5defdc4064..7540779d43 100644
--- a/Content.Server/Storage/Components/EntityStorageComponent.cs
+++ b/Content.Server/Storage/Components/EntityStorageComponent.cs
@@ -32,6 +32,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Storage.Components
{
[RegisterComponent]
+ [Virtual]
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
public class EntityStorageComponent : Component, IActivate, IStorageComponent, IInteractUsing, IDestroyAct, IExAct
diff --git a/Content.Server/Storage/Components/SecretStashComponent.cs b/Content.Server/Storage/Components/SecretStashComponent.cs
index 3211fb59a0..d2d8333d2e 100644
--- a/Content.Server/Storage/Components/SecretStashComponent.cs
+++ b/Content.Server/Storage/Components/SecretStashComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Server.Storage.Components
///
[RegisterComponent]
[Friend(typeof(SecretStashSystem))]
- public class SecretStashComponent : Component
+ public sealed class SecretStashComponent : Component
{
///
/// Max item size that can be fitted into secret stash.
diff --git a/Content.Server/Storage/Components/ServerStorageComponent.cs b/Content.Server/Storage/Components/ServerStorageComponent.cs
index b40c7eb428..424084c0c1 100644
--- a/Content.Server/Storage/Components/ServerStorageComponent.cs
+++ b/Content.Server/Storage/Components/ServerStorageComponent.cs
@@ -43,7 +43,7 @@ namespace Content.Server.Storage.Components
[ComponentReference(typeof(IActivate))]
[ComponentReference(typeof(IStorageComponent))]
[ComponentReference(typeof(SharedStorageComponent))]
- public class ServerStorageComponent : SharedStorageComponent, IInteractUsing, IActivate, IStorageComponent, IDestroyAct, IExAct, IAfterInteract
+ public sealed class ServerStorageComponent : SharedStorageComponent, IInteractUsing, IActivate, IStorageComponent, IDestroyAct, IExAct, IAfterInteract
{
[Dependency] private readonly IEntityManager _entityManager = default!;
diff --git a/Content.Server/Storage/Components/SpawnItemsOnUseComponent.cs b/Content.Server/Storage/Components/SpawnItemsOnUseComponent.cs
index 49cd42a20f..2fafd76d92 100644
--- a/Content.Server/Storage/Components/SpawnItemsOnUseComponent.cs
+++ b/Content.Server/Storage/Components/SpawnItemsOnUseComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Storage.Components
/// Spawns items when used in hand.
///
[RegisterComponent]
- public class SpawnItemsOnUseComponent : Component
+ public sealed class SpawnItemsOnUseComponent : Component
{
///
/// The list of entities to spawn, with amounts and orGroups.
diff --git a/Content.Server/Storage/EntitySystems/ItemCounterSystem.cs b/Content.Server/Storage/EntitySystems/ItemCounterSystem.cs
index 5b697eeb22..f32c8f4629 100644
--- a/Content.Server/Storage/EntitySystems/ItemCounterSystem.cs
+++ b/Content.Server/Storage/EntitySystems/ItemCounterSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Storage.EntitySystems
{
[UsedImplicitly]
- public class ItemCounterSystem : SharedItemCounterSystem
+ public sealed class ItemCounterSystem : SharedItemCounterSystem
{
protected override int? GetCount(ContainerModifiedMessage msg, ItemCounterComponent itemCounter)
{
diff --git a/Content.Server/Storage/EntitySystems/ItemMapperSystem.cs b/Content.Server/Storage/EntitySystems/ItemMapperSystem.cs
index 5ffebc1088..088870719c 100644
--- a/Content.Server/Storage/EntitySystems/ItemMapperSystem.cs
+++ b/Content.Server/Storage/EntitySystems/ItemMapperSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Storage.EntitySystems
{
[UsedImplicitly]
- public class ItemMapperSystem : SharedItemMapperSystem
+ public sealed class ItemMapperSystem : SharedItemMapperSystem
{
protected override bool TryGetLayers(ContainerModifiedMessage msg,
ItemMapperComponent itemMapper,
diff --git a/Content.Server/Storage/EntitySystems/SecretStashSystem.cs b/Content.Server/Storage/EntitySystems/SecretStashSystem.cs
index 6c23e64cb4..0efc65e73c 100644
--- a/Content.Server/Storage/EntitySystems/SecretStashSystem.cs
+++ b/Content.Server/Storage/EntitySystems/SecretStashSystem.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Player;
namespace Content.Server.Storage.EntitySystems
{
- public class SecretStashSystem : EntitySystem
+ public sealed class SecretStashSystem : EntitySystem
{
[Dependency] private readonly PopupSystem _popupSystem = default!;
diff --git a/Content.Server/Storage/EntitySystems/SpawnItemsOnUseSystem.cs b/Content.Server/Storage/EntitySystems/SpawnItemsOnUseSystem.cs
index 4671a99813..bac89a8595 100644
--- a/Content.Server/Storage/EntitySystems/SpawnItemsOnUseSystem.cs
+++ b/Content.Server/Storage/EntitySystems/SpawnItemsOnUseSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Random;
namespace Content.Server.Storage.EntitySystems
{
- public class SpawnItemsOnUseSystem : EntitySystem
+ public sealed class SpawnItemsOnUseSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Stunnable/Components/StunbatonComponent.cs b/Content.Server/Stunnable/Components/StunbatonComponent.cs
index fee75a8238..8dd4a4445f 100644
--- a/Content.Server/Stunnable/Components/StunbatonComponent.cs
+++ b/Content.Server/Stunnable/Components/StunbatonComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Stunnable.Components
{
[RegisterComponent]
- public class StunbatonComponent : Component
+ public sealed class StunbatonComponent : Component
{
public bool Activated = false;
diff --git a/Content.Server/Stunnable/StunbatonSystem.cs b/Content.Server/Stunnable/StunbatonSystem.cs
index 1d197ff78d..b7752211ae 100644
--- a/Content.Server/Stunnable/StunbatonSystem.cs
+++ b/Content.Server/Stunnable/StunbatonSystem.cs
@@ -25,7 +25,7 @@ using Robust.Shared.Random;
namespace Content.Server.Stunnable
{
- public class StunbatonSystem : EntitySystem
+ public sealed class StunbatonSystem : EntitySystem
{
[Dependency] private readonly StunSystem _stunSystem = default!;
[Dependency] private readonly StutteringSystem _stutteringSystem = default!;
diff --git a/Content.Server/Suspicion/Roles/SuspicionInnocentRole.cs b/Content.Server/Suspicion/Roles/SuspicionInnocentRole.cs
index da2cea6794..11cf3e90e4 100644
--- a/Content.Server/Suspicion/Roles/SuspicionInnocentRole.cs
+++ b/Content.Server/Suspicion/Roles/SuspicionInnocentRole.cs
@@ -4,7 +4,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Suspicion.Roles
{
- public class SuspicionInnocentRole : SuspicionRole
+ public sealed class SuspicionInnocentRole : SuspicionRole
{
public AntagPrototype Prototype { get; }
diff --git a/Content.Server/Suspicion/SuspicionRoleComponent.cs b/Content.Server/Suspicion/SuspicionRoleComponent.cs
index 0f9e022603..a7e28c9245 100644
--- a/Content.Server/Suspicion/SuspicionRoleComponent.cs
+++ b/Content.Server/Suspicion/SuspicionRoleComponent.cs
@@ -18,7 +18,7 @@ namespace Content.Server.Suspicion
{
[RegisterComponent]
#pragma warning disable 618
- public class SuspicionRoleComponent : SharedSuspicionRoleComponent, IExamine
+ public sealed class SuspicionRoleComponent : SharedSuspicionRoleComponent, IExamine
#pragma warning restore 618
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/Tabletop/Components/TabletopDraggableComponent.cs b/Content.Server/Tabletop/Components/TabletopDraggableComponent.cs
index b28205d555..9504b46662 100644
--- a/Content.Server/Tabletop/Components/TabletopDraggableComponent.cs
+++ b/Content.Server/Tabletop/Components/TabletopDraggableComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Tabletop.Components
{
[RegisterComponent]
[ComponentReference(typeof(SharedTabletopDraggableComponent))]
- public class TabletopDraggableComponent : SharedTabletopDraggableComponent
+ public sealed class TabletopDraggableComponent : SharedTabletopDraggableComponent
{
private NetUserId? _draggingPlayer;
diff --git a/Content.Server/Tabletop/Components/TabletopGameComponent.cs b/Content.Server/Tabletop/Components/TabletopGameComponent.cs
index ddf70d7f64..6417778721 100644
--- a/Content.Server/Tabletop/Components/TabletopGameComponent.cs
+++ b/Content.Server/Tabletop/Components/TabletopGameComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Tabletop.Components
/// A component that makes an object playable as a tabletop game.
///
[RegisterComponent, Friend(typeof(TabletopSystem))]
- public class TabletopGameComponent : Component
+ public sealed class TabletopGameComponent : Component
{
[DataField("boardName")]
public string BoardName { get; } = "tabletop-default-board-name";
diff --git a/Content.Server/Tabletop/Components/TabletopGamerComponent.cs b/Content.Server/Tabletop/Components/TabletopGamerComponent.cs
index f0207cac96..bc575fbb4b 100644
--- a/Content.Server/Tabletop/Components/TabletopGamerComponent.cs
+++ b/Content.Server/Tabletop/Components/TabletopGamerComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Tabletop.Components
/// Component for marking an entity as currently playing a tabletop.
///
[RegisterComponent, Friend(typeof(TabletopSystem))]
- public class TabletopGamerComponent : Component
+ public sealed class TabletopGamerComponent : Component
{
[DataField("tabletop")]
public EntityUid Tabletop { get; set; } = EntityUid.Invalid;
diff --git a/Content.Server/Tabletop/TabletopBackgammonSetup.cs b/Content.Server/Tabletop/TabletopBackgammonSetup.cs
index 612cb7887d..ce945c2686 100644
--- a/Content.Server/Tabletop/TabletopBackgammonSetup.cs
+++ b/Content.Server/Tabletop/TabletopBackgammonSetup.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Tabletop
{
[UsedImplicitly]
- public class TabletopBackgammonSetup : TabletopSetup
+ public sealed class TabletopBackgammonSetup : TabletopSetup
{
[DataField("boardPrototype")]
public string BackgammonBoardPrototype { get; } = "BackgammonBoardTabletop";
diff --git a/Content.Server/Tabletop/TabletopCheckerSetup.cs b/Content.Server/Tabletop/TabletopCheckerSetup.cs
index 6a112073ee..c390aa0dc6 100644
--- a/Content.Server/Tabletop/TabletopCheckerSetup.cs
+++ b/Content.Server/Tabletop/TabletopCheckerSetup.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Tabletop
{
[UsedImplicitly]
- public class TabletopCheckerSetup : TabletopSetup
+ public sealed class TabletopCheckerSetup : TabletopSetup
{
[DataField("boardPrototype", customTypeSerializer:typeof(PrototypeIdSerializer))]
public string CheckerBoardPrototype { get; } = "CheckerBoardTabletop";
diff --git a/Content.Server/Tabletop/TabletopChessSetup.cs b/Content.Server/Tabletop/TabletopChessSetup.cs
index e71fc43f7a..a87aca6967 100644
--- a/Content.Server/Tabletop/TabletopChessSetup.cs
+++ b/Content.Server/Tabletop/TabletopChessSetup.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Tabletop
{
[UsedImplicitly]
- public class TabletopChessSetup : TabletopSetup
+ public sealed class TabletopChessSetup : TabletopSetup
{
[DataField("boardPrototype", customTypeSerializer:typeof(PrototypeIdSerializer))]
public string ChessBoardPrototype { get; } = "ChessBoardTabletop";
diff --git a/Content.Server/Tabletop/TabletopParchisSetup.cs b/Content.Server/Tabletop/TabletopParchisSetup.cs
index c4dc63ab7e..fbe2f1ae7d 100644
--- a/Content.Server/Tabletop/TabletopParchisSetup.cs
+++ b/Content.Server/Tabletop/TabletopParchisSetup.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Tabletop
{
[UsedImplicitly]
- public class TabletopParchisSetup : TabletopSetup
+ public sealed class TabletopParchisSetup : TabletopSetup
{
[DataField("boardPrototype", customTypeSerializer:typeof(PrototypeIdSerializer))]
public string ParchisBoardPrototype { get; } = "ParchisBoardTabletop";
diff --git a/Content.Server/Tabletop/TabletopSession.cs b/Content.Server/Tabletop/TabletopSession.cs
index 8aa1bbfe8a..d711cbcde8 100644
--- a/Content.Server/Tabletop/TabletopSession.cs
+++ b/Content.Server/Tabletop/TabletopSession.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Tabletop
///
/// A class for storing data about a running tabletop game.
///
- public class TabletopSession
+ public sealed class TabletopSession
{
///
/// The center position of this session.
diff --git a/Content.Server/Tabletop/TabletopSessionPlayerData.cs b/Content.Server/Tabletop/TabletopSessionPlayerData.cs
index 556b53d16c..b7a81f7824 100644
--- a/Content.Server/Tabletop/TabletopSessionPlayerData.cs
+++ b/Content.Server/Tabletop/TabletopSessionPlayerData.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Tabletop
///
/// A class that stores per-player data for tabletops.
///
- public class TabletopSessionPlayerData
+ public sealed class TabletopSessionPlayerData
{
public EntityUid Camera { get; set; }
}
diff --git a/Content.Server/Tabletop/TabletopSystem.Draggable.cs b/Content.Server/Tabletop/TabletopSystem.Draggable.cs
index e11cb43311..b96c883639 100644
--- a/Content.Server/Tabletop/TabletopSystem.Draggable.cs
+++ b/Content.Server/Tabletop/TabletopSystem.Draggable.cs
@@ -10,7 +10,7 @@ using DrawDepth = Content.Shared.DrawDepth.DrawDepth;
namespace Content.Server.Tabletop
{
- public partial class TabletopSystem
+ public sealed partial class TabletopSystem
{
public void InitializeDraggable()
{
diff --git a/Content.Server/Tabletop/TabletopSystem.Map.cs b/Content.Server/Tabletop/TabletopSystem.Map.cs
index 0aaeea7dee..90ba63e9c6 100644
--- a/Content.Server/Tabletop/TabletopSystem.Map.cs
+++ b/Content.Server/Tabletop/TabletopSystem.Map.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Maths;
namespace Content.Server.Tabletop
{
- public partial class TabletopSystem
+ public sealed partial class TabletopSystem
{
///
/// Separation between tabletops in the tabletop map.
diff --git a/Content.Server/Tabletop/TabletopSystem.Session.cs b/Content.Server/Tabletop/TabletopSystem.Session.cs
index 7ca26cb0ec..577817a7e1 100644
--- a/Content.Server/Tabletop/TabletopSystem.Session.cs
+++ b/Content.Server/Tabletop/TabletopSystem.Session.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Utility;
namespace Content.Server.Tabletop
{
- public partial class TabletopSystem
+ public sealed partial class TabletopSystem
{
///
/// Ensures that a exists on a .
diff --git a/Content.Server/Tabletop/TabletopSystem.cs b/Content.Server/Tabletop/TabletopSystem.cs
index bd0618777b..b80cefedcd 100644
--- a/Content.Server/Tabletop/TabletopSystem.cs
+++ b/Content.Server/Tabletop/TabletopSystem.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Map;
namespace Content.Server.Tabletop
{
[UsedImplicitly]
- public partial class TabletopSystem : SharedTabletopSystem
+ public sealed partial class TabletopSystem : SharedTabletopSystem
{
[Dependency] private readonly IMapManager _mapManager = default!;
[Dependency] private readonly ViewSubscriberSystem _viewSubscriberSystem = default!;
diff --git a/Content.Server/Temperature/Components/HeatResistanceComponent.cs b/Content.Server/Temperature/Components/HeatResistanceComponent.cs
index c01faaf6b8..9a068254e7 100644
--- a/Content.Server/Temperature/Components/HeatResistanceComponent.cs
+++ b/Content.Server/Temperature/Components/HeatResistanceComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Temperature.Components
{
[RegisterComponent]
- public class HeatResistanceComponent : Component
+ public sealed class HeatResistanceComponent : Component
{
public int GetHeatResistance()
{
diff --git a/Content.Server/Temperature/Components/TemperatureComponent.cs b/Content.Server/Temperature/Components/TemperatureComponent.cs
index 231aec3d44..fcf8bbd675 100644
--- a/Content.Server/Temperature/Components/TemperatureComponent.cs
+++ b/Content.Server/Temperature/Components/TemperatureComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Server.Temperature.Components
/// and taking fire damage from high temperature.
///
[RegisterComponent]
- public class TemperatureComponent : Component
+ public sealed class TemperatureComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
public float CurrentTemperature { get; set; } = Atmospherics.T20C;
diff --git a/Content.Server/Temperature/Systems/TemperatureSystem.cs b/Content.Server/Temperature/Systems/TemperatureSystem.cs
index ae288b8f36..781f5992ee 100644
--- a/Content.Server/Temperature/Systems/TemperatureSystem.cs
+++ b/Content.Server/Temperature/Systems/TemperatureSystem.cs
@@ -14,7 +14,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Temperature.Systems
{
- public class TemperatureSystem : EntitySystem
+ public sealed class TemperatureSystem : EntitySystem
{
[Dependency] private readonly DamageableSystem _damageableSystem = default!;
[Dependency] private readonly AtmosphereSystem _atmosphereSystem = default!;
@@ -201,7 +201,7 @@ namespace Content.Server.Temperature.Systems
}
}
- public class OnTemperatureChangeEvent : EntityEventArgs
+ public sealed class OnTemperatureChangeEvent : EntityEventArgs
{
public float CurrentTemperature { get; }
public float LastTemperature { get; }
@@ -215,7 +215,7 @@ namespace Content.Server.Temperature.Systems
}
}
- public class ModifyChangedTemperatureEvent : EntityEventArgs, IInventoryRelayEvent
+ public sealed class ModifyChangedTemperatureEvent : EntityEventArgs, IInventoryRelayEvent
{
public SlotFlags TargetSlots { get; } = ~SlotFlags.POCKET;
diff --git a/Content.Server/Throwing/EmitSoundOnThrowComponent.cs b/Content.Server/Throwing/EmitSoundOnThrowComponent.cs
index 1f29fb7376..0fdc9817ac 100644
--- a/Content.Server/Throwing/EmitSoundOnThrowComponent.cs
+++ b/Content.Server/Throwing/EmitSoundOnThrowComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Server.Throwing
/// Simple sound emitter that emits sound on ThrowEvent
///
[RegisterComponent]
- public class EmitSoundOnThrowComponent : BaseEmitSoundComponent
+ public sealed class EmitSoundOnThrowComponent : BaseEmitSoundComponent
{
}
}
diff --git a/Content.Server/Tiles/FloorTileItemComponent.cs b/Content.Server/Tiles/FloorTileItemComponent.cs
index ac86f75f97..4370593110 100644
--- a/Content.Server/Tiles/FloorTileItemComponent.cs
+++ b/Content.Server/Tiles/FloorTileItemComponent.cs
@@ -19,7 +19,7 @@ namespace Content.Server.Tiles
{
[RegisterComponent]
[ComponentProtoName("FloorTile")]
- public class FloorTileItemComponent : Component, IAfterInteract
+ public sealed class FloorTileItemComponent : Component, IAfterInteract
{
[Dependency] private readonly IEntityManager _entMan = default!;
[Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
diff --git a/Content.Server/Toilet/ToiletSystem.cs b/Content.Server/Toilet/ToiletSystem.cs
index 9dc6121e6a..e97cad00e4 100644
--- a/Content.Server/Toilet/ToiletSystem.cs
+++ b/Content.Server/Toilet/ToiletSystem.cs
@@ -20,7 +20,7 @@ using Robust.Shared.Random;
namespace Content.Server.Toilet
{
- public class ToiletSystem : EntitySystem
+ public sealed class ToiletSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly SecretStashSystem _secretStash = default!;
@@ -197,7 +197,7 @@ namespace Content.Server.Toilet
}
}
- public class ToiletPryFinished : EntityEventArgs
+ public sealed class ToiletPryFinished : EntityEventArgs
{
public EntityUid Uid;
@@ -207,7 +207,7 @@ namespace Content.Server.Toilet
}
}
- public class ToiletPryInterrupted : EntityEventArgs
+ public sealed class ToiletPryInterrupted : EntityEventArgs
{
public EntityUid Uid;
diff --git a/Content.Server/Tools/Components/MultipleToolComponent.cs b/Content.Server/Tools/Components/MultipleToolComponent.cs
index 9e2dfb4e42..9d3164183c 100644
--- a/Content.Server/Tools/Components/MultipleToolComponent.cs
+++ b/Content.Server/Tools/Components/MultipleToolComponent.cs
@@ -15,10 +15,10 @@ namespace Content.Server.Tools.Components
/// Not to be confused with Multitool (power)
///
[RegisterComponent]
- public class MultipleToolComponent : SharedMultipleToolComponent
+ public sealed class MultipleToolComponent : SharedMultipleToolComponent
{
[DataDefinition]
- public class ToolEntry
+ public sealed class ToolEntry
{
[DataField("behavior", required:true)]
public PrototypeFlags Behavior { get; } = new();
@@ -32,7 +32,7 @@ namespace Content.Server.Tools.Components
[DataField("sprite")]
public SpriteSpecifier? Sprite { get; } = null;
}
-
+
[DataField("entries", required:true)]
public ToolEntry[] Entries { get; } = Array.Empty();
diff --git a/Content.Server/Tools/Components/ToolComponent.cs b/Content.Server/Tools/Components/ToolComponent.cs
index 7d1717a3c2..e597284dd2 100644
--- a/Content.Server/Tools/Components/ToolComponent.cs
+++ b/Content.Server/Tools/Components/ToolComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Tools.Components
{
[RegisterComponent, Friend(typeof(ToolSystem))]
- public class ToolComponent : Component
+ public sealed class ToolComponent : Component
{
[DataField("qualities")]
public PrototypeFlags Qualities { get; set; } = new();
diff --git a/Content.Server/Tools/Components/WelderComponent.cs b/Content.Server/Tools/Components/WelderComponent.cs
index 1eaf4bf6c3..c519f4384a 100644
--- a/Content.Server/Tools/Components/WelderComponent.cs
+++ b/Content.Server/Tools/Components/WelderComponent.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Tools.Components
{
[RegisterComponent]
- public class WelderComponent : SharedWelderComponent
+ public sealed class WelderComponent : SharedWelderComponent
{
///
/// Solution on the entity that contains the fuel.
@@ -56,7 +56,7 @@ namespace Content.Server.Tools.Components
///
///
/// If this is a standard welder, this damage bonus should probably subtract the entity's standard melee weapon damage
- /// and replace it all with heat damage.
+ /// and replace it all with heat damage.
///
[DataField("litMeleeDamageBonus")]
public DamageSpecifier LitMeleeDamageBonus = new();
diff --git a/Content.Server/Tools/ToolSystem.MultipleTool.cs b/Content.Server/Tools/ToolSystem.MultipleTool.cs
index 1e8ad1a2c9..a3b5fef9ab 100644
--- a/Content.Server/Tools/ToolSystem.MultipleTool.cs
+++ b/Content.Server/Tools/ToolSystem.MultipleTool.cs
@@ -15,7 +15,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.Tools
{
- public partial class ToolSystem
+ public sealed partial class ToolSystem
{
private void InitializeMultipleTools()
{
diff --git a/Content.Server/Tools/ToolSystem.Welder.cs b/Content.Server/Tools/ToolSystem.Welder.cs
index 4990ab0e84..5205e135ed 100644
--- a/Content.Server/Tools/ToolSystem.Welder.cs
+++ b/Content.Server/Tools/ToolSystem.Welder.cs
@@ -22,7 +22,7 @@ using Robust.Shared.Player;
namespace Content.Server.Tools
{
- public partial class ToolSystem
+ public sealed partial class ToolSystem
{
private readonly HashSet _activeWelders = new();
diff --git a/Content.Server/Tools/ToolSystem.cs b/Content.Server/Tools/ToolSystem.cs
index fc11270f29..6f1b3432a6 100644
--- a/Content.Server/Tools/ToolSystem.cs
+++ b/Content.Server/Tools/ToolSystem.cs
@@ -18,7 +18,7 @@ using Robust.Shared.Prototypes;
namespace Content.Server.Tools
{
- public partial class ToolSystem : EntitySystem
+ public sealed partial class ToolSystem : EntitySystem
{
[Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
@@ -259,7 +259,7 @@ namespace Content.Server.Tools
UpdateWelders(frameTime);
}
- private class ToolDoAfterComplete : EntityEventArgs
+ private sealed class ToolDoAfterComplete : EntityEventArgs
{
public readonly object CompletedEvent;
public readonly object? CancelledEvent;
@@ -279,7 +279,7 @@ namespace Content.Server.Tools
}
}
- private class ToolDoAfterCancelled : EntityEventArgs
+ private sealed class ToolDoAfterCancelled : EntityEventArgs
{
public readonly object Event;
public readonly EntityUid? EventTarget;
@@ -296,7 +296,7 @@ namespace Content.Server.Tools
/// Attempt event called *before* any do afters to see if the tool usage should succeed or not.
/// You can change the fuel consumption by changing the Fuel property.
///
- public class ToolUseAttemptEvent : CancellableEntityEventArgs
+ public sealed class ToolUseAttemptEvent : CancellableEntityEventArgs
{
public float Fuel { get; set; }
public EntityUid User { get; }
@@ -312,7 +312,7 @@ namespace Content.Server.Tools
/// Attempt event called *after* any do afters to see if the tool usage should succeed or not.
/// You can use this event to consume any fuel needed.
///
- public class ToolUseFinishAttemptEvent : CancellableEntityEventArgs
+ public sealed class ToolUseFinishAttemptEvent : CancellableEntityEventArgs
{
public float Fuel { get; }
public EntityUid User { get; }
diff --git a/Content.Server/Traitor/TraitorRole.cs b/Content.Server/Traitor/TraitorRole.cs
index 7c63426e13..0aa1d68d48 100644
--- a/Content.Server/Traitor/TraitorRole.cs
+++ b/Content.Server/Traitor/TraitorRole.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Traitor
{
- public class TraitorRole : Role
+ public sealed class TraitorRole : Role
{
public AntagPrototype Prototype { get; }
diff --git a/Content.Server/Traitor/Uplink/Account/UplinkAccountEvents.cs b/Content.Server/Traitor/Uplink/Account/UplinkAccountEvents.cs
index f70fe809cd..a6a4909791 100644
--- a/Content.Server/Traitor/Uplink/Account/UplinkAccountEvents.cs
+++ b/Content.Server/Traitor/Uplink/Account/UplinkAccountEvents.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Traitor.Uplink.Account
///
/// Invokes when one of the UplinkAccounts changed its TC balance
///
- public class UplinkAccountBalanceChanged : EntityEventArgs
+ public sealed class UplinkAccountBalanceChanged : EntityEventArgs
{
public readonly UplinkAccount Account;
diff --git a/Content.Server/Traitor/Uplink/Account/UplinkAccountsSystem.cs b/Content.Server/Traitor/Uplink/Account/UplinkAccountsSystem.cs
index a3c4c996bb..817fedc288 100644
--- a/Content.Server/Traitor/Uplink/Account/UplinkAccountsSystem.cs
+++ b/Content.Server/Traitor/Uplink/Account/UplinkAccountsSystem.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Traitor.Uplink.Account
///
/// Manage all registred uplink accounts and their balance
///
- public class UplinkAccountsSystem : EntitySystem
+ public sealed class UplinkAccountsSystem : EntitySystem
{
public const string TelecrystalProtoId = "Telecrystal";
diff --git a/Content.Server/Traitor/Uplink/Commands/AddUplinkCommand.cs b/Content.Server/Traitor/Uplink/Commands/AddUplinkCommand.cs
index 7f5346c7cc..0a649f6a64 100644
--- a/Content.Server/Traitor/Uplink/Commands/AddUplinkCommand.cs
+++ b/Content.Server/Traitor/Uplink/Commands/AddUplinkCommand.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Traitor.Uplink.Commands
{
[AdminCommand(AdminFlags.Fun)]
- public class AddUplinkCommand : IConsoleCommand
+ public sealed class AddUplinkCommand : IConsoleCommand
{
public string Command => "adduplink";
diff --git a/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalComponent.cs b/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalComponent.cs
index de2c8324c6..3fc21955ec 100644
--- a/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalComponent.cs
+++ b/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Traitor.Uplink.Telecrystal
{
[RegisterComponent]
- public class TelecrystalComponent : Component
+ public sealed class TelecrystalComponent : Component
{
}
}
diff --git a/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalSystem.cs b/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalSystem.cs
index 26e06b6915..caf3fdd8dd 100644
--- a/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalSystem.cs
+++ b/Content.Server/Traitor/Uplink/Telecrystal/TelecrystalSystem.cs
@@ -10,7 +10,7 @@ using System;
namespace Content.Server.Traitor.Uplink.Telecrystal
{
- public class TelecrystalSystem : EntitySystem
+ public sealed class TelecrystalSystem : EntitySystem
{
[Dependency]
private readonly UplinkAccountsSystem _accounts = default!;
diff --git a/Content.Server/Traitor/Uplink/UplinkComponent.cs b/Content.Server/Traitor/Uplink/UplinkComponent.cs
index 7abffbd649..fc87ed3983 100644
--- a/Content.Server/Traitor/Uplink/UplinkComponent.cs
+++ b/Content.Server/Traitor/Uplink/UplinkComponent.cs
@@ -8,7 +8,7 @@ using System;
namespace Content.Server.Traitor.Uplink.Components
{
[RegisterComponent]
- public class UplinkComponent : Component
+ public sealed class UplinkComponent : Component
{
[ViewVariables]
[DataField("buySuccessSound")]
@@ -28,7 +28,7 @@ namespace Content.Server.Traitor.Uplink.Components
[Serializable]
[DataDefinition]
- public class PresetUplinkInfo
+ public sealed class PresetUplinkInfo
{
[DataField("balance")]
public int StartingBalance;
diff --git a/Content.Server/Traitor/Uplink/UplinkEvents.cs b/Content.Server/Traitor/Uplink/UplinkEvents.cs
index 12c9d52f07..8c7990433b 100644
--- a/Content.Server/Traitor/Uplink/UplinkEvents.cs
+++ b/Content.Server/Traitor/Uplink/UplinkEvents.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Traitor.Uplink
{
- public class UplinkInitEvent : EntityEventArgs
+ public sealed class UplinkInitEvent : EntityEventArgs
{
public UplinkComponent Uplink;
@@ -15,7 +15,7 @@ namespace Content.Server.Traitor.Uplink
}
}
- public class UplinkRemovedEvent : EntityEventArgs
+ public sealed class UplinkRemovedEvent : EntityEventArgs
{
}
}
diff --git a/Content.Server/Traitor/Uplink/UplinkListingSytem.cs b/Content.Server/Traitor/Uplink/UplinkListingSytem.cs
index dea8f57458..abc3f34b1c 100644
--- a/Content.Server/Traitor/Uplink/UplinkListingSytem.cs
+++ b/Content.Server/Traitor/Uplink/UplinkListingSytem.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Traitor.Uplink
///
/// Contains and controls all items in traitors uplink shop
///
- public class UplinkListingSytem : EntitySystem
+ public sealed class UplinkListingSytem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Server/Traitor/Uplink/UplinkSystem.cs b/Content.Server/Traitor/Uplink/UplinkSystem.cs
index 0534d06fc3..538441500c 100644
--- a/Content.Server/Traitor/Uplink/UplinkSystem.cs
+++ b/Content.Server/Traitor/Uplink/UplinkSystem.cs
@@ -20,7 +20,7 @@ using Robust.Shared.Player;
namespace Content.Server.Traitor.Uplink
{
- public class UplinkSystem : EntitySystem
+ public sealed class UplinkSystem : EntitySystem
{
[Dependency]
private readonly UplinkAccountsSystem _accounts = default!;
diff --git a/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchRedemptionComponent.cs b/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchRedemptionComponent.cs
index eb8ec05090..27e264eddc 100644
--- a/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchRedemptionComponent.cs
+++ b/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchRedemptionComponent.cs
@@ -13,7 +13,7 @@ using InventoryComponent = Content.Shared.Inventory.InventoryComponent;
namespace Content.Server.TraitorDeathMatch.Components
{
[RegisterComponent]
- public class TraitorDeathMatchRedemptionComponent : Component, IInteractUsing
+ public sealed class TraitorDeathMatchRedemptionComponent : Component, IInteractUsing
{
[Dependency] private readonly IEntityManager _entMan = default!;
diff --git a/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchReliableOwnerTagComponent.cs b/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchReliableOwnerTagComponent.cs
index aa45b55c31..6fbcd890e4 100644
--- a/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchReliableOwnerTagComponent.cs
+++ b/Content.Server/TraitorDeathMatch/Components/TraitorDeathMatchReliableOwnerTagComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.TraitorDeathMatch.Components
{
[RegisterComponent]
- public class TraitorDeathMatchReliableOwnerTagComponent : Component
+ public sealed class TraitorDeathMatchReliableOwnerTagComponent : Component
{
[ViewVariables]
public NetUserId? UserId { get; set; }
diff --git a/Content.Server/UserInterface/ActivatableUIComponent.cs b/Content.Server/UserInterface/ActivatableUIComponent.cs
index cd650563a5..4bbfc0eae4 100644
--- a/Content.Server/UserInterface/ActivatableUIComponent.cs
+++ b/Content.Server/UserInterface/ActivatableUIComponent.cs
@@ -17,7 +17,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.UserInterface
{
[RegisterComponent]
- public class ActivatableUIComponent : Component,
+ public sealed class ActivatableUIComponent : Component,
ISerializationHooks
{
[ViewVariables]
diff --git a/Content.Server/UserInterface/ActivatableUISystem.cs b/Content.Server/UserInterface/ActivatableUISystem.cs
index 2df6b3dff0..56b9982b03 100644
--- a/Content.Server/UserInterface/ActivatableUISystem.cs
+++ b/Content.Server/UserInterface/ActivatableUISystem.cs
@@ -122,7 +122,7 @@ namespace Content.Server.UserInterface
}
}
- public class ActivatableUIOpenAttemptEvent : CancellableEntityEventArgs
+ public sealed class ActivatableUIOpenAttemptEvent : CancellableEntityEventArgs
{
public EntityUid User { get; }
public ActivatableUIOpenAttemptEvent(EntityUid who)
@@ -131,7 +131,7 @@ namespace Content.Server.UserInterface
}
}
- public class ActivatableUIPlayerChangedEvent : EntityEventArgs
+ public sealed class ActivatableUIPlayerChangedEvent : EntityEventArgs
{
}
}
diff --git a/Content.Server/Utility/Commands/EchoCommand.cs b/Content.Server/Utility/Commands/EchoCommand.cs
index 50d73a9f04..11625aceeb 100644
--- a/Content.Server/Utility/Commands/EchoCommand.cs
+++ b/Content.Server/Utility/Commands/EchoCommand.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Localization;
namespace Content.Server.Utility.Commands
{
[AnyCommand]
- class EchoCommand : IConsoleCommand
+ sealed class EchoCommand : IConsoleCommand
{
public string Command => "echo";
diff --git a/Content.Server/VendingMachines/VendingMachineComponent.cs b/Content.Server/VendingMachines/VendingMachineComponent.cs
index b810595941..0c5e9d876e 100644
--- a/Content.Server/VendingMachines/VendingMachineComponent.cs
+++ b/Content.Server/VendingMachines/VendingMachineComponent.cs
@@ -13,7 +13,7 @@ using static Content.Shared.Wires.SharedWiresComponent;
namespace Content.Server.VendingMachines
{
[RegisterComponent]
- public class VendingMachineComponent : SharedVendingMachineComponent, IWires
+ public sealed class VendingMachineComponent : SharedVendingMachineComponent, IWires
{
public bool Ejecting;
public TimeSpan AnimationDuration = TimeSpan.Zero;
@@ -58,7 +58,7 @@ namespace Content.Server.VendingMachines
}
}
- public class WiresUpdateEventArgs : EventArgs
+ public sealed class WiresUpdateEventArgs : EventArgs
{
public readonly object Identifier;
public readonly WiresAction Action;
diff --git a/Content.Server/Verbs/Commands/InvokeVerbCommand.cs b/Content.Server/Verbs/Commands/InvokeVerbCommand.cs
index c450b0532a..543e907a7e 100644
--- a/Content.Server/Verbs/Commands/InvokeVerbCommand.cs
+++ b/Content.Server/Verbs/Commands/InvokeVerbCommand.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Console;
namespace Content.Server.Verbs.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class InvokeVerbCommand : IConsoleCommand
+ public sealed class InvokeVerbCommand : IConsoleCommand
{
public string Command => "invokeverb";
public string Description => Loc.GetString("invoke-verb-command-description");
diff --git a/Content.Server/Verbs/Commands/ListVerbsCommand.cs b/Content.Server/Verbs/Commands/ListVerbsCommand.cs
index c8ffdfc116..1a69a92d14 100644
--- a/Content.Server/Verbs/Commands/ListVerbsCommand.cs
+++ b/Content.Server/Verbs/Commands/ListVerbsCommand.cs
@@ -10,7 +10,7 @@ using System.Linq;
namespace Content.Server.Verbs.Commands
{
[AdminCommand(AdminFlags.Admin)]
- public class ListVerbsCommand : IConsoleCommand
+ public sealed class ListVerbsCommand : IConsoleCommand
{
public string Command => "listverbs";
public string Description => Loc.GetString("list-verbs-command-description");
diff --git a/Content.Server/Weapon/Melee/Components/MeleeWeaponComponent.cs b/Content.Server/Weapon/Melee/Components/MeleeWeaponComponent.cs
index bc28ad92cb..5984f10a9a 100644
--- a/Content.Server/Weapon/Melee/Components/MeleeWeaponComponent.cs
+++ b/Content.Server/Weapon/Melee/Components/MeleeWeaponComponent.cs
@@ -8,6 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Weapon.Melee.Components
{
[RegisterComponent]
+ [Virtual]
public class MeleeWeaponComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Server/Weapon/Melee/Components/UnarmedCombatComponent.cs b/Content.Server/Weapon/Melee/Components/UnarmedCombatComponent.cs
index 8ccf820c8a..bf8631c7b0 100644
--- a/Content.Server/Weapon/Melee/Components/UnarmedCombatComponent.cs
+++ b/Content.Server/Weapon/Melee/Components/UnarmedCombatComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Weapon.Melee.Components
// TODO: Remove this, just use MeleeWeapon...
[RegisterComponent]
[ComponentReference(typeof(MeleeWeaponComponent))]
- public class UnarmedCombatComponent : MeleeWeaponComponent
+ public sealed class UnarmedCombatComponent : MeleeWeaponComponent
{
}
}
diff --git a/Content.Server/Weapon/Melee/EnergySword/Components/EnergySwordComponent.cs b/Content.Server/Weapon/Melee/EnergySword/Components/EnergySwordComponent.cs
index 91624df34d..d3e2d52c38 100644
--- a/Content.Server/Weapon/Melee/EnergySword/Components/EnergySwordComponent.cs
+++ b/Content.Server/Weapon/Melee/EnergySword/Components/EnergySwordComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Weapon.Melee.EnergySword
{
[RegisterComponent]
- internal class EnergySwordComponent : Component
+ internal sealed class EnergySwordComponent : Component
{
public Color BladeColor = Color.DodgerBlue;
diff --git a/Content.Server/Weapon/Melee/EnergySword/EnergySwordSystem.cs b/Content.Server/Weapon/Melee/EnergySword/EnergySwordSystem.cs
index 8a50244fbf..2f37aa8340 100644
--- a/Content.Server/Weapon/Melee/EnergySword/EnergySwordSystem.cs
+++ b/Content.Server/Weapon/Melee/EnergySword/EnergySwordSystem.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Random;
namespace Content.Server.Weapon.Melee.EnergySword
{
- internal class EnergySwordSystem : EntitySystem
+ internal sealed class EnergySwordSystem : EntitySystem
{
[Dependency] private readonly ActionBlockerSystem _blockerSystem = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Weapon/Melee/MeleeWeaponSystem.cs b/Content.Server/Weapon/Melee/MeleeWeaponSystem.cs
index 8961154554..1818e440e3 100644
--- a/Content.Server/Weapon/Melee/MeleeWeaponSystem.cs
+++ b/Content.Server/Weapon/Melee/MeleeWeaponSystem.cs
@@ -315,7 +315,7 @@ namespace Content.Server.Weapon.Melee
/// Raised directed on the melee weapon entity used to attack something in combat mode,
/// whether through a click attack or wide attack.
///
- public class MeleeHitEvent : HandledEntityEventArgs
+ public sealed class MeleeHitEvent : HandledEntityEventArgs
{
///
/// Modifier sets to apply to the hit event when it's all said and done.
@@ -358,7 +358,7 @@ namespace Content.Server.Weapon.Melee
/// Raised directed on the melee weapon entity used to attack something in combat mode,
/// whether through a click attack or wide attack.
///
- public class MeleeInteractEvent : EntityEventArgs
+ public sealed class MeleeInteractEvent : EntityEventArgs
{
///
/// The entity interacted with.
diff --git a/Content.Server/Weapon/Ranged/Ammunition/Components/AmmoComponentData.cs b/Content.Server/Weapon/Ranged/Ammunition/Components/AmmoComponentData.cs
index ffeb48d9bd..ebe5a62a59 100644
--- a/Content.Server/Weapon/Ranged/Ammunition/Components/AmmoComponentData.cs
+++ b/Content.Server/Weapon/Ranged/Ammunition/Components/AmmoComponentData.cs
@@ -2,7 +2,7 @@ using Robust.Shared.Serialization;
namespace Content.Server.Weapon.Ranged.Ammunition.Components
{
- public partial class AmmoComponentData : ISerializationHooks
+ public sealed partial class AmmoComponentData : ISerializationHooks
{
}
}
diff --git a/Content.Server/Weapon/Ranged/Ammunition/Components/RangedMagazineComponent.cs b/Content.Server/Weapon/Ranged/Ammunition/Components/RangedMagazineComponent.cs
index 3ba6000545..6f73c9fdf7 100644
--- a/Content.Server/Weapon/Ranged/Ammunition/Components/RangedMagazineComponent.cs
+++ b/Content.Server/Weapon/Ranged/Ammunition/Components/RangedMagazineComponent.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Server.Weapon.Ranged.Ammunition.Components
{
[RegisterComponent]
- public class RangedMagazineComponent : Component
+ public sealed class RangedMagazineComponent : Component
{
public readonly Stack SpawnedAmmo = new();
public Container AmmoContainer = default!;
diff --git a/Content.Server/Weapon/Ranged/Ammunition/Components/SpeedLoaderComponent.cs b/Content.Server/Weapon/Ranged/Ammunition/Components/SpeedLoaderComponent.cs
index bacbe786a4..9d2dce75c8 100644
--- a/Content.Server/Weapon/Ranged/Ammunition/Components/SpeedLoaderComponent.cs
+++ b/Content.Server/Weapon/Ranged/Ammunition/Components/SpeedLoaderComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Server.Weapon.Ranged.Ammunition.Components
/// Used to load certain ranged weapons quickly
///
[RegisterComponent]
- public class SpeedLoaderComponent : Component
+ public sealed class SpeedLoaderComponent : Component
{
[DataField("caliber")] public BallisticCaliber Caliber = BallisticCaliber.Unspecified;
public int Capacity => _capacity;
diff --git a/Content.Server/Whitelist/WhitelistCommands.cs b/Content.Server/Whitelist/WhitelistCommands.cs
index b5c0a2a139..f37218a6d0 100644
--- a/Content.Server/Whitelist/WhitelistCommands.cs
+++ b/Content.Server/Whitelist/WhitelistCommands.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Player;
namespace Content.Server.Whitelist;
[AdminCommand(AdminFlags.Ban)]
-public class AddWhitelistCommand : IConsoleCommand
+public sealed class AddWhitelistCommand : IConsoleCommand
{
public string Command => "whitelistadd";
public string Description => Loc.GetString("command-whitelistadd-description");
@@ -42,7 +42,7 @@ public class AddWhitelistCommand : IConsoleCommand
}
[AdminCommand(AdminFlags.Ban)]
-public class RemoveWhitelistCommand : IConsoleCommand
+public sealed class RemoveWhitelistCommand : IConsoleCommand
{
public string Command => "whitelistremove";
public string Description => Loc.GetString("command-whitelistremove-description");
@@ -71,7 +71,7 @@ public class RemoveWhitelistCommand : IConsoleCommand
}
[AdminCommand(AdminFlags.Ban)]
-public class KickNonWhitelistedCommand : IConsoleCommand
+public sealed class KickNonWhitelistedCommand : IConsoleCommand
{
public string Command => "kicknonwhitelisted";
public string Description => Loc.GetString("command-kicknonwhitelisted-description");
diff --git a/Content.Server/Wieldable/Components/IncreaseDamageOnWieldComponent.cs b/Content.Server/Wieldable/Components/IncreaseDamageOnWieldComponent.cs
index 77442f6cc8..1961bd679b 100644
--- a/Content.Server/Wieldable/Components/IncreaseDamageOnWieldComponent.cs
+++ b/Content.Server/Wieldable/Components/IncreaseDamageOnWieldComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Wieldable.Components
{
[RegisterComponent, Friend(typeof(WieldableSystem))]
- public class IncreaseDamageOnWieldComponent : Component
+ public sealed class IncreaseDamageOnWieldComponent : Component
{
[DataField("modifiers", required: true)]
public DamageModifierSet Modifiers = default!;
diff --git a/Content.Server/Wieldable/Components/WieldableComponent.cs b/Content.Server/Wieldable/Components/WieldableComponent.cs
index a3210e6999..ecc4b4cac3 100644
--- a/Content.Server/Wieldable/Components/WieldableComponent.cs
+++ b/Content.Server/Wieldable/Components/WieldableComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Wieldable.Components
/// Used for objects that can be wielded in two or more hands,
///
[RegisterComponent, Friend(typeof(WieldableSystem))]
- public class WieldableComponent : Component
+ public sealed class WieldableComponent : Component
{
[DataField("wieldSound")]
public SoundSpecifier? WieldSound = new SoundPathSpecifier("/Audio/Effects/thudswoosh.ogg");
diff --git a/Content.Server/Wieldable/WieldableSystem.cs b/Content.Server/Wieldable/WieldableSystem.cs
index 3812f18cca..d993bc7eba 100644
--- a/Content.Server/Wieldable/WieldableSystem.cs
+++ b/Content.Server/Wieldable/WieldableSystem.cs
@@ -16,7 +16,7 @@ using Robust.Shared.Player;
namespace Content.Server.Wieldable
{
- public class WieldableSystem : EntitySystem
+ public sealed class WieldableSystem : EntitySystem
{
[Dependency] private readonly DoAfterSystem _doAfter = default!;
[Dependency] private readonly HandVirtualItemSystem _virtualItemSystem = default!;
@@ -237,14 +237,14 @@ namespace Content.Server.Wieldable
#region Events
- public class BeforeWieldEvent : CancellableEntityEventArgs
+ public sealed class BeforeWieldEvent : CancellableEntityEventArgs
{
}
///
/// Raised on the item that has been wielded.
///
- public class ItemWieldedEvent : EntityEventArgs
+ public sealed class ItemWieldedEvent : EntityEventArgs
{
public EntityUid? User;
@@ -257,7 +257,7 @@ namespace Content.Server.Wieldable
///
/// Raised on the user who wielded the item.
///
- public class WieldedItemEvent : EntityEventArgs
+ public sealed class WieldedItemEvent : EntityEventArgs
{
public EntityUid Item;
@@ -267,14 +267,14 @@ namespace Content.Server.Wieldable
}
}
- public class BeforeUnwieldEvent : CancellableEntityEventArgs
+ public sealed class BeforeUnwieldEvent : CancellableEntityEventArgs
{
}
///
/// Raised on the item that has been unwielded.
///
- public class ItemUnwieldedEvent : EntityEventArgs
+ public sealed class ItemUnwieldedEvent : EntityEventArgs
{
public EntityUid? User;
///
@@ -292,7 +292,7 @@ namespace Content.Server.Wieldable
///
/// Raised on the user who unwielded the item.
///
- public class UnwieldedItemEvent : EntityEventArgs
+ public sealed class UnwieldedItemEvent : EntityEventArgs
{
public EntityUid Item;
diff --git a/Content.Server/WireHacking/WireHackingSystem.cs b/Content.Server/WireHacking/WireHackingSystem.cs
index 781932ec9e..60dd9f8ee6 100644
--- a/Content.Server/WireHacking/WireHackingSystem.cs
+++ b/Content.Server/WireHacking/WireHackingSystem.cs
@@ -16,7 +16,7 @@ using static Content.Shared.Wires.SharedWiresComponent;
namespace Content.Server.WireHacking
{
- public class WireHackingSystem : EntitySystem
+ public sealed class WireHackingSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly ActionBlockerSystem _blocker = default!;
diff --git a/Content.Server/WireHacking/WiresComponent.cs b/Content.Server/WireHacking/WiresComponent.cs
index 878ca2614a..54af7dbd26 100644
--- a/Content.Server/WireHacking/WiresComponent.cs
+++ b/Content.Server/WireHacking/WiresComponent.cs
@@ -30,7 +30,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.WireHacking
{
[RegisterComponent]
- public class WiresComponent : SharedWiresComponent, IInteractUsing
+ public sealed class WiresComponent : SharedWiresComponent, IInteractUsing
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly IEntityManager _entities = default!;
@@ -202,7 +202,7 @@ namespace Content.Server.WireHacking
return wire.IsCut;
}
- public class Wire
+ public sealed class Wire
{
///
/// The component that registered the wire.
@@ -251,7 +251,7 @@ namespace Content.Server.WireHacking
///
/// Used by .
///
- public class WiresBuilder
+ public sealed class WiresBuilder
{
private readonly WiresComponent _wires;
private readonly IWires _owner;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactComponent.cs
index 5cd134cc6a..3d6bc321b4 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Server.Xenoarchaeology.XenoArtifacts;
[RegisterComponent]
-public class ArtifactComponent : Component
+public sealed class ArtifactComponent : Component
{
///
/// Should artifact pick a random trigger on startup?
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactSystem.cs
index 6ba1800f0d..c11fc65ad7 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/ArtifactSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Xenoarchaeology.XenoArtifacts;
-public class ArtifactSystem : EntitySystem
+public sealed class ArtifactSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/GasArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/GasArtifactComponent.cs
index dad141f1d3..42e8cd31e4 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/GasArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/GasArtifactComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
/// Spawn a random gas with random temperature when artifact activated.
///
[RegisterComponent]
-public class GasArtifactComponent : Component
+public sealed class GasArtifactComponent : Component
{
public override string Name => "GasArtifact";
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/RadiateArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/RadiateArtifactComponent.cs
index 249e9f4abe..2e4a3587ab 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/RadiateArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/RadiateArtifactComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
/// Spawn RadiationPulse when artifact activated.
///
[RegisterComponent]
-public class RadiateArtifactComponent : Component
+public sealed class RadiateArtifactComponent : Component
{
public override string Name => "RadiateArtifact";
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/SpawnArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/SpawnArtifactComponent.cs
index 35d9293e36..58ac8cef61 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/SpawnArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/SpawnArtifactComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
/// It could be an angry mob or some random item.
///
[RegisterComponent]
-public class SpawnArtifactComponent : Component
+public sealed class SpawnArtifactComponent : Component
{
[DataField("random")]
public bool RandomPrototype = true;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TelepathicArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TelepathicArtifactComponent.cs
index 3ad2c30d04..3552569ce2 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TelepathicArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TelepathicArtifactComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
/// Thoughts are shown as popups and unique for each player.
///
[RegisterComponent]
-public class TelepathicArtifactComponent : Component
+public sealed class TelepathicArtifactComponent : Component
{
///
/// Loc string ids of telepathic messages.
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TemperatureArtifactComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TemperatureArtifactComponent.cs
index 4d62253045..6b64788aec 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TemperatureArtifactComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Components/TemperatureArtifactComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
/// Change atmospherics temperature until it reach target.
///
[RegisterComponent]
-public class TemperatureArtifactComponent : Component
+public sealed class TemperatureArtifactComponent : Component
{
public override string Name => "TemperatureArtifact";
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/GasArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/GasArtifactSystem.cs
index bce2a3a5de..ea0bf936de 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/GasArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/GasArtifactSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Random;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
-public class GasArtifactSystem : EntitySystem
+public sealed class GasArtifactSystem : EntitySystem
{
[Dependency] private readonly AtmosphereSystem _atmosphereSystem = default!;
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/RadiateArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/RadiateArtifactSystem.cs
index 0e7dc5faf2..28579aaa6d 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/RadiateArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/RadiateArtifactSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.GameObjects;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
-public class RadiateArtifactSystem : EntitySystem
+public sealed class RadiateArtifactSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/SpawnArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/SpawnArtifactSystem.cs
index de2fda3ffe..a17e50fe68 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/SpawnArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/SpawnArtifactSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Random;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
-public class SpawnArtifactSystem : EntitySystem
+public sealed class SpawnArtifactSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TelepathicArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TelepathicArtifactSystem.cs
index 90736f6edc..8c5a77efe9 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TelepathicArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TelepathicArtifactSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Random;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
-public class TelepathicArtifactSystem : EntitySystem
+public sealed class TelepathicArtifactSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly IEntityLookup _lookup = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TemperatureArtifactSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TemperatureArtifactSystem.cs
index 40c9146bb7..6e4da2b522 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TemperatureArtifactSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Effects/Systems/TemperatureArtifactSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Systems;
-public class TemperatureArtifactSystem : EntitySystem
+public sealed class TemperatureArtifactSystem : EntitySystem
{
[Dependency] private readonly AtmosphereSystem _atmosphereSystem = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Events/ArtifactActivatedEvent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Events/ArtifactActivatedEvent.cs
index 32da8b5fde..812e71f9f7 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Events/ArtifactActivatedEvent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Events/ArtifactActivatedEvent.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Events;
/// Invokes when artifact was successfully activated.
/// Used to start attached effects.
///
-public class ArtifactActivatedEvent : EntityEventArgs
+public sealed class ArtifactActivatedEvent : EntityEventArgs
{
///
/// Entity that activate this artifact.
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Events/RandomizeTriggerEvent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Events/RandomizeTriggerEvent.cs
index 3aa03fd46d..c5ba79bb31 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Events/RandomizeTriggerEvent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Events/RandomizeTriggerEvent.cs
@@ -5,7 +5,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Events;
///
/// Force to randomize artifact triggers.
///
-public class RandomizeTriggerEvent : EntityEventArgs
+public sealed class RandomizeTriggerEvent : EntityEventArgs
{
}
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteComponent.cs
index f328a1da53..21ccf65595 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Server.Xenoarchaeology.XenoArtifacts;
[RegisterComponent]
-public class RandomArtifactSpriteComponent : Component
+public sealed class RandomArtifactSpriteComponent : Component
{
[DataField("minSprite")]
public int MinSprite = 1;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteSystem.cs
index 59cfb94952..688dd2e396 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/RandomArtifactSpriteSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Timing;
namespace Content.Server.Xenoarchaeology.XenoArtifacts;
-public class RandomArtifactSpriteSystem : EntitySystem
+public sealed class RandomArtifactSpriteSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly IGameTiming _time = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactGasTriggerComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactGasTriggerComponent.cs
index ec859e0066..8cbb607215 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactGasTriggerComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactGasTriggerComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Triggers.Components;
/// Activates artifact when it surrounded by certain gas.
///
[RegisterComponent]
-public class ArtifactGasTriggerComponent : Component
+public sealed class ArtifactGasTriggerComponent : Component
{
///
/// List of possible activation gases to pick on startup.
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactInteractionTriggerComponent.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactInteractionTriggerComponent.cs
index fe682a3783..9ab33f6a22 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactInteractionTriggerComponent.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Components/ArtifactInteractionTriggerComponent.cs
@@ -6,6 +6,6 @@ namespace Content.Server.Xenoarchaeology.XenoArtifacts.Triggers.Components;
/// Activate artifact just by touching it.
///
[RegisterComponent]
-public class ArtifactInteractionTriggerComponent : Component
+public sealed class ArtifactInteractionTriggerComponent : Component
{
}
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactGasTriggerSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactGasTriggerSystem.cs
index 0d47f20975..7b39b0cf7c 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactGasTriggerSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactGasTriggerSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Random;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Triggers.Systems;
-public class ArtifactGasTriggerSystem : EntitySystem
+public sealed class ArtifactGasTriggerSystem : EntitySystem
{
[Dependency] private readonly IRobustRandom _random = default!;
[Dependency] private readonly AtmosphereSystem _atmosphereSystem = default!;
diff --git a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactInteractionTriggerSystem.cs b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactInteractionTriggerSystem.cs
index 1d51cbe097..6cdabf7b15 100644
--- a/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactInteractionTriggerSystem.cs
+++ b/Content.Server/Xenoarchaeology/XenoArtifacts/Triggers/Systems/ArtifactInteractionTriggerSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Triggers.Systems;
-public class ArtifactInteractionTriggerSystem : EntitySystem
+public sealed class ArtifactInteractionTriggerSystem : EntitySystem
{
[Dependency] private readonly ArtifactSystem _artifactSystem = default!;
diff --git a/Content.Shared/AI/SharedAiDebug.cs b/Content.Shared/AI/SharedAiDebug.cs
index 48c70c2960..5f681fa959 100644
--- a/Content.Shared/AI/SharedAiDebug.cs
+++ b/Content.Shared/AI/SharedAiDebug.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.AI
{
#region Mob Debug
[Serializable, NetSerializable]
- public class UtilityAiDebugMessage : EntityEventArgs
+ public sealed class UtilityAiDebugMessage : EntityEventArgs
{
public EntityUid EntityUid { get; }
public double PlanningTime { get; }
@@ -39,10 +39,10 @@ namespace Content.Shared.AI
/// Client asks the server for the pathfinding graph details
///
[Serializable, NetSerializable]
- public class RequestPathfindingGraphMessage : EntityEventArgs {}
+ public sealed class RequestPathfindingGraphMessage : EntityEventArgs {}
[Serializable, NetSerializable]
- public class PathfindingGraphMessage : EntityEventArgs
+ public sealed class PathfindingGraphMessage : EntityEventArgs
{
public Dictionary> Graph { get; }
@@ -52,7 +52,7 @@ namespace Content.Shared.AI
}
}
- public class AStarRouteDebug
+ public sealed class AStarRouteDebug
{
public EntityUid EntityUid { get; }
public Queue Route { get; }
@@ -75,7 +75,7 @@ namespace Content.Shared.AI
}
}
- public class JpsRouteDebug
+ public sealed class JpsRouteDebug
{
public EntityUid EntityUid { get; }
public Queue Route { get; }
@@ -96,7 +96,7 @@ namespace Content.Shared.AI
}
[Serializable, NetSerializable]
- public class AStarRouteMessage : EntityEventArgs
+ public sealed class AStarRouteMessage : EntityEventArgs
{
public readonly EntityUid EntityUid;
public readonly IEnumerable Route;
@@ -120,7 +120,7 @@ namespace Content.Shared.AI
}
[Serializable, NetSerializable]
- public class JpsRouteMessage : EntityEventArgs
+ public sealed class JpsRouteMessage : EntityEventArgs
{
public readonly EntityUid EntityUid;
public readonly IEnumerable Route;
diff --git a/Content.Shared/AME/SharedAMEControllerComponent.cs b/Content.Shared/AME/SharedAMEControllerComponent.cs
index 379a97ad2e..1d69c4d3b8 100644
--- a/Content.Shared/AME/SharedAMEControllerComponent.cs
+++ b/Content.Shared/AME/SharedAMEControllerComponent.cs
@@ -4,10 +4,11 @@ using Robust.Shared.Serialization;
namespace Content.Shared.AME
{
+ [Virtual]
public class SharedAMEControllerComponent : Component
{
[Serializable, NetSerializable]
- public class AMEControllerBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class AMEControllerBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly bool HasPower;
public readonly bool IsMaster;
@@ -30,7 +31,7 @@ namespace Content.Shared.AME
}
[Serializable, NetSerializable]
- public class UiButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class UiButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
diff --git a/Content.Shared/AME/SharedAMEShieldComponent.cs b/Content.Shared/AME/SharedAMEShieldComponent.cs
index bb7b04a626..deb4da88db 100644
--- a/Content.Shared/AME/SharedAMEShieldComponent.cs
+++ b/Content.Shared/AME/SharedAMEShieldComponent.cs
@@ -4,6 +4,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.AME
{
+ [Virtual]
public class SharedAMEShieldComponent : Component
{
[Serializable, NetSerializable]
diff --git a/Content.Shared/Access/AccessLevelPrototype.cs b/Content.Shared/Access/AccessLevelPrototype.cs
index c23e0db8ef..e4880c77aa 100644
--- a/Content.Shared/Access/AccessLevelPrototype.cs
+++ b/Content.Shared/Access/AccessLevelPrototype.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Access
/// Defines a single access level that can be stored on ID cards and checked for.
///
[Prototype("accessLevel")]
- public class AccessLevelPrototype : IPrototype
+ public sealed class AccessLevelPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Access/Components/AccessReaderComponent.cs b/Content.Shared/Access/Components/AccessReaderComponent.cs
index 0a45affdab..83cb454348 100644
--- a/Content.Shared/Access/Components/AccessReaderComponent.cs
+++ b/Content.Shared/Access/Components/AccessReaderComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Access.Components
/// and allows checking if something or somebody is authorized with these access levels.
///
[RegisterComponent]
- public class AccessReaderComponent : Component
+ public sealed class AccessReaderComponent : Component
{
///
/// Whether this reader is enabled or not. If disabled, all access
diff --git a/Content.Shared/Access/Components/IdCardComponent.cs b/Content.Shared/Access/Components/IdCardComponent.cs
index 8f04e90b3a..ccd2ef47e3 100644
--- a/Content.Shared/Access/Components/IdCardComponent.cs
+++ b/Content.Shared/Access/Components/IdCardComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Access.Components
// networked.
[RegisterComponent]
[Friend(typeof(SharedIdCardSystem), typeof(SharedPDASystem))]
- public class IdCardComponent : Component
+ public sealed class IdCardComponent : Component
{
[DataField("originalOwnerName")]
public string OriginalOwnerName = default!;
diff --git a/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs b/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs
index b106ac8763..3e701be150 100644
--- a/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs
+++ b/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Access.Components
{
- public class SharedIdCardConsoleComponent : Component
+ public abstract class SharedIdCardConsoleComponent : Component
{
public const int MaxFullNameLength = 256;
public const int MaxJobTitleLength = 256;
@@ -25,7 +25,7 @@ namespace Content.Shared.Access.Components
}
[Serializable, NetSerializable]
- public class IdButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class IdButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
@@ -36,7 +36,7 @@ namespace Content.Shared.Access.Components
}
[Serializable, NetSerializable]
- public class WriteToTargetIdMessage : BoundUserInterfaceMessage
+ public sealed class WriteToTargetIdMessage : BoundUserInterfaceMessage
{
public readonly string FullName;
public readonly string JobTitle;
@@ -51,7 +51,7 @@ namespace Content.Shared.Access.Components
}
[Serializable, NetSerializable]
- public class IdCardConsoleBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class IdCardConsoleBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly string PrivilegedIdName;
public readonly bool IsPrivilegedIdPresent;
diff --git a/Content.Shared/Access/Systems/AccessReaderSystem.cs b/Content.Shared/Access/Systems/AccessReaderSystem.cs
index c4c47a6da2..1c9d064476 100644
--- a/Content.Shared/Access/Systems/AccessReaderSystem.cs
+++ b/Content.Shared/Access/Systems/AccessReaderSystem.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Prototypes;
namespace Content.Shared.Access.Systems
{
- public class AccessReaderSystem : EntitySystem
+ public sealed class AccessReaderSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly InventorySystem _inventorySystem = default!;
diff --git a/Content.Shared/Actions/ActionManager.cs b/Content.Shared/Actions/ActionManager.cs
index 524fa6cb47..8166f79dc2 100644
--- a/Content.Shared/Actions/ActionManager.cs
+++ b/Content.Shared/Actions/ActionManager.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Actions
///
/// Provides access to all configured actions by action type.
///
- public class ActionManager
+ public sealed class ActionManager
{
[Dependency]
private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Shared/Actions/Behaviors/IInstantAction.cs b/Content.Shared/Actions/Behaviors/IInstantAction.cs
index 910f226bb2..7d4f88d005 100644
--- a/Content.Shared/Actions/Behaviors/IInstantAction.cs
+++ b/Content.Shared/Actions/Behaviors/IInstantAction.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Actions.Behaviors
void DoInstantAction(InstantActionEventArgs args);
}
- public class InstantActionEventArgs : ActionEventArgs
+ public sealed class InstantActionEventArgs : ActionEventArgs
{
public InstantActionEventArgs(EntityUid performer, ActionType actionType) : base(performer, actionType)
{
diff --git a/Content.Shared/Actions/Behaviors/ITargetEntityAction.cs b/Content.Shared/Actions/Behaviors/ITargetEntityAction.cs
index 4288585371..629acc0713 100644
--- a/Content.Shared/Actions/Behaviors/ITargetEntityAction.cs
+++ b/Content.Shared/Actions/Behaviors/ITargetEntityAction.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Actions.Behaviors
void DoTargetEntityAction(TargetEntityActionEventArgs args);
}
- public class TargetEntityActionEventArgs : ActionEventArgs
+ public sealed class TargetEntityActionEventArgs : ActionEventArgs
{
///
/// Entity being targeted
diff --git a/Content.Shared/Actions/Behaviors/ITargetEntityItemAction.cs b/Content.Shared/Actions/Behaviors/ITargetEntityItemAction.cs
index d761251a26..9bf07df15b 100644
--- a/Content.Shared/Actions/Behaviors/ITargetEntityItemAction.cs
+++ b/Content.Shared/Actions/Behaviors/ITargetEntityItemAction.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Actions.Behaviors
void DoTargetEntityAction(TargetEntityItemActionEventArgs args);
}
- public class TargetEntityItemActionEventArgs : ItemActionEventArgs
+ public sealed class TargetEntityItemActionEventArgs : ItemActionEventArgs
{
///
/// Entity being targeted
diff --git a/Content.Shared/Actions/Behaviors/ITargetPointAction.cs b/Content.Shared/Actions/Behaviors/ITargetPointAction.cs
index 724a4acd17..2b329df310 100644
--- a/Content.Shared/Actions/Behaviors/ITargetPointAction.cs
+++ b/Content.Shared/Actions/Behaviors/ITargetPointAction.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Actions.Behaviors
void DoTargetPointAction(TargetPointActionEventArgs args);
}
- public class TargetPointActionEventArgs : ActionEventArgs
+ public sealed class TargetPointActionEventArgs : ActionEventArgs
{
///
/// Local coordinates of the targeted position.
diff --git a/Content.Shared/Actions/Behaviors/ITargetPointItemAction.cs b/Content.Shared/Actions/Behaviors/ITargetPointItemAction.cs
index a2725ff7e0..050b055f83 100644
--- a/Content.Shared/Actions/Behaviors/ITargetPointItemAction.cs
+++ b/Content.Shared/Actions/Behaviors/ITargetPointItemAction.cs
@@ -17,7 +17,7 @@ namespace Content.Shared.Actions.Behaviors
void DoTargetPointAction(TargetPointItemActionEventArgs args);
}
- public class TargetPointItemActionEventArgs : ItemActionEventArgs
+ public sealed class TargetPointItemActionEventArgs : ItemActionEventArgs
{
///
/// Local coordinates of the targeted position.
diff --git a/Content.Shared/Actions/Behaviors/IToggleAction.cs b/Content.Shared/Actions/Behaviors/IToggleAction.cs
index 3fecdc734a..c1263c5fd4 100644
--- a/Content.Shared/Actions/Behaviors/IToggleAction.cs
+++ b/Content.Shared/Actions/Behaviors/IToggleAction.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Actions.Behaviors
bool DoToggleAction(ToggleActionEventArgs args);
}
- public class ToggleActionEventArgs : ActionEventArgs
+ public sealed class ToggleActionEventArgs : ActionEventArgs
{
///
/// True if the toggle is attempting to be toggled on, false if attempting to toggle off
diff --git a/Content.Shared/Actions/Behaviors/Item/IInstantItemAction.cs b/Content.Shared/Actions/Behaviors/Item/IInstantItemAction.cs
index 918997dc2f..8adce4ce9a 100644
--- a/Content.Shared/Actions/Behaviors/Item/IInstantItemAction.cs
+++ b/Content.Shared/Actions/Behaviors/Item/IInstantItemAction.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Actions.Behaviors.Item
void DoInstantAction(InstantItemActionEventArgs args);
}
- public class InstantItemActionEventArgs : ItemActionEventArgs
+ public sealed class InstantItemActionEventArgs : ItemActionEventArgs
{
public InstantItemActionEventArgs(EntityUid performer, EntityUid item, ItemActionType actionType) :
base(performer, item, actionType)
diff --git a/Content.Shared/Actions/Behaviors/Item/IToggleItemAction.cs b/Content.Shared/Actions/Behaviors/Item/IToggleItemAction.cs
index 4d0a0cdaf4..953de58a47 100644
--- a/Content.Shared/Actions/Behaviors/Item/IToggleItemAction.cs
+++ b/Content.Shared/Actions/Behaviors/Item/IToggleItemAction.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Actions.Behaviors.Item
bool DoToggleAction(ToggleItemActionEventArgs args);
}
- public class ToggleItemActionEventArgs : ItemActionEventArgs
+ public sealed class ToggleItemActionEventArgs : ItemActionEventArgs
{
///
/// True if the toggle was toggled on, false if it was toggled off
diff --git a/Content.Shared/Actions/Components/ItemActionsComponent.cs b/Content.Shared/Actions/Components/ItemActionsComponent.cs
index 4b80f298aa..b80b87bbb2 100644
--- a/Content.Shared/Actions/Components/ItemActionsComponent.cs
+++ b/Content.Shared/Actions/Components/ItemActionsComponent.cs
@@ -24,7 +24,7 @@ namespace Content.Shared.Actions.Components
/// Currently only maintained server side and not synced to client, as are all the equip/unequip events.
///
[RegisterComponent]
- public class ItemActionsComponent : Component
+ public sealed class ItemActionsComponent : Component
{
///
/// Configuration for the item actions initially provided by this item. Actions defined here
@@ -182,7 +182,7 @@ namespace Content.Shared.Actions.Components
/// Configuration for an item action provided by an item.
///
[DataDefinition]
- public class ItemActionConfig : ISerializationHooks
+ public sealed class ItemActionConfig : ISerializationHooks
{
[DataField("actionType", required: true)]
public ItemActionType ActionType { get; private set; } = ItemActionType.Error;
diff --git a/Content.Shared/Actions/Components/SharedActionsComponent.cs b/Content.Shared/Actions/Components/SharedActionsComponent.cs
index 88239b0cf3..5fb0ecf68d 100644
--- a/Content.Shared/Actions/Components/SharedActionsComponent.cs
+++ b/Content.Shared/Actions/Components/SharedActionsComponent.cs
@@ -383,7 +383,7 @@ namespace Content.Shared.Actions.Components
}
[Serializable, NetSerializable]
- public class ActionComponentState : ComponentState
+ public sealed class ActionComponentState : ComponentState
{
public Dictionary Actions;
public Dictionary> ItemActions;
@@ -488,7 +488,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to run the instant action logic.
///
[Serializable, NetSerializable]
- public class PerformInstantActionMessage : PerformActionMessage
+ public sealed class PerformInstantActionMessage : PerformActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Instant;
@@ -501,7 +501,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to run the instant action logic.
///
[Serializable, NetSerializable]
- public class PerformInstantItemActionMessage : PerformItemActionMessage
+ public sealed class PerformInstantItemActionMessage : PerformItemActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Instant;
@@ -535,7 +535,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to toggle on the indicated action.
///
[Serializable, NetSerializable]
- public class PerformToggleOnActionMessage : PerformActionMessage, IToggleActionMessage
+ public sealed class PerformToggleOnActionMessage : PerformActionMessage, IToggleActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Toggle;
public bool ToggleOn => true;
@@ -546,7 +546,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to toggle off the indicated action.
///
[Serializable, NetSerializable]
- public class PerformToggleOffActionMessage : PerformActionMessage, IToggleActionMessage
+ public sealed class PerformToggleOffActionMessage : PerformActionMessage, IToggleActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Toggle;
public bool ToggleOn => false;
@@ -557,7 +557,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to toggle on the indicated action.
///
[Serializable, NetSerializable]
- public class PerformToggleOnItemActionMessage : PerformItemActionMessage, IToggleActionMessage
+ public sealed class PerformToggleOnItemActionMessage : PerformItemActionMessage, IToggleActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Toggle;
public bool ToggleOn => true;
@@ -568,7 +568,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to toggle off the indicated action.
///
[Serializable, NetSerializable]
- public class PerformToggleOffItemActionMessage : PerformItemActionMessage, IToggleActionMessage
+ public sealed class PerformToggleOffItemActionMessage : PerformItemActionMessage, IToggleActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.Toggle;
public bool ToggleOn => false;
@@ -579,7 +579,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to target the provided point with a particular action.
///
[Serializable, NetSerializable]
- public class PerformTargetPointActionMessage : PerformActionMessage, ITargetPointActionMessage
+ public sealed class PerformTargetPointActionMessage : PerformActionMessage, ITargetPointActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.TargetPoint;
private readonly EntityCoordinates _target;
@@ -595,7 +595,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to target the provided point with a particular action.
///
[Serializable, NetSerializable]
- public class PerformTargetPointItemActionMessage : PerformItemActionMessage, ITargetPointActionMessage
+ public sealed class PerformTargetPointItemActionMessage : PerformItemActionMessage, ITargetPointActionMessage
{
private readonly EntityCoordinates _target;
public EntityCoordinates Target => _target;
@@ -611,7 +611,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to target the provided entity with a particular action.
///
[Serializable, NetSerializable]
- public class PerformTargetEntityActionMessage : PerformActionMessage, ITargetEntityActionMessage
+ public sealed class PerformTargetEntityActionMessage : PerformActionMessage, ITargetEntityActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.TargetEntity;
private readonly EntityUid _target;
@@ -627,7 +627,7 @@ namespace Content.Shared.Actions.Components
/// A message that tells server we want to target the provided entity with a particular action.
///
[Serializable, NetSerializable]
- public class PerformTargetEntityItemActionMessage : PerformItemActionMessage, ITargetEntityActionMessage
+ public sealed class PerformTargetEntityItemActionMessage : PerformItemActionMessage, ITargetEntityActionMessage
{
public override BehaviorType BehaviorType => BehaviorType.TargetEntity;
private readonly EntityUid _target;
diff --git a/Content.Shared/Actions/IActionAttempt.cs b/Content.Shared/Actions/IActionAttempt.cs
index 5aa6eb90bd..ab3726057f 100644
--- a/Content.Shared/Actions/IActionAttempt.cs
+++ b/Content.Shared/Actions/IActionAttempt.cs
@@ -59,7 +59,7 @@ namespace Content.Shared.Actions
void DoTargetEntityAction(EntityUid player, EntityUid target);
}
- public class ActionAttempt : IActionAttempt
+ public sealed class ActionAttempt : IActionAttempt
{
private readonly ActionPrototype _action;
@@ -139,7 +139,7 @@ namespace Content.Shared.Actions
}
}
- public class ItemActionAttempt : IActionAttempt
+ public sealed class ItemActionAttempt : IActionAttempt
{
private readonly ItemActionPrototype _action;
private readonly EntityUid _item;
diff --git a/Content.Shared/Actions/Prototypes/ActionPrototype.cs b/Content.Shared/Actions/Prototypes/ActionPrototype.cs
index bc4422d052..6288e0f35e 100644
--- a/Content.Shared/Actions/Prototypes/ActionPrototype.cs
+++ b/Content.Shared/Actions/Prototypes/ActionPrototype.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Actions.Prototypes
///
[Prototype("action")]
[DataDefinition]
- public class ActionPrototype : BaseActionPrototype, ISerializationHooks
+ public sealed class ActionPrototype : BaseActionPrototype, ISerializationHooks
{
///
/// Type of action, no 2 action prototypes should have the same one.
diff --git a/Content.Shared/Actions/Prototypes/ItemActionPrototype.cs b/Content.Shared/Actions/Prototypes/ItemActionPrototype.cs
index 3ab67b45a2..6a3d40358e 100644
--- a/Content.Shared/Actions/Prototypes/ItemActionPrototype.cs
+++ b/Content.Shared/Actions/Prototypes/ItemActionPrototype.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Actions.Prototypes
///
[Prototype("itemAction")]
[DataDefinition]
- public class ItemActionPrototype : BaseActionPrototype, ISerializationHooks
+ public sealed class ItemActionPrototype : BaseActionPrototype, ISerializationHooks
{
///
/// Type of item action, no 2 itemAction prototypes should have the same one.
diff --git a/Content.Shared/Actions/SharedActionSystem.cs b/Content.Shared/Actions/SharedActionSystem.cs
index 7f21be8e0b..df54099f83 100644
--- a/Content.Shared/Actions/SharedActionSystem.cs
+++ b/Content.Shared/Actions/SharedActionSystem.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Actions
///
/// Evicts action states with expired cooldowns.
///
- public class SharedActionSystem : EntitySystem
+ public sealed class SharedActionSystem : EntitySystem
{
private const float CooldownCheckIntervalSeconds = 10;
private float _timeSinceCooldownCheck;
diff --git a/Content.Shared/Acts/ActSystem.cs b/Content.Shared/Acts/ActSystem.cs
index 272a3b45f0..03add7917d 100644
--- a/Content.Shared/Acts/ActSystem.cs
+++ b/Content.Shared/Acts/ActSystem.cs
@@ -17,9 +17,9 @@ namespace Content.Shared.Acts
void OnDestroy(DestructionEventArgs eventArgs);
}
- public class DestructionEventArgs : EntityEventArgs { }
+ public sealed class DestructionEventArgs : EntityEventArgs { }
- public class BreakageEventArgs : EntityEventArgs { }
+ public sealed class BreakageEventArgs : EntityEventArgs { }
public interface IBreakAct
{
@@ -37,7 +37,7 @@ namespace Content.Shared.Acts
void OnExplosion(ExplosionEventArgs eventArgs);
}
- public class ExplosionEventArgs : EventArgs
+ public sealed class ExplosionEventArgs : EventArgs
{
public EntityCoordinates Source { get; set; }
public EntityUid Target { get; set; }
diff --git a/Content.Shared/Administration/AdminLogsEuiState.cs b/Content.Shared/Administration/AdminLogsEuiState.cs
index 3921a3bbb5..d03bda535a 100644
--- a/Content.Shared/Administration/AdminLogsEuiState.cs
+++ b/Content.Shared/Administration/AdminLogsEuiState.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Administration;
[Serializable, NetSerializable]
-public class AdminLogsEuiState : EuiStateBase
+public sealed class AdminLogsEuiState : EuiStateBase
{
public AdminLogsEuiState(int roundId, Dictionary players)
{
diff --git a/Content.Shared/Administration/EditSolutionsEuiState.cs b/Content.Shared/Administration/EditSolutionsEuiState.cs
index 5c3fdc938f..a075f4bcb1 100644
--- a/Content.Shared/Administration/EditSolutionsEuiState.cs
+++ b/Content.Shared/Administration/EditSolutionsEuiState.cs
@@ -8,7 +8,7 @@ using Content.Shared.Chemistry.Components;
namespace Content.Shared.Administration
{
[Serializable, NetSerializable]
- public class EditSolutionsEuiState : EuiStateBase
+ public sealed class EditSolutionsEuiState : EuiStateBase
{
public readonly EntityUid Target;
public readonly Dictionary? Solutions;
diff --git a/Content.Shared/Administration/Events/FullPlayerListEvent.cs b/Content.Shared/Administration/Events/FullPlayerListEvent.cs
index c8160fb3f7..4b30b11c1e 100644
--- a/Content.Shared/Administration/Events/FullPlayerListEvent.cs
+++ b/Content.Shared/Administration/Events/FullPlayerListEvent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Administration.Events
{
[Serializable, NetSerializable]
- public class FullPlayerListEvent : EntityEventArgs
+ public sealed class FullPlayerListEvent : EntityEventArgs
{
public List PlayersInfo = new();
}
diff --git a/Content.Shared/Administration/Events/PlayerInfoChangedEvent.cs b/Content.Shared/Administration/Events/PlayerInfoChangedEvent.cs
index 47a88ca179..d9285b1035 100644
--- a/Content.Shared/Administration/Events/PlayerInfoChangedEvent.cs
+++ b/Content.Shared/Administration/Events/PlayerInfoChangedEvent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Administration.Events
{
[NetSerializable, Serializable]
- public class PlayerInfoChangedEvent : EntityEventArgs
+ public sealed class PlayerInfoChangedEvent : EntityEventArgs
{
public PlayerInfo? PlayerInfo;
}
diff --git a/Content.Shared/Administration/GamePrototypeLoadMessage.cs b/Content.Shared/Administration/GamePrototypeLoadMessage.cs
index 51f40abafd..a014e0fa83 100644
--- a/Content.Shared/Administration/GamePrototypeLoadMessage.cs
+++ b/Content.Shared/Administration/GamePrototypeLoadMessage.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Network;
namespace Content.Shared.Administration;
-public class GamePrototypeLoadMessage : NetMessage
+public sealed class GamePrototypeLoadMessage : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.String;
diff --git a/Content.Shared/Administration/SetOutfitEuiState.cs b/Content.Shared/Administration/SetOutfitEuiState.cs
index d16d55bb24..c8cca5abec 100644
--- a/Content.Shared/Administration/SetOutfitEuiState.cs
+++ b/Content.Shared/Administration/SetOutfitEuiState.cs
@@ -6,7 +6,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Administration
{
[Serializable, NetSerializable]
- public class SetOutfitEuiState : EuiStateBase
+ public sealed class SetOutfitEuiState : EuiStateBase
{
public EntityUid TargetEntityId;
}
diff --git a/Content.Shared/Alert/AlertOrderPrototype.cs b/Content.Shared/Alert/AlertOrderPrototype.cs
index 0e0463dd6e..21b64705fc 100644
--- a/Content.Shared/Alert/AlertOrderPrototype.cs
+++ b/Content.Shared/Alert/AlertOrderPrototype.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Alert
///
[Prototype("alertOrder")]
[DataDefinition]
- public class AlertOrderPrototype : IPrototype, IComparer, ISerializationHooks
+ public sealed class AlertOrderPrototype : IPrototype, IComparer, ISerializationHooks
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Alert/AlertPrototype.cs b/Content.Shared/Alert/AlertPrototype.cs
index 4bbb1de323..d50dbed1a1 100644
--- a/Content.Shared/Alert/AlertPrototype.cs
+++ b/Content.Shared/Alert/AlertPrototype.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.Alert
/// An alert popup with associated icon, tooltip, and other data.
///
[Prototype("alert")]
- public class AlertPrototype : IPrototype, ISerializationHooks
+ public sealed class AlertPrototype : IPrototype, ISerializationHooks
{
[ViewVariables]
string IPrototype.ID => AlertType.ToString();
diff --git a/Content.Shared/Alert/AlertSyncEvent.cs b/Content.Shared/Alert/AlertSyncEvent.cs
index 2c605c36e9..3daf377085 100644
--- a/Content.Shared/Alert/AlertSyncEvent.cs
+++ b/Content.Shared/Alert/AlertSyncEvent.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Alert;
///
/// Raised when the AlertSystem needs alert sources to recalculate their alert states and set them.
///
-public class AlertSyncEvent : EntityEventArgs
+public sealed class AlertSyncEvent : EntityEventArgs
{
public EntityUid Euid { get; }
diff --git a/Content.Shared/Alert/AlertsComponent.cs b/Content.Shared/Alert/AlertsComponent.cs
index a21e498e0f..b6f823c2c4 100644
--- a/Content.Shared/Alert/AlertsComponent.cs
+++ b/Content.Shared/Alert/AlertsComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Alert;
///
[RegisterComponent]
[NetworkedComponent]
-public class AlertsComponent : Component
+public sealed class AlertsComponent : Component
{
[ViewVariables] public Dictionary Alerts = new();
}
diff --git a/Content.Shared/Alert/AlertsComponentState.cs b/Content.Shared/Alert/AlertsComponentState.cs
index f61bf3b8c6..9dea1d39b5 100644
--- a/Content.Shared/Alert/AlertsComponentState.cs
+++ b/Content.Shared/Alert/AlertsComponentState.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Alert;
[Serializable, NetSerializable]
-public class AlertsComponentState : ComponentState
+public sealed class AlertsComponentState : ComponentState
{
public Dictionary Alerts;
@@ -14,4 +14,4 @@ public class AlertsComponentState : ComponentState
{
Alerts = alerts;
}
-}
\ No newline at end of file
+}
diff --git a/Content.Shared/Alert/ClickAlertEvent.cs b/Content.Shared/Alert/ClickAlertEvent.cs
index b7a5a8e305..04938b29e2 100644
--- a/Content.Shared/Alert/ClickAlertEvent.cs
+++ b/Content.Shared/Alert/ClickAlertEvent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Alert;
/// A message that calls the click interaction on a alert
///
[Serializable, NetSerializable]
-public class ClickAlertEvent : EntityEventArgs
+public sealed class ClickAlertEvent : EntityEventArgs
{
public readonly AlertType Type;
@@ -16,4 +16,4 @@ public class ClickAlertEvent : EntityEventArgs
{
Type = alertType;
}
-}
\ No newline at end of file
+}
diff --git a/Content.Shared/Arcade/BlockGameMessages.cs b/Content.Shared/Arcade/BlockGameMessages.cs
index a6f850add5..88e1bb71d7 100644
--- a/Content.Shared/Arcade/BlockGameMessages.cs
+++ b/Content.Shared/Arcade/BlockGameMessages.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Arcade
public static class BlockGameMessages
{
[Serializable, NetSerializable]
- public class BlockGamePlayerActionMessage : BoundUserInterfaceMessage
+ public sealed class BlockGamePlayerActionMessage : BoundUserInterfaceMessage
{
public readonly BlockGamePlayerAction PlayerAction;
public BlockGamePlayerActionMessage(BlockGamePlayerAction playerAction)
@@ -18,7 +18,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameVisualUpdateMessage : BoundUserInterfaceMessage
+ public sealed class BlockGameVisualUpdateMessage : BoundUserInterfaceMessage
{
public readonly BlockGameVisualType GameVisualType;
public readonly BlockGameBlock[] Blocks;
@@ -37,7 +37,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameScoreUpdateMessage : BoundUserInterfaceMessage
+ public sealed class BlockGameScoreUpdateMessage : BoundUserInterfaceMessage
{
public readonly int Points;
public BlockGameScoreUpdateMessage(int points)
@@ -47,7 +47,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameUserStatusMessage : BoundUserInterfaceMessage
+ public sealed class BlockGameUserStatusMessage : BoundUserInterfaceMessage
{
public readonly bool IsPlayer;
@@ -57,7 +57,7 @@ namespace Content.Shared.Arcade
}
}
- [Serializable, NetSerializable]
+ [Serializable, NetSerializable, Virtual]
public class BlockGameSetScreenMessage : BoundUserInterfaceMessage
{
public readonly BlockGameScreen Screen;
@@ -70,7 +70,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameGameOverScreenMessage : BlockGameSetScreenMessage
+ public sealed class BlockGameGameOverScreenMessage : BlockGameSetScreenMessage
{
public readonly int FinalScore;
public readonly int? LocalPlacement;
@@ -93,7 +93,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameHighScoreUpdateMessage : BoundUserInterfaceMessage
+ public sealed class BlockGameHighScoreUpdateMessage : BoundUserInterfaceMessage
{
public List LocalHighscores;
public List GlobalHighscores;
@@ -106,7 +106,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class HighScoreEntry : IComparable
+ public sealed class HighScoreEntry : IComparable
{
public string Name;
public int Score;
@@ -125,7 +125,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class BlockGameLevelUpdateMessage : BoundUserInterfaceMessage
+ public sealed class BlockGameLevelUpdateMessage : BoundUserInterfaceMessage
{
public readonly int Level;
public BlockGameLevelUpdateMessage(int level)
diff --git a/Content.Shared/Arcade/SharedSpaceVillainArcadeComponent.cs b/Content.Shared/Arcade/SharedSpaceVillainArcadeComponent.cs
index 96a1f751ec..f67966b0b4 100644
--- a/Content.Shared/Arcade/SharedSpaceVillainArcadeComponent.cs
+++ b/Content.Shared/Arcade/SharedSpaceVillainArcadeComponent.cs
@@ -46,7 +46,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class SpaceVillainArcadePlayerActionMessage : BoundUserInterfaceMessage
+ public sealed class SpaceVillainArcadePlayerActionMessage : BoundUserInterfaceMessage
{
public readonly PlayerAction PlayerAction;
public SpaceVillainArcadePlayerActionMessage(PlayerAction playerAction)
@@ -56,7 +56,7 @@ namespace Content.Shared.Arcade
}
[Serializable, NetSerializable]
- public class SpaceVillainArcadeMetaDataUpdateMessage : SpaceVillainArcadeDataUpdateMessage
+ public sealed class SpaceVillainArcadeMetaDataUpdateMessage : SpaceVillainArcadeDataUpdateMessage
{
public readonly string GameTitle;
public readonly string EnemyName;
@@ -69,7 +69,7 @@ namespace Content.Shared.Arcade
}
}
- [Serializable, NetSerializable]
+ [Serializable, NetSerializable, Virtual]
public class SpaceVillainArcadeDataUpdateMessage : BoundUserInterfaceMessage
{
public readonly int PlayerHP;
diff --git a/Content.Shared/Atmos/AtmosCommandUtils.cs b/Content.Shared/Atmos/AtmosCommandUtils.cs
index 8536b546c8..b0217fd489 100644
--- a/Content.Shared/Atmos/AtmosCommandUtils.cs
+++ b/Content.Shared/Atmos/AtmosCommandUtils.cs
@@ -2,7 +2,7 @@ using System;
namespace Content.Shared.Atmos
{
- public class AtmosCommandUtils
+ public sealed class AtmosCommandUtils
{
///
/// Gas ID parser for atmospherics commands.
diff --git a/Content.Shared/Atmos/Components/SharedGasAnalyzerComponent.cs b/Content.Shared/Atmos/Components/SharedGasAnalyzerComponent.cs
index a5a730c35f..e21f8d910f 100644
--- a/Content.Shared/Atmos/Components/SharedGasAnalyzerComponent.cs
+++ b/Content.Shared/Atmos/Components/SharedGasAnalyzerComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Atmos.Components
{
[NetworkedComponent()]
- public class SharedGasAnalyzerComponent : Component
+ public abstract class SharedGasAnalyzerComponent : Component
{
[Serializable, NetSerializable]
public enum GasAnalyzerUiKey
@@ -16,7 +16,7 @@ namespace Content.Shared.Atmos.Components
}
[Serializable, NetSerializable]
- public class GasAnalyzerBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasAnalyzerBoundUserInterfaceState : BoundUserInterfaceState
{
public float Pressure;
public float Temperature;
@@ -57,7 +57,7 @@ namespace Content.Shared.Atmos.Components
}
[Serializable, NetSerializable]
- public class GasAnalyzerRefreshMessage : BoundUserInterfaceMessage
+ public sealed class GasAnalyzerRefreshMessage : BoundUserInterfaceMessage
{
public GasAnalyzerRefreshMessage() {}
}
@@ -71,7 +71,7 @@ namespace Content.Shared.Atmos.Components
}
[Serializable, NetSerializable]
- public class GasAnalyzerComponentState : ComponentState
+ public sealed class GasAnalyzerComponentState : ComponentState
{
public GasAnalyzerDanger Danger;
diff --git a/Content.Shared/Atmos/Components/SharedGasTankComponent.cs b/Content.Shared/Atmos/Components/SharedGasTankComponent.cs
index b3d5ff3b85..bfab3e2e62 100644
--- a/Content.Shared/Atmos/Components/SharedGasTankComponent.cs
+++ b/Content.Shared/Atmos/Components/SharedGasTankComponent.cs
@@ -11,18 +11,18 @@ namespace Content.Shared.Atmos.Components
}
[Serializable, NetSerializable]
- public class GasTankToggleInternalsMessage : BoundUserInterfaceMessage
+ public sealed class GasTankToggleInternalsMessage : BoundUserInterfaceMessage
{
}
[Serializable, NetSerializable]
- public class GasTankSetPressureMessage : BoundUserInterfaceMessage
+ public sealed class GasTankSetPressureMessage : BoundUserInterfaceMessage
{
public float Pressure { get; set; }
}
[Serializable, NetSerializable]
- public class GasTankBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasTankBoundUserInterfaceState : BoundUserInterfaceState
{
public float TankPressure { get; set; }
public float? OutputPressure { get; set; }
diff --git a/Content.Shared/Atmos/EntitySystems/SharedAtmosphereSystem.cs b/Content.Shared/Atmos/EntitySystems/SharedAtmosphereSystem.cs
index 22a0b4f5fa..32841932ba 100644
--- a/Content.Shared/Atmos/EntitySystems/SharedAtmosphereSystem.cs
+++ b/Content.Shared/Atmos/EntitySystems/SharedAtmosphereSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Atmos.EntitySystems
{
- public class SharedAtmosphereSystem : EntitySystem
+ public abstract class SharedAtmosphereSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
diff --git a/Content.Shared/Atmos/Monitor/AtmosAlarmThresholdPrototype.cs b/Content.Shared/Atmos/Monitor/AtmosAlarmThresholdPrototype.cs
index 3346bdbd60..37e3ad03bf 100644
--- a/Content.Shared/Atmos/Monitor/AtmosAlarmThresholdPrototype.cs
+++ b/Content.Shared/Atmos/Monitor/AtmosAlarmThresholdPrototype.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Atmos.Monitor
// except for the range boundaries
[Prototype("alarmThreshold")]
[Serializable, NetSerializable]
- public class AtmosAlarmThreshold : IPrototype, ISerializationHooks
+ public sealed class AtmosAlarmThreshold : IPrototype, ISerializationHooks
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Atmos/Monitor/Components/SharedAirAlarmComponent.cs b/Content.Shared/Atmos/Monitor/Components/SharedAirAlarmComponent.cs
index 97bb4e41c9..ceec55a592 100644
--- a/Content.Shared/Atmos/Monitor/Components/SharedAirAlarmComponent.cs
+++ b/Content.Shared/Atmos/Monitor/Components/SharedAirAlarmComponent.cs
@@ -63,15 +63,15 @@ namespace Content.Shared.Atmos.Monitor.Components
// would be nice to include the entire state here
// but it's already handled by messages
[Serializable, NetSerializable]
- public class AirAlarmUIState : BoundUserInterfaceState
+ public sealed class AirAlarmUIState : BoundUserInterfaceState
{}
[Serializable, NetSerializable]
- public class AirAlarmResyncAllDevicesMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmResyncAllDevicesMessage : BoundUserInterfaceMessage
{}
[Serializable, NetSerializable]
- public class AirAlarmSetAddressMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmSetAddressMessage : BoundUserInterfaceMessage
{
public string Address { get; }
@@ -82,7 +82,7 @@ namespace Content.Shared.Atmos.Monitor.Components
}
[Serializable, NetSerializable]
- public class AirAlarmUpdateAirDataMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmUpdateAirDataMessage : BoundUserInterfaceMessage
{
public AirAlarmAirData AirData;
@@ -93,7 +93,7 @@ namespace Content.Shared.Atmos.Monitor.Components
}
[Serializable, NetSerializable]
- public class AirAlarmUpdateAlarmModeMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmUpdateAlarmModeMessage : BoundUserInterfaceMessage
{
public AirAlarmMode Mode { get; }
@@ -104,7 +104,7 @@ namespace Content.Shared.Atmos.Monitor.Components
}
[Serializable, NetSerializable]
- public class AirAlarmUpdateDeviceDataMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmUpdateDeviceDataMessage : BoundUserInterfaceMessage
{
public string Address { get; }
public IAtmosDeviceData Data { get; }
@@ -117,7 +117,7 @@ namespace Content.Shared.Atmos.Monitor.Components
}
[Serializable, NetSerializable]
- public class AirAlarmUpdateAlarmThresholdMessage : BoundUserInterfaceMessage
+ public sealed class AirAlarmUpdateAlarmThresholdMessage : BoundUserInterfaceMessage
{
public AtmosAlarmThreshold Threshold { get; }
public AtmosMonitorThresholdType Type { get; }
diff --git a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasCanisterComponent.cs b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasCanisterComponent.cs
index d1c05b25b3..63d1eb7a25 100644
--- a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasCanisterComponent.cs
+++ b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasCanisterComponent.cs
@@ -32,7 +32,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
/// Represents a state that can be sent to the client
///
[Serializable, NetSerializable]
- public class GasCanisterBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasCanisterBoundUserInterfaceState : BoundUserInterfaceState
{
public string CanisterLabel { get; }
public float CanisterPressure { get; }
@@ -59,14 +59,14 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasCanisterHoldingTankEjectMessage : BoundUserInterfaceMessage
+ public sealed class GasCanisterHoldingTankEjectMessage : BoundUserInterfaceMessage
{
public GasCanisterHoldingTankEjectMessage()
{}
}
[Serializable, NetSerializable]
- public class GasCanisterChangeReleasePressureMessage : BoundUserInterfaceMessage
+ public sealed class GasCanisterChangeReleasePressureMessage : BoundUserInterfaceMessage
{
public float Pressure { get; }
@@ -77,7 +77,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasCanisterChangeReleaseValveMessage : BoundUserInterfaceMessage
+ public sealed class GasCanisterChangeReleaseValveMessage : BoundUserInterfaceMessage
{
public bool Valve { get; }
diff --git a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasPressurePumpComponent.cs b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasPressurePumpComponent.cs
index 4303c6977a..e677412e95 100644
--- a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasPressurePumpComponent.cs
+++ b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasPressurePumpComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasPressurePumpBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasPressurePumpBoundUserInterfaceState : BoundUserInterfaceState
{
public string PumpLabel { get; }
public float OutputPressure { get; }
@@ -26,7 +26,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasPressurePumpToggleStatusMessage : BoundUserInterfaceMessage
+ public sealed class GasPressurePumpToggleStatusMessage : BoundUserInterfaceMessage
{
public bool Enabled { get; }
@@ -37,7 +37,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasPressurePumpChangeOutputPressureMessage : BoundUserInterfaceMessage
+ public sealed class GasPressurePumpChangeOutputPressureMessage : BoundUserInterfaceMessage
{
public float Pressure { get; }
diff --git a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasVolumePumpComponent.cs b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasVolumePumpComponent.cs
index 50f13decf6..095e6e2b1d 100644
--- a/Content.Shared/Atmos/Piping/Binary/Components/SharedGasVolumePumpComponent.cs
+++ b/Content.Shared/Atmos/Piping/Binary/Components/SharedGasVolumePumpComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasVolumePumpBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasVolumePumpBoundUserInterfaceState : BoundUserInterfaceState
{
public string PumpLabel { get; }
public float TransferRate { get; }
@@ -26,7 +26,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasVolumePumpToggleStatusMessage : BoundUserInterfaceMessage
+ public sealed class GasVolumePumpToggleStatusMessage : BoundUserInterfaceMessage
{
public bool Enabled { get; }
@@ -37,7 +37,7 @@ namespace Content.Shared.Atmos.Piping.Binary.Components
}
[Serializable, NetSerializable]
- public class GasVolumePumpChangeTransferRateMessage : BoundUserInterfaceMessage
+ public sealed class GasVolumePumpChangeTransferRateMessage : BoundUserInterfaceMessage
{
public float TransferRate { get; }
diff --git a/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasFilterComponent.cs b/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasFilterComponent.cs
index a9ce0bbdf7..ac5a91d8a3 100644
--- a/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasFilterComponent.cs
+++ b/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasFilterComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasFilterBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasFilterBoundUserInterfaceState : BoundUserInterfaceState
{
public string FilterLabel { get; }
public float TransferRate { get; }
@@ -28,7 +28,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasFilterToggleStatusMessage : BoundUserInterfaceMessage
+ public sealed class GasFilterToggleStatusMessage : BoundUserInterfaceMessage
{
public bool Enabled { get; }
@@ -39,7 +39,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasFilterChangeRateMessage : BoundUserInterfaceMessage
+ public sealed class GasFilterChangeRateMessage : BoundUserInterfaceMessage
{
public float Rate { get; }
@@ -50,7 +50,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasFilterSelectGasMessage : BoundUserInterfaceMessage
+ public sealed class GasFilterSelectGasMessage : BoundUserInterfaceMessage
{
public int ID { get; }
diff --git a/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasMixerComponent.cs b/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasMixerComponent.cs
index ed6ceebc71..a02650e3e4 100644
--- a/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasMixerComponent.cs
+++ b/Content.Shared/Atmos/Piping/Trinary/Components/SharedGasMixerComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasMixerBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class GasMixerBoundUserInterfaceState : BoundUserInterfaceState
{
public string MixerLabel { get; }
public float OutputPressure { get; }
@@ -29,7 +29,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasMixerToggleStatusMessage : BoundUserInterfaceMessage
+ public sealed class GasMixerToggleStatusMessage : BoundUserInterfaceMessage
{
public bool Enabled { get; }
@@ -40,7 +40,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasMixerChangeOutputPressureMessage : BoundUserInterfaceMessage
+ public sealed class GasMixerChangeOutputPressureMessage : BoundUserInterfaceMessage
{
public float Pressure { get; }
@@ -51,7 +51,7 @@ namespace Content.Shared.Atmos.Piping.Trinary.Components
}
[Serializable, NetSerializable]
- public class GasMixerChangeNodePercentageMessage : BoundUserInterfaceMessage
+ public sealed class GasMixerChangeNodePercentageMessage : BoundUserInterfaceMessage
{
public float NodeOne { get; }
diff --git a/Content.Shared/Atmos/Piping/Unary/Components/SharedVentPumpComponent.cs b/Content.Shared/Atmos/Piping/Unary/Components/SharedVentPumpComponent.cs
index c19df1bec4..e9718fcadc 100644
--- a/Content.Shared/Atmos/Piping/Unary/Components/SharedVentPumpComponent.cs
+++ b/Content.Shared/Atmos/Piping/Unary/Components/SharedVentPumpComponent.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Atmos.Piping.Unary.Components
{
[Serializable, NetSerializable]
- public class GasVentPumpData : IAtmosDeviceData
+ public sealed class GasVentPumpData : IAtmosDeviceData
{
public bool Enabled { get; set; }
public bool Dirty { get; set; }
diff --git a/Content.Shared/Atmos/Piping/Unary/Components/SharedVentScrubberComponent.cs b/Content.Shared/Atmos/Piping/Unary/Components/SharedVentScrubberComponent.cs
index 7cb1eba53a..0e78814408 100644
--- a/Content.Shared/Atmos/Piping/Unary/Components/SharedVentScrubberComponent.cs
+++ b/Content.Shared/Atmos/Piping/Unary/Components/SharedVentScrubberComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Atmos.Piping.Unary.Components
{
[Serializable, NetSerializable]
- public class GasVentScrubberData : IAtmosDeviceData
+ public sealed class GasVentScrubberData : IAtmosDeviceData
{
public bool Enabled { get; set; }
public bool Dirty { get; set; }
diff --git a/Content.Shared/Atmos/Prototypes/GasPrototype.cs b/Content.Shared/Atmos/Prototypes/GasPrototype.cs
index 790b44712b..9478275106 100644
--- a/Content.Shared/Atmos/Prototypes/GasPrototype.cs
+++ b/Content.Shared/Atmos/Prototypes/GasPrototype.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Atmos.Prototypes
{
[Prototype("gas")]
- public class GasPrototype : IPrototype
+ public sealed class GasPrototype : IPrototype
{
[DataField("name")] public string Name { get; } = string.Empty;
diff --git a/Content.Shared/Audio/ContentAudioSystem.cs b/Content.Shared/Audio/ContentAudioSystem.cs
index 887c67daf9..693b777d69 100644
--- a/Content.Shared/Audio/ContentAudioSystem.cs
+++ b/Content.Shared/Audio/ContentAudioSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Audio
{
- public class ContentAudioSystem : EntitySystem
+ public sealed class ContentAudioSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Body/Components/MechanismComponent.cs b/Content.Shared/Body/Components/MechanismComponent.cs
index 5c73c2c322..4ad4a98575 100644
--- a/Content.Shared/Body/Components/MechanismComponent.cs
+++ b/Content.Shared/Body/Components/MechanismComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Body.Components
{
[RegisterComponent]
- public class MechanismComponent : Component, ISerializationHooks
+ public sealed class MechanismComponent : Component, ISerializationHooks
{
[Dependency] private readonly IEntityManager _entMan = default!;
private SharedBodyPartComponent? _part;
diff --git a/Content.Shared/Body/Components/SharedBodyComponent.cs b/Content.Shared/Body/Components/SharedBodyComponent.cs
index 90ba03b2b1..a73fdf620c 100644
--- a/Content.Shared/Body/Components/SharedBodyComponent.cs
+++ b/Content.Shared/Body/Components/SharedBodyComponent.cs
@@ -407,7 +407,7 @@ namespace Content.Shared.Body.Components
}
[Serializable, NetSerializable]
- public class BodyComponentState : ComponentState
+ public sealed class BodyComponentState : ComponentState
{
private Dictionary? _parts;
diff --git a/Content.Shared/Body/Components/SharedBodyPartComponent.cs b/Content.Shared/Body/Components/SharedBodyPartComponent.cs
index e69ae1bf8b..6eaee0ebe5 100644
--- a/Content.Shared/Body/Components/SharedBodyPartComponent.cs
+++ b/Content.Shared/Body/Components/SharedBodyPartComponent.cs
@@ -303,7 +303,7 @@ namespace Content.Shared.Body.Components
}
[Serializable, NetSerializable]
- public class BodyPartComponentState : ComponentState
+ public sealed class BodyPartComponentState : ComponentState
{
[NonSerialized] private List? _mechanisms;
diff --git a/Content.Shared/Body/Components/SharedBodyScannerComponent.cs b/Content.Shared/Body/Components/SharedBodyScannerComponent.cs
index 4b69264f0e..0e7b1b112f 100644
--- a/Content.Shared/Body/Components/SharedBodyScannerComponent.cs
+++ b/Content.Shared/Body/Components/SharedBodyScannerComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Body.Components
}
[Serializable, NetSerializable]
- public class BodyScannerUIState : BoundUserInterfaceState
+ public sealed class BodyScannerUIState : BoundUserInterfaceState
{
public readonly EntityUid Uid;
diff --git a/Content.Shared/Body/Events/MechanismBodyEvents.cs b/Content.Shared/Body/Events/MechanismBodyEvents.cs
index 2b5a71ea6f..909abac609 100644
--- a/Content.Shared/Body/Events/MechanismBodyEvents.cs
+++ b/Content.Shared/Body/Events/MechanismBodyEvents.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is added to a body.
///
- public class AddedToBodyEvent : EntityEventArgs
+ public sealed class AddedToBodyEvent : EntityEventArgs
{
public SharedBodyComponent Body;
@@ -22,7 +22,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is added to a body part.
///
- public class AddedToPartEvent : EntityEventArgs
+ public sealed class AddedToPartEvent : EntityEventArgs
{
public SharedBodyPartComponent Part;
@@ -35,7 +35,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is added to a body part within a body.
///
- public class AddedToPartInBodyEvent : EntityEventArgs
+ public sealed class AddedToPartInBodyEvent : EntityEventArgs
{
public SharedBodyComponent Body;
public SharedBodyPartComponent Part;
@@ -50,7 +50,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is removed from a body.
///
- public class RemovedFromBodyEvent : EntityEventArgs
+ public sealed class RemovedFromBodyEvent : EntityEventArgs
{
public SharedBodyComponent Old;
@@ -63,7 +63,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is removed from a body part.
///
- public class RemovedFromPartEvent : EntityEventArgs
+ public sealed class RemovedFromPartEvent : EntityEventArgs
{
public SharedBodyPartComponent Old;
@@ -76,7 +76,7 @@ namespace Content.Shared.Body.Events
///
/// Raised on a mechanism when it is removed from a body part within a body.
///
- public class RemovedFromPartInBodyEvent : EntityEventArgs
+ public sealed class RemovedFromPartInBodyEvent : EntityEventArgs
{
public SharedBodyComponent OldBody;
public SharedBodyPartComponent OldPart;
diff --git a/Content.Shared/Body/Events/ShiverAttemptEvent.cs b/Content.Shared/Body/Events/ShiverAttemptEvent.cs
index 61ff1f50d5..3fd433aa1b 100644
--- a/Content.Shared/Body/Events/ShiverAttemptEvent.cs
+++ b/Content.Shared/Body/Events/ShiverAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Body.Events
{
- public class ShiverAttemptEvent : CancellableEntityEventArgs
+ public sealed class ShiverAttemptEvent : CancellableEntityEventArgs
{
public ShiverAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Body/Events/SweatAttemptEvent.cs b/Content.Shared/Body/Events/SweatAttemptEvent.cs
index 0cd844fdfd..52b4c876a8 100644
--- a/Content.Shared/Body/Events/SweatAttemptEvent.cs
+++ b/Content.Shared/Body/Events/SweatAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Body.Events
{
- public class SweatAttemptEvent : CancellableEntityEventArgs
+ public sealed class SweatAttemptEvent : CancellableEntityEventArgs
{
public SweatAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Body/Part/BodyPartSlot.cs b/Content.Shared/Body/Part/BodyPartSlot.cs
index f36f039fcc..4fb5a72ff0 100644
--- a/Content.Shared/Body/Part/BodyPartSlot.cs
+++ b/Content.Shared/Body/Part/BodyPartSlot.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Body.Part
{
- public class BodyPartSlot
+ public sealed class BodyPartSlot
{
public BodyPartSlot(string id, BodyPartType partType, IEnumerable connections)
{
diff --git a/Content.Shared/Body/Part/IBodyPartAdded.cs b/Content.Shared/Body/Part/IBodyPartAdded.cs
index fc19497209..74cbbd4da4 100644
--- a/Content.Shared/Body/Part/IBodyPartAdded.cs
+++ b/Content.Shared/Body/Part/IBodyPartAdded.cs
@@ -21,7 +21,7 @@ namespace Content.Shared.Body.Part
[Serializable, NetSerializable]
- public class BodyPartAddedEventArgs : EventArgs
+ public sealed class BodyPartAddedEventArgs : EventArgs
{
public BodyPartAddedEventArgs(string slot, SharedBodyPartComponent part)
{
diff --git a/Content.Shared/Body/Part/IBodyPartRemoved.cs b/Content.Shared/Body/Part/IBodyPartRemoved.cs
index 034fc878bf..48910a9bcb 100644
--- a/Content.Shared/Body/Part/IBodyPartRemoved.cs
+++ b/Content.Shared/Body/Part/IBodyPartRemoved.cs
@@ -19,7 +19,7 @@ namespace Content.Shared.Body.Part
}
[Serializable, NetSerializable]
- public class BodyPartRemovedEventArgs : EventArgs
+ public sealed class BodyPartRemovedEventArgs : EventArgs
{
public BodyPartRemovedEventArgs(string slot, SharedBodyPartComponent part)
{
diff --git a/Content.Shared/Body/Prototypes/BodyPresetPrototype.cs b/Content.Shared/Body/Prototypes/BodyPresetPrototype.cs
index 7a64030af4..c83dff9e1a 100644
--- a/Content.Shared/Body/Prototypes/BodyPresetPrototype.cs
+++ b/Content.Shared/Body/Prototypes/BodyPresetPrototype.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Body.Prototypes
///
[Prototype("bodyPreset")]
[Serializable, NetSerializable]
- public class BodyPresetPrototype : IPrototype
+ public sealed class BodyPresetPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Body/Prototypes/BodyTemplatePrototype.cs b/Content.Shared/Body/Prototypes/BodyTemplatePrototype.cs
index 828a552a37..9432532405 100644
--- a/Content.Shared/Body/Prototypes/BodyTemplatePrototype.cs
+++ b/Content.Shared/Body/Prototypes/BodyTemplatePrototype.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.Body.Prototypes
///
[Prototype("bodyTemplate")]
[Serializable, NetSerializable]
- public class BodyTemplatePrototype : IPrototype, ISerializationHooks
+ public sealed class BodyTemplatePrototype : IPrototype, ISerializationHooks
{
[DataField("slots")]
private Dictionary _slots = new();
diff --git a/Content.Shared/Body/Prototypes/MetabolismGroupPrototype.cs b/Content.Shared/Body/Prototypes/MetabolismGroupPrototype.cs
index 6e261ddd57..62a72b1849 100644
--- a/Content.Shared/Body/Prototypes/MetabolismGroupPrototype.cs
+++ b/Content.Shared/Body/Prototypes/MetabolismGroupPrototype.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Body.Prototypes
{
[Prototype("metabolismGroup")]
- public class MetabolismGroupPrototype : IPrototype
+ public sealed class MetabolismGroupPrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Body/Prototypes/MetabolizerTypePrototype.cs b/Content.Shared/Body/Prototypes/MetabolizerTypePrototype.cs
index 9017fbb6e7..5b8c55763a 100644
--- a/Content.Shared/Body/Prototypes/MetabolizerTypePrototype.cs
+++ b/Content.Shared/Body/Prototypes/MetabolizerTypePrototype.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Body.Prototypes
{
[Prototype("metabolizerType")]
- public class MetabolizerTypePrototype : IPrototype
+ public sealed class MetabolizerTypePrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Camera/CameraRecoilComponent.cs b/Content.Shared/Camera/CameraRecoilComponent.cs
index e15a0ac300..8bb7dded43 100644
--- a/Content.Shared/Camera/CameraRecoilComponent.cs
+++ b/Content.Shared/Camera/CameraRecoilComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Camera;
[RegisterComponent]
[NetworkedComponent]
-public class CameraRecoilComponent : Component
+public sealed class CameraRecoilComponent : Component
{
public Vector2 CurrentKick { get; set; }
public float LastKickTime { get; set; }
diff --git a/Content.Shared/Camera/CameraRecoilSystem.cs b/Content.Shared/Camera/CameraRecoilSystem.cs
index 0c1e88bff1..80b66a53fc 100644
--- a/Content.Shared/Camera/CameraRecoilSystem.cs
+++ b/Content.Shared/Camera/CameraRecoilSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Camera;
[UsedImplicitly]
-public class CameraRecoilSystem : EntitySystem
+public sealed class CameraRecoilSystem : EntitySystem
{
///
/// Maximum rate of magnitude restore towards 0 kick.
@@ -119,7 +119,7 @@ public class CameraRecoilSystem : EntitySystem
[Serializable]
[NetSerializable]
-public class CameraKickEvent : EntityEventArgs
+public sealed class CameraKickEvent : EntityEventArgs
{
public readonly EntityUid Euid;
public readonly Vector2 Recoil;
diff --git a/Content.Shared/Cargo/CargoOrderData.cs b/Content.Shared/Cargo/CargoOrderData.cs
index 2f9e747951..d8c54586ad 100644
--- a/Content.Shared/Cargo/CargoOrderData.cs
+++ b/Content.Shared/Cargo/CargoOrderData.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Cargo
{
[NetSerializable, Serializable]
- public class CargoOrderData
+ public sealed class CargoOrderData
{
public int OrderNumber;
public string Requester;
diff --git a/Content.Shared/Cargo/CargoProductPrototype.cs b/Content.Shared/Cargo/CargoProductPrototype.cs
index e3f29e4347..aa0ee8af2f 100644
--- a/Content.Shared/Cargo/CargoProductPrototype.cs
+++ b/Content.Shared/Cargo/CargoProductPrototype.cs
@@ -11,7 +11,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Cargo
{
[NetSerializable, Serializable, Prototype("cargoProduct")]
- public class CargoProductPrototype : IPrototype
+ public sealed class CargoProductPrototype : IPrototype
{
[DataField("name")] private string _name = string.Empty;
diff --git a/Content.Shared/Cargo/Components/SharedCargoConsoleComponent.cs b/Content.Shared/Cargo/Components/SharedCargoConsoleComponent.cs
index b38edb42d3..0f7404f51e 100644
--- a/Content.Shared/Cargo/Components/SharedCargoConsoleComponent.cs
+++ b/Content.Shared/Cargo/Components/SharedCargoConsoleComponent.cs
@@ -6,6 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Cargo.Components
{
+ [Virtual]
public class SharedCargoConsoleComponent : Component
{
[Dependency] protected readonly IPrototypeManager PrototypeManager = default!;
@@ -14,7 +15,7 @@ namespace Content.Shared.Cargo.Components
/// Sends away or requests shuttle
///
[Serializable, NetSerializable]
- public class CargoConsoleShuttleMessage : BoundUserInterfaceMessage
+ public sealed class CargoConsoleShuttleMessage : BoundUserInterfaceMessage
{
public CargoConsoleShuttleMessage()
{
@@ -25,7 +26,7 @@ namespace Content.Shared.Cargo.Components
/// Add order to database.
///
[Serializable, NetSerializable]
- public class CargoConsoleAddOrderMessage : BoundUserInterfaceMessage
+ public sealed class CargoConsoleAddOrderMessage : BoundUserInterfaceMessage
{
public string Requester;
public string Reason;
@@ -45,7 +46,7 @@ namespace Content.Shared.Cargo.Components
/// Remove order from database.
///
[Serializable, NetSerializable]
- public class CargoConsoleRemoveOrderMessage : BoundUserInterfaceMessage
+ public sealed class CargoConsoleRemoveOrderMessage : BoundUserInterfaceMessage
{
public int OrderNumber;
@@ -59,7 +60,7 @@ namespace Content.Shared.Cargo.Components
/// Set order in database as approved.
///
[Serializable, NetSerializable]
- public class CargoConsoleApproveOrderMessage : BoundUserInterfaceMessage
+ public sealed class CargoConsoleApproveOrderMessage : BoundUserInterfaceMessage
{
public int OrderNumber;
@@ -77,7 +78,7 @@ namespace Content.Shared.Cargo.Components
}
[NetSerializable, Serializable]
- public class CargoConsoleInterfaceState : BoundUserInterfaceState
+ public sealed class CargoConsoleInterfaceState : BoundUserInterfaceState
{
public readonly bool RequestOnly;
public readonly int BankId;
diff --git a/Content.Shared/Cargo/Components/SharedCargoOrderDatabaseComponent.cs b/Content.Shared/Cargo/Components/SharedCargoOrderDatabaseComponent.cs
index 6493033990..922ae50770 100644
--- a/Content.Shared/Cargo/Components/SharedCargoOrderDatabaseComponent.cs
+++ b/Content.Shared/Cargo/Components/SharedCargoOrderDatabaseComponent.cs
@@ -7,12 +7,12 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Cargo.Components
{
[NetworkedComponent()]
- public class SharedCargoOrderDatabaseComponent : Component
+ public abstract class SharedCargoOrderDatabaseComponent : Component
{
}
[NetSerializable, Serializable]
- public class CargoOrderDatabaseState : ComponentState
+ public sealed class CargoOrderDatabaseState : ComponentState
{
public readonly List? Orders;
diff --git a/Content.Shared/Cargo/Components/SharedGalacticMarketComponent.cs b/Content.Shared/Cargo/Components/SharedGalacticMarketComponent.cs
index 8ec4be505e..5806b50dfe 100644
--- a/Content.Shared/Cargo/Components/SharedGalacticMarketComponent.cs
+++ b/Content.Shared/Cargo/Components/SharedGalacticMarketComponent.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Cargo.Components
{
[NetworkedComponent()]
- public class SharedGalacticMarketComponent : Component, IEnumerable, ISerializationHooks
+ public abstract class SharedGalacticMarketComponent : Component, IEnumerable, ISerializationHooks
{
[DataField("products", customTypeSerializer: typeof(PrototypeIdListSerializer))]
protected List _productIds = new();
@@ -95,7 +95,7 @@ namespace Content.Shared.Cargo.Components
}
[Serializable, NetSerializable]
- public class GalacticMarketState : ComponentState
+ public sealed class GalacticMarketState : ComponentState
{
public List Products;
public GalacticMarketState(List technologies)
diff --git a/Content.Shared/CharacterAppearance/Components/HumanoidAppearanceComponent.cs b/Content.Shared/CharacterAppearance/Components/HumanoidAppearanceComponent.cs
index d0b637d315..4d86f9ec2a 100644
--- a/Content.Shared/CharacterAppearance/Components/HumanoidAppearanceComponent.cs
+++ b/Content.Shared/CharacterAppearance/Components/HumanoidAppearanceComponent.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.CharacterAppearance.Components
[RegisterComponent]
[Friend(typeof(SharedHumanoidAppearanceSystem), typeof(SharedMagicMirrorComponent))]
[NetworkedComponent]
- public class HumanoidAppearanceComponent : Component
+ public sealed class HumanoidAppearanceComponent : Component
{
[ViewVariables]
public HumanoidCharacterAppearance Appearance { get; set; } = HumanoidCharacterAppearance.Default();
diff --git a/Content.Shared/CharacterAppearance/Components/SharedMagicMirrorComponent.cs b/Content.Shared/CharacterAppearance/Components/SharedMagicMirrorComponent.cs
index 26482371a4..861516e14e 100644
--- a/Content.Shared/CharacterAppearance/Components/SharedMagicMirrorComponent.cs
+++ b/Content.Shared/CharacterAppearance/Components/SharedMagicMirrorComponent.cs
@@ -5,6 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.CharacterAppearance.Components
{
+ [Virtual]
public class SharedMagicMirrorComponent : Component
{
[Serializable, NetSerializable]
@@ -14,7 +15,7 @@ namespace Content.Shared.CharacterAppearance.Components
}
[Serializable, NetSerializable]
- public class HairSelectedMessage : BoundUserInterfaceMessage
+ public sealed class HairSelectedMessage : BoundUserInterfaceMessage
{
public readonly string HairId;
public readonly bool IsFacialHair;
@@ -27,7 +28,7 @@ namespace Content.Shared.CharacterAppearance.Components
}
[Serializable, NetSerializable]
- public class HairColorSelectedMessage : BoundUserInterfaceMessage
+ public sealed class HairColorSelectedMessage : BoundUserInterfaceMessage
{
public (byte r, byte g, byte b) HairColor;
public readonly bool IsFacialHair;
@@ -40,7 +41,7 @@ namespace Content.Shared.CharacterAppearance.Components
}
[Serializable, NetSerializable]
- public class EyeColorSelectedMessage : BoundUserInterfaceMessage
+ public sealed class EyeColorSelectedMessage : BoundUserInterfaceMessage
{
public (byte r, byte g, byte b) EyeColor;
@@ -51,7 +52,7 @@ namespace Content.Shared.CharacterAppearance.Components
}
[Serializable, NetSerializable]
- public class MagicMirrorInitialDataMessage : BoundUserInterfaceMessage
+ public sealed class MagicMirrorInitialDataMessage : BoundUserInterfaceMessage
{
public readonly Color HairColor;
public readonly Color FacialHairColor;
diff --git a/Content.Shared/CharacterAppearance/HumanoidCharacterAppearance.cs b/Content.Shared/CharacterAppearance/HumanoidCharacterAppearance.cs
index bd09b43d1f..8ee66ae4ce 100644
--- a/Content.Shared/CharacterAppearance/HumanoidCharacterAppearance.cs
+++ b/Content.Shared/CharacterAppearance/HumanoidCharacterAppearance.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.CharacterAppearance
{
[Serializable, NetSerializable]
- public class HumanoidCharacterAppearance : ICharacterAppearance
+ public sealed class HumanoidCharacterAppearance : ICharacterAppearance
{
public HumanoidCharacterAppearance(string hairStyleId,
Color hairColor,
diff --git a/Content.Shared/CharacterAppearance/Systems/SharedHumanoidAppearanceSystem.cs b/Content.Shared/CharacterAppearance/Systems/SharedHumanoidAppearanceSystem.cs
index 6bf89234af..ee4229ffc5 100644
--- a/Content.Shared/CharacterAppearance/Systems/SharedHumanoidAppearanceSystem.cs
+++ b/Content.Shared/CharacterAppearance/Systems/SharedHumanoidAppearanceSystem.cs
@@ -73,7 +73,7 @@ namespace Content.Shared.CharacterAppearance.Systems
// Scaffolding until Body is moved to ECS.
[Serializable, NetSerializable]
- public class HumanoidAppearanceBodyPartAddedEvent : EntityEventArgs
+ public sealed class HumanoidAppearanceBodyPartAddedEvent : EntityEventArgs
{
public EntityUid Uid { get; }
public BodyPartAddedEventArgs Args { get; }
@@ -86,7 +86,7 @@ namespace Content.Shared.CharacterAppearance.Systems
}
[Serializable, NetSerializable]
- public class HumanoidAppearanceBodyPartRemovedEvent : EntityEventArgs
+ public sealed class HumanoidAppearanceBodyPartRemovedEvent : EntityEventArgs
{
public EntityUid Uid { get; }
public BodyPartRemovedEventArgs Args { get; }
@@ -100,7 +100,7 @@ namespace Content.Shared.CharacterAppearance.Systems
}
[Serializable, NetSerializable]
- public class ChangedHumanoidAppearanceEvent : EntityEventArgs
+ public sealed class ChangedHumanoidAppearanceEvent : EntityEventArgs
{
public HumanoidCharacterAppearance Appearance { get; }
public Sex Sex { get; }
diff --git a/Content.Shared/CharacterInfo/SharedCharacterInfoSystem.cs b/Content.Shared/CharacterInfo/SharedCharacterInfoSystem.cs
index 693f56284f..a1478782bb 100644
--- a/Content.Shared/CharacterInfo/SharedCharacterInfoSystem.cs
+++ b/Content.Shared/CharacterInfo/SharedCharacterInfoSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.CharacterInfo;
[Serializable, NetSerializable]
-public class RequestCharacterInfoEvent : EntityEventArgs
+public sealed class RequestCharacterInfoEvent : EntityEventArgs
{
public readonly EntityUid EntityUid;
@@ -18,7 +18,7 @@ public class RequestCharacterInfoEvent : EntityEventArgs
}
[Serializable, NetSerializable]
-public class CharacterInfoEvent : EntityEventArgs
+public sealed class CharacterInfoEvent : EntityEventArgs
{
public readonly EntityUid EntityUid;
public readonly string JobTitle;
diff --git a/Content.Shared/Chemistry/Components/FitsInDispenserComponent.cs b/Content.Shared/Chemistry/Components/FitsInDispenserComponent.cs
index 8bbb17fa2c..f4a75f6290 100644
--- a/Content.Shared/Chemistry/Components/FitsInDispenserComponent.cs
+++ b/Content.Shared/Chemistry/Components/FitsInDispenserComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Chemistry.Components
///
[RegisterComponent]
[NetworkedComponent] // only needed for white-lists. Client doesn't actually need Solution data;
- public class FitsInDispenserComponent : Component
+ public sealed class FitsInDispenserComponent : Component
{
///
/// Solution name that will interact with ReagentDispenserComponent.
diff --git a/Content.Shared/Chemistry/Components/MovespeedModifierMetabolismComponent.cs b/Content.Shared/Chemistry/Components/MovespeedModifierMetabolismComponent.cs
index 5b3b91c967..dd634ef474 100644
--- a/Content.Shared/Chemistry/Components/MovespeedModifierMetabolismComponent.cs
+++ b/Content.Shared/Chemistry/Components/MovespeedModifierMetabolismComponent.cs
@@ -34,7 +34,7 @@ namespace Content.Shared.Chemistry.Components
}
[Serializable, NetSerializable]
- public class MovespeedModifierMetabolismComponentState : ComponentState
+ public sealed class MovespeedModifierMetabolismComponentState : ComponentState
{
public float WalkSpeedModifier { get; }
public float SprintSpeedModifier { get; }
diff --git a/Content.Shared/Chemistry/Components/SharedChemMasterComponent.cs b/Content.Shared/Chemistry/Components/SharedChemMasterComponent.cs
index 641e893000..d407c5e919 100644
--- a/Content.Shared/Chemistry/Components/SharedChemMasterComponent.cs
+++ b/Content.Shared/Chemistry/Components/SharedChemMasterComponent.cs
@@ -13,6 +13,7 @@ namespace Content.Shared.Chemistry.Components
///
/// Shared class for ChemMasterComponent. Provides a way for entities to split reagents from a beaker and produce pills and bottles via a user interface.
///
+ [Virtual]
public class SharedChemMasterComponent : Component
{
[DataField("beakerSlot")]
@@ -20,7 +21,7 @@ namespace Content.Shared.Chemistry.Components
public const string SolutionName = "buffer";
[Serializable, NetSerializable]
- public class ChemMasterBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class ChemMasterBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly bool HasPower;
public readonly bool HasBeaker;
@@ -66,7 +67,7 @@ namespace Content.Shared.Chemistry.Components
/// Message data sent from client to server when a ChemMaster ui button is pressed.
///
[Serializable, NetSerializable]
- public class UiActionMessage : BoundUserInterfaceMessage
+ public sealed class UiActionMessage : BoundUserInterfaceMessage
{
public readonly UiAction Action;
public readonly FixedPoint2 Amount;
diff --git a/Content.Shared/Chemistry/Components/Solution.Managerial.cs b/Content.Shared/Chemistry/Components/Solution.Managerial.cs
index 805f083187..0b21030a92 100644
--- a/Content.Shared/Chemistry/Components/Solution.Managerial.cs
+++ b/Content.Shared/Chemistry/Components/Solution.Managerial.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Chemistry.Components
{
- public partial class Solution
+ public sealed partial class Solution
{
///
diff --git a/Content.Shared/Chemistry/Components/Solution.cs b/Content.Shared/Chemistry/Components/Solution.cs
index e1b02ee62a..73fbd9d40a 100644
--- a/Content.Shared/Chemistry/Components/Solution.cs
+++ b/Content.Shared/Chemistry/Components/Solution.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Chemistry.Components
///
[Serializable, NetSerializable]
[DataDefinition]
- public partial class Solution : IEnumerable, ISerializationHooks
+ public sealed partial class Solution : IEnumerable, ISerializationHooks
{
// Most objects on the station hold only 1 or 2 reagents
[ViewVariables]
diff --git a/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs b/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
index c28f268202..8948e10d2a 100644
--- a/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
+++ b/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Chemistry.Dispenser
/// machines define their inventory.
///
[Serializable, NetSerializable, Prototype("reagentDispenserInventory")]
- public class ReagentDispenserInventoryPrototype : IPrototype
+ public sealed class ReagentDispenserInventoryPrototype : IPrototype
{
[DataField("inventory", customTypeSerializer: typeof(PrototypeIdListSerializer))]
private List _inventory = new();
diff --git a/Content.Shared/Chemistry/Dispenser/SharedReagentDispenserComponent.cs b/Content.Shared/Chemistry/Dispenser/SharedReagentDispenserComponent.cs
index 59fa6eee33..b0c5a37db4 100644
--- a/Content.Shared/Chemistry/Dispenser/SharedReagentDispenserComponent.cs
+++ b/Content.Shared/Chemistry/Dispenser/SharedReagentDispenserComponent.cs
@@ -15,6 +15,7 @@ namespace Content.Shared.Chemistry.Dispenser
/// This is useful for machines such as the chemical dispensers, booze dispensers, or soda dispensers.
/// The chemicals which may be dispensed are defined by specifying a reagent pack. See for more information on that.
///
+ [Virtual]
public class SharedReagentDispenserComponent : Component
{
[DataField("beakerSlot")]
@@ -26,7 +27,7 @@ namespace Content.Shared.Chemistry.Dispenser
protected readonly List Inventory = new();
[Serializable, NetSerializable]
- public class ReagentDispenserBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class ReagentDispenserBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly bool HasPower;
public readonly bool HasBeaker;
@@ -63,7 +64,7 @@ namespace Content.Shared.Chemistry.Dispenser
/// Message data sent from client to server when a dispenser ui button is pressed.
///
[Serializable, NetSerializable]
- public class UiButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class UiButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
public readonly int DispenseIndex; //Index of dispense button / reagent being pressed. Only used when a dispense button is pressed.
diff --git a/Content.Shared/Chemistry/MetabolismMovespeedModifierSystem.cs b/Content.Shared/Chemistry/MetabolismMovespeedModifierSystem.cs
index 7f76bde473..f2a786546f 100644
--- a/Content.Shared/Chemistry/MetabolismMovespeedModifierSystem.cs
+++ b/Content.Shared/Chemistry/MetabolismMovespeedModifierSystem.cs
@@ -12,7 +12,7 @@ using static Content.Shared.Chemistry.Components.MovespeedModifierMetabolismComp
namespace Content.Shared.Chemistry
{
// TODO CONVERT THIS TO A STATUS EFFECT!!!!!!!!!!!!!!!!!!!!!!!!
- public class MetabolismMovespeedModifierSystem : EntitySystem
+ public sealed class MetabolismMovespeedModifierSystem : EntitySystem
{
[Dependency] private readonly IGameTiming _gameTiming = default!;
[Dependency] private readonly MovementSpeedModifierSystem _movespeed = default!;
diff --git a/Content.Shared/Chemistry/Reaction/ReactionPrototype.cs b/Content.Shared/Chemistry/Reaction/ReactionPrototype.cs
index c5a50a494e..048c91e6cb 100644
--- a/Content.Shared/Chemistry/Reaction/ReactionPrototype.cs
+++ b/Content.Shared/Chemistry/Reaction/ReactionPrototype.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Chemistry.Reaction
/// Prototype for chemical reaction definitions
///
[Prototype("reaction")]
- public class ReactionPrototype : IPrototype
+ public sealed class ReactionPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
@@ -73,7 +73,7 @@ namespace Content.Shared.Chemistry.Reaction
/// Prototype for chemical reaction reactants.
///
[DataDefinition]
- public class ReactantPrototype
+ public sealed class ReactantPrototype
{
[DataField("amount")]
private FixedPoint2 _amount = FixedPoint2.New(1);
diff --git a/Content.Shared/Chemistry/Reaction/ReactiveComponent.cs b/Content.Shared/Chemistry/Reaction/ReactiveComponent.cs
index 11db2a0c3a..5d59464406 100644
--- a/Content.Shared/Chemistry/Reaction/ReactiveComponent.cs
+++ b/Content.Shared/Chemistry/Reaction/ReactiveComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Chemistry.Reaction;
[RegisterComponent]
-public class ReactiveComponent : Component
+public sealed class ReactiveComponent : Component
{
///
/// A dictionary of reactive groups -> methods that work on them.
@@ -27,7 +27,7 @@ public class ReactiveComponent : Component
}
[DataDefinition]
-public class ReactiveReagentEffectEntry
+public sealed class ReactiveReagentEffectEntry
{
[DataField("methods")]
public HashSet Methods = default!;
diff --git a/Content.Shared/Chemistry/Reaction/ReactiveGroupPrototype.cs b/Content.Shared/Chemistry/Reaction/ReactiveGroupPrototype.cs
index d375793364..20cc233645 100644
--- a/Content.Shared/Chemistry/Reaction/ReactiveGroupPrototype.cs
+++ b/Content.Shared/Chemistry/Reaction/ReactiveGroupPrototype.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Chemistry.Reaction;
[Prototype("reactiveGroup")]
-public class ReactiveGroupPrototype : IPrototype
+public sealed class ReactiveGroupPrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Chemistry/ReactiveSystem.cs b/Content.Shared/Chemistry/ReactiveSystem.cs
index 7907a3980a..2bf1afa6f1 100644
--- a/Content.Shared/Chemistry/ReactiveSystem.cs
+++ b/Content.Shared/Chemistry/ReactiveSystem.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Random;
namespace Content.Shared.Chemistry
{
[UsedImplicitly]
- public class ReactiveSystem : EntitySystem
+ public sealed class ReactiveSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly IRobustRandom _robustRandom = default!;
diff --git a/Content.Shared/Chemistry/Reagent/ReagentPrototype.cs b/Content.Shared/Chemistry/Reagent/ReagentPrototype.cs
index a4cdd6b61c..67de4275ae 100644
--- a/Content.Shared/Chemistry/Reagent/ReagentPrototype.cs
+++ b/Content.Shared/Chemistry/Reagent/ReagentPrototype.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Chemistry.Reagent
{
[Prototype("reagent")]
[DataDefinition]
- public class ReagentPrototype : IPrototype, IInheritingPrototype
+ public sealed class ReagentPrototype : IPrototype, IInheritingPrototype
{
[ViewVariables]
[DataField("id", required: true)]
@@ -143,7 +143,7 @@ namespace Content.Shared.Chemistry.Reagent
}
[DataDefinition]
- public class ReagentEffectsEntry
+ public sealed class ReagentEffectsEntry
{
///
/// Amount of reagent to metabolize, per metabolism cycle.
@@ -161,7 +161,7 @@ namespace Content.Shared.Chemistry.Reagent
}
[DataDefinition]
- public class ReactiveReagentEffectEntry
+ public sealed class ReactiveReagentEffectEntry
{
[DataField("methods", required: true)]
public HashSet Methods = default!;
diff --git a/Content.Shared/Chemistry/SharedTransferAmount.cs b/Content.Shared/Chemistry/SharedTransferAmount.cs
index 36dbf29fc1..7f2c4fec12 100644
--- a/Content.Shared/Chemistry/SharedTransferAmount.cs
+++ b/Content.Shared/Chemistry/SharedTransferAmount.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Chemistry
{
[Serializable, NetSerializable]
- public class TransferAmountBoundInterfaceState : BoundUserInterfaceState
+ public sealed class TransferAmountBoundInterfaceState : BoundUserInterfaceState
{
public FixedPoint2 Max;
public FixedPoint2 Min;
@@ -20,7 +20,7 @@ namespace Content.Shared.Chemistry
}
[Serializable, NetSerializable]
- public class TransferAmountSetValueMessage : BoundUserInterfaceMessage
+ public sealed class TransferAmountSetValueMessage : BoundUserInterfaceMessage
{
public FixedPoint2 Value;
diff --git a/Content.Shared/Cloning/AcceptCloningEuiMessage.cs b/Content.Shared/Cloning/AcceptCloningEuiMessage.cs
index f919422746..3b4d02d1b2 100644
--- a/Content.Shared/Cloning/AcceptCloningEuiMessage.cs
+++ b/Content.Shared/Cloning/AcceptCloningEuiMessage.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Cloning
}
[Serializable, NetSerializable]
- public class AcceptCloningChoiceMessage : EuiMessageBase
+ public sealed class AcceptCloningChoiceMessage : EuiMessageBase
{
public readonly AcceptCloningUiButton Button;
diff --git a/Content.Shared/Cloning/SharedCloningPodComponent.cs b/Content.Shared/Cloning/SharedCloningPodComponent.cs
index d9804b2c02..527dfb2bcc 100644
--- a/Content.Shared/Cloning/SharedCloningPodComponent.cs
+++ b/Content.Shared/Cloning/SharedCloningPodComponent.cs
@@ -5,10 +5,11 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Cloning
{
+ [Virtual]
public class SharedCloningPodComponent : Component
{
[Serializable, NetSerializable]
- public class CloningPodBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class CloningPodBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly Dictionary MindIdName;
// When this state was created.
@@ -64,7 +65,7 @@ namespace Content.Shared.Cloning
}
[Serializable, NetSerializable]
- public class CloningPodUiButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class CloningPodUiButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
public readonly int? ScanId;
diff --git a/Content.Shared/Communications/SharedCommunicationsConsoleComponent.cs b/Content.Shared/Communications/SharedCommunicationsConsoleComponent.cs
index 6e1f572c89..0d3887c68e 100644
--- a/Content.Shared/Communications/SharedCommunicationsConsoleComponent.cs
+++ b/Content.Shared/Communications/SharedCommunicationsConsoleComponent.cs
@@ -4,12 +4,13 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Communications
{
+ [Virtual]
public class SharedCommunicationsConsoleComponent : Component
{
}
[Serializable, NetSerializable]
- public class CommunicationsConsoleInterfaceState : BoundUserInterfaceState
+ public sealed class CommunicationsConsoleInterfaceState : BoundUserInterfaceState
{
public readonly bool CanAnnounce;
public readonly bool CanCall;
@@ -26,7 +27,7 @@ namespace Content.Shared.Communications
}
[Serializable, NetSerializable]
- public class CommunicationsConsoleAnnounceMessage : BoundUserInterfaceMessage
+ public sealed class CommunicationsConsoleAnnounceMessage : BoundUserInterfaceMessage
{
public readonly string Message;
@@ -37,12 +38,12 @@ namespace Content.Shared.Communications
}
[Serializable, NetSerializable]
- public class CommunicationsConsoleCallEmergencyShuttleMessage : BoundUserInterfaceMessage
+ public sealed class CommunicationsConsoleCallEmergencyShuttleMessage : BoundUserInterfaceMessage
{
}
[Serializable, NetSerializable]
- public class CommunicationsConsoleRecallEmergencyShuttleMessage : BoundUserInterfaceMessage
+ public sealed class CommunicationsConsoleRecallEmergencyShuttleMessage : BoundUserInterfaceMessage
{
}
diff --git a/Content.Shared/Configurable/SharedConfigurationComponent.cs b/Content.Shared/Configurable/SharedConfigurationComponent.cs
index ac5bf44b72..414f7699ed 100644
--- a/Content.Shared/Configurable/SharedConfigurationComponent.cs
+++ b/Content.Shared/Configurable/SharedConfigurationComponent.cs
@@ -5,10 +5,11 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Configurable
{
+ [Virtual]
public class SharedConfigurationComponent : Component
{
[Serializable, NetSerializable]
- public class ConfigurationBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class ConfigurationBoundUserInterfaceState : BoundUserInterfaceState
{
public Dictionary Config { get; }
@@ -22,7 +23,7 @@ namespace Content.Shared.Configurable
/// Message data sent from client to server when the device configuration is updated.
///
[Serializable, NetSerializable]
- public class ConfigurationUpdatedMessage : BoundUserInterfaceMessage
+ public sealed class ConfigurationUpdatedMessage : BoundUserInterfaceMessage
{
public Dictionary Config { get; }
@@ -33,7 +34,7 @@ namespace Content.Shared.Configurable
}
[Serializable, NetSerializable]
- public class ValidationUpdateMessage : BoundUserInterfaceMessage
+ public sealed class ValidationUpdateMessage : BoundUserInterfaceMessage
{
public string ValidationString { get; }
diff --git a/Content.Shared/Construction/Conditions/EmptyOrWindowValidInTile.cs b/Content.Shared/Construction/Conditions/EmptyOrWindowValidInTile.cs
index 5c987db9f6..de9f97e5e0 100644
--- a/Content.Shared/Construction/Conditions/EmptyOrWindowValidInTile.cs
+++ b/Content.Shared/Construction/Conditions/EmptyOrWindowValidInTile.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Construction.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class EmptyOrWindowValidInTile : IConstructionCondition
+ public sealed class EmptyOrWindowValidInTile : IConstructionCondition
{
[DataField("tileNotBlocked")]
private readonly TileNotBlocked _tileNotBlocked = new();
diff --git a/Content.Shared/Construction/Conditions/NoWindowsInTile.cs b/Content.Shared/Construction/Conditions/NoWindowsInTile.cs
index 2174e18f7b..460ac86088 100644
--- a/Content.Shared/Construction/Conditions/NoWindowsInTile.cs
+++ b/Content.Shared/Construction/Conditions/NoWindowsInTile.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Construction.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class NoWindowsInTile : IConstructionCondition
+ public sealed class NoWindowsInTile : IConstructionCondition
{
public bool Condition(EntityUid user, EntityCoordinates location, Direction direction)
{
diff --git a/Content.Shared/Construction/Conditions/TileNotBlocked.cs b/Content.Shared/Construction/Conditions/TileNotBlocked.cs
index 98ded48d46..f209e5d072 100644
--- a/Content.Shared/Construction/Conditions/TileNotBlocked.cs
+++ b/Content.Shared/Construction/Conditions/TileNotBlocked.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Construction.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class TileNotBlocked : IConstructionCondition
+ public sealed class TileNotBlocked : IConstructionCondition
{
[DataField("filterMobs")] private bool _filterMobs = false;
[DataField("failIfSpace")] private bool _failIfSpace = true;
diff --git a/Content.Shared/Construction/Conditions/TileType.cs b/Content.Shared/Construction/Conditions/TileType.cs
index ac66d7b974..0ced74a200 100644
--- a/Content.Shared/Construction/Conditions/TileType.cs
+++ b/Content.Shared/Construction/Conditions/TileType.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Construction.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class TileType : IConstructionCondition
+ public sealed class TileType : IConstructionCondition
{
[DataField("targets")]
public List TargetTiles { get; } = new();
diff --git a/Content.Shared/Construction/Conditions/WallmountCondition.cs b/Content.Shared/Construction/Conditions/WallmountCondition.cs
index b2e3b30a13..362577d174 100644
--- a/Content.Shared/Construction/Conditions/WallmountCondition.cs
+++ b/Content.Shared/Construction/Conditions/WallmountCondition.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Construction.Conditions
{
[UsedImplicitly]
[DataDefinition]
- public class WallmountCondition : IConstructionCondition
+ public sealed class WallmountCondition : IConstructionCondition
{
public bool Condition(EntityUid user, EntityCoordinates location, Direction direction)
{
diff --git a/Content.Shared/Construction/ConstructionGraphEdge.cs b/Content.Shared/Construction/ConstructionGraphEdge.cs
index 11008577f9..2a3abacb83 100644
--- a/Content.Shared/Construction/ConstructionGraphEdge.cs
+++ b/Content.Shared/Construction/ConstructionGraphEdge.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Construction
{
[Serializable]
[DataDefinition]
- public class ConstructionGraphEdge
+ public sealed class ConstructionGraphEdge
{
[DataField("steps")]
private ConstructionGraphStep[] _steps = Array.Empty();
diff --git a/Content.Shared/Construction/ConstructionGraphNode.cs b/Content.Shared/Construction/ConstructionGraphNode.cs
index 81b2c30876..49d1afe089 100644
--- a/Content.Shared/Construction/ConstructionGraphNode.cs
+++ b/Content.Shared/Construction/ConstructionGraphNode.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Construction
{
[Serializable]
[DataDefinition]
- public class ConstructionGraphNode
+ public sealed class ConstructionGraphNode
{
[DataField("actions", serverOnly: true)]
private IGraphAction[] _actions = Array.Empty();
diff --git a/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs b/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs
index 419fa84d06..6a459c21ce 100644
--- a/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs
+++ b/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs
@@ -11,7 +11,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Construction.Prototypes
{
[Prototype("constructionGraph")]
- public class ConstructionGraphPrototype : IPrototype, ISerializationHooks
+ public sealed class ConstructionGraphPrototype : IPrototype, ISerializationHooks
{
private readonly Dictionary _nodes = new();
private readonly Dictionary<(string, string), ConstructionGraphNode[]?> _paths = new();
diff --git a/Content.Shared/Construction/Prototypes/ConstructionPrototype.cs b/Content.Shared/Construction/Prototypes/ConstructionPrototype.cs
index c3dc58a086..9cbca8ef48 100644
--- a/Content.Shared/Construction/Prototypes/ConstructionPrototype.cs
+++ b/Content.Shared/Construction/Prototypes/ConstructionPrototype.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Construction.Prototypes
{
[Prototype("construction")]
- public class ConstructionPrototype : IPrototype
+ public sealed class ConstructionPrototype : IPrototype
{
[DataField("conditions")] private List _conditions = new();
diff --git a/Content.Shared/Construction/SharedCanBuildWindowOnTopComponent.cs b/Content.Shared/Construction/SharedCanBuildWindowOnTopComponent.cs
index d221c5fdfb..ae596d4106 100644
--- a/Content.Shared/Construction/SharedCanBuildWindowOnTopComponent.cs
+++ b/Content.Shared/Construction/SharedCanBuildWindowOnTopComponent.cs
@@ -3,7 +3,7 @@
namespace Content.Shared.Construction
{
[RegisterComponent]
- public class SharedCanBuildWindowOnTopComponent : Component
+ public sealed class SharedCanBuildWindowOnTopComponent : Component
{
}
}
diff --git a/Content.Shared/Construction/SharedConstructionSystem.cs b/Content.Shared/Construction/SharedConstructionSystem.cs
index 6052518110..8301bb2292 100644
--- a/Content.Shared/Construction/SharedConstructionSystem.cs
+++ b/Content.Shared/Construction/SharedConstructionSystem.cs
@@ -6,14 +6,14 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Construction
{
- public class SharedConstructionSystem : EntitySystem
+ public abstract class SharedConstructionSystem : EntitySystem
{
///
/// Sent client -> server to to tell the server that we started building
/// a structure-construction.
///
[Serializable, NetSerializable]
- public class TryStartStructureConstructionMessage : EntityEventArgs
+ public sealed class TryStartStructureConstructionMessage : EntityEventArgs
{
///
/// Position to start building.
@@ -46,7 +46,7 @@ namespace Content.Shared.Construction
/// an item-construction.
///
[Serializable, NetSerializable]
- public class TryStartItemConstructionMessage : EntityEventArgs
+ public sealed class TryStartItemConstructionMessage : EntityEventArgs
{
///
/// The construction prototype to start building.
@@ -63,7 +63,7 @@ namespace Content.Shared.Construction
/// Sent server -> client to tell the client that a ghost has started to be constructed.
///
[Serializable, NetSerializable]
- public class AckStructureConstructionMessage : EntityEventArgs
+ public sealed class AckStructureConstructionMessage : EntityEventArgs
{
public readonly int GhostId;
@@ -77,7 +77,7 @@ namespace Content.Shared.Construction
/// Sent client -> server to request a specific construction guide.
///
[Serializable, NetSerializable]
- public class RequestConstructionGuide : EntityEventArgs
+ public sealed class RequestConstructionGuide : EntityEventArgs
{
public readonly string ConstructionId;
@@ -91,7 +91,7 @@ namespace Content.Shared.Construction
/// Sent server -> client as a response to a net message.
///
[Serializable, NetSerializable]
- public class ResponseConstructionGuide : EntityEventArgs
+ public sealed class ResponseConstructionGuide : EntityEventArgs
{
public readonly string ConstructionId;
public readonly ConstructionGuide Guide;
diff --git a/Content.Shared/Construction/Steps/ComponentConstructionGraphStep.cs b/Content.Shared/Construction/Steps/ComponentConstructionGraphStep.cs
index 179f8b1fb2..057288359b 100644
--- a/Content.Shared/Construction/Steps/ComponentConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/ComponentConstructionGraphStep.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Construction.Steps
{
[DataDefinition]
- public class ComponentConstructionGraphStep : ArbitraryInsertConstructionGraphStep
+ public sealed class ComponentConstructionGraphStep : ArbitraryInsertConstructionGraphStep
{
[DataField("component")] public string Component { get; } = string.Empty;
diff --git a/Content.Shared/Construction/Steps/ConstructionGraphStepTypeSerializer.cs b/Content.Shared/Construction/Steps/ConstructionGraphStepTypeSerializer.cs
index 0ce144a67a..c60c08b653 100644
--- a/Content.Shared/Construction/Steps/ConstructionGraphStepTypeSerializer.cs
+++ b/Content.Shared/Construction/Steps/ConstructionGraphStepTypeSerializer.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Serialization.TypeSerializers.Interfaces;
namespace Content.Shared.Construction.Steps
{
[TypeSerializer]
- public class ConstructionGraphStepTypeSerializer : ITypeReader
+ public sealed class ConstructionGraphStepTypeSerializer : ITypeReader
{
private Type? GetType(MappingDataNode node)
{
diff --git a/Content.Shared/Construction/Steps/MaterialConstructionGraphStep.cs b/Content.Shared/Construction/Steps/MaterialConstructionGraphStep.cs
index 8ab0ead8bb..71c7b1a735 100644
--- a/Content.Shared/Construction/Steps/MaterialConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/MaterialConstructionGraphStep.cs
@@ -11,7 +11,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Construction.Steps
{
[DataDefinition]
- public class MaterialConstructionGraphStep : EntityInsertConstructionGraphStep
+ public sealed class MaterialConstructionGraphStep : EntityInsertConstructionGraphStep
{
// TODO: Make this use the material system.
// TODO TODO: Make the material system not shit.
diff --git a/Content.Shared/Construction/Steps/MultipleTagsConstructionGraphStep.cs b/Content.Shared/Construction/Steps/MultipleTagsConstructionGraphStep.cs
index af0a122c90..7d4c300bee 100644
--- a/Content.Shared/Construction/Steps/MultipleTagsConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/MultipleTagsConstructionGraphStep.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Construction.Steps
{
- public class MultipleTagsConstructionGraphStep : ArbitraryInsertConstructionGraphStep
+ public sealed class MultipleTagsConstructionGraphStep : ArbitraryInsertConstructionGraphStep
{
[DataField("allTags")]
private List? _allTags;
diff --git a/Content.Shared/Construction/Steps/PrototypeConstructionGraphStep.cs b/Content.Shared/Construction/Steps/PrototypeConstructionGraphStep.cs
index 317ac8ab6f..1c0ecc8359 100644
--- a/Content.Shared/Construction/Steps/PrototypeConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/PrototypeConstructionGraphStep.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Construction.Steps
{
[DataDefinition]
- public class PrototypeConstructionGraphStep : ArbitraryInsertConstructionGraphStep
+ public sealed class PrototypeConstructionGraphStep : ArbitraryInsertConstructionGraphStep
{
[DataField("prototype")] public string Prototype { get; } = string.Empty;
diff --git a/Content.Shared/Construction/Steps/TagConstructionGraphStep.cs b/Content.Shared/Construction/Steps/TagConstructionGraphStep.cs
index 0917905768..38429e9d1a 100644
--- a/Content.Shared/Construction/Steps/TagConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/TagConstructionGraphStep.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Construction.Steps
{
[DataDefinition]
- public class TagConstructionGraphStep : ArbitraryInsertConstructionGraphStep
+ public sealed class TagConstructionGraphStep : ArbitraryInsertConstructionGraphStep
{
[DataField("tag")]
private string? _tag = null;
diff --git a/Content.Shared/Construction/Steps/ToolConstructionGraphStep.cs b/Content.Shared/Construction/Steps/ToolConstructionGraphStep.cs
index c5bf4b8dad..fe6c383292 100644
--- a/Content.Shared/Construction/Steps/ToolConstructionGraphStep.cs
+++ b/Content.Shared/Construction/Steps/ToolConstructionGraphStep.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Construction.Steps
{
[DataDefinition]
- public class ToolConstructionGraphStep : ConstructionGraphStep
+ public sealed class ToolConstructionGraphStep : ConstructionGraphStep
{
[DataField("tool", required:true, customTypeSerializer:typeof(PrototypeIdSerializer))]
public string Tool { get; } = string.Empty;
diff --git a/Content.Shared/Containers/ItemSlot/ItemSlotsComponent.cs b/Content.Shared/Containers/ItemSlot/ItemSlotsComponent.cs
index b15c00feba..0c193be5f7 100644
--- a/Content.Shared/Containers/ItemSlot/ItemSlotsComponent.cs
+++ b/Content.Shared/Containers/ItemSlot/ItemSlotsComponent.cs
@@ -20,7 +20,7 @@ namespace Content.Shared.Containers.ItemSlots
///
[RegisterComponent]
[Friend(typeof(ItemSlotsSystem))]
- public class ItemSlotsComponent : Component
+ public sealed class ItemSlotsComponent : Component
{
///
/// The dictionary that stores all of the item slots whose interactions will be managed by the
[DataDefinition]
[Friend(typeof(ItemSlotsSystem))]
- public class ItemSlot
+ public sealed class ItemSlot
{
[DataField("whitelist")]
public EntityWhitelist? Whitelist;
diff --git a/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs b/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs
index 106fec4e6e..69eb679a26 100644
--- a/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs
+++ b/Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Containers.ItemSlots
///
/// A class that handles interactions related to inserting/ejecting items into/from an item slot.
///
- public class ItemSlotsSystem : EntitySystem
+ public sealed class ItemSlotsSystem : EntitySystem
{
[Dependency] private readonly ActionBlockerSystem _actionBlockerSystem = default!;
[Dependency] private readonly SharedPopupSystem _popupSystem = default!;
diff --git a/Content.Shared/Crayon/SharedCrayonComponent.cs b/Content.Shared/Crayon/SharedCrayonComponent.cs
index 5088002cdf..daac686f88 100644
--- a/Content.Shared/Crayon/SharedCrayonComponent.cs
+++ b/Content.Shared/Crayon/SharedCrayonComponent.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Crayon
}
[Serializable, NetSerializable]
- public class CrayonSelectMessage : BoundUserInterfaceMessage
+ public sealed class CrayonSelectMessage : BoundUserInterfaceMessage
{
public readonly string State;
public CrayonSelectMessage(string selected)
@@ -39,7 +39,7 @@ namespace Content.Shared.Crayon
}
[Serializable, NetSerializable]
- public class CrayonComponentState : ComponentState
+ public sealed class CrayonComponentState : ComponentState
{
public readonly string Color;
public readonly string State;
@@ -55,7 +55,7 @@ namespace Content.Shared.Crayon
}
}
[Serializable, NetSerializable]
- public class CrayonBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class CrayonBoundUserInterfaceState : BoundUserInterfaceState
{
public string Selected;
public Color Color;
diff --git a/Content.Shared/Cuffs/Components/SharedCuffableComponent.cs b/Content.Shared/Cuffs/Components/SharedCuffableComponent.cs
index 20ce0e4fff..4b19b158e1 100644
--- a/Content.Shared/Cuffs/Components/SharedCuffableComponent.cs
+++ b/Content.Shared/Cuffs/Components/SharedCuffableComponent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Cuffs.Components
{
[NetworkedComponent()]
- public class SharedCuffableComponent : Component
+ public abstract class SharedCuffableComponent : Component
{
[ViewVariables]
public bool CanStillInteract { get; set; } = true;
diff --git a/Content.Shared/Damage/Components/DamageableComponent.cs b/Content.Shared/Damage/Components/DamageableComponent.cs
index 8fd5a6896c..01ef07abdc 100644
--- a/Content.Shared/Damage/Components/DamageableComponent.cs
+++ b/Content.Shared/Damage/Components/DamageableComponent.cs
@@ -25,7 +25,7 @@ namespace Content.Shared.Damage
[RegisterComponent]
[NetworkedComponent()]
[Friend(typeof(DamageableSystem))]
- public class DamageableComponent : Component, IRadiationAct, IExAct
+ public sealed class DamageableComponent : Component, IRadiationAct, IExAct
{
///
/// This specifies what damage types are supported by this component.
@@ -116,7 +116,7 @@ namespace Content.Shared.Damage
}
[Serializable, NetSerializable]
- public class DamageableComponentState : ComponentState
+ public sealed class DamageableComponentState : ComponentState
{
public readonly Dictionary DamageDict;
public readonly string? ModifierSetId;
diff --git a/Content.Shared/Damage/Components/SlowOnDamageComponent.cs b/Content.Shared/Damage/Components/SlowOnDamageComponent.cs
index 1ebe6e56d7..7c02623855 100644
--- a/Content.Shared/Damage/Components/SlowOnDamageComponent.cs
+++ b/Content.Shared/Damage/Components/SlowOnDamageComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Damage.Components
// TODO It'd be nice if this could be a destructible threshold, but on the other hand,
// that doesn't really work with events at all, and
[RegisterComponent, NetworkedComponent]
- public class SlowOnDamageComponent : Component
+ public sealed class SlowOnDamageComponent : Component
{
///
/// Damage -> movespeed dictionary. This is -damage-, not -health-.
diff --git a/Content.Shared/Damage/DamageModifierSet.cs b/Content.Shared/Damage/DamageModifierSet.cs
index 2294a7832a..854297824e 100644
--- a/Content.Shared/Damage/DamageModifierSet.cs
+++ b/Content.Shared/Damage/DamageModifierSet.cs
@@ -15,6 +15,7 @@ namespace Content.Shared.Damage
///
[DataDefinition]
[Serializable, NetSerializable]
+ [Virtual]
public class DamageModifierSet
{
[DataField("coefficients", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))]
diff --git a/Content.Shared/Damage/DamageSpecifier.cs b/Content.Shared/Damage/DamageSpecifier.cs
index 91cbea8619..1f91b9126a 100644
--- a/Content.Shared/Damage/DamageSpecifier.cs
+++ b/Content.Shared/Damage/DamageSpecifier.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Damage
/// functions to apply resistance sets and supports basic math operations to modify this dictionary.
///
[DataDefinition]
- public class DamageSpecifier : IEquatable
+ public sealed class DamageSpecifier : IEquatable
{
[JsonPropertyName("types")]
[DataField("types", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))]
diff --git a/Content.Shared/Damage/DamageVisualizerKeys.cs b/Content.Shared/Damage/DamageVisualizerKeys.cs
index 1a7abeca4e..01a96872ec 100644
--- a/Content.Shared/Damage/DamageVisualizerKeys.cs
+++ b/Content.Shared/Damage/DamageVisualizerKeys.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Damage
}
[Serializable, NetSerializable]
- public class DamageVisualizerGroupData : ICloneable
+ public sealed class DamageVisualizerGroupData : ICloneable
{
public List GroupList;
diff --git a/Content.Shared/Damage/Prototypes/DamageContainerPrototype.cs b/Content.Shared/Damage/Prototypes/DamageContainerPrototype.cs
index 53d67a59ff..7ce876f871 100644
--- a/Content.Shared/Damage/Prototypes/DamageContainerPrototype.cs
+++ b/Content.Shared/Damage/Prototypes/DamageContainerPrototype.cs
@@ -18,7 +18,7 @@ namespace Content.Shared.Damage.Prototypes
///
[Prototype("damageContainer")]
[Serializable, NetSerializable]
- public class DamageContainerPrototype : IPrototype
+ public sealed class DamageContainerPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs b/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
index 14b89c47a0..b2abd8e93f 100644
--- a/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
+++ b/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Damage.Prototypes
///
[Prototype("damageGroup")]
[Serializable, NetSerializable]
- public class DamageGroupPrototype : IPrototype
+ public sealed class DamageGroupPrototype : IPrototype
{
[DataField("id", required: true)] public string ID { get; } = default!;
diff --git a/Content.Shared/Damage/Prototypes/DamageModifierSetPrototype.cs b/Content.Shared/Damage/Prototypes/DamageModifierSetPrototype.cs
index b79d35c8a7..af47c2209d 100644
--- a/Content.Shared/Damage/Prototypes/DamageModifierSetPrototype.cs
+++ b/Content.Shared/Damage/Prototypes/DamageModifierSetPrototype.cs
@@ -16,7 +16,7 @@ namespace Content.Shared.Damage.Prototypes
/// just want normal data to be deserialized.
///
[Prototype("damageModifierSet")]
- public class DamageModifierSetPrototype : DamageModifierSet, IPrototype
+ public sealed class DamageModifierSetPrototype : DamageModifierSet, IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Damage/Prototypes/DamageTypePrototype.cs b/Content.Shared/Damage/Prototypes/DamageTypePrototype.cs
index 37d8365c1c..52effb9467 100644
--- a/Content.Shared/Damage/Prototypes/DamageTypePrototype.cs
+++ b/Content.Shared/Damage/Prototypes/DamageTypePrototype.cs
@@ -6,11 +6,11 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Damage.Prototypes
{
///
- /// A single damage type. These types are grouped together in s.
+ /// A single damage type. These types are grouped together in s.
///
[Prototype("damageType")]
[Serializable, NetSerializable]
- public class DamageTypePrototype : IPrototype
+ public sealed class DamageTypePrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Damage/Prototypes/ExaminableDamagePrototype.cs b/Content.Shared/Damage/Prototypes/ExaminableDamagePrototype.cs
index 3112c1fca1..ae7f55c22b 100644
--- a/Content.Shared/Damage/Prototypes/ExaminableDamagePrototype.cs
+++ b/Content.Shared/Damage/Prototypes/ExaminableDamagePrototype.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Damage.Prototypes;
/// Prototype for examinable damage messages.
///
[Prototype("examinableDamage")]
-public class ExaminableDamagePrototype : IPrototype
+public sealed class ExaminableDamagePrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Damage/Systems/DamageableSystem.cs b/Content.Shared/Damage/Systems/DamageableSystem.cs
index 64b973f892..e45eaa30c2 100644
--- a/Content.Shared/Damage/Systems/DamageableSystem.cs
+++ b/Content.Shared/Damage/Systems/DamageableSystem.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Prototypes;
namespace Content.Shared.Damage
{
- public class DamageableSystem : EntitySystem
+ public sealed class DamageableSystem : EntitySystem
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
@@ -220,7 +220,7 @@ namespace Content.Shared.Damage
///
/// For example, armor.
///
- public class DamageModifyEvent : EntityEventArgs, IInventoryRelayEvent
+ public sealed class DamageModifyEvent : EntityEventArgs, IInventoryRelayEvent
{
// Whenever locational damage is a thing, this should just check only that bit of armour.
public SlotFlags TargetSlots { get; } = ~SlotFlags.POCKET;
@@ -233,7 +233,7 @@ namespace Content.Shared.Damage
}
}
- public class DamageChangedEvent : EntityEventArgs
+ public sealed class DamageChangedEvent : EntityEventArgs
{
///
/// This is the component whose damage was changed.
diff --git a/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs b/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs
index 18fce7254c..99d2af251e 100644
--- a/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs
+++ b/Content.Shared/Damage/Systems/SlowOnDamageSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.IoC;
namespace Content.Shared.Damage
{
- public class SlowOnDamageSystem : EntitySystem
+ public sealed class SlowOnDamageSystem : EntitySystem
{
[Dependency] private readonly MovementSpeedModifierSystem _movementSpeedModifierSystem = default!;
diff --git a/Content.Shared/Dataset/DatasetPrototype.cs b/Content.Shared/Dataset/DatasetPrototype.cs
index 3c024b4669..527b679b37 100644
--- a/Content.Shared/Dataset/DatasetPrototype.cs
+++ b/Content.Shared/Dataset/DatasetPrototype.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Dataset
{
[Prototype("dataset")]
- public class DatasetPrototype : IPrototype
+ public sealed class DatasetPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Decals/Decal.cs b/Content.Shared/Decals/Decal.cs
index edca3da7e4..0da8a228ce 100644
--- a/Content.Shared/Decals/Decal.cs
+++ b/Content.Shared/Decals/Decal.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Decals
{
[Serializable, NetSerializable]
[DataDefinition]
- public class Decal
+ public sealed class Decal
{
[DataField("coordinates")] public readonly Vector2 Coordinates = Vector2.Zero;
[DataField("id")] public readonly string Id = string.Empty;
diff --git a/Content.Shared/Decals/DecalChunkUpdateEvent.cs b/Content.Shared/Decals/DecalChunkUpdateEvent.cs
index 99bbbd5a84..05a8f8e3d6 100644
--- a/Content.Shared/Decals/DecalChunkUpdateEvent.cs
+++ b/Content.Shared/Decals/DecalChunkUpdateEvent.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Decals
{
[Serializable, NetSerializable]
- public class DecalChunkUpdateEvent : EntityEventArgs
+ public sealed class DecalChunkUpdateEvent : EntityEventArgs
{
public Dictionary>> Data = new();
}
diff --git a/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs b/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs
index 301fb2aaed..2197777263 100644
--- a/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs
+++ b/Content.Shared/Decals/DecalGridChunkCollectionTypeSerializer.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Serialization.TypeSerializers.Interfaces;
namespace Content.Shared.Decals
{
[TypeSerializer]
- public class DecalGridChunkCollectionTypeSerializer : ITypeSerializer
+ public sealed class DecalGridChunkCollectionTypeSerializer : ITypeSerializer
{
public ValidationNode Validate(ISerializationManager serializationManager, MappingDataNode node,
IDependencyCollection dependencies, ISerializationContext? context = null)
diff --git a/Content.Shared/Decals/DecalGridComponent.cs b/Content.Shared/Decals/DecalGridComponent.cs
index 8e53c41e7c..39601f8f5f 100644
--- a/Content.Shared/Decals/DecalGridComponent.cs
+++ b/Content.Shared/Decals/DecalGridComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Decals
{
[RegisterComponent]
[Friend(typeof(SharedDecalSystem))]
- public class DecalGridComponent : Component
+ public sealed class DecalGridComponent : Component
{
[DataField("chunkCollection", serverOnly: true)]
public DecalGridChunkCollection ChunkCollection = new(new ());
diff --git a/Content.Shared/Decals/DecalPrototype.cs b/Content.Shared/Decals/DecalPrototype.cs
index cd648fa162..d834a37971 100644
--- a/Content.Shared/Decals/DecalPrototype.cs
+++ b/Content.Shared/Decals/DecalPrototype.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Decals
{
[Prototype("decal")]
- public class DecalPrototype : IPrototype
+ public sealed class DecalPrototype : IPrototype
{
[DataField("id")] public string ID { get; } = null!;
[DataField("sprite")] public SpriteSpecifier Sprite { get; } = SpriteSpecifier.Invalid;
diff --git a/Content.Shared/Disposal/Components/SharedDisposalRouterComponent.cs b/Content.Shared/Disposal/Components/SharedDisposalRouterComponent.cs
index 9c180cac01..9066971397 100644
--- a/Content.Shared/Disposal/Components/SharedDisposalRouterComponent.cs
+++ b/Content.Shared/Disposal/Components/SharedDisposalRouterComponent.cs
@@ -5,12 +5,12 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Disposal.Components
{
- public class SharedDisposalRouterComponent : Component
+ public sealed class SharedDisposalRouterComponent : Component
{
public static readonly Regex TagRegex = new("^[a-zA-Z0-9, ]*$", RegexOptions.Compiled);
[Serializable, NetSerializable]
- public class DisposalRouterUserInterfaceState : BoundUserInterfaceState
+ public sealed class DisposalRouterUserInterfaceState : BoundUserInterfaceState
{
public readonly string Tags;
@@ -21,7 +21,7 @@ namespace Content.Shared.Disposal.Components
}
[Serializable, NetSerializable]
- public class UiActionMessage : BoundUserInterfaceMessage
+ public sealed class UiActionMessage : BoundUserInterfaceMessage
{
public readonly UiAction Action;
public readonly string Tags = "";
diff --git a/Content.Shared/Disposal/Components/SharedDisposalTaggerComponent.cs b/Content.Shared/Disposal/Components/SharedDisposalTaggerComponent.cs
index e2b89cebf4..18e01db58d 100644
--- a/Content.Shared/Disposal/Components/SharedDisposalTaggerComponent.cs
+++ b/Content.Shared/Disposal/Components/SharedDisposalTaggerComponent.cs
@@ -5,12 +5,12 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Disposal.Components
{
- public class SharedDisposalTaggerComponent : Component
+ public sealed class SharedDisposalTaggerComponent : Component
{
public static readonly Regex TagRegex = new("^[a-zA-Z0-9 ]*$", RegexOptions.Compiled);
[Serializable, NetSerializable]
- public class DisposalTaggerUserInterfaceState : BoundUserInterfaceState
+ public sealed class DisposalTaggerUserInterfaceState : BoundUserInterfaceState
{
public readonly string Tag;
@@ -21,7 +21,7 @@ namespace Content.Shared.Disposal.Components
}
[Serializable, NetSerializable]
- public class UiActionMessage : BoundUserInterfaceMessage
+ public sealed class UiActionMessage : BoundUserInterfaceMessage
{
public readonly UiAction Action;
public readonly string Tag = "";
diff --git a/Content.Shared/Disposal/Components/SharedDisposalUnitComponent.cs b/Content.Shared/Disposal/Components/SharedDisposalUnitComponent.cs
index 9c7207f50c..816e55d1d3 100644
--- a/Content.Shared/Disposal/Components/SharedDisposalUnitComponent.cs
+++ b/Content.Shared/Disposal/Components/SharedDisposalUnitComponent.cs
@@ -83,7 +83,7 @@ namespace Content.Shared.Disposal.Components
}
[Serializable, NetSerializable]
- public class DisposalUnitBoundUserInterfaceState : BoundUserInterfaceState, IEquatable
+ public sealed class DisposalUnitBoundUserInterfaceState : BoundUserInterfaceState, IEquatable
{
public readonly string UnitName;
public readonly string UnitState;
@@ -117,7 +117,7 @@ namespace Content.Shared.Disposal.Components
/// Message data sent from client to server when a disposal unit ui button is pressed.
///
[Serializable, NetSerializable]
- public class UiButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class UiButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
diff --git a/Content.Shared/Doors/Components/DoorComponent.cs b/Content.Shared/Doors/Components/DoorComponent.cs
index 748bf8058c..a8b0357ff3 100644
--- a/Content.Shared/Doors/Components/DoorComponent.cs
+++ b/Content.Shared/Doors/Components/DoorComponent.cs
@@ -209,7 +209,7 @@ public enum DoorVisuals
}
[Serializable, NetSerializable]
-public class DoorComponentState : ComponentState
+public sealed class DoorComponentState : ComponentState
{
public readonly DoorState DoorState;
public readonly List CurrentlyCrushing;
diff --git a/Content.Shared/Doors/Components/SharedAirlockComponent.cs b/Content.Shared/Doors/Components/SharedAirlockComponent.cs
index 2e554014ba..f4ffabdbed 100644
--- a/Content.Shared/Doors/Components/SharedAirlockComponent.cs
+++ b/Content.Shared/Doors/Components/SharedAirlockComponent.cs
@@ -13,14 +13,14 @@ public abstract class SharedAirlockComponent : Component
[ViewVariables(VVAccess.ReadWrite)]
[DataField("safety")]
public bool Safety = true;
-
+
[ViewVariables(VVAccess.ReadWrite)]
[DataField("emergencyAccess")]
public bool EmergencyAccess = false;
}
[Serializable, NetSerializable]
-public class AirlockComponentState : ComponentState
+public sealed class AirlockComponentState : ComponentState
{
public readonly bool Safety;
diff --git a/Content.Shared/Doors/DoorEvents.cs b/Content.Shared/Doors/DoorEvents.cs
index f629b280de..cb5f4f3166 100644
--- a/Content.Shared/Doors/DoorEvents.cs
+++ b/Content.Shared/Doors/DoorEvents.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Doors
///
/// Raised when the door's State variable is changed to a new variable that it was not equal to before.
///
- public class DoorStateChangedEvent : EntityEventArgs
+ public sealed class DoorStateChangedEvent : EntityEventArgs
{
public readonly DoorState State;
@@ -20,7 +20,7 @@ namespace Content.Shared.Doors
/// Raised when the door is determining whether it is able to open.
/// Cancel to stop the door from being opened.
///
- public class BeforeDoorOpenedEvent : CancellableEntityEventArgs
+ public sealed class BeforeDoorOpenedEvent : CancellableEntityEventArgs
{
}
@@ -33,7 +33,7 @@ namespace Content.Shared.Doors
/// closed (opaque & collidable). If canceled while partially closing, it will start opening again. Useful for
/// things like airlock anti-crush safety features.
///
- public class BeforeDoorClosedEvent : CancellableEntityEventArgs
+ public sealed class BeforeDoorClosedEvent : CancellableEntityEventArgs
{
}
@@ -41,7 +41,7 @@ namespace Content.Shared.Doors
/// Called when the door is determining whether it is able to deny.
/// Cancel to stop the door from being able to deny.
///
- public class BeforeDoorDeniedEvent : CancellableEntityEventArgs
+ public sealed class BeforeDoorDeniedEvent : CancellableEntityEventArgs
{
}
@@ -52,7 +52,7 @@ namespace Content.Shared.Doors
///
/// This is called when a door decides whether it SHOULD auto close, not when it actually closes.
///
- public class BeforeDoorAutoCloseEvent : CancellableEntityEventArgs
+ public sealed class BeforeDoorAutoCloseEvent : CancellableEntityEventArgs
{
}
@@ -60,7 +60,7 @@ namespace Content.Shared.Doors
/// Raised to determine how long the door's pry time should be modified by.
/// Multiply PryTimeModifier by the desired amount.
///
- public class DoorGetPryTimeModifierEvent : EntityEventArgs
+ public sealed class DoorGetPryTimeModifierEvent : EntityEventArgs
{
public float PryTimeModifier = 1.0f;
}
@@ -69,7 +69,7 @@ namespace Content.Shared.Doors
/// Raised when an attempt to pry open the door is made.
/// Cancel to stop the door from being pried open.
///
- public class BeforeDoorPryEvent : CancellableEntityEventArgs
+ public sealed class BeforeDoorPryEvent : CancellableEntityEventArgs
{
public readonly EntityUid User;
diff --git a/Content.Shared/DragDrop/CanDragDropOnEvent.cs b/Content.Shared/DragDrop/CanDragDropOnEvent.cs
index 02c5aa95cb..b8b6ffe150 100644
--- a/Content.Shared/DragDrop/CanDragDropOnEvent.cs
+++ b/Content.Shared/DragDrop/CanDragDropOnEvent.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.DragDrop;
/// Mark this event as handled to specify that the entity can be dropped on
/// and set CanDrop to true or false, depending on whether dropping the entity onto the target is actually possible.
///
-public class CanDragDropOnEvent : HandledEntityEventArgs
+public sealed class CanDragDropOnEvent : HandledEntityEventArgs
{
///
/// Entity doing the drag and drop.
diff --git a/Content.Shared/DragDrop/DragDropRequestEvent.cs b/Content.Shared/DragDrop/DragDropRequestEvent.cs
index 0fd2fdf33e..99abdcacbb 100644
--- a/Content.Shared/DragDrop/DragDropRequestEvent.cs
+++ b/Content.Shared/DragDrop/DragDropRequestEvent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.DragDrop
/// Requests a drag / drop interaction to be performed
///
[Serializable, NetSerializable]
- public class DragDropRequestEvent : EntityEventArgs
+ public sealed class DragDropRequestEvent : EntityEventArgs
{
///
/// Location that the entity was dropped.
diff --git a/Content.Shared/DragDrop/DropAttemptEvent.cs b/Content.Shared/DragDrop/DropAttemptEvent.cs
index 98bdeab9fb..50e83833da 100644
--- a/Content.Shared/DragDrop/DropAttemptEvent.cs
+++ b/Content.Shared/DragDrop/DropAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.DragDrop
{
- public class DropAttemptEvent : CancellableEntityEventArgs
+ public sealed class DropAttemptEvent : CancellableEntityEventArgs
{
public DropAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/DragDrop/IDraggable.cs b/Content.Shared/DragDrop/IDraggable.cs
index 276abfa58c..b5a52cd0df 100644
--- a/Content.Shared/DragDrop/IDraggable.cs
+++ b/Content.Shared/DragDrop/IDraggable.cs
@@ -56,6 +56,7 @@ namespace Content.Shared.DragDrop
}
}
+ [Virtual]
public class StartDragDropEvent : HandledEntityEventArgs
{
///
@@ -80,6 +81,7 @@ namespace Content.Shared.DragDrop
}
}
+ [Virtual]
public class CanDropEvent : StartDragDropEvent
{
///
@@ -100,6 +102,7 @@ namespace Content.Shared.DragDrop
}
}
+ [Virtual]
public class DragDropEvent : CanDropEvent
{
///
diff --git a/Content.Shared/Electrocution/ElectrocutionEvents.cs b/Content.Shared/Electrocution/ElectrocutionEvents.cs
index d057c7c8b1..2515cfab2b 100644
--- a/Content.Shared/Electrocution/ElectrocutionEvents.cs
+++ b/Content.Shared/Electrocution/ElectrocutionEvents.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Electrocution
{
- public class ElectrocutionAttemptEvent : CancellableEntityEventArgs, IInventoryRelayEvent
+ public sealed class ElectrocutionAttemptEvent : CancellableEntityEventArgs, IInventoryRelayEvent
{
public SlotFlags TargetSlots { get; } = ~SlotFlags.POCKET;
@@ -19,7 +19,7 @@ namespace Content.Shared.Electrocution
}
}
- public class ElectrocutedEvent : EntityEventArgs
+ public sealed class ElectrocutedEvent : EntityEventArgs
{
public readonly EntityUid TargetUid;
public readonly EntityUid? SourceUid;
diff --git a/Content.Shared/Electrocution/InsulatedComponent.cs b/Content.Shared/Electrocution/InsulatedComponent.cs
index 24ba005bb2..99c09320f0 100644
--- a/Content.Shared/Electrocution/InsulatedComponent.cs
+++ b/Content.Shared/Electrocution/InsulatedComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Electrocution
{
[Friend(typeof(SharedElectrocutionSystem))]
[RegisterComponent, NetworkedComponent]
- public class InsulatedComponent : Component
+ public sealed class InsulatedComponent : Component
{
///
/// Siemens coefficient. Zero means completely insulated.
@@ -21,7 +21,7 @@ namespace Content.Shared.Electrocution
// Technically, people could cheat and figure out which budget insulated gloves are gud and which ones are bad.
// We might want to rethink this a little bit.
[NetSerializable, Serializable]
- public class InsulatedComponentState : ComponentState
+ public sealed class InsulatedComponentState : ComponentState
{
public float SiemensCoefficient { get; private set; }
diff --git a/Content.Shared/Emoting/EmoteAttemptEvent.cs b/Content.Shared/Emoting/EmoteAttemptEvent.cs
index bc619a1ac3..36db0236c5 100644
--- a/Content.Shared/Emoting/EmoteAttemptEvent.cs
+++ b/Content.Shared/Emoting/EmoteAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Emoting
{
- public class EmoteAttemptEvent : CancellableEntityEventArgs
+ public sealed class EmoteAttemptEvent : CancellableEntityEventArgs
{
public EmoteAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Emoting/EmoteSystem.cs b/Content.Shared/Emoting/EmoteSystem.cs
index ebb18d4657..810f44c1a7 100644
--- a/Content.Shared/Emoting/EmoteSystem.cs
+++ b/Content.Shared/Emoting/EmoteSystem.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Emoting
{
- public class EmoteSystem : EntitySystem
+ public sealed class EmoteSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Emoting/SharedEmotingComponent.cs b/Content.Shared/Emoting/SharedEmotingComponent.cs
index b49f16ff45..3623beef65 100644
--- a/Content.Shared/Emoting/SharedEmotingComponent.cs
+++ b/Content.Shared/Emoting/SharedEmotingComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Emoting
{
[RegisterComponent, NetworkedComponent]
- public class SharedEmotingComponent : Component
+ public sealed class SharedEmotingComponent : Component
{
[DataField("enabled")] private bool _enabled = true;
diff --git a/Content.Shared/EntityList/EntityListPrototype.cs b/Content.Shared/EntityList/EntityListPrototype.cs
index a785c265ac..df4c8ad7ba 100644
--- a/Content.Shared/EntityList/EntityListPrototype.cs
+++ b/Content.Shared/EntityList/EntityListPrototype.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.EntityList
{
[Prototype("entityList")]
- public class EntityListPrototype : IPrototype
+ public sealed class EntityListPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Entry/EntryPoint.cs b/Content.Shared/Entry/EntryPoint.cs
index 20d0ea9365..a30db91b08 100644
--- a/Content.Shared/Entry/EntryPoint.cs
+++ b/Content.Shared/Entry/EntryPoint.cs
@@ -14,7 +14,7 @@ using Robust.Shared.Prototypes;
namespace Content.Shared.Entry
{
- public class EntryPoint : GameShared
+ public sealed class EntryPoint : GameShared
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
diff --git a/Content.Shared/Examine/ExamineSystemMessages.cs b/Content.Shared/Examine/ExamineSystemMessages.cs
index 3928f142d5..8bccd81f24 100644
--- a/Content.Shared/Examine/ExamineSystemMessages.cs
+++ b/Content.Shared/Examine/ExamineSystemMessages.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Examine
public static class ExamineSystemMessages
{
[Serializable, NetSerializable]
- public class RequestExamineInfoMessage : EntityEventArgs
+ public sealed class RequestExamineInfoMessage : EntityEventArgs
{
public readonly EntityUid EntityUid;
@@ -22,7 +22,7 @@ namespace Content.Shared.Examine
}
[Serializable, NetSerializable]
- public class ExamineInfoResponseMessage : EntityEventArgs
+ public sealed class ExamineInfoResponseMessage : EntityEventArgs
{
public readonly EntityUid EntityUid;
public readonly FormattedMessage Message;
diff --git a/Content.Shared/Examine/ExamineSystemShared.cs b/Content.Shared/Examine/ExamineSystemShared.cs
index 9ea12a774a..11f3fdf13d 100644
--- a/Content.Shared/Examine/ExamineSystemShared.cs
+++ b/Content.Shared/Examine/ExamineSystemShared.cs
@@ -284,7 +284,7 @@ namespace Content.Shared.Examine
///
/// Raised when an entity is examined.
///
- public class ExaminedEvent : EntityEventArgs
+ public sealed class ExaminedEvent : EntityEventArgs
{
///
/// The message that will be displayed as the examine text.
diff --git a/Content.Shared/Flash/SharedFlashableComponent.cs b/Content.Shared/Flash/SharedFlashableComponent.cs
index f933330031..7d5e5211c5 100644
--- a/Content.Shared/Flash/SharedFlashableComponent.cs
+++ b/Content.Shared/Flash/SharedFlashableComponent.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Flash
}
[Serializable, NetSerializable]
- public class FlashableComponentState : ComponentState
+ public sealed class FlashableComponentState : ComponentState
{
public float Duration { get; }
public TimeSpan Time { get; }
diff --git a/Content.Shared/Foldable/FoldableComponent.cs b/Content.Shared/Foldable/FoldableComponent.cs
index bb6bffdd21..6989b84313 100644
--- a/Content.Shared/Foldable/FoldableComponent.cs
+++ b/Content.Shared/Foldable/FoldableComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Shared.Foldable;
[RegisterComponent]
[NetworkedComponent]
[Friend(typeof(SharedFoldableSystem))]
-public class FoldableComponent : Component
+public sealed class FoldableComponent : Component
{
[DataField("folded")]
public bool IsFolded = false;
@@ -25,7 +25,7 @@ public class FoldableComponent : Component
// ahhh, the ol' "state thats just a copy of the component".
[Serializable, NetSerializable]
-public class FoldableComponentState : ComponentState
+public sealed class FoldableComponentState : ComponentState
{
public readonly bool IsFolded;
diff --git a/Content.Shared/Follower/Components/FollowedComponent.cs b/Content.Shared/Follower/Components/FollowedComponent.cs
index cd4862a007..6a3acead70 100644
--- a/Content.Shared/Follower/Components/FollowedComponent.cs
+++ b/Content.Shared/Follower/Components/FollowedComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Follower.Components;
/// Attached to entities that are currently being followed by a ghost.
///
[RegisterComponent, Friend(typeof(FollowerSystem))]
-public class FollowedComponent : Component
+public sealed class FollowedComponent : Component
{
public HashSet Following = new();
}
diff --git a/Content.Shared/Follower/Components/FollowerComponent.cs b/Content.Shared/Follower/Components/FollowerComponent.cs
index 8913e74e9d..60174be561 100644
--- a/Content.Shared/Follower/Components/FollowerComponent.cs
+++ b/Content.Shared/Follower/Components/FollowerComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Follower.Components;
[RegisterComponent]
[Friend(typeof(FollowerSystem))]
-public class FollowerComponent : Component
+public sealed class FollowerComponent : Component
{
public EntityUid Following;
}
diff --git a/Content.Shared/Follower/FollowerSystem.cs b/Content.Shared/Follower/FollowerSystem.cs
index ae57159ca1..9083a25e60 100644
--- a/Content.Shared/Follower/FollowerSystem.cs
+++ b/Content.Shared/Follower/FollowerSystem.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Maths;
namespace Content.Shared.Follower;
-public class FollowerSystem : EntitySystem
+public sealed class FollowerSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Friction/TileFrictionModifier.cs b/Content.Shared/Friction/TileFrictionModifier.cs
index f74c074872..d49bc81034 100644
--- a/Content.Shared/Friction/TileFrictionModifier.cs
+++ b/Content.Shared/Friction/TileFrictionModifier.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Friction
{
[RegisterComponent]
[ComponentProtoName("TileFrictionModifier")]
- public class SharedTileFrictionModifier : Component
+ public sealed class SharedTileFrictionModifier : Component
{
///
/// Multiply the tilefriction cvar by this to get the body's actual tilefriction.
@@ -43,7 +43,7 @@ namespace Content.Shared.Friction
}
[NetSerializable, Serializable]
- protected class TileFrictionComponentState : ComponentState
+ protected sealed class TileFrictionComponentState : ComponentState
{
public float Modifier;
diff --git a/Content.Shared/GameTicking/RoundRestartCleanupEvent.cs b/Content.Shared/GameTicking/RoundRestartCleanupEvent.cs
index 1fc9b23fbf..ef71be9a26 100644
--- a/Content.Shared/GameTicking/RoundRestartCleanupEvent.cs
+++ b/Content.Shared/GameTicking/RoundRestartCleanupEvent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.GameTicking
{
[Serializable, NetSerializable]
- public class RoundRestartCleanupEvent : EntityEventArgs
+ public sealed class RoundRestartCleanupEvent : EntityEventArgs
{
}
}
diff --git a/Content.Shared/GameTicking/SharedGameTicker.cs b/Content.Shared/GameTicking/SharedGameTicker.cs
index e1b785fd70..52c5941ff3 100644
--- a/Content.Shared/GameTicking/SharedGameTicker.cs
+++ b/Content.Shared/GameTicking/SharedGameTicker.cs
@@ -17,17 +17,17 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class TickerJoinLobbyEvent : EntityEventArgs
+ public sealed class TickerJoinLobbyEvent : EntityEventArgs
{
}
[Serializable, NetSerializable]
- public class TickerJoinGameEvent : EntityEventArgs
+ public sealed class TickerJoinGameEvent : EntityEventArgs
{
}
[Serializable, NetSerializable]
- public class TickerLateJoinStatusEvent : EntityEventArgs
+ public sealed class TickerLateJoinStatusEvent : EntityEventArgs
{
// TODO: Make this a replicated CVar, honestly.
public bool Disallowed { get; }
@@ -40,7 +40,7 @@ namespace Content.Shared.GameTicking
[Serializable, NetSerializable]
- public class TickerLobbyStatusEvent : EntityEventArgs
+ public sealed class TickerLobbyStatusEvent : EntityEventArgs
{
public bool IsRoundStarted { get; }
public string? LobbySong { get; }
@@ -60,7 +60,7 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class TickerLobbyInfoEvent : EntityEventArgs
+ public sealed class TickerLobbyInfoEvent : EntityEventArgs
{
public string TextBlob { get; }
@@ -71,7 +71,7 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class TickerLobbyCountdownEvent : EntityEventArgs
+ public sealed class TickerLobbyCountdownEvent : EntityEventArgs
{
///
/// The game time that the game will start at.
@@ -91,7 +91,7 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class TickerLobbyReadyEvent : EntityEventArgs
+ public sealed class TickerLobbyReadyEvent : EntityEventArgs
{
///
/// The Status of the Player in the lobby (ready, observer, ...)
@@ -105,7 +105,7 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class TickerJobsAvailableEvent : EntityEventArgs
+ public sealed class TickerJobsAvailableEvent : EntityEventArgs
{
///
/// The Status of the Player in the lobby (ready, observer, ...)
@@ -121,7 +121,7 @@ namespace Content.Shared.GameTicking
}
[Serializable, NetSerializable]
- public class RoundEndMessageEvent : EntityEventArgs
+ public sealed class RoundEndMessageEvent : EntityEventArgs
{
[Serializable, NetSerializable]
public struct RoundEndPlayerInfo
diff --git a/Content.Shared/Ghost/Roles/GhostRolesEuiMessages.cs b/Content.Shared/Ghost/Roles/GhostRolesEuiMessages.cs
index a30c6c3a1e..1c6a741029 100644
--- a/Content.Shared/Ghost/Roles/GhostRolesEuiMessages.cs
+++ b/Content.Shared/Ghost/Roles/GhostRolesEuiMessages.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Ghost.Roles
}
[NetSerializable, Serializable]
- public class GhostRolesEuiState : EuiStateBase
+ public sealed class GhostRolesEuiState : EuiStateBase
{
public GhostRoleInfo[] GhostRoles { get; }
@@ -25,7 +25,7 @@ namespace Content.Shared.Ghost.Roles
}
[NetSerializable, Serializable]
- public class GhostRoleTakeoverRequestMessage : EuiMessageBase
+ public sealed class GhostRoleTakeoverRequestMessage : EuiMessageBase
{
public uint Identifier { get; }
@@ -36,7 +36,7 @@ namespace Content.Shared.Ghost.Roles
}
[NetSerializable, Serializable]
- public class GhostRoleWindowCloseMessage : EuiMessageBase
+ public sealed class GhostRoleWindowCloseMessage : EuiMessageBase
{
}
}
diff --git a/Content.Shared/Ghost/Roles/MakeGhostRoleEuiState.cs b/Content.Shared/Ghost/Roles/MakeGhostRoleEuiState.cs
index c28f338d6f..8f1df4f3ea 100644
--- a/Content.Shared/Ghost/Roles/MakeGhostRoleEuiState.cs
+++ b/Content.Shared/Ghost/Roles/MakeGhostRoleEuiState.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Ghost.Roles
{
[Serializable, NetSerializable]
- public class MakeGhostRoleEuiState : EuiStateBase
+ public sealed class MakeGhostRoleEuiState : EuiStateBase
{
public MakeGhostRoleEuiState(EntityUid entityUid)
{
diff --git a/Content.Shared/Ghost/Roles/MakeGhostRoleWindowClosedMessage.cs b/Content.Shared/Ghost/Roles/MakeGhostRoleWindowClosedMessage.cs
index 68754df2a8..dfcea80af3 100644
--- a/Content.Shared/Ghost/Roles/MakeGhostRoleWindowClosedMessage.cs
+++ b/Content.Shared/Ghost/Roles/MakeGhostRoleWindowClosedMessage.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Ghost.Roles
{
[Serializable, NetSerializable]
- public class MakeGhostRoleWindowClosedMessage : EuiMessageBase
+ public sealed class MakeGhostRoleWindowClosedMessage : EuiMessageBase
{
}
}
diff --git a/Content.Shared/Ghost/Roles/SharedGhostRoleSystem.cs b/Content.Shared/Ghost/Roles/SharedGhostRoleSystem.cs
index b3efb6c3ec..d7d2582211 100644
--- a/Content.Shared/Ghost/Roles/SharedGhostRoleSystem.cs
+++ b/Content.Shared/Ghost/Roles/SharedGhostRoleSystem.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Ghost.Roles
{
[Serializable, NetSerializable]
- public class GhostRole
+ public sealed class GhostRole
{
public string Name { get; set; } = string.Empty;
public string Description { get; set; } = string.Empty;
diff --git a/Content.Shared/Ghost/SharedGhostComponent.cs b/Content.Shared/Ghost/SharedGhostComponent.cs
index e081f5dbc5..58eda01faf 100644
--- a/Content.Shared/Ghost/SharedGhostComponent.cs
+++ b/Content.Shared/Ghost/SharedGhostComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Ghost
{
[NetworkedComponent()]
- public class SharedGhostComponent : Component
+ public abstract class SharedGhostComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
public bool CanGhostInteract
@@ -65,7 +65,7 @@ namespace Content.Shared.Ghost
}
[Serializable, NetSerializable]
- public class GhostComponentState : ComponentState
+ public sealed class GhostComponentState : ComponentState
{
public bool CanReturnToBody { get; }
public bool CanGhostInteract { get; }
diff --git a/Content.Shared/Ghost/SharedGhostSystem.cs b/Content.Shared/Ghost/SharedGhostSystem.cs
index 290c0a92e6..0630f09df1 100644
--- a/Content.Shared/Ghost/SharedGhostSystem.cs
+++ b/Content.Shared/Ghost/SharedGhostSystem.cs
@@ -43,7 +43,7 @@ namespace Content.Shared.Ghost
/// Response is sent via
///
[Serializable, NetSerializable]
- public class GhostWarpsRequestEvent : EntityEventArgs
+ public sealed class GhostWarpsRequestEvent : EntityEventArgs
{
}
@@ -52,7 +52,7 @@ namespace Content.Shared.Ghost
/// Contains players, and locations a ghost can warp to
///
[Serializable, NetSerializable]
- public class GhostWarpsResponseEvent : EntityEventArgs
+ public sealed class GhostWarpsResponseEvent : EntityEventArgs
{
public GhostWarpsResponseEvent(List locations, Dictionary players)
{
@@ -75,7 +75,7 @@ namespace Content.Shared.Ghost
/// A client to server request for their ghost to be warped to a location
///
[Serializable, NetSerializable]
- public class GhostWarpToLocationRequestEvent : EntityEventArgs
+ public sealed class GhostWarpToLocationRequestEvent : EntityEventArgs
{
///
/// The location name to warp to.
@@ -92,7 +92,7 @@ namespace Content.Shared.Ghost
/// A client to server request for their ghost to be warped to an entity
///
[Serializable, NetSerializable]
- public class GhostWarpToTargetRequestEvent : EntityEventArgs
+ public sealed class GhostWarpToTargetRequestEvent : EntityEventArgs
{
public EntityUid Target { get; }
@@ -106,7 +106,7 @@ namespace Content.Shared.Ghost
/// A client to server request for their ghost to return to body
///
[Serializable, NetSerializable]
- public class GhostReturnToBodyRequest : EntityEventArgs
+ public sealed class GhostReturnToBodyRequest : EntityEventArgs
{
}
@@ -114,7 +114,7 @@ namespace Content.Shared.Ghost
/// A server to client update with the available ghost role count
///
[Serializable, NetSerializable]
- public class GhostUpdateGhostRoleCountEvent : EntityEventArgs
+ public sealed class GhostUpdateGhostRoleCountEvent : EntityEventArgs
{
public int AvailableGhostRoles { get; }
diff --git a/Content.Shared/Gravity/GravityChangedMessage.cs b/Content.Shared/Gravity/GravityChangedMessage.cs
index b8955f1d6f..a25926db96 100644
--- a/Content.Shared/Gravity/GravityChangedMessage.cs
+++ b/Content.Shared/Gravity/GravityChangedMessage.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Map;
namespace Content.Shared.Gravity
{
- public class GravityChangedMessage : EntityEventArgs
+ public sealed class GravityChangedMessage : EntityEventArgs
{
public GravityChangedMessage(GridId changedGridIndex, bool newGravityState)
{
diff --git a/Content.Shared/Gravity/SharedGravityGeneratorComponent.cs b/Content.Shared/Gravity/SharedGravityGeneratorComponent.cs
index b65269ea13..50fc0b2a8d 100644
--- a/Content.Shared/Gravity/SharedGravityGeneratorComponent.cs
+++ b/Content.Shared/Gravity/SharedGravityGeneratorComponent.cs
@@ -6,13 +6,14 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Gravity
{
[NetworkedComponent()]
+ [Virtual]
public class SharedGravityGeneratorComponent : Component
{
///
/// Sent to the server to set whether the generator should be on or off
///
[Serializable, NetSerializable]
- public class SwitchGeneratorMessage : BoundUserInterfaceMessage
+ public sealed class SwitchGeneratorMessage : BoundUserInterfaceMessage
{
public bool On;
@@ -23,7 +24,7 @@ namespace Content.Shared.Gravity
}
[Serializable, NetSerializable]
- public class GeneratorState : BoundUserInterfaceState
+ public sealed class GeneratorState : BoundUserInterfaceState
{
public bool On;
// 0 -> 255
diff --git a/Content.Shared/HUD/HudThemePrototype.cs b/Content.Shared/HUD/HudThemePrototype.cs
index 3113166b7f..a8b244c43d 100644
--- a/Content.Shared/HUD/HudThemePrototype.cs
+++ b/Content.Shared/HUD/HudThemePrototype.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.HUD
{
[Prototype("hudTheme")]
- public class HudThemePrototype : IPrototype
+ public sealed class HudThemePrototype : IPrototype
{
[DataField("name", required: true)]
public string Name { get; } = string.Empty;
diff --git a/Content.Shared/Hands/Components/SharedHandsComponent.cs b/Content.Shared/Hands/Components/SharedHandsComponent.cs
index 777c79c07d..d1de5c9d52 100644
--- a/Content.Shared/Hands/Components/SharedHandsComponent.cs
+++ b/Content.Shared/Hands/Components/SharedHandsComponent.cs
@@ -716,7 +716,7 @@ namespace Content.Shared.Hands.Components
}
[Serializable, NetSerializable]
- public class HandsVisualState : ICloneable
+ public sealed class HandsVisualState : ICloneable
{
public List Hands { get; } = new();
@@ -750,7 +750,7 @@ namespace Content.Shared.Hands.Components
#endregion
[Serializable, NetSerializable]
- public class Hand
+ public sealed class Hand
{
[ViewVariables]
public string Name { get; }
@@ -803,7 +803,7 @@ namespace Content.Shared.Hands.Components
/// A message that calls the activate interaction on the item in the specified hand.
///
[Serializable, NetSerializable]
- public class ActivateInHandMsg : EntityEventArgs
+ public sealed class ActivateInHandMsg : EntityEventArgs
{
public string HandName { get; }
@@ -817,7 +817,7 @@ namespace Content.Shared.Hands.Components
/// Uses the item in the active hand on the item in the specified hand.
///
[Serializable, NetSerializable]
- public class ClientInteractUsingInHandMsg : EntityEventArgs
+ public sealed class ClientInteractUsingInHandMsg : EntityEventArgs
{
public string HandName { get; }
@@ -831,7 +831,7 @@ namespace Content.Shared.Hands.Components
/// Moves an item from one hand to the active hand.
///
[Serializable, NetSerializable]
- public class MoveItemFromHandMsg : EntityEventArgs
+ public sealed class MoveItemFromHandMsg : EntityEventArgs
{
public string HandName { get; }
@@ -851,7 +851,7 @@ namespace Content.Shared.Hands.Components
Right
}
- public class HandCountChangedEvent : EntityEventArgs
+ public sealed class HandCountChangedEvent : EntityEventArgs
{
public HandCountChangedEvent(EntityUid sender)
{
diff --git a/Content.Shared/Hands/HandEvents.cs b/Content.Shared/Hands/HandEvents.cs
index a2c727cf47..1ecba28b93 100644
--- a/Content.Shared/Hands/HandEvents.cs
+++ b/Content.Shared/Hands/HandEvents.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Hands
/// Raised when an entity item in a hand is deselected.
///
[PublicAPI]
- public class HandDeselectedEvent : HandledEntityEventArgs
+ public sealed class HandDeselectedEvent : HandledEntityEventArgs
{
///
/// Entity that owns the deselected hand.
@@ -35,7 +35,7 @@ namespace Content.Shared.Hands
/// Raised when an item entity held by a hand is selected.
///
[PublicAPI]
- public class HandSelectedEvent : HandledEntityEventArgs
+ public sealed class HandSelectedEvent : HandledEntityEventArgs
{
///
/// Entity that owns the selected hand.
@@ -55,7 +55,7 @@ namespace Content.Shared.Hands
}
[Serializable, NetSerializable]
- public class RequestSetHandEvent : EntityEventArgs
+ public sealed class RequestSetHandEvent : EntityEventArgs
{
///
/// The hand to be swapped to.
@@ -69,7 +69,7 @@ namespace Content.Shared.Hands
}
[Serializable, NetSerializable]
- public class PickupAnimationEvent : EntityEventArgs
+ public sealed class PickupAnimationEvent : EntityEventArgs
{
public EntityUid ItemUid { get; }
public EntityCoordinates InitialPosition { get; }
@@ -88,7 +88,7 @@ namespace Content.Shared.Hands
/// Raised directed on both the blocking entity and user when
/// a virtual hand item is deleted.
///
- public class VirtualItemDeletedEvent : EntityEventArgs
+ public sealed class VirtualItemDeletedEvent : EntityEventArgs
{
public EntityUid BlockingEntity;
public EntityUid User;
@@ -104,7 +104,7 @@ namespace Content.Shared.Hands
/// Raised when putting an entity into a hand slot
///
[PublicAPI]
- public class EquippedHandEvent : HandledEntityEventArgs
+ public sealed class EquippedHandEvent : HandledEntityEventArgs
{
///
/// Entity that equipped the item.
@@ -133,7 +133,7 @@ namespace Content.Shared.Hands
/// Raised when removing an entity from an inventory slot.
///
[PublicAPI]
- public class UnequippedHandEvent : HandledEntityEventArgs
+ public sealed class UnequippedHandEvent : HandledEntityEventArgs
{
///
/// Entity that equipped the item.
diff --git a/Content.Shared/Instruments/SharedInstrumentComponent.cs b/Content.Shared/Instruments/SharedInstrumentComponent.cs
index 1400e72ed7..b9d05acd74 100644
--- a/Content.Shared/Instruments/SharedInstrumentComponent.cs
+++ b/Content.Shared/Instruments/SharedInstrumentComponent.cs
@@ -10,7 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Instruments;
[NetworkedComponent, Friend(typeof(SharedInstrumentSystem))]
-public class SharedInstrumentComponent : Component
+public abstract class SharedInstrumentComponent : Component
{
[ViewVariables]
public bool Playing { get; set; }
@@ -42,7 +42,7 @@ public class SharedInstrumentComponent : Component
/// This message is sent to the client to completely stop midi input and midi playback.
///
[Serializable, NetSerializable]
-public class InstrumentStopMidiEvent : EntityEventArgs
+public sealed class InstrumentStopMidiEvent : EntityEventArgs
{
public EntityUid Uid { get; }
@@ -56,7 +56,7 @@ public class InstrumentStopMidiEvent : EntityEventArgs
/// This message is sent to the client to start the synth.
///
[Serializable, NetSerializable]
-public class InstrumentStartMidiEvent : EntityEventArgs
+public sealed class InstrumentStartMidiEvent : EntityEventArgs
{
public EntityUid Uid { get; }
@@ -70,7 +70,7 @@ public class InstrumentStartMidiEvent : EntityEventArgs
/// This message carries a MidiEvent to be played on clients.
///
[Serializable, NetSerializable]
-public class InstrumentMidiEventEvent : EntityEventArgs
+public sealed class InstrumentMidiEventEvent : EntityEventArgs
{
public EntityUid Uid { get; }
public MidiEvent[] MidiEvent { get; }
@@ -83,7 +83,7 @@ public class InstrumentMidiEventEvent : EntityEventArgs
}
[Serializable, NetSerializable]
-public class InstrumentState : ComponentState
+public sealed class InstrumentState : ComponentState
{
public bool Playing { get; }
public byte InstrumentProgram { get; }
diff --git a/Content.Shared/Interaction/BeforeInteract.cs b/Content.Shared/Interaction/BeforeInteract.cs
index 156507fd87..76318e229f 100644
--- a/Content.Shared/Interaction/BeforeInteract.cs
+++ b/Content.Shared/Interaction/BeforeInteract.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Interaction
/// Raised directed on the used object when clicking on another object before an interaction is handled.
///
[PublicAPI]
- public class BeforeRangedInteractEvent : HandledEntityEventArgs
+ public sealed class BeforeRangedInteractEvent : HandledEntityEventArgs
{
///
/// Entity that triggered the interaction.
diff --git a/Content.Shared/Interaction/Events/AttackAttemptEvent.cs b/Content.Shared/Interaction/Events/AttackAttemptEvent.cs
index 9f27a75fa7..c385aaf7e1 100644
--- a/Content.Shared/Interaction/Events/AttackAttemptEvent.cs
+++ b/Content.Shared/Interaction/Events/AttackAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Interaction.Events
{
- public class AttackAttemptEvent : CancellableEntityEventArgs
+ public sealed class AttackAttemptEvent : CancellableEntityEventArgs
{
public EntityUid Uid { get; }
public EntityUid? Target { get; }
diff --git a/Content.Shared/Interaction/Events/ChangeDirectionAttemptEvent.cs b/Content.Shared/Interaction/Events/ChangeDirectionAttemptEvent.cs
index 1c3e2b35d1..895fa58abc 100644
--- a/Content.Shared/Interaction/Events/ChangeDirectionAttemptEvent.cs
+++ b/Content.Shared/Interaction/Events/ChangeDirectionAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Interaction.Events
{
- public class ChangeDirectionAttemptEvent : CancellableEntityEventArgs
+ public sealed class ChangeDirectionAttemptEvent : CancellableEntityEventArgs
{
public ChangeDirectionAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Interaction/Events/UseAttemptEvent.cs b/Content.Shared/Interaction/Events/UseAttemptEvent.cs
index 06fec96487..f031f28ebe 100644
--- a/Content.Shared/Interaction/Events/UseAttemptEvent.cs
+++ b/Content.Shared/Interaction/Events/UseAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Interaction.Events
{
- public class UseAttemptEvent : CancellableEntityEventArgs
+ public sealed class UseAttemptEvent : CancellableEntityEventArgs
{
public UseAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Interaction/IActivate.cs b/Content.Shared/Interaction/IActivate.cs
index b97e4b7820..4efdee64b2 100644
--- a/Content.Shared/Interaction/IActivate.cs
+++ b/Content.Shared/Interaction/IActivate.cs
@@ -22,7 +22,7 @@ namespace Content.Shared.Interaction
void Activate(ActivateEventArgs eventArgs);
}
- public class ActivateEventArgs : EventArgs, ITargetedInteractEventArgs
+ public sealed class ActivateEventArgs : EventArgs, ITargetedInteractEventArgs
{
public ActivateEventArgs(EntityUid user, EntityUid target)
{
@@ -38,7 +38,7 @@ namespace Content.Shared.Interaction
/// Raised when an entity is activated in the world.
///
[PublicAPI]
- public class ActivateInWorldEvent : HandledEntityEventArgs, ITargetedInteractEventArgs
+ public sealed class ActivateInWorldEvent : HandledEntityEventArgs, ITargetedInteractEventArgs
{
///
/// Entity that activated the target world entity.
diff --git a/Content.Shared/Interaction/IAfterInteract.cs b/Content.Shared/Interaction/IAfterInteract.cs
index c578d60666..ea2523793f 100644
--- a/Content.Shared/Interaction/IAfterInteract.cs
+++ b/Content.Shared/Interaction/IAfterInteract.cs
@@ -29,7 +29,7 @@ namespace Content.Shared.Interaction
Task AfterInteract(AfterInteractEventArgs eventArgs);
}
- public class AfterInteractEventArgs : EventArgs
+ public sealed class AfterInteractEventArgs : EventArgs
{
public EntityUid User { get; }
public EntityCoordinates ClickLocation { get; }
diff --git a/Content.Shared/Interaction/IDropped.cs b/Content.Shared/Interaction/IDropped.cs
index 5fdcd071ae..58a5ca6cbf 100644
--- a/Content.Shared/Interaction/IDropped.cs
+++ b/Content.Shared/Interaction/IDropped.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Interaction
void Dropped(DroppedEventArgs eventArgs);
}
- public class DroppedEventArgs : EventArgs
+ public sealed class DroppedEventArgs : EventArgs
{
public DroppedEventArgs(EntityUid user)
{
@@ -29,7 +29,7 @@ namespace Content.Shared.Interaction
/// Raised when an entity is dropped
///
[PublicAPI]
- public class DroppedEvent : HandledEntityEventArgs
+ public sealed class DroppedEvent : HandledEntityEventArgs
{
///
/// Entity that dropped the item.
diff --git a/Content.Shared/Interaction/IInteractHand.cs b/Content.Shared/Interaction/IInteractHand.cs
index 723c7e09e6..2ef7e881d0 100644
--- a/Content.Shared/Interaction/IInteractHand.cs
+++ b/Content.Shared/Interaction/IInteractHand.cs
@@ -19,7 +19,7 @@ namespace Content.Shared.Interaction
bool InteractHand(InteractHandEventArgs eventArgs);
}
- public class InteractHandEventArgs : EventArgs, ITargetedInteractEventArgs
+ public sealed class InteractHandEventArgs : EventArgs, ITargetedInteractEventArgs
{
public InteractHandEventArgs(EntityUid user, EntityUid target)
{
@@ -35,7 +35,7 @@ namespace Content.Shared.Interaction
/// Raised directed on a target entity when it is interacted with by a user with an empty hand.
///
[PublicAPI]
- public class InteractHandEvent : HandledEntityEventArgs, ITargetedInteractEventArgs
+ public sealed class InteractHandEvent : HandledEntityEventArgs, ITargetedInteractEventArgs
{
///
/// Entity that triggered the interaction.
diff --git a/Content.Shared/Interaction/IInteractUsing.cs b/Content.Shared/Interaction/IInteractUsing.cs
index 4b3877c840..04f1e6c003 100644
--- a/Content.Shared/Interaction/IInteractUsing.cs
+++ b/Content.Shared/Interaction/IInteractUsing.cs
@@ -28,7 +28,7 @@ namespace Content.Shared.Interaction
Task InteractUsing(InteractUsingEventArgs eventArgs);
}
- public class InteractUsingEventArgs : EventArgs, ITargetedInteractEventArgs
+ public sealed class InteractUsingEventArgs : EventArgs, ITargetedInteractEventArgs
{
public InteractUsingEventArgs(EntityUid user, EntityCoordinates clickLocation, EntityUid @using, EntityUid target)
{
@@ -48,7 +48,7 @@ namespace Content.Shared.Interaction
/// Raised when a target entity is interacted with by a user while holding an object in their hand.
///
[PublicAPI]
- public class InteractUsingEvent : HandledEntityEventArgs
+ public sealed class InteractUsingEvent : HandledEntityEventArgs
{
///
/// Entity that triggered the interaction.
diff --git a/Content.Shared/Interaction/IRangedInteract.cs b/Content.Shared/Interaction/IRangedInteract.cs
index b9b71e7156..0c9280adaa 100644
--- a/Content.Shared/Interaction/IRangedInteract.cs
+++ b/Content.Shared/Interaction/IRangedInteract.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Interaction
/// Raised when an entity is interacted with that is out of the user entity's range of direct use.
///
[PublicAPI]
- public class RangedInteractEvent : HandledEntityEventArgs
+ public sealed class RangedInteractEvent : HandledEntityEventArgs
{
///
/// Entity that triggered the interaction.
diff --git a/Content.Shared/Interaction/IUse.cs b/Content.Shared/Interaction/IUse.cs
index 5cdb81931d..9d8f00934d 100644
--- a/Content.Shared/Interaction/IUse.cs
+++ b/Content.Shared/Interaction/IUse.cs
@@ -20,7 +20,7 @@ namespace Content.Shared.Interaction
bool UseEntity(UseEntityEventArgs eventArgs);
}
- public class UseEntityEventArgs : EventArgs
+ public sealed class UseEntityEventArgs : EventArgs
{
public UseEntityEventArgs(EntityUid user)
{
@@ -34,7 +34,7 @@ namespace Content.Shared.Interaction
/// Raised when using the entity in your hands.
///
[PublicAPI]
- public class UseInHandEvent : HandledEntityEventArgs
+ public sealed class UseInHandEvent : HandledEntityEventArgs
{
///
/// Entity holding the item in their hand.
diff --git a/Content.Shared/Interaction/RotateToFaceSystem.cs b/Content.Shared/Interaction/RotateToFaceSystem.cs
index 11f68bbfba..e8e915d547 100644
--- a/Content.Shared/Interaction/RotateToFaceSystem.cs
+++ b/Content.Shared/Interaction/RotateToFaceSystem.cs
@@ -31,7 +31,7 @@ namespace Content.Shared.Interaction
/// Doesn't really fit with SharedInteractionSystem so it's not there.
///
[UsedImplicitly]
- public class RotateToFaceSystem : EntitySystem
+ public sealed class RotateToFaceSystem : EntitySystem
{
[Dependency] private readonly ActionBlockerSystem _actionBlockerSystem = default!;
public bool TryFaceCoordinates(EntityUid user, Vector2 coordinates)
diff --git a/Content.Shared/Inventory/Events/EquipAttemptEvents.cs b/Content.Shared/Inventory/Events/EquipAttemptEvents.cs
index adbe9e5709..fca7b1c004 100644
--- a/Content.Shared/Inventory/Events/EquipAttemptEvents.cs
+++ b/Content.Shared/Inventory/Events/EquipAttemptEvents.cs
@@ -45,7 +45,7 @@ public abstract class EquipAttemptBase : CancellableEntityEventArgs
}
}
-public class BeingEquippedAttemptEvent : EquipAttemptBase
+public sealed class BeingEquippedAttemptEvent : EquipAttemptBase
{
public BeingEquippedAttemptEvent(EntityUid equipee, EntityUid equipTarget, EntityUid equipment,
SlotDefinition slotDefinition) : base(equipee, equipTarget, equipment, slotDefinition)
@@ -53,7 +53,7 @@ public class BeingEquippedAttemptEvent : EquipAttemptBase
}
}
-public class IsEquippingAttemptEvent : EquipAttemptBase
+public sealed class IsEquippingAttemptEvent : EquipAttemptBase
{
public IsEquippingAttemptEvent(EntityUid equipee, EntityUid equipTarget, EntityUid equipment,
SlotDefinition slotDefinition) : base(equipee, equipTarget, equipment, slotDefinition)
diff --git a/Content.Shared/Inventory/Events/EquippedEvents.cs b/Content.Shared/Inventory/Events/EquippedEvents.cs
index ce447cc473..4d0859ab30 100644
--- a/Content.Shared/Inventory/Events/EquippedEvents.cs
+++ b/Content.Shared/Inventory/Events/EquippedEvents.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Inventory.Events;
-public class EquippedEventBase : EntityEventArgs
+public abstract class EquippedEventBase : EntityEventArgs
{
///
/// The entity equipping.
@@ -33,14 +33,14 @@ public class EquippedEventBase : EntityEventArgs
}
}
-public class DidEquipEvent : EquippedEventBase
+public sealed class DidEquipEvent : EquippedEventBase
{
public DidEquipEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
}
}
-public class GotEquippedEvent : EquippedEventBase
+public sealed class GotEquippedEvent : EquippedEventBase
{
public GotEquippedEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
diff --git a/Content.Shared/Inventory/Events/InventoryEquipActEvent.cs b/Content.Shared/Inventory/Events/InventoryEquipActEvent.cs
index a174bedc49..acd00fb71e 100644
--- a/Content.Shared/Inventory/Events/InventoryEquipActEvent.cs
+++ b/Content.Shared/Inventory/Events/InventoryEquipActEvent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Inventory.Events;
/// This event is used to tell the server-inventorysystem someone wants to equip something
///
[NetSerializable, Serializable]
-public class InventoryEquipActEvent : EntityEventArgs
+public sealed class InventoryEquipActEvent : EntityEventArgs
{
public readonly EntityUid Uid;
public readonly EntityUid ItemUid;
diff --git a/Content.Shared/Inventory/Events/UnequipAttemptEvent.cs b/Content.Shared/Inventory/Events/UnequipAttemptEvent.cs
index ab0704b09c..52fb194654 100644
--- a/Content.Shared/Inventory/Events/UnequipAttemptEvent.cs
+++ b/Content.Shared/Inventory/Events/UnequipAttemptEvent.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Inventory.Events;
-public class UnequipAttemptEventBase : CancellableEntityEventArgs
+public abstract class UnequipAttemptEventBase : CancellableEntityEventArgs
{
///
/// The entity performing the action. NOT necessarily the same as the entity whose equipment is being removed..
@@ -39,7 +39,7 @@ public class UnequipAttemptEventBase : CancellableEntityEventArgs
}
}
-public class BeingUnequippedAttemptEvent : UnequipAttemptEventBase
+public sealed class BeingUnequippedAttemptEvent : UnequipAttemptEventBase
{
public BeingUnequippedAttemptEvent(EntityUid unequipee, EntityUid unEquipTarget, EntityUid equipment,
SlotDefinition slotDefinition) : base(unequipee, unEquipTarget, equipment, slotDefinition)
@@ -47,7 +47,7 @@ public class BeingUnequippedAttemptEvent : UnequipAttemptEventBase
}
}
-public class IsUnequippingAttemptEvent : UnequipAttemptEventBase
+public sealed class IsUnequippingAttemptEvent : UnequipAttemptEventBase
{
public IsUnequippingAttemptEvent(EntityUid unequipee, EntityUid unEquipTarget, EntityUid equipment,
SlotDefinition slotDefinition) : base(unequipee, unEquipTarget, equipment, slotDefinition)
diff --git a/Content.Shared/Inventory/Events/UnequippedEvents.cs b/Content.Shared/Inventory/Events/UnequippedEvents.cs
index 3522abfb6d..8aa0681481 100644
--- a/Content.Shared/Inventory/Events/UnequippedEvents.cs
+++ b/Content.Shared/Inventory/Events/UnequippedEvents.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Inventory.Events;
-public class UnequippedEventBase : EntityEventArgs
+public abstract class UnequippedEventBase : EntityEventArgs
{
///
/// The entity unequipping.
@@ -27,14 +27,14 @@ public class UnequippedEventBase : EntityEventArgs
}
}
-public class DidUnequipEvent : UnequippedEventBase
+public sealed class DidUnequipEvent : UnequippedEventBase
{
public DidUnequipEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
}
}
-public class GotUnequippedEvent : UnequippedEventBase
+public sealed class GotUnequippedEvent : UnequippedEventBase
{
public GotUnequippedEvent(EntityUid equipee, EntityUid equipment, SlotDefinition slotDefinition) : base(equipee, equipment, slotDefinition)
{
diff --git a/Content.Shared/Inventory/Events/UseSlotNetworkMessage.cs b/Content.Shared/Inventory/Events/UseSlotNetworkMessage.cs
index e99856830c..d3b8c59db0 100644
--- a/Content.Shared/Inventory/Events/UseSlotNetworkMessage.cs
+++ b/Content.Shared/Inventory/Events/UseSlotNetworkMessage.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Inventory.Events;
[NetSerializable, Serializable]
-public class UseSlotNetworkMessage : EntityEventArgs
+public sealed class UseSlotNetworkMessage : EntityEventArgs
{
// The slot-owner is implicitly the client that is sending this message.
// Otherwise clients could start forcefully undressing other clients.
diff --git a/Content.Shared/Inventory/InventoryComponent.cs b/Content.Shared/Inventory/InventoryComponent.cs
index f3627ab260..fd1959e62c 100644
--- a/Content.Shared/Inventory/InventoryComponent.cs
+++ b/Content.Shared/Inventory/InventoryComponent.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Inventory;
-public class InventoryComponent : Component, IExAct
+public abstract class InventoryComponent : Component, IExAct
{
[Dependency] private readonly IEntityManager _entityManager = default!;
diff --git a/Content.Shared/Inventory/InventoryTemplatePrototype.cs b/Content.Shared/Inventory/InventoryTemplatePrototype.cs
index d98c212239..66478ba7a6 100644
--- a/Content.Shared/Inventory/InventoryTemplatePrototype.cs
+++ b/Content.Shared/Inventory/InventoryTemplatePrototype.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Inventory;
[Prototype("inventoryTemplate")]
-public class InventoryTemplatePrototype : IPrototype
+public sealed class InventoryTemplatePrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = string.Empty;
@@ -18,7 +18,7 @@ public class InventoryTemplatePrototype : IPrototype
}
[DataDefinition]
-public class SlotDefinition
+public sealed class SlotDefinition
{
[DataField("name", required: true)] public string Name { get; } = string.Empty;
diff --git a/Content.Shared/Item/ItemSystem.cs b/Content.Shared/Item/ItemSystem.cs
index e52d4f0c2b..ef8cef20dd 100644
--- a/Content.Shared/Item/ItemSystem.cs
+++ b/Content.Shared/Item/ItemSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Localization;
namespace Content.Shared.Item
{
- public class ItemSystem : EntitySystem
+ public sealed class ItemSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Item/PickupAttemptEvent.cs b/Content.Shared/Item/PickupAttemptEvent.cs
index e52c0722a9..aa1ed2be59 100644
--- a/Content.Shared/Item/PickupAttemptEvent.cs
+++ b/Content.Shared/Item/PickupAttemptEvent.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Item
///
/// Raised on a *mob* when it tries to pickup something
///
- public class PickupAttemptEvent : CancellableEntityEventArgs
+ public sealed class PickupAttemptEvent : CancellableEntityEventArgs
{
public PickupAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Item/SharedItemComponent.cs b/Content.Shared/Item/SharedItemComponent.cs
index b3196a86c9..145a5f35dc 100644
--- a/Content.Shared/Item/SharedItemComponent.cs
+++ b/Content.Shared/Item/SharedItemComponent.cs
@@ -20,7 +20,7 @@ namespace Content.Shared.Item
/// Players can pick up, drop, and put items in bags, and they can be seen in player's hands.
///
[NetworkedComponent()]
- public class SharedItemComponent : Component, IInteractHand
+ public abstract class SharedItemComponent : Component, IInteractHand
{
[Dependency] private readonly IEntityManager _entMan = default!;
@@ -136,7 +136,7 @@ namespace Content.Shared.Item
}
[Serializable, NetSerializable]
- public class ItemComponentState : ComponentState
+ public sealed class ItemComponentState : ComponentState
{
public int Size { get; }
public string? EquippedPrefix { get; }
@@ -157,7 +157,7 @@ namespace Content.Shared.Item
/// that it can properly update its sprite/GUI.
///
[Serializable, NetSerializable]
- public class ItemPrefixChangeEvent : EntityEventArgs
+ public sealed class ItemPrefixChangeEvent : EntityEventArgs
{
public readonly EntityUid Item;
public readonly string ContainerId;
diff --git a/Content.Shared/Jittering/JitteringComponent.cs b/Content.Shared/Jittering/JitteringComponent.cs
index 81d885065f..3bf05c6c82 100644
--- a/Content.Shared/Jittering/JitteringComponent.cs
+++ b/Content.Shared/Jittering/JitteringComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Jittering
{
[Friend(typeof(SharedJitteringSystem))]
[RegisterComponent, NetworkedComponent]
- public class JitteringComponent : Component
+ public sealed class JitteringComponent : Component
{
[ViewVariables(VVAccess.ReadWrite)]
public float Amplitude { get; set; }
@@ -23,7 +23,7 @@ namespace Content.Shared.Jittering
}
[Serializable, NetSerializable]
- public class JitteringComponentState : ComponentState
+ public sealed class JitteringComponentState : ComponentState
{
public float Amplitude { get; }
public float Frequency { get; }
diff --git a/Content.Shared/Kitchen/Components/SharedMicrowaveComponent.cs b/Content.Shared/Kitchen/Components/SharedMicrowaveComponent.cs
index 44188697d0..9c1a4ca01d 100644
--- a/Content.Shared/Kitchen/Components/SharedMicrowaveComponent.cs
+++ b/Content.Shared/Kitchen/Components/SharedMicrowaveComponent.cs
@@ -8,10 +8,10 @@ namespace Content.Shared.Kitchen.Components
{
[NetworkedComponent()]
- public class SharedMicrowaveComponent : Component
+ public abstract class SharedMicrowaveComponent : Component
{
[Serializable, NetSerializable]
- public class MicrowaveStartCookMessage : BoundUserInterfaceMessage
+ public sealed class MicrowaveStartCookMessage : BoundUserInterfaceMessage
{
public MicrowaveStartCookMessage()
{
@@ -19,7 +19,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class MicrowaveEjectMessage : BoundUserInterfaceMessage
+ public sealed class MicrowaveEjectMessage : BoundUserInterfaceMessage
{
public MicrowaveEjectMessage()
{
@@ -27,7 +27,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class MicrowaveEjectSolidIndexedMessage : BoundUserInterfaceMessage
+ public sealed class MicrowaveEjectSolidIndexedMessage : BoundUserInterfaceMessage
{
public EntityUid EntityID;
@@ -38,7 +38,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class MicrowaveVaporizeReagentIndexedMessage : BoundUserInterfaceMessage
+ public sealed class MicrowaveVaporizeReagentIndexedMessage : BoundUserInterfaceMessage
{
public Solution.ReagentQuantity ReagentQuantity;
@@ -48,7 +48,7 @@ namespace Content.Shared.Kitchen.Components
}
}
[Serializable, NetSerializable]
- public class MicrowaveSelectCookTimeMessage : BoundUserInterfaceMessage
+ public sealed class MicrowaveSelectCookTimeMessage : BoundUserInterfaceMessage
{
public int ButtonIndex;
public uint NewCookTime;
@@ -61,7 +61,7 @@ namespace Content.Shared.Kitchen.Components
}
[NetSerializable, Serializable]
- public class MicrowaveUpdateUserInterfaceState : BoundUserInterfaceState
+ public sealed class MicrowaveUpdateUserInterfaceState : BoundUserInterfaceState
{
public EntityUid[] ContainedSolids;
public bool IsMicrowaveBusy;
diff --git a/Content.Shared/Kitchen/Components/SharedReagentGrinderComponent.cs b/Content.Shared/Kitchen/Components/SharedReagentGrinderComponent.cs
index 7ab076bfc2..2fa73f8947 100644
--- a/Content.Shared/Kitchen/Components/SharedReagentGrinderComponent.cs
+++ b/Content.Shared/Kitchen/Components/SharedReagentGrinderComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Kitchen.Components
public abstract class SharedReagentGrinderComponent : Component
{
[Serializable, NetSerializable]
- public class ReagentGrinderGrindStartMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderGrindStartMessage : BoundUserInterfaceMessage
{
public ReagentGrinderGrindStartMessage()
{
@@ -16,7 +16,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderJuiceStartMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderJuiceStartMessage : BoundUserInterfaceMessage
{
public ReagentGrinderJuiceStartMessage()
{
@@ -24,7 +24,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderEjectChamberAllMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderEjectChamberAllMessage : BoundUserInterfaceMessage
{
public ReagentGrinderEjectChamberAllMessage()
{
@@ -32,7 +32,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderEjectBeakerMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderEjectBeakerMessage : BoundUserInterfaceMessage
{
public ReagentGrinderEjectBeakerMessage()
{
@@ -40,7 +40,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderEjectChamberContentMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderEjectChamberContentMessage : BoundUserInterfaceMessage
{
public EntityUid EntityID;
public ReagentGrinderEjectChamberContentMessage(EntityUid entityID)
@@ -50,7 +50,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderWorkStartedMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderWorkStartedMessage : BoundUserInterfaceMessage
{
public GrinderProgram GrinderProgram;
public ReagentGrinderWorkStartedMessage(GrinderProgram grinderProgram)
@@ -60,7 +60,7 @@ namespace Content.Shared.Kitchen.Components
}
[Serializable, NetSerializable]
- public class ReagentGrinderWorkCompleteMessage : BoundUserInterfaceMessage
+ public sealed class ReagentGrinderWorkCompleteMessage : BoundUserInterfaceMessage
{
public ReagentGrinderWorkCompleteMessage()
{
diff --git a/Content.Shared/Kitchen/MicrowaveMealRecipePrototype.cs b/Content.Shared/Kitchen/MicrowaveMealRecipePrototype.cs
index 71ca6cfb53..f0d1c083a9 100644
--- a/Content.Shared/Kitchen/MicrowaveMealRecipePrototype.cs
+++ b/Content.Shared/Kitchen/MicrowaveMealRecipePrototype.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Kitchen
/// A recipe for space microwaves.
///
[Prototype("microwaveMealRecipe")]
- public class FoodRecipePrototype : IPrototype
+ public sealed class FoodRecipePrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Kitchen/RecipeManager.cs b/Content.Shared/Kitchen/RecipeManager.cs
index 93c69e8b62..8e9fd13206 100644
--- a/Content.Shared/Kitchen/RecipeManager.cs
+++ b/Content.Shared/Kitchen/RecipeManager.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Prototypes;
namespace Content.Shared.Kitchen
{
- public class RecipeManager
+ public sealed class RecipeManager
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
@@ -38,7 +38,7 @@ namespace Content.Shared.Kitchen
return false;
}
- private class RecipeComparer : Comparer
+ private sealed class RecipeComparer : Comparer
{
public override int Compare(FoodRecipePrototype? x, FoodRecipePrototype? y)
{
diff --git a/Content.Shared/Labels/LabelEvents.cs b/Content.Shared/Labels/LabelEvents.cs
index b79532189f..32e249ae02 100644
--- a/Content.Shared/Labels/LabelEvents.cs
+++ b/Content.Shared/Labels/LabelEvents.cs
@@ -24,7 +24,7 @@ namespace Content.Shared.Labels
/// Represents a state that can be sent to the client
///
[Serializable, NetSerializable]
- public class HandLabelerBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class HandLabelerBoundUserInterfaceState : BoundUserInterfaceState
{
public string CurrentLabel { get; }
@@ -35,7 +35,7 @@ namespace Content.Shared.Labels
}
[Serializable, NetSerializable]
- public class HandLabelerLabelChangedMessage : BoundUserInterfaceMessage
+ public sealed class HandLabelerLabelChangedMessage : BoundUserInterfaceMessage
{
public string Label { get; }
diff --git a/Content.Shared/Lathe/SharedLatheComponent.cs b/Content.Shared/Lathe/SharedLatheComponent.cs
index fbd05fe70f..f47212cbcc 100644
--- a/Content.Shared/Lathe/SharedLatheComponent.cs
+++ b/Content.Shared/Lathe/SharedLatheComponent.cs
@@ -10,6 +10,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Lathe
{
[NetworkedComponent()]
+ [Virtual]
public class SharedLatheComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
@@ -38,7 +39,7 @@ namespace Content.Shared.Lathe
/// Sent to the server to sync material storage and the recipe queue.
///
[Serializable, NetSerializable]
- public class LatheSyncRequestMessage : BoundUserInterfaceMessage
+ public sealed class LatheSyncRequestMessage : BoundUserInterfaceMessage
{
public LatheSyncRequestMessage()
{
@@ -51,7 +52,7 @@ namespace Content.Shared.Lathe
/// Sent to the server to sync the lathe's technology database with the research server.
///
[Serializable, NetSerializable]
- public class LatheServerSyncMessage : BoundUserInterfaceMessage
+ public sealed class LatheServerSyncMessage : BoundUserInterfaceMessage
{
public LatheServerSyncMessage()
{
@@ -62,7 +63,7 @@ namespace Content.Shared.Lathe
/// Sent to the server to open the ResearchClient UI.
///
[Serializable, NetSerializable]
- public class LatheServerSelectionMessage : BoundUserInterfaceMessage
+ public sealed class LatheServerSelectionMessage : BoundUserInterfaceMessage
{
public LatheServerSelectionMessage()
{
@@ -73,7 +74,7 @@ namespace Content.Shared.Lathe
/// Sent to the client when the lathe is producing a recipe.
///
[Serializable, NetSerializable]
- public class LatheProducingRecipeMessage : BoundUserInterfaceMessage
+ public sealed class LatheProducingRecipeMessage : BoundUserInterfaceMessage
{
public readonly string ID;
public LatheProducingRecipeMessage(string id)
@@ -86,7 +87,7 @@ namespace Content.Shared.Lathe
/// Sent to the client when the lathe stopped/finished producing a recipe.
///
[Serializable, NetSerializable]
- public class LatheStoppedProducingRecipeMessage : BoundUserInterfaceMessage
+ public sealed class LatheStoppedProducingRecipeMessage : BoundUserInterfaceMessage
{
public LatheStoppedProducingRecipeMessage()
{
@@ -97,7 +98,7 @@ namespace Content.Shared.Lathe
/// Sent to the client to let it know about the recipe queue.
///
[Serializable, NetSerializable]
- public class LatheFullQueueMessage : BoundUserInterfaceMessage
+ public sealed class LatheFullQueueMessage : BoundUserInterfaceMessage
{
public readonly Queue Recipes;
public LatheFullQueueMessage(Queue recipes)
@@ -110,7 +111,7 @@ namespace Content.Shared.Lathe
/// Sent to the server when a client queues a new recipe.
///
[Serializable, NetSerializable]
- public class LatheQueueRecipeMessage : BoundUserInterfaceMessage
+ public sealed class LatheQueueRecipeMessage : BoundUserInterfaceMessage
{
public readonly string ID;
public readonly int Quantity;
diff --git a/Content.Shared/Lathe/SharedLatheDatabaseComponent.cs b/Content.Shared/Lathe/SharedLatheDatabaseComponent.cs
index b431c5c81b..e15a4c71de 100644
--- a/Content.Shared/Lathe/SharedLatheDatabaseComponent.cs
+++ b/Content.Shared/Lathe/SharedLatheDatabaseComponent.cs
@@ -13,7 +13,7 @@ using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototy
namespace Content.Shared.Lathe
{
[NetworkedComponent()]
- public class SharedLatheDatabaseComponent : Component, IEnumerable, ISerializationHooks
+ public abstract class SharedLatheDatabaseComponent : Component, IEnumerable, ISerializationHooks
{
[DataField("recipes", customTypeSerializer: typeof(PrototypeIdListSerializer))] private List _recipeIds = new();
@@ -122,7 +122,7 @@ namespace Content.Shared.Lathe
}
[NetSerializable, Serializable]
- public class LatheDatabaseState : ComponentState
+ public sealed class LatheDatabaseState : ComponentState
{
public readonly List Recipes;
public LatheDatabaseState(List recipes)
diff --git a/Content.Shared/Lathe/SharedMaterialStorageComponent.cs b/Content.Shared/Lathe/SharedMaterialStorageComponent.cs
index 888f42a982..0dc3384169 100644
--- a/Content.Shared/Lathe/SharedMaterialStorageComponent.cs
+++ b/Content.Shared/Lathe/SharedMaterialStorageComponent.cs
@@ -10,7 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Lathe
{
[NetworkedComponent()]
- public class SharedMaterialStorageComponent : Component, IEnumerable>
+ public abstract class SharedMaterialStorageComponent : Component, IEnumerable>
{
[ViewVariables]
protected virtual Dictionary Storage { get; set; } = new();
@@ -66,7 +66,7 @@ namespace Content.Shared.Lathe
}
[NetSerializable, Serializable]
- public class MaterialStorageState : ComponentState
+ public sealed class MaterialStorageState : ComponentState
{
public readonly Dictionary Storage;
public MaterialStorageState(Dictionary storage)
diff --git a/Content.Shared/Lathe/SharedProtolatheDatabaseComponent.cs b/Content.Shared/Lathe/SharedProtolatheDatabaseComponent.cs
index 51253c3503..5b415de972 100644
--- a/Content.Shared/Lathe/SharedProtolatheDatabaseComponent.cs
+++ b/Content.Shared/Lathe/SharedProtolatheDatabaseComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.Lathe
{
[ComponentReference(typeof(SharedLatheDatabaseComponent))]
[NetworkedComponent()]
- public class SharedProtolatheDatabaseComponent : SharedLatheDatabaseComponent, ISerializationHooks
+ public abstract class SharedProtolatheDatabaseComponent : SharedLatheDatabaseComponent, ISerializationHooks
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
@@ -36,7 +36,7 @@ namespace Content.Shared.Lathe
}
[NetSerializable, Serializable]
- public class ProtolatheDatabaseState : ComponentState
+ public sealed class ProtolatheDatabaseState : ComponentState
{
public readonly List Recipes;
public ProtolatheDatabaseState(List recipes)
diff --git a/Content.Shared/Light/Component/RgbLightControllerComponent.cs b/Content.Shared/Light/Component/RgbLightControllerComponent.cs
index f18445243c..770269c1b8 100644
--- a/Content.Shared/Light/Component/RgbLightControllerComponent.cs
+++ b/Content.Shared/Light/Component/RgbLightControllerComponent.cs
@@ -34,7 +34,7 @@ public sealed class RgbLightControllerComponent : Robust.Shared.GameObjects.Comp
}
[Serializable, NetSerializable]
-public class RgbLightControllerState : ComponentState
+public sealed class RgbLightControllerState : ComponentState
{
public readonly float CycleRate;
public readonly List? Layers;
diff --git a/Content.Shared/Light/Component/SharedLightBehaviourComponent.cs b/Content.Shared/Light/Component/SharedLightBehaviourComponent.cs
index 1752bd3730..3d10b73e69 100644
--- a/Content.Shared/Light/Component/SharedLightBehaviourComponent.cs
+++ b/Content.Shared/Light/Component/SharedLightBehaviourComponent.cs
@@ -3,7 +3,7 @@
///
/// A component which applies a specific behaviour to a PointLightComponent on its owner.
///
- public class SharedLightBehaviourComponent : Robust.Shared.GameObjects.Component
+ public abstract class SharedLightBehaviourComponent : Robust.Shared.GameObjects.Component
{
}
}
diff --git a/Content.Shared/MachineLinking/UIMessages.cs b/Content.Shared/MachineLinking/UIMessages.cs
index c5dd63f6d4..074b9cddd0 100644
--- a/Content.Shared/MachineLinking/UIMessages.cs
+++ b/Content.Shared/MachineLinking/UIMessages.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.MachineLinking
{
[Serializable, NetSerializable]
- public class SignalPortsState : BoundUserInterfaceState
+ public sealed class SignalPortsState : BoundUserInterfaceState
{
///
/// A Dictionary containing all ports and wether or not they can be selected.
@@ -25,7 +25,7 @@ namespace Content.Shared.MachineLinking
}
[Serializable, NetSerializable]
- public class SignalPortSelected : BoundUserInterfaceMessage
+ public sealed class SignalPortSelected : BoundUserInterfaceMessage
{
public readonly string Port;
diff --git a/Content.Shared/Markers/SharedSpawnPointComponent.cs b/Content.Shared/Markers/SharedSpawnPointComponent.cs
index 8f9c76167e..2169a69504 100644
--- a/Content.Shared/Markers/SharedSpawnPointComponent.cs
+++ b/Content.Shared/Markers/SharedSpawnPointComponent.cs
@@ -2,6 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Markers
{
+ [Virtual]
public class SharedSpawnPointComponent : Component
{
}
diff --git a/Content.Shared/Materials/MaterialPrototype.cs b/Content.Shared/Materials/MaterialPrototype.cs
index a4b83fd36a..1423021b32 100644
--- a/Content.Shared/Materials/MaterialPrototype.cs
+++ b/Content.Shared/Materials/MaterialPrototype.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.Materials
/// Properties should be intrinsic (or at least as much is necessary for game purposes).
///
[Prototype("material")]
- public class MaterialPrototype : IPrototype, IInheritingPrototype
+ public sealed class MaterialPrototype : IPrototype, IInheritingPrototype
{
[ViewVariables]
[DataField("parent")]
diff --git a/Content.Shared/Medical/CrewMonitoring/CrewMonitoringShared.cs b/Content.Shared/Medical/CrewMonitoring/CrewMonitoringShared.cs
index 53f19f1295..a8893f0a08 100644
--- a/Content.Shared/Medical/CrewMonitoring/CrewMonitoringShared.cs
+++ b/Content.Shared/Medical/CrewMonitoring/CrewMonitoringShared.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Medical.CrewMonitoring
}
[Serializable, NetSerializable]
- public class CrewMonitoringState : BoundUserInterfaceState
+ public sealed class CrewMonitoringState : BoundUserInterfaceState
{
public List Sensors;
diff --git a/Content.Shared/Medical/SuitSensor/SharedSuitSensor.cs b/Content.Shared/Medical/SuitSensor/SharedSuitSensor.cs
index e717c6dad5..982efd9b3b 100644
--- a/Content.Shared/Medical/SuitSensor/SharedSuitSensor.cs
+++ b/Content.Shared/Medical/SuitSensor/SharedSuitSensor.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Medical.SuitSensor
{
[Serializable, NetSerializable]
- public class SuitSensorStatus
+ public sealed class SuitSensorStatus
{
public SuitSensorStatus(string name, string job)
{
diff --git a/Content.Shared/MedicalScanner/SharedMedicalScannerComponent.cs b/Content.Shared/MedicalScanner/SharedMedicalScannerComponent.cs
index 4a0399f6b0..d4a8244c76 100644
--- a/Content.Shared/MedicalScanner/SharedMedicalScannerComponent.cs
+++ b/Content.Shared/MedicalScanner/SharedMedicalScannerComponent.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.MedicalScanner
public abstract class SharedMedicalScannerComponent : Component, IDragDropOn
{
[Serializable, NetSerializable]
- public class MedicalScannerBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class MedicalScannerBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly EntityUid? Entity;
public readonly IReadOnlyDictionary DamagePerGroup;
@@ -67,7 +67,7 @@ namespace Content.Shared.MedicalScanner
}
[Serializable, NetSerializable]
- public class UiButtonPressedMessage : BoundUserInterfaceMessage
+ public sealed class UiButtonPressedMessage : BoundUserInterfaceMessage
{
public readonly UiButton Button;
diff --git a/Content.Shared/MobState/Components/MobStateComponent.cs b/Content.Shared/MobState/Components/MobStateComponent.cs
index bfd8be67f9..a49f84c70b 100644
--- a/Content.Shared/MobState/Components/MobStateComponent.cs
+++ b/Content.Shared/MobState/Components/MobStateComponent.cs
@@ -24,7 +24,7 @@ namespace Content.Shared.MobState.Components
///
[RegisterComponent]
[NetworkedComponent]
- public class MobStateComponent : Component
+ public sealed class MobStateComponent : Component
{
[Dependency] private readonly IEntityManager _entMan = default!;
@@ -318,7 +318,7 @@ namespace Content.Shared.MobState.Components
}
[Serializable, NetSerializable]
- public class MobStateComponentState : ComponentState
+ public sealed class MobStateComponentState : ComponentState
{
public readonly FixedPoint2? CurrentThreshold;
diff --git a/Content.Shared/MobState/EntitySystems/MobStateSystem.cs b/Content.Shared/MobState/EntitySystems/MobStateSystem.cs
index 9467cc6535..9ed89c7f1f 100644
--- a/Content.Shared/MobState/EntitySystems/MobStateSystem.cs
+++ b/Content.Shared/MobState/EntitySystems/MobStateSystem.cs
@@ -15,7 +15,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.MobState.EntitySystems
{
- public class MobStateSystem : EntitySystem
+ public sealed class MobStateSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/MobState/MobStateChangedEvent.cs b/Content.Shared/MobState/MobStateChangedEvent.cs
index 8fcb40b1fc..75a60bd7d2 100644
--- a/Content.Shared/MobState/MobStateChangedEvent.cs
+++ b/Content.Shared/MobState/MobStateChangedEvent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.MobState
{
- public class MobStateChangedEvent : EntityEventArgs
+ public sealed class MobStateChangedEvent : EntityEventArgs
{
public MobStateChangedEvent(
MobStateComponent component,
diff --git a/Content.Shared/Movement/Components/SharedDummyInputMoverComponent.cs b/Content.Shared/Movement/Components/SharedDummyInputMoverComponent.cs
index 1615efcbda..47a7705c64 100644
--- a/Content.Shared/Movement/Components/SharedDummyInputMoverComponent.cs
+++ b/Content.Shared/Movement/Components/SharedDummyInputMoverComponent.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Movement.Components
{
[RegisterComponent]
[ComponentReference(typeof(IMoverComponent))]
- public class SharedDummyInputMoverComponent : Component, IMoverComponent
+ public sealed class SharedDummyInputMoverComponent : Component, IMoverComponent
{
public bool IgnorePaused => false;
public float CurrentWalkSpeed => 0f;
diff --git a/Content.Shared/Movement/Components/SharedPlayerInputMoverComponent.cs b/Content.Shared/Movement/Components/SharedPlayerInputMoverComponent.cs
index 5791e4389e..d24bc816d2 100644
--- a/Content.Shared/Movement/Components/SharedPlayerInputMoverComponent.cs
+++ b/Content.Shared/Movement/Components/SharedPlayerInputMoverComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Movement.Components
[RegisterComponent]
[ComponentReference(typeof(IMoverComponent))]
[NetworkedComponent()]
- public class SharedPlayerInputMoverComponent : Component, IMoverComponent
+ public sealed class SharedPlayerInputMoverComponent : Component, IMoverComponent
{
// This class has to be able to handle server TPS being lower than client FPS.
// While still having perfectly responsive movement client side.
diff --git a/Content.Shared/Movement/Components/SharedPlayerMobMoverComponent.cs b/Content.Shared/Movement/Components/SharedPlayerMobMoverComponent.cs
index 076dd3c9c0..71e9d1d338 100644
--- a/Content.Shared/Movement/Components/SharedPlayerMobMoverComponent.cs
+++ b/Content.Shared/Movement/Components/SharedPlayerMobMoverComponent.cs
@@ -17,7 +17,7 @@ namespace Content.Shared.Movement.Components
[RegisterComponent]
[ComponentReference(typeof(IMobMoverComponent))]
[NetworkedComponent()]
- public class SharedPlayerMobMoverComponent : Component, IMobMoverComponent
+ public sealed class SharedPlayerMobMoverComponent : Component, IMobMoverComponent
{
private float _stepSoundDistance;
[DataField("grabRange")]
diff --git a/Content.Shared/Movement/Components/SlowContactsComponent.cs b/Content.Shared/Movement/Components/SlowContactsComponent.cs
index 6cdcc84d90..791559c96c 100644
--- a/Content.Shared/Movement/Components/SlowContactsComponent.cs
+++ b/Content.Shared/Movement/Components/SlowContactsComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Movement.Components;
[NetworkedComponent, RegisterComponent]
-public class SlowContactsComponent : Component
+public sealed class SlowContactsComponent : Component
{
[ViewVariables, DataField("walkSpeedModifier")]
public float WalkSpeedModifier { get; private set; } = 1.0f;
diff --git a/Content.Shared/Movement/Components/SlowsOnContactComponent.cs b/Content.Shared/Movement/Components/SlowsOnContactComponent.cs
index 1aa3589e7f..d11962ebb3 100644
--- a/Content.Shared/Movement/Components/SlowsOnContactComponent.cs
+++ b/Content.Shared/Movement/Components/SlowsOnContactComponent.cs
@@ -7,6 +7,6 @@ namespace Content.Shared.Movement.Components;
/// Exists just to listen to a single event. What a life.
///
[NetworkedComponent, RegisterComponent]
-public class SlowsOnContactComponent : Component
+public sealed class SlowsOnContactComponent : Component
{
}
diff --git a/Content.Shared/Movement/EntitySystems/MovementSpeedModifierSystem.cs b/Content.Shared/Movement/EntitySystems/MovementSpeedModifierSystem.cs
index 88993c4aa6..07bd37cb8d 100644
--- a/Content.Shared/Movement/EntitySystems/MovementSpeedModifierSystem.cs
+++ b/Content.Shared/Movement/EntitySystems/MovementSpeedModifierSystem.cs
@@ -85,7 +85,7 @@ namespace Content.Shared.Movement.EntitySystems
/// should hook into this event and set it then. If you want this event to be raised,
/// call .
///
- public class RefreshMovementSpeedModifiersEvent : EntityEventArgs, IInventoryRelayEvent
+ public sealed class RefreshMovementSpeedModifiersEvent : EntityEventArgs, IInventoryRelayEvent
{
public SlotFlags TargetSlots { get; } = ~SlotFlags.POCKET;
diff --git a/Content.Shared/Movement/EntitySystems/SlowContactsSystem.cs b/Content.Shared/Movement/EntitySystems/SlowContactsSystem.cs
index 667f91b67e..5601e4ec66 100644
--- a/Content.Shared/Movement/EntitySystems/SlowContactsSystem.cs
+++ b/Content.Shared/Movement/EntitySystems/SlowContactsSystem.cs
@@ -8,7 +8,7 @@ using Robust.Shared.Physics.Dynamics;
namespace Content.Shared.Movement.EntitySystems;
-public class SlowContactsSystem : EntitySystem
+public sealed class SlowContactsSystem : EntitySystem
{
[Dependency] private readonly SharedPhysicsSystem _physics = default!;
[Dependency] private readonly MovementSpeedModifierSystem _speedModifierSystem = default!;
diff --git a/Content.Shared/Movement/MovementAttemptEvent.cs b/Content.Shared/Movement/MovementAttemptEvent.cs
index 0d8bd98afd..7a398793fa 100644
--- a/Content.Shared/Movement/MovementAttemptEvent.cs
+++ b/Content.Shared/Movement/MovementAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Movement
{
- public class MovementAttemptEvent : CancellableEntityEventArgs
+ public sealed class MovementAttemptEvent : CancellableEntityEventArgs
{
public MovementAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Nuke/SharedNuke.cs b/Content.Shared/Nuke/SharedNuke.cs
index a440aaeeb9..6c0309bede 100644
--- a/Content.Shared/Nuke/SharedNuke.cs
+++ b/Content.Shared/Nuke/SharedNuke.cs
@@ -19,7 +19,7 @@ namespace Content.Shared.Nuke
}
[Serializable, NetSerializable]
- public class NukeUiState : BoundUserInterfaceState
+ public sealed class NukeUiState : BoundUserInterfaceState
{
public bool DiskInserted;
public NukeStatus Status;
diff --git a/Content.Shared/Nutrition/Components/CreamPieComponent.cs b/Content.Shared/Nutrition/Components/CreamPieComponent.cs
index ed97a4c355..29b421acea 100644
--- a/Content.Shared/Nutrition/Components/CreamPieComponent.cs
+++ b/Content.Shared/Nutrition/Components/CreamPieComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Nutrition.Components
{
[Friend(typeof(SharedCreamPieSystem))]
[RegisterComponent]
- public class CreamPieComponent : Component
+ public sealed class CreamPieComponent : Component
{
[ViewVariables]
[DataField("paralyzeTime")]
diff --git a/Content.Shared/Nutrition/Components/CreamPiedComponent.cs b/Content.Shared/Nutrition/Components/CreamPiedComponent.cs
index aec35c8afc..51fa1e2dd2 100644
--- a/Content.Shared/Nutrition/Components/CreamPiedComponent.cs
+++ b/Content.Shared/Nutrition/Components/CreamPiedComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Nutrition.Components
{
[Friend(typeof(SharedCreamPieSystem))]
[RegisterComponent]
- public class CreamPiedComponent : Component
+ public sealed class CreamPiedComponent : Component
{
[ViewVariables]
public bool CreamPied { get; set; } = false;
diff --git a/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs b/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs
index 8c33ed6b76..aeb8706613 100644
--- a/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs
+++ b/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Nutrition.Components
/// Indicates that the entity can be thrown on a kitchen spike for butchering.
///
[RegisterComponent]
- public class SharedButcherableComponent : Component, IDraggable
+ public sealed class SharedButcherableComponent : Component, IDraggable
{
//TODO: List for sub-products like animal-hides, organs and etc?
[ViewVariables]
diff --git a/Content.Shared/Nutrition/EntitySystems/SharedHungerSystem.cs b/Content.Shared/Nutrition/EntitySystems/SharedHungerSystem.cs
index 0bb7897661..4843fdabbf 100644
--- a/Content.Shared/Nutrition/EntitySystems/SharedHungerSystem.cs
+++ b/Content.Shared/Nutrition/EntitySystems/SharedHungerSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Nutrition.EntitySystems
{
- public class SharedHungerSystem : EntitySystem
+ public sealed class SharedHungerSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Nutrition/EntitySystems/SharedThirstSystem.cs b/Content.Shared/Nutrition/EntitySystems/SharedThirstSystem.cs
index 311867b2f1..36a0106e90 100644
--- a/Content.Shared/Nutrition/EntitySystems/SharedThirstSystem.cs
+++ b/Content.Shared/Nutrition/EntitySystems/SharedThirstSystem.cs
@@ -4,7 +4,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Nutrition.EntitySystems
{
- public class SharedThirstSystem : EntitySystem
+ public sealed class SharedThirstSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Objectives/ConditionInfo.cs b/Content.Shared/Objectives/ConditionInfo.cs
index de0e7f934b..e86f41df4d 100644
--- a/Content.Shared/Objectives/ConditionInfo.cs
+++ b/Content.Shared/Objectives/ConditionInfo.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Objectives
{
[Serializable, NetSerializable]
- public class ConditionInfo
+ public sealed class ConditionInfo
{
public string Title { get; }
public string Description { get; }
diff --git a/Content.Shared/PAI/PAIComponent.cs b/Content.Shared/PAI/PAIComponent.cs
index 0e6c1d74b7..eb86912f59 100644
--- a/Content.Shared/PAI/PAIComponent.cs
+++ b/Content.Shared/PAI/PAIComponent.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.PAI
/// All logic in PAISystem.
///
[RegisterComponent, NetworkedComponent]
- public class PAIComponent : Component
+ public sealed class PAIComponent : Component
{
}
}
diff --git a/Content.Shared/PDA/PDAComponent.cs b/Content.Shared/PDA/PDAComponent.cs
index ddc0ec058e..5920ea33dd 100644
--- a/Content.Shared/PDA/PDAComponent.cs
+++ b/Content.Shared/PDA/PDAComponent.cs
@@ -9,7 +9,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.PDA
{
[RegisterComponent]
- public class PDAComponent : Component
+ public sealed class PDAComponent : Component
{
[DataField("idSlot")]
public ItemSlot IdSlot = new();
diff --git a/Content.Shared/PDA/UplinkStoreListingPrototype.cs b/Content.Shared/PDA/UplinkStoreListingPrototype.cs
index b03a1855be..28cac2d8f0 100644
--- a/Content.Shared/PDA/UplinkStoreListingPrototype.cs
+++ b/Content.Shared/PDA/UplinkStoreListingPrototype.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.PDA
{
[Prototype("uplinkListing")]
- public class UplinkStoreListingPrototype : IPrototype
+ public sealed class UplinkStoreListingPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Paper/SharedPaperComponent.cs b/Content.Shared/Paper/SharedPaperComponent.cs
index b2a4c472d8..ff529e43b2 100644
--- a/Content.Shared/Paper/SharedPaperComponent.cs
+++ b/Content.Shared/Paper/SharedPaperComponent.cs
@@ -4,10 +4,11 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Paper
{
+ [Virtual]
public class SharedPaperComponent : Component
{
[Serializable, NetSerializable]
- public class PaperBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class PaperBoundUserInterfaceState : BoundUserInterfaceState
{
public readonly string Text;
public readonly PaperAction Mode;
@@ -20,7 +21,7 @@ namespace Content.Shared.Paper
}
[Serializable, NetSerializable]
- public class PaperActionMessage : BoundUserInterfaceMessage
+ public sealed class PaperActionMessage : BoundUserInterfaceMessage
{
public readonly PaperAction Action;
public PaperActionMessage(PaperAction action)
@@ -30,7 +31,7 @@ namespace Content.Shared.Paper
}
[Serializable, NetSerializable]
- public class PaperInputText : BoundUserInterfaceMessage
+ public sealed class PaperInputText : BoundUserInterfaceMessage
{
public readonly string Text;
diff --git a/Content.Shared/Pinpointer/PinpointerComponent.cs b/Content.Shared/Pinpointer/PinpointerComponent.cs
index 129013c923..5250943bc6 100644
--- a/Content.Shared/Pinpointer/PinpointerComponent.cs
+++ b/Content.Shared/Pinpointer/PinpointerComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Pinpointer
[RegisterComponent]
[NetworkedComponent]
[Friend(typeof(SharedPinpointerSystem))]
- public class PinpointerComponent : Component
+ public sealed class PinpointerComponent : Component
{
[DataField("whitelist")]
public EntityWhitelist? Whitelist;
diff --git a/Content.Shared/Placeable/PlaceableSurfaceComponent.cs b/Content.Shared/Placeable/PlaceableSurfaceComponent.cs
index 701d5884f3..0f56a346e0 100644
--- a/Content.Shared/Placeable/PlaceableSurfaceComponent.cs
+++ b/Content.Shared/Placeable/PlaceableSurfaceComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Placeable
{
[RegisterComponent, NetworkedComponent]
[Friend(typeof(PlaceableSurfaceSystem))]
- public class PlaceableSurfaceComponent : Component
+ public sealed class PlaceableSurfaceComponent : Component
{
[ViewVariables]
[DataField("isPlaceable")]
@@ -33,7 +33,7 @@ namespace Content.Shared.Placeable
}
[Serializable, NetSerializable]
- public class PlaceableSurfaceComponentState : ComponentState
+ public sealed class PlaceableSurfaceComponentState : ComponentState
{
public readonly bool IsPlaceable;
public readonly bool PlaceCentered;
diff --git a/Content.Shared/Placeable/PlaceableSurfaceSystem.cs b/Content.Shared/Placeable/PlaceableSurfaceSystem.cs
index 36127e59d8..dd00d01e01 100644
--- a/Content.Shared/Placeable/PlaceableSurfaceSystem.cs
+++ b/Content.Shared/Placeable/PlaceableSurfaceSystem.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Maths;
namespace Content.Shared.Placeable
{
- public class PlaceableSurfaceSystem : EntitySystem
+ public sealed class PlaceableSurfaceSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Pointing/Components/SharedRoguePointingArrowComponent.cs b/Content.Shared/Pointing/Components/SharedRoguePointingArrowComponent.cs
index 906a5a4e57..35e21135b0 100644
--- a/Content.Shared/Pointing/Components/SharedRoguePointingArrowComponent.cs
+++ b/Content.Shared/Pointing/Components/SharedRoguePointingArrowComponent.cs
@@ -4,7 +4,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Pointing.Components
{
- public class SharedRoguePointingArrowComponent : Component
+ public abstract class SharedRoguePointingArrowComponent : Component
{
}
diff --git a/Content.Shared/Popups/SharedPopupSystem.cs b/Content.Shared/Popups/SharedPopupSystem.cs
index 019600fc1c..b31e0dea66 100644
--- a/Content.Shared/Popups/SharedPopupSystem.cs
+++ b/Content.Shared/Popups/SharedPopupSystem.cs
@@ -53,7 +53,7 @@ namespace Content.Shared.Popups
/// Network event for displaying a popup on the user's cursor.
///
[Serializable, NetSerializable]
- public class PopupCursorEvent : PopupEvent
+ public sealed class PopupCursorEvent : PopupEvent
{
public PopupCursorEvent(string message) : base(message)
{
@@ -64,7 +64,7 @@ namespace Content.Shared.Popups
/// Network event for displaying a popup at a world location.
///
[Serializable, NetSerializable]
- public class PopupCoordinatesEvent : PopupEvent
+ public sealed class PopupCoordinatesEvent : PopupEvent
{
public EntityCoordinates Coordinates { get; }
@@ -78,7 +78,7 @@ namespace Content.Shared.Popups
/// Network event for displaying a popup above an entity.
///
[Serializable, NetSerializable]
- public class PopupEntityEvent : PopupEvent
+ public sealed class PopupEntityEvent : PopupEvent
{
public EntityUid Uid { get; }
diff --git a/Content.Shared/PowerCell/Components/PowerCellSlotComponent.cs b/Content.Shared/PowerCell/Components/PowerCellSlotComponent.cs
index 1a7789fcb1..01da510c50 100644
--- a/Content.Shared/PowerCell/Components/PowerCellSlotComponent.cs
+++ b/Content.Shared/PowerCell/Components/PowerCellSlotComponent.cs
@@ -65,7 +65,7 @@ public sealed class PowerCellSlotComponent : Component
///
/// Raised directed at an entity with a power cell slot when the power cell inside has its charge updated or is ejected/inserted.
///
-public class PowerCellChangedEvent : EntityEventArgs
+public sealed class PowerCellChangedEvent : EntityEventArgs
{
public readonly bool Ejected;
diff --git a/Content.Shared/Preferences/HumanoidCharacterProfile.cs b/Content.Shared/Preferences/HumanoidCharacterProfile.cs
index b4415c51b0..a961cc6455 100644
--- a/Content.Shared/Preferences/HumanoidCharacterProfile.cs
+++ b/Content.Shared/Preferences/HumanoidCharacterProfile.cs
@@ -23,7 +23,7 @@ namespace Content.Shared.Preferences
/// Character profile. Looks immutable, but uses non-immutable semantics internally for serialization/code sanity purposes.
///
[Serializable, NetSerializable]
- public class HumanoidCharacterProfile : ICharacterProfile
+ public sealed class HumanoidCharacterProfile : ICharacterProfile
{
public const int MinimumAge = 18;
public const int MaximumAge = 120;
diff --git a/Content.Shared/Preferences/MsgDeleteCharacter.cs b/Content.Shared/Preferences/MsgDeleteCharacter.cs
index 0378551918..3b97a8b054 100644
--- a/Content.Shared/Preferences/MsgDeleteCharacter.cs
+++ b/Content.Shared/Preferences/MsgDeleteCharacter.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Preferences
///
/// The client sends this to delete a character profile.
///
- public class MsgDeleteCharacter : NetMessage
+ public sealed class MsgDeleteCharacter : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/Preferences/MsgPreferencesAndSettings.cs b/Content.Shared/Preferences/MsgPreferencesAndSettings.cs
index 85d6041c5b..72859dcc56 100644
--- a/Content.Shared/Preferences/MsgPreferencesAndSettings.cs
+++ b/Content.Shared/Preferences/MsgPreferencesAndSettings.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Preferences
///
/// The server sends this before the client joins the lobby.
///
- public class MsgPreferencesAndSettings : NetMessage
+ public sealed class MsgPreferencesAndSettings : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/Preferences/MsgSelectCharacter.cs b/Content.Shared/Preferences/MsgSelectCharacter.cs
index 423666c185..9dbbb62167 100644
--- a/Content.Shared/Preferences/MsgSelectCharacter.cs
+++ b/Content.Shared/Preferences/MsgSelectCharacter.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Preferences
///
/// The client sends this to select a character slot.
///
- public class MsgSelectCharacter : NetMessage
+ public sealed class MsgSelectCharacter : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/Preferences/MsgUpdateCharacter.cs b/Content.Shared/Preferences/MsgUpdateCharacter.cs
index bc44c860ca..d98de44260 100644
--- a/Content.Shared/Preferences/MsgUpdateCharacter.cs
+++ b/Content.Shared/Preferences/MsgUpdateCharacter.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Preferences
///
/// The client sends this to update a character profile.
///
- public class MsgUpdateCharacter : NetMessage
+ public sealed class MsgUpdateCharacter : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/Projectiles/SharedProjectileComponent.cs b/Content.Shared/Projectiles/SharedProjectileComponent.cs
index 2555d95aae..bb784f253c 100644
--- a/Content.Shared/Projectiles/SharedProjectileComponent.cs
+++ b/Content.Shared/Projectiles/SharedProjectileComponent.cs
@@ -24,7 +24,7 @@ namespace Content.Shared.Projectiles
}
[NetSerializable, Serializable]
- protected class ProjectileComponentState : ComponentState
+ protected sealed class ProjectileComponentState : ComponentState
{
public ProjectileComponentState(EntityUid shooter, bool ignoreShooter)
{
diff --git a/Content.Shared/Pulling/Components/PullableComponent.cs b/Content.Shared/Pulling/Components/PullableComponent.cs
index 7afa3ad121..aac141dade 100644
--- a/Content.Shared/Pulling/Components/PullableComponent.cs
+++ b/Content.Shared/Pulling/Components/PullableComponent.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Pulling.Components
[NetworkedComponent()]
[Friend(typeof(SharedPullingStateManagementSystem))]
[RegisterComponent]
- public class SharedPullableComponent : Component
+ public sealed class SharedPullableComponent : Component
{
public float? MaxDistance => PullJoint?.MaxLength;
@@ -88,7 +88,7 @@ namespace Content.Shared.Pulling.Components
}
[Serializable, NetSerializable]
- public class PullableComponentState : ComponentState
+ public sealed class PullableComponentState : ComponentState
{
public readonly EntityUid? Puller;
diff --git a/Content.Shared/Pulling/Components/SharedPullerComponent.cs b/Content.Shared/Pulling/Components/SharedPullerComponent.cs
index 0cfa9df14c..4e3976168b 100644
--- a/Content.Shared/Pulling/Components/SharedPullerComponent.cs
+++ b/Content.Shared/Pulling/Components/SharedPullerComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Pulling.Components
{
[RegisterComponent]
[Friend(typeof(SharedPullingStateManagementSystem))]
- public class SharedPullerComponent : Component
+ public sealed class SharedPullerComponent : Component
{
// Before changing how this is updated, please see SharedPullerSystem.RefreshMovementSpeed
public float WalkSpeedModifier => Pulling == default ? 1.0f : 0.75f;
diff --git a/Content.Shared/Pulling/Events/PullAttemptMessage.cs b/Content.Shared/Pulling/Events/PullAttemptMessage.cs
index 85617f5f27..f6c8b43377 100644
--- a/Content.Shared/Pulling/Events/PullAttemptMessage.cs
+++ b/Content.Shared/Pulling/Events/PullAttemptMessage.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Physics.Pull
{
- public class PullAttemptMessage : PullMessage
+ public sealed class PullAttemptMessage : PullMessage
{
public PullAttemptMessage(IPhysBody puller, IPhysBody pulled) : base(puller, pulled) { }
diff --git a/Content.Shared/Pulling/Events/PullMessage.cs b/Content.Shared/Pulling/Events/PullMessage.cs
index 4376720a03..77564aa075 100644
--- a/Content.Shared/Pulling/Events/PullMessage.cs
+++ b/Content.Shared/Pulling/Events/PullMessage.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Physics;
namespace Content.Shared.Physics.Pull
{
- public class PullMessage : EntityEventArgs
+ public abstract class PullMessage : EntityEventArgs
{
public readonly IPhysBody Puller;
public readonly IPhysBody Pulled;
diff --git a/Content.Shared/Pulling/Events/PullStartedMessage.cs b/Content.Shared/Pulling/Events/PullStartedMessage.cs
index d4364c36fd..30c7891eeb 100644
--- a/Content.Shared/Pulling/Events/PullStartedMessage.cs
+++ b/Content.Shared/Pulling/Events/PullStartedMessage.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Physics.Pull
{
- public class PullStartedMessage : PullMessage
+ public sealed class PullStartedMessage : PullMessage
{
public PullStartedMessage(IPhysBody puller, IPhysBody pulled) :
base(puller, pulled)
diff --git a/Content.Shared/Pulling/Events/PullStoppedMessage.cs b/Content.Shared/Pulling/Events/PullStoppedMessage.cs
index 177c1b4f4f..d77873b7c1 100644
--- a/Content.Shared/Pulling/Events/PullStoppedMessage.cs
+++ b/Content.Shared/Pulling/Events/PullStoppedMessage.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Physics.Pull
{
- public class PullStoppedMessage : PullMessage
+ public sealed class PullStoppedMessage : PullMessage
{
public PullStoppedMessage(IPhysBody puller, IPhysBody pulled) : base(puller, pulled)
{
diff --git a/Content.Shared/Pulling/Events/StartPullAttemptEvent.cs b/Content.Shared/Pulling/Events/StartPullAttemptEvent.cs
index d8f2665319..7d670c4a72 100644
--- a/Content.Shared/Pulling/Events/StartPullAttemptEvent.cs
+++ b/Content.Shared/Pulling/Events/StartPullAttemptEvent.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Pulling.Events
///
/// Directed event raised on the puller to see if it can start pulling something.
///
- public class StartPullAttemptEvent : CancellableEntityEventArgs
+ public sealed class StartPullAttemptEvent : CancellableEntityEventArgs
{
public StartPullAttemptEvent(EntityUid puller, EntityUid pulled)
{
diff --git a/Content.Shared/Pulling/PullableMoveMessage.cs b/Content.Shared/Pulling/PullableMoveMessage.cs
index fb37dee134..ae05d6cabd 100644
--- a/Content.Shared/Pulling/PullableMoveMessage.cs
+++ b/Content.Shared/Pulling/PullableMoveMessage.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Pulling
{
- public class PullableMoveMessage : EntityEventArgs
+ public sealed class PullableMoveMessage : EntityEventArgs
{
}
}
diff --git a/Content.Shared/Pulling/PullableStopMovingMessage.cs b/Content.Shared/Pulling/PullableStopMovingMessage.cs
index 77b9465140..7ad111fe18 100644
--- a/Content.Shared/Pulling/PullableStopMovingMessage.cs
+++ b/Content.Shared/Pulling/PullableStopMovingMessage.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Pulling
{
- public class PullableStopMovingMessage : EntityEventArgs
+ public sealed class PullableStopMovingMessage : EntityEventArgs
{
}
}
diff --git a/Content.Shared/Pulling/Systems/SharedPullableSystem.cs b/Content.Shared/Pulling/Systems/SharedPullableSystem.cs
index 7d928c0a7c..e53943431b 100644
--- a/Content.Shared/Pulling/Systems/SharedPullableSystem.cs
+++ b/Content.Shared/Pulling/Systems/SharedPullableSystem.cs
@@ -6,7 +6,7 @@ using Robust.Shared.IoC;
namespace Content.Shared.Pulling.Systems
{
- public class SharedPullableSystem : EntitySystem
+ public sealed class SharedPullableSystem : EntitySystem
{
[Dependency] private readonly ActionBlockerSystem _blocker = default!;
[Dependency] private readonly SharedPullingSystem _pullSystem = default!;
diff --git a/Content.Shared/Pulling/Systems/SharedPullingStateManagementSystem.cs b/Content.Shared/Pulling/Systems/SharedPullingStateManagementSystem.cs
index 4ee4303662..95f9d7a8cb 100644
--- a/Content.Shared/Pulling/Systems/SharedPullingStateManagementSystem.cs
+++ b/Content.Shared/Pulling/Systems/SharedPullingStateManagementSystem.cs
@@ -27,7 +27,7 @@ namespace Content.Shared.Pulling
/// Because pulling state is such a mess to get right, all writes to pulling state must go through this class.
///
[UsedImplicitly]
- public class SharedPullingStateManagementSystem : EntitySystem
+ public sealed class SharedPullingStateManagementSystem : EntitySystem
{
[Dependency] private readonly SharedJointSystem _jointSystem = default!;
[Dependency] private readonly SharedPhysicsSystem _physics = default!;
diff --git a/Content.Shared/Radiation/SharedRadiationStorm.cs b/Content.Shared/Radiation/SharedRadiationStorm.cs
index 430395e167..eedd39b160 100644
--- a/Content.Shared/Radiation/SharedRadiationStorm.cs
+++ b/Content.Shared/Radiation/SharedRadiationStorm.cs
@@ -28,7 +28,7 @@ namespace Content.Shared.Radiation
/// For syncing the pulse's lifespan between client and server for the overlay
///
[Serializable, NetSerializable]
- public class RadiationPulseState : ComponentState
+ public sealed class RadiationPulseState : ComponentState
{
// not networking RadsPerSecond because damage is only ever dealt by server-side systems.
diff --git a/Content.Shared/Research/Components/SharedResearchClientComponent.cs b/Content.Shared/Research/Components/SharedResearchClientComponent.cs
index 0489655f42..52fc64a69d 100644
--- a/Content.Shared/Research/Components/SharedResearchClientComponent.cs
+++ b/Content.Shared/Research/Components/SharedResearchClientComponent.cs
@@ -4,13 +4,14 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Research.Components
{
+ [Virtual]
public class SharedResearchClientComponent : Component
{
///
/// Request that the server updates the client.
///
[Serializable, NetSerializable]
- public class ResearchClientSyncMessage : BoundUserInterfaceMessage
+ public sealed class ResearchClientSyncMessage : BoundUserInterfaceMessage
{
public ResearchClientSyncMessage()
@@ -22,7 +23,7 @@ namespace Content.Shared.Research.Components
/// Sent to the server when the client chooses a research server.
///
[Serializable, NetSerializable]
- public class ResearchClientServerSelectedMessage : BoundUserInterfaceMessage
+ public sealed class ResearchClientServerSelectedMessage : BoundUserInterfaceMessage
{
public int ServerId;
@@ -36,7 +37,7 @@ namespace Content.Shared.Research.Components
/// Sent to the server when the client deselects a research server.
///
[Serializable, NetSerializable]
- public class ResearchClientServerDeselectedMessage : BoundUserInterfaceMessage
+ public sealed class ResearchClientServerDeselectedMessage : BoundUserInterfaceMessage
{
public ResearchClientServerDeselectedMessage()
{
diff --git a/Content.Shared/Research/Components/SharedResearchConsoleComponent.cs b/Content.Shared/Research/Components/SharedResearchConsoleComponent.cs
index e2a327e840..42f1d1fdad 100644
--- a/Content.Shared/Research/Components/SharedResearchConsoleComponent.cs
+++ b/Content.Shared/Research/Components/SharedResearchConsoleComponent.cs
@@ -6,6 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Research.Components
{
[NetworkedComponent()]
+ [Virtual]
public class SharedResearchConsoleComponent : Component
{
@@ -16,7 +17,7 @@ namespace Content.Shared.Research.Components
}
[Serializable, NetSerializable]
- public class ConsoleUnlockTechnologyMessage : BoundUserInterfaceMessage
+ public sealed class ConsoleUnlockTechnologyMessage : BoundUserInterfaceMessage
{
public string Id;
@@ -27,14 +28,14 @@ namespace Content.Shared.Research.Components
}
[Serializable, NetSerializable]
- public class ConsoleServerSyncMessage : BoundUserInterfaceMessage
+ public sealed class ConsoleServerSyncMessage : BoundUserInterfaceMessage
{
public ConsoleServerSyncMessage()
{}
}
[Serializable, NetSerializable]
- public class ConsoleServerSelectionMessage : BoundUserInterfaceMessage
+ public sealed class ConsoleServerSelectionMessage : BoundUserInterfaceMessage
{
public ConsoleServerSelectionMessage()
{}
diff --git a/Content.Shared/Research/Components/SharedTechnologyDatabaseComponent.cs b/Content.Shared/Research/Components/SharedTechnologyDatabaseComponent.cs
index 1a67321a8e..73b6edbdc8 100644
--- a/Content.Shared/Research/Components/SharedTechnologyDatabaseComponent.cs
+++ b/Content.Shared/Research/Components/SharedTechnologyDatabaseComponent.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.Research.Components
{
[NetworkedComponent()]
- public class SharedTechnologyDatabaseComponent : Component, IEnumerable, ISerializationHooks
+ public abstract class SharedTechnologyDatabaseComponent : Component, IEnumerable, ISerializationHooks
{
[DataField("technologies")] private List _technologyIds = new();
@@ -108,7 +108,7 @@ namespace Content.Shared.Research.Components
}
[Serializable, NetSerializable]
- public class TechnologyDatabaseState : ComponentState
+ public sealed class TechnologyDatabaseState : ComponentState
{
public List Technologies;
public TechnologyDatabaseState(List technologies)
diff --git a/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs b/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
index 6ec7652072..229eb94ac9 100644
--- a/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
+++ b/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
@@ -13,7 +13,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Research.Prototypes
{
[NetSerializable, Serializable, Prototype("latheRecipe")]
- public class LatheRecipePrototype : IPrototype
+ public sealed class LatheRecipePrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Research/Prototypes/TechnologyPrototype.cs b/Content.Shared/Research/Prototypes/TechnologyPrototype.cs
index a7b029af03..9714ca07f0 100644
--- a/Content.Shared/Research/Prototypes/TechnologyPrototype.cs
+++ b/Content.Shared/Research/Prototypes/TechnologyPrototype.cs
@@ -10,7 +10,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Research.Prototypes
{
[NetSerializable, Serializable, Prototype("technology")]
- public class TechnologyPrototype : IPrototype
+ public sealed class TechnologyPrototype : IPrototype
{
///
/// The ID of this technology prototype.
diff --git a/Content.Shared/Roles/AntagPrototype.cs b/Content.Shared/Roles/AntagPrototype.cs
index 3f03f22377..a365d7b3e7 100644
--- a/Content.Shared/Roles/AntagPrototype.cs
+++ b/Content.Shared/Roles/AntagPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Roles
/// Describes information for a single antag.
///
[Prototype("antag")]
- public class AntagPrototype : IPrototype
+ public sealed class AntagPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Roles/JobPrototype.cs b/Content.Shared/Roles/JobPrototype.cs
index b60d7a7337..0c338c8600 100644
--- a/Content.Shared/Roles/JobPrototype.cs
+++ b/Content.Shared/Roles/JobPrototype.cs
@@ -13,7 +13,7 @@ namespace Content.Shared.Roles
/// Describes information for a single job on the station.
///
[Prototype("job")]
- public class JobPrototype : IPrototype
+ public sealed class JobPrototype : IPrototype
{
private string _name = string.Empty;
diff --git a/Content.Shared/Roles/StartingGearPrototype.cs b/Content.Shared/Roles/StartingGearPrototype.cs
index 42631fbda7..ac21006c31 100644
--- a/Content.Shared/Roles/StartingGearPrototype.cs
+++ b/Content.Shared/Roles/StartingGearPrototype.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Roles
{
[Prototype("startingGear")]
- public class StartingGearPrototype : IPrototype
+ public sealed class StartingGearPrototype : IPrototype
{
// TODO: Custom TypeSerializer for dictionary value prototype IDs
[DataField("equipment")] private Dictionary _equipment = new();
diff --git a/Content.Shared/Rotatable/RotatableComponent.cs b/Content.Shared/Rotatable/RotatableComponent.cs
index 524cfaf512..225119d1f0 100644
--- a/Content.Shared/Rotatable/RotatableComponent.cs
+++ b/Content.Shared/Rotatable/RotatableComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Maths;
namespace Content.Shared.Rotatable
{
[RegisterComponent]
- public class RotatableComponent : Component
+ public sealed class RotatableComponent : Component
{
///
/// If true, this entity can be rotated even while anchored.
diff --git a/Content.Shared/Singularity/Components/SharedParticleAcceleratorComponent.cs b/Content.Shared/Singularity/Components/SharedParticleAcceleratorComponent.cs
index 24884fce7b..c18649a0b7 100644
--- a/Content.Shared/Singularity/Components/SharedParticleAcceleratorComponent.cs
+++ b/Content.Shared/Singularity/Components/SharedParticleAcceleratorComponent.cs
@@ -49,7 +49,7 @@ namespace Content.Shared.Singularity.Components
}
[NetSerializable, Serializable]
- public class ParticleAcceleratorUIState : BoundUserInterfaceState
+ public sealed class ParticleAcceleratorUIState : BoundUserInterfaceState
{
public bool Assembled;
public bool Enabled;
@@ -89,7 +89,7 @@ namespace Content.Shared.Singularity.Components
}
[NetSerializable, Serializable]
- public class ParticleAcceleratorSetEnableMessage : BoundUserInterfaceMessage
+ public sealed class ParticleAcceleratorSetEnableMessage : BoundUserInterfaceMessage
{
public readonly bool Enabled;
public ParticleAcceleratorSetEnableMessage(bool enabled)
@@ -99,7 +99,7 @@ namespace Content.Shared.Singularity.Components
}
[NetSerializable, Serializable]
- public class ParticleAcceleratorRescanPartsMessage : BoundUserInterfaceMessage
+ public sealed class ParticleAcceleratorRescanPartsMessage : BoundUserInterfaceMessage
{
public ParticleAcceleratorRescanPartsMessage()
{
@@ -107,7 +107,7 @@ namespace Content.Shared.Singularity.Components
}
[NetSerializable, Serializable]
- public class ParticleAcceleratorSetPowerStateMessage : BoundUserInterfaceMessage
+ public sealed class ParticleAcceleratorSetPowerStateMessage : BoundUserInterfaceMessage
{
public readonly ParticleAcceleratorPowerState State;
diff --git a/Content.Shared/Singularity/Components/SingularityDistortionComponent.cs b/Content.Shared/Singularity/Components/SingularityDistortionComponent.cs
index 3915504c8b..f9dc1aa523 100644
--- a/Content.Shared/Singularity/Components/SingularityDistortionComponent.cs
+++ b/Content.Shared/Singularity/Components/SingularityDistortionComponent.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Singularity.Components
{
[RegisterComponent]
[NetworkedComponent]
- public class SingularityDistortionComponent : Component
+ public sealed class SingularityDistortionComponent : Component
{
[DataField("intensity")]
private float _intensity = 0.25f;
@@ -52,7 +52,7 @@ namespace Content.Shared.Singularity.Components
}
[Serializable, NetSerializable]
- public class SingularityDistortionComponentState : ComponentState
+ public sealed class SingularityDistortionComponentState : ComponentState
{
public SingularityDistortionComponentState(float intensity, float falloff)
{
diff --git a/Content.Shared/Slippery/NoSlipComponent.cs b/Content.Shared/Slippery/NoSlipComponent.cs
index 20a6f01d1d..a4bfb7152a 100644
--- a/Content.Shared/Slippery/NoSlipComponent.cs
+++ b/Content.Shared/Slippery/NoSlipComponent.cs
@@ -3,7 +3,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Slippery
{
[RegisterComponent]
- public class NoSlipComponent : Component
+ public sealed class NoSlipComponent : Component
{
}
}
diff --git a/Content.Shared/Slippery/SharedSlipperySystem.cs b/Content.Shared/Slippery/SharedSlipperySystem.cs
index 7a3204c848..a443eea497 100644
--- a/Content.Shared/Slippery/SharedSlipperySystem.cs
+++ b/Content.Shared/Slippery/SharedSlipperySystem.cs
@@ -159,7 +159,7 @@ namespace Content.Shared.Slippery
///
/// Raised on an entity to determine if it can slip or not.
///
- public class SlipAttemptEvent : CancellableEntityEventArgs, IInventoryRelayEvent
+ public sealed class SlipAttemptEvent : CancellableEntityEventArgs, IInventoryRelayEvent
{
public SlotFlags TargetSlots { get; } = SlotFlags.FEET;
}
diff --git a/Content.Shared/Slippery/SlipperyComponent.cs b/Content.Shared/Slippery/SlipperyComponent.cs
index 56f4aea6f7..f62c9a24be 100644
--- a/Content.Shared/Slippery/SlipperyComponent.cs
+++ b/Content.Shared/Slippery/SlipperyComponent.cs
@@ -161,7 +161,7 @@ namespace Content.Shared.Slippery
}
[Serializable, NetSerializable]
- public class SlipperyComponentState : ComponentState
+ public sealed class SlipperyComponentState : ComponentState
{
public float ParalyzeTime { get; }
public float IntersectPercentage { get; }
diff --git a/Content.Shared/Solar/SharedSolarControlConsoleComponent.cs b/Content.Shared/Solar/SharedSolarControlConsoleComponent.cs
index 9154efd066..6a174051b3 100644
--- a/Content.Shared/Solar/SharedSolarControlConsoleComponent.cs
+++ b/Content.Shared/Solar/SharedSolarControlConsoleComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Solar
{
[Serializable, NetSerializable]
- public class SolarControlConsoleBoundInterfaceState : BoundUserInterfaceState
+ public sealed class SolarControlConsoleBoundInterfaceState : BoundUserInterfaceState
{
///
/// The target rotation of the panels in radians.
diff --git a/Content.Shared/Sound/SoundSpecifierTypeSerializer.cs b/Content.Shared/Sound/SoundSpecifierTypeSerializer.cs
index 52c81c537c..8497b76a44 100644
--- a/Content.Shared/Sound/SoundSpecifierTypeSerializer.cs
+++ b/Content.Shared/Sound/SoundSpecifierTypeSerializer.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Sound
{
[TypeSerializer]
- public class SoundSpecifierTypeSerializer :
+ public sealed class SoundSpecifierTypeSerializer :
ITypeReader,
ITypeReader
{
diff --git a/Content.Shared/Species/SpeciesManager.cs b/Content.Shared/Species/SpeciesManager.cs
index 496b7a29b2..f00de87a71 100644
--- a/Content.Shared/Species/SpeciesManager.cs
+++ b/Content.Shared/Species/SpeciesManager.cs
@@ -1,6 +1,6 @@
namespace Content.Shared.Species;
-public class SpeciesManager
+public sealed class SpeciesManager
{
public const string DefaultSpecies = "Human";
}
diff --git a/Content.Shared/Species/SpeciesPrototype.cs b/Content.Shared/Species/SpeciesPrototype.cs
index a1b2fbe56b..22e43d78d6 100644
--- a/Content.Shared/Species/SpeciesPrototype.cs
+++ b/Content.Shared/Species/SpeciesPrototype.cs
@@ -5,7 +5,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Species;
[Prototype("species")]
-public class SpeciesPrototype : IPrototype
+public sealed class SpeciesPrototype : IPrototype
{
///
/// Prototype ID of the species.
diff --git a/Content.Shared/Speech/SharedSpeechComponent.cs b/Content.Shared/Speech/SharedSpeechComponent.cs
index 17eaf3315c..d42e922562 100644
--- a/Content.Shared/Speech/SharedSpeechComponent.cs
+++ b/Content.Shared/Speech/SharedSpeechComponent.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Speech
/// Component required for entities to be able to speak.
///
[RegisterComponent]
- public class SharedSpeechComponent : Component
+ public sealed class SharedSpeechComponent : Component
{
[DataField("enabled")]
private bool _enabled = true;
diff --git a/Content.Shared/Speech/SpeakAttemptEvent.cs b/Content.Shared/Speech/SpeakAttemptEvent.cs
index b710a2ec6e..078abcc372 100644
--- a/Content.Shared/Speech/SpeakAttemptEvent.cs
+++ b/Content.Shared/Speech/SpeakAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Speech
{
- public class SpeakAttemptEvent : CancellableEntityEventArgs
+ public sealed class SpeakAttemptEvent : CancellableEntityEventArgs
{
public SpeakAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Speech/SpeechSystem.cs b/Content.Shared/Speech/SpeechSystem.cs
index 680959e562..9d22073597 100644
--- a/Content.Shared/Speech/SpeechSystem.cs
+++ b/Content.Shared/Speech/SpeechSystem.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Speech
{
- public class SpeechSystem : EntitySystem
+ public sealed class SpeechSystem : EntitySystem
{
public override void Initialize()
{
diff --git a/Content.Shared/Stacks/SharedStackSystem.cs b/Content.Shared/Stacks/SharedStackSystem.cs
index a1c6a55e13..0daf9a2eb6 100644
--- a/Content.Shared/Stacks/SharedStackSystem.cs
+++ b/Content.Shared/Stacks/SharedStackSystem.cs
@@ -123,7 +123,7 @@ namespace Content.Shared.Stacks
///
/// Event raised when a stack's count has changed.
///
- public class StackCountChangedEvent : EntityEventArgs
+ public sealed class StackCountChangedEvent : EntityEventArgs
{
///
/// The old stack count.
diff --git a/Content.Shared/Stacks/StackPrototype.cs b/Content.Shared/Stacks/StackPrototype.cs
index 567b24d5d5..d54d745605 100644
--- a/Content.Shared/Stacks/StackPrototype.cs
+++ b/Content.Shared/Stacks/StackPrototype.cs
@@ -7,7 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.Stacks
{
[Prototype("stack")]
- public class StackPrototype : IPrototype
+ public sealed class StackPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/StationEvents/MsgRequestStationEvents.cs b/Content.Shared/StationEvents/MsgRequestStationEvents.cs
index aeb8c5d9ca..09345c692e 100644
--- a/Content.Shared/StationEvents/MsgRequestStationEvents.cs
+++ b/Content.Shared/StationEvents/MsgRequestStationEvents.cs
@@ -3,7 +3,7 @@ using Robust.Shared.Network;
namespace Content.Shared.StationEvents
{
- public class MsgRequestStationEvents : NetMessage
+ public sealed class MsgRequestStationEvents : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/StationEvents/MsgStationEvents.cs b/Content.Shared/StationEvents/MsgStationEvents.cs
index b03e6db7f7..f6739f071e 100644
--- a/Content.Shared/StationEvents/MsgStationEvents.cs
+++ b/Content.Shared/StationEvents/MsgStationEvents.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.StationEvents
{
- public class MsgStationEvents : NetMessage
+ public sealed class MsgStationEvents : NetMessage
{
public override MsgGroups MsgGroup => MsgGroups.Command;
diff --git a/Content.Shared/StatusEffect/StatusEffectPrototype.cs b/Content.Shared/StatusEffect/StatusEffectPrototype.cs
index 075a2b4fff..6b3e3846c9 100644
--- a/Content.Shared/StatusEffect/StatusEffectPrototype.cs
+++ b/Content.Shared/StatusEffect/StatusEffectPrototype.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization.Manager.Attributes;
namespace Content.Shared.StatusEffect
{
[Prototype("statusEffect")]
- public class StatusEffectPrototype : IPrototype
+ public sealed class StatusEffectPrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/StatusEffect/StatusEffectsComponent.cs b/Content.Shared/StatusEffect/StatusEffectsComponent.cs
index a90ab27472..8dd3ef7813 100644
--- a/Content.Shared/StatusEffect/StatusEffectsComponent.cs
+++ b/Content.Shared/StatusEffect/StatusEffectsComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.StatusEffect
[RegisterComponent]
[NetworkedComponent]
[Friend(typeof(StatusEffectsSystem))]
- public class StatusEffectsComponent : Component
+ public sealed class StatusEffectsComponent : Component
{
[ViewVariables]
public Dictionary ActiveEffects = new();
@@ -28,7 +28,7 @@ namespace Content.Shared.StatusEffect
/// Holds information about an active status effect.
///
[Serializable, NetSerializable]
- public class StatusEffectState
+ public sealed class StatusEffectState
{
///
/// The start and end times of the status effect.
@@ -59,7 +59,7 @@ namespace Content.Shared.StatusEffect
}
[Serializable, NetSerializable]
- public class StatusEffectsComponentState : ComponentState
+ public sealed class StatusEffectsComponentState : ComponentState
{
public Dictionary ActiveEffects;
public List AllowedEffects;
diff --git a/Content.Shared/Storage/Components/ItemCounterComponent.cs b/Content.Shared/Storage/Components/ItemCounterComponent.cs
index 5296dcf266..a56bfea063 100644
--- a/Content.Shared/Storage/Components/ItemCounterComponent.cs
+++ b/Content.Shared/Storage/Components/ItemCounterComponent.cs
@@ -20,7 +20,7 @@ namespace Content.Shared.Storage.Components
///
[RegisterComponent]
[Friend(typeof(SharedItemCounterSystem))]
- public class ItemCounterComponent : Component
+ public sealed class ItemCounterComponent : Component
{
[DataField("count", required: true)]
public EntityWhitelist Count { get; set; } = default!;
diff --git a/Content.Shared/Storage/Components/ItemMapperComponent.cs b/Content.Shared/Storage/Components/ItemMapperComponent.cs
index eb9e1812c3..c3a21ffc2a 100644
--- a/Content.Shared/Storage/Components/ItemMapperComponent.cs
+++ b/Content.Shared/Storage/Components/ItemMapperComponent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Storage.Components
{
[RegisterComponent]
[Friend(typeof(SharedItemMapperSystem))]
- public class ItemMapperComponent : Component, ISerializationHooks
+ public sealed class ItemMapperComponent : Component, ISerializationHooks
{
[DataField("mapLayers")] public readonly Dictionary MapLayers = new();
diff --git a/Content.Shared/Storage/Components/SharedMapLayerData.cs b/Content.Shared/Storage/Components/SharedMapLayerData.cs
index 5f9f82f8d8..7ce1be7541 100644
--- a/Content.Shared/Storage/Components/SharedMapLayerData.cs
+++ b/Content.Shared/Storage/Components/SharedMapLayerData.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Storage.Components
[Serializable]
[DataDefinition]
- public class SharedMapLayerData
+ public sealed class SharedMapLayerData
{
public string Layer = string.Empty;
@@ -24,7 +24,7 @@ namespace Content.Shared.Storage.Components
}
[Serializable, NetSerializable]
- public class ShowLayerData : ICloneable
+ public sealed class ShowLayerData : ICloneable
{
public IReadOnlyList QueuedEntities { get; internal set; }
diff --git a/Content.Shared/Storage/SharedStorageComponent.cs b/Content.Shared/Storage/SharedStorageComponent.cs
index f9f5c4a4fe..dbc6f93fc3 100644
--- a/Content.Shared/Storage/SharedStorageComponent.cs
+++ b/Content.Shared/Storage/SharedStorageComponent.cs
@@ -60,7 +60,7 @@ namespace Content.Shared.Storage
}
[Serializable, NetSerializable]
- public class StorageComponentState : ComponentState
+ public sealed class StorageComponentState : ComponentState
{
public readonly EntityUid[] StoredEntities;
@@ -75,7 +75,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class StorageHeldItemsMessage : ComponentMessage
+ public sealed class StorageHeldItemsMessage : ComponentMessage
#pragma warning restore 618
{
public readonly int StorageSizeMax;
@@ -96,7 +96,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class InsertEntityMessage : ComponentMessage
+ public sealed class InsertEntityMessage : ComponentMessage
#pragma warning restore 618
{
public InsertEntityMessage()
@@ -110,7 +110,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class AnimateInsertingEntitiesMessage : ComponentMessage
+ public sealed class AnimateInsertingEntitiesMessage : ComponentMessage
#pragma warning restore 618
{
public readonly List StoredEntities;
@@ -128,7 +128,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class RemoveEntityMessage : ComponentMessage
+ public sealed class RemoveEntityMessage : ComponentMessage
#pragma warning restore 618
{
public EntityUid EntityUid;
@@ -145,7 +145,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class OpenStorageUIMessage : ComponentMessage
+ public sealed class OpenStorageUIMessage : ComponentMessage
#pragma warning restore 618
{
public OpenStorageUIMessage()
@@ -160,7 +160,7 @@ namespace Content.Shared.Storage
///
[Serializable, NetSerializable]
#pragma warning disable 618
- public class CloseStorageUIMessage : ComponentMessage
+ public sealed class CloseStorageUIMessage : ComponentMessage
#pragma warning restore 618
{
public CloseStorageUIMessage()
diff --git a/Content.Shared/Strip/Components/SharedStrippableComponent.cs b/Content.Shared/Strip/Components/SharedStrippableComponent.cs
index 1546e69885..43521309ea 100644
--- a/Content.Shared/Strip/Components/SharedStrippableComponent.cs
+++ b/Content.Shared/Strip/Components/SharedStrippableComponent.cs
@@ -35,7 +35,7 @@ namespace Content.Shared.Strip.Components
}
[NetSerializable, Serializable]
- public class StrippingInventoryButtonPressed : BoundUserInterfaceMessage
+ public sealed class StrippingInventoryButtonPressed : BoundUserInterfaceMessage
{
public string Slot { get; }
@@ -46,7 +46,7 @@ namespace Content.Shared.Strip.Components
}
[NetSerializable, Serializable]
- public class StrippingHandButtonPressed : BoundUserInterfaceMessage
+ public sealed class StrippingHandButtonPressed : BoundUserInterfaceMessage
{
public string Hand { get; }
@@ -57,7 +57,7 @@ namespace Content.Shared.Strip.Components
}
[NetSerializable, Serializable]
- public class StrippingHandcuffButtonPressed : BoundUserInterfaceMessage
+ public sealed class StrippingHandcuffButtonPressed : BoundUserInterfaceMessage
{
public EntityUid Handcuff { get; }
@@ -68,7 +68,7 @@ namespace Content.Shared.Strip.Components
}
[NetSerializable, Serializable]
- public class StrippingBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class StrippingBoundUserInterfaceState : BoundUserInterfaceState
{
public Dictionary<(string ID, string Name), string> Inventory { get; }
public Dictionary Hands { get; }
diff --git a/Content.Shared/Strip/Components/SharedStrippingComponent.cs b/Content.Shared/Strip/Components/SharedStrippingComponent.cs
index 731257169f..33ea82fb64 100644
--- a/Content.Shared/Strip/Components/SharedStrippingComponent.cs
+++ b/Content.Shared/Strip/Components/SharedStrippingComponent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Strip.Components
/// Give to an entity to say they can strip another entity.
///
[RegisterComponent]
- public class SharedStrippingComponent : Component, IDragDropOn
+ public sealed class SharedStrippingComponent : Component, IDragDropOn
{
bool IDragDropOn.CanDragDropOn(DragDropEvent eventArgs)
{
diff --git a/Content.Shared/Stunnable/KnockedDownComponent.cs b/Content.Shared/Stunnable/KnockedDownComponent.cs
index 6972d542af..a3f0526203 100644
--- a/Content.Shared/Stunnable/KnockedDownComponent.cs
+++ b/Content.Shared/Stunnable/KnockedDownComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Stunnable
[RegisterComponent]
[NetworkedComponent]
[Friend(typeof(SharedStunSystem))]
- public class KnockedDownComponent : Component
+ public sealed class KnockedDownComponent : Component
{
[DataField("helpInterval")]
public float HelpInterval { get; set; } = 1f;
@@ -25,7 +25,7 @@ namespace Content.Shared.Stunnable
}
[Serializable, NetSerializable]
- public class KnockedDownComponentState : ComponentState
+ public sealed class KnockedDownComponentState : ComponentState
{
public float HelpInterval { get; set; }
public float HelpTimer { get; set; }
diff --git a/Content.Shared/Stunnable/SlowedDownComponent.cs b/Content.Shared/Stunnable/SlowedDownComponent.cs
index ca32b8ffb3..68fd3d176b 100644
--- a/Content.Shared/Stunnable/SlowedDownComponent.cs
+++ b/Content.Shared/Stunnable/SlowedDownComponent.cs
@@ -10,14 +10,14 @@ namespace Content.Shared.Stunnable
[RegisterComponent]
[NetworkedComponent]
[Friend(typeof(SharedStunSystem))]
- public class SlowedDownComponent : Component
+ public sealed class SlowedDownComponent : Component
{
public float SprintSpeedModifier { get; set; } = 0.5f;
public float WalkSpeedModifier { get; set; } = 0.5f;
}
[Serializable, NetSerializable]
- public class SlowedDownComponentState : ComponentState
+ public sealed class SlowedDownComponentState : ComponentState
{
public float SprintSpeedModifier { get; set; }
public float WalkSpeedModifier { get; set; }
diff --git a/Content.Shared/Suspicion/SharedSuspicionRoleComponent.cs b/Content.Shared/Suspicion/SharedSuspicionRoleComponent.cs
index 79fcb0cf36..e3018c19e6 100644
--- a/Content.Shared/Suspicion/SharedSuspicionRoleComponent.cs
+++ b/Content.Shared/Suspicion/SharedSuspicionRoleComponent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Suspicion
}
[Serializable, NetSerializable]
- public class SuspicionRoleComponentState : ComponentState
+ public sealed class SuspicionRoleComponentState : ComponentState
{
public readonly string? Role;
public readonly bool? Antagonist;
diff --git a/Content.Shared/Tabletop/Events/TabletopMoveEvent.cs b/Content.Shared/Tabletop/Events/TabletopMoveEvent.cs
index c1b20ca1c1..6230e12326 100644
--- a/Content.Shared/Tabletop/Events/TabletopMoveEvent.cs
+++ b/Content.Shared/Tabletop/Events/TabletopMoveEvent.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Tabletop.Events
/// has been moved.
///
[Serializable, NetSerializable]
- public class TabletopMoveEvent : EntityEventArgs
+ public sealed class TabletopMoveEvent : EntityEventArgs
{
///
/// The UID of the entity being moved.
diff --git a/Content.Shared/Tabletop/Events/TabletopPlayEvent.cs b/Content.Shared/Tabletop/Events/TabletopPlayEvent.cs
index 7c5ee899c9..513750b9c6 100644
--- a/Content.Shared/Tabletop/Events/TabletopPlayEvent.cs
+++ b/Content.Shared/Tabletop/Events/TabletopPlayEvent.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Tabletop.Events
/// An event sent by the server to the client to tell the client to open a tabletop game window.
///
[Serializable, NetSerializable]
- public class TabletopPlayEvent : EntityEventArgs
+ public sealed class TabletopPlayEvent : EntityEventArgs
{
public EntityUid TableUid;
public EntityUid CameraUid;
diff --git a/Content.Shared/Tabletop/Events/TabletopStopPlayingEvent.cs b/Content.Shared/Tabletop/Events/TabletopStopPlayingEvent.cs
index 6b03c1c27e..565ee1380a 100644
--- a/Content.Shared/Tabletop/Events/TabletopStopPlayingEvent.cs
+++ b/Content.Shared/Tabletop/Events/TabletopStopPlayingEvent.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Tabletop.Events
/// An event ot tell the server that we have stopped playing this tabletop game.
///
[Serializable, NetSerializable]
- public class TabletopStopPlayingEvent : EntityEventArgs
+ public sealed class TabletopStopPlayingEvent : EntityEventArgs
{
///
/// The entity UID of the table associated with this tabletop game.
diff --git a/Content.Shared/Tag/TagComponentState.cs b/Content.Shared/Tag/TagComponentState.cs
index bd19aae427..1ecce9fee2 100644
--- a/Content.Shared/Tag/TagComponentState.cs
+++ b/Content.Shared/Tag/TagComponentState.cs
@@ -5,7 +5,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Tag
{
[Serializable, NetSerializable]
- public class TagComponentState : ComponentState
+ public sealed class TagComponentState : ComponentState
{
public TagComponentState(string[] tags)
{
diff --git a/Content.Shared/Tag/TagPrototype.cs b/Content.Shared/Tag/TagPrototype.cs
index 7ce6b1f03a..6cca137b27 100644
--- a/Content.Shared/Tag/TagPrototype.cs
+++ b/Content.Shared/Tag/TagPrototype.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Tag
/// gets saved in TagComponent.
///
[Prototype("Tag")]
- public class TagPrototype : IPrototype
+ public sealed class TagPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Temperature/IsHotEvent.cs b/Content.Shared/Temperature/IsHotEvent.cs
index a70965a159..e68a6f2268 100644
--- a/Content.Shared/Temperature/IsHotEvent.cs
+++ b/Content.Shared/Temperature/IsHotEvent.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Temperature
/// Directed event raised on entities to query whether they're "hot" or not.
/// For example, a lit welder or matchstick would be hot, etc.
///
- public class IsHotEvent : EntityEventArgs
+ public sealed class IsHotEvent : EntityEventArgs
{
public bool IsHot { get; set; } = false;
}
diff --git a/Content.Shared/Throwing/IThrown.cs b/Content.Shared/Throwing/IThrown.cs
index f0e474ac86..c25f7da07f 100644
--- a/Content.Shared/Throwing/IThrown.cs
+++ b/Content.Shared/Throwing/IThrown.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Throwing
/// Raised when throwing the entity in your hands.
///
[PublicAPI]
- public class ThrownEvent : HandledEntityEventArgs
+ public sealed class ThrownEvent : HandledEntityEventArgs
{
///
/// Entity that threw the item.
diff --git a/Content.Shared/Throwing/ThrowAttemptEvent.cs b/Content.Shared/Throwing/ThrowAttemptEvent.cs
index 9c23647c69..044ada0ebe 100644
--- a/Content.Shared/Throwing/ThrowAttemptEvent.cs
+++ b/Content.Shared/Throwing/ThrowAttemptEvent.cs
@@ -2,7 +2,7 @@
namespace Content.Shared.Throwing
{
- public class ThrowAttemptEvent : CancellableEntityEventArgs
+ public sealed class ThrowAttemptEvent : CancellableEntityEventArgs
{
public ThrowAttemptEvent(EntityUid uid)
{
diff --git a/Content.Shared/Throwing/ThrowEvents.cs b/Content.Shared/Throwing/ThrowEvents.cs
index 1142eceb07..34a3145e95 100644
--- a/Content.Shared/Throwing/ThrowEvents.cs
+++ b/Content.Shared/Throwing/ThrowEvents.cs
@@ -36,7 +36,7 @@ namespace Content.Shared.Throwing
///
/// Raised directed on the target entity being hit by the thrown entity.
///
- public class ThrowHitByEvent : ThrowEvent
+ public sealed class ThrowHitByEvent : ThrowEvent
{
public ThrowHitByEvent(EntityUid? user, EntityUid thrown, EntityUid target) : base(user, thrown, target)
{
@@ -46,7 +46,7 @@ namespace Content.Shared.Throwing
///
/// Raised directed on the thrown entity that hits another.
///
- public class ThrowDoHitEvent : ThrowEvent
+ public sealed class ThrowDoHitEvent : ThrowEvent
{
public ThrowDoHitEvent(EntityUid? user, EntityUid thrown, EntityUid target) : base(user, thrown, target)
{
diff --git a/Content.Shared/Throwing/ThrownItemComponent.cs b/Content.Shared/Throwing/ThrownItemComponent.cs
index 59c39b553f..6895e22404 100644
--- a/Content.Shared/Throwing/ThrownItemComponent.cs
+++ b/Content.Shared/Throwing/ThrownItemComponent.cs
@@ -6,13 +6,13 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Throwing
{
[RegisterComponent, NetworkedComponent]
- public class ThrownItemComponent : Component
+ public sealed class ThrownItemComponent : Component
{
public EntityUid? Thrower { get; set; }
}
[Serializable, NetSerializable]
- public class ThrownItemComponentState : ComponentState
+ public sealed class ThrownItemComponentState : ComponentState
{
public EntityUid? Thrower { get; }
diff --git a/Content.Shared/Tools/Components/SharedMultipleToolComponent.cs b/Content.Shared/Tools/Components/SharedMultipleToolComponent.cs
index 4c33d9a2a8..597d6f1e3c 100644
--- a/Content.Shared/Tools/Components/SharedMultipleToolComponent.cs
+++ b/Content.Shared/Tools/Components/SharedMultipleToolComponent.cs
@@ -6,12 +6,12 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Tools.Components
{
[NetworkedComponent]
- public class SharedMultipleToolComponent : Component
+ public abstract class SharedMultipleToolComponent : Component
{
}
[NetSerializable, Serializable]
- public class MultipleToolComponentState : ComponentState
+ public sealed class MultipleToolComponentState : ComponentState
{
public string QualityName { get; }
diff --git a/Content.Shared/Tools/Components/SharedWelderComponent.cs b/Content.Shared/Tools/Components/SharedWelderComponent.cs
index 2aaada2825..e1460bae82 100644
--- a/Content.Shared/Tools/Components/SharedWelderComponent.cs
+++ b/Content.Shared/Tools/Components/SharedWelderComponent.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Tools.Components
}
[NetSerializable, Serializable]
- public class WelderComponentState : ComponentState
+ public sealed class WelderComponentState : ComponentState
{
public float FuelCapacity { get; }
public float Fuel { get; }
diff --git a/Content.Shared/Tools/ToolQualityPrototype.cs b/Content.Shared/Tools/ToolQualityPrototype.cs
index d54e36ce35..9b3db28362 100644
--- a/Content.Shared/Tools/ToolQualityPrototype.cs
+++ b/Content.Shared/Tools/ToolQualityPrototype.cs
@@ -7,7 +7,7 @@ using Robust.Shared.Utility;
namespace Content.Shared.Tools
{
[Prototype("tool")]
- public class ToolQualityPrototype : IPrototype
+ public sealed class ToolQualityPrototype : IPrototype
{
[DataField("id", required: true)]
public string ID { get; } = default!;
diff --git a/Content.Shared/Traitor/Uplink/UplinkAccount.cs b/Content.Shared/Traitor/Uplink/UplinkAccount.cs
index 5d37820d38..ec2684c6b9 100644
--- a/Content.Shared/Traitor/Uplink/UplinkAccount.cs
+++ b/Content.Shared/Traitor/Uplink/UplinkAccount.cs
@@ -2,7 +2,7 @@ using Robust.Shared.GameObjects;
namespace Content.Shared.Traitor.Uplink
{
- public class UplinkAccount
+ public sealed class UplinkAccount
{
public readonly EntityUid? AccountHolder;
public int Balance;
diff --git a/Content.Shared/Traitor/Uplink/UplinkAccountData.cs b/Content.Shared/Traitor/Uplink/UplinkAccountData.cs
index 534fbb1002..dcbc548572 100644
--- a/Content.Shared/Traitor/Uplink/UplinkAccountData.cs
+++ b/Content.Shared/Traitor/Uplink/UplinkAccountData.cs
@@ -5,7 +5,7 @@ using System;
namespace Content.Shared.Traitor.Uplink
{
[Serializable, NetSerializable]
- public class UplinkAccountData
+ public sealed class UplinkAccountData
{
public EntityUid? DataAccountHolder;
public int DataBalance;
diff --git a/Content.Shared/Traitor/Uplink/UplinkListingData.cs b/Content.Shared/Traitor/Uplink/UplinkListingData.cs
index e1037a52da..3ac74eeff5 100644
--- a/Content.Shared/Traitor/Uplink/UplinkListingData.cs
+++ b/Content.Shared/Traitor/Uplink/UplinkListingData.cs
@@ -7,7 +7,7 @@ using System;
namespace Content.Shared.Traitor.Uplink
{
[Serializable, NetSerializable]
- public class UplinkListingData : ComponentState, IEquatable
+ public sealed class UplinkListingData : ComponentState, IEquatable
{
public readonly string ItemId;
public readonly int Price;
diff --git a/Content.Shared/Traitor/Uplink/UplinkUpdateState.cs b/Content.Shared/Traitor/Uplink/UplinkUpdateState.cs
index 496d4e1d9c..a89a0a5bb5 100644
--- a/Content.Shared/Traitor/Uplink/UplinkUpdateState.cs
+++ b/Content.Shared/Traitor/Uplink/UplinkUpdateState.cs
@@ -5,7 +5,7 @@ using System;
namespace Content.Shared.Traitor.Uplink
{
[Serializable, NetSerializable]
- public class UplinkUpdateState : BoundUserInterfaceState
+ public sealed class UplinkUpdateState : BoundUserInterfaceState
{
public UplinkAccountData Account;
public UplinkListingData[] Listings;
diff --git a/Content.Shared/Vapor/SharedVaporComponent.cs b/Content.Shared/Vapor/SharedVaporComponent.cs
index 8d0160ff34..8ea575ed7f 100644
--- a/Content.Shared/Vapor/SharedVaporComponent.cs
+++ b/Content.Shared/Vapor/SharedVaporComponent.cs
@@ -4,6 +4,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Vapor
{
+ [Virtual]
public class SharedVaporComponent : Component
{
public const string SolutionName = "vapor";
diff --git a/Content.Shared/VendingMachines/SharedVendingMachineComponent.cs b/Content.Shared/VendingMachines/SharedVendingMachineComponent.cs
index 220ccf0f8b..6633736f3d 100644
--- a/Content.Shared/VendingMachines/SharedVendingMachineComponent.cs
+++ b/Content.Shared/VendingMachines/SharedVendingMachineComponent.cs
@@ -7,6 +7,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.VendingMachines
{
+ [Virtual]
[NetworkedComponent()]
public class SharedVendingMachineComponent : Component
{
@@ -30,7 +31,7 @@ namespace Content.Shared.VendingMachines
}
[Serializable, NetSerializable]
- public class VendingMachineEjectMessage : BoundUserInterfaceMessage
+ public sealed class VendingMachineEjectMessage : BoundUserInterfaceMessage
{
public readonly string ID;
public VendingMachineEjectMessage(string id)
@@ -46,12 +47,12 @@ namespace Content.Shared.VendingMachines
}
[Serializable, NetSerializable]
- public class InventorySyncRequestMessage : BoundUserInterfaceMessage
+ public sealed class InventorySyncRequestMessage : BoundUserInterfaceMessage
{
}
[Serializable, NetSerializable]
- public class VendingMachineInventoryMessage : BoundUserInterfaceMessage
+ public sealed class VendingMachineInventoryMessage : BoundUserInterfaceMessage
{
public readonly List Inventory;
public VendingMachineInventoryMessage(List inventory)
@@ -61,7 +62,7 @@ namespace Content.Shared.VendingMachines
}
[Serializable, NetSerializable]
- public class VendingMachineInventoryEntry
+ public sealed class VendingMachineInventoryEntry
{
[ViewVariables(VVAccess.ReadWrite)]
public string ID;
diff --git a/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs b/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs
index 663aea5490..9b2d5e7514 100644
--- a/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs
+++ b/Content.Shared/VendingMachines/VendingMachineInventoryPrototype.cs
@@ -8,7 +8,7 @@ using Robust.Shared.ViewVariables;
namespace Content.Shared.VendingMachines
{
[Serializable, NetSerializable, Prototype("vendingMachineInventory")]
- public class VendingMachineInventoryPrototype : IPrototype
+ public sealed class VendingMachineInventoryPrototype : IPrototype
{
[ViewVariables]
[DataField("id", required: true)]
diff --git a/Content.Shared/Verbs/Verb.cs b/Content.Shared/Verbs/Verb.cs
index ce21a4bc1f..f718022073 100644
--- a/Content.Shared/Verbs/Verb.cs
+++ b/Content.Shared/Verbs/Verb.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Verbs
/// events, or networked events. Verbs also provide text, icons, and categories for displaying in the
/// context-menu.
///
- [Serializable, NetSerializable]
+ [Serializable, NetSerializable, Virtual]
public class Verb : IComparable
{
public static string DefaultTextStyleClass = "Verb";
diff --git a/Content.Shared/Verbs/VerbCategory.cs b/Content.Shared/Verbs/VerbCategory.cs
index 07417a4894..96b0c1027e 100644
--- a/Content.Shared/Verbs/VerbCategory.cs
+++ b/Content.Shared/Verbs/VerbCategory.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Verbs
/// Contains combined name and icon information for a verb category.
///
[Serializable, NetSerializable]
- public class VerbCategory
+ public sealed class VerbCategory
{
public readonly string Text;
diff --git a/Content.Shared/Weapons/Melee/AttackEvent.cs b/Content.Shared/Weapons/Melee/AttackEvent.cs
index 2772aeb239..7331fb0056 100644
--- a/Content.Shared/Weapons/Melee/AttackEvent.cs
+++ b/Content.Shared/Weapons/Melee/AttackEvent.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Weapons.Melee
///
/// Raised directed on the used entity when a target entity is click attacked by a user.
///
- public class ClickAttackEvent : HandledEntityEventArgs
+ public sealed class ClickAttackEvent : HandledEntityEventArgs
{
///
/// Entity used to attack, for broadcast purposes.
@@ -41,7 +41,7 @@ namespace Content.Shared.Weapons.Melee
///
/// Raised directed on the used entity when a target entity is wide attacked by a user.
///
- public class WideAttackEvent : HandledEntityEventArgs
+ public sealed class WideAttackEvent : HandledEntityEventArgs
{
///
/// Entity used to attack, for broadcast purposes.
@@ -69,7 +69,7 @@ namespace Content.Shared.Weapons.Melee
///
/// Event raised on entities that have been attacked.
///
- public class AttackedEvent : EntityEventArgs
+ public sealed class AttackedEvent : EntityEventArgs
{
///
/// Entity used to attack, for broadcast purposes.
diff --git a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedBoltActionBarrelComponent.cs b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedBoltActionBarrelComponent.cs
index 0f21330a70..1fc9272274 100644
--- a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedBoltActionBarrelComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedBoltActionBarrelComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Weapons.Ranged.Barrels.Components
{
[Serializable, NetSerializable]
- public class BoltActionBarrelComponentState : ComponentState
+ public sealed class BoltActionBarrelComponentState : ComponentState
{
public (bool chambered, bool spent) Chamber { get; }
public FireRateSelector FireRateSelector { get; }
diff --git a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedMagazineBarrelComponent.cs b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedMagazineBarrelComponent.cs
index 246e2fea37..aaeb58678f 100644
--- a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedMagazineBarrelComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedMagazineBarrelComponent.cs
@@ -26,7 +26,7 @@ namespace Content.Shared.Weapons.Ranged.Barrels.Components
}
[Serializable, NetSerializable]
- public class MagazineBarrelComponentState : ComponentState
+ public sealed class MagazineBarrelComponentState : ComponentState
{
public bool Chambered { get; }
public FireRateSelector FireRateSelector { get; }
diff --git a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedPumpBarrelComponent.cs b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedPumpBarrelComponent.cs
index 24b8564006..35353f4326 100644
--- a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedPumpBarrelComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedPumpBarrelComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Weapons.Ranged.Barrels.Components
{
[Serializable, NetSerializable]
- public class PumpBarrelComponentState : ComponentState
+ public sealed class PumpBarrelComponentState : ComponentState
{
public (bool chambered, bool spent) Chamber { get; }
public FireRateSelector FireRateSelector { get; }
diff --git a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedRevolverBarrelComponent.cs b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedRevolverBarrelComponent.cs
index 0e4e3dcfb2..17cb18216b 100644
--- a/Content.Shared/Weapons/Ranged/Barrels/Components/SharedRevolverBarrelComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Barrels/Components/SharedRevolverBarrelComponent.cs
@@ -6,7 +6,7 @@ using Robust.Shared.Serialization;
namespace Content.Shared.Weapons.Ranged.Barrels.Components
{
[Serializable, NetSerializable]
- public class RevolverBarrelComponentState : ComponentState
+ public sealed class RevolverBarrelComponentState : ComponentState
{
public int CurrentSlot { get; }
public FireRateSelector FireRateSelector { get; }
diff --git a/Content.Shared/Whitelist/EntityWhitelist.cs b/Content.Shared/Whitelist/EntityWhitelist.cs
index da68546f53..96bd3080e2 100644
--- a/Content.Shared/Whitelist/EntityWhitelist.cs
+++ b/Content.Shared/Whitelist/EntityWhitelist.cs
@@ -25,7 +25,7 @@ namespace Content.Shared.Whitelist
/// - AsteroidRock
///
[DataDefinition]
- public class EntityWhitelist : ISerializationHooks
+ public sealed class EntityWhitelist : ISerializationHooks
{
///
/// Component names that are allowed in the whitelist.
diff --git a/Content.Shared/Wires/SharedWiresComponent.cs b/Content.Shared/Wires/SharedWiresComponent.cs
index 306a9c663c..72ba8d9d12 100644
--- a/Content.Shared/Wires/SharedWiresComponent.cs
+++ b/Content.Shared/Wires/SharedWiresComponent.cs
@@ -9,6 +9,7 @@ using static Content.Shared.Wires.SharedWiresComponent;
namespace Content.Shared.Wires
{
+ [Virtual]
public class SharedWiresComponent : Component
{
[Serializable, NetSerializable]
@@ -110,7 +111,7 @@ namespace Content.Shared.Wires
}
[Serializable, NetSerializable]
- public class WiresBoundUserInterfaceState : BoundUserInterfaceState
+ public sealed class WiresBoundUserInterfaceState : BoundUserInterfaceState
{
public string BoardName { get; }
public string? SerialNumber { get; }
@@ -148,7 +149,7 @@ namespace Content.Shared.Wires
[Serializable, NetSerializable]
- public class ClientWire
+ public sealed class ClientWire
{
public int Id;
public bool IsCut;
@@ -165,7 +166,7 @@ namespace Content.Shared.Wires
}
[Serializable, NetSerializable]
- public class WiresActionMessage : BoundUserInterfaceMessage
+ public sealed class WiresActionMessage : BoundUserInterfaceMessage
{
public readonly int Id;
public readonly WiresAction Action;
diff --git a/Content.Tests/Client/ClickMapTest.cs b/Content.Tests/Client/ClickMapTest.cs
index 30ba7b1e8d..88e8e93e29 100644
--- a/Content.Tests/Client/ClickMapTest.cs
+++ b/Content.Tests/Client/ClickMapTest.cs
@@ -7,7 +7,7 @@ using SixLabors.ImageSharp.PixelFormats;
namespace Content.Tests.Client
{
[TestFixture]
- public class ClickMapTest
+ public sealed class ClickMapTest
{
[Test]
public void TestBasic()
diff --git a/Content.Tests/ContentUnitTest.cs b/Content.Tests/ContentUnitTest.cs
index 16f9d4130b..04bc5fa61d 100644
--- a/Content.Tests/ContentUnitTest.cs
+++ b/Content.Tests/ContentUnitTest.cs
@@ -6,11 +6,13 @@ using Content.Server;
using Content.Server.IoC;
using Content.Shared;
using Content.Shared.IoC;
+using Robust.Shared.Analyzers;
using Robust.UnitTesting;
using EntryPoint = Content.Server.Entry.EntryPoint;
namespace Content.Tests
{
+ [Virtual]
public class ContentUnitTest : RobustUnitTest
{
protected override void OverrideIoC()
diff --git a/Content.Tests/Server/Jobs/JobQueueTest.cs b/Content.Tests/Server/Jobs/JobQueueTest.cs
index b75d58af89..5f6cb21d02 100644
--- a/Content.Tests/Server/Jobs/JobQueueTest.cs
+++ b/Content.Tests/Server/Jobs/JobQueueTest.cs
@@ -12,7 +12,7 @@ namespace Content.Tests.Server.Jobs
[TestFixture]
[TestOf(typeof(Job<>))]
[TestOf(typeof(JobQueue))]
- public class JobQueueTest : RobustUnitTest
+ public sealed class JobQueueTest : RobustUnitTest
{
///
/// Test a job that immediately exits with a value.
@@ -128,7 +128,7 @@ namespace Content.Tests.Server.Jobs
Assert.That(job.Result, Is.Null);
}
- private class DebugStopwatch : IStopwatch
+ private sealed class DebugStopwatch : IStopwatch
{
public TimeSpan Elapsed { get; set; }
@@ -143,7 +143,7 @@ namespace Content.Tests.Server.Jobs
}
}
- private class ImmediateJob : Job
+ private sealed class ImmediateJob : Job
{
public ImmediateJob() : base(0)
{
@@ -155,7 +155,7 @@ namespace Content.Tests.Server.Jobs
}
}
- private class LongJob : Job
+ private sealed class LongJob : Job
{
private readonly DebugStopwatch _stopwatch;
private readonly DebugStopwatch _stopwatchB;
@@ -187,7 +187,7 @@ namespace Content.Tests.Server.Jobs
}
}
- private class LongJobQueue : JobQueue
+ private sealed class LongJobQueue : JobQueue
{
public LongJobQueue(IStopwatch swB) : base(swB)
{
@@ -196,7 +196,7 @@ namespace Content.Tests.Server.Jobs
public override double MaxTime => 0.9;
}
- private class WaitingJob : Job
+ private sealed class WaitingJob : Job
{
private readonly Task _t;
diff --git a/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs b/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs
index 35a321df81..bc44046019 100644
--- a/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs
+++ b/Content.Tests/Server/Preferences/ServerDbSqliteTests.cs
@@ -20,7 +20,7 @@ using Robust.Shared.Serialization.Manager;
namespace Content.Tests.Server.Preferences
{
[TestFixture]
- public class ServerDbSqliteTests : ContentUnitTest
+ public sealed class ServerDbSqliteTests : ContentUnitTest
{
private const string Prototypes = @"
- type: dataset
diff --git a/Content.Tests/Server/Utility/IPAddressExtTest.cs b/Content.Tests/Server/Utility/IPAddressExtTest.cs
index 49c17032e2..a57430267b 100644
--- a/Content.Tests/Server/Utility/IPAddressExtTest.cs
+++ b/Content.Tests/Server/Utility/IPAddressExtTest.cs
@@ -4,7 +4,7 @@ using NUnit.Framework;
namespace Content.Tests.Server.Utility
{
- public class IPAddressExtTest
+ public sealed class IPAddressExtTest
{
[Test]
[TestCase("192.168.5.85/24", "192.168.5.1")]
diff --git a/Content.Tests/Shared/Administration/AdminFlagsExtTest.cs b/Content.Tests/Shared/Administration/AdminFlagsExtTest.cs
index e2bc95a8f7..c36aad7718 100644
--- a/Content.Tests/Shared/Administration/AdminFlagsExtTest.cs
+++ b/Content.Tests/Shared/Administration/AdminFlagsExtTest.cs
@@ -6,7 +6,7 @@ namespace Content.Tests.Shared.Administration
{
[TestFixture]
[Parallelizable(ParallelScope.All)]
- public class AdminFlagsExtTest
+ public sealed class AdminFlagsExtTest
{
[Test]
[TestCase("ADMIN", AdminFlags.Admin)]
diff --git a/Content.Tests/Shared/Administration/Logs/LogTypeTests.cs b/Content.Tests/Shared/Administration/Logs/LogTypeTests.cs
index ec5864ab62..5ae269a8f3 100644
--- a/Content.Tests/Shared/Administration/Logs/LogTypeTests.cs
+++ b/Content.Tests/Shared/Administration/Logs/LogTypeTests.cs
@@ -7,7 +7,7 @@ using NUnit.Framework;
namespace Content.Tests.Shared.Administration.Logs;
[TestFixture]
-public class LogTypeTests
+public sealed class LogTypeTests
{
[Test]
public void Unique()
diff --git a/Content.Tests/Shared/Alert/AlertManagerTests.cs b/Content.Tests/Shared/Alert/AlertManagerTests.cs
index ec6108f1b0..803da7d25e 100644
--- a/Content.Tests/Shared/Alert/AlertManagerTests.cs
+++ b/Content.Tests/Shared/Alert/AlertManagerTests.cs
@@ -12,7 +12,7 @@ using Robust.Shared.Utility;
namespace Content.Tests.Shared.Alert
{
[TestFixture, TestOf(typeof(AlertsSystem))]
- public class AlertManagerTests : ContentUnitTest
+ public sealed class AlertManagerTests : ContentUnitTest
{
const string PROTOTYPES = @"
- type: alert
diff --git a/Content.Tests/Shared/Alert/AlertOrderPrototypeTests.cs b/Content.Tests/Shared/Alert/AlertOrderPrototypeTests.cs
index 6ebb979133..977c5f4658 100644
--- a/Content.Tests/Shared/Alert/AlertOrderPrototypeTests.cs
+++ b/Content.Tests/Shared/Alert/AlertOrderPrototypeTests.cs
@@ -10,7 +10,7 @@ using Robust.Shared.Serialization.Manager;
namespace Content.Tests.Shared.Alert
{
[TestFixture, TestOf(typeof(AlertOrderPrototype))]
- public class AlertOrderPrototypeTests : ContentUnitTest
+ public sealed class AlertOrderPrototypeTests : ContentUnitTest
{
const string PROTOTYPES = @"
- type: alertOrder
diff --git a/Content.Tests/Shared/Alert/AlertPrototypeTests.cs b/Content.Tests/Shared/Alert/AlertPrototypeTests.cs
index 3a82566542..cdc7d0208a 100644
--- a/Content.Tests/Shared/Alert/AlertPrototypeTests.cs
+++ b/Content.Tests/Shared/Alert/AlertPrototypeTests.cs
@@ -11,7 +11,7 @@ using YamlDotNet.RepresentationModel;
namespace Content.Tests.Shared.Alert
{
[TestFixture, TestOf(typeof(AlertPrototype))]
- public class AlertPrototypeTests : ContentUnitTest
+ public sealed class AlertPrototypeTests : ContentUnitTest
{
private const string Prototypes = @"
- type: alert
diff --git a/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs b/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs
index 87c57ab57d..d317803592 100644
--- a/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs
+++ b/Content.Tests/Shared/Alert/ServerAlertsComponentTests.cs
@@ -12,7 +12,7 @@ namespace Content.Tests.Shared.Alert
{
[TestFixture]
[TestOf(typeof(AlertsComponent))]
- public class ServerAlertsComponentTests : ContentUnitTest
+ public sealed class ServerAlertsComponentTests : ContentUnitTest
{
const string PROTOTYPES = @"
- type: alert
diff --git a/Content.Tests/Shared/Chemistry/FixedPoint2_Tests.cs b/Content.Tests/Shared/Chemistry/FixedPoint2_Tests.cs
index dae9806e63..34e5db1047 100644
--- a/Content.Tests/Shared/Chemistry/FixedPoint2_Tests.cs
+++ b/Content.Tests/Shared/Chemistry/FixedPoint2_Tests.cs
@@ -5,7 +5,7 @@ using NUnit.Framework;
namespace Content.Tests.Shared.Chemistry
{
[TestFixture, TestOf(typeof(FixedPoint2))]
- public class FixedPoint2_Tests
+ public sealed class FixedPoint2_Tests
{
[Test]
[TestCase(1, "1")]
diff --git a/Content.Tests/Shared/Chemistry/ReagentPrototype_Tests.cs b/Content.Tests/Shared/Chemistry/ReagentPrototype_Tests.cs
index f7a5d1a478..d3ebb7eff0 100644
--- a/Content.Tests/Shared/Chemistry/ReagentPrototype_Tests.cs
+++ b/Content.Tests/Shared/Chemistry/ReagentPrototype_Tests.cs
@@ -12,7 +12,7 @@ using YamlDotNet.RepresentationModel;
namespace Content.Tests.Shared.Chemistry
{
[TestFixture, TestOf(typeof(ReagentPrototype))]
- public class ReagentPrototype_Tests : ContentUnitTest
+ public sealed class ReagentPrototype_Tests : ContentUnitTest
{
[Test]
public void DeserializeReagentPrototype()
diff --git a/Content.Tests/Shared/Chemistry/Solution_Tests.cs b/Content.Tests/Shared/Chemistry/Solution_Tests.cs
index 7caadfb6bc..95ebba9a9c 100644
--- a/Content.Tests/Shared/Chemistry/Solution_Tests.cs
+++ b/Content.Tests/Shared/Chemistry/Solution_Tests.cs
@@ -8,7 +8,7 @@ using NUnit.Framework;
namespace Content.Tests.Shared.Chemistry
{
[TestFixture, Parallelizable, TestOf(typeof(Solution))]
- public class Solution_Tests : ContentUnitTest
+ public sealed class Solution_Tests : ContentUnitTest
{
[OneTimeSetUp]
public void Setup()
diff --git a/Content.Tests/Shared/DamageTest.cs b/Content.Tests/Shared/DamageTest.cs
index 634c57c1c6..d19aa64860 100644
--- a/Content.Tests/Shared/DamageTest.cs
+++ b/Content.Tests/Shared/DamageTest.cs
@@ -14,7 +14,7 @@ namespace Content.Tests.Shared
[TestOf(typeof(DamageSpecifier))]
[TestOf(typeof(DamageModifierSetPrototype))]
[TestOf(typeof(DamageGroupPrototype))]
- public class DamageTest : ContentUnitTest
+ public sealed class DamageTest : ContentUnitTest
{
static private Dictionary _resistanceCoefficientDict = new()
diff --git a/Content.Tests/Shared/Gamestates/ComponentStateNullTest.cs b/Content.Tests/Shared/Gamestates/ComponentStateNullTest.cs
index 2bcb217f58..651c9a2585 100644
--- a/Content.Tests/Shared/Gamestates/ComponentStateNullTest.cs
+++ b/Content.Tests/Shared/Gamestates/ComponentStateNullTest.cs
@@ -9,7 +9,7 @@ using Robust.Shared.Reflection;
namespace Content.Tests.Shared.Gamestates
{
[TestFixture]
- public class ComponentStateNullTest
+ public sealed class ComponentStateNullTest
{
[Test]
public void HandleComponentState_NullStates_NotThrow()
@@ -52,7 +52,7 @@ namespace Content.Tests.Shared.Gamestates
return reflection;
}
- private class FullReflectionManager : ReflectionManager
+ private sealed class FullReflectionManager : ReflectionManager
{
protected override IEnumerable TypePrefixes => Prefixes;
diff --git a/Content.Tests/Shared/Preferences/Job/JobPriorityTest.cs b/Content.Tests/Shared/Preferences/Job/JobPriorityTest.cs
index 180fbc7adb..fc095d1c96 100644
--- a/Content.Tests/Shared/Preferences/Job/JobPriorityTest.cs
+++ b/Content.Tests/Shared/Preferences/Job/JobPriorityTest.cs
@@ -8,7 +8,7 @@ namespace Content.Tests.Shared.Preferences.Job
[TestFixture]
[TestOf(typeof(JobPriority))]
[TestOf(typeof(DbJobPriority))]
- public class JobPriorityTest
+ public sealed class JobPriorityTest
{
[Test]
public void JobPriorityEnumParityTest()
diff --git a/Content.Tests/Shared/Utility/ContentHelpers_Test.cs b/Content.Tests/Shared/Utility/ContentHelpers_Test.cs
index 04e621c111..52d4286b8c 100644
--- a/Content.Tests/Shared/Utility/ContentHelpers_Test.cs
+++ b/Content.Tests/Shared/Utility/ContentHelpers_Test.cs
@@ -7,7 +7,7 @@ namespace Content.Tests.Shared.Utility
[Parallelizable]
[TestFixture]
[TestOf(typeof(ContentHelpers))]
- public class ContentHelpers_Test
+ public sealed class ContentHelpers_Test
{
public static readonly IEnumerable<(double val, double max, int levels, int expected)> TestData =
new (double, double, int, int)[]
diff --git a/Content.Tests/Shared/Utility/RandomExtensionsTests.cs b/Content.Tests/Shared/Utility/RandomExtensionsTests.cs
index e27cc556f7..f051daa32d 100644
--- a/Content.Tests/Shared/Utility/RandomExtensionsTests.cs
+++ b/Content.Tests/Shared/Utility/RandomExtensionsTests.cs
@@ -11,7 +11,7 @@ namespace Content.Tests.Shared.Utility
{
[TestFixture]
[TestOf(typeof(SharedRandomExtensions))]
- public class RandomExtensionsTests : ContentUnitTest
+ public sealed class RandomExtensionsTests : ContentUnitTest
{
private const string TestDatasetId = "TestDataset";
diff --git a/Content.Tests/Shared/WireHackingTest.cs b/Content.Tests/Shared/WireHackingTest.cs
index f1ba574861..9e5c140799 100644
--- a/Content.Tests/Shared/WireHackingTest.cs
+++ b/Content.Tests/Shared/WireHackingTest.cs
@@ -11,7 +11,7 @@ namespace Content.Tests.Shared
// Also a thinly veiled excuse to bloat the test count.
[TestFixture]
- public class WireHackingTest : RobustUnitTest
+ public sealed class WireHackingTest : RobustUnitTest
{
public static IEnumerable ColorValues = (WireColor[]) Enum.GetValues(typeof(WireColor));
public static IEnumerable LetterValues = (WireLetter[]) Enum.GetValues(typeof(WireLetter));
diff --git a/Content.Tools/Map.cs b/Content.Tools/Map.cs
index 116ae2608f..ad98762307 100644
--- a/Content.Tools/Map.cs
+++ b/Content.Tools/Map.cs
@@ -8,7 +8,7 @@ using YamlDotNet.RepresentationModel;
namespace Content.Tools
{
- public class Map
+ public sealed class Map
{
public Map(string path)
{
diff --git a/Content.Tools/Merger.cs b/Content.Tools/Merger.cs
index 1b5aaa4fe3..94ad9c7a60 100644
--- a/Content.Tools/Merger.cs
+++ b/Content.Tools/Merger.cs
@@ -8,7 +8,7 @@ using YamlDotNet.RepresentationModel;
namespace Content.Tools
{
- public class Merger
+ public sealed class Merger
{
public Map MapOurs { get; }
public Map MapBased { get; }
diff --git a/Content.Tools/TypeTagPreserver.cs b/Content.Tools/TypeTagPreserver.cs
index 94996767d3..54653ec737 100644
--- a/Content.Tools/TypeTagPreserver.cs
+++ b/Content.Tools/TypeTagPreserver.cs
@@ -3,7 +3,7 @@ using YamlDotNet.Core.Events;
namespace Content.Tools
{
- public class TypeTagPreserver : IEmitter
+ public sealed class TypeTagPreserver : IEmitter
{
public TypeTagPreserver(IEmitter emitter)
{