using Robust.Shared.GameObjects; using Robust.Shared.IoC; namespace Robust.Client.GameObjects; /// /// An abstract entity system inheritor for systems that deal with /// appearance data, replacing . /// public abstract class VisualizerSystem : EntitySystem where T: Component { [Dependency] protected readonly AppearanceSystem AppearanceSystem = default!; public override void Initialize() { base.Initialize(); SubscribeLocalEvent(OnAppearanceChange); } protected virtual void OnAppearanceChange(EntityUid uid, T component, ref AppearanceChangeEvent args) {} }