添加特殊权限组
This commit is contained in:
parent
15958d6bfa
commit
1a93a41690
@ -675,6 +675,20 @@ namespace Milimoe.RainBOT.Command
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case "specialaccessgroup":
|
||||||
|
if (args.Length > 1 && long.TryParse(args[1].Replace("@", "").Trim(), out long specialaccess_qq))
|
||||||
|
{
|
||||||
|
string args0 = args[0].ToString().Trim();
|
||||||
|
if (args0 == "add" || args0 == "remove" || args0 == "+" || args0 == "-")
|
||||||
|
{
|
||||||
|
isadd = args0 == "add" || args0 == "+";
|
||||||
|
if (isadd) GeneralSettings.SpecialAccessGroup.Add(specialaccess_qq);
|
||||||
|
else GeneralSettings.SpecialAccessGroup.Remove(specialaccess_qq);
|
||||||
|
msg = AddRemoveAccessGroupMember("特殊权限组成员", isadd, specialaccess_qq);
|
||||||
|
return msg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
case "osmcoregroup":
|
case "osmcoregroup":
|
||||||
if (args.Length > 1 && long.TryParse(args[1].Trim(), out long osmcoregroup_id))
|
if (args.Length > 1 && long.TryParse(args[1].Trim(), out long osmcoregroup_id))
|
||||||
{
|
{
|
||||||
|
|||||||
@ -77,7 +77,7 @@ namespace Milimoe.RainBOT.ListeningTask
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 撤回消息
|
// 撤回消息
|
||||||
if ((e.user_id == GeneralSettings.Master || GeneralSettings.RecallAccessGroup.Contains(e.user_id)) && e.detail.Contains("撤回;") && e.message.Any(m => m.type == "reply"))
|
if ((e.user_id == GeneralSettings.Master || GeneralSettings.RecallAccessGroup.Contains(e.user_id)) && Bot.IsAdmin(e.group_id, e.user_id) && e.detail.Contains("撤回;") && e.message.Any(m => m.type == "reply"))
|
||||||
{
|
{
|
||||||
ReplyMessage reply = (ReplyMessage)e.message.Where(m => m.type == "reply").First();
|
ReplyMessage reply = (ReplyMessage)e.message.Where(m => m.type == "reply").First();
|
||||||
if (long.TryParse(reply.data.id, out long id))
|
if (long.TryParse(reply.data.id, out long id))
|
||||||
@ -89,7 +89,7 @@ namespace Milimoe.RainBOT.ListeningTask
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 精华消息
|
// 精华消息
|
||||||
if ((e.user_id == GeneralSettings.Master || Bot.IsAdmin(e.group_id, e.user_id)) && e.detail.Contains("精华;") && e.message.Any(m => m.type == "reply"))
|
if ((e.user_id == GeneralSettings.Master || GeneralSettings.SpecialAccessGroup.Contains(e.user_id)) && Bot.IsAdmin(e.group_id, e.user_id) && e.detail.Contains("精华;") && e.message.Any(m => m.type == "reply"))
|
||||||
{
|
{
|
||||||
ReplyMessage reply = (ReplyMessage)e.message.Where(m => m.type == "reply").First();
|
ReplyMessage reply = (ReplyMessage)e.message.Where(m => m.type == "reply").First();
|
||||||
if (int.TryParse(reply.data.id, out int id))
|
if (int.TryParse(reply.data.id, out int id))
|
||||||
@ -109,7 +109,7 @@ namespace Milimoe.RainBOT.ListeningTask
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (e.user_id != GeneralSettings.Master && Ignore.CustomIgnore.Any(e.detail.Contains) && Bot.BotIsAdmin(e.group_id))
|
if ((e.user_id != GeneralSettings.Master && !GeneralSettings.SpecialAccessGroup.Contains(e.user_id)) && Ignore.CustomIgnore.Any(e.detail.Contains) && Bot.BotIsAdmin(e.group_id))
|
||||||
{
|
{
|
||||||
await Bot.SendMessage(SupportedAPI.delete_msg, e.group_id, "撤回", new DeleteMsgContent(e.message_id), true);
|
await Bot.SendMessage(SupportedAPI.delete_msg, e.group_id, "撤回", new DeleteMsgContent(e.message_id), true);
|
||||||
await Bot.SendMessage(SupportedAPI.set_group_ban, e.group_id, "禁言", new SetGroupBanContent(e.group_id, e.user_id, 120), true);
|
await Bot.SendMessage(SupportedAPI.set_group_ban, e.group_id, "禁言", new SetGroupBanContent(e.group_id, e.user_id, 120), true);
|
||||||
|
|||||||
@ -58,6 +58,8 @@ namespace Milimoe.RainBOT.Settings
|
|||||||
|
|
||||||
public static List<long> SayNoAccessGroup { get; set; } = [];
|
public static List<long> SayNoAccessGroup { get; set; } = [];
|
||||||
|
|
||||||
|
public static List<long> SpecialAccessGroup { get; set; } = [];
|
||||||
|
|
||||||
public static List<long> OSMCoreGroup { get; set; } = [];
|
public static List<long> OSMCoreGroup { get; set; } = [];
|
||||||
|
|
||||||
public static List<long> FunGameGroup { get; set; } = [];
|
public static List<long> FunGameGroup { get; set; } = [];
|
||||||
@ -172,6 +174,10 @@ namespace Milimoe.RainBOT.Settings
|
|||||||
{
|
{
|
||||||
SayNoAccessGroup = (List<long>)value;
|
SayNoAccessGroup = (List<long>)value;
|
||||||
}
|
}
|
||||||
|
if (configs.TryGetValue("SpecialAccessGroup", out value) && value != null)
|
||||||
|
{
|
||||||
|
SpecialAccessGroup = (List<long>)value;
|
||||||
|
}
|
||||||
if (configs.TryGetValue("OSMCoreGroup", out value) && value != null)
|
if (configs.TryGetValue("OSMCoreGroup", out value) && value != null)
|
||||||
{
|
{
|
||||||
OSMCoreGroup = (List<long>)value;
|
OSMCoreGroup = (List<long>)value;
|
||||||
@ -223,6 +229,7 @@ namespace Milimoe.RainBOT.Settings
|
|||||||
Configs.Add("UnMuteAccessGroup", UnMuteAccessGroup);
|
Configs.Add("UnMuteAccessGroup", UnMuteAccessGroup);
|
||||||
Configs.Add("RecallAccessGroup", RecallAccessGroup);
|
Configs.Add("RecallAccessGroup", RecallAccessGroup);
|
||||||
Configs.Add("SayNoAccessGroup", SayNoAccessGroup);
|
Configs.Add("SayNoAccessGroup", SayNoAccessGroup);
|
||||||
|
Configs.Add("SpecialAccessGroup", SpecialAccessGroup);
|
||||||
Configs.Add("OSMCoreGroup", OSMCoreGroup);
|
Configs.Add("OSMCoreGroup", OSMCoreGroup);
|
||||||
Configs.Add("FunGameGroup", FunGameGroup);
|
Configs.Add("FunGameGroup", FunGameGroup);
|
||||||
Configs.Add("FunGameWebSocketGroup", FunGameWebSocketGroup);
|
Configs.Add("FunGameWebSocketGroup", FunGameWebSocketGroup);
|
||||||
@ -249,6 +256,9 @@ namespace Milimoe.RainBOT.Settings
|
|||||||
case "saynoaccessgroup":
|
case "saynoaccessgroup":
|
||||||
list = SayNoAccessGroup;
|
list = SayNoAccessGroup;
|
||||||
break;
|
break;
|
||||||
|
case "specialaccessgroup":
|
||||||
|
list = SpecialAccessGroup;
|
||||||
|
break;
|
||||||
case "osmcoregroup":
|
case "osmcoregroup":
|
||||||
list = OSMCoreGroup;
|
list = OSMCoreGroup;
|
||||||
break;
|
break;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user