feat:新增妖塔成语,需要在appsettings配置
This commit is contained in:
@@ -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)
|
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);
|
return await Task.FromResult(true);
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ namespace RoBot.Start.Cmd
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
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);
|
return await Task.FromResult(true);
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ namespace RoBot.Start.Cmd
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
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);
|
return await Task.FromResult(true);
|
||||||
|
|||||||
@@ -53,17 +53,13 @@ namespace RoBot.Start.Cmd
|
|||||||
await bot.SendMsg((uint)systemConfig.GroupQQ, "未收录");
|
await bot.SendMsg((uint)systemConfig.GroupQQ, "未收录");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
await bot.SendMsg((uint)systemConfig.GroupQQ, "请输入要查询的物品名称,例如:查价格 七星草");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
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);
|
return await Task.FromResult(true);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ namespace RoBot.Start.Cmd
|
|||||||
}
|
}
|
||||||
catch (Exception ex)
|
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);
|
return await Task.FromResult(true);
|
||||||
}
|
}
|
||||||
|
|||||||
+15
-11
@@ -38,12 +38,15 @@ KeystoreInfo _keyStore = await KeystoreConfig.GetBotKeystore();
|
|||||||
ReLogin = _keyStore.ReLogin;
|
ReLogin = _keyStore.ReLogin;
|
||||||
|
|
||||||
Lagrange.Core.BotContext bot = BotFactory.Create(new BotConfig(), _deviceInfo, _keyStore.BotKeystore);
|
Lagrange.Core.BotContext bot = BotFactory.Create(new BotConfig(), _deviceInfo, _keyStore.BotKeystore);
|
||||||
bot.Invoker.OnGroupMessageReceived += async (sender, e) =>
|
bot.Invoker.OnGroupMessageReceived += (sender, e) =>
|
||||||
{
|
{
|
||||||
if (e.Chain.GroupUin == systemConfig.GroupQQ)
|
Task.Run(() =>
|
||||||
{
|
{
|
||||||
await HandleGroupMessage(e.Chain);
|
if (e.Chain.GroupUin == systemConfig.GroupQQ)
|
||||||
}
|
{
|
||||||
|
HandleGroupMessage(e.Chain);
|
||||||
|
}
|
||||||
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
bot.Invoker.OnBotLogEvent += (sender, e) =>
|
bot.Invoker.OnBotLogEvent += (sender, e) =>
|
||||||
@@ -84,24 +87,25 @@ else
|
|||||||
LoadLoginConfig();
|
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()
|
void Init()
|
||||||
|
|||||||
@@ -1,5 +1,31 @@
|
|||||||
{
|
{
|
||||||
"ConnectionStrings": {
|
"ConnectionStrings": {
|
||||||
"Redis": "127.0.0.1:6379,defaultDatabase=0,max pool size=50,tryit=0"
|
"Redis": "127.0.0.1:6379,defaultDatabase=0,max pool size=50,tryit=0"
|
||||||
}
|
},
|
||||||
|
"猜成语": {
|
||||||
|
"🚶🐎👀🌸": "走马观花",
|
||||||
|
"💧🏾🔥🥵": "水深火热",
|
||||||
|
"😞🌸😭👧🏻": "愁眉苦脸",
|
||||||
|
"🌬️🌶️⏏️🎤": "吹拉弹唱",
|
||||||
|
"🦩🧍🐔👨👩👧👦": "鹤立鸡群",
|
||||||
|
"🕸️👁️🐟🚢": "望眼欲穿",
|
||||||
|
"👩🎨🐍🦢🐾": "画蛇添足",
|
||||||
|
"🍃🚌👌🐲": "叶公好龙",
|
||||||
|
"🌸🍐🐯🥄": "花里胡哨",
|
||||||
|
"❤️🤔🍅🍊": "心想事成",
|
||||||
|
"🌪️🍼🌊🐳": "风平浪静",
|
||||||
|
"🍚👴⭕👦": "返老还童",
|
||||||
|
"🆘🧑📞😀": "助人为乐",
|
||||||
|
"🐊🐟🔪👨": "恶语伤人",
|
||||||
|
"🛀🏻😭❌💦": "欲哭无泪",
|
||||||
|
"🥃💧🚗💴": "杯水车薪",
|
||||||
|
"🍵🍚❌🤔": "茶饭不思",
|
||||||
|
"👨⛰️👨🌊": "人山人海",
|
||||||
|
"🤚🤖👨👩👧👧": "白手起家",
|
||||||
|
"🐷👫🐶👉": "猪朋狗友",
|
||||||
|
"7️⃣👆8️⃣👇": "七上八下",
|
||||||
|
"🔪⛏️🔥🌱": "刀耕火种",
|
||||||
|
"✉️🍅🥚🥚": "信誓旦旦",
|
||||||
|
"✍️🐍👇🦶": "画蛇添足"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user