* Deprecate IActionBlocker in favour of cancellable events * Bring back old speech/emoting component restrictions * Rename action blocker listener methods * Use Entity System public methods instead of extension methods Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
23 lines
494 B
C#
23 lines
494 B
C#
using Robust.Shared.GameObjects;
|
|
|
|
namespace Content.Shared.Speech
|
|
{
|
|
public class SpeechSystem : EntitySystem
|
|
{
|
|
public override void Initialize()
|
|
{
|
|
base.Initialize();
|
|
|
|
SubscribeLocalEvent<SpeakAttemptEvent>(OnSpeakAttempt);
|
|
}
|
|
|
|
private void OnSpeakAttempt(SpeakAttemptEvent ev)
|
|
{
|
|
if (!ev.Entity.HasComponent<SharedSpeechComponent>())
|
|
{
|
|
ev.Cancel();
|
|
}
|
|
}
|
|
}
|
|
}
|