* Fix handlabeler/utility belt misprediction * Partly moved HandLabelerSystem to shared And cleaned up HandLabelerComponent * WIP format the files so later commits look clearer Doesn't change individual code lines, but may move functions to another file * WIP some more code movement * Hand Labeler is now mostly predicted Only the UI isn't * WIP: Formatting and moved stuff * Using componentstates for prediction correction * review * Update label on label change * Don't overwrite label while editing --------- Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com> Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
31 lines
888 B
C#
31 lines
888 B
C#
using Content.Shared.Examine;
|
|
using Content.Shared.Labels.Components;
|
|
using Robust.Shared.Utility;
|
|
|
|
namespace Content.Shared.Labels.EntitySystems;
|
|
|
|
public abstract partial class SharedLabelSystem : EntitySystem
|
|
{
|
|
public override void Initialize()
|
|
{
|
|
base.Initialize();
|
|
|
|
SubscribeLocalEvent<LabelComponent, ExaminedEvent>(OnExamine);
|
|
}
|
|
|
|
public virtual void Label(EntityUid uid, string? text, MetaDataComponent? metadata = null, LabelComponent? label = null){}
|
|
|
|
private void OnExamine(EntityUid uid, LabelComponent? label, ExaminedEvent args)
|
|
{
|
|
if (!Resolve(uid, ref label))
|
|
return;
|
|
|
|
if (label.CurrentLabel == null)
|
|
return;
|
|
|
|
var message = new FormattedMessage();
|
|
message.AddText(Loc.GetString("hand-labeler-has-label", ("label", label.CurrentLabel)));
|
|
args.PushMessage(message);
|
|
}
|
|
}
|