Chat now sends formatted messages to allow more complex messages.
This commit is contained in:
@@ -154,6 +154,20 @@ namespace Content.Client.Chat
|
||||
Contents.AddMessage(formatted);
|
||||
}
|
||||
|
||||
public void AddLine(FormattedMessage message, Color color)
|
||||
{
|
||||
if (Disposed)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var formatted = new FormattedMessage(3);
|
||||
formatted.PushColor(color);
|
||||
formatted.AddMessage(message);
|
||||
formatted.Pop();
|
||||
Contents.AddMessage(formatted);
|
||||
}
|
||||
|
||||
private void Input_OnTextEntered(LineEdit.LineEditEventArgs args)
|
||||
{
|
||||
// We set it there to true so it's set to false by TextSubmitted.Invoke if necessary
|
||||
|
||||
@@ -222,7 +222,7 @@ namespace Content.Client.Chat
|
||||
};
|
||||
}
|
||||
|
||||
_currentChatBox?.AddLine(messageText, message.Channel, color);
|
||||
_currentChatBox?.AddLine(FormattedMessage.FromMarkup(messageText), color);
|
||||
}
|
||||
|
||||
private void OnChatBoxTextSubmitted(ChatBox chatBox, string text)
|
||||
@@ -422,7 +422,7 @@ namespace Content.Client.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
var messages = SplitMessage(msg.Message);
|
||||
var messages = SplitMessage(FormattedMessage.RemoveMarkup(msg.Message));
|
||||
|
||||
foreach (var message in messages)
|
||||
{
|
||||
|
||||
@@ -22,6 +22,7 @@ using Robust.Shared.IoC;
|
||||
using Robust.Shared.Localization;
|
||||
using Robust.Shared.Log;
|
||||
using Robust.Shared.Network;
|
||||
using Robust.Shared.Utility;
|
||||
using static Content.Server.Interfaces.Chat.IChatManager;
|
||||
|
||||
namespace Content.Server.Chat
|
||||
@@ -170,6 +171,8 @@ namespace Content.Server.Chat
|
||||
var listeners = EntitySystem.Get<ListeningSystem>();
|
||||
listeners.PingListeners(source, message);
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
msg.Channel = ChatChannel.Local;
|
||||
msg.Message = message;
|
||||
@@ -198,6 +201,8 @@ namespace Content.Server.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
action = FormattedMessage.EscapeText(action);
|
||||
|
||||
var pos = source.Transform.Coordinates;
|
||||
var clients = _playerManager.GetPlayersInRange(pos, VoiceRange).Select(p => p.ConnectedClient);
|
||||
|
||||
@@ -230,6 +235,8 @@ namespace Content.Server.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
msg.Channel = ChatChannel.OOC;
|
||||
msg.Message = message;
|
||||
@@ -254,6 +261,8 @@ namespace Content.Server.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var clients = GetDeadChatClients();
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
@@ -273,6 +282,8 @@ namespace Content.Server.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var clients = GetDeadChatClients();
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
@@ -299,6 +310,8 @@ namespace Content.Server.Chat
|
||||
return;
|
||||
}
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var clients = _adminManager.ActiveAdmins.Select(p => p.ConnectedClient);
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
@@ -313,6 +326,8 @@ namespace Content.Server.Chat
|
||||
{
|
||||
var clients = _adminManager.ActiveAdmins.Select(p => p.ConnectedClient);
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
|
||||
msg.Channel = ChatChannel.AdminChat;
|
||||
@@ -324,6 +339,8 @@ namespace Content.Server.Chat
|
||||
|
||||
public void SendHookOOC(string sender, string message)
|
||||
{
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
|
||||
var msg = _netManager.CreateNetMessage<MsgChatMessage>();
|
||||
msg.Channel = ChatChannel.OOC;
|
||||
msg.Message = message;
|
||||
|
||||
Reference in New Issue
Block a user