2021-10-11 20:18:39 +02:00
|
|
|
using System.Text.RegularExpressions;
|
2022-06-23 20:11:03 +10:00
|
|
|
using Content.Server.Chat.Systems;
|
2025-07-12 13:52:51 -07:00
|
|
|
using Content.Shared.Speech;
|
2021-10-11 20:18:39 +02:00
|
|
|
|
2025-07-12 13:52:51 -07:00
|
|
|
namespace Content.Server.Speech;
|
2021-10-11 20:18:39 +02:00
|
|
|
|
2025-07-12 13:52:51 -07:00
|
|
|
public sealed class AccentSystem : EntitySystem
|
|
|
|
|
{
|
|
|
|
|
public static readonly Regex SentenceRegex = new(@"(?<=[\.!\?‽])(?![\.!\?‽])", RegexOptions.Compiled);
|
2021-10-11 20:18:39 +02:00
|
|
|
|
2025-07-12 13:52:51 -07:00
|
|
|
public override void Initialize()
|
|
|
|
|
{
|
|
|
|
|
SubscribeLocalEvent<TransformSpeechEvent>(AccentHandler);
|
2021-10-11 20:18:39 +02:00
|
|
|
}
|
|
|
|
|
|
2025-07-12 13:52:51 -07:00
|
|
|
private void AccentHandler(TransformSpeechEvent args)
|
2021-10-11 20:18:39 +02:00
|
|
|
{
|
2025-07-12 13:52:51 -07:00
|
|
|
var accentEvent = new AccentGetEvent(args.Sender, args.Message);
|
2021-10-11 20:18:39 +02:00
|
|
|
|
2025-07-12 13:52:51 -07:00
|
|
|
RaiseLocalEvent(args.Sender, accentEvent, true);
|
|
|
|
|
args.Message = accentEvent.Message;
|
2021-10-11 20:18:39 +02:00
|
|
|
}
|
|
|
|
|
}
|