From 7fbc2608e88f9781f2a4159065caf3371de51f42 Mon Sep 17 00:00:00 2001 From: DrSmugleaf Date: Wed, 16 Nov 2022 20:22:11 +0100 Subject: [PATCH] Remove redundant read-only VV from datafields (#12626) --- .../Clickable/ClickableComponent.cs | 13 ++++----- .../Instruments/InstrumentComponent.cs | 1 - .../Inventory/ClientInventoryComponent.cs | 10 ------- .../Components/LightBehaviourComponent.cs | 29 ++++++------------- .../Components/WeaponArcVisualsComponent.cs | 2 +- .../Abilities/Mime/MimePowersComponent.cs | 1 - .../Atmos/Components/AirtightComponent.cs | 5 ---- .../Components/GasMixtureHolderComponent.cs | 2 +- .../Atmos/Components/GasTankComponent.cs | 4 +-- .../Components/MovedByPressureComponent.cs | 1 - Content.Server/Atmos/GasMixture.cs | 2 -- .../Binary/Components/GasValveComponent.cs | 1 - .../Piping/Components/AtmosDeviceComponent.cs | 4 --- Content.Server/Atmos/TileAtmosphere.cs | 1 - .../Bible/Components/SummonableComponent.cs | 2 -- .../Components/ThermalRegulatorComponent.cs | 5 ---- .../Botany/Components/BotanySwabComponent.cs | 1 - .../Components/SeedExtractorComponent.cs | 2 +- .../Buckle/Components/BuckleComponent.cs | 2 -- .../Buckle/Components/StrapComponent.cs | 7 ++--- .../Cabinet/ItemCabinetComponent.cs | 1 - .../Cargo/Components/CargoTelepadComponent.cs | 1 - .../StationCargoOrderDatabaseComponent.cs | 4 +-- .../Chemistry/Components/InjectorComponent.cs | 5 ---- .../Components/RehydratableComponent.cs | 2 -- .../SolutionContainerManagerComponent.cs | 1 - .../Chemistry/Components/VaporComponent.cs | 3 -- .../Climbing/Components/ClimbableComponent.cs | 11 ++++--- .../Construction/Completions/SpriteChange.cs | 2 +- .../Components/ComputerBoardComponent.cs | 1 - .../Components/ComputerComponent.cs | 1 - .../Components/MachineBoardComponent.cs | 4 --- .../Components/MachineFrameComponent.cs | 11 ++----- .../Components/MachinePartComponent.cs | 1 - .../EmptyOnMachineDeconstructComponent.cs | 1 - .../Cuffs/Components/HandcuffComponent.cs | 13 --------- .../Destructible/DestructibleComponent.cs | 1 - .../Thresholds/DamageThreshold.cs | 3 -- .../Destructible/Thresholds/MinMax.cs | 2 -- Content.Server/Dice/DiceComponent.cs | 3 -- .../Components/DiseaseCarrierComponent.cs | 2 +- .../Components/DiseaseMachineComponent.cs | 1 - .../Components/DiseaseSwabComponent.cs | 1 - .../Components/DiseaseVaccineComponent.cs | 1 - .../Components/DisposalJunctionComponent.cs | 3 +- .../Components/DisposalHolderComponent.cs | 1 - .../Unit/Components/DisposalUnitComponent.cs | 2 -- .../Dragon/Components/DragonComponent.cs | 9 +++--- .../Dragon/Components/DragonRiftComponent.cs | 2 +- .../DisassembleOnAltVerbComponent.cs | 2 -- .../Components/SpawnAfterInteractComponent.cs | 4 --- .../Components/EnsnareableComponent.cs | 1 - .../Components/ClusterGrenadeComponent.cs | 4 +-- .../Components/TriggerOnProximityComponent.cs | 5 +--- .../Fluids/Components/AbsorbentComponent.cs | 1 - .../Fluids/Components/PuddleComponent.cs | 2 +- .../Components/GatherableComponent.cs | 1 - Content.Server/Guardian/GuardianComponent.cs | 2 -- .../Guardian/GuardianCreatorComponent.cs | 1 - Content.Server/Holiday/HolidayPrototype.cs | 12 +++----- .../Components/ExtractableComponent.cs | 2 -- .../Light/Components/MatchstickComponent.cs | 3 +- .../Light/Components/PoweredLightComponent.cs | 12 +++----- .../Magic/Components/SpellbookComponent.cs | 1 - .../Magic/Events/InstantSpawnSpellEvent.cs | 2 +- .../BiomassReclaimerComponent.cs | 8 ++--- .../Components/HealthAnalyzerComponent.cs | 3 +- Content.Server/NPC/Components/NPCComponent.cs | 2 +- Content.Server/NPC/HTN/HTNBranch.cs | 4 +-- .../CoordinatesInRangePrecondition.cs | 4 +-- .../CoordinatesNotInRangePrecondition.cs | 4 +-- .../Preconditions/TargetInLOSPrecondition.cs | 4 +-- .../TargetInRangePrecondition.cs | 4 +-- .../Operators/Melee/MeleeOperator.cs | 5 ++-- .../Operators/MoveToOperator.cs | 12 ++++---- .../Operators/NPCCombatOperator.cs | 4 +-- .../PickAccessibleComponentOperator.cs | 7 ++--- .../Operators/PickAccessibleOperator.cs | 5 ++-- .../Operators/PickRandomRotationOperator.cs | 2 +- .../Operators/Ranged/RangedOperator.cs | 4 +-- .../Operators/RotateToTargetOperator.cs | 6 ++-- .../PrimitiveTasks/Operators/SpeakOperator.cs | 2 +- .../Specific/MedibotInjectOperator.cs | 2 +- .../Specific/PickNearbyInjectableOperator.cs | 6 ++-- .../PrimitiveTasks/Operators/WaitOperator.cs | 2 +- .../NodeContainer/NodeContainerComponent.cs | 2 +- Content.Server/NodeContainer/Nodes/Node.cs | 1 - .../NodeContainer/Nodes/PipeNode.cs | 2 -- .../Nutrition/Components/DrinkComponent.cs | 6 ++-- .../Nutrition/Components/FoodComponent.cs | 3 -- .../Components/TrashOnEmptyComponent.cs | 2 +- .../Nutrition/Components/UtensilComponent.cs | 2 -- .../Objectives/Conditions/StealCondition.cs | 2 -- .../Objectives/ObjectivePrototype.cs | 5 ++-- Content.Server/PDA/Ringer/RingerComponent.cs | 1 - .../Power/Components/ApcComponent.cs | 2 -- .../Components/BaseNetConnectorComponent.cs | 2 +- .../Power/Components/CablePlacerComponent.cs | 2 -- .../Power/Components/ChargerComponent.cs | 3 -- Content.Server/RCD/Components/RCDComponent.cs | 1 - Content.Server/RatKing/RatKingComponent.cs | 4 +-- .../Recycling/Components/RecyclerComponent.cs | 1 - .../Resist/CanEscapeInventoryComponent.cs | 1 - .../Resist/ResistLockerComponent.cs | 1 - .../Salvage/SalvageMagnetComponent.cs | 4 +-- Content.Server/Salvage/SalvageMapPrototype.cs | 4 --- .../Shuttles/Components/DockingComponent.cs | 3 +- .../Components/RecentlyDockedComponent.cs | 2 +- .../Shuttles/Components/ThrusterComponent.cs | 5 ++-- .../Components/ContainmentFieldComponent.cs | 2 -- .../ContainmentFieldGeneratorComponent.cs | 5 ---- .../Components/EmitterComponent.cs | 18 ++++++------ .../Solar/Components/SolarPanelComponent.cs | 1 - .../Components/EntityStorageComponent.cs | 3 -- .../Components/SecretStashComponent.cs | 5 ++-- .../Store/Components/StoreComponent.cs | 7 ++--- Content.Server/Strip/StrippableComponent.cs | 1 - .../Components/StunOnCollideComponent.cs | 2 +- .../Components/LatticeCuttingComponent.cs | 6 +--- .../Tools/Components/TilePryingComponent.cs | 3 -- .../UserInterface/ActivatableUIComponent.cs | 2 -- .../UserInterface/IntrinsicUIComponent.cs | 2 +- .../Components/RangedDamageSoundComponent.cs | 4 +-- Content.Server/Wires/WiresComponent.cs | 4 --- .../Components/AccessReaderComponent.cs | 1 - .../SharedIdCardConsoleComponent.cs | 1 - .../Atmos/Monitor/AtmosAlarmThreshold.cs | 5 ---- .../Beam/Components/SharedBeamComponent.cs | 6 ---- .../Blocking/Components/BlockingComponent.cs | 1 - .../Components/BlockingUserComponent.cs | 3 -- .../Body/Components/BodyComponent.cs | 3 -- Content.Shared/Body/Organ/OrganComponent.cs | 2 -- Content.Shared/Body/Part/BodyPartComponent.cs | 7 ----- .../Components/SharedBuckleComponent.cs | 1 - .../Components/CardboardBoxComponent.cs | 1 - .../Cargo/Components/CargoShuttleComponent.cs | 2 +- .../Cargo/Prototypes/CargoProductPrototype.cs | 5 ---- .../Cargo/Prototypes/CargoShuttlePrototype.cs | 4 +-- .../Chemistry/Components/Solution.cs | 1 - .../Climbing/SharedClimbableComponent.cs | 2 +- .../Construction/ConstructionGraphEdge.cs | 1 - .../Construction/ConstructionGraphNode.cs | 2 -- .../Prototypes/ConstructionGraphPrototype.cs | 1 - .../Crayon/SharedCrayonComponent.cs | 2 +- .../Damage/Components/StaminaComponent.cs | 3 +- .../Dragon/SharedDragonRiftComponent.cs | 2 +- .../EntityList/EntityListPrototype.cs | 1 - Content.Shared/Humanoid/Markings/Marking.cs | 1 - .../Components/SharedKitchenSpikeComponent.cs | 1 - Content.Shared/Lathe/LatheComponent.cs | 1 - .../Light/Component/HandheldLightComponent.cs | 2 -- .../SharedExpendableLightComponent.cs | 11 ------- .../Components/SharedLightningComponent.cs | 3 -- Content.Shared/Materials/MaterialComponent.cs | 1 - Content.Shared/Materials/MaterialPrototype.cs | 4 --- .../Materials/MaterialStorageComponent.cs | 4 +-- .../MobState/Components/MobStateComponent.cs | 1 - .../Movement/Components/JetpackComponent.cs | 3 +- .../Components/SlowContactsComponent.cs | 4 +-- .../Nutrition/Components/CreamPieComponent.cs | 2 -- .../Components/SharedButcherableComponent.cs | 1 - Content.Shared/Paper/StampComponent.cs | 2 -- .../Placeable/PlaceableSurfaceComponent.cs | 3 -- Content.Shared/Radio/RadioChannelPrototype.cs | 8 ++--- .../Prototypes/TechnologyPrototype.cs | 4 --- .../Revenant/Components/RevenantComponent.cs | 12 ++++---- Content.Shared/Roles/JobPrototype.cs | 2 +- .../Components/RadarConsoleComponent.cs | 2 +- Content.Shared/Slippery/SlipperyComponent.cs | 1 - .../Components/TimedDespawnComponent.cs | 1 - Content.Shared/Tag/TagComponent.cs | 4 +-- .../Ranged/Components/AmmoComponent.cs | 5 ++-- .../BallisticAmmoProviderComponent.cs | 2 +- .../BatteryAmmoProviderComponent.cs | 2 +- .../Ranged/Components/FlyBySoundComponent.cs | 2 +- .../Weapons/Ranged/Components/GunComponent.cs | 8 ++--- .../RevolverAmmoProviderComponent.cs | 12 ++++---- .../Weapons/Ranged/HitscanPrototype.cs | 6 ++-- Content.Shared/Zombies/ZombieComponent.cs | 2 +- 179 files changed, 171 insertions(+), 462 deletions(-) diff --git a/Content.Client/Clickable/ClickableComponent.cs b/Content.Client/Clickable/ClickableComponent.cs index 017fef9ca2..231972e0a7 100644 --- a/Content.Client/Clickable/ClickableComponent.cs +++ b/Content.Client/Clickable/ClickableComponent.cs @@ -1,4 +1,3 @@ -using System; using Robust.Client.GameObjects; using Robust.Client.Graphics; using Robust.Client.Utility; @@ -13,7 +12,7 @@ namespace Content.Client.Clickable [Dependency] private readonly IEyeManager _eyeManager = default!; [Dependency] private readonly IEntityManager _entMan = default!; - [ViewVariables] [DataField("bounds")] public DirBoundData? Bounds; + [DataField("bounds")] public DirBoundData? Bounds; /// /// Used to check whether a click worked. Will first check if the click falls inside of some explicit bounding @@ -133,11 +132,11 @@ namespace Content.Client.Clickable [DataDefinition] public sealed class DirBoundData { - [ViewVariables] [DataField("all")] public Box2 All; - [ViewVariables] [DataField("north")] public Box2 North; - [ViewVariables] [DataField("south")] public Box2 South; - [ViewVariables] [DataField("east")] public Box2 East; - [ViewVariables] [DataField("west")] public Box2 West; + [DataField("all")] public Box2 All; + [DataField("north")] public Box2 North; + [DataField("south")] public Box2 South; + [DataField("east")] public Box2 East; + [DataField("west")] public Box2 West; } } } diff --git a/Content.Client/Instruments/InstrumentComponent.cs b/Content.Client/Instruments/InstrumentComponent.cs index 66f0050723..aab27888f6 100644 --- a/Content.Client/Instruments/InstrumentComponent.cs +++ b/Content.Client/Instruments/InstrumentComponent.cs @@ -39,7 +39,6 @@ public sealed class InstrumentComponent : SharedInstrumentComponent /// /// Whether this instrument is handheld or not. /// - [ViewVariables] [DataField("handheld")] public bool Handheld { get; set; } // TODO: Replace this by simply checking if the entity has an ItemComponent. diff --git a/Content.Client/Inventory/ClientInventoryComponent.cs b/Content.Client/Inventory/ClientInventoryComponent.cs index d0e514d056..833b0c7bea 100644 --- a/Content.Client/Inventory/ClientInventoryComponent.cs +++ b/Content.Client/Inventory/ClientInventoryComponent.cs @@ -1,13 +1,4 @@ -using System.Collections.Generic; -using Content.Client.UserInterface.Controls; using Content.Shared.Inventory; -using Robust.Client.UserInterface; -using Robust.Client.UserInterface.CustomControls; -using Robust.Shared.Analyzers; -using Robust.Shared.GameObjects; -using Robust.Shared.IoC; -using Robust.Shared.Serialization.Manager.Attributes; -using Robust.Shared.ViewVariables; namespace Content.Client.Inventory { @@ -19,7 +10,6 @@ namespace Content.Client.Inventory [Access(typeof(ClientInventorySystem))] public sealed class ClientInventoryComponent : InventoryComponent { - [ViewVariables] [DataField("speciesId")] public string? SpeciesId { get; set; } [ViewVariables] public readonly Dictionary SlotData = new (); diff --git a/Content.Client/Light/Components/LightBehaviourComponent.cs b/Content.Client/Light/Components/LightBehaviourComponent.cs index a4a45d01d6..5f574cdd5b 100644 --- a/Content.Client/Light/Components/LightBehaviourComponent.cs +++ b/Content.Client/Light/Components/LightBehaviourComponent.cs @@ -1,19 +1,11 @@ -using System; -using System.Collections.Generic; -using System.Linq; +using System.Linq; using Content.Shared.Light.Component; using JetBrains.Annotations; using Robust.Client.Animations; using Robust.Client.GameObjects; using Robust.Shared.Animations; -using Robust.Shared.GameObjects; -using Robust.Shared.IoC; -using Robust.Shared.Log; -using Robust.Shared.Maths; using Robust.Shared.Random; using Robust.Shared.Serialization; -using Robust.Shared.Serialization.Manager.Attributes; -using Robust.Shared.ViewVariables; namespace Content.Client.Light.Components { @@ -29,25 +21,24 @@ namespace Content.Client.Light.Components protected IEntityManager _entMan = default!; protected IRobustRandom _random = default!; - [DataField("id")] [ViewVariables] public string ID { get; set; } = string.Empty; + [DataField("id")] public string ID { get; set; } = string.Empty; [DataField("property")] - [ViewVariables] public virtual string Property { get; protected set; } = "Radius"; - [DataField("isLooped")] [ViewVariables] public bool IsLooped { get; set; } + [DataField("isLooped")] public bool IsLooped { get; set; } - [DataField("enabled")] [ViewVariables] public bool Enabled { get; set; } + [DataField("enabled")] public bool Enabled { get; set; } - [DataField("startValue")] [ViewVariables] public float StartValue { get; set; } = 0f; + [DataField("startValue")] public float StartValue { get; set; } = 0f; - [DataField("endValue")] [ViewVariables] public float EndValue { get; set; } = 2f; + [DataField("endValue")] public float EndValue { get; set; } = 2f; - [DataField("minDuration")] [ViewVariables] public float MinDuration { get; set; } = -1f; + [DataField("minDuration")] public float MinDuration { get; set; } = -1f; - [DataField("maxDuration")] [ViewVariables] public float MaxDuration { get; set; } = 2f; + [DataField("maxDuration")] public float MaxDuration { get; set; } = 2f; - [DataField("interpolate")] [ViewVariables] public AnimationInterpolationMode InterpolateMode { get; set; } = AnimationInterpolationMode.Linear; + [DataField("interpolate")] public AnimationInterpolationMode InterpolateMode { get; set; } = AnimationInterpolationMode.Linear; [ViewVariables] protected float MaxTime { get; set; } @@ -182,7 +173,6 @@ namespace Content.Client.Light.Components /// time of the full animation, including the reverse interpolation. /// [DataField("reverseWhenFinished")] - [ViewVariables] public bool ReverseWhenFinished { get; set; } public override (int KeyFrameIndex, float FramePlayingTime) AdvancePlayback( @@ -308,7 +298,6 @@ namespace Content.Client.Light.Components public sealed class ColorCycleBehaviour : LightBehaviourAnimationTrack, ISerializationHooks { [DataField("property")] - [ViewVariables] public override string Property { get; protected set; } = "Color"; [DataField("colors")] public List ColorsToCycle { get; set; } = new(); diff --git a/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs b/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs index f12bbc76ef..9c6d55b062 100644 --- a/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs +++ b/Content.Client/Weapons/Melee/Components/WeaponArcVisualsComponent.cs @@ -6,7 +6,7 @@ namespace Content.Client.Weapons.Melee.Components; [RegisterComponent] public sealed class WeaponArcVisualsComponent : Component { - [ViewVariables, DataField("animation")] + [DataField("animation")] public WeaponArcAnimation Animation = WeaponArcAnimation.None; [ViewVariables(VVAccess.ReadWrite), DataField("fadeOut")] diff --git a/Content.Server/Abilities/Mime/MimePowersComponent.cs b/Content.Server/Abilities/Mime/MimePowersComponent.cs index 9009120d14..b2bd3ba2e3 100644 --- a/Content.Server/Abilities/Mime/MimePowersComponent.cs +++ b/Content.Server/Abilities/Mime/MimePowersComponent.cs @@ -15,7 +15,6 @@ namespace Content.Server.Abilities.Mime /// /// Whether this component is active or not. /// - [ViewVariables] [DataField("enabled")] public bool Enabled = true; diff --git a/Content.Server/Atmos/Components/AirtightComponent.cs b/Content.Server/Atmos/Components/AirtightComponent.cs index 2060839481..bd18971b95 100644 --- a/Content.Server/Atmos/Components/AirtightComponent.cs +++ b/Content.Server/Atmos/Components/AirtightComponent.cs @@ -1,5 +1,4 @@ using Content.Shared.Atmos; -using Robust.Shared.Map; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; namespace Content.Server.Atmos.Components @@ -10,7 +9,6 @@ namespace Content.Server.Atmos.Components public (EntityUid Grid, Vector2i Tile) LastPosition { get; set; } [DataField("airBlockedDirection", customTypeSerializer: typeof(FlagSerializer))] - [ViewVariables] public int InitialAirBlockedDirection { get; set; } = (int) AtmosDirection.All; [ViewVariables] @@ -22,15 +20,12 @@ namespace Content.Server.Atmos.Components [DataField("fixVacuum")] public bool FixVacuum { get; set; } = true; - [ViewVariables] [DataField("rotateAirBlocked")] public bool RotateAirBlocked { get; set; } = true; - [ViewVariables] [DataField("fixAirBlockedDirectionInitialize")] public bool FixAirBlockedDirectionInitialize { get; set; } = true; - [ViewVariables] [DataField("noAirWhenFullyAirBlocked")] public bool NoAirWhenFullyAirBlocked { get; set; } = true; diff --git a/Content.Server/Atmos/Components/GasMixtureHolderComponent.cs b/Content.Server/Atmos/Components/GasMixtureHolderComponent.cs index 4dbe4424e6..819c096482 100644 --- a/Content.Server/Atmos/Components/GasMixtureHolderComponent.cs +++ b/Content.Server/Atmos/Components/GasMixtureHolderComponent.cs @@ -3,6 +3,6 @@ [RegisterComponent] public sealed class GasMixtureHolderComponent : Component, IGasMixtureHolder { - [ViewVariables] [DataField("air")] public GasMixture Air { get; set; } = new GasMixture(); + [DataField("air")] public GasMixture Air { get; set; } = new GasMixture(); } } diff --git a/Content.Server/Atmos/Components/GasTankComponent.cs b/Content.Server/Atmos/Components/GasTankComponent.cs index ddfa274357..b35db8d22a 100644 --- a/Content.Server/Atmos/Components/GasTankComponent.cs +++ b/Content.Server/Atmos/Components/GasTankComponent.cs @@ -32,20 +32,18 @@ namespace Content.Server.Atmos.Components public IPlayingAudioStream? ConnectStream; public IPlayingAudioStream? DisconnectStream; - [DataField("air")] [ViewVariables] public GasMixture Air { get; set; } = new(); + [DataField("air")] public GasMixture Air { get; set; } = new(); /// /// Pressure at which tank should be considered 'low' such as for internals. /// [DataField("tankLowPressure")] - [ViewVariables] public float TankLowPressure { get; set; } = DefaultLowPressure; /// /// Distributed pressure. /// [DataField("outputPressure")] - [ViewVariables] public float OutputPressure { get; set; } = DefaultOutputPressure; /// diff --git a/Content.Server/Atmos/Components/MovedByPressureComponent.cs b/Content.Server/Atmos/Components/MovedByPressureComponent.cs index 4fcc9cb91c..7fcdb85b62 100644 --- a/Content.Server/Atmos/Components/MovedByPressureComponent.cs +++ b/Content.Server/Atmos/Components/MovedByPressureComponent.cs @@ -13,7 +13,6 @@ namespace Content.Server.Atmos.Components /// /// Accumulates time when yeeted by high pressure deltas. /// - [ViewVariables] [DataField("accumulator")] public float Accumulator = 0f; diff --git a/Content.Server/Atmos/GasMixture.cs b/Content.Server/Atmos/GasMixture.cs index 2b84daa697..bacd3a709c 100644 --- a/Content.Server/Atmos/GasMixture.cs +++ b/Content.Server/Atmos/GasMixture.cs @@ -1,7 +1,6 @@ using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Runtime.CompilerServices; -using Content.Server.Atmos.EntitySystems; using Content.Server.Atmos.Reactions; using Content.Shared.Atmos; using Robust.Shared.Serialization; @@ -27,7 +26,6 @@ namespace Content.Server.Atmos private float _temperature = Atmospherics.TCMB; [DataField("immutable")] - [ViewVariables] public bool Immutable { get; private set; } [ViewVariables] diff --git a/Content.Server/Atmos/Piping/Binary/Components/GasValveComponent.cs b/Content.Server/Atmos/Piping/Binary/Components/GasValveComponent.cs index 40aea06dd4..abb0becfde 100644 --- a/Content.Server/Atmos/Piping/Binary/Components/GasValveComponent.cs +++ b/Content.Server/Atmos/Piping/Binary/Components/GasValveComponent.cs @@ -5,7 +5,6 @@ namespace Content.Server.Atmos.Piping.Binary.Components [RegisterComponent] public sealed class GasValveComponent : Component { - [ViewVariables] [DataField("open")] public bool Open { get; set; } = true; diff --git a/Content.Server/Atmos/Piping/Components/AtmosDeviceComponent.cs b/Content.Server/Atmos/Piping/Components/AtmosDeviceComponent.cs index 5988245918..d4e153dd97 100644 --- a/Content.Server/Atmos/Piping/Components/AtmosDeviceComponent.cs +++ b/Content.Server/Atmos/Piping/Components/AtmosDeviceComponent.cs @@ -1,6 +1,3 @@ -using Content.Server.Atmos.Components; -using Robust.Shared.Map; - namespace Content.Server.Atmos.Piping.Components { /// @@ -19,7 +16,6 @@ namespace Content.Server.Atmos.Piping.Components /// /// Whether this device will join an entity system to process when not in a grid. /// - [ViewVariables] [DataField("joinSystem")] public bool JoinSystem { get; } = false; diff --git a/Content.Server/Atmos/TileAtmosphere.cs b/Content.Server/Atmos/TileAtmosphere.cs index 95ba843fb5..a380154296 100644 --- a/Content.Server/Atmos/TileAtmosphere.cs +++ b/Content.Server/Atmos/TileAtmosphere.cs @@ -88,7 +88,6 @@ namespace Content.Server.Atmos [Access(typeof(AtmosphereSystem), Other = AccessPermissions.ReadExecute)] // FIXME Friends public GasMixture? Air { get; set; } - [ViewVariables] [DataField("lastShare")] public float LastShare; diff --git a/Content.Server/Bible/Components/SummonableComponent.cs b/Content.Server/Bible/Components/SummonableComponent.cs index 11ea7ab16b..97c4ad41a3 100644 --- a/Content.Server/Bible/Components/SummonableComponent.cs +++ b/Content.Server/Bible/Components/SummonableComponent.cs @@ -37,10 +37,8 @@ namespace Content.Server.Bible.Components }; /// Used for respawning - [ViewVariables] [DataField("accumulator")] public float Accumulator = 0f; - [ViewVariables] [DataField("respawnTime")] public float RespawnTime = 180f; } diff --git a/Content.Server/Body/Components/ThermalRegulatorComponent.cs b/Content.Server/Body/Components/ThermalRegulatorComponent.cs index 15d11f3830..a600468545 100644 --- a/Content.Server/Body/Components/ThermalRegulatorComponent.cs +++ b/Content.Server/Body/Components/ThermalRegulatorComponent.cs @@ -9,28 +9,24 @@ public sealed class ThermalRegulatorComponent : Component /// /// Heat generated due to metabolism. It's generated via metabolism /// - [ViewVariables] [DataField("metabolismHeat")] public float MetabolismHeat { get; private set; } /// /// Heat output via radiation. /// - [ViewVariables] [DataField("radiatedHeat")] public float RadiatedHeat { get; private set; } /// /// Maximum heat regulated via sweat /// - [ViewVariables] [DataField("sweatHeatRegulation")] public float SweatHeatRegulation { get; private set; } /// /// Maximum heat regulated via shivering /// - [ViewVariables] [DataField("shiveringHeatRegulation")] public float ShiveringHeatRegulation { get; private set; } @@ -44,7 +40,6 @@ public sealed class ThermalRegulatorComponent : Component /// /// Normal body temperature /// - [ViewVariables] [DataField("normalBodyTemperature")] public float NormalBodyTemperature { get; private set; } diff --git a/Content.Server/Botany/Components/BotanySwabComponent.cs b/Content.Server/Botany/Components/BotanySwabComponent.cs index 004bed915d..d2b1b7057a 100644 --- a/Content.Server/Botany/Components/BotanySwabComponent.cs +++ b/Content.Server/Botany/Components/BotanySwabComponent.cs @@ -9,7 +9,6 @@ namespace Content.Server.Botany public sealed class BotanySwabComponent : Component { [DataField("swabDelay")] - [ViewVariables] public float SwabDelay = 2f; /// diff --git a/Content.Server/Botany/Components/SeedExtractorComponent.cs b/Content.Server/Botany/Components/SeedExtractorComponent.cs index cecce43731..b10074c3f9 100644 --- a/Content.Server/Botany/Components/SeedExtractorComponent.cs +++ b/Content.Server/Botany/Components/SeedExtractorComponent.cs @@ -37,6 +37,6 @@ public sealed class SeedExtractorComponent : Component /// How much the machine part quality affects the amount of seeds outputted. /// Going up a tier will multiply the seed output by this amount. /// - [DataField("partRatingSeedAmountMultiplier"), ViewVariables] + [DataField("partRatingSeedAmountMultiplier")] public float PartRatingSeedAmountMultiplier = 1.5f; } diff --git a/Content.Server/Buckle/Components/BuckleComponent.cs b/Content.Server/Buckle/Components/BuckleComponent.cs index 78ddca294b..974a49d171 100644 --- a/Content.Server/Buckle/Components/BuckleComponent.cs +++ b/Content.Server/Buckle/Components/BuckleComponent.cs @@ -14,7 +14,6 @@ public sealed class BuckleComponent : SharedBuckleComponent /// be able to unbuckle after recently buckling. /// [DataField("delay")] - [ViewVariables] public TimeSpan UnbuckleDelay = TimeSpan.FromSeconds(0.25f); /// @@ -33,6 +32,5 @@ public sealed class BuckleComponent : SharedBuckleComponent /// . /// [DataField("size")] - [ViewVariables] public int Size = 100; } diff --git a/Content.Server/Buckle/Components/StrapComponent.cs b/Content.Server/Buckle/Components/StrapComponent.cs index 05da267de1..12c0157d89 100644 --- a/Content.Server/Buckle/Components/StrapComponent.cs +++ b/Content.Server/Buckle/Components/StrapComponent.cs @@ -16,13 +16,13 @@ namespace Content.Server.Buckle.Components /// /// The angle in degrees to rotate the player by when they get strapped /// - [ViewVariables] [DataField("rotation")] + [DataField("rotation")] private int _rotation; /// /// The size of the strap which is compared against when buckling entities /// - [ViewVariables] [DataField("size")] private int _size = 100; + [DataField("size")] private int _size = 100; private int _occupiedSize; private bool _enabled = true; @@ -49,21 +49,18 @@ namespace Content.Server.Buckle.Components /// /// The sound to be played when a mob is buckled /// - [ViewVariables] [DataField("buckleSound")] public SoundSpecifier BuckleSound { get; } = new SoundPathSpecifier("/Audio/Effects/buckle.ogg"); /// /// The sound to be played when a mob is unbuckled /// - [ViewVariables] [DataField("unbuckleSound")] public SoundSpecifier UnbuckleSound { get; } = new SoundPathSpecifier("/Audio/Effects/unbuckle.ogg"); /// /// ID of the alert to show when buckled /// - [ViewVariables] [DataField("buckledAlertType")] public AlertType BuckledAlertType { get; } = AlertType.Buckled; diff --git a/Content.Server/Cabinet/ItemCabinetComponent.cs b/Content.Server/Cabinet/ItemCabinetComponent.cs index 127d2ef08c..92cdb87e26 100644 --- a/Content.Server/Cabinet/ItemCabinetComponent.cs +++ b/Content.Server/Cabinet/ItemCabinetComponent.cs @@ -26,7 +26,6 @@ namespace Content.Server.Cabinet /// /// Whether the cabinet is currently open or not. /// - [ViewVariables] [DataField("opened")] public bool Opened { get; set; } = false; } diff --git a/Content.Server/Cargo/Components/CargoTelepadComponent.cs b/Content.Server/Cargo/Components/CargoTelepadComponent.cs index f05f5737c5..ee3ad9e673 100644 --- a/Content.Server/Cargo/Components/CargoTelepadComponent.cs +++ b/Content.Server/Cargo/Components/CargoTelepadComponent.cs @@ -20,7 +20,6 @@ namespace Content.Server.Cargo.Components /// /// How much time we've accumulated until next teleport. /// - [ViewVariables] [DataField("accumulator")] public float Accumulator = 0f; diff --git a/Content.Server/Cargo/Components/StationCargoOrderDatabaseComponent.cs b/Content.Server/Cargo/Components/StationCargoOrderDatabaseComponent.cs index 5fba54f31d..e95f4d0644 100644 --- a/Content.Server/Cargo/Components/StationCargoOrderDatabaseComponent.cs +++ b/Content.Server/Cargo/Components/StationCargoOrderDatabaseComponent.cs @@ -24,12 +24,12 @@ public sealed class StationCargoOrderDatabaseComponent : Component /// public int Index; - [ViewVariables, DataField("cargoShuttleProto", customTypeSerializer:typeof(PrototypeIdSerializer))] + [DataField("cargoShuttleProto", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? CargoShuttleProto = "CargoShuttle"; /// /// The cargo shuttle assigned to this station. /// - [ViewVariables, DataField("shuttle")] + [DataField("shuttle")] public EntityUid? Shuttle; } diff --git a/Content.Server/Chemistry/Components/InjectorComponent.cs b/Content.Server/Chemistry/Components/InjectorComponent.cs index 032a469a1c..e263968985 100644 --- a/Content.Server/Chemistry/Components/InjectorComponent.cs +++ b/Content.Server/Chemistry/Components/InjectorComponent.cs @@ -1,9 +1,6 @@ using System.Threading; using Content.Shared.Chemistry.Components; using Content.Shared.FixedPoint; -using Content.Server.UserInterface; -using Robust.Server.GameObjects; -using Content.Shared.Chemistry; namespace Content.Server.Chemistry.Components { @@ -21,7 +18,6 @@ namespace Content.Server.Chemistry.Components /// Whether or not the injector is able to draw from containers or if it's a single use /// device that can only inject. /// - [ViewVariables] [DataField("injectOnly")] public bool InjectOnly; @@ -31,7 +27,6 @@ namespace Content.Server.Chemistry.Components /// /// for example: droppers would ignore mobs /// - [ViewVariables] [DataField("ignoreMobs")] public bool IgnoreMobs = false; diff --git a/Content.Server/Chemistry/Components/RehydratableComponent.cs b/Content.Server/Chemistry/Components/RehydratableComponent.cs index a6a8d279f4..413ecc358c 100644 --- a/Content.Server/Chemistry/Components/RehydratableComponent.cs +++ b/Content.Server/Chemistry/Components/RehydratableComponent.cs @@ -7,11 +7,9 @@ namespace Content.Server.Chemistry.Components [RegisterComponent] public sealed class RehydratableComponent : Component { - [ViewVariables] [DataField("catalyst")] internal string CatalystPrototype = "Water"; - [ViewVariables] [DataField("target")] internal string? TargetPrototype = default!; diff --git a/Content.Server/Chemistry/Components/SolutionManager/SolutionContainerManagerComponent.cs b/Content.Server/Chemistry/Components/SolutionManager/SolutionContainerManagerComponent.cs index bc4eb9612b..69ceb55333 100644 --- a/Content.Server/Chemistry/Components/SolutionManager/SolutionContainerManagerComponent.cs +++ b/Content.Server/Chemistry/Components/SolutionManager/SolutionContainerManagerComponent.cs @@ -7,7 +7,6 @@ namespace Content.Server.Chemistry.Components.SolutionManager [Access(typeof(SolutionContainerSystem))] public sealed class SolutionContainerManagerComponent : Component { - [ViewVariables] [DataField("solutions")] [Access(typeof(SolutionContainerSystem), Other = AccessPermissions.ReadExecute)] // FIXME Friends public readonly Dictionary Solutions = new(); diff --git a/Content.Server/Chemistry/Components/VaporComponent.cs b/Content.Server/Chemistry/Components/VaporComponent.cs index 5f8db633b1..95259d995c 100644 --- a/Content.Server/Chemistry/Components/VaporComponent.cs +++ b/Content.Server/Chemistry/Components/VaporComponent.cs @@ -1,6 +1,4 @@ using Content.Shared.FixedPoint; -using Content.Shared.Vapor; -using Robust.Shared.Map; namespace Content.Server.Chemistry.Components { @@ -9,7 +7,6 @@ namespace Content.Server.Chemistry.Components { public const string SolutionName = "vapor"; - [ViewVariables] [DataField("transferAmount")] public FixedPoint2 TransferAmount = FixedPoint2.New(0.5); diff --git a/Content.Server/Climbing/Components/ClimbableComponent.cs b/Content.Server/Climbing/Components/ClimbableComponent.cs index 53cd673d5c..1655b4d225 100644 --- a/Content.Server/Climbing/Components/ClimbableComponent.cs +++ b/Content.Server/Climbing/Components/ClimbableComponent.cs @@ -12,39 +12,38 @@ public sealed class ClimbableComponent : SharedClimbableComponent /// /// The time it takes to climb onto the entity. /// - [ViewVariables] [DataField("delay")] public float ClimbDelay = 0.8f; /// /// If set, people can bonk on this if is set or if they are clumsy. /// - [ViewVariables] [DataField("bonk")] public bool Bonk = false; + [DataField("bonk")] public bool Bonk = false; /// /// Chance of bonk triggering if the user is clumsy. /// - [ViewVariables] [DataField("bonkClumsyChance")] + [DataField("bonkClumsyChance")] public float BonkClumsyChance = 0.75f; /// /// Sound to play when bonking. /// /// - [ViewVariables] [DataField("bonkSound")] + [DataField("bonkSound")] public SoundSpecifier? BonkSound; /// /// How long to stun players on bonk, in seconds. /// /// - [ViewVariables] [DataField("bonkTime")] + [DataField("bonkTime")] public float BonkTime = 2; /// /// How much damage to apply on bonk. /// /// - [ViewVariables] [DataField("bonkDamage")] + [DataField("bonkDamage")] public DamageSpecifier? BonkDamage; } diff --git a/Content.Server/Construction/Completions/SpriteChange.cs b/Content.Server/Construction/Completions/SpriteChange.cs index ea42bd110a..0592b112fc 100644 --- a/Content.Server/Construction/Completions/SpriteChange.cs +++ b/Content.Server/Construction/Completions/SpriteChange.cs @@ -10,7 +10,7 @@ namespace Content.Server.Construction.Completions public sealed class SpriteChange : IGraphAction { [DataField("layer")] public int Layer { get; private set; } = 0; - [DataField("specifier")] public SpriteSpecifier? SpriteSpecifier { get; private set; } = SpriteSpecifier.Invalid; + [DataField("specifier")] public SpriteSpecifier? SpriteSpecifier { get; private set; } = SpriteSpecifier.Invalid; public void PerformAction(EntityUid uid, EntityUid? userUid, IEntityManager entityManager) { diff --git a/Content.Server/Construction/Components/ComputerBoardComponent.cs b/Content.Server/Construction/Components/ComputerBoardComponent.cs index 4937764fcc..a75ab34b80 100644 --- a/Content.Server/Construction/Components/ComputerBoardComponent.cs +++ b/Content.Server/Construction/Components/ComputerBoardComponent.cs @@ -9,7 +9,6 @@ namespace Content.Server.Construction.Components [RegisterComponent] public sealed class ComputerBoardComponent : Component { - [ViewVariables] [DataField("prototype", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? Prototype { get; private set; } } diff --git a/Content.Server/Construction/Components/ComputerComponent.cs b/Content.Server/Construction/Components/ComputerComponent.cs index 0a9d1c8c6f..b0e8d03b20 100644 --- a/Content.Server/Construction/Components/ComputerComponent.cs +++ b/Content.Server/Construction/Components/ComputerComponent.cs @@ -6,7 +6,6 @@ namespace Content.Server.Construction.Components [RegisterComponent, ComponentProtoName("Computer")] public sealed class ComputerComponent : Component { - [ViewVariables] [DataField("board", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? BoardPrototype; } diff --git a/Content.Server/Construction/Components/MachineBoardComponent.cs b/Content.Server/Construction/Components/MachineBoardComponent.cs index 5f8ff53fb4..3e324f6565 100644 --- a/Content.Server/Construction/Components/MachineBoardComponent.cs +++ b/Content.Server/Construction/Components/MachineBoardComponent.cs @@ -10,19 +10,15 @@ namespace Content.Server.Construction.Components { [Dependency] private readonly IPrototypeManager _prototypeManager = default!; - [ViewVariables] [DataField("requirements", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public readonly Dictionary Requirements = new(); - [ViewVariables] [DataField("materialRequirements")] public readonly Dictionary MaterialIdRequirements = new(); - [ViewVariables] [DataField("tagRequirements")] public readonly Dictionary TagRequirements = new(); - [ViewVariables] [DataField("componentRequirements")] public readonly Dictionary ComponentRequirements = new(); diff --git a/Content.Server/Construction/Components/MachineFrameComponent.cs b/Content.Server/Construction/Components/MachineFrameComponent.cs index 18121c260a..4606a46479 100644 --- a/Content.Server/Construction/Components/MachineFrameComponent.cs +++ b/Content.Server/Construction/Components/MachineFrameComponent.cs @@ -1,9 +1,4 @@ -using System.Threading.Tasks; -using Content.Server.Stack; -using Content.Shared.Construction; -using Content.Shared.Construction.Prototypes; -using Content.Shared.Interaction; -using Content.Shared.Tag; +using Content.Shared.Construction.Prototypes; using Robust.Shared.Containers; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; @@ -18,7 +13,7 @@ namespace Content.Server.Construction.Components [ViewVariables] public bool HasBoard => BoardContainer?.ContainedEntities.Count != 0; - [DataField("progress", customTypeSerializer: typeof(PrototypeIdDictionarySerializer)), ViewVariables] + [DataField("progress", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public readonly Dictionary Progress = new(); [ViewVariables] @@ -30,7 +25,7 @@ namespace Content.Server.Construction.Components [ViewVariables] public readonly Dictionary TagProgress = new(); - [DataField("requirements", customTypeSerializer: typeof(PrototypeIdDictionarySerializer)),ViewVariables] + [DataField("requirements", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary Requirements = new(); [ViewVariables] diff --git a/Content.Server/Construction/Components/MachinePartComponent.cs b/Content.Server/Construction/Components/MachinePartComponent.cs index 3d46074403..00a77d1d0b 100644 --- a/Content.Server/Construction/Components/MachinePartComponent.cs +++ b/Content.Server/Construction/Components/MachinePartComponent.cs @@ -6,7 +6,6 @@ namespace Content.Server.Construction.Components [RegisterComponent] public sealed class MachinePartComponent : Component { - [ViewVariables] [DataField("part", required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] public string PartType { get; private set; } = default!; diff --git a/Content.Server/Containers/EmptyOnMachineDeconstructComponent.cs b/Content.Server/Containers/EmptyOnMachineDeconstructComponent.cs index e2e551b268..c2cc43d15d 100644 --- a/Content.Server/Containers/EmptyOnMachineDeconstructComponent.cs +++ b/Content.Server/Containers/EmptyOnMachineDeconstructComponent.cs @@ -6,7 +6,6 @@ namespace Content.Server.Containers [RegisterComponent] public sealed class EmptyOnMachineDeconstructComponent : Component { - [ViewVariables] [DataField("containers")] public HashSet Containers { get; set; } = new(); } diff --git a/Content.Server/Cuffs/Components/HandcuffComponent.cs b/Content.Server/Cuffs/Components/HandcuffComponent.cs index efef7d4772..5bf4798f87 100644 --- a/Content.Server/Cuffs/Components/HandcuffComponent.cs +++ b/Content.Server/Cuffs/Components/HandcuffComponent.cs @@ -1,11 +1,8 @@ -using System.Threading.Tasks; using Content.Server.Administration.Components; using Content.Server.Administration.Logs; using Content.Server.DoAfter; -using Content.Server.Hands.Components; using Content.Shared.Cuffs.Components; using Content.Shared.Database; -using Content.Shared.Interaction; using Content.Shared.Popups; using Content.Shared.Stunnable; using Robust.Shared.Audio; @@ -26,63 +23,54 @@ namespace Content.Server.Cuffs.Components /// /// The time it takes to apply a to an entity. /// - [ViewVariables] [DataField("cuffTime")] public float CuffTime { get; set; } = 3.5f; /// /// The time it takes to remove a from an entity. /// - [ViewVariables] [DataField("uncuffTime")] public float UncuffTime { get; set; } = 3.5f; /// /// The time it takes for a cuffed entity to remove from itself. /// - [ViewVariables] [DataField("breakoutTime")] public float BreakoutTime { get; set; } = 30f; /// /// If an entity being cuffed is stunned, this amount of time is subtracted from the time it takes to add/remove their cuffs. /// - [ViewVariables] [DataField("stunBonus")] public float StunBonus { get; set; } = 2f; /// /// Will the cuffs break when removed? /// - [ViewVariables] [DataField("breakOnRemove")] public bool BreakOnRemove { get; set; } /// /// The path of the RSI file used for the player cuffed overlay. /// - [ViewVariables] [DataField("cuffedRSI")] public string? CuffedRSI { get; set; } = "Objects/Misc/handcuffs.rsi"; /// /// The iconstate used with the RSI file for the player cuffed overlay. /// - [ViewVariables] [DataField("bodyIconState")] public string? OverlayIconState { get; set; } = "body-overlay"; /// /// The iconstate used for broken handcuffs /// - [ViewVariables] [DataField("brokenIconState")] public string? BrokenState { get; set; } /// /// The iconstate used for broken handcuffs /// - [ViewVariables] [DataField("brokenName", readOnly: true)] public string BrokenName { @@ -93,7 +81,6 @@ namespace Content.Server.Cuffs.Components /// /// The iconstate used for broken handcuffs /// - [ViewVariables] [DataField("brokenDesc", readOnly: true)] public string BrokenDesc { diff --git a/Content.Server/Destructible/DestructibleComponent.cs b/Content.Server/Destructible/DestructibleComponent.cs index 34e973dd2a..041809fe33 100644 --- a/Content.Server/Destructible/DestructibleComponent.cs +++ b/Content.Server/Destructible/DestructibleComponent.cs @@ -9,7 +9,6 @@ namespace Content.Server.Destructible [RegisterComponent] public sealed class DestructibleComponent : Component { - [ViewVariables] [DataField("thresholds")] public List Thresholds = new(); diff --git a/Content.Server/Destructible/Thresholds/DamageThreshold.cs b/Content.Server/Destructible/Thresholds/DamageThreshold.cs index 00142e4abb..2d5b544b6d 100644 --- a/Content.Server/Destructible/Thresholds/DamageThreshold.cs +++ b/Content.Server/Destructible/Thresholds/DamageThreshold.cs @@ -19,7 +19,6 @@ namespace Content.Server.Destructible.Thresholds /// /// Whether or not this threshold has already been triggered. /// - [ViewVariables] [DataField("triggered")] public bool Triggered { get; private set; } @@ -29,14 +28,12 @@ namespace Content.Server.Destructible.Thresholds /// and then damaged to reach this threshold once again. /// It will not repeatedly trigger as damage rises beyond that. /// - [ViewVariables] [DataField("triggersOnce")] public bool TriggersOnce { get; set; } /// /// The trigger that decides if this threshold has been reached. /// - [ViewVariables] [DataField("trigger")] public IThresholdTrigger? Trigger { get; set; } diff --git a/Content.Server/Destructible/Thresholds/MinMax.cs b/Content.Server/Destructible/Thresholds/MinMax.cs index c95c455251..af4bc40fee 100644 --- a/Content.Server/Destructible/Thresholds/MinMax.cs +++ b/Content.Server/Destructible/Thresholds/MinMax.cs @@ -4,11 +4,9 @@ [DataDefinition] public struct MinMax { - [ViewVariables] [DataField("min")] public int Min; - [ViewVariables] [DataField("max")] public int Max; } diff --git a/Content.Server/Dice/DiceComponent.cs b/Content.Server/Dice/DiceComponent.cs index b0df9dc79a..70edb26297 100644 --- a/Content.Server/Dice/DiceComponent.cs +++ b/Content.Server/Dice/DiceComponent.cs @@ -5,15 +5,12 @@ namespace Content.Server.Dice [RegisterComponent, Access(typeof(DiceSystem))] public sealed class DiceComponent : Component { - [ViewVariables] [DataField("sound")] public SoundSpecifier Sound { get; } = new SoundCollectionSpecifier("Dice"); - [ViewVariables] [DataField("step")] public int Step { get; } = 1; - [ViewVariables] [DataField("sides")] public int Sides { get; } = 20; diff --git a/Content.Server/Disease/Components/DiseaseCarrierComponent.cs b/Content.Server/Disease/Components/DiseaseCarrierComponent.cs index ac916aff24..0c5432d9f2 100644 --- a/Content.Server/Disease/Components/DiseaseCarrierComponent.cs +++ b/Content.Server/Disease/Components/DiseaseCarrierComponent.cs @@ -42,7 +42,7 @@ namespace Content.Server.Disease.Components /// exhibit direct symptoms from. They still transmit /// these diseases, just without symptoms. /// - [ViewVariables, DataField("carrierDiseases", customTypeSerializer: typeof(PrototypeIdHashSetSerializer))] + [DataField("carrierDiseases", customTypeSerializer: typeof(PrototypeIdHashSetSerializer))] public HashSet? CarrierDiseases; /// diff --git a/Content.Server/Disease/Components/DiseaseMachineComponent.cs b/Content.Server/Disease/Components/DiseaseMachineComponent.cs index cf78e5d9a0..585309e66b 100644 --- a/Content.Server/Disease/Components/DiseaseMachineComponent.cs +++ b/Content.Server/Disease/Components/DiseaseMachineComponent.cs @@ -15,7 +15,6 @@ namespace Content.Server.Disease.Components /// /// How much time we've accumulated processing /// - [ViewVariables] [DataField("accumulator")] public float Accumulator = 0f; /// diff --git a/Content.Server/Disease/Components/DiseaseSwabComponent.cs b/Content.Server/Disease/Components/DiseaseSwabComponent.cs index 8fb7c1e6d6..5f48ad3e1c 100644 --- a/Content.Server/Disease/Components/DiseaseSwabComponent.cs +++ b/Content.Server/Disease/Components/DiseaseSwabComponent.cs @@ -14,7 +14,6 @@ namespace Content.Server.Disease.Components /// How long it takes to swab someone. /// [DataField("swabDelay")] - [ViewVariables] public float SwabDelay = 2f; /// /// If this swab has been used diff --git a/Content.Server/Disease/Components/DiseaseVaccineComponent.cs b/Content.Server/Disease/Components/DiseaseVaccineComponent.cs index 130a2649eb..fc2349729f 100644 --- a/Content.Server/Disease/Components/DiseaseVaccineComponent.cs +++ b/Content.Server/Disease/Components/DiseaseVaccineComponent.cs @@ -13,7 +13,6 @@ namespace Content.Server.Disease.Components /// How long it takes to inject someone /// [DataField("injectDelay")] - [ViewVariables] public float InjectDelay = 2f; /// /// If this vaccine has been used diff --git a/Content.Server/Disposal/Tube/Components/DisposalJunctionComponent.cs b/Content.Server/Disposal/Tube/Components/DisposalJunctionComponent.cs index e105f4cc59..b546a9692f 100644 --- a/Content.Server/Disposal/Tube/Components/DisposalJunctionComponent.cs +++ b/Content.Server/Disposal/Tube/Components/DisposalJunctionComponent.cs @@ -18,7 +18,6 @@ namespace Content.Server.Disposal.Tube.Components /// /// The angles to connect to. /// - [ViewVariables] [DataField("degrees")] private List _degrees = new(); @@ -39,7 +38,7 @@ namespace Content.Server.Disposal.Tube.Components { return _random.Pick(directions); } - + return next; } } diff --git a/Content.Server/Disposal/Unit/Components/DisposalHolderComponent.cs b/Content.Server/Disposal/Unit/Components/DisposalHolderComponent.cs index 3302da190d..43f735bc77 100644 --- a/Content.Server/Disposal/Unit/Components/DisposalHolderComponent.cs +++ b/Content.Server/Disposal/Unit/Components/DisposalHolderComponent.cs @@ -54,7 +54,6 @@ namespace Content.Server.Disposal.Unit.Components [ViewVariables] public HashSet Tags { get; set; } = new(); - [ViewVariables] [DataField("air")] public GasMixture Air { get; set; } = new (70); diff --git a/Content.Server/Disposal/Unit/Components/DisposalUnitComponent.cs b/Content.Server/Disposal/Unit/Components/DisposalUnitComponent.cs index 074a0d8657..25e5ad708e 100644 --- a/Content.Server/Disposal/Unit/Components/DisposalUnitComponent.cs +++ b/Content.Server/Disposal/Unit/Components/DisposalUnitComponent.cs @@ -20,11 +20,9 @@ namespace Content.Server.Disposal.Unit.Components /// The current pressure of this disposal unit. /// Prevents it from flushing if it is not equal to or bigger than 1. /// - [ViewVariables] [DataField("pressure")] public float Pressure = 1f; - [ViewVariables] [DataField("autoEngageEnabled")] public bool AutomaticEngage = true; diff --git a/Content.Server/Dragon/Components/DragonComponent.cs b/Content.Server/Dragon/Components/DragonComponent.cs index 1a0a9c77ad..3012810afd 100644 --- a/Content.Server/Dragon/Components/DragonComponent.cs +++ b/Content.Server/Dragon/Components/DragonComponent.cs @@ -1,11 +1,10 @@ -using Content.Shared.Actions.ActionTypes; -using Robust.Shared.Containers; using System.Threading; using Content.Shared.Actions; +using Content.Shared.Actions.ActionTypes; using Content.Shared.Chemistry.Reagent; -using Content.Shared.Storage; using Content.Shared.Whitelist; using Robust.Shared.Audio; +using Robust.Shared.Containers; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; @@ -35,7 +34,7 @@ namespace Content.Server.Dragon /// /// If we have active rifts. /// - [ViewVariables, DataField("rifts")] + [DataField("rifts")] public List Rifts = new(); public bool Weakened => WeakenedAccumulator > 0f; @@ -63,7 +62,7 @@ namespace Content.Server.Dragon /// /// Spawns a rift which can summon more mobs. /// - [ViewVariables, DataField("spawnRiftAction")] + [DataField("spawnRiftAction")] public InstantAction? SpawnRiftAction; [ViewVariables(VVAccess.ReadWrite), DataField("riftPrototype", customTypeSerializer: typeof(PrototypeIdSerializer))] diff --git a/Content.Server/Dragon/Components/DragonRiftComponent.cs b/Content.Server/Dragon/Components/DragonRiftComponent.cs index b60c8a2f87..c1abb67bbe 100644 --- a/Content.Server/Dragon/Components/DragonRiftComponent.cs +++ b/Content.Server/Dragon/Components/DragonRiftComponent.cs @@ -10,7 +10,7 @@ public sealed class DragonRiftComponent : SharedDragonRiftComponent /// /// Dragon that spawned this rift. /// - [ViewVariables, DataField("dragon")] public EntityUid Dragon; + [DataField("dragon")] public EntityUid Dragon; /// /// How long the rift has been active. diff --git a/Content.Server/Engineering/Components/DisassembleOnAltVerbComponent.cs b/Content.Server/Engineering/Components/DisassembleOnAltVerbComponent.cs index eb50b46c57..802c86518e 100644 --- a/Content.Server/Engineering/Components/DisassembleOnAltVerbComponent.cs +++ b/Content.Server/Engineering/Components/DisassembleOnAltVerbComponent.cs @@ -7,11 +7,9 @@ namespace Content.Server.Engineering.Components [RegisterComponent] public sealed class DisassembleOnAltVerbComponent : Component { - [ViewVariables] [DataField("prototype", customTypeSerializer: typeof(PrototypeIdSerializer))] public string? Prototype { get; } - [ViewVariables] [DataField("doAfter")] public float DoAfterTime = 0; diff --git a/Content.Server/Engineering/Components/SpawnAfterInteractComponent.cs b/Content.Server/Engineering/Components/SpawnAfterInteractComponent.cs index fe4e98ad7b..447bbd5cd3 100644 --- a/Content.Server/Engineering/Components/SpawnAfterInteractComponent.cs +++ b/Content.Server/Engineering/Components/SpawnAfterInteractComponent.cs @@ -6,19 +6,15 @@ namespace Content.Server.Engineering.Components [RegisterComponent] public sealed class SpawnAfterInteractComponent : Component { - [ViewVariables] [DataField("prototype", customTypeSerializer: typeof(PrototypeIdSerializer))] public string? Prototype { get; } - [ViewVariables] [DataField("ignoreDistance")] public bool IgnoreDistance { get; } - [ViewVariables] [DataField("doAfter")] public float DoAfterTime = 0; - [ViewVariables] [DataField("removeOnInteract")] public bool RemoveOnInteract = false; } diff --git a/Content.Server/Ensnaring/Components/EnsnareableComponent.cs b/Content.Server/Ensnaring/Components/EnsnareableComponent.cs index 373015276a..555e7827ad 100644 --- a/Content.Server/Ensnaring/Components/EnsnareableComponent.cs +++ b/Content.Server/Ensnaring/Components/EnsnareableComponent.cs @@ -9,7 +9,6 @@ public sealed class EnsnareableComponent : SharedEnsnareableComponent /// /// The container where the entity will be stored /// - [ViewVariables] [DataField("container")] public Container Container = default!; } diff --git a/Content.Server/Explosion/Components/ClusterGrenadeComponent.cs b/Content.Server/Explosion/Components/ClusterGrenadeComponent.cs index 9767f705ba..e739f4506c 100644 --- a/Content.Server/Explosion/Components/ClusterGrenadeComponent.cs +++ b/Content.Server/Explosion/Components/ClusterGrenadeComponent.cs @@ -13,7 +13,7 @@ namespace Content.Server.Explosion.Components /// /// What we fill our prototype with if we want to pre-spawn with grenades. /// - [ViewVariables] [DataField("fillPrototype", customTypeSerializer:typeof(PrototypeIdSerializer))] + [DataField("fillPrototype", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? FillPrototype; /// @@ -24,7 +24,7 @@ namespace Content.Server.Explosion.Components /// /// Maximum grenades in the container. /// - [ViewVariables] [DataField("maxGrenadesCount")] + [DataField("maxGrenadesCount")] public int MaxGrenades = 3; /// diff --git a/Content.Server/Explosion/Components/TriggerOnProximityComponent.cs b/Content.Server/Explosion/Components/TriggerOnProximityComponent.cs index 760f6a444a..8db3d327b4 100644 --- a/Content.Server/Explosion/Components/TriggerOnProximityComponent.cs +++ b/Content.Server/Explosion/Components/TriggerOnProximityComponent.cs @@ -1,6 +1,6 @@ using Content.Server.Explosion.EntitySystems; -using Robust.Shared.Physics.Collision.Shapes; using Content.Shared.Explosion; +using Robust.Shared.Physics.Collision.Shapes; using Robust.Shared.Physics.Components; namespace Content.Server.Explosion.Components @@ -22,18 +22,15 @@ namespace Content.Server.Explosion.Components /// /// How long the the proximity trigger animation plays for. /// - [ViewVariables] [DataField("animationDuration")] public float AnimationDuration = 0.3f; /// /// Whether the entity needs to be anchored for the proximity to work. /// - [ViewVariables] [DataField("requiresAnchored")] public bool RequiresAnchored { get; set; } = true; - [ViewVariables] [DataField("enabled")] public bool Enabled = true; diff --git a/Content.Server/Fluids/Components/AbsorbentComponent.cs b/Content.Server/Fluids/Components/AbsorbentComponent.cs index e536a22f58..193b38a69e 100644 --- a/Content.Server/Fluids/Components/AbsorbentComponent.cs +++ b/Content.Server/Fluids/Components/AbsorbentComponent.cs @@ -36,7 +36,6 @@ public sealed class AbsorbentComponent : Component /// /// Multiplier for the do_after delay for how quickly the mopping happens. /// - [ViewVariables] [DataField("mopSpeed")] public float MopSpeed = 1; /// diff --git a/Content.Server/Fluids/Components/PuddleComponent.cs b/Content.Server/Fluids/Components/PuddleComponent.cs index 2e2ab2483a..bc51df6b15 100644 --- a/Content.Server/Fluids/Components/PuddleComponent.cs +++ b/Content.Server/Fluids/Components/PuddleComponent.cs @@ -46,7 +46,7 @@ namespace Content.Server.Fluids.Components [ViewVariables(VVAccess.ReadOnly)] public FixedPoint2 CurrentVolume => EntitySystem.Get().CurrentVolume(Owner); - [ViewVariables] [DataField("overflowVolume")] + [DataField("overflowVolume")] public FixedPoint2 OverflowVolume = DefaultOverflowVolume; /// diff --git a/Content.Server/Gatherable/Components/GatherableComponent.cs b/Content.Server/Gatherable/Components/GatherableComponent.cs index 5215bd68b1..53775a1124 100644 --- a/Content.Server/Gatherable/Components/GatherableComponent.cs +++ b/Content.Server/Gatherable/Components/GatherableComponent.cs @@ -10,7 +10,6 @@ public sealed class GatherableComponent : Component /// Whitelist for specifying the kind of tools can be used on a resource /// Supports multiple tags. /// - [ViewVariables] [DataField("whitelist", required: true)] public EntityWhitelist? ToolWhitelist; diff --git a/Content.Server/Guardian/GuardianComponent.cs b/Content.Server/Guardian/GuardianComponent.cs index 0221bc2291..b561912397 100644 --- a/Content.Server/Guardian/GuardianComponent.cs +++ b/Content.Server/Guardian/GuardianComponent.cs @@ -14,14 +14,12 @@ namespace Content.Server.Guardian /// /// Percentage of damage reflected from the guardian to the host /// - [ViewVariables] [DataField("damageShare")] public float DamageShare { get; set; } = 0.85f; /// /// Maximum distance the guardian can travel before it's forced to recall, use YAML to set /// - [ViewVariables] [DataField("distanceAllowed")] public float DistanceAllowed { get; set; } = 5f; diff --git a/Content.Server/Guardian/GuardianCreatorComponent.cs b/Content.Server/Guardian/GuardianCreatorComponent.cs index 80946faa10..e120cc3b25 100644 --- a/Content.Server/Guardian/GuardianCreatorComponent.cs +++ b/Content.Server/Guardian/GuardianCreatorComponent.cs @@ -20,7 +20,6 @@ namespace Content.Server.Guardian /// /// The prototype of the guardian entity which will be created /// - [ViewVariables] [DataField("guardianProto", customTypeSerializer:typeof(PrototypeIdSerializer), required: true)] public string GuardianProto { get; set; } = default!; diff --git a/Content.Server/Holiday/HolidayPrototype.cs b/Content.Server/Holiday/HolidayPrototype.cs index 9f45f154d6..eff2d5715b 100644 --- a/Content.Server/Holiday/HolidayPrototype.cs +++ b/Content.Server/Holiday/HolidayPrototype.cs @@ -9,41 +9,37 @@ namespace Content.Server.Holiday [Prototype("holiday")] public sealed class HolidayPrototype : IPrototype { - [ViewVariables] [DataField("name")] public string Name { get; private set; } = string.Empty; + [DataField("name")] public string Name { get; private set; } = string.Empty; [ViewVariables] [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables] [DataField("beginDay")] public byte BeginDay { get; set; } = 1; - [ViewVariables] [DataField("beginMonth")] public Month BeginMonth { get; set; } = Month.Invalid; /// /// Day this holiday will end. Zero means it lasts a single day. /// - [ViewVariables] [DataField("endDay")] public byte EndDay { get; set; } /// /// Month this holiday will end in. Invalid means it lasts a single month. /// - [ViewVariables] [DataField("endMonth")] public Month EndMonth { get; set; } = Month.Invalid; - [ViewVariables] [DataField("shouldCelebrate")] + [DataField("shouldCelebrate")] private readonly IHolidayShouldCelebrate _shouldCelebrate = new DefaultHolidayShouldCelebrate(); - [ViewVariables] [DataField("greet")] + [DataField("greet")] private readonly IHolidayGreet _greet = new DefaultHolidayGreet(); - [ViewVariables] [DataField("celebrate")] + [DataField("celebrate")] private readonly IHolidayCelebrate _celebrate = new DefaultHolidayCelebrate(); public bool ShouldCelebrate(DateTime date) diff --git a/Content.Server/Kitchen/Components/ExtractableComponent.cs b/Content.Server/Kitchen/Components/ExtractableComponent.cs index e34257a1f0..6c68059428 100644 --- a/Content.Server/Kitchen/Components/ExtractableComponent.cs +++ b/Content.Server/Kitchen/Components/ExtractableComponent.cs @@ -10,11 +10,9 @@ namespace Content.Server.Kitchen.Components [Access(typeof(ReagentGrinderSystem))] public sealed class ExtractableComponent : Component { - [ViewVariables] [DataField("juiceSolution")] public Solution? JuiceSolution; - [ViewVariables] [DataField("grindableSolutionName")] public string? GrindableSolution; } diff --git a/Content.Server/Light/Components/MatchstickComponent.cs b/Content.Server/Light/Components/MatchstickComponent.cs index a402f0f24b..4837c147c4 100644 --- a/Content.Server/Light/Components/MatchstickComponent.cs +++ b/Content.Server/Light/Components/MatchstickComponent.cs @@ -1,5 +1,5 @@ -using Content.Shared.Smoking; using Content.Server.Light.EntitySystems; +using Content.Shared.Smoking; using Robust.Shared.Audio; namespace Content.Server.Light.Components @@ -11,7 +11,6 @@ namespace Content.Server.Light.Components /// /// Current state to matchstick. Can be Unlit, Lit or Burnt. /// - [ViewVariables] [DataField("state")] public SmokableState CurrentState = SmokableState.Unlit; diff --git a/Content.Server/Light/Components/PoweredLightComponent.cs b/Content.Server/Light/Components/PoweredLightComponent.cs index 6f68755186..2c0e6ba052 100644 --- a/Content.Server/Light/Components/PoweredLightComponent.cs +++ b/Content.Server/Light/Components/PoweredLightComponent.cs @@ -1,12 +1,12 @@ +using System.Threading; using Content.Server.Light.EntitySystems; using Content.Shared.Damage; using Content.Shared.Light; -using Robust.Shared.Containers; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; -using Robust.Shared.Prototypes; using Content.Shared.MachineLinking; -using System.Threading; using Robust.Shared.Audio; +using Robust.Shared.Containers; +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Light.Components { @@ -28,7 +28,6 @@ namespace Content.Server.Light.Components [DataField("bulb")] public LightBulbType BulbType; - [ViewVariables] [DataField("on")] public bool On = true; @@ -36,15 +35,12 @@ namespace Content.Server.Light.Components [ViewVariables(VVAccess.ReadWrite)] public DamageSpecifier Damage = default!; - [ViewVariables] [DataField("ignoreGhostsBoo")] public bool IgnoreGhostsBoo; - [ViewVariables] [DataField("ghostBlinkingTime")] public TimeSpan GhostBlinkingTime = TimeSpan.FromSeconds(10); - [ViewVariables] [DataField("ghostBlinkingCooldown")] public TimeSpan GhostBlinkingCooldown = TimeSpan.FromSeconds(60); diff --git a/Content.Server/Magic/Components/SpellbookComponent.cs b/Content.Server/Magic/Components/SpellbookComponent.cs index 34a9cd2bba..334921dc29 100644 --- a/Content.Server/Magic/Components/SpellbookComponent.cs +++ b/Content.Server/Magic/Components/SpellbookComponent.cs @@ -28,7 +28,6 @@ public sealed class SpellbookComponent : Component [DataField("instantSpells", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public readonly Dictionary InstantSpells = new(); - [ViewVariables] [DataField("learnTime")] public float LearnTime = .75f; diff --git a/Content.Server/Magic/Events/InstantSpawnSpellEvent.cs b/Content.Server/Magic/Events/InstantSpawnSpellEvent.cs index 5b81b29c6f..4a7123a787 100644 --- a/Content.Server/Magic/Events/InstantSpawnSpellEvent.cs +++ b/Content.Server/Magic/Events/InstantSpawnSpellEvent.cs @@ -12,7 +12,7 @@ public sealed class InstantSpawnSpellEvent : InstantActionEvent [DataField("prototype", required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] public string Prototype = default!; - [ViewVariables, DataField("preventCollide")] + [DataField("preventCollide")] public bool PreventCollideWithCaster = true; /// diff --git a/Content.Server/Medical/BiomassReclaimer/BiomassReclaimerComponent.cs b/Content.Server/Medical/BiomassReclaimer/BiomassReclaimerComponent.cs index 8d2b20f5b5..b0117ef2ed 100644 --- a/Content.Server/Medical/BiomassReclaimer/BiomassReclaimerComponent.cs +++ b/Content.Server/Medical/BiomassReclaimer/BiomassReclaimerComponent.cs @@ -1,6 +1,6 @@ -using Content.Shared.Storage; using System.Threading; using Content.Shared.Construction.Prototypes; +using Content.Shared.Storage; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; @@ -64,7 +64,7 @@ namespace Content.Server.Medical.BiomassReclaimer /// /// The base yield per mass unit when no components are upgraded. /// - [ViewVariables, DataField("baseYieldPerUnitMass")] + [DataField("baseYieldPerUnitMass")] public float BaseYieldPerUnitMass = 0.4f; /// @@ -90,7 +90,7 @@ namespace Content.Server.Medical.BiomassReclaimer /// The base time per mass unit that it takes to process a mob /// when no components are upgraded. /// - [ViewVariables, DataField("baseProcessingTimePerUnitMass")] + [DataField("baseProcessingTimePerUnitMass")] public float BaseProcessingTimePerUnitMass = 0.5f; /// @@ -103,7 +103,7 @@ namespace Content.Server.Medical.BiomassReclaimer /// How much the machine part quality affects the yield. /// Going up a tier will multiply the speed by this amount. /// - [ViewVariables, DataField("partRatingSpeedMultiplier")] + [DataField("partRatingSpeedMultiplier")] public float PartRatingSpeedMultiplier = 1.35f; /// diff --git a/Content.Server/Medical/Components/HealthAnalyzerComponent.cs b/Content.Server/Medical/Components/HealthAnalyzerComponent.cs index 7215b23005..bef0e9122f 100644 --- a/Content.Server/Medical/Components/HealthAnalyzerComponent.cs +++ b/Content.Server/Medical/Components/HealthAnalyzerComponent.cs @@ -1,7 +1,7 @@ using System.Threading; using Content.Server.UserInterface; -using Content.Shared.MedicalScanner; using Content.Shared.Disease; +using Content.Shared.MedicalScanner; using Robust.Server.GameObjects; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; @@ -18,7 +18,6 @@ namespace Content.Server.Medical.Components /// How long it takes to scan someone. /// [DataField("scanDelay")] - [ViewVariables] public float ScanDelay = 0.8f; /// /// Token for interrupting scanning do after. diff --git a/Content.Server/NPC/Components/NPCComponent.cs b/Content.Server/NPC/Components/NPCComponent.cs index 932b927bf0..df969048c5 100644 --- a/Content.Server/NPC/Components/NPCComponent.cs +++ b/Content.Server/NPC/Components/NPCComponent.cs @@ -7,7 +7,7 @@ namespace Content.Server.NPC.Components /// /// Contains all of the world data for a particular NPC in terms of how it sees the world. /// - [ViewVariables, DataField("blackboard", customTypeSerializer: typeof(NPCBlackboardSerializer))] + [DataField("blackboard", customTypeSerializer: typeof(NPCBlackboardSerializer))] public NPCBlackboard Blackboard = new(); } } diff --git a/Content.Server/NPC/HTN/HTNBranch.cs b/Content.Server/NPC/HTN/HTNBranch.cs index 760a80e931..88a39aaabf 100644 --- a/Content.Server/NPC/HTN/HTNBranch.cs +++ b/Content.Server/NPC/HTN/HTNBranch.cs @@ -9,7 +9,7 @@ namespace Content.Server.NPC.HTN; public sealed class HTNBranch { // Made this its own class if we ever need to change it. - [ViewVariables, DataField("preconditions")] + [DataField("preconditions")] public List Preconditions = new(); [ViewVariables] public List Tasks = new(); @@ -17,6 +17,6 @@ public sealed class HTNBranch /// /// Due to how serv3 works we need to defer getting the actual tasks until after they have all been serialized. /// - [ViewVariables, DataField("tasks", required: true, customTypeSerializer:typeof(HTNTaskListSerializer))] + [DataField("tasks", required: true, customTypeSerializer:typeof(HTNTaskListSerializer))] public List TaskPrototypes = default!; } diff --git a/Content.Server/NPC/HTN/Preconditions/CoordinatesInRangePrecondition.cs b/Content.Server/NPC/HTN/Preconditions/CoordinatesInRangePrecondition.cs index d461803ab6..a04a446c93 100644 --- a/Content.Server/NPC/HTN/Preconditions/CoordinatesInRangePrecondition.cs +++ b/Content.Server/NPC/HTN/Preconditions/CoordinatesInRangePrecondition.cs @@ -9,9 +9,9 @@ public sealed class CoordinatesInRangePrecondition : HTNPrecondition { [Dependency] private readonly IEntityManager _entManager = default!; - [ViewVariables, DataField("targetKey", required: true)] public string TargetKey = default!; + [DataField("targetKey", required: true)] public string TargetKey = default!; - [ViewVariables, DataField("rangeKey", required: true)] + [DataField("rangeKey", required: true)] public string RangeKey = default!; public override bool IsMet(NPCBlackboard blackboard) diff --git a/Content.Server/NPC/HTN/Preconditions/CoordinatesNotInRangePrecondition.cs b/Content.Server/NPC/HTN/Preconditions/CoordinatesNotInRangePrecondition.cs index c328b6ef5e..d62e4af291 100644 --- a/Content.Server/NPC/HTN/Preconditions/CoordinatesNotInRangePrecondition.cs +++ b/Content.Server/NPC/HTN/Preconditions/CoordinatesNotInRangePrecondition.cs @@ -9,9 +9,9 @@ public sealed class CoordinatesNotInRangePrecondition : HTNPrecondition { [Dependency] private readonly IEntityManager _entManager = default!; - [ViewVariables, DataField("targetKey", required: true)] public string TargetKey = default!; + [DataField("targetKey", required: true)] public string TargetKey = default!; - [ViewVariables, DataField("rangeKey", required: true)] + [DataField("rangeKey", required: true)] public string RangeKey = default!; public override bool IsMet(NPCBlackboard blackboard) diff --git a/Content.Server/NPC/HTN/Preconditions/TargetInLOSPrecondition.cs b/Content.Server/NPC/HTN/Preconditions/TargetInLOSPrecondition.cs index 4a7c846131..165ea6911f 100644 --- a/Content.Server/NPC/HTN/Preconditions/TargetInLOSPrecondition.cs +++ b/Content.Server/NPC/HTN/Preconditions/TargetInLOSPrecondition.cs @@ -6,10 +6,10 @@ public sealed class TargetInLOSPrecondition : HTNPrecondition { private InteractionSystem _interaction = default!; - [ViewVariables, DataField("targetKey")] + [DataField("targetKey")] public string TargetKey = "CombatTarget"; - [ViewVariables, DataField("rangeKey")] + [DataField("rangeKey")] public string RangeKey = "RangeKey"; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/Preconditions/TargetInRangePrecondition.cs b/Content.Server/NPC/HTN/Preconditions/TargetInRangePrecondition.cs index f309841972..15e5af80a7 100644 --- a/Content.Server/NPC/HTN/Preconditions/TargetInRangePrecondition.cs +++ b/Content.Server/NPC/HTN/Preconditions/TargetInRangePrecondition.cs @@ -9,9 +9,9 @@ public sealed class TargetInRangePrecondition : HTNPrecondition { [Dependency] private readonly IEntityManager _entManager = default!; - [ViewVariables, DataField("targetKey", required: true)] public string TargetKey = default!; + [DataField("targetKey", required: true)] public string TargetKey = default!; - [ViewVariables, DataField("rangeKey", required: true)] + [DataField("rangeKey", required: true)] public string RangeKey = default!; public override bool IsMet(NPCBlackboard blackboard) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Melee/MeleeOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Melee/MeleeOperator.cs index 1ed2ab9e8f..dc77758ec7 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Melee/MeleeOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Melee/MeleeOperator.cs @@ -1,6 +1,5 @@ using System.Threading; using System.Threading.Tasks; -using Content.Server.MobState; using Content.Server.NPC.Components; using Content.Shared.MobState; using Content.Shared.MobState.Components; @@ -17,13 +16,13 @@ public sealed class MeleeOperator : HTNOperator /// /// Key that contains the target entity. /// - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = default!; /// /// Minimum damage state that the target has to be in for us to consider attacking. /// - [ViewVariables, DataField("targetState")] + [DataField("targetState")] public DamageState TargetState = DamageState.Alive; // Like movement we add a component and pass it off to the dedicated system. diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/MoveToOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/MoveToOperator.cs index 58fc578845..654fd4dd0c 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/MoveToOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/MoveToOperator.cs @@ -3,10 +3,8 @@ using System.Threading.Tasks; using Content.Server.NPC.Components; using Content.Server.NPC.Pathfinding; using Content.Server.NPC.Systems; -using Content.Shared.NPC; using Robust.Shared.Map; using Robust.Shared.Physics.Components; -using YamlDotNet.Core.Tokens; namespace Content.Server.NPC.HTN.PrimitiveTasks.Operators; @@ -23,31 +21,31 @@ public sealed class MoveToOperator : HTNOperator /// /// Should we assume the MovementTarget is reachable during planning or should we pathfind to it? /// - [ViewVariables, DataField("pathfindInPlanning")] + [DataField("pathfindInPlanning")] public bool PathfindInPlanning = true; /// /// When we're finished moving to the target should we remove its key? /// - [ViewVariables, DataField("removeKeyOnFinish")] + [DataField("removeKeyOnFinish")] public bool RemoveKeyOnFinish = true; /// /// Target Coordinates to move to. This gets removed after execution. /// - [ViewVariables, DataField("targetKey")] + [DataField("targetKey")] public string TargetKey = "MovementTarget"; /// /// Where the pathfinding result will be stored (if applicable). This gets removed after execution. /// - [ViewVariables, DataField("pathfindKey")] + [DataField("pathfindKey")] public string PathfindKey = NPCBlackboard.PathfindKey; /// /// How close we need to get before considering movement finished. /// - [ViewVariables, DataField("rangeKey")] + [DataField("rangeKey")] public string RangeKey = "MovementRange"; private const string MovementCancelToken = "MovementCancelToken"; diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/NPCCombatOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/NPCCombatOperator.cs index e9fe84c6fc..f29367bf93 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/NPCCombatOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/NPCCombatOperator.cs @@ -18,12 +18,12 @@ public abstract class NPCCombatOperator : HTNOperator protected InteractionSystem Interaction = default!; private PathfindingSystem _pathfinding = default!; - [ViewVariables, DataField("key")] public string Key = "CombatTarget"; + [DataField("key")] public string Key = "CombatTarget"; /// /// The EntityCoordinates of the specified target. /// - [ViewVariables, DataField("keyCoordinates")] + [DataField("keyCoordinates")] public string KeyCoordinates = "CombatTargetCoordinates"; /// diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleComponentOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleComponentOperator.cs index 9d84be5f89..d7316fd6e0 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleComponentOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleComponentOperator.cs @@ -3,7 +3,6 @@ using System.Threading; using System.Threading.Tasks; using Content.Server.NPC.Pathfinding; using Robust.Shared.Map; -using Robust.Shared.Random; namespace Content.Server.NPC.HTN.PrimitiveTasks.Operators; @@ -20,16 +19,16 @@ public sealed class PickAccessibleComponentOperator : HTNOperator [DataField("rangeKey", required: true)] public string RangeKey = string.Empty; - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = string.Empty; - [ViewVariables, DataField("component", required: true)] + [DataField("component", required: true)] public string Component = string.Empty; /// /// Where the pathfinding result will be stored (if applicable). This gets removed after execution. /// - [ViewVariables, DataField("pathfindKey")] + [DataField("pathfindKey")] public string PathfindKey = NPCBlackboard.PathfindKey; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleOperator.cs index 441b34dbb0..b96db18be7 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickAccessibleOperator.cs @@ -2,7 +2,6 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using Content.Server.NPC.Pathfinding; -using Robust.Shared.Random; namespace Content.Server.NPC.HTN.PrimitiveTasks.Operators; @@ -16,13 +15,13 @@ public sealed class PickAccessibleOperator : HTNOperator [DataField("rangeKey", required: true)] public string RangeKey = string.Empty; - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = string.Empty; /// /// Where the pathfinding result will be stored (if applicable). This gets removed after execution. /// - [ViewVariables, DataField("pathfindKey")] + [DataField("pathfindKey")] public string PathfindKey = NPCBlackboard.PathfindKey; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickRandomRotationOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickRandomRotationOperator.cs index 7f0fff47c3..6e89120219 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickRandomRotationOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/PickRandomRotationOperator.cs @@ -8,7 +8,7 @@ public sealed class PickRandomRotationOperator : HTNOperator { [Dependency] private readonly IRobustRandom _random = default!; - [ViewVariables, DataField("targetKey")] + [DataField("targetKey")] public string TargetKey = "RotateTarget"; public override async Task<(bool Valid, Dictionary? Effects)> Plan(NPCBlackboard blackboard, diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Ranged/RangedOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Ranged/RangedOperator.cs index 296f43ee2c..ddd8551de4 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Ranged/RangedOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Ranged/RangedOperator.cs @@ -14,13 +14,13 @@ public sealed class RangedOperator : HTNOperator /// /// Key that contains the target entity. /// - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = default!; /// /// Minimum damage state that the target has to be in for us to consider attacking. /// - [ViewVariables, DataField("targetState")] + [DataField("targetState")] public DamageState TargetState = DamageState.Alive; // Like movement we add a component and pass it off to the dedicated system. diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/RotateToTargetOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/RotateToTargetOperator.cs index e9e848daa0..910bd1e9f1 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/RotateToTargetOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/RotateToTargetOperator.cs @@ -7,14 +7,14 @@ public sealed class RotateToTargetOperator : HTNOperator [Dependency] private readonly IEntityManager _entityManager = default!; private RotateToFaceSystem _rotate = default!; - [ViewVariables, DataField("targetKey")] + [DataField("targetKey")] public string TargetKey = "RotateTarget"; - [ViewVariables, DataField("rotateSpeedKey")] + [DataField("rotateSpeedKey")] public string RotationSpeedKey = NPCBlackboard.RotateSpeed; // Didn't use a key because it's likely the same between all NPCs - [ViewVariables, DataField("tolerance")] + [DataField("tolerance")] public Angle Tolerance = Angle.FromDegrees(1); public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/SpeakOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/SpeakOperator.cs index 7149f2eb7d..eb60bba401 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/SpeakOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/SpeakOperator.cs @@ -6,7 +6,7 @@ public sealed class SpeakOperator : HTNOperator { private ChatSystem _chat = default!; - [ViewVariables, DataField("speech", required: true)] + [DataField("speech", required: true)] public string Speech = string.Empty; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/MedibotInjectOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/MedibotInjectOperator.cs index 4b196bcf29..ec4f960c64 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/MedibotInjectOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/MedibotInjectOperator.cs @@ -21,7 +21,7 @@ public sealed class MedibotInjectOperator : HTNOperator /// /// Target entity to inject. /// - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = string.Empty; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyInjectableOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyInjectableOperator.cs index 5ebc4ca72d..b3c96bf742 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyInjectableOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/Specific/PickNearbyInjectableOperator.cs @@ -15,18 +15,18 @@ public sealed class PickNearbyInjectableOperator : HTNOperator private EntityLookupSystem _lookup = default!; private PathfindingSystem _pathfinding = default!; - [ViewVariables, DataField("rangeKey")] public string RangeKey = NPCBlackboard.MedibotInjectRange; + [DataField("rangeKey")] public string RangeKey = NPCBlackboard.MedibotInjectRange; /// /// Target entity to inject /// - [ViewVariables, DataField("targetKey", required: true)] + [DataField("targetKey", required: true)] public string TargetKey = string.Empty; /// /// Target entitycoordinates to move to. /// - [ViewVariables, DataField("targetMoveKey", required: true)] + [DataField("targetMoveKey", required: true)] public string TargetMoveKey = string.Empty; public override void Initialize(IEntitySystemManager sysManager) diff --git a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/WaitOperator.cs b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/WaitOperator.cs index fc6a9db456..1ed1ccf6cb 100644 --- a/Content.Server/NPC/HTN/PrimitiveTasks/Operators/WaitOperator.cs +++ b/Content.Server/NPC/HTN/PrimitiveTasks/Operators/WaitOperator.cs @@ -8,7 +8,7 @@ public sealed class WaitOperator : HTNOperator /// /// Blackboard key for the time we'll wait for. /// - [ViewVariables, DataField("key", required: true)] public string Key = string.Empty; + [DataField("key", required: true)] public string Key = string.Empty; public override HTNOperatorStatus Update(NPCBlackboard blackboard, float frameTime) { diff --git a/Content.Server/NodeContainer/NodeContainerComponent.cs b/Content.Server/NodeContainer/NodeContainerComponent.cs index 6156d74f12..216770109d 100644 --- a/Content.Server/NodeContainer/NodeContainerComponent.cs +++ b/Content.Server/NodeContainer/NodeContainerComponent.cs @@ -10,7 +10,7 @@ namespace Content.Server.NodeContainer public sealed class NodeContainerComponent : Component { //HACK: THIS BEING readOnly IS A FILTHY HACK AND I HATE IT --moony - [DataField("nodes", readOnly: true)] [ViewVariables] public Dictionary Nodes { get; } = new(); + [DataField("nodes", readOnly: true)] public Dictionary Nodes { get; } = new(); [DataField("examinable")] public bool Examinable = false; diff --git a/Content.Server/NodeContainer/Nodes/Node.cs b/Content.Server/NodeContainer/Nodes/Node.cs index 147002db4b..f853c398b7 100644 --- a/Content.Server/NodeContainer/Nodes/Node.cs +++ b/Content.Server/NodeContainer/Nodes/Node.cs @@ -15,7 +15,6 @@ namespace Content.Server.NodeContainer.Nodes /// An ID used as a criteria for combining into groups. Determines which /// implementation is used as a group, detailed in . /// - [ViewVariables] [DataField("nodeGroupID")] public NodeGroupID NodeGroupID { get; private set; } = NodeGroupID.Default; diff --git a/Content.Server/NodeContainer/Nodes/PipeNode.cs b/Content.Server/NodeContainer/Nodes/PipeNode.cs index ddd046c928..1454413869 100644 --- a/Content.Server/NodeContainer/Nodes/PipeNode.cs +++ b/Content.Server/NodeContainer/Nodes/PipeNode.cs @@ -18,7 +18,6 @@ namespace Content.Server.NodeContainer.Nodes /// /// The directions in which this pipe can connect to other pipes around it. /// - [ViewVariables] [DataField("pipeDirection")] private PipeDirection _originalPipeDirection; @@ -97,7 +96,6 @@ namespace Content.Server.NodeContainer.Nodes } } - [ViewVariables] [DataField("volume")] public float Volume { get; set; } = DefaultVolume; diff --git a/Content.Server/Nutrition/Components/DrinkComponent.cs b/Content.Server/Nutrition/Components/DrinkComponent.cs index 3815aa05ba..e3fc4c8a2d 100644 --- a/Content.Server/Nutrition/Components/DrinkComponent.cs +++ b/Content.Server/Nutrition/Components/DrinkComponent.cs @@ -1,7 +1,7 @@ -using JetBrains.Annotations; +using System.Threading; using Content.Server.Nutrition.EntitySystems; using Content.Shared.FixedPoint; -using System.Threading; +using JetBrains.Annotations; using Robust.Shared.Audio; namespace Content.Server.Nutrition.Components @@ -14,11 +14,9 @@ namespace Content.Server.Nutrition.Components public string SolutionName { get; set; } = DefaultSolutionName; public const string DefaultSolutionName = "drink"; - [ViewVariables] [DataField("useSound")] public SoundSpecifier UseSound = new SoundPathSpecifier("/Audio/Items/drink.ogg"); - [ViewVariables] [DataField("isOpen")] internal bool DefaultToOpened; diff --git a/Content.Server/Nutrition/Components/FoodComponent.cs b/Content.Server/Nutrition/Components/FoodComponent.cs index 49946414bc..ca7a084758 100644 --- a/Content.Server/Nutrition/Components/FoodComponent.cs +++ b/Content.Server/Nutrition/Components/FoodComponent.cs @@ -14,15 +14,12 @@ namespace Content.Server.Nutrition.Components [DataField("solution")] public string SolutionName { get; set; } = "food"; - [ViewVariables] [DataField("useSound")] public SoundSpecifier UseSound { get; set; } = new SoundPathSpecifier("/Audio/Items/eatfood.ogg"); - [ViewVariables] [DataField("trash", customTypeSerializer: typeof(PrototypeIdSerializer))] public string? TrashPrototype { get; set; } - [ViewVariables] [DataField("transferAmount")] public FixedPoint2? TransferAmount { get; set; } = FixedPoint2.New(5); diff --git a/Content.Server/Nutrition/Components/TrashOnEmptyComponent.cs b/Content.Server/Nutrition/Components/TrashOnEmptyComponent.cs index 26510e6090..ee249d703e 100644 --- a/Content.Server/Nutrition/Components/TrashOnEmptyComponent.cs +++ b/Content.Server/Nutrition/Components/TrashOnEmptyComponent.cs @@ -10,7 +10,7 @@ namespace Content.Server.Nutrition.Components /// /// The name of the solution of which to check emptiness /// - [ViewVariables] [DataField("solution")] + [DataField("solution")] public string Solution { get; set; } = string.Empty; } } diff --git a/Content.Server/Nutrition/Components/UtensilComponent.cs b/Content.Server/Nutrition/Components/UtensilComponent.cs index f90df1757c..421144011b 100644 --- a/Content.Server/Nutrition/Components/UtensilComponent.cs +++ b/Content.Server/Nutrition/Components/UtensilComponent.cs @@ -26,14 +26,12 @@ namespace Content.Server.Nutrition.Components /// The chance that the utensil has to break with each use. /// A value of 0 means that it is unbreakable. /// - [ViewVariables] [DataField("breakChance")] public float BreakChance; /// /// The sound to be played if the utensil breaks. /// - [ViewVariables] [DataField("breakSound")] public SoundSpecifier BreakSound = new SoundPathSpecifier("/Audio/Items/snap.ogg"); } diff --git a/Content.Server/Objectives/Conditions/StealCondition.cs b/Content.Server/Objectives/Conditions/StealCondition.cs index 609c1cc114..40219b849f 100644 --- a/Content.Server/Objectives/Conditions/StealCondition.cs +++ b/Content.Server/Objectives/Conditions/StealCondition.cs @@ -1,4 +1,3 @@ -using Content.Server.Containers; using Content.Server.Objectives.Interfaces; using JetBrains.Annotations; using Robust.Shared.Containers; @@ -20,7 +19,6 @@ namespace Content.Server.Objectives.Conditions /// Help newer players by saying e.g. "steal the chief engineer's advanced magboots" /// instead of "steal advanced magboots. Should be a loc string. /// - [ViewVariables] [DataField("owner")] private string? _owner = null; public IObjectiveCondition GetAssigned(Mind.Mind mind) diff --git a/Content.Server/Objectives/ObjectivePrototype.cs b/Content.Server/Objectives/ObjectivePrototype.cs index ff2eeae3e6..5cc7aa6f10 100644 --- a/Content.Server/Objectives/ObjectivePrototype.cs +++ b/Content.Server/Objectives/ObjectivePrototype.cs @@ -11,9 +11,9 @@ namespace Content.Server.Objectives [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables] [DataField("issuer")] public string Issuer { get; private set; } = "Unknown"; + [DataField("issuer")] public string Issuer { get; private set; } = "Unknown"; - [ViewVariables] [DataField("prob")] public float Probability { get; private set; } = 0.3f; + [DataField("prob")] public float Probability { get; private set; } = 0.3f; [ViewVariables] public float Difficulty => _difficultyOverride ?? _conditions.Sum(c => c.Difficulty); @@ -26,7 +26,6 @@ namespace Content.Server.Objectives [ViewVariables] public IReadOnlyList Conditions => _conditions; - [ViewVariables] [DataField("canBeDuplicate")] public bool CanBeDuplicateAssignment { get; private set; } diff --git a/Content.Server/PDA/Ringer/RingerComponent.cs b/Content.Server/PDA/Ringer/RingerComponent.cs index 1f4f8b72a7..cb569f9327 100644 --- a/Content.Server/PDA/Ringer/RingerComponent.cs +++ b/Content.Server/PDA/Ringer/RingerComponent.cs @@ -5,7 +5,6 @@ namespace Content.Server.PDA.Ringer [RegisterComponent] public sealed class RingerComponent : Component { - [ViewVariables] [DataField("ringtone")] public Note[] Ringtone = new Note[SharedRingerSystem.RingtoneLength]; diff --git a/Content.Server/Power/Components/ApcComponent.cs b/Content.Server/Power/Components/ApcComponent.cs index d9ed4a4e9a..3047d7a711 100644 --- a/Content.Server/Power/Components/ApcComponent.cs +++ b/Content.Server/Power/Components/ApcComponent.cs @@ -1,4 +1,3 @@ -using Content.Server.Power.EntitySystems; using Content.Server.Power.NodeGroups; using Content.Shared.APC; using Robust.Shared.Audio; @@ -18,7 +17,6 @@ public sealed class ApcComponent : BaseApcNetComponent /// /// Is the panel open for this entity's APC? /// - [ViewVariables] [DataField("open")] public bool IsApcOpen { get; set; } diff --git a/Content.Server/Power/Components/BaseNetConnectorComponent.cs b/Content.Server/Power/Components/BaseNetConnectorComponent.cs index c54f6a4b57..ae85c43557 100644 --- a/Content.Server/Power/Components/BaseNetConnectorComponent.cs +++ b/Content.Server/Power/Components/BaseNetConnectorComponent.cs @@ -28,7 +28,7 @@ namespace Content.Server.Power.Components [ViewVariables] private bool _needsNet => _net != null; - [DataField("node")] [ViewVariables] public string? NodeId { get; set; } + [DataField("node")] public string? NodeId { get; set; } protected override void Initialize() { diff --git a/Content.Server/Power/Components/CablePlacerComponent.cs b/Content.Server/Power/Components/CablePlacerComponent.cs index b4959e5d81..49b18ddb8f 100644 --- a/Content.Server/Power/Components/CablePlacerComponent.cs +++ b/Content.Server/Power/Components/CablePlacerComponent.cs @@ -6,11 +6,9 @@ namespace Content.Server.Power.Components [RegisterComponent] public sealed class CablePlacerComponent : Component { - [ViewVariables] [DataField("cablePrototypeID", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? CablePrototypeId = "CableHV"; - [ViewVariables] [DataField("blockingWireType")] public CableType BlockingCableType = CableType.HighVoltage; } diff --git a/Content.Server/Power/Components/ChargerComponent.cs b/Content.Server/Power/Components/ChargerComponent.cs index e2c7f0eae1..12265dce6e 100644 --- a/Content.Server/Power/Components/ChargerComponent.cs +++ b/Content.Server/Power/Components/ChargerComponent.cs @@ -1,4 +1,3 @@ -using Content.Shared.Containers.ItemSlots; using Content.Shared.Power; namespace Content.Server.Power.Components @@ -9,11 +8,9 @@ namespace Content.Server.Power.Components [ViewVariables] public CellChargerStatus Status; - [ViewVariables] [DataField("chargeRate")] public int ChargeRate = 20; - [ViewVariables] [DataField("slotId", required: true)] public string SlotId = string.Empty; } diff --git a/Content.Server/RCD/Components/RCDComponent.cs b/Content.Server/RCD/Components/RCDComponent.cs index 610726de0b..23c8009d56 100644 --- a/Content.Server/RCD/Components/RCDComponent.cs +++ b/Content.Server/RCD/Components/RCDComponent.cs @@ -31,7 +31,6 @@ namespace Content.Server.RCD.Components /// /// What mode are we on? Can be floors, walls, deconstruct. /// - [ViewVariables] [DataField("mode")] public RcdMode Mode = RcdMode.Floors; diff --git a/Content.Server/RatKing/RatKingComponent.cs b/Content.Server/RatKing/RatKingComponent.cs index d21f2383db..bca37237a9 100644 --- a/Content.Server/RatKing/RatKingComponent.cs +++ b/Content.Server/RatKing/RatKingComponent.cs @@ -28,7 +28,7 @@ namespace Content.Server.RatKing /// /// The action for the Domain ability /// - [ViewVariables, DataField("actionDomain", required: true)] + [DataField("actionDomain", required: true)] public InstantAction ActionDomain = new(); /// @@ -40,7 +40,7 @@ namespace Content.Server.RatKing /// /// How many moles of Miasma are released after one us of Domain /// - [ViewVariables, DataField("molesMiasmaPerDomain")] + [DataField("molesMiasmaPerDomain")] public float MolesMiasmaPerDomain = 100f; } }; diff --git a/Content.Server/Recycling/Components/RecyclerComponent.cs b/Content.Server/Recycling/Components/RecyclerComponent.cs index 45e41b7552..f7634ac2f3 100644 --- a/Content.Server/Recycling/Components/RecyclerComponent.cs +++ b/Content.Server/Recycling/Components/RecyclerComponent.cs @@ -10,7 +10,6 @@ namespace Content.Server.Recycling.Components { [Dependency] private readonly IEntityManager _entMan = default!; - [ViewVariables] [DataField("enabled")] public bool Enabled = true; diff --git a/Content.Server/Resist/CanEscapeInventoryComponent.cs b/Content.Server/Resist/CanEscapeInventoryComponent.cs index 6ba05bfec7..a41786e9b6 100644 --- a/Content.Server/Resist/CanEscapeInventoryComponent.cs +++ b/Content.Server/Resist/CanEscapeInventoryComponent.cs @@ -8,7 +8,6 @@ public sealed class CanEscapeInventoryComponent : Component /// /// Base doafter length for uncontested breakouts. /// - [ViewVariables] [DataField("baseResistTime")] public float BaseResistTime = 5f; diff --git a/Content.Server/Resist/ResistLockerComponent.cs b/Content.Server/Resist/ResistLockerComponent.cs index ec9e7f4e77..7c3e7ff201 100644 --- a/Content.Server/Resist/ResistLockerComponent.cs +++ b/Content.Server/Resist/ResistLockerComponent.cs @@ -9,7 +9,6 @@ public sealed class ResistLockerComponent : Component /// /// How long will this locker take to kick open, defaults to 2 minutes /// - [ViewVariables] [DataField("resistTime")] public float ResistTime = 120f; diff --git a/Content.Server/Salvage/SalvageMagnetComponent.cs b/Content.Server/Salvage/SalvageMagnetComponent.cs index a756a1cbdf..2c5949f6e7 100644 --- a/Content.Server/Salvage/SalvageMagnetComponent.cs +++ b/Content.Server/Salvage/SalvageMagnetComponent.cs @@ -1,8 +1,7 @@ -using Robust.Shared.Prototypes; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Content.Shared.Radio; using Content.Shared.Salvage; using Robust.Shared.GameStates; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Salvage { @@ -48,7 +47,6 @@ namespace Content.Server.Salvage [DataField("magnetState")] public MagnetState MagnetState = MagnetState.Inactive; - [ViewVariables] [DataField("salvageChannel", customTypeSerializer: typeof(PrototypeIdSerializer))] public string SalvageChannel = "Supply"; diff --git a/Content.Server/Salvage/SalvageMapPrototype.cs b/Content.Server/Salvage/SalvageMapPrototype.cs index 3893ac30f7..08c988fdfd 100644 --- a/Content.Server/Salvage/SalvageMapPrototype.cs +++ b/Content.Server/Salvage/SalvageMapPrototype.cs @@ -1,6 +1,5 @@ using Robust.Shared.Prototypes; using Robust.Shared.Utility; -using Robust.Shared.Maths; namespace Content.Server.Salvage { @@ -14,21 +13,18 @@ namespace Content.Server.Salvage /// /// Relative directory path to the given map, i.e. `Maps/Salvage/test.yml` /// - [ViewVariables] [DataField("mapPath", required: true)] public ResourcePath MapPath { get; } = default!; /// /// Map rectangle in world coordinates (to check if it fits) /// - [ViewVariables] [DataField("bounds", required: true)] public Box2 Bounds { get; } = Box2.UnitCentered; /// /// Name for admin use /// - [ViewVariables] [DataField("name")] public string Name { get; } = ""; } diff --git a/Content.Server/Shuttles/Components/DockingComponent.cs b/Content.Server/Shuttles/Components/DockingComponent.cs index 99c4c75c95..0704c2b5d9 100644 --- a/Content.Server/Shuttles/Components/DockingComponent.cs +++ b/Content.Server/Shuttles/Components/DockingComponent.cs @@ -6,14 +6,13 @@ namespace Content.Server.Shuttles.Components [RegisterComponent] public sealed class DockingComponent : SharedDockingComponent { - [ViewVariables] [DataField("dockedWith")] public EntityUid? DockedWith; [ViewVariables] public Joint? DockJoint; - [ViewVariables, DataField("dockJointId")] + [DataField("dockJointId")] public string? DockJointId; [ViewVariables] diff --git a/Content.Server/Shuttles/Components/RecentlyDockedComponent.cs b/Content.Server/Shuttles/Components/RecentlyDockedComponent.cs index 3f14a14fba..5ffbd8b893 100644 --- a/Content.Server/Shuttles/Components/RecentlyDockedComponent.cs +++ b/Content.Server/Shuttles/Components/RecentlyDockedComponent.cs @@ -7,7 +7,7 @@ namespace Content.Server.Shuttles.Components; [RegisterComponent] public sealed class RecentlyDockedComponent : Component { - [ViewVariables, DataField("lastDocked")] + [DataField("lastDocked")] public EntityUid LastDocked; [ViewVariables(VVAccess.ReadWrite), DataField("radius")] diff --git a/Content.Server/Shuttles/Components/ThrusterComponent.cs b/Content.Server/Shuttles/Components/ThrusterComponent.cs index b184fa841f..855b928400 100644 --- a/Content.Server/Shuttles/Components/ThrusterComponent.cs +++ b/Content.Server/Shuttles/Components/ThrusterComponent.cs @@ -44,7 +44,6 @@ namespace Content.Server.Shuttles.Components [DataField("thrust")] public float Thrust = 750f; - [ViewVariables] [DataField("thrusterType")] public ThrusterType Type = ThrusterType.Linear; @@ -59,9 +58,9 @@ namespace Content.Server.Shuttles.Components /// /// How much damage is done per second to anything colliding with our thrust. /// - [ViewVariables] [DataField("damage")] public DamageSpecifier? Damage = new(); + [DataField("damage")] public DamageSpecifier? Damage = new(); - [ViewVariables] [DataField("requireSpace")] + [DataField("requireSpace")] public bool RequireSpace = true; // Used for burns diff --git a/Content.Server/Singularity/Components/ContainmentFieldComponent.cs b/Content.Server/Singularity/Components/ContainmentFieldComponent.cs index c2efde638c..68a4a82c0d 100644 --- a/Content.Server/Singularity/Components/ContainmentFieldComponent.cs +++ b/Content.Server/Singularity/Components/ContainmentFieldComponent.cs @@ -10,7 +10,6 @@ public sealed class ContainmentFieldComponent : SharedContainmentFieldComponent /// The throw force for the field if an entity collides with it /// The lighter the mass the further it will throw. 5 mass will go about 4 tiles out, 70 mass goes only a couple tiles. /// - [ViewVariables] [DataField("throwForce")] public float ThrowForce = 100f; @@ -18,7 +17,6 @@ public sealed class ContainmentFieldComponent : SharedContainmentFieldComponent /// This shouldn't be at 99999 or higher to prevent the singulo glitching out /// Will throw anything at the supplied mass or less that collides with the field. /// - [ViewVariables] [DataField("maxMass")] public float MaxMass = 10000f; } diff --git a/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs b/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs index 69ceb48a4a..efed3a9a97 100644 --- a/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs +++ b/Content.Server/Singularity/Components/ContainmentFieldGeneratorComponent.cs @@ -14,7 +14,6 @@ public sealed class ContainmentFieldGeneratorComponent : SharedContainmentFieldG /// /// Store power with a cap. Decrease over time if not being powered from source. /// - [ViewVariables] [DataField("powerBuffer")] public int PowerBuffer { @@ -46,21 +45,18 @@ public sealed class ContainmentFieldGeneratorComponent : SharedContainmentFieldG /// /// Used to check if it's received power recently. /// - [ViewVariables] [DataField("accumulator")] public float Accumulator; /// /// How many seconds should the generators wait before losing power? /// - [ViewVariables] [DataField("threshold")] public float Threshold = 10f; /// /// How many tiles should this field check before giving up? /// - [ViewVariables] [DataField("maxLength")] public float MaxLength = 8F; @@ -87,7 +83,6 @@ public sealed class ContainmentFieldGeneratorComponent : SharedContainmentFieldG /// /// The masks the raycast should not go through /// - [ViewVariables] [DataField("collisionMask")] public int CollisionMask = (int) (CollisionGroup.MobMask | CollisionGroup.Impassable | CollisionGroup.MachineMask | CollisionGroup.Opaque); diff --git a/Content.Server/Singularity/Components/EmitterComponent.cs b/Content.Server/Singularity/Components/EmitterComponent.cs index a99cf7c32e..f2d8dff5e8 100644 --- a/Content.Server/Singularity/Components/EmitterComponent.cs +++ b/Content.Server/Singularity/Components/EmitterComponent.cs @@ -26,19 +26,19 @@ namespace Content.Server.Singularity.Components [ViewVariables] public int FireShotCounter; - [DataField("fireSound"), ViewVariables] + [DataField("fireSound")] public SoundSpecifier FireSound = new SoundPathSpecifier("/Audio/Weapons/emitter.ogg"); /// /// The entity that is spawned when the emitter fires. /// - [DataField("boltType"), ViewVariables] + [DataField("boltType")] public string BoltType = "EmitterBolt"; /// /// The current amount of power being used. /// - [DataField("powerUseActive"), ViewVariables] + [DataField("powerUseActive")] public int PowerUseActive = 600; /// @@ -64,13 +64,13 @@ namespace Content.Server.Singularity.Components /// /// The amount of shots that are fired in a single "burst" /// - [DataField("fireBurstSize"), ViewVariables] + [DataField("fireBurstSize")] public int FireBurstSize = 3; /// /// The time between each shot during a burst. /// - [DataField("fireInterval"), ViewVariables] + [DataField("fireInterval")] public TimeSpan FireInterval = TimeSpan.FromSeconds(2); /// @@ -82,27 +82,27 @@ namespace Content.Server.Singularity.Components /// /// The current minimum delay between bursts. /// - [DataField("fireBurstDelayMin"), ViewVariables] + [DataField("fireBurstDelayMin")] public TimeSpan FireBurstDelayMin = TimeSpan.FromSeconds(4); /// /// The current maximum delay between bursts. /// - [DataField("fireBurstDelayMax"), ViewVariables] + [DataField("fireBurstDelayMax")] public TimeSpan FireBurstDelayMax = TimeSpan.FromSeconds(10); /// /// The base minimum delay between shot bursts. /// Used for machine part rating calculations. /// - [DataField("baseFireBurstDelayMin"), ViewVariables] + [DataField("baseFireBurstDelayMin")] public TimeSpan BaseFireBurstDelayMin = TimeSpan.FromSeconds(4); /// /// The base maximum delay between shot bursts. /// Used for machine part rating calculations. /// - [DataField("baseFireBurstDelayMax"), ViewVariables] + [DataField("baseFireBurstDelayMax")] public TimeSpan BaseFireBurstDelayMax = TimeSpan.FromSeconds(10); /// diff --git a/Content.Server/Solar/Components/SolarPanelComponent.cs b/Content.Server/Solar/Components/SolarPanelComponent.cs index 78fe42b580..7fa582a02a 100644 --- a/Content.Server/Solar/Components/SolarPanelComponent.cs +++ b/Content.Server/Solar/Components/SolarPanelComponent.cs @@ -15,7 +15,6 @@ namespace Content.Server.Solar.Components /// Maximum supply output by this panel (coverage = 1) /// [DataField("maxSupply")] - [ViewVariables] public int MaxSupply = 1500; /// diff --git a/Content.Server/Storage/Components/EntityStorageComponent.cs b/Content.Server/Storage/Components/EntityStorageComponent.cs index 000d44f942..8d33c163a6 100644 --- a/Content.Server/Storage/Components/EntityStorageComponent.cs +++ b/Content.Server/Storage/Components/EntityStorageComponent.cs @@ -29,11 +29,9 @@ public sealed class EntityStorageComponent : Component, IGasMixtureHolder [DataField("removedMasks")] public int RemovedMasks; - [ViewVariables] [DataField("capacity")] public int Capacity = 30; - [ViewVariables] [DataField("isCollidableWhenOpen")] public bool IsCollidableWhenOpen; @@ -54,7 +52,6 @@ public sealed class EntityStorageComponent : Component, IGasMixtureHolder [DataField("enteringOffsetCollisionFlags")] public readonly CollisionGroup EnteringOffsetCollisionFlags = CollisionGroup.Impassable | CollisionGroup.MidImpassable; - [ViewVariables] [DataField("enteringRange")] public float EnteringRange = 0.18f; diff --git a/Content.Server/Storage/Components/SecretStashComponent.cs b/Content.Server/Storage/Components/SecretStashComponent.cs index bf72fad58d..6f18ef7372 100644 --- a/Content.Server/Storage/Components/SecretStashComponent.cs +++ b/Content.Server/Storage/Components/SecretStashComponent.cs @@ -1,5 +1,4 @@ using Content.Server.Storage.EntitySystems; -using Content.Server.Toilet; using Content.Shared.Containers.ItemSlots; using Content.Shared.Item; using Robust.Shared.Containers; @@ -20,14 +19,14 @@ namespace Content.Server.Storage.Components /// /// Max item size that can be fitted into secret stash. /// - [ViewVariables] [DataField("maxItemSize")] + [DataField("maxItemSize")] public int MaxItemSize = (int) ReferenceSizes.Pocket; /// /// IC secret stash name. For example "the toilet cistern". /// If empty string, will replace it with entity name in init. /// - [ViewVariables] [DataField("secretPartName", readOnly: true)] + [DataField("secretPartName", readOnly: true)] public string SecretPartName { get => _secretPartName; diff --git a/Content.Server/Store/Components/StoreComponent.cs b/Content.Server/Store/Components/StoreComponent.cs index efc0844f24..16b89c754b 100644 --- a/Content.Server/Store/Components/StoreComponent.cs +++ b/Content.Server/Store/Components/StoreComponent.cs @@ -1,9 +1,9 @@ using Content.Shared.FixedPoint; using Content.Shared.Store; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; using Robust.Shared.Audio; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Dictionary; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set; namespace Content.Server.Store.Components; @@ -68,7 +68,6 @@ public sealed class StoreComponent : Component /// /// The sound played to the buyer when a purchase is succesfully made. /// - [ViewVariables] [DataField("buySuccessSound")] public SoundSpecifier BuySuccessSound = new SoundPathSpecifier("/Audio/Effects/kaching.ogg"); #endregion diff --git a/Content.Server/Strip/StrippableComponent.cs b/Content.Server/Strip/StrippableComponent.cs index 0b63c12c9f..141dddec00 100644 --- a/Content.Server/Strip/StrippableComponent.cs +++ b/Content.Server/Strip/StrippableComponent.cs @@ -12,7 +12,6 @@ namespace Content.Server.Strip /// /// The strip delay for hands. /// - [ViewVariables] [DataField("handDelay")] public float HandStripDelay = 4f; diff --git a/Content.Server/Stunnable/Components/StunOnCollideComponent.cs b/Content.Server/Stunnable/Components/StunOnCollideComponent.cs index 3e63619d68..8e07959e71 100644 --- a/Content.Server/Stunnable/Components/StunOnCollideComponent.cs +++ b/Content.Server/Stunnable/Components/StunOnCollideComponent.cs @@ -27,6 +27,6 @@ namespace Content.Server.Stunnable.Components /// /// Fixture we track for the collision. /// - [ViewVariables, DataField("fixture")] public string FixtureID = "projectile"; + [DataField("fixture")] public string FixtureID = "projectile"; } } diff --git a/Content.Server/Tools/Components/LatticeCuttingComponent.cs b/Content.Server/Tools/Components/LatticeCuttingComponent.cs index 468113f4bd..addfc38b76 100644 --- a/Content.Server/Tools/Components/LatticeCuttingComponent.cs +++ b/Content.Server/Tools/Components/LatticeCuttingComponent.cs @@ -7,19 +7,15 @@ namespace Content.Server.Tools.Components; [RegisterComponent] public sealed class LatticeCuttingComponent : Component { - [ViewVariables] [DataField("toolComponentNeeded")] public bool ToolComponentNeeded = true; - [ViewVariables] [DataField("qualityNeeded", customTypeSerializer:typeof(PrototypeIdSerializer))] public string QualityNeeded = "Cutting"; - [ViewVariables] [DataField("delay")] public float Delay = 0.25f; - [ViewVariables] [DataField("vacuumDelay")] public float VacuumDelay = 1.75f; @@ -27,4 +23,4 @@ public sealed class LatticeCuttingComponent : Component /// Used for do_afters. /// public CancellationTokenSource? CancelTokenSource = null; -} \ No newline at end of file +} diff --git a/Content.Server/Tools/Components/TilePryingComponent.cs b/Content.Server/Tools/Components/TilePryingComponent.cs index a7c20fa086..6a43b471d3 100644 --- a/Content.Server/Tools/Components/TilePryingComponent.cs +++ b/Content.Server/Tools/Components/TilePryingComponent.cs @@ -7,15 +7,12 @@ namespace Content.Server.Tools.Components [RegisterComponent] public sealed class TilePryingComponent : Component { - [ViewVariables] [DataField("toolComponentNeeded")] public bool ToolComponentNeeded = true; - [ViewVariables] [DataField("qualityNeeded", customTypeSerializer:typeof(PrototypeIdSerializer))] public string QualityNeeded = "Prying"; - [ViewVariables] [DataField("delay")] public float Delay = 1f; diff --git a/Content.Server/UserInterface/ActivatableUIComponent.cs b/Content.Server/UserInterface/ActivatableUIComponent.cs index 544091cf6a..bcd34708db 100644 --- a/Content.Server/UserInterface/ActivatableUIComponent.cs +++ b/Content.Server/UserInterface/ActivatableUIComponent.cs @@ -3,7 +3,6 @@ using Robust.Server.Player; using Robust.Shared.Reflection; using Robust.Shared.Serialization; - namespace Content.Server.UserInterface { [RegisterComponent] @@ -19,7 +18,6 @@ namespace Content.Server.UserInterface [DataField("inHandsOnly")] public bool InHandsOnly { get; set; } = false; - [ViewVariables] [DataField("singleUser")] public bool SingleUser { get; set; } = false; diff --git a/Content.Server/UserInterface/IntrinsicUIComponent.cs b/Content.Server/UserInterface/IntrinsicUIComponent.cs index d003381a35..ce344b9686 100644 --- a/Content.Server/UserInterface/IntrinsicUIComponent.cs +++ b/Content.Server/UserInterface/IntrinsicUIComponent.cs @@ -10,7 +10,7 @@ public sealed class IntrinsicUIComponent : Component, ISerializationHooks /// /// List of UIs and their actions that this entity has. /// - [ViewVariables, DataField("uis", required: true)] + [DataField("uis", required: true)] public List UIs = new(); void ISerializationHooks.AfterDeserialization() diff --git a/Content.Server/Weapons/Ranged/Components/RangedDamageSoundComponent.cs b/Content.Server/Weapons/Ranged/Components/RangedDamageSoundComponent.cs index ffbee3ac6f..1897bb7d93 100644 --- a/Content.Server/Weapons/Ranged/Components/RangedDamageSoundComponent.cs +++ b/Content.Server/Weapons/Ranged/Components/RangedDamageSoundComponent.cs @@ -16,7 +16,7 @@ public sealed class RangedDamageSoundComponent : Component /// Specified sounds to apply when the entity takes damage with the specified group. /// Will fallback to defaults if none specified. /// - [ViewVariables, DataField("soundGroups", + [DataField("soundGroups", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary? SoundGroups; @@ -24,7 +24,7 @@ public sealed class RangedDamageSoundComponent : Component /// Specified sounds to apply when the entity takes damage with the specified type. /// Will fallback to defaults if none specified. /// - [ViewVariables, DataField("soundTypes", + [DataField("soundTypes", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary? SoundTypes; } diff --git a/Content.Server/Wires/WiresComponent.cs b/Content.Server/Wires/WiresComponent.cs index 1fac36af4a..8223ba7f52 100644 --- a/Content.Server/Wires/WiresComponent.cs +++ b/Content.Server/Wires/WiresComponent.cs @@ -1,5 +1,4 @@ using Robust.Shared.Audio; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Wires; @@ -21,14 +20,12 @@ public sealed class WiresComponent : Component /// /// The name of this entity's internal board. /// - [ViewVariables] [DataField("BoardName")] public string BoardName { get; set; } = "Wires"; /// /// The layout ID of this entity's wires. /// - [ViewVariables] [DataField("LayoutId", required: true)] public string LayoutId { get; set; } = default!; @@ -62,7 +59,6 @@ public sealed class WiresComponent : Component /// If this should follow the layout saved the first time the layout dictated by the /// layout ID is generated, or if a new wire order should be generated every time. /// - [ViewVariables] [DataField("alwaysRandomize")] public bool AlwaysRandomize { get; } diff --git a/Content.Shared/Access/Components/AccessReaderComponent.cs b/Content.Shared/Access/Components/AccessReaderComponent.cs index 2f86a96b47..db5f9218e8 100644 --- a/Content.Shared/Access/Components/AccessReaderComponent.cs +++ b/Content.Shared/Access/Components/AccessReaderComponent.cs @@ -24,7 +24,6 @@ namespace Content.Shared.Access.Components /// there has to be an access list that is a subset of the access in the checking list. /// [DataField("access")] - [ViewVariables] public List> AccessLists = new(); } } diff --git a/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs b/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs index 75e7fb7607..b7c0b621ee 100644 --- a/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs +++ b/Content.Shared/Access/Components/SharedIdCardConsoleComponent.cs @@ -39,7 +39,6 @@ namespace Content.Shared.Access.Components // Put this on shared so we just send the state once in PVS range rather than every time the UI updates. - [ViewVariables] [DataField("accessLevels", customTypeSerializer: typeof(PrototypeIdListSerializer))] public List AccessLevels = new() { diff --git a/Content.Shared/Atmos/Monitor/AtmosAlarmThreshold.cs b/Content.Shared/Atmos/Monitor/AtmosAlarmThreshold.cs index f83a90343b..dae855a9fb 100644 --- a/Content.Shared/Atmos/Monitor/AtmosAlarmThreshold.cs +++ b/Content.Shared/Atmos/Monitor/AtmosAlarmThreshold.cs @@ -11,32 +11,27 @@ public sealed class AtmosAlarmThreshold : IPrototype, ISerializationHooks { [IdDataField] public string ID { get; } = default!; - [ViewVariables] [DataField("ignore")] public bool Ignore; // zero bounds are not allowed - just // set the bound to null if you want // to disable it - [ViewVariables] [DataField("upperBound")] public float? UpperBound { get; private set; } - [ViewVariables] [DataField("lowerBound")] public float? LowerBound { get; private set; } // upper warning percentage // must always cause UpperWarningBound // to be smaller - [ViewVariables] [DataField("upperWarnAround")] public float? UpperWarningPercentage { get; private set; } // lower warning percentage // must always cause LowerWarningBound // to be larger - [ViewVariables] [DataField("lowerWarnAround")] public float? LowerWarningPercentage { get; private set; } diff --git a/Content.Shared/Beam/Components/SharedBeamComponent.cs b/Content.Shared/Beam/Components/SharedBeamComponent.cs index f5935447fd..a903604b15 100644 --- a/Content.Shared/Beam/Components/SharedBeamComponent.cs +++ b/Content.Shared/Beam/Components/SharedBeamComponent.cs @@ -1,5 +1,4 @@ using Robust.Shared.Audio; -using Robust.Shared.Map; using Robust.Shared.Serialization; namespace Content.Shared.Beam.Components; @@ -12,35 +11,30 @@ public abstract class SharedBeamComponent : Component /// A unique list of targets that this beam collided with. /// Useful for code like Arcing in the Lightning Component. /// - [ViewVariables] [DataField("hitTargets")] public HashSet HitTargets = new(); /// /// The virtual entity representing a beam. /// - [ViewVariables] [DataField("virtualBeamController")] public EntityUid? VirtualBeamController; /// /// The first beam created, useful for keeping track of chains. /// - [ViewVariables] [DataField("originBeam")] public EntityUid OriginBeam; /// /// The entity that fired the beam originally /// - [ViewVariables] [DataField("beamShooter")] public EntityUid BeamShooter; /// /// A unique list of created beams that the controller keeps track of. /// - [ViewVariables] [DataField("createdBeams")] public HashSet CreatedBeams = new(); diff --git a/Content.Shared/Blocking/Components/BlockingComponent.cs b/Content.Shared/Blocking/Components/BlockingComponent.cs index 08188e79e5..fc2d4e3923 100644 --- a/Content.Shared/Blocking/Components/BlockingComponent.cs +++ b/Content.Shared/Blocking/Components/BlockingComponent.cs @@ -58,7 +58,6 @@ public sealed class BlockingComponent : Component /// /// The sound to be played when you get hit while actively blocking /// - [ViewVariables] [DataField("blockSound")] public SoundSpecifier BlockSound = new SoundPathSpecifier("/Audio/Weapons/block_metal1.ogg"); } diff --git a/Content.Shared/Blocking/Components/BlockingUserComponent.cs b/Content.Shared/Blocking/Components/BlockingUserComponent.cs index 6292d7b9c3..6e53d8a6bc 100644 --- a/Content.Shared/Blocking/Components/BlockingUserComponent.cs +++ b/Content.Shared/Blocking/Components/BlockingUserComponent.cs @@ -12,11 +12,9 @@ public sealed class BlockingUserComponent : Component /// /// The entity that's being used to block /// - [ViewVariables] [DataField("blockingItem")] public EntityUid? BlockingItem; - [ViewVariables] [DataField("modifiers")] public DamageModifierSet Modifiers = default!; @@ -24,7 +22,6 @@ public sealed class BlockingUserComponent : Component /// Stores the entities original bodytype /// Used so that it can be put back to what it was after anchoring /// - [ViewVariables] [DataField("originalBodyType")] public BodyType OriginalBodyType; diff --git a/Content.Shared/Body/Components/BodyComponent.cs b/Content.Shared/Body/Components/BodyComponent.cs index 052f084c61..f87d9c544d 100644 --- a/Content.Shared/Body/Components/BodyComponent.cs +++ b/Content.Shared/Body/Components/BodyComponent.cs @@ -12,15 +12,12 @@ namespace Content.Shared.Body.Components; [Access(typeof(SharedBodySystem))] public sealed class BodyComponent : Component, IDraggable { - [ViewVariables] [DataField("prototype", customTypeSerializer: typeof(PrototypeIdSerializer))] public readonly string? Prototype; - [ViewVariables] [DataField("root")] public BodyPartSlot Root = default!; - [ViewVariables] [DataField("gibSound")] public SoundSpecifier GibSound = new SoundCollectionSpecifier("gib"); diff --git a/Content.Shared/Body/Organ/OrganComponent.cs b/Content.Shared/Body/Organ/OrganComponent.cs index a01c8d8537..bd0465ff36 100644 --- a/Content.Shared/Body/Organ/OrganComponent.cs +++ b/Content.Shared/Body/Organ/OrganComponent.cs @@ -7,11 +7,9 @@ namespace Content.Shared.Body.Organ; [Access(typeof(SharedBodySystem))] public sealed class OrganComponent : Component { - [ViewVariables] [DataField("body")] public EntityUid? Body; - [ViewVariables] [DataField("parent")] public OrganSlot? ParentSlot; } diff --git a/Content.Shared/Body/Part/BodyPartComponent.cs b/Content.Shared/Body/Part/BodyPartComponent.cs index ed4fdb7b59..1cc333b9bb 100644 --- a/Content.Shared/Body/Part/BodyPartComponent.cs +++ b/Content.Shared/Body/Part/BodyPartComponent.cs @@ -9,23 +9,18 @@ namespace Content.Shared.Body.Part; [Access(typeof(SharedBodySystem))] public sealed class BodyPartComponent : Component { - [ViewVariables] [DataField("body")] public EntityUid? Body; - [ViewVariables] [DataField("parent")] public BodyPartSlot? ParentSlot; - [ViewVariables] [DataField("children")] public Dictionary Children = new(); - [ViewVariables] [DataField("organs")] public Dictionary Organs = new(); - [ViewVariables] [DataField("partType")] public BodyPartType PartType = BodyPartType.Other; @@ -34,11 +29,9 @@ public sealed class BodyPartComponent : Component /// Whether or not the owning will die if all /// s of this type are removed from it. /// - [ViewVariables] [DataField("vital")] public bool IsVital; - [ViewVariables] [DataField("symmetry")] public BodyPartSymmetry Symmetry = BodyPartSymmetry.None; } diff --git a/Content.Shared/Buckle/Components/SharedBuckleComponent.cs b/Content.Shared/Buckle/Components/SharedBuckleComponent.cs index c14af689dc..026a5b8794 100644 --- a/Content.Shared/Buckle/Components/SharedBuckleComponent.cs +++ b/Content.Shared/Buckle/Components/SharedBuckleComponent.cs @@ -11,7 +11,6 @@ public abstract class SharedBuckleComponent : Component /// /// The range from which this entity can buckle to a . /// - [ViewVariables] [DataField("range")] public float Range { get; protected set; } = SharedInteractionSystem.InteractionRange / 1.4f; diff --git a/Content.Shared/CardboardBox/Components/CardboardBoxComponent.cs b/Content.Shared/CardboardBox/Components/CardboardBoxComponent.cs index 7fdccaaa9e..fa4bb3b639 100644 --- a/Content.Shared/CardboardBox/Components/CardboardBoxComponent.cs +++ b/Content.Shared/CardboardBox/Components/CardboardBoxComponent.cs @@ -14,7 +14,6 @@ public sealed class CardboardBoxComponent : Component /// /// The person in control of this box /// - [ViewVariables] [DataField("mover")] public EntityUid? Mover; diff --git a/Content.Shared/Cargo/Components/CargoShuttleComponent.cs b/Content.Shared/Cargo/Components/CargoShuttleComponent.cs index a4174bde15..5e85babab0 100644 --- a/Content.Shared/Cargo/Components/CargoShuttleComponent.cs +++ b/Content.Shared/Cargo/Components/CargoShuttleComponent.cs @@ -26,6 +26,6 @@ public sealed class CargoShuttleComponent : Component /// /// The assigned station for this cargo shuttle. /// - [ViewVariables, DataField("station")] + [DataField("station")] public EntityUid? Station; } diff --git a/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs b/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs index 63bb301047..e918f1c062 100644 --- a/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs +++ b/Content.Shared/Cargo/Prototypes/CargoProductPrototype.cs @@ -59,35 +59,30 @@ namespace Content.Shared.Cargo.Prototypes /// /// Texture path used in the CargoConsole GUI. /// - [ViewVariables] [DataField("icon")] public SpriteSpecifier Icon { get; } = SpriteSpecifier.Invalid; /// /// The prototype name of the product. /// - [ViewVariables] [DataField("product", customTypeSerializer: typeof(PrototypeIdSerializer))] public string Product { get; } = string.Empty; /// /// The point cost of the product. /// - [ViewVariables] [DataField("cost")] public int PointCost { get; } /// /// The prototype category of the product. (e.g. Engineering, Medical) /// - [ViewVariables] [DataField("category")] public string Category { get; } = string.Empty; /// /// The prototype group of the product. (e.g. Contraband) /// - [ViewVariables] [DataField("group")] public string Group { get; } = string.Empty; } diff --git a/Content.Shared/Cargo/Prototypes/CargoShuttlePrototype.cs b/Content.Shared/Cargo/Prototypes/CargoShuttlePrototype.cs index 8dac2a98b0..5d28411126 100644 --- a/Content.Shared/Cargo/Prototypes/CargoShuttlePrototype.cs +++ b/Content.Shared/Cargo/Prototypes/CargoShuttlePrototype.cs @@ -12,9 +12,9 @@ public sealed class CargoShuttlePrototype : IPrototype [IdDataField] public string ID { get; } = default!; - [ViewVariables, DataField("path")] + [DataField("path")] public ResourcePath Path = default!; - [ViewVariables, DataField("nameDataset", customTypeSerializer:typeof(PrototypeIdSerializer))] + [DataField("nameDataset", customTypeSerializer:typeof(PrototypeIdSerializer))] public string NameDataset = "CargoShuttleNames"; } diff --git a/Content.Shared/Chemistry/Components/Solution.cs b/Content.Shared/Chemistry/Components/Solution.cs index 77722af789..a0849febda 100644 --- a/Content.Shared/Chemistry/Components/Solution.cs +++ b/Content.Shared/Chemistry/Components/Solution.cs @@ -18,7 +18,6 @@ namespace Content.Shared.Chemistry.Components public sealed partial class Solution : IEnumerable, ISerializationHooks { // Most objects on the station hold only 1 or 2 reagents - [ViewVariables] [DataField("reagents")] public List Contents = new(2); diff --git a/Content.Shared/Climbing/SharedClimbableComponent.cs b/Content.Shared/Climbing/SharedClimbableComponent.cs index 4e0a77cd44..fee70cf1ce 100644 --- a/Content.Shared/Climbing/SharedClimbableComponent.cs +++ b/Content.Shared/Climbing/SharedClimbableComponent.cs @@ -7,6 +7,6 @@ namespace Content.Shared.Climbing /// /// The range from which this entity can be climbed. /// - [ViewVariables] [DataField("range")] public float Range = SharedInteractionSystem.InteractionRange / 1.4f; + [DataField("range")] public float Range = SharedInteractionSystem.InteractionRange / 1.4f; } } diff --git a/Content.Shared/Construction/ConstructionGraphEdge.cs b/Content.Shared/Construction/ConstructionGraphEdge.cs index 19659a0382..81e03cd8b4 100644 --- a/Content.Shared/Construction/ConstructionGraphEdge.cs +++ b/Content.Shared/Construction/ConstructionGraphEdge.cs @@ -15,7 +15,6 @@ namespace Content.Shared.Construction [DataField("completed", serverOnly: true)] private IGraphAction[] _completed = Array.Empty(); - [ViewVariables] [DataField("to", required:true)] public string Target { get; } = string.Empty; diff --git a/Content.Shared/Construction/ConstructionGraphNode.cs b/Content.Shared/Construction/ConstructionGraphNode.cs index 9fdb8a0dab..c72031cffb 100644 --- a/Content.Shared/Construction/ConstructionGraphNode.cs +++ b/Content.Shared/Construction/ConstructionGraphNode.cs @@ -12,7 +12,6 @@ namespace Content.Shared.Construction [DataField("edges")] private ConstructionGraphEdge[] _edges = Array.Empty(); - [ViewVariables] [DataField("node", required: true)] public string Name { get; private set; } = default!; @@ -22,7 +21,6 @@ namespace Content.Shared.Construction [ViewVariables] public IReadOnlyList Actions => _actions; - [ViewVariables] [DataField("entity")] public string? Entity { get; private set; } diff --git a/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs b/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs index 374f8a83a6..e8f1aa56ef 100644 --- a/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs +++ b/Content.Shared/Construction/Prototypes/ConstructionGraphPrototype.cs @@ -16,7 +16,6 @@ namespace Content.Shared.Construction.Prototypes [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables] [DataField("start")] public string? Start { get; } diff --git a/Content.Shared/Crayon/SharedCrayonComponent.cs b/Content.Shared/Crayon/SharedCrayonComponent.cs index 9a3891c5d5..a442d35293 100644 --- a/Content.Shared/Crayon/SharedCrayonComponent.cs +++ b/Content.Shared/Crayon/SharedCrayonComponent.cs @@ -8,7 +8,7 @@ namespace Content.Shared.Crayon { public string SelectedState { get; set; } = string.Empty; - [ViewVariables] [DataField("color")] public Color Color; + [DataField("color")] public Color Color; [Serializable, NetSerializable] public enum CrayonUiKey : byte diff --git a/Content.Shared/Damage/Components/StaminaComponent.cs b/Content.Shared/Damage/Components/StaminaComponent.cs index 48bd01427a..1b4d551c13 100644 --- a/Content.Shared/Damage/Components/StaminaComponent.cs +++ b/Content.Shared/Damage/Components/StaminaComponent.cs @@ -1,5 +1,4 @@ using Robust.Shared.GameStates; -using Robust.Shared.Serialization.TypeSerializers.Implementations; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom; namespace Content.Shared.Damage.Components; @@ -43,6 +42,6 @@ public sealed class StaminaComponent : Component /// /// To avoid continuously updating our data we track the last time we updated so we can extrapolate our current stamina. /// - [ViewVariables, DataField("lastUpdate", customTypeSerializer:typeof(TimeOffsetSerializer))] + [DataField("lastUpdate", customTypeSerializer:typeof(TimeOffsetSerializer))] public TimeSpan NextUpdate = TimeSpan.Zero; } diff --git a/Content.Shared/Dragon/SharedDragonRiftComponent.cs b/Content.Shared/Dragon/SharedDragonRiftComponent.cs index 702e1d0667..5f629e8e87 100644 --- a/Content.Shared/Dragon/SharedDragonRiftComponent.cs +++ b/Content.Shared/Dragon/SharedDragonRiftComponent.cs @@ -6,7 +6,7 @@ namespace Content.Shared.Dragon; [NetworkedComponent] public abstract class SharedDragonRiftComponent : Component { - [ViewVariables, DataField("state")] + [DataField("state")] public DragonRiftState State = DragonRiftState.Charging; } diff --git a/Content.Shared/EntityList/EntityListPrototype.cs b/Content.Shared/EntityList/EntityListPrototype.cs index 9a0e6f06b2..997bcc462e 100644 --- a/Content.Shared/EntityList/EntityListPrototype.cs +++ b/Content.Shared/EntityList/EntityListPrototype.cs @@ -11,7 +11,6 @@ namespace Content.Shared.EntityList [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables] [DataField("entities", customTypeSerializer: typeof(PrototypeIdListSerializer))] public ImmutableList EntityIds { get; } = ImmutableList.Empty; diff --git a/Content.Shared/Humanoid/Markings/Marking.cs b/Content.Shared/Humanoid/Markings/Marking.cs index bfdd618e45..c02b8b2a7a 100644 --- a/Content.Shared/Humanoid/Markings/Marking.cs +++ b/Content.Shared/Humanoid/Markings/Marking.cs @@ -43,7 +43,6 @@ namespace Content.Shared.Humanoid.Markings /// ID of the marking prototype. /// [DataField("markingId")] - [ViewVariables] public string MarkingId { get; } = default!; /// diff --git a/Content.Shared/Kitchen/Components/SharedKitchenSpikeComponent.cs b/Content.Shared/Kitchen/Components/SharedKitchenSpikeComponent.cs index 685b77c378..cee5232073 100644 --- a/Content.Shared/Kitchen/Components/SharedKitchenSpikeComponent.cs +++ b/Content.Shared/Kitchen/Components/SharedKitchenSpikeComponent.cs @@ -7,7 +7,6 @@ namespace Content.Shared.Kitchen.Components { public abstract class SharedKitchenSpikeComponent : Component, IDragDropOn { - [ViewVariables] [DataField("delay")] public float SpikeDelay = 7.0f; diff --git a/Content.Shared/Lathe/LatheComponent.cs b/Content.Shared/Lathe/LatheComponent.cs index 0c3fb5c69f..abf462e936 100644 --- a/Content.Shared/Lathe/LatheComponent.cs +++ b/Content.Shared/Lathe/LatheComponent.cs @@ -47,7 +47,6 @@ namespace Content.Shared.Lathe [DataField("runningState", required: true)] public string RunningState = default!; - [ViewVariables] [DataField("ignoreColor")] public bool IgnoreColor; #endregion diff --git a/Content.Shared/Light/Component/HandheldLightComponent.cs b/Content.Shared/Light/Component/HandheldLightComponent.cs index 2d795d0041..b4e13896b0 100644 --- a/Content.Shared/Light/Component/HandheldLightComponent.cs +++ b/Content.Shared/Light/Component/HandheldLightComponent.cs @@ -48,14 +48,12 @@ namespace Content.Shared.Light /// /// Specify the ID of the light behaviour to use when the state of the light is Dying /// - [ViewVariables] [DataField("blinkingBehaviourId")] public string BlinkingBehaviourId { get; set; } = string.Empty; /// /// Specify the ID of the light behaviour to use when the state of the light is LowPower /// - [ViewVariables] [DataField("radiatingBehaviourId")] public string RadiatingBehaviourId { get; set; } = string.Empty; diff --git a/Content.Shared/Light/Component/SharedExpendableLightComponent.cs b/Content.Shared/Light/Component/SharedExpendableLightComponent.cs index 5fcd1c9ccb..6f4708c934 100644 --- a/Content.Shared/Light/Component/SharedExpendableLightComponent.cs +++ b/Content.Shared/Light/Component/SharedExpendableLightComponent.cs @@ -28,47 +28,36 @@ namespace Content.Shared.Light.Component [ViewVariables(VVAccess.ReadOnly)] public ExpendableLightState CurrentState { get; set; } - [ViewVariables] [DataField("turnOnBehaviourID")] public string TurnOnBehaviourID { get; set; } = string.Empty; - [ViewVariables] [DataField("fadeOutBehaviourID")] public string FadeOutBehaviourID { get; set; } = string.Empty; - [ViewVariables] [DataField("glowDuration")] public float GlowDuration { get; set; } = 60 * 15f; - [ViewVariables] [DataField("fadeOutDuration")] public float FadeOutDuration { get; set; } = 60 * 5f; - [ViewVariables] [DataField("spentDesc")] public string SpentDesc { get; set; } = string.Empty; - [ViewVariables] [DataField("spentName")] public string SpentName { get; set; } = string.Empty; - [ViewVariables] [DataField("iconStateSpent")] public string IconStateSpent { get; set; } = string.Empty; - [ViewVariables] [DataField("iconStateOn")] public string IconStateLit { get; set; } = string.Empty; - [ViewVariables] [DataField("litSound", required: true)] public SoundSpecifier LitSound { get; set; } = default!; - [ViewVariables] [DataField("loopedSound")] public string? LoopedSound { get; set; } = null; - [ViewVariables] [DataField("dieSound")] public SoundSpecifier? DieSound { get; set; } = null; } diff --git a/Content.Shared/Lightning/Components/SharedLightningComponent.cs b/Content.Shared/Lightning/Components/SharedLightningComponent.cs index 243a97ed04..24e5650984 100644 --- a/Content.Shared/Lightning/Components/SharedLightningComponent.cs +++ b/Content.Shared/Lightning/Components/SharedLightningComponent.cs @@ -33,7 +33,6 @@ public abstract class SharedLightningComponent : Component /// /// The target that the lightning will Arc to. /// - [ViewVariables] [DataField("arcTarget")] public EntityUid ArcTarget; @@ -47,14 +46,12 @@ public abstract class SharedLightningComponent : Component /// /// List of targets that this collided with already /// - [ViewVariables] [DataField("arcTargets")] public HashSet ArcTargets = new(); /// /// What should this arc to? /// - [ViewVariables] [DataField("collisionMask")] public int CollisionMask = (int) (CollisionGroup.MobMask | CollisionGroup.MachineMask); } diff --git a/Content.Shared/Materials/MaterialComponent.cs b/Content.Shared/Materials/MaterialComponent.cs index 6adf7e02f8..fedba15298 100644 --- a/Content.Shared/Materials/MaterialComponent.cs +++ b/Content.Shared/Materials/MaterialComponent.cs @@ -12,7 +12,6 @@ namespace Content.Shared.Materials [RegisterComponent, NetworkedComponent] public sealed class MaterialComponent : Component { - [ViewVariables] [DataField("materials", customTypeSerializer:typeof(PrototypeIdDictionarySerializer))] // ReSharper disable once CollectionNeverUpdated.Local public readonly Dictionary _materials = new(); diff --git a/Content.Shared/Materials/MaterialPrototype.cs b/Content.Shared/Materials/MaterialPrototype.cs index 68b055e52a..fd72a3e880 100644 --- a/Content.Shared/Materials/MaterialPrototype.cs +++ b/Content.Shared/Materials/MaterialPrototype.cs @@ -27,11 +27,9 @@ namespace Content.Shared.Materials [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables] [DataField("stack", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? StackId { get; } = null; - [ViewVariables] [DataField("name")] public string Name { @@ -39,14 +37,12 @@ namespace Content.Shared.Materials private set => _name = Loc.GetString(value); } - [ViewVariables] [DataField("color")] public Color Color { get; } = Color.Gray; /// /// An icon used to represent the material in graphic interfaces. /// - [ViewVariables] [DataField("icon")] public SpriteSpecifier Icon { get; } = SpriteSpecifier.Invalid; diff --git a/Content.Shared/Materials/MaterialStorageComponent.cs b/Content.Shared/Materials/MaterialStorageComponent.cs index 35e9307faf..95b03c3d13 100644 --- a/Content.Shared/Materials/MaterialStorageComponent.cs +++ b/Content.Shared/Materials/MaterialStorageComponent.cs @@ -11,7 +11,7 @@ namespace Content.Shared.Materials; [RegisterComponent, NetworkedComponent] public sealed class MaterialStorageComponent : Component { - [DataField("storage", customTypeSerializer: typeof(PrototypeIdDictionarySerializer)), ViewVariables] + [DataField("storage", customTypeSerializer: typeof(PrototypeIdDictionarySerializer))] public Dictionary Storage { get; set; } = new(); /// @@ -23,14 +23,12 @@ public sealed class MaterialStorageComponent : Component /// /// Whitelist for specifying the kind of items that can be insert into this entity. /// - [ViewVariables] [DataField("whitelist")] public EntityWhitelist? EntityWhitelist; /// /// Whitelist generated on runtime for what specific materials can be inserted into this entity. /// - [ViewVariables] [DataField("materialWhiteList", customTypeSerializer: typeof(PrototypeIdListSerializer))] public List? MaterialWhiteList; diff --git a/Content.Shared/MobState/Components/MobStateComponent.cs b/Content.Shared/MobState/Components/MobStateComponent.cs index 4df2d5a1ac..932c27e803 100644 --- a/Content.Shared/MobState/Components/MobStateComponent.cs +++ b/Content.Shared/MobState/Components/MobStateComponent.cs @@ -23,7 +23,6 @@ namespace Content.Shared.MobState.Components /// to or higher than the int key, but lower than the next threshold. /// Ordered from lowest to highest. /// - [ViewVariables] [DataField("thresholds")] public readonly SortedDictionary _lowestToHighestStates = new(); diff --git a/Content.Shared/Movement/Components/JetpackComponent.cs b/Content.Shared/Movement/Components/JetpackComponent.cs index c9c90a8706..c4128a6572 100644 --- a/Content.Shared/Movement/Components/JetpackComponent.cs +++ b/Content.Shared/Movement/Components/JetpackComponent.cs @@ -1,5 +1,4 @@ using Content.Shared.Actions.ActionTypes; -using Content.Shared.Atmos; using Robust.Shared.GameStates; namespace Content.Shared.Movement.Components; @@ -10,7 +9,7 @@ public sealed class JetpackComponent : Component [ViewVariables(VVAccess.ReadWrite), DataField("moleUsage")] public float MoleUsage = 0.012f; - [ViewVariables, DataField("toggleAction", required: true)] + [DataField("toggleAction", required: true)] public InstantAction ToggleAction = new(); [ViewVariables(VVAccess.ReadWrite), DataField("acceleration")] diff --git a/Content.Shared/Movement/Components/SlowContactsComponent.cs b/Content.Shared/Movement/Components/SlowContactsComponent.cs index 0ce4696e56..2870c7c454 100644 --- a/Content.Shared/Movement/Components/SlowContactsComponent.cs +++ b/Content.Shared/Movement/Components/SlowContactsComponent.cs @@ -7,10 +7,10 @@ namespace Content.Shared.Movement.Components; [NetworkedComponent, RegisterComponent] public sealed class SlowContactsComponent : Component { - [ViewVariables, DataField("walkSpeedModifier")] + [DataField("walkSpeedModifier")] public float WalkSpeedModifier { get; set; } = 1.0f; - [ViewVariables, DataField("sprintSpeedModifier")] + [DataField("sprintSpeedModifier")] public float SprintSpeedModifier { get; set; } = 1.0f; [DataField("ignoreWhitelist")] diff --git a/Content.Shared/Nutrition/Components/CreamPieComponent.cs b/Content.Shared/Nutrition/Components/CreamPieComponent.cs index 00ba55a3f9..f38175df46 100644 --- a/Content.Shared/Nutrition/Components/CreamPieComponent.cs +++ b/Content.Shared/Nutrition/Components/CreamPieComponent.cs @@ -7,11 +7,9 @@ namespace Content.Shared.Nutrition.Components [RegisterComponent] public sealed class CreamPieComponent : Component { - [ViewVariables] [DataField("paralyzeTime")] public float ParalyzeTime { get; } = 1f; - [ViewVariables] [DataField("sound")] public SoundSpecifier Sound { get; } = new SoundCollectionSpecifier("desecration"); diff --git a/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs b/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs index 547ce52b03..9f7794b30a 100644 --- a/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs +++ b/Content.Shared/Nutrition/Components/SharedButcherableComponent.cs @@ -9,7 +9,6 @@ namespace Content.Shared.Nutrition.Components [RegisterComponent] public sealed class SharedButcherableComponent : Component, IDraggable { - [ViewVariables] [DataField("spawned", required: true)] public List SpawnedEntities = new(); diff --git a/Content.Shared/Paper/StampComponent.cs b/Content.Shared/Paper/StampComponent.cs index 08198259f4..ccb4575662 100644 --- a/Content.Shared/Paper/StampComponent.cs +++ b/Content.Shared/Paper/StampComponent.cs @@ -6,13 +6,11 @@ namespace Content.Shared.Paper /// /// The loc string name that will be stamped to the piece of paper on examine. /// - [ViewVariables] [DataField("stampedName")] public string StampedName { get; set; } = "stamp-component-stamped-name-default"; /// /// Tne sprite state of the stamp to display on the paper from bureacracy.rsi. /// - [ViewVariables] [DataField("stampState")] public string StampState { get; set; } = "paper_stamp-generic"; } diff --git a/Content.Shared/Placeable/PlaceableSurfaceComponent.cs b/Content.Shared/Placeable/PlaceableSurfaceComponent.cs index e946c41391..63eee42089 100644 --- a/Content.Shared/Placeable/PlaceableSurfaceComponent.cs +++ b/Content.Shared/Placeable/PlaceableSurfaceComponent.cs @@ -7,15 +7,12 @@ namespace Content.Shared.Placeable [Access(typeof(PlaceableSurfaceSystem))] public sealed class PlaceableSurfaceComponent : Component { - [ViewVariables] [DataField("isPlaceable")] public bool IsPlaceable { get; set; } = true; - [ViewVariables] [DataField("placeCentered")] public bool PlaceCentered { get; set; } - [ViewVariables] [DataField("positionOffset")] public Vector2 PositionOffset { get; set; } } diff --git a/Content.Shared/Radio/RadioChannelPrototype.cs b/Content.Shared/Radio/RadioChannelPrototype.cs index b6cb011b37..d462b3ceed 100644 --- a/Content.Shared/Radio/RadioChannelPrototype.cs +++ b/Content.Shared/Radio/RadioChannelPrototype.cs @@ -8,18 +8,18 @@ namespace Content.Shared.Radio /// /// Human-readable name for the channel. /// - [ViewVariables] [DataField("name")] public string Name { get; private set; } = string.Empty; + [DataField("name")] public string Name { get; private set; } = string.Empty; [ViewVariables(VVAccess.ReadOnly)] public string LocalizedName => Loc.GetString(Name); /// /// Single-character prefix to determine what channel a message should be sent to. /// - [ViewVariables] [DataField("keycode")] public char KeyCode { get; private set; } = '\0'; + [DataField("keycode")] public char KeyCode { get; private set; } = '\0'; - [ViewVariables] [DataField("frequency")] public int Frequency { get; private set; } = 0; + [DataField("frequency")] public int Frequency { get; private set; } = 0; - [ViewVariables] [DataField("color")] public Color Color { get; private set; } = Color.Lime; + [DataField("color")] public Color Color { get; private set; } = Color.Lime; [ViewVariables] [IdDataFieldAttribute] diff --git a/Content.Shared/Research/Prototypes/TechnologyPrototype.cs b/Content.Shared/Research/Prototypes/TechnologyPrototype.cs index 583835125c..55be7b70bc 100644 --- a/Content.Shared/Research/Prototypes/TechnologyPrototype.cs +++ b/Content.Shared/Research/Prototypes/TechnologyPrototype.cs @@ -18,7 +18,6 @@ namespace Content.Shared.Research.Prototypes /// /// The name this technology will have on user interfaces. /// - [ViewVariables] [DataField("name")] public string Name { @@ -37,7 +36,6 @@ namespace Content.Shared.Research.Prototypes /// /// A short description of the technology. /// - [ViewVariables] [DataField("description")] public string Description { @@ -50,7 +48,6 @@ namespace Content.Shared.Research.Prototypes /// /// The required research points to unlock this technology. /// - [ViewVariables] [DataField("requiredPoints")] public int RequiredPoints { get; } @@ -63,7 +60,6 @@ namespace Content.Shared.Research.Prototypes /// /// A list of recipe IDs this technology unlocks. /// - [ViewVariables] [DataField("unlockedRecipes", customTypeSerializer:typeof(PrototypeIdListSerializer))] public List UnlockedRecipes { get; } = new(); } diff --git a/Content.Shared/Revenant/Components/RevenantComponent.cs b/Content.Shared/Revenant/Components/RevenantComponent.cs index 3a50ebc9d6..60fa510bff 100644 --- a/Content.Shared/Revenant/Components/RevenantComponent.cs +++ b/Content.Shared/Revenant/Components/RevenantComponent.cs @@ -51,7 +51,7 @@ public sealed class RevenantComponent : Component /// /// The duration of the soul search /// - [ViewVariables, DataField("soulSearchDuration")] + [DataField("soulSearchDuration")] public float SoulSearchDuration = 2.5f; /// @@ -59,7 +59,7 @@ public sealed class RevenantComponent : Component /// the first float corresponds to amount of time the entity is stunned. /// the second corresponds to the amount of time the entity is made solid. /// - [ViewVariables, DataField("harvestDebuffs")] + [DataField("harvestDebuffs")] public Vector2 HarvestDebuffs = (5, 5); /// @@ -86,7 +86,7 @@ public sealed class RevenantComponent : Component /// the first float corresponds to amount of time the entity is stunned. /// the second corresponds to the amount of time the entity is made solid. /// - [ViewVariables, DataField("defileDebuffs")] + [DataField("defileDebuffs")] public Vector2 DefileDebuffs = (1, 4); /// @@ -121,7 +121,7 @@ public sealed class RevenantComponent : Component /// the first float corresponds to amount of time the entity is stunned. /// the second corresponds to the amount of time the entity is made solid. /// - [ViewVariables, DataField("overloadDebuffs")] + [DataField("overloadDebuffs")] public Vector2 OverloadDebuffs = (3, 8); /// @@ -149,7 +149,7 @@ public sealed class RevenantComponent : Component /// the first float corresponds to amount of time the entity is stunned. /// the second corresponds to the amount of time the entity is made solid. /// - [ViewVariables, DataField("blightDebuffs")] + [DataField("blightDebuffs")] public Vector2 BlightDebuffs = (2, 5); /// @@ -177,7 +177,7 @@ public sealed class RevenantComponent : Component /// the first float corresponds to amount of time the entity is stunned. /// the second corresponds to the amount of time the entity is made solid. /// - [ViewVariables, DataField("malfunctionDebuffs")] + [DataField("malfunctionDebuffs")] public Vector2 MalfunctionDebuffs = (2, 8); /// diff --git a/Content.Shared/Roles/JobPrototype.cs b/Content.Shared/Roles/JobPrototype.cs index 8807345f59..977997108e 100644 --- a/Content.Shared/Roles/JobPrototype.cs +++ b/Content.Shared/Roles/JobPrototype.cs @@ -16,7 +16,7 @@ namespace Content.Shared.Roles [IdDataFieldAttribute] public string ID { get; } = default!; - [ViewVariables, DataField("playTimeTracker", required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] + [DataField("playTimeTracker", required: true, customTypeSerializer: typeof(PrototypeIdSerializer))] public string PlayTimeTracker { get; } = string.Empty; [DataField("supervisors")] diff --git a/Content.Shared/Shuttles/Components/RadarConsoleComponent.cs b/Content.Shared/Shuttles/Components/RadarConsoleComponent.cs index 4e20a8b5f8..2cc37620ec 100644 --- a/Content.Shared/Shuttles/Components/RadarConsoleComponent.cs +++ b/Content.Shared/Shuttles/Components/RadarConsoleComponent.cs @@ -16,6 +16,6 @@ public sealed class RadarConsoleComponent : Component .SetRange(this, value); } - [ViewVariables, DataField("maxRange")] + [DataField("maxRange")] public float MaxRange = 256f; } diff --git a/Content.Shared/Slippery/SlipperyComponent.cs b/Content.Shared/Slippery/SlipperyComponent.cs index ec32143a63..1bf8fde3bf 100644 --- a/Content.Shared/Slippery/SlipperyComponent.cs +++ b/Content.Shared/Slippery/SlipperyComponent.cs @@ -18,7 +18,6 @@ namespace Content.Shared.Slippery /// /// Path to the sound to be played when a mob slips. /// - [ViewVariables] [DataField("slipSound")] [Access(Other = AccessPermissions.ReadWriteExecute)] public SoundSpecifier SlipSound = new SoundPathSpecifier("/Audio/Effects/slip.ogg"); diff --git a/Content.Shared/Spawners/Components/TimedDespawnComponent.cs b/Content.Shared/Spawners/Components/TimedDespawnComponent.cs index 3eb6ca7e9a..8f3dc6edc5 100644 --- a/Content.Shared/Spawners/Components/TimedDespawnComponent.cs +++ b/Content.Shared/Spawners/Components/TimedDespawnComponent.cs @@ -9,7 +9,6 @@ public sealed class TimedDespawnComponent : Component /// /// How long the entity will exist before despawning /// - [ViewVariables] [DataField("lifetime")] public float Lifetime = 5f; } diff --git a/Content.Shared/Tag/TagComponent.cs b/Content.Shared/Tag/TagComponent.cs index 2f34357de3..b2809e0fe6 100644 --- a/Content.Shared/Tag/TagComponent.cs +++ b/Content.Shared/Tag/TagComponent.cs @@ -1,12 +1,10 @@ -using Robust.Shared.Serialization; -using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set; namespace Content.Shared.Tag { [RegisterComponent, Access(typeof(TagSystem))] public sealed class TagComponent : Component { - [ViewVariables] [DataField("tags", customTypeSerializer: typeof(PrototypeIdHashSetSerializer))] [Access(typeof(TagSystem), Other = AccessPermissions.ReadExecute)] // FIXME Friends public readonly HashSet Tags = new(); diff --git a/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs b/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs index 44aca5d47d..3b87beba1a 100644 --- a/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/AmmoComponent.cs @@ -2,7 +2,6 @@ using Robust.Shared.Audio; using Robust.Shared.GameStates; using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; -using Robust.Shared.Utility; namespace Content.Shared.Weapons.Ranged.Components; @@ -45,9 +44,9 @@ public sealed class CartridgeAmmoComponent : AmmoComponent /// /// Caseless ammunition. /// - [ViewVariables, DataField("deleteOnSpawn")] + [DataField("deleteOnSpawn")] public bool DeleteOnSpawn; - [ViewVariables, DataField("soundEject")] + [DataField("soundEject")] public SoundSpecifier? EjectSound = new SoundCollectionSpecifier("CasingEject"); } diff --git a/Content.Shared/Weapons/Ranged/Components/BallisticAmmoProviderComponent.cs b/Content.Shared/Weapons/Ranged/Components/BallisticAmmoProviderComponent.cs index 51f23ae19e..127882e780 100644 --- a/Content.Shared/Weapons/Ranged/Components/BallisticAmmoProviderComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/BallisticAmmoProviderComponent.cs @@ -31,7 +31,7 @@ public sealed class BallisticAmmoProviderComponent : Component public Container Container = default!; // TODO: Make this use stacks when the typeserializer is done. - [ViewVariables, DataField("entities")] + [DataField("entities")] public List Entities = new(); /// diff --git a/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs b/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs index 438276e21f..be638bf7a1 100644 --- a/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs @@ -5,7 +5,7 @@ public abstract class BatteryAmmoProviderComponent : AmmoProviderComponent /// /// How much battery it costs to fire once. /// - [ViewVariables, DataField("fireCost")] + [DataField("fireCost")] public float FireCost = 100; // Batteries aren't predicted which means we need to track the battery and manually count it ourselves woo! diff --git a/Content.Shared/Weapons/Ranged/Components/FlyBySoundComponent.cs b/Content.Shared/Weapons/Ranged/Components/FlyBySoundComponent.cs index 467a5955c9..9375027470 100644 --- a/Content.Shared/Weapons/Ranged/Components/FlyBySoundComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/FlyBySoundComponent.cs @@ -21,5 +21,5 @@ public sealed class FlyBySoundComponent : Component Params = AudioParams.Default, }; - [ViewVariables, DataField("range")] public float Range = 1.5f; + [DataField("range")] public float Range = 1.5f; } diff --git a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs index 23212f7b57..0176667d61 100644 --- a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs @@ -32,13 +32,13 @@ public class GunComponent : Component /// Last time the gun fired. /// Used for recoil purposes. /// - [ViewVariables, DataField("lastFire")] + [DataField("lastFire")] public TimeSpan LastFire = TimeSpan.Zero; /// /// What the current spread is for shooting. This gets changed every time the gun fires. /// - [ViewVariables, DataField("currentAngle")] + [DataField("currentAngle")] public Angle CurrentAngle; /// @@ -50,7 +50,7 @@ public class GunComponent : Component /// /// How much the decreases per second. /// - [ViewVariables, DataField("angleDecay")] + [DataField("angleDecay")] public Angle AngleDecay = Angle.FromDegrees(4); /// @@ -95,7 +95,7 @@ public class GunComponent : Component /// When the gun is next available to be shot. /// Can be set multiple times in a single tick due to guns firing faster than a single tick time. /// - [ViewVariables, DataField("nextFire")] + [DataField("nextFire")] public TimeSpan NextFire = TimeSpan.Zero; /// diff --git a/Content.Shared/Weapons/Ranged/Components/RevolverAmmoProviderComponent.cs b/Content.Shared/Weapons/Ranged/Components/RevolverAmmoProviderComponent.cs index 9592ac7842..6f8e13b9df 100644 --- a/Content.Shared/Weapons/Ranged/Components/RevolverAmmoProviderComponent.cs +++ b/Content.Shared/Weapons/Ranged/Components/RevolverAmmoProviderComponent.cs @@ -16,15 +16,15 @@ public sealed class RevolverAmmoProviderComponent : AmmoProviderComponent * for example 7 entities when revolver spawns (1 for the revolver and 6 cylinders) we can instead defer it. */ - [ViewVariables, DataField("whitelist")] + [DataField("whitelist")] public EntityWhitelist? Whitelist; public Container AmmoContainer = default!; - [ViewVariables, DataField("currentSlot")] + [DataField("currentSlot")] public int CurrentIndex; - [ViewVariables, DataField("capacity")] + [DataField("capacity")] public int Capacity = 6; // Like BallisticAmmoProvider we defer spawning until necessary @@ -40,12 +40,12 @@ public sealed class RevolverAmmoProviderComponent : AmmoProviderComponent [DataField("proto", customTypeSerializer:typeof(PrototypeIdSerializer))] public string? FillPrototype = "CartridgeMagnum"; - [ViewVariables, DataField("soundEject")] + [DataField("soundEject")] public SoundSpecifier? SoundEject = new SoundPathSpecifier("/Audio/Weapons/Guns/MagOut/revolver_magout.ogg"); - [ViewVariables, DataField("soundInsert")] + [DataField("soundInsert")] public SoundSpecifier? SoundInsert = new SoundPathSpecifier("/Audio/Weapons/Guns/MagIn/revolver_magin.ogg"); - [ViewVariables, DataField("soundSpin")] + [DataField("soundSpin")] public SoundSpecifier? SoundSpin = new SoundPathSpecifier("/Audio/Weapons/Guns/Misc/revolver_spin.ogg"); } diff --git a/Content.Shared/Weapons/Ranged/HitscanPrototype.cs b/Content.Shared/Weapons/Ranged/HitscanPrototype.cs index 24a75273a2..51725ec35c 100644 --- a/Content.Shared/Weapons/Ranged/HitscanPrototype.cs +++ b/Content.Shared/Weapons/Ranged/HitscanPrototype.cs @@ -28,13 +28,13 @@ public sealed class HitscanPrototype : IPrototype, IShootable [ViewVariables(VVAccess.ReadOnly), DataField("impactFlash")] public SpriteSpecifier? ImpactFlash; - [ViewVariables, DataField("collisionMask")] + [DataField("collisionMask")] public int CollisionMask = (int) CollisionGroup.Opaque; /// /// Sound that plays upon the thing being hit. /// - [ViewVariables, DataField("sound")] + [DataField("sound")] public SoundSpecifier? Sound; /// @@ -46,6 +46,6 @@ public sealed class HitscanPrototype : IPrototype, IShootable /// /// Try not to set this too high. /// - [ViewVariables, DataField("maxLength")] + [DataField("maxLength")] public float MaxLength = 20f; } diff --git a/Content.Shared/Zombies/ZombieComponent.cs b/Content.Shared/Zombies/ZombieComponent.cs index e98380531a..27abc19093 100644 --- a/Content.Shared/Zombies/ZombieComponent.cs +++ b/Content.Shared/Zombies/ZombieComponent.cs @@ -58,7 +58,7 @@ namespace Content.Shared.Zombies /// /// The role prototype of the zombie antag role /// - [ViewVariables, DataField("zombieRoldId", customTypeSerializer: typeof(PrototypeIdSerializer))] + [DataField("zombieRoldId", customTypeSerializer: typeof(PrototypeIdSerializer))] public readonly string ZombieRoleId = "Zombie"; } }