Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

修复: CaiBot心跳包错误 #342

Merged
merged 1 commit into from
Jul 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions CaiBot/MapGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@ public static class MapGenerator
{
public static Image Create()
{
Image<Rgba32> image = new(Main.maxTilesX, Main.maxTilesY);
Image<Rgba32> image = new(Main.tile.Width, Main.tile.Height);
MapHelper.Initialize();
Main.Map = new (0, 0);
Main.Map = new (Main.tile.Width, Main.tile.Height);
for (int x = 0; x < Main.maxTilesX; x++)
for (int y = 0; y < Main.maxTilesY; y++)
{
Expand Down Expand Up @@ -161,7 +161,7 @@ public MapInfo InternalSaveMap()
int num5 = 0;
int num6 = 0;
byte b6 = 0;
int num7;
int num7 = 0;
ushort num8;
if (mapTile.Light <= 18)
{
Expand Down Expand Up @@ -344,6 +344,7 @@ public MapInfo InternalSaveMap()

if (num > 0)
deflateStream.Write(array, 0, num);
deflateStream.Dispose();
return new MapInfo(text, memoryStream.ToArray());
}
}
Expand Down
23 changes: 12 additions & 11 deletions CaiBot/MessageHandler.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
using System.Net.WebSockets;
using System.Runtime.InteropServices;
using System.Text;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using NuGet.Protocol;
using Rests;
Expand Down Expand Up @@ -83,7 +84,7 @@ public static async Task HandleMessageAsync(string receivedData)
},
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "groupid":
long groupId = (long)jsonObject["groupid"]!;
Expand All @@ -105,7 +106,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "at", (string)jsonObject["at"]! },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "online":
string onlineResult = "";
Expand Down Expand Up @@ -189,7 +190,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "process", onlineProcess },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "process":
List<Dictionary<string, bool>> processList = new(
Expand Down Expand Up @@ -350,7 +351,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "worldname", Main.worldName },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "whitelist":
string name = (string)jsonObject["name"]!;
Expand Down Expand Up @@ -386,7 +387,7 @@ public static async Task HandleMessageAsync(string receivedData)
};
}

await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "lookbag":
name = (string)jsonObject["name"]!;
Expand Down Expand Up @@ -520,7 +521,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "buffs", buffs },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
}
else
{
Expand All @@ -534,7 +535,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "type", "lookbag" },
{ "exist", 0 }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
return;
}

Expand All @@ -547,7 +548,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "type", "lookbag" },
{ "exist", 0 }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
return;
}

Expand All @@ -567,7 +568,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "buffs", buffs },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
}

break;
Expand All @@ -582,7 +583,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "name", info.Name },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
case "worldfile":
result = new RestObject
Expand All @@ -592,7 +593,7 @@ public static async Task HandleMessageAsync(string receivedData)
{ "base64", FileToBase64String(Main.worldPathName) },
{ "group", (long)jsonObject["group"]! }
};
await SendDateAsync(result.ToJson());
await SendDateAsync(JsonConvert.SerializeObject(result));
break;
}
}
Expand Down
9 changes: 7 additions & 2 deletions CaiBot/Plugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
using System.Net.WebSockets;
using System.Reflection;
using System.Text;
using Newtonsoft.Json;
using Terraria;
using Terraria.Localization;
using TerrariaApi.Server;
Expand All @@ -19,7 +20,7 @@ public class Plugin : TerrariaPlugin
public override string Author => "Cai,羽学";
public override string Description => "CaiBot机器人的适配插件";
public override string Name => "CaiBotPlugin";
public static readonly Version VersionNum = new(2024, 7, 24, 1); //日期+版本号(0,1,2...)
public static readonly Version VersionNum = new(2024, 7, 24, 2); //日期+版本号(0,1,2...)
public override Version Version => VersionNum;

//插件的构造器
Expand Down Expand Up @@ -104,7 +105,11 @@ await WebSocket.ConnectAsync(new Uri("ws://api.terraria.ink:22333/bot/" + Config
{
if (WebSocket.State == WebSocketState.Open)
{
await MessageHandle.SendDateAsync("{type:HeartBeat}");
Dictionary<string, string> heartBeat = new()
{
{ "type", "HeartBeat" }
};
await MessageHandle.SendDateAsync(JsonConvert.SerializeObject(heartBeat));
}
}
catch
Expand Down
1 change: 1 addition & 0 deletions CaiBot/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ v2024.6.7.0 添加自动获取群号,向BOT发送服务器的一些信息(平
v2024.6.19.1 支持共享服务器(Beta测试)
v2024.7.11.1 支持下载地图和下载小地图
v2024.7.24.1 优化代码、发送心跳包、修复进度显示错误
v2024.7.24.2 修复心跳包错误
```

## 指令
Expand Down
Loading