feat:新增妖塔成语,需要在appsettings配置

main
LyMysterious 11 months ago
parent 66c2b5b70a
commit fc5dc1f28a

@ -0,0 +1,47 @@
using System.Text.RegularExpressions;
using Lagrange.Core.Message;
using Lagrange.Core.Message.Entity;
using RoBot.Core.Helper;
using RoBot.Start.Global;
using Lagrange.Core.Common.Interface.Api;
using RoBot.Start.LogConfig;
namespace RoBot.Start.Cmd
{
/// <summary>
/// 猜成语
/// </summary>
public class ChineseIdiomsCmd
{
public static async Task<bool> Execute(MessageChain chain)
{
try
{
var textEntities = chain.Where(o => o is TextEntity).ToList();
TextEntity input = textEntities.Cast<TextEntity>().ToList().FirstOrDefault(o => o.Text.Contains("要道友看表情猜成语"));
if (input is not null)
{
string pattern = @"题目:(.+)";
Match match = Regex.Match(input.Text, pattern);
if (match.Success)
{
string emojiString = match.Groups[1].Value.Trim();
Dictionary<string, string> dict = AppConfigHelper.GetSection<Dictionary<string, string>>("猜成语");
if (dict?.Count > 0 && dict.TryGetValue(emojiString, out string val))
{
var systemConfig = GlobalConfig.ConfigSetting;
var bot = GlobalConfig.BotContext;
var groupMessageChain = MessageBuilder.Group((uint)systemConfig.GroupQQ).Forward(chain).Text(val);
await bot.SendMessage(groupMessageChain.Build());
}
}
}
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 猜成语 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);
}
}
}

@ -51,7 +51,7 @@ namespace RoBot.Start.Cmd
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 坊市上架命令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}");
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 坊市上架命令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);

@ -32,7 +32,7 @@ namespace RoBot.Start.Cmd
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 保存或更新物品价格 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}");
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 保存或更新物品价格 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);

@ -69,7 +69,7 @@ namespace RoBot.Start.Cmd
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 灵田结算查价格 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}");
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 灵田结算查价格 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);

@ -53,17 +53,13 @@ namespace RoBot.Start.Cmd
await bot.SendMsg((uint)systemConfig.GroupQQ, "未收录");
}
}
else
{
await bot.SendMsg((uint)systemConfig.GroupQQ, "请输入要查询的物品名称,例如:查价格 七星草");
}
}
}
}
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 查看物品信息命令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}");
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 查看物品信息命令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);
}

@ -72,7 +72,7 @@ namespace RoBot.Start.Cmd
}
catch (Exception ex)
{
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 悬赏令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}");
Logs.Write($@"{DateTime.Now:yyyy-MM-dd HH:mm:ss} 悬赏令 发生异常,异常信息:{ex.Message},异常堆栈:{ex.StackTrace}", true);
}
return await Task.FromResult(true);
}

@ -38,12 +38,15 @@ KeystoreInfo _keyStore = await KeystoreConfig.GetBotKeystore();
ReLogin = _keyStore.ReLogin;
Lagrange.Core.BotContext bot = BotFactory.Create(new BotConfig(), _deviceInfo, _keyStore.BotKeystore);
bot.Invoker.OnGroupMessageReceived += async (sender, e) =>
bot.Invoker.OnGroupMessageReceived += (sender, e) =>
{
Task.Run(() =>
{
if (e.Chain.GroupUin == systemConfig.GroupQQ)
{
await HandleGroupMessage(e.Chain);
HandleGroupMessage(e.Chain);
}
});
};
bot.Invoker.OnBotLogEvent += (sender, e) =>
@ -84,24 +87,25 @@ else
LoadLoginConfig();
}
async Task<bool> HandleGroupMessage(MessageChain chain)
void HandleGroupMessage(MessageChain chain)
{
// 悬赏令查价
await WantedPriceCmd.Execute(chain);
_ = WantedPriceCmd.Execute(chain);
// 坊市生成上架命令
await GoodsUpShopCmd.Execute(chain);
_ = GoodsUpShopCmd.Execute(chain);
// 保存或更新物品价格
await InertOrUpdateGoodsInfoCmd.Execute(chain);
_ = InertOrUpdateGoodsInfoCmd.Execute(chain);
// 查看物品信息命令 价格/数据更新时间
await QueryGoodsPriceCmd.Execute(chain);
_ = QueryGoodsPriceCmd.Execute(chain);
// 灵田结算价格
await LingTianCmd.Execute(chain);
_ = LingTianCmd.Execute(chain);
return true;
// 妖塔猜成语
_ = ChineseIdiomsCmd.Execute(chain);
}
void Init()

@ -1,5 +1,31 @@
{
"ConnectionStrings": {
"Redis": "127.0.0.1:6379,defaultDatabase=0,max pool size=50,tryit=0"
},
"猜成语": {
"🚶🐎👀🌸": "走马观花",
"💧🏾🔥🥵": "水深火热",
"😞🌸😭👧🏻": "愁眉苦脸",
"🌬️🌶️⏏️🎤": "吹拉弹唱",
"🦩🧍🐔👨‍👩‍👧‍👦": "鹤立鸡群",
"🕸️👁️🐟🚢": "望眼欲穿",
"👩‍🎨🐍🦢🐾": "画蛇添足",
"🍃🚌👌🐲": "叶公好龙",
"🌸🍐🐯🥄": "花里胡哨",
"❤️🤔🍅🍊": "心想事成",
"🌪️🍼🌊🐳": "风平浪静",
"🍚👴⭕👦": "返老还童",
"🆘🧑📞😀": "助人为乐",
"🐊🐟🔪👨": "恶语伤人",
"🛀🏻😭❌💦": "欲哭无泪",
"🥃💧🚗💴": "杯水车薪",
"🍵🍚❌🤔": "茶饭不思",
"👨⛰️👨🌊": "人山人海",
"🤚🤖👨‍👩‍👧‍👧": "白手起家",
"🐷👫🐶👉": "猪朋狗友",
"7⃣👆8⃣👇": "七上八下",
"🔪⛏️🔥🌱": "刀耕火种",
"✉️🍅🥚🥚": "信誓旦旦",
"✍️🐍👇🦶": "画蛇添足"
}
}
Loading…
Cancel
Save