[feat] ComicSans back to clown!
This commit is contained in:
@@ -380,6 +380,7 @@ public sealed class ChatUIController : UIController
|
||||
return;
|
||||
}
|
||||
|
||||
msg.Message = FormattedMessage.RemoveMarkup(msg.Message);
|
||||
EnqueueSpeechBubble(ent, msg, speechType);
|
||||
}
|
||||
|
||||
|
||||
24
Content.Server/Chat/FunnyFontsChatSystem.cs
Normal file
24
Content.Server/Chat/FunnyFontsChatSystem.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using Content.Server.Chat.Systems;
|
||||
using Content.Server.VoiceMask;
|
||||
using Content.Shared.Interaction.Components;
|
||||
|
||||
namespace Content.Server.Chat;
|
||||
|
||||
public sealed class FunnyFontsChatSystem : EntitySystem
|
||||
{
|
||||
public override void Initialize()
|
||||
{
|
||||
base.Initialize();
|
||||
SubscribeLocalEvent<SpeechTransformedEvent>(OnEntitySpeak);
|
||||
}
|
||||
|
||||
private void OnEntitySpeak(SpeechTransformedEvent ev)
|
||||
{
|
||||
if(TryComp(ev.Sender, out VoiceMaskComponent? mask) && mask.Enabled) return;
|
||||
|
||||
if (TryComp<ClumsyComponent>(ev.Sender, out _))
|
||||
{
|
||||
ev.Message = $"[font=\"ComicSansMS\"]{ev.Message}[/font]";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -310,6 +310,14 @@ public sealed partial class ChatSystem : SharedChatSystem
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public string AfterSpeechTransformed(EntityUid sender, string message)
|
||||
{
|
||||
var ev = new SpeechTransformedEvent(sender, message);
|
||||
RaiseLocalEvent(ev);
|
||||
return ev.Message;
|
||||
}
|
||||
|
||||
#region Announcements
|
||||
|
||||
/// <summary>
|
||||
@@ -396,6 +404,8 @@ public sealed partial class ChatSystem : SharedChatSystem
|
||||
if (message.Length == 0)
|
||||
return;
|
||||
|
||||
message = AfterSpeechTransformed(source, message);
|
||||
|
||||
// get the entity's apparent name (if no override provided).
|
||||
string name;
|
||||
if (nameOverride != null)
|
||||
@@ -418,7 +428,7 @@ public sealed partial class ChatSystem : SharedChatSystem
|
||||
//WD-EDIT
|
||||
|
||||
var wrappedMessage = Loc.GetString("chat-manager-entity-say-wrap-message",
|
||||
("entityName", name), ("message", FormattedMessage.EscapeText(message)));
|
||||
("entityName", name), ("message", message));
|
||||
|
||||
SendInVoiceRange(ChatChannel.Local, message, wrappedMessage, source, range);
|
||||
|
||||
@@ -469,6 +479,8 @@ public sealed partial class ChatSystem : SharedChatSystem
|
||||
if (message.Length == 0)
|
||||
return;
|
||||
|
||||
message = AfterSpeechTransformed(source, message);
|
||||
|
||||
var obfuscatedMessage = ObfuscateMessageReadability(message, 0.2f);
|
||||
|
||||
// get the entity's name by visual identity (if no override provided).
|
||||
@@ -488,13 +500,13 @@ public sealed partial class ChatSystem : SharedChatSystem
|
||||
name = FormattedMessage.EscapeText(name);
|
||||
|
||||
var wrappedMessage = Loc.GetString("chat-manager-entity-whisper-wrap-message",
|
||||
("entityName", name), ("message", FormattedMessage.EscapeText(message)));
|
||||
("entityName", name), ("message", message));
|
||||
|
||||
var wrappedobfuscatedMessage = Loc.GetString("chat-manager-entity-whisper-wrap-message",
|
||||
("entityName", nameIdentity), ("message", FormattedMessage.EscapeText(obfuscatedMessage)));
|
||||
("entityName", nameIdentity), ("message", obfuscatedMessage));
|
||||
|
||||
var wrappedUnknownMessage = Loc.GetString("chat-manager-entity-whisper-unknown-wrap-message",
|
||||
("message", FormattedMessage.EscapeText(obfuscatedMessage)));
|
||||
("message", obfuscatedMessage));
|
||||
|
||||
|
||||
foreach (var (session, data) in GetRecipients(source, WhisperMuffledRange))
|
||||
@@ -975,6 +987,19 @@ public class SetSpeakerColorEvent
|
||||
Name = name;
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class SpeechTransformedEvent : EntityEventArgs
|
||||
{
|
||||
public EntityUid Sender;
|
||||
public string Message;
|
||||
|
||||
public SpeechTransformedEvent(EntityUid sender, string message)
|
||||
{
|
||||
Sender = sender;
|
||||
Message = message;
|
||||
}
|
||||
}
|
||||
|
||||
//WD-EDIT
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -52,7 +52,7 @@ public sealed class HeadsetSystem : SharedHeadsetSystem
|
||||
&& TryComp(component.Headset, out EncryptionKeyHolderComponent? keys)
|
||||
&& keys.Channels.Contains(args.Channel.ID))
|
||||
{
|
||||
_radio.SendRadioMessage(uid, args.Message, args.Channel, component.Headset);
|
||||
_radio.SendRadioMessage(uid, args.Message, args.Channel, component.Headset, false);
|
||||
args.Channel = null; // prevent duplicate messages from other listeners.
|
||||
}
|
||||
}
|
||||
|
||||
BIN
Resources/Fonts/ComicSans/ComicSansMS-Bold.ttf
Normal file
BIN
Resources/Fonts/ComicSans/ComicSansMS-Bold.ttf
Normal file
Binary file not shown.
BIN
Resources/Fonts/ComicSans/ComicSansMS-BoldItalic.ttf
Normal file
BIN
Resources/Fonts/ComicSans/ComicSansMS-BoldItalic.ttf
Normal file
Binary file not shown.
BIN
Resources/Fonts/ComicSans/ComicSansMS-Italic.ttf
Normal file
BIN
Resources/Fonts/ComicSans/ComicSansMS-Italic.ttf
Normal file
Binary file not shown.
BIN
Resources/Fonts/ComicSans/ComicSansMS.ttf
Normal file
BIN
Resources/Fonts/ComicSans/ComicSansMS.ttf
Normal file
Binary file not shown.
@@ -41,3 +41,7 @@
|
||||
- type: font
|
||||
id: Monospace
|
||||
path: /EngineFonts/NotoSans/NotoSansMono-Regular.ttf
|
||||
|
||||
- type: font
|
||||
id: ComicSansMS
|
||||
path: /Fonts/ComicSans/ComicSansMS.ttf
|
||||
|
||||
Reference in New Issue
Block a user