using Robust.Shared.GameStates; using Content.Shared.Singularity.Components; using Content.Shared.Singularity.EntitySystems; namespace Content.Client.Singularity.EntitySystems; /// /// The client-side version of . /// Primarily manages s. /// public sealed class SingularitySystem : SharedSingularitySystem { public override void Initialize() { base.Initialize(); SubscribeLocalEvent(HandleSingularityState); } /// /// Handles syncing singularities with their server-side versions. /// /// The uid of the singularity to sync. /// The state of the singularity to sync. /// The event arguments including the state to sync the singularity with. private void HandleSingularityState(EntityUid uid, SingularityComponent comp, ref ComponentHandleState args) { if (args.Current is not SingularityComponentState state) return; SetLevel(uid, state.Level, comp); } }