diff --git a/Content.Server/Atmos/Components/BarotraumaComponent.cs b/Content.Server/Atmos/Components/BarotraumaComponent.cs
index 1e421f0a12..4e29699872 100644
--- a/Content.Server/Atmos/Components/BarotraumaComponent.cs
+++ b/Content.Server/Atmos/Components/BarotraumaComponent.cs
@@ -43,7 +43,7 @@ namespace Content.Server.Atmos.Components
///
/// Whether the entity is immuned to pressure (i.e possess the PressureImmunity component)
///
- [ViewVariables]
+ [ViewVariables(VVAccess.ReadWrite)]
public bool HasImmunity = false;
}
diff --git a/Content.Server/Forensics/Components/FingerprintComponent.cs b/Content.Server/Forensics/Components/FingerprintComponent.cs
index 96f8042ddf..97d138119e 100644
--- a/Content.Server/Forensics/Components/FingerprintComponent.cs
+++ b/Content.Server/Forensics/Components/FingerprintComponent.cs
@@ -6,7 +6,7 @@ namespace Content.Server.Forensics
[RegisterComponent]
public sealed partial class FingerprintComponent : Component
{
- [DataField("fingerprint")]
+ [DataField("fingerprint"), ViewVariables(VVAccess.ReadWrite)]
public string? Fingerprint;
}
}
diff --git a/Content.Server/Gateway/Components/GatewayComponent.cs b/Content.Server/Gateway/Components/GatewayComponent.cs
index aa3e3b4cb8..71d070f699 100644
--- a/Content.Server/Gateway/Components/GatewayComponent.cs
+++ b/Content.Server/Gateway/Components/GatewayComponent.cs
@@ -21,7 +21,7 @@ public sealed partial class GatewayComponent : Component
///
/// Can the gateway be interacted with? If false then only settable via admins / mappers.
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public bool Interactable = true;
///
diff --git a/Content.Shared/Access/Components/IdCardComponent.cs b/Content.Shared/Access/Components/IdCardComponent.cs
index 31ded30ebd..975f0e6b51 100644
--- a/Content.Shared/Access/Components/IdCardComponent.cs
+++ b/Content.Shared/Access/Components/IdCardComponent.cs
@@ -11,14 +11,14 @@ namespace Content.Shared.Access.Components
[Access(typeof(SharedIdCardSystem), typeof(SharedPdaSystem), typeof(SharedAgentIdCardSystem), Other = AccessPermissions.ReadWrite)]
public sealed partial class IdCardComponent : Component
{
- [DataField("fullName")]
+ [DataField("fullName"), ViewVariables(VVAccess.ReadWrite)]
[AutoNetworkedField]
// FIXME Friends
public string? FullName;
[DataField("jobTitle")]
[AutoNetworkedField]
- [Access(typeof(SharedIdCardSystem), typeof(SharedPdaSystem), typeof(SharedAgentIdCardSystem), Other = AccessPermissions.ReadWrite)]
+ [Access(typeof(SharedIdCardSystem), typeof(SharedPdaSystem), typeof(SharedAgentIdCardSystem), Other = AccessPermissions.ReadWrite), ViewVariables(VVAccess.ReadWrite)]
public string? JobTitle;
///
diff --git a/Content.Shared/Ghost/GhostComponent.cs b/Content.Shared/Ghost/GhostComponent.cs
index 15d177f069..f7717e8d23 100644
--- a/Content.Shared/Ghost/GhostComponent.cs
+++ b/Content.Shared/Ghost/GhostComponent.cs
@@ -44,10 +44,10 @@ public sealed partial class GhostComponent : Component
[ViewVariables(VVAccess.ReadWrite), DataField]
public TimeSpan TimeOfDeath = TimeSpan.Zero;
- [DataField("booRadius")]
+ [DataField("booRadius"), ViewVariables(VVAccess.ReadWrite)]
public float BooRadius = 3;
- [DataField("booMaxTargets")]
+ [DataField("booMaxTargets"), ViewVariables(VVAccess.ReadWrite)]
public int BooMaxTargets = 3;
// TODO: instead of this funny stuff just give it access and update in system dirtying when needed
diff --git a/Content.Shared/Mech/Components/MechComponent.cs b/Content.Shared/Mech/Components/MechComponent.cs
index 9bf25f4164..ba380492bc 100644
--- a/Content.Shared/Mech/Components/MechComponent.cs
+++ b/Content.Shared/Mech/Components/MechComponent.cs
@@ -22,7 +22,7 @@ public sealed partial class MechComponent : Component
///
/// The maximum amount of damage the mech can take.
///
- [DataField, AutoNetworkedField]
+ [DataField, AutoNetworkedField, ViewVariables(VVAccess.ReadWrite)]
public FixedPoint2 MaxIntegrity = 250;
///
@@ -36,7 +36,7 @@ public sealed partial class MechComponent : Component
/// The maximum amount of energy the mech can have.
/// Derived from the currently inserted battery.
///
- [DataField, AutoNetworkedField]
+ [DataField, AutoNetworkedField, ViewVariables(VVAccess.ReadWrite)]
public FixedPoint2 MaxEnergy = 0;
///
@@ -52,7 +52,7 @@ public sealed partial class MechComponent : Component
/// A multiplier used to calculate how much of the damage done to a mech
/// is transfered to the pilot
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public float MechToPilotDamageMultiplier;
///
@@ -80,7 +80,7 @@ public sealed partial class MechComponent : Component
///
/// The maximum amount of equipment items that can be installed in the mech
///
- [DataField("maxEquipmentAmount")]
+ [DataField("maxEquipmentAmount"), ViewVariables(VVAccess.ReadWrite)]
public int MaxEquipmentAmount = 3;
///
@@ -104,20 +104,20 @@ public sealed partial class MechComponent : Component
///
/// How long it takes to enter the mech.
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public float EntryDelay = 3;
///
/// How long it takes to pull *another person*
/// outside of the mech. You can exit instantly yourself.
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public float ExitDelay = 3;
///
/// How long it takes to pull out the battery.
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public float BatteryRemovalDelay = 2;
///
diff --git a/Content.Shared/Nutrition/Components/SmokableComponent.cs b/Content.Shared/Nutrition/Components/SmokableComponent.cs
index 320b3dd31f..e5cbd27242 100644
--- a/Content.Shared/Nutrition/Components/SmokableComponent.cs
+++ b/Content.Shared/Nutrition/Components/SmokableComponent.cs
@@ -13,16 +13,16 @@ namespace Content.Shared.Nutrition.Components
///
/// Solution inhale amount per second.
///
- [DataField("inhaleAmount")]
+ [DataField("inhaleAmount"), ViewVariables(VVAccess.ReadWrite)]
public FixedPoint2 InhaleAmount { get; private set; } = FixedPoint2.New(0.05f);
[DataField("state")]
public SmokableState State { get; set; } = SmokableState.Unlit;
- [DataField("exposeTemperature")]
+ [DataField("exposeTemperature"), ViewVariables(VVAccess.ReadWrite)]
public float ExposeTemperature { get; set; } = 0;
- [DataField("exposeVolume")]
+ [DataField("exposeVolume"), ViewVariables(VVAccess.ReadWrite)]
public float ExposeVolume { get; set; } = 1f;
// clothing prefixes
diff --git a/Content.Shared/Nutrition/Components/ThirstComponent.cs b/Content.Shared/Nutrition/Components/ThirstComponent.cs
index 1e3f139807..35eb4d2614 100644
--- a/Content.Shared/Nutrition/Components/ThirstComponent.cs
+++ b/Content.Shared/Nutrition/Components/ThirstComponent.cs
@@ -19,10 +19,10 @@ public sealed partial class ThirstComponent : Component
[AutoNetworkedField]
public float ActualDecayRate;
- [DataField, AutoNetworkedField]
+ [DataField, AutoNetworkedField, ViewVariables(VVAccess.ReadWrite)]
public ThirstThreshold CurrentThirstThreshold;
- [DataField, AutoNetworkedField]
+ [DataField, AutoNetworkedField, ViewVariables(VVAccess.ReadWrite)]
public ThirstThreshold LastThirstThreshold;
[ViewVariables(VVAccess.ReadWrite)]
diff --git a/Content.Shared/PDA/PdaComponent.cs b/Content.Shared/PDA/PdaComponent.cs
index 46c85ee39e..d81fa1532f 100644
--- a/Content.Shared/PDA/PdaComponent.cs
+++ b/Content.Shared/PDA/PdaComponent.cs
@@ -33,7 +33,7 @@ namespace Content.Shared.PDA
[ViewVariables] public EntityUid? ContainedId;
[ViewVariables] public bool FlashlightOn;
- [ViewVariables] public string? OwnerName;
+ [ViewVariables(VVAccess.ReadWrite)] public string? OwnerName;
[ViewVariables] public string? StationName;
[ViewVariables] public string? StationAlertLevel;
[ViewVariables] public Color StationAlertColor = Color.White;
diff --git a/Content.Shared/Teleportation/Components/LinkedEntityComponent.cs b/Content.Shared/Teleportation/Components/LinkedEntityComponent.cs
index 104136fb7b..b1df6f4ee7 100644
--- a/Content.Shared/Teleportation/Components/LinkedEntityComponent.cs
+++ b/Content.Shared/Teleportation/Components/LinkedEntityComponent.cs
@@ -21,7 +21,7 @@ public sealed partial class LinkedEntityComponent : Component
///
/// Should this entity be deleted if all of its links are removed?
///
- [DataField]
+ [DataField, ViewVariables(VVAccess.ReadWrite)]
public bool DeleteOnEmptyLinks;
}
diff --git a/Content.Shared/Teleportation/Components/PortalComponent.cs b/Content.Shared/Teleportation/Components/PortalComponent.cs
index 26c0328e47..42fe8e5b70 100644
--- a/Content.Shared/Teleportation/Components/PortalComponent.cs
+++ b/Content.Shared/Teleportation/Components/PortalComponent.cs
@@ -26,7 +26,7 @@ public sealed partial class PortalComponent : Component
///
/// If no portals are linked, the subject will be teleported a random distance at maximum this far away.
///
- [DataField("maxRandomRadius")]
+ [DataField("maxRandomRadius"), ViewVariables(VVAccess.ReadWrite)]
public float MaxRandomRadius = 7.0f;
///
@@ -45,12 +45,12 @@ public sealed partial class PortalComponent : Component
///
/// Obviously this should strictly be larger than (or null)
///
- [DataField("maxTeleportRadius")]
+ [DataField("maxTeleportRadius"), ViewVariables(VVAccess.ReadWrite)]
public float? MaxTeleportRadius;
///
/// Should we teleport randomly if nothing is linked.
///
- [DataField, AutoNetworkedField]
+ [DataField, AutoNetworkedField, ViewVariables(VVAccess.ReadWrite)]
public bool RandomTeleport = true;
}
diff --git a/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs b/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs
index dfe2e9cf4f..605e169c38 100644
--- a/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Components/BatteryAmmoProviderComponent.cs
@@ -5,14 +5,14 @@ public abstract partial class BatteryAmmoProviderComponent : AmmoProviderCompone
///
/// How much battery it costs to fire once.
///
- [DataField("fireCost")]
+ [DataField("fireCost"), ViewVariables(VVAccess.ReadWrite)]
public float FireCost = 100;
// Batteries aren't predicted which means we need to track the battery and manually count it ourselves woo!
- [ViewVariables]
+ [ViewVariables(VVAccess.ReadWrite)]
public int Shots;
- [ViewVariables]
+ [ViewVariables(VVAccess.ReadWrite)]
public int Capacity;
}
diff --git a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs
index 515582b51b..fb52870df8 100644
--- a/Content.Shared/Weapons/Ranged/Components/GunComponent.cs
+++ b/Content.Shared/Weapons/Ranged/Components/GunComponent.cs
@@ -149,7 +149,7 @@ public partial class GunComponent : Component
/// Whether or not someone with the
/// clumsy trait can shoot this
///
- [DataField("clumsyProof")]
+ [DataField("clumsyProof"), ViewVariables(VVAccess.ReadWrite)]
public bool ClumsyProof = false;
}