From: deltanedas <39013340+deltanedas@users.noreply.github.com> Date: Sat, 22 Apr 2023 12:02:23 +0000 (+0000) Subject: autogen parallax state (#15384) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=f72baa6a49dd9a39de21633b1cf856e7531a492e;p=space-station-14.git autogen parallax state (#15384) Co-authored-by: deltanedas <@deltanedas:kde.org> --- diff --git a/Content.Client/Parallax/ParallaxSystem.cs b/Content.Client/Parallax/ParallaxSystem.cs index a3d86743db..5ad7bd4e56 100644 --- a/Content.Client/Parallax/ParallaxSystem.cs +++ b/Content.Client/Parallax/ParallaxSystem.cs @@ -2,7 +2,6 @@ using Content.Client.Parallax.Data; using Content.Client.Parallax.Managers; using Content.Shared.Parallax; using Robust.Client.Graphics; -using Robust.Shared.GameStates; using Robust.Shared.Map; using Robust.Shared.Prototypes; @@ -22,8 +21,9 @@ public sealed class ParallaxSystem : SharedParallaxSystem { base.Initialize(); _overlay.AddOverlay(new ParallaxOverlay()); - SubscribeLocalEvent(OnParallaxHandleState); _protoManager.PrototypesReloaded += OnReload; + + SubscribeLocalEvent(OnAfterAutoHandleState); } private void OnReload(PrototypesReloadedEventArgs obj) @@ -48,11 +48,8 @@ public sealed class ParallaxSystem : SharedParallaxSystem _protoManager.PrototypesReloaded -= OnReload; } - private void OnParallaxHandleState(EntityUid uid, ParallaxComponent component, ref ComponentHandleState args) + private void OnAfterAutoHandleState(EntityUid uid, ParallaxComponent component, ref AfterAutoHandleStateEvent args) { - if (args.Current is not ParallaxComponentState state) return; - component.Parallax = state.Parallax; - if (!_parallax.IsLoaded(component.Parallax)) { _parallax.LoadParallaxByName(component.Parallax); diff --git a/Content.Server/Parallax/ParallaxSystem.cs b/Content.Server/Parallax/ParallaxSystem.cs index 497e5bc4f5..5a896295d2 100644 --- a/Content.Server/Parallax/ParallaxSystem.cs +++ b/Content.Server/Parallax/ParallaxSystem.cs @@ -1,23 +1,5 @@ using Content.Shared.Parallax; -using Robust.Shared.GameStates; namespace Content.Server.Parallax; -public sealed class ParallaxSystem : SharedParallaxSystem -{ - public override void Initialize() - { - base.Initialize(); - - SubscribeLocalEvent(OnParallaxGetState); - } - - private void OnParallaxGetState(EntityUid uid, ParallaxComponent component, ref ComponentGetState args) - { - args.State = new ParallaxComponentState - { - Parallax = component.Parallax - }; - } - -} +public sealed class ParallaxSystem : SharedParallaxSystem { } diff --git a/Content.Shared/Parallax/ParallaxComponent.cs b/Content.Shared/Parallax/ParallaxComponent.cs index 8566be2fc0..62ba704e97 100644 --- a/Content.Shared/Parallax/ParallaxComponent.cs +++ b/Content.Shared/Parallax/ParallaxComponent.cs @@ -6,11 +6,11 @@ namespace Content.Shared.Parallax; /// /// Handles per-map parallax /// -[RegisterComponent, NetworkedComponent] -public sealed class ParallaxComponent : Component +[RegisterComponent, NetworkedComponent, AutoGenerateComponentState] +public sealed partial class ParallaxComponent : Component { // I wish I could use a typeserializer here but parallax is extremely client-dependent. - [DataField("parallax")] + [DataField("parallax"), AutoNetworkedField] public string Parallax = "Default"; [UsedImplicitly, ViewVariables(VVAccess.ReadWrite)]