using Content.Shared.Chat.TypingIndicator;
using Robust.Client.GameObjects;
-using Robust.Client.Graphics;
using Robust.Shared.Prototypes;
using Content.Shared.Inventory;
{
[Dependency] private readonly IPrototypeManager _prototypeManager = default!;
[Dependency] private readonly InventorySystem _inventory = default!;
-
+ [Dependency] private readonly SpriteSystem _sprite = default!;
protected override void OnAppearanceChange(EntityUid uid, TypingIndicatorComponent component, ref AppearanceChangeEvent args)
{
return;
}
- var layerExists = args.Sprite.LayerMapTryGet(TypingIndicatorLayers.Base, out var layer);
+ var layerExists = _sprite.LayerMapTryGet((uid, args.Sprite), TypingIndicatorLayers.Base, out var layer, false);
if (!layerExists)
- layer = args.Sprite.LayerMapReserveBlank(TypingIndicatorLayers.Base);
+ layer = _sprite.LayerMapReserve((uid, args.Sprite), TypingIndicatorLayers.Base);
- args.Sprite.LayerSetRSI(layer, proto.SpritePath);
- args.Sprite.LayerSetState(layer, proto.TypingState);
+ _sprite.LayerSetRsi((uid, args.Sprite), layer, proto.SpritePath);
+ _sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState);
args.Sprite.LayerSetShader(layer, proto.Shader);
- args.Sprite.LayerSetOffset(layer, proto.Offset);
+ _sprite.LayerSetOffset((uid, args.Sprite), layer, proto.Offset);
AppearanceSystem.TryGetData<TypingIndicatorState>(uid, TypingIndicatorVisuals.State, out var state);
- args.Sprite.LayerSetVisible(layer, state != TypingIndicatorState.None);
+ _sprite.LayerSetVisible((uid, args.Sprite), layer, state != TypingIndicatorState.None);
switch (state)
{
case TypingIndicatorState.Idle:
- args.Sprite.LayerSetState(layer, proto.IdleState);
+ _sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.IdleState);
break;
case TypingIndicatorState.Typing:
- args.Sprite.LayerSetState(layer, proto.TypingState);
+ _sprite.LayerSetRsiState((uid, args.Sprite), layer, proto.TypingState);
break;
}
}