diff --git a/Content.Server/AlertLevel/AlertLevelPrototype.cs b/Content.Server/AlertLevel/AlertLevelPrototype.cs
index c6740c16cc..ccf6ff912c 100644
--- a/Content.Server/AlertLevel/AlertLevelPrototype.cs
+++ b/Content.Server/AlertLevel/AlertLevelPrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Server.AlertLevel;
[Prototype("alertLevels")]
public sealed partial class AlertLevelPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// Dictionary of alert levels. Keyed by string - the string key is the most important
diff --git a/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs b/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs
index 9a551acc49..4b5e0679f5 100644
--- a/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs
+++ b/Content.Server/Antag/Components/AntagRandomObjectivesComponent.cs
@@ -28,7 +28,7 @@ public sealed partial class AntagRandomObjectivesComponent : Component
/// Difficulty is checked over all sets, but each set has its own probability and pick count.
///
[DataRecord]
-public record struct AntagObjectiveSet()
+public partial record struct AntagObjectiveSet()
{
///
/// The grouping used by the objective system to pick random objectives.
diff --git a/Content.Server/Botany/SeedPrototype.cs b/Content.Server/Botany/SeedPrototype.cs
index 5608338f22..1eb22241cd 100644
--- a/Content.Server/Botany/SeedPrototype.cs
+++ b/Content.Server/Botany/SeedPrototype.cs
@@ -14,7 +14,7 @@ namespace Content.Server.Botany;
[Prototype("seed")]
public sealed partial class SeedPrototype : SeedData, IPrototype
{
- [IdDataField] public string ID { get; private init; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
}
public enum HarvestType : byte
diff --git a/Content.Server/Connection/Whitelist/WhitelistPrototype.cs b/Content.Server/Connection/Whitelist/WhitelistPrototype.cs
index 2b8b9babbc..eccf364a28 100644
--- a/Content.Server/Connection/Whitelist/WhitelistPrototype.cs
+++ b/Content.Server/Connection/Whitelist/WhitelistPrototype.cs
@@ -18,25 +18,25 @@ namespace Content.Server.Connection.Whitelist;
/// If the condition doesn't match, the next condition is checked.
///
[Prototype("playerConnectionWhitelist")]
-public sealed class PlayerConnectionWhitelistPrototype : IPrototype
+public sealed partial class PlayerConnectionWhitelistPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// Minimum number of players required for this whitelist to be active.
/// If there are less players than this, the whitelist will be ignored and the next one in the list will be used.
///
[DataField]
- public int MinimumPlayers { get; } = 0;
+ public int MinimumPlayers = 0;
///
/// Maximum number of players allowed for this whitelist to be active.
/// If there are more players than this, the whitelist will be ignored and the next one in the list will be used.
///
[DataField]
- public int MaximumPlayers { get; } = int.MaxValue;
+ public int MaximumPlayers = int.MaxValue;
[DataField]
- public WhitelistCondition[] Conditions { get; } = default!;
+ public WhitelistCondition[] Conditions = default!;
}
diff --git a/Content.Server/Ghost/Roles/Raffles/GhostRoleRaffleDeciderPrototype.cs b/Content.Server/Ghost/Roles/Raffles/GhostRoleRaffleDeciderPrototype.cs
index b2ebf6ca5f..e7b0c8326a 100644
--- a/Content.Server/Ghost/Roles/Raffles/GhostRoleRaffleDeciderPrototype.cs
+++ b/Content.Server/Ghost/Roles/Raffles/GhostRoleRaffleDeciderPrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Ghost.Roles.Raffles;
/// Allows getting a as prototype.
///
[Prototype("ghostRoleRaffleDecider")]
-public sealed class GhostRoleRaffleDeciderPrototype : IPrototype
+public sealed partial class GhostRoleRaffleDeciderPrototype : IPrototype
{
///
[IdDataField]
diff --git a/Content.Server/NPC/HTN/HTNCompoundPrototype.cs b/Content.Server/NPC/HTN/HTNCompoundPrototype.cs
index 69f8441973..b99ea09826 100644
--- a/Content.Server/NPC/HTN/HTNCompoundPrototype.cs
+++ b/Content.Server/NPC/HTN/HTNCompoundPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Server.NPC.HTN;
[Prototype("htnCompound")]
public sealed partial class HTNCompoundPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField("branches", required: true)]
public List Branches = new();
diff --git a/Content.Server/NPC/Queries/Curves/UtilityCurvePresetPrototype.cs b/Content.Server/NPC/Queries/Curves/UtilityCurvePresetPrototype.cs
index 7a6e9152c6..3116dede93 100644
--- a/Content.Server/NPC/Queries/Curves/UtilityCurvePresetPrototype.cs
+++ b/Content.Server/NPC/Queries/Curves/UtilityCurvePresetPrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Server.NPC.Queries.Curves;
[Prototype("utilityCurvePreset")]
public sealed partial class UtilityCurvePresetPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField("curve", required: true)] public IUtilityCurve Curve = default!;
}
diff --git a/Content.Server/Shuttles/Components/GridSpawnComponent.cs b/Content.Server/Shuttles/Components/GridSpawnComponent.cs
index 18959dd7f3..c74613f5eb 100644
--- a/Content.Server/Shuttles/Components/GridSpawnComponent.cs
+++ b/Content.Server/Shuttles/Components/GridSpawnComponent.cs
@@ -62,7 +62,7 @@ public interface IGridSpawnGroup
}
[DataRecord]
-public sealed class DungeonSpawnGroup : IGridSpawnGroup
+public sealed partial class DungeonSpawnGroup : IGridSpawnGroup
{
///
/// Prototypes we can choose from to spawn.
@@ -97,7 +97,7 @@ public sealed class DungeonSpawnGroup : IGridSpawnGroup
}
[DataRecord]
-public sealed class GridSpawnGroup : IGridSpawnGroup
+public sealed partial class GridSpawnGroup : IGridSpawnGroup
{
public List Paths = new();
diff --git a/Content.Server/Wires/WireLayout.cs b/Content.Server/Wires/WireLayout.cs
index 621992c915..7ca4faaeca 100644
--- a/Content.Server/Wires/WireLayout.cs
+++ b/Content.Server/Wires/WireLayout.cs
@@ -20,7 +20,7 @@ public sealed partial class WireLayoutPrototype : IPrototype, IInheritingPrototy
public string[]? Parents { get; private set; }
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
/// How many wires in this layout will do
diff --git a/Content.Server/Worldgen/Prototypes/BiomePrototype.cs b/Content.Server/Worldgen/Prototypes/BiomePrototype.cs
index 1cecf87a5e..1c3633fb5f 100644
--- a/Content.Server/Worldgen/Prototypes/BiomePrototype.cs
+++ b/Content.Server/Worldgen/Prototypes/BiomePrototype.cs
@@ -14,12 +14,12 @@ public sealed partial class BiomePrototype : IPrototype, IInheritingPrototype
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
[IdDataField]
@@ -42,7 +42,7 @@ public sealed partial class BiomePrototype : IPrototype, IInheritingPrototype
///
[DataField("chunkComponents")]
[AlwaysPushInheritance]
- public ComponentRegistry ChunkComponents { get; } = new();
+ public ComponentRegistry ChunkComponents = new();
//TODO: Get someone to make this a method on componentregistry that does it Correctly.
///
diff --git a/Content.Server/Worldgen/Prototypes/NoiseChannelPrototype.cs b/Content.Server/Worldgen/Prototypes/NoiseChannelPrototype.cs
index 02ca383d30..deb39de99e 100644
--- a/Content.Server/Worldgen/Prototypes/NoiseChannelPrototype.cs
+++ b/Content.Server/Worldgen/Prototypes/NoiseChannelPrototype.cs
@@ -84,12 +84,12 @@ public sealed partial class NoiseChannelPrototype : NoiseChannelConfig, IPrototy
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
[IdDataField]
diff --git a/Content.Shared/Alert/AlertCategoryPrototype.cs b/Content.Shared/Alert/AlertCategoryPrototype.cs
index 7c7d047521..6685151142 100644
--- a/Content.Shared/Alert/AlertCategoryPrototype.cs
+++ b/Content.Shared/Alert/AlertCategoryPrototype.cs
@@ -10,5 +10,5 @@ public sealed partial class AlertCategoryPrototype : IPrototype
{
///
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
}
diff --git a/Content.Shared/Audio/AmbientMusicPrototype.cs b/Content.Shared/Audio/AmbientMusicPrototype.cs
index 219c41527d..e98f324a06 100644
--- a/Content.Shared/Audio/AmbientMusicPrototype.cs
+++ b/Content.Shared/Audio/AmbientMusicPrototype.cs
@@ -12,7 +12,7 @@ namespace Content.Shared.Audio;
[Prototype("ambientMusic")]
public sealed partial class AmbientMusicPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
///
/// Traditionally you'd prioritise most rules to least as priority but in our case we'll just be explicit.
diff --git a/Content.Shared/Audio/Jukebox/JukeboxPrototype.cs b/Content.Shared/Audio/Jukebox/JukeboxPrototype.cs
index ad690ef497..df90d42428 100644
--- a/Content.Shared/Audio/Jukebox/JukeboxPrototype.cs
+++ b/Content.Shared/Audio/Jukebox/JukeboxPrototype.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Audio.Jukebox;
public sealed partial class JukeboxPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
///
/// User friendly name to use in UI.
diff --git a/Content.Shared/Body/Prototypes/BodyPrototype.cs b/Content.Shared/Body/Prototypes/BodyPrototype.cs
index 123638f099..646acaaf6b 100644
--- a/Content.Shared/Body/Prototypes/BodyPrototype.cs
+++ b/Content.Shared/Body/Prototypes/BodyPrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Body.Prototypes;
[Prototype("body")]
public sealed partial class BodyPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("name")]
public string Name { get; private set; } = "";
@@ -26,4 +26,4 @@ public sealed partial class BodyPrototype : IPrototype
}
[DataRecord]
-public sealed record BodyPrototypeSlot(EntProtoId? Part, HashSet Connections, Dictionary Organs);
+public sealed partial record BodyPrototypeSlot(EntProtoId? Part, HashSet Connections, Dictionary Organs);
diff --git a/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs b/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs
index af2f6613d6..5a18b6becc 100644
--- a/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs
+++ b/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs
@@ -10,12 +10,12 @@ namespace Content.Shared.Cargo.Prototypes
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
[DataField("name")] private string _name = string.Empty;
diff --git a/Content.Shared/CartridgeLoader/Cartridges/LogProbeUiState.cs b/Content.Shared/CartridgeLoader/Cartridges/LogProbeUiState.cs
index 9dc507b7e5..fa3c42cf4d 100644
--- a/Content.Shared/CartridgeLoader/Cartridges/LogProbeUiState.cs
+++ b/Content.Shared/CartridgeLoader/Cartridges/LogProbeUiState.cs
@@ -17,7 +17,7 @@ public sealed class LogProbeUiState : BoundUserInterfaceState
}
[Serializable, NetSerializable, DataRecord]
-public sealed class PulledAccessLog
+public sealed partial class PulledAccessLog
{
public readonly TimeSpan Time;
public readonly string Accessor;
diff --git a/Content.Shared/CartridgeLoader/Cartridges/NetProbeUiState.cs b/Content.Shared/CartridgeLoader/Cartridges/NetProbeUiState.cs
index cc2cc66b85..04594a2139 100644
--- a/Content.Shared/CartridgeLoader/Cartridges/NetProbeUiState.cs
+++ b/Content.Shared/CartridgeLoader/Cartridges/NetProbeUiState.cs
@@ -17,7 +17,7 @@ public sealed class NetProbeUiState : BoundUserInterfaceState
}
[Serializable, NetSerializable, DataRecord]
-public sealed class ProbedNetworkDevice
+public sealed partial class ProbedNetworkDevice
{
public readonly string Name;
public readonly string Address;
diff --git a/Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs b/Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs
index 2b7064c1e9..688d46112e 100644
--- a/Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs
+++ b/Content.Shared/Chat/Prototypes/EmoteSoundsPrototype.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Chat.Prototypes;
/// Different entities may use different sounds collections.
///
[Prototype("emoteSounds"), Serializable, NetSerializable]
-public sealed class EmoteSoundsPrototype : IPrototype
+public sealed partial class EmoteSoundsPrototype : IPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs b/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
index 5cdc8aed80..13a751b88e 100644
--- a/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
+++ b/Content.Shared/Chemistry/Dispenser/ReagentDispenserInventoryPrototype.cs
@@ -18,6 +18,6 @@ namespace Content.Shared.Chemistry.Dispenser
public List Inventory = new();
[ViewVariables, IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
}
}
diff --git a/Content.Shared/Chemistry/Reaction/MixingCategoryPrototype.cs b/Content.Shared/Chemistry/Reaction/MixingCategoryPrototype.cs
index 2456fbf733..f5dcdf44ab 100644
--- a/Content.Shared/Chemistry/Reaction/MixingCategoryPrototype.cs
+++ b/Content.Shared/Chemistry/Reaction/MixingCategoryPrototype.cs
@@ -11,7 +11,7 @@ public sealed partial class MixingCategoryPrototype : IPrototype
{
///
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// A locale string used in the guidebook to describe this mixing category.
diff --git a/Content.Shared/Contraband/ContrabandSeverityPrototype.cs b/Content.Shared/Contraband/ContrabandSeverityPrototype.cs
index 094275a6fd..2be847965f 100644
--- a/Content.Shared/Contraband/ContrabandSeverityPrototype.cs
+++ b/Content.Shared/Contraband/ContrabandSeverityPrototype.cs
@@ -10,7 +10,7 @@ public sealed partial class ContrabandSeverityPrototype : IPrototype
{
///
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// Text shown for this severity level when the contraband is examined.
diff --git a/Content.Shared/CriminalRecords/CriminalRecord.cs b/Content.Shared/CriminalRecords/CriminalRecord.cs
index 5a023a9188..f69264fcd8 100644
--- a/Content.Shared/CriminalRecords/CriminalRecord.cs
+++ b/Content.Shared/CriminalRecords/CriminalRecord.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.CriminalRecords;
/// Can be viewed and edited in a criminal records console by security.
///
[Serializable, NetSerializable, DataRecord]
-public sealed record CriminalRecord
+public sealed partial record CriminalRecord
{
///
/// Status of the person (None, Wanted, Detained).
diff --git a/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs b/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
index bb5aea3a38..3bd840e9ce 100644
--- a/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
+++ b/Content.Shared/Damage/Prototypes/DamageGroupPrototype.cs
@@ -15,7 +15,7 @@ namespace Content.Shared.Damage.Prototypes
[Serializable, NetSerializable]
public sealed partial class DamageGroupPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField(required: true)]
private LocId Name { get; set; }
diff --git a/Content.Shared/Decals/ColorPalettePrototype.cs b/Content.Shared/Decals/ColorPalettePrototype.cs
index cef776d0c9..9c31201950 100644
--- a/Content.Shared/Decals/ColorPalettePrototype.cs
+++ b/Content.Shared/Decals/ColorPalettePrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Decals;
[Prototype("palette")]
public sealed partial class ColorPalettePrototype : IPrototype
{
- [IdDataField] public string ID { get; } = null!;
+ [IdDataField] public string ID { get; private set; } = null!;
[DataField("name")] public string Name { get; private set; } = null!;
[DataField("colors")] public Dictionary Colors { get; private set; } = null!;
}
diff --git a/Content.Shared/Decals/DecalGridComponent.cs b/Content.Shared/Decals/DecalGridComponent.cs
index 67a9c03769..6a5bae7707 100644
--- a/Content.Shared/Decals/DecalGridComponent.cs
+++ b/Content.Shared/Decals/DecalGridComponent.cs
@@ -55,7 +55,7 @@ namespace Content.Shared.Decals
}
[DataRecord, Serializable, NetSerializable]
- public record DecalGridChunkCollection(Dictionary ChunkCollection)
+ public partial record DecalGridChunkCollection(Dictionary ChunkCollection)
{
public uint NextDecalId;
}
diff --git a/Content.Shared/Decals/DecalPrototype.cs b/Content.Shared/Decals/DecalPrototype.cs
index 543537f1bf..b2fcb28e71 100644
--- a/Content.Shared/Decals/DecalPrototype.cs
+++ b/Content.Shared/Decals/DecalPrototype.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Decals
[Prototype("decal")]
public sealed partial class DecalPrototype : IPrototype, IInheritingPrototype
{
- [IdDataField] public string ID { get; } = null!;
+ [IdDataField] public string ID { get; private set; } = null!;
[DataField("sprite")] public SpriteSpecifier Sprite { get; private set; } = SpriteSpecifier.Invalid;
[DataField("tags")] public List Tags = new();
[DataField("showMenu")] public bool ShowMenu = true;
@@ -36,11 +36,11 @@ namespace Content.Shared.Decals
public bool DefaultSnap = true;
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
}
diff --git a/Content.Shared/EntityTable/EntityTablePrototype.cs b/Content.Shared/EntityTable/EntityTablePrototype.cs
index 63cebe9aeb..19f4a2a9e1 100644
--- a/Content.Shared/EntityTable/EntityTablePrototype.cs
+++ b/Content.Shared/EntityTable/EntityTablePrototype.cs
@@ -11,7 +11,7 @@ public sealed partial class EntityTablePrototype : IPrototype
{
///
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
[DataField(required: true)]
public EntityTableSelector Table = default!;
diff --git a/Content.Shared/Ghost/Roles/Raffles/GhostRoleRaffleSettingsPrototype.cs b/Content.Shared/Ghost/Roles/Raffles/GhostRoleRaffleSettingsPrototype.cs
index f1447a0e09..6565fcd212 100644
--- a/Content.Shared/Ghost/Roles/Raffles/GhostRoleRaffleSettingsPrototype.cs
+++ b/Content.Shared/Ghost/Roles/Raffles/GhostRoleRaffleSettingsPrototype.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Ghost.Roles.Raffles;
/// Allows specifying the settings for a ghost role raffle as a prototype.
///
[Prototype("ghostRoleRaffleSettings")]
-public sealed class GhostRoleRaffleSettingsPrototype : IPrototype
+public sealed partial class GhostRoleRaffleSettingsPrototype : IPrototype
{
///
[IdDataField]
diff --git a/Content.Shared/GridPreloader/Prototypes/PreloadedGridPrototype.cs b/Content.Shared/GridPreloader/Prototypes/PreloadedGridPrototype.cs
index 89da9dfb8f..af42672897 100644
--- a/Content.Shared/GridPreloader/Prototypes/PreloadedGridPrototype.cs
+++ b/Content.Shared/GridPreloader/Prototypes/PreloadedGridPrototype.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.GridPreloader.Prototypes;
[Prototype("preloadedGrid")]
public sealed partial class PreloadedGridPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField(required: true)]
public ResPath Path;
diff --git a/Content.Shared/Humanoid/Markings/MarkingPoints.cs b/Content.Shared/Humanoid/Markings/MarkingPoints.cs
index c9784728e7..c83eb17fda 100644
--- a/Content.Shared/Humanoid/Markings/MarkingPoints.cs
+++ b/Content.Shared/Humanoid/Markings/MarkingPoints.cs
@@ -37,7 +37,7 @@ public sealed partial class MarkingPoints
[Prototype("markingPoints")]
public sealed partial class MarkingPointsPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// If the user of this marking point set is only allowed to
diff --git a/Content.Shared/Humanoid/Prototypes/RandomHumanoidSettingsPrototype.cs b/Content.Shared/Humanoid/Prototypes/RandomHumanoidSettingsPrototype.cs
index a97c3134be..add8b6389e 100644
--- a/Content.Shared/Humanoid/Prototypes/RandomHumanoidSettingsPrototype.cs
+++ b/Content.Shared/Humanoid/Prototypes/RandomHumanoidSettingsPrototype.cs
@@ -9,14 +9,14 @@ namespace Content.Shared.Humanoid.Prototypes;
[Prototype("randomHumanoidSettings")]
public sealed partial class RandomHumanoidSettingsPrototype : IPrototype, IInheritingPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[ParentDataField(typeof(PrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
[AbstractDataField]
[NeverPushInheritance]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
/// Whether the humanoid's name should take from the randomized profile or not.
diff --git a/Content.Shared/Inventory/InventoryTemplatePrototype.cs b/Content.Shared/Inventory/InventoryTemplatePrototype.cs
index 91accec8c9..aafb3139d2 100644
--- a/Content.Shared/Inventory/InventoryTemplatePrototype.cs
+++ b/Content.Shared/Inventory/InventoryTemplatePrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Inventory;
[Prototype("inventoryTemplate")]
public sealed partial class InventoryTemplatePrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField("slots")] public SlotDefinition[] Slots { get; private set; } = Array.Empty();
}
diff --git a/Content.Shared/Item/ItemSizePrototype.cs b/Content.Shared/Item/ItemSizePrototype.cs
index 5b3d4d8f91..2a0ccd29d2 100644
--- a/Content.Shared/Item/ItemSizePrototype.cs
+++ b/Content.Shared/Item/ItemSizePrototype.cs
@@ -10,19 +10,19 @@ public sealed partial class ItemSizePrototype : IPrototype, IComparable
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// The amount of space in a bag an item of this size takes.
///
[DataField]
- public readonly int Weight = 1;
+ public int Weight = 1;
///
/// A player-facing name used to describe this size.
///
[DataField]
- public readonly LocId Name;
+ public LocId Name;
///
/// The default inventory shape associated with this item size.
diff --git a/Content.Shared/Lathe/Prototypes/LatheCategoryPrototype.cs b/Content.Shared/Lathe/Prototypes/LatheCategoryPrototype.cs
index 9af8e77352..390fac926f 100644
--- a/Content.Shared/Lathe/Prototypes/LatheCategoryPrototype.cs
+++ b/Content.Shared/Lathe/Prototypes/LatheCategoryPrototype.cs
@@ -11,7 +11,7 @@ public sealed partial class LatheCategoryPrototype : IPrototype
{
///
[IdDataField]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// A localized string used in the UI
diff --git a/Content.Shared/Lathe/Prototypes/LatheRecipePackPrototype.cs b/Content.Shared/Lathe/Prototypes/LatheRecipePackPrototype.cs
index ada880f459..76bc8da910 100644
--- a/Content.Shared/Lathe/Prototypes/LatheRecipePackPrototype.cs
+++ b/Content.Shared/Lathe/Prototypes/LatheRecipePackPrototype.cs
@@ -16,11 +16,11 @@ public sealed partial class LatheRecipePackPrototype : IPrototype, IInheritingPr
public string ID { get; private set; } = default!;
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
/// The lathe recipes contained by this pack.
diff --git a/Content.Shared/Maps/ContentTileDefinition.cs b/Content.Shared/Maps/ContentTileDefinition.cs
index a9ad016b87..de5d684c25 100644
--- a/Content.Shared/Maps/ContentTileDefinition.cs
+++ b/Content.Shared/Maps/ContentTileDefinition.cs
@@ -27,7 +27,7 @@ namespace Content.Shared.Maps
[AbstractDataFieldAttribute]
public bool Abstract { get; private set; }
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
public ushort TileId { get; private set; }
diff --git a/Content.Shared/Materials/MaterialPrototype.cs b/Content.Shared/Materials/MaterialPrototype.cs
index 5adf13213e..d1ef82539b 100644
--- a/Content.Shared/Materials/MaterialPrototype.cs
+++ b/Content.Shared/Materials/MaterialPrototype.cs
@@ -13,11 +13,11 @@ namespace Content.Shared.Materials
{
[ViewVariables]
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
[ViewVariables]
[AbstractDataField]
- public bool Abstract { get; } = false;
+ public bool Abstract { get; private set; } = false;
[ViewVariables]
[IdDataField]
diff --git a/Content.Shared/Mind/RoleTypePrototype.cs b/Content.Shared/Mind/RoleTypePrototype.cs
index e473b671e2..cad04ce03e 100644
--- a/Content.Shared/Mind/RoleTypePrototype.cs
+++ b/Content.Shared/Mind/RoleTypePrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Mind;
/// The core properties of Role Types
///
[Prototype, Serializable]
-public sealed class RoleTypePrototype : IPrototype
+public sealed partial class RoleTypePrototype : IPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Ninja/Components/NinjaGlovesComponent.cs b/Content.Shared/Ninja/Components/NinjaGlovesComponent.cs
index 3b9e2a5e35..c9de2499cd 100644
--- a/Content.Shared/Ninja/Components/NinjaGlovesComponent.cs
+++ b/Content.Shared/Ninja/Components/NinjaGlovesComponent.cs
@@ -33,7 +33,7 @@ public sealed partial class NinjaGlovesComponent : Component
/// An ability that adds components to the user when the gloves are enabled.
///
[DataRecord]
-public record struct NinjaGloveAbility()
+public partial record struct NinjaGloveAbility()
{
///
/// If not null, checks if an objective with this prototype has been completed.
diff --git a/Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs b/Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs
index c87110287a..8d1e2f89fe 100644
--- a/Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs
+++ b/Content.Shared/Nutrition/Components/FoodSequenceStartPointComponent.cs
@@ -124,7 +124,7 @@ public sealed partial class FoodSequenceStartPointComponent : Component
/// Stores all the necessary information for rendering the FoodSequence element
///
[DataRecord, Serializable, NetSerializable]
-public record struct FoodSequenceVisualLayer
+public partial record struct FoodSequenceVisualLayer
{
///
/// reference to the original prototype of the layer. Used to edit visual layers.
diff --git a/Content.Shared/Parallax/Biomes/BiomeTemplatePrototype.cs b/Content.Shared/Parallax/Biomes/BiomeTemplatePrototype.cs
index b9fe40b1ba..691d0b81cc 100644
--- a/Content.Shared/Parallax/Biomes/BiomeTemplatePrototype.cs
+++ b/Content.Shared/Parallax/Biomes/BiomeTemplatePrototype.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Parallax.Biomes;
[Prototype("biomeTemplate")]
public sealed partial class BiomeTemplatePrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("layers")]
public List Layers = new();
diff --git a/Content.Shared/Parallax/Biomes/Markers/BiomeMarkerLayerPrototype.cs b/Content.Shared/Parallax/Biomes/Markers/BiomeMarkerLayerPrototype.cs
index 683900c8ba..ebbbb3123c 100644
--- a/Content.Shared/Parallax/Biomes/Markers/BiomeMarkerLayerPrototype.cs
+++ b/Content.Shared/Parallax/Biomes/Markers/BiomeMarkerLayerPrototype.cs
@@ -7,9 +7,9 @@ namespace Content.Shared.Parallax.Biomes.Markers;
/// Spawns entities inside of the specified area with the minimum specified radius.
///
[Prototype("biomeMarkerLayer")]
-public sealed class BiomeMarkerLayerPrototype : IBiomeMarkerLayer
+public sealed partial class BiomeMarkerLayerPrototype : IBiomeMarkerLayer
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// Checks for the relevant entity for the tile before spawning. Useful for substituting walls with ore veins for example.
@@ -21,7 +21,7 @@ public sealed class BiomeMarkerLayerPrototype : IBiomeMarkerLayer
/// Default prototype to spawn. If null will fall back to entity mask.
///
[DataField]
- public string? Prototype { get; }
+ public string? Prototype { get; private set; }
///
/// Minimum radius between 2 points
diff --git a/Content.Shared/Players/PlayTimeTracking/PlayTimeTrackerPrototype.cs b/Content.Shared/Players/PlayTimeTracking/PlayTimeTrackerPrototype.cs
index d1cfc7f8d4..12d79b5a1d 100644
--- a/Content.Shared/Players/PlayTimeTracking/PlayTimeTrackerPrototype.cs
+++ b/Content.Shared/Players/PlayTimeTracking/PlayTimeTrackerPrototype.cs
@@ -8,5 +8,5 @@ namespace Content.Shared.Players.PlayTimeTracking;
[Prototype("playTimeTracker")]
public sealed partial class PlayTimeTrackerPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
}
diff --git a/Content.Shared/Preferences/Loadouts/Effects/LoadoutEffectGroupPrototype.cs b/Content.Shared/Preferences/Loadouts/Effects/LoadoutEffectGroupPrototype.cs
index 3bb9d8ab0a..2dbe862764 100644
--- a/Content.Shared/Preferences/Loadouts/Effects/LoadoutEffectGroupPrototype.cs
+++ b/Content.Shared/Preferences/Loadouts/Effects/LoadoutEffectGroupPrototype.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Preferences.Loadouts.Effects;
public sealed partial class LoadoutEffectGroupPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
[DataField(required: true)]
public List Effects = new();
diff --git a/Content.Shared/Preferences/Loadouts/LoadoutGroupPrototype.cs b/Content.Shared/Preferences/Loadouts/LoadoutGroupPrototype.cs
index 0c787e965f..946d218cbc 100644
--- a/Content.Shared/Preferences/Loadouts/LoadoutGroupPrototype.cs
+++ b/Content.Shared/Preferences/Loadouts/LoadoutGroupPrototype.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Preferences.Loadouts;
public sealed partial class LoadoutGroupPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
///
/// User-friendly name for the group.
diff --git a/Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs b/Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs
index 1533b605ac..f4ec6986a1 100644
--- a/Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs
+++ b/Content.Shared/Preferences/Loadouts/LoadoutPrototype.cs
@@ -11,7 +11,7 @@ namespace Content.Shared.Preferences.Loadouts;
public sealed partial class LoadoutPrototype : IPrototype, IEquipmentLoadout
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
/*
* You can either use an existing StartingGearPrototype or specify it inline to avoid bloating yaml.
diff --git a/Content.Shared/Preferences/Loadouts/RoleLoadoutPrototype.cs b/Content.Shared/Preferences/Loadouts/RoleLoadoutPrototype.cs
index 3521ad0095..5609cb078b 100644
--- a/Content.Shared/Preferences/Loadouts/RoleLoadoutPrototype.cs
+++ b/Content.Shared/Preferences/Loadouts/RoleLoadoutPrototype.cs
@@ -14,7 +14,7 @@ public sealed partial class RoleLoadoutPrototype : IPrototype
*/
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
///
/// Can the user edit their entity name for this role loadout?
diff --git a/Content.Shared/Procedural/DungeonConfig.cs b/Content.Shared/Procedural/DungeonConfig.cs
index c4093741ec..2c2adc1803 100644
--- a/Content.Shared/Procedural/DungeonConfig.cs
+++ b/Content.Shared/Procedural/DungeonConfig.cs
@@ -49,7 +49,7 @@ public partial class DungeonConfig
}
[Prototype]
-public sealed class DungeonConfigPrototype : DungeonConfig, IPrototype
+public sealed partial class DungeonConfigPrototype : DungeonConfig, IPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Procedural/DungeonData.cs b/Content.Shared/Procedural/DungeonData.cs
index 58ec966786..f15d974555 100644
--- a/Content.Shared/Procedural/DungeonData.cs
+++ b/Content.Shared/Procedural/DungeonData.cs
@@ -14,7 +14,7 @@ namespace Content.Shared.Procedural;
/// This lets us share data between different dungeon configs without having to repeat entire configs.
///
[DataRecord]
-public sealed class DungeonData
+public sealed partial class DungeonData
{
// I hate this but it also significantly reduces yaml bloat if we add like 10 variations on the same set of layers
// e.g. science rooms, engi rooms, cargo rooms all under PlanetBase for example.
diff --git a/Content.Shared/Procedural/DungeonGenerators/NoiseDunGen.cs b/Content.Shared/Procedural/DungeonGenerators/NoiseDunGen.cs
index 56d63bec8f..a3a7ab61ef 100644
--- a/Content.Shared/Procedural/DungeonGenerators/NoiseDunGen.cs
+++ b/Content.Shared/Procedural/DungeonGenerators/NoiseDunGen.cs
@@ -39,7 +39,7 @@ public sealed partial class NoiseDunGen : IDunGenLayer
}
[DataRecord]
-public record struct NoiseDunGenLayer
+public partial record struct NoiseDunGenLayer
{
///
/// If the noise value is above this then it gets output.
diff --git a/Content.Shared/Procedural/DungeonGenerators/ReplaceTileDunGen.cs b/Content.Shared/Procedural/DungeonGenerators/ReplaceTileDunGen.cs
index 64b76b4ccc..e0e9d5183b 100644
--- a/Content.Shared/Procedural/DungeonGenerators/ReplaceTileDunGen.cs
+++ b/Content.Shared/Procedural/DungeonGenerators/ReplaceTileDunGen.cs
@@ -20,7 +20,7 @@ public sealed partial class ReplaceTileDunGen : IDunGenLayer
}
[DataRecord]
-public record struct ReplaceTileLayer
+public partial record struct ReplaceTileLayer
{
public ProtoId Tile;
diff --git a/Content.Shared/Procedural/DungeonPresetPrototype.cs b/Content.Shared/Procedural/DungeonPresetPrototype.cs
index a143c3c8c0..e57c4c1d2b 100644
--- a/Content.Shared/Procedural/DungeonPresetPrototype.cs
+++ b/Content.Shared/Procedural/DungeonPresetPrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Procedural;
[Prototype("dungeonPreset")]
public sealed partial class DungeonPresetPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// The room pack bounds we need to fill.
diff --git a/Content.Shared/Procedural/DungeonRoomPrototype.cs b/Content.Shared/Procedural/DungeonRoomPrototype.cs
index 418e40f7be..6636ac34b9 100644
--- a/Content.Shared/Procedural/DungeonRoomPrototype.cs
+++ b/Content.Shared/Procedural/DungeonRoomPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Procedural;
[Prototype("dungeonRoom")]
public sealed partial class DungeonRoomPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[ViewVariables(VVAccess.ReadWrite), DataField]
public List> Tags = new();
diff --git a/Content.Shared/Procedural/Loot/SalvageLootPrototype.cs b/Content.Shared/Procedural/Loot/SalvageLootPrototype.cs
index 9e9c0d3e64..8189066a4f 100644
--- a/Content.Shared/Procedural/Loot/SalvageLootPrototype.cs
+++ b/Content.Shared/Procedural/Loot/SalvageLootPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Procedural.Loot;
[Prototype("salvageLoot")]
public sealed partial class SalvageLootPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// Should this loot always spawn if possible. Used for stuff such as ore.
diff --git a/Content.Shared/Procedural/SalvageDifficultyPrototype.cs b/Content.Shared/Procedural/SalvageDifficultyPrototype.cs
index 6bf447fdc7..220bb68066 100644
--- a/Content.Shared/Procedural/SalvageDifficultyPrototype.cs
+++ b/Content.Shared/Procedural/SalvageDifficultyPrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Procedural;
[Prototype("salvageDifficulty")]
public sealed partial class SalvageDifficultyPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
///
/// Color to be used in UI.
diff --git a/Content.Shared/Radio/RadioChannelPrototype.cs b/Content.Shared/Radio/RadioChannelPrototype.cs
index 166db0577e..500dfbd5f6 100644
--- a/Content.Shared/Radio/RadioChannelPrototype.cs
+++ b/Content.Shared/Radio/RadioChannelPrototype.cs
@@ -27,7 +27,7 @@ public sealed partial class RadioChannelPrototype : IPrototype
public Color Color { get; private set; } = Color.Lime;
[IdDataField, ViewVariables]
- public string ID { get; } = default!;
+ public string ID { get; private set; } = default!;
///
/// If channel is long range it doesn't require telecommunication server
diff --git a/Content.Shared/Random/RandomPlantMutationListPrototype.cs b/Content.Shared/Random/RandomPlantMutationListPrototype.cs
index 84e3b9256c..cf36513213 100644
--- a/Content.Shared/Random/RandomPlantMutationListPrototype.cs
+++ b/Content.Shared/Random/RandomPlantMutationListPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Random;
[Prototype("RandomPlantMutationList")]
public sealed partial class RandomPlantMutationListPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// List of RandomFills that can be picked from.
diff --git a/Content.Shared/Random/Rules/RulesSystem.cs b/Content.Shared/Random/Rules/RulesSystem.cs
index 1957beab51..23a363e92e 100644
--- a/Content.Shared/Random/Rules/RulesSystem.cs
+++ b/Content.Shared/Random/Rules/RulesSystem.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Random.Rules;
[Prototype("rules")]
public sealed partial class RulesPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField("rules", required: true)]
public List Rules = new();
diff --git a/Content.Shared/Random/WeightedRandomEntityPrototype.cs b/Content.Shared/Random/WeightedRandomEntityPrototype.cs
index c88f88bbdc..01592ddf8c 100644
--- a/Content.Shared/Random/WeightedRandomEntityPrototype.cs
+++ b/Content.Shared/Random/WeightedRandomEntityPrototype.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Random;
/// Linter-friendly version of weightedRandom for Entity prototypes.
///
[Prototype("weightedRandomEntity")]
-public sealed class WeightedRandomEntityPrototype : IWeightedRandomPrototype
+public sealed partial class WeightedRandomEntityPrototype : IWeightedRandomPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Random/WeightedRandomFillSolutionPrototype.cs b/Content.Shared/Random/WeightedRandomFillSolutionPrototype.cs
index 48dc99799c..c08ac27b9e 100644
--- a/Content.Shared/Random/WeightedRandomFillSolutionPrototype.cs
+++ b/Content.Shared/Random/WeightedRandomFillSolutionPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Random;
[Prototype("weightedRandomFillSolution")]
public sealed partial class WeightedRandomFillSolutionPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// List of RandomFills that can be picked from.
diff --git a/Content.Shared/Random/WeightedRandomOrePrototype.cs b/Content.Shared/Random/WeightedRandomOrePrototype.cs
index f79bb244df..7cd8bba514 100644
--- a/Content.Shared/Random/WeightedRandomOrePrototype.cs
+++ b/Content.Shared/Random/WeightedRandomOrePrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Random;
/// Linter-friendly version of weightedRandom for Ore prototypes.
///
[Prototype("weightedRandomOre")]
-public sealed class WeightedRandomOrePrototype : IWeightedRandomPrototype
+public sealed partial class WeightedRandomOrePrototype : IWeightedRandomPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Random/WeightedRandomPrototype.cs b/Content.Shared/Random/WeightedRandomPrototype.cs
index 6b9e28c416..1ef5df76ba 100644
--- a/Content.Shared/Random/WeightedRandomPrototype.cs
+++ b/Content.Shared/Random/WeightedRandomPrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Random;
/// Generic random weighting dataset to use.
///
[Prototype("weightedRandom")]
-public sealed class WeightedRandomPrototype : IWeightedRandomPrototype
+public sealed partial class WeightedRandomPrototype : IWeightedRandomPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Random/WeightedRandomSpeciesPrototype.cs b/Content.Shared/Random/WeightedRandomSpeciesPrototype.cs
index 4e7ef84227..5d805847d3 100644
--- a/Content.Shared/Random/WeightedRandomSpeciesPrototype.cs
+++ b/Content.Shared/Random/WeightedRandomSpeciesPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Random;
/// Linter-friendly version of weightedRandom for Species prototypes.
///
[Prototype("weightedRandomSpecies")]
-public sealed class WeightedRandomSpeciesPrototype : IWeightedRandomPrototype
+public sealed partial class WeightedRandomSpeciesPrototype : IWeightedRandomPrototype
{
[IdDataField]
public string ID { get; private set; } = default!;
diff --git a/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs b/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
index 0fabbd6716..79525575a6 100644
--- a/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
+++ b/Content.Shared/Research/Prototypes/LatheRecipePrototype.cs
@@ -18,12 +18,12 @@ namespace Content.Shared.Research.Prototypes
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
/// Name displayed in the lathe GUI.
diff --git a/Content.Shared/Robotics/RoboticsConsoleUi.cs b/Content.Shared/Robotics/RoboticsConsoleUi.cs
index 996c65cb0e..7a6974fb51 100644
--- a/Content.Shared/Robotics/RoboticsConsoleUi.cs
+++ b/Content.Shared/Robotics/RoboticsConsoleUi.cs
@@ -58,7 +58,7 @@ public sealed class RoboticsConsoleDestroyMessage : BoundUserInterfaceMessage
/// Created by BorgTransponderComponent and sent to clients by RoboticsConsoleComponent.
///
[DataRecord, Serializable, NetSerializable]
-public record struct CyborgControlData
+public partial record struct CyborgControlData
{
///
/// Texture of the borg chassis.
diff --git a/Content.Shared/Roles/DepartmentPrototype.cs b/Content.Shared/Roles/DepartmentPrototype.cs
index 5c94c90f8b..20710ec11a 100644
--- a/Content.Shared/Roles/DepartmentPrototype.cs
+++ b/Content.Shared/Roles/DepartmentPrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Roles;
public sealed partial class DepartmentPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
///
/// The name LocId of the department that will be displayed in the various menus.
diff --git a/Content.Shared/Roles/StartingGearPrototype.cs b/Content.Shared/Roles/StartingGearPrototype.cs
index b0a4b94e55..2088b4a24a 100644
--- a/Content.Shared/Roles/StartingGearPrototype.cs
+++ b/Content.Shared/Roles/StartingGearPrototype.cs
@@ -17,7 +17,7 @@ public sealed partial class StartingGearPrototype : IPrototype, IInheritingProto
///
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
[DataField]
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageBiomeModPrototype.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageBiomeModPrototype.cs
index 3235741f11..908d583000 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageBiomeModPrototype.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageBiomeModPrototype.cs
@@ -10,7 +10,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageBiomeMod")]
public sealed partial class SalvageBiomeModPrototype : IPrototype, ISalvageMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageDungeonModPrototype.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageDungeonModPrototype.cs
index acce4b3ace..f69ad1969a 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageDungeonModPrototype.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageDungeonModPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageDungeonMod")]
public sealed partial class SalvageDungeonModPrototype : IPrototype, IBiomeSpecificMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageLightMod.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageLightMod.cs
index d744d5c308..8acfd8b7c4 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageLightMod.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageLightMod.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageLightMod")]
public sealed partial class SalvageLightMod : IPrototype, IBiomeSpecificMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageMod.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageMod.cs
index 5226824ed5..5712f27df2 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageMod.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageMod.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageMod")]
public sealed partial class SalvageMod : IPrototype, ISalvageMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageTemperatureMod.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageTemperatureMod.cs
index e8b7235511..8871c14572 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageTemperatureMod.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageTemperatureMod.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageTemperatureMod")]
public sealed partial class SalvageTemperatureMod : IPrototype, IBiomeSpecificMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageWeatherMod.cs b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageWeatherMod.cs
index fc704d49e4..1f3b13daee 100644
--- a/Content.Shared/Salvage/Expeditions/Modifiers/SalvageWeatherMod.cs
+++ b/Content.Shared/Salvage/Expeditions/Modifiers/SalvageWeatherMod.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Salvage.Expeditions.Modifiers;
[Prototype("salvageWeatherMod")]
public sealed partial class SalvageWeatherMod : IPrototype, IBiomeSpecificMod
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/Expeditions/SalvageFactionPrototype.cs b/Content.Shared/Salvage/Expeditions/SalvageFactionPrototype.cs
index 71be4f7bd0..b417842110 100644
--- a/Content.Shared/Salvage/Expeditions/SalvageFactionPrototype.cs
+++ b/Content.Shared/Salvage/Expeditions/SalvageFactionPrototype.cs
@@ -5,7 +5,7 @@ namespace Content.Shared.Salvage.Expeditions;
[Prototype("salvageFaction")]
public sealed partial class SalvageFactionPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[DataField("desc")] public LocId Description { get; private set; } = string.Empty;
diff --git a/Content.Shared/Salvage/SalvageMapPrototype.cs b/Content.Shared/Salvage/SalvageMapPrototype.cs
index f3903926ac..5f1ef7b1db 100644
--- a/Content.Shared/Salvage/SalvageMapPrototype.cs
+++ b/Content.Shared/Salvage/SalvageMapPrototype.cs
@@ -6,7 +6,7 @@ namespace Content.Shared.Salvage;
[Prototype]
public sealed partial class SalvageMapPrototype : IPrototype
{
- [ViewVariables] [IdDataField] public string ID { get; } = default!;
+ [ViewVariables] [IdDataField] public string ID { get; private set; } = default!;
///
/// Relative directory path to the given map, i.e. `Maps/Salvage/template.yml`
diff --git a/Content.Shared/Silicons/Borgs/BorgTypePrototype.cs b/Content.Shared/Silicons/Borgs/BorgTypePrototype.cs
index 6154c12757..2f47dd4cea 100644
--- a/Content.Shared/Silicons/Borgs/BorgTypePrototype.cs
+++ b/Content.Shared/Silicons/Borgs/BorgTypePrototype.cs
@@ -19,7 +19,7 @@ public sealed partial class BorgTypePrototype : IPrototype
private static readonly ProtoId DefaultFootsteps = new("FootstepBorg");
[IdDataField]
- public required string ID { get; init; }
+ public required string ID { get; set; }
//
// Description info (name/desc) is configured via localization strings directly.
@@ -29,7 +29,7 @@ public sealed partial class BorgTypePrototype : IPrototype
/// The prototype displayed in the selection menu for this type.
///
[DataField]
- public required EntProtoId DummyPrototype { get; init; }
+ public required EntProtoId DummyPrototype;
//
// Functional information
diff --git a/Content.Shared/Speech/SpeechVerbPrototype.cs b/Content.Shared/Speech/SpeechVerbPrototype.cs
index 951cac64f7..6cce528977 100644
--- a/Content.Shared/Speech/SpeechVerbPrototype.cs
+++ b/Content.Shared/Speech/SpeechVerbPrototype.cs
@@ -9,7 +9,7 @@ namespace Content.Shared.Speech;
[Prototype("speechVerb")]
public sealed partial class SpeechVerbPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
///
/// Loc strings to be passed to the chat wrapper. 'says', 'states', etc.
diff --git a/Content.Shared/Spreader/EdgeSpreaderPrototype.cs b/Content.Shared/Spreader/EdgeSpreaderPrototype.cs
index 33665d82b5..b6570a0fc8 100644
--- a/Content.Shared/Spreader/EdgeSpreaderPrototype.cs
+++ b/Content.Shared/Spreader/EdgeSpreaderPrototype.cs
@@ -8,7 +8,7 @@ namespace Content.Shared.Spreader;
[Prototype("edgeSpreader")]
public sealed partial class EdgeSpreaderPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = string.Empty;
+ [IdDataField] public string ID { get; private set; } = string.Empty;
[DataField(required:true)] public int UpdatesPerSecond;
///
diff --git a/Content.Shared/StatusIcon/StatusIconPrototype.cs b/Content.Shared/StatusIcon/StatusIconPrototype.cs
index af3cfb133b..7034e225b8 100644
--- a/Content.Shared/StatusIcon/StatusIconPrototype.cs
+++ b/Content.Shared/StatusIcon/StatusIconPrototype.cs
@@ -97,12 +97,12 @@ public sealed partial class JobIconPrototype : StatusIconPrototype, IInheritingP
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
///
/// Name of the icon used for menu tooltips.
@@ -128,12 +128,12 @@ public sealed partial class HealthIconPrototype : StatusIconPrototype, IInheriti
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
///
@@ -144,12 +144,12 @@ public sealed partial class SatiationIconPrototype : StatusIconPrototype, IInher
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
///
@@ -160,12 +160,12 @@ public sealed partial class SecurityIconPrototype : StatusIconPrototype, IInheri
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
///
@@ -176,12 +176,12 @@ public sealed partial class FactionIconPrototype : StatusIconPrototype, IInherit
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
///
@@ -192,12 +192,12 @@ public sealed partial class DebugIconPrototype : StatusIconPrototype, IInheritin
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
///
@@ -208,12 +208,12 @@ public sealed partial class SsdIconPrototype : StatusIconPrototype, IInheritingP
{
///
[ParentDataField(typeof(AbstractPrototypeIdArraySerializer))]
- public string[]? Parents { get; }
+ public string[]? Parents { get; private set; }
///
[NeverPushInheritance]
[AbstractDataField]
- public bool Abstract { get; }
+ public bool Abstract { get; private set; }
}
[Serializable, NetSerializable]
diff --git a/Content.Shared/Storage/EntitySpawnEntry.cs b/Content.Shared/Storage/EntitySpawnEntry.cs
index 6e24681c2d..480863692e 100644
--- a/Content.Shared/Storage/EntitySpawnEntry.cs
+++ b/Content.Shared/Storage/EntitySpawnEntry.cs
@@ -9,10 +9,10 @@ namespace Content.Shared.Storage;
/// Prototype wrapper around
///
[Prototype]
-public sealed class EntitySpawnEntryPrototype : IPrototype
+public sealed partial class EntitySpawnEntryPrototype : IPrototype
{
[IdDataField]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
[DataField]
public List Entries = new();
diff --git a/Content.Shared/StoryGen/Prototypes/StoryTemplatePrototype.cs b/Content.Shared/StoryGen/Prototypes/StoryTemplatePrototype.cs
index 948c7b2dc0..fbae725c10 100644
--- a/Content.Shared/StoryGen/Prototypes/StoryTemplatePrototype.cs
+++ b/Content.Shared/StoryGen/Prototypes/StoryTemplatePrototype.cs
@@ -20,7 +20,7 @@ public sealed partial class StoryTemplatePrototype : IPrototype
/// Localization ID of the Fluent string that forms the structure of this story.
///
[DataField(required: true)]
- public LocId LocId { get; } = default!;
+ public LocId LocId;
///
/// Dictionary containing the name of each variable to pass to the template and the ID of the
@@ -29,5 +29,5 @@ public sealed partial class StoryTemplatePrototype : IPrototype
/// dataset which can then be used in the template by {$name}.
///
[DataField]
- public Dictionary> Variables { get; } = default!;
+ public Dictionary> Variables = [];
}
diff --git a/Content.Shared/Tag/TagPrototype.cs b/Content.Shared/Tag/TagPrototype.cs
index 97f8c1af7d..b89569ca8e 100644
--- a/Content.Shared/Tag/TagPrototype.cs
+++ b/Content.Shared/Tag/TagPrototype.cs
@@ -11,5 +11,5 @@ namespace Content.Shared.Tag;
public sealed partial class TagPrototype : IPrototype
{
[IdDataField, ViewVariables]
- public string ID { get; } = string.Empty;
+ public string ID { get; private set; } = string.Empty;
}
diff --git a/Content.Shared/Weather/WeatherPrototype.cs b/Content.Shared/Weather/WeatherPrototype.cs
index 3803c37d4c..f6959a5336 100644
--- a/Content.Shared/Weather/WeatherPrototype.cs
+++ b/Content.Shared/Weather/WeatherPrototype.cs
@@ -7,7 +7,7 @@ namespace Content.Shared.Weather;
[Prototype("weather")]
public sealed partial class WeatherPrototype : IPrototype
{
- [IdDataField] public string ID { get; } = default!;
+ [IdDataField] public string ID { get; private set; } = default!;
[ViewVariables(VVAccess.ReadWrite), DataField("sprite", required: true)]
public SpriteSpecifier Sprite = default!;