CatStation/Content.Shared/Weather/WeatherStatusEffectComponent.cs
Red 1b5011152b
Weather entities (#41427)
* weather status effect entities

* proto port + fixes

* Update weather.yml

* fix visuals

* Update SharedWeatherSystem.cs

* Update SharedWeatherSystem.cs

* Update WeatherSystem.cs

* Thanks Slarti, thats a much better

* Update WeatherSystem.cs

* Update StencilOverlay.Weather.cs

* Update Content.Client/Overlays/StencilOverlay.Weather.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Update Content.Shared/StatusEffectNew/Components/StatusEffectComponent.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Update Content.Client/Overlays/StencilOverlay.Weather.cs

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>

* Revise weather command help descriptions

Updated weather command help texts for clarity.

* Merge branch 'master' into ed-14-11-2025-weather-entities

* Tayrtahn review apply

* fixes and cleanup

---------

Co-authored-by: Pok <113675512+Pok27@users.noreply.github.com>
Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2026-03-08 23:28:48 +00:00

46 lines
1.3 KiB
C#

using System.Numerics;
using Content.Shared.StatusEffectNew.Components;
using Robust.Shared.Audio;
using Robust.Shared.GameStates;
using Robust.Shared.Utility;
namespace Content.Shared.Weather;
/// <summary>
/// Used only in conjure with <see cref="StatusEffectComponent"/> for status effects applied to map entities.
/// Contains basic information about all types of weather effects.
/// </summary>
[RegisterComponent, NetworkedComponent, Access(typeof(SharedWeatherSystem))]
public sealed partial class WeatherStatusEffectComponent : Component
{
/// <summary>
/// A texture that will tile and render as a weather effect across the entire map.
/// </summary>
[DataField(required: true)]
public SpriteSpecifier Sprite = default!;
/// <summary>
/// Tint that will be applied to the weather texture.
/// </summary>
[DataField]
public Color? Color;
/// <summary>
/// Weather scrolling speed.
/// </summary>
[DataField]
public Vector2? Scrolling;
/// <summary>
/// Sound to play on the affected areas.
/// </summary>
[DataField]
public SoundSpecifier? Sound;
/// <summary>
/// Client audio stream.
/// Not used on the server.
/// </summary>
[ViewVariables]
public EntityUid? Stream;
}