Fix clientside storage Whitelists (#24063)
* Fix outdated component name in assaultbelt whitelist RangedMagazine was replaced with BallisticAmmoProvider in the Gun refactor (#8301) * Move FlashOnTrigger, SmokeOnTrigger, Flash components to Shared * Move LightReplacerComponent to Shared * Move Utensil, Mousetrap components to Shared * Move SprayPainterComponent to Shared The PaintableAirlock tag has also been removed, as it was unused & unnecessary, likely a vestige of spray painter development when the PaintableAirlock component wasn't in Content.Shared. * Add trivial Produce and Seed components to Client This allows the plant bag and botanical belt whitelists to correctly match produce and seeds on the client, fixing the extraneous "Can't insert" message that previously appeared. --------- Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
This commit is contained in:
8
Content.Client/Botany/Components/ProduceComponent.cs
Normal file
8
Content.Client/Botany/Components/ProduceComponent.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using Content.Shared.Botany.Components;
|
||||
|
||||
namespace Content.Client.Botany.Components;
|
||||
|
||||
[RegisterComponent]
|
||||
public sealed partial class ProduceComponent : SharedProduceComponent
|
||||
{
|
||||
}
|
||||
8
Content.Client/Botany/Components/SeedComponent.cs
Normal file
8
Content.Client/Botany/Components/SeedComponent.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using Content.Shared.Botany.Components;
|
||||
|
||||
namespace Content.Client.Botany.Components;
|
||||
|
||||
[RegisterComponent]
|
||||
public sealed partial class SeedComponent : SharedSeedComponent
|
||||
{
|
||||
}
|
||||
@@ -1,11 +1,12 @@
|
||||
using Content.Server.Botany.Systems;
|
||||
using Content.Shared.Botany.Components;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
||||
|
||||
namespace Content.Server.Botany.Components;
|
||||
|
||||
[RegisterComponent]
|
||||
[Access(typeof(BotanySystem))]
|
||||
public sealed partial class ProduceComponent : Component
|
||||
public sealed partial class ProduceComponent : SharedProduceComponent
|
||||
{
|
||||
[DataField("targetSolution")] public string SolutionName { get; set; } = "food";
|
||||
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
using Content.Server.Botany.Systems;
|
||||
using Content.Shared.Botany.Components;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
||||
|
||||
namespace Content.Server.Botany.Components
|
||||
{
|
||||
[RegisterComponent, Access(typeof(BotanySystem))]
|
||||
public sealed partial class SeedComponent : Component
|
||||
public sealed partial class SeedComponent : SharedSeedComponent
|
||||
{
|
||||
/// <summary>
|
||||
/// Seed data containing information about the plant type & properties that this seed can grow seed. If
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using Content.Server.Explosion.Components;
|
||||
using Content.Server.Flash.Components;
|
||||
using Content.Shared.Flash.Components;
|
||||
using Content.Shared.Explosion;
|
||||
using Content.Shared.Interaction;
|
||||
using Content.Shared.Interaction.Events;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Content.Shared.Explosion.Components;
|
||||
using Content.Shared.Explosion.EntitySystems;
|
||||
using Content.Server.Fluids.EntitySystems;
|
||||
using Content.Shared.Chemistry.Components;
|
||||
using Content.Shared.Coordinates.Helpers;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System.Linq;
|
||||
using Content.Server.Flash.Components;
|
||||
using Content.Shared.Flash.Components;
|
||||
using Content.Server.Light.EntitySystems;
|
||||
using Content.Server.Popups;
|
||||
using Content.Server.Stunnable;
|
||||
|
||||
@@ -2,6 +2,7 @@ using System.Linq;
|
||||
using Content.Server.Light.Components;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.Interaction;
|
||||
using Content.Shared.Light.EntitySystems;
|
||||
using Content.Shared.Light.Components;
|
||||
using Content.Shared.Popups;
|
||||
using Content.Shared.Storage;
|
||||
@@ -13,7 +14,7 @@ using Robust.Shared.Containers;
|
||||
namespace Content.Server.Light.EntitySystems;
|
||||
|
||||
[UsedImplicitly]
|
||||
public sealed class LightReplacerSystem : EntitySystem
|
||||
public sealed class LightReplacerSystem : SharedLightReplacerSystem
|
||||
{
|
||||
[Dependency] private readonly PoweredLightSystem _poweredLight = default!;
|
||||
[Dependency] private readonly SharedAudioSystem _audio = default!;
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
using Content.Server.Body.Components;
|
||||
using Content.Shared.Nutrition.Components;
|
||||
using Content.Server.Nutrition.EntitySystems;
|
||||
using Content.Shared.FixedPoint;
|
||||
using Robust.Shared.Audio;
|
||||
|
||||
@@ -3,6 +3,7 @@ using Content.Server.Body.Systems;
|
||||
using Content.Server.Chemistry.Containers.EntitySystems;
|
||||
using Content.Server.Inventory;
|
||||
using Content.Server.Nutrition.Components;
|
||||
using Content.Shared.Nutrition.Components;
|
||||
using Content.Server.Popups;
|
||||
using Content.Server.Stack;
|
||||
using Content.Shared.Administration.Logs;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using Content.Server.Chemistry.Containers.EntitySystems;
|
||||
using Content.Server.Nutrition.Components;
|
||||
using Content.Shared.Nutrition.Components;
|
||||
using Content.Shared.Chemistry.Components;
|
||||
using Content.Shared.Examine;
|
||||
using Content.Shared.FixedPoint;
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
using Content.Server.Nutrition.Components;
|
||||
using Content.Shared.Nutrition.Components;
|
||||
using Content.Shared.Nutrition.EntitySystems;
|
||||
using Content.Server.Popups;
|
||||
using Content.Shared.Interaction;
|
||||
using Robust.Shared.Audio;
|
||||
@@ -11,7 +13,7 @@ namespace Content.Server.Nutrition.EntitySystems
|
||||
/// <summary>
|
||||
/// Handles usage of the utensils on the food items
|
||||
/// </summary>
|
||||
internal sealed class UtensilSystem : EntitySystem
|
||||
internal sealed class UtensilSystem : SharedUtensilSystem
|
||||
{
|
||||
[Dependency] private readonly IRobustRandom _robustRandom = default!;
|
||||
[Dependency] private readonly FoodSystem _foodSystem = default!;
|
||||
|
||||
@@ -6,8 +6,9 @@ using Content.Server.Popups;
|
||||
using Content.Shared.Database;
|
||||
using Content.Shared.DoAfter;
|
||||
using Content.Shared.Doors.Components;
|
||||
using Content.Shared.SprayPainter.Prototypes;
|
||||
using Content.Shared.SprayPainter;
|
||||
using Content.Shared.SprayPainter.Components;
|
||||
using Content.Shared.SprayPainter.Prototypes;
|
||||
using Content.Shared.Interaction;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Server.GameObjects;
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Shared.Botany.Components;
|
||||
|
||||
[NetworkedComponent]
|
||||
public abstract partial class SharedProduceComponent : Component
|
||||
{
|
||||
}
|
||||
8
Content.Shared/Botany/Components/SharedSeedComponent.cs
Normal file
8
Content.Shared/Botany/Components/SharedSeedComponent.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Shared.Botany.Components;
|
||||
|
||||
[NetworkedComponent]
|
||||
public abstract partial class SharedSeedComponent : Component
|
||||
{
|
||||
}
|
||||
@@ -1,9 +1,11 @@
|
||||
using Content.Shared.Explosion.EntitySystems;
|
||||
using Content.Shared.Chemistry.Components;
|
||||
using Content.Shared.Explosion.EntitySystems;
|
||||
using Robust.Shared.GameStates;
|
||||
using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Shared.Explosion.Components.OnTrigger;
|
||||
namespace Content.Shared.Explosion.Components;
|
||||
|
||||
/// <summary>
|
||||
/// Creates a smoke cloud when triggered, with an optional solution to include in it.
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
namespace Content.Shared.Explosion.EntitySystems;
|
||||
namespace Content.Shared.Explosion.EntitySystems;
|
||||
|
||||
public abstract class SharedSmokeOnTriggerSystem : EntitySystem
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1,5 +1,4 @@
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Shared.Flash.Components;
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
using Content.Server.Light.EntitySystems;
|
||||
using Content.Shared.Light.EntitySystems;
|
||||
using Content.Shared.Storage;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Containers;
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Server.Light.Components;
|
||||
|
||||
@@ -9,7 +10,7 @@ namespace Content.Server.Light.Components;
|
||||
/// Device that allows user to quikly change bulbs in <see cref="PoweredLightComponent"/>
|
||||
/// Can be reloaded by new light tubes or light bulbs
|
||||
/// </summary>
|
||||
[RegisterComponent, Access(typeof(LightReplacerSystem))]
|
||||
[RegisterComponent, NetworkedComponent, Access(typeof(SharedLightReplacerSystem))]
|
||||
public sealed partial class LightReplacerComponent : Component
|
||||
{
|
||||
[DataField("sound")]
|
||||
@@ -0,0 +1,5 @@
|
||||
namespace Content.Shared.Light.EntitySystems;
|
||||
|
||||
public abstract class SharedLightReplacerSystem : EntitySystem
|
||||
{
|
||||
}
|
||||
@@ -1,6 +1,8 @@
|
||||
namespace Content.Server.Mousetrap;
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
[RegisterComponent]
|
||||
namespace Content.Shared.Mousetrap;
|
||||
|
||||
[RegisterComponent, NetworkedComponent]
|
||||
public sealed partial class MousetrapComponent : Component
|
||||
{
|
||||
[ViewVariables]
|
||||
@@ -1,9 +1,10 @@
|
||||
using Content.Server.Nutrition.EntitySystems;
|
||||
using Content.Shared.Nutrition.EntitySystems;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Server.Nutrition.Components
|
||||
namespace Content.Shared.Nutrition.Components
|
||||
{
|
||||
[RegisterComponent, Access(typeof(UtensilSystem))]
|
||||
[RegisterComponent, NetworkedComponent, Access(typeof(SharedUtensilSystem))]
|
||||
public sealed partial class UtensilComponent : Component
|
||||
{
|
||||
[DataField("types")]
|
||||
@@ -0,0 +1,5 @@
|
||||
namespace Content.Shared.Nutrition.EntitySystems;
|
||||
|
||||
public abstract class SharedUtensilSystem : EntitySystem
|
||||
{
|
||||
}
|
||||
@@ -1,8 +1,9 @@
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.GameStates;
|
||||
|
||||
namespace Content.Server.SprayPainter;
|
||||
namespace Content.Shared.SprayPainter.Components;
|
||||
|
||||
[RegisterComponent]
|
||||
[RegisterComponent, NetworkedComponent]
|
||||
public sealed partial class SprayPainterComponent : Component
|
||||
{
|
||||
[DataField("spraySound")]
|
||||
@@ -179,7 +179,7 @@
|
||||
- SmokeOnTrigger
|
||||
- Flash
|
||||
- Handcuff
|
||||
- RangedMagazine
|
||||
- BallisticAmmoProvider
|
||||
- Ammo
|
||||
- type: ItemMapper
|
||||
mapLayers:
|
||||
@@ -221,7 +221,7 @@
|
||||
- WetFloorSign
|
||||
- HolosignProjector
|
||||
- Plunger
|
||||
- LightReplacer
|
||||
- JanicartKeys
|
||||
components:
|
||||
- LightReplacer
|
||||
- type: ItemMapper
|
||||
|
||||
@@ -329,7 +329,7 @@
|
||||
lightreplacer_slot:
|
||||
name: janitorial-trolley-slot-component-slot-name-lightreplacer
|
||||
whitelist:
|
||||
tags:
|
||||
components:
|
||||
- LightReplacer
|
||||
priority: 6
|
||||
spraybottle_slot:
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
amount: 5
|
||||
- type: Tag
|
||||
tags:
|
||||
- LightReplacer
|
||||
- DroneUsable
|
||||
- type: StaticPrice
|
||||
price: 100
|
||||
|
||||
@@ -14,9 +14,6 @@
|
||||
- key: enum.SprayPainterUiKey.Key
|
||||
type: SprayPainterBoundUserInterface
|
||||
- type: SprayPainter
|
||||
whitelist:
|
||||
tags:
|
||||
- PaintableAirlock
|
||||
colorPalette:
|
||||
red: '#FF1212FF'
|
||||
yellow: '#B3A234FF'
|
||||
|
||||
@@ -186,6 +186,7 @@
|
||||
shape:
|
||||
!type:PhysShapeCircle
|
||||
radius: 2
|
||||
repeating: true
|
||||
- type: Anchorable
|
||||
- type: Sprite
|
||||
sprite: Objects/Weapons/pflash.rsi
|
||||
|
||||
@@ -713,9 +713,6 @@
|
||||
- type: Tag
|
||||
id: Lemon
|
||||
|
||||
- type: Tag
|
||||
id: LightReplacer
|
||||
|
||||
- type: Tag
|
||||
id: Lime
|
||||
|
||||
@@ -856,9 +853,6 @@
|
||||
- type: Tag
|
||||
id: Payload # for grenade/bomb crafting
|
||||
|
||||
- type: Tag
|
||||
id: PaintableAirlock
|
||||
|
||||
- type: Tag
|
||||
id: Pancake
|
||||
|
||||
|
||||
Reference in New Issue
Block a user