将运势保存在磁盘中 重启不会重置

This commit is contained in:
milimoe 2024-07-13 14:45:08 +08:00
parent 0bcd4a7283
commit bdfde4b250
Signed by: milimoe
GPG Key ID: 05D280912DA6C69E
5 changed files with 36 additions and 5 deletions

Binary file not shown.

View File

@ -282,6 +282,7 @@ namespace Milimoe.RainBOT.ListeningTask
}
content.message.Add(new ImageMessage(img));
await Bot.SendGroupMessage(e.group_id, "我的运势配图", content);
Daily.SaveDaily();
}
});
return;
@ -296,6 +297,7 @@ namespace Milimoe.RainBOT.ListeningTask
content.message.Add(new AtMessage(e.user_id));
content.message.Add(new TextMessage("你的今日运势已重置。"));
await Bot.SendGroupMessage(e.group_id, "重置运势", content);
Daily.SaveDaily();
});
return;
}
@ -313,6 +315,7 @@ namespace Milimoe.RainBOT.ListeningTask
{
string text = Daily.DailyContent[new Random().Next(Daily.DailyContent.Count)];
Daily.UserDailys.Add(GeneralSettings.BotQQ, text);
Daily.SaveDaily();
}
if (Daily.UserDailys.TryGetValue(qq, out string? daily) && daily != null)
{
@ -341,6 +344,7 @@ namespace Milimoe.RainBOT.ListeningTask
{
Daily.UserDailys.Remove(GeneralSettings.BotQQ);
await Bot.SendGroupMessage(e.group_id, "重置运势", "已重置" + Bot.GetMemberNickName(e.group_id, qq) + "" + qq + ")的今日运势。");
Daily.SaveDaily();
}
}
});

View File

@ -138,6 +138,7 @@ try
Daily.ClearDailys = false;
// 清空运势
Daily.UserDailys.Clear();
Daily.SaveDaily();
Console.ForegroundColor = ConsoleColor.Magenta;
Console.WriteLine("已重置所有人的今日运势。");
Console.ForegroundColor = ConsoleColor.Gray;

View File

@ -12,14 +12,40 @@ namespace Milimoe.RainBOT.Settings
public static List<string> DailyContent { get; set; } = [];
public static PluginConfig Configs { get; set; } = new("rainbot", "userdaliys");
public static void InitDaily()
{
PluginConfig configs = new("rainbot", "daily");
configs.Load();
if (configs.TryGetValue("DailyContent", out object? value) && value != null)
PluginConfig config_dailycontent = new("rainbot", "daily");
config_dailycontent.Load();
if (config_dailycontent.TryGetValue("DailyContent", out object? value) && value != null)
{
DailyContent = (List<string>)value;
}
PluginConfig config_userdaliys = new("rainbot", "userdaliys");
config_userdaliys.Load();
foreach (string str in config_userdaliys.Keys)
{
if (long.TryParse(str, out long qq) && config_userdaliys.TryGetValue(str, out object? value2) && value2 != null && !UserDailys.ContainsKey(qq))
{
UserDailys.Add(qq, value2.ToString() ?? "");
if (UserDailys[qq] == "") UserDailys.Remove(qq);
}
}
SaveDaily();
}
public static void SaveDaily()
{
lock (Configs)
{
Configs.Clear();
foreach (long qq in UserDailys.Keys)
{
Configs.Add(qq.ToString(), UserDailys[qq]);
}
Configs.Save();
}
}
}
}

View File

@ -3,8 +3,8 @@
public class OSMCore
{
public const string version = "v1.0";
public const string version2 = "Patch8";
public const string time = "July 11th, 2024";
public const string version2 = "Patch9 Test";
public const string time = "July 12th, 2024";
public static string Info => $"OSM Core {version} {version2}\r\nAuthor: Milimoe\r\nBuilt on {time}\r\nSee: https://github.com/milimoe";
}