Skip to content

Commit

Permalink
fix 聊天桥
Browse files Browse the repository at this point in the history
  • Loading branch information
Controllerdestiny committed Apr 10, 2024
1 parent 22318b9 commit 5976b2d
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 7 deletions.
4 changes: 2 additions & 2 deletions ChattyBridge/Message/PlayerMessage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public class PlayerMessage
public string Group { get; init; }

[JsonProperty("rgb")]
public byte[] RGB { get; init; } = new byte[3];
public int[] RGB { get; init; } = new int[3];

[JsonProperty("type")]
[JsonConverter(typeof(EnumConveter))]
Expand All @@ -29,7 +29,7 @@ public PlayerMessage(TSPlayer player)
Name = player.Name;
Prefix = player.Group.Prefix;
Group = player.Group.Name;
RGB = new byte[3]
RGB = new int[3]
{
player.Group.R,
player.Group.G,
Expand Down
13 changes: 8 additions & 5 deletions ChattyBridge/Plugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using Newtonsoft.Json.Linq;
using Rests;
using System.Reflection;
using System.Text;
using Terraria;
using TerrariaApi.Server;
using TShockAPI;
Expand Down Expand Up @@ -68,28 +69,29 @@ private object Receive(RestRequestArgs args)
{
try
{
var json = JObject.Parse(msg);
var sourceMsg = Encoding.UTF8.GetString(Convert.FromBase64String(msg));
var json = JObject.Parse(sourceMsg);
if (json.TryGetValue("type", out var type))
{
switch (type.ToString())
{
case "player_join":
{
var jobj = json.ToObject<PlayerJoinMessage>()!;
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name} 加入服务器", jobj.RGB[0], jobj.RGB[1], jobj.RGB[2]);
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name} 加入服务器", (byte)jobj.RGB[0], (byte)jobj.RGB[1], (byte)jobj.RGB[2]);
break;
}

case "player_leave":
{
var jobj = json.ToObject<PlayerLeaveMessage>()!;
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name} 离开服务器", jobj.RGB[0], jobj.RGB[1], jobj.RGB[2]);
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name} 离开服务器", (byte)jobj.RGB[0], (byte)jobj.RGB[1], (byte)jobj.RGB[2]);
break;
}
case "player_chat":
{
var jobj = json.ToObject<PlayerChatMessage>()!;
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name}: {jobj.Text}", jobj.RGB[0], jobj.RGB[1], jobj.RGB[2]);
TShock.Utils.Broadcast($"[{jobj.ServerName}] {jobj.Name}: {jobj.Text}", (byte)jobj.RGB[0], (byte)jobj.RGB[1], (byte)jobj.RGB[2]);
break;
}
default:
Expand All @@ -111,11 +113,12 @@ private void SendMessage(string msg)
{
Task.Run(() =>
{
var baseStr = Convert.ToBase64String(Encoding.UTF8.GetBytes(msg));
foreach (var host in Config.RestHost)
{
try
{
var url = $"http://{host}{RestAPI}?msg={msg}";
var url = $"http://{host}{RestAPI}?msg={baseStr}";
Client.Send(new HttpRequestMessage(HttpMethod.Get, url));
}
catch
Expand Down

0 comments on commit 5976b2d

Please sign in to comment.