Medusa System Added

Read about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)
This commit is contained in:
Kwoth
2022-04-16 12:44:46 +00:00
parent 3a516ab32a
commit 7cb15f5278
103 changed files with 3363 additions and 203 deletions

View File

@@ -6,7 +6,7 @@ using NadekoBot.Modules.Permissions.Services;
namespace NadekoBot.Modules.Games.Services;
public class ChatterBotService : IEarlyBehavior
public class ChatterBotService : IExecOnMessage
{
public ConcurrentDictionary<ulong, Lazy<IChatterBotSession>> ChatterBotGuilds { get; }
@@ -95,7 +95,7 @@ public class ChatterBotService : IEarlyBehavior
return true;
}
public async Task<bool> RunBehavior(IGuild guild, IUserMessage usrMsg)
public async Task<bool> ExecOnMessageAsync(IGuild guild, IUserMessage usrMsg)
{
if (guild is not SocketGuild sg)
return false;

View File

@@ -5,7 +5,7 @@ using System.Diagnostics.CodeAnalysis;
namespace NadekoBot.Modules.Games.Hangman;
public sealed class HangmanService : IHangmanService, ILateExecutor
public sealed class HangmanService : IHangmanService, IExecNoCommand
{
private readonly ConcurrentDictionary<ulong, HangmanGame> _hangmanGames = new();
private readonly IHangmanSource _source;
@@ -64,7 +64,7 @@ public sealed class HangmanService : IHangmanService, ILateExecutor
public IReadOnlyCollection<string> GetHangmanTypes()
=> _source.GetCategories();
public async Task LateExecute(IGuild guild, IUserMessage msg)
public async Task ExecOnNoCommandAsync(IGuild guild, IUserMessage msg)
{
if (_hangmanGames.ContainsKey(msg.Channel.Id))
{

View File

@@ -7,7 +7,7 @@ using NadekoBot.Services.Database.Models;
namespace NadekoBot.Modules.Games.Services;
public class PollService : IEarlyBehavior
public class PollService : IExecOnMessage
{
public ConcurrentDictionary<ulong, PollRunner> ActivePolls { get; } = new();
@@ -103,7 +103,7 @@ public class PollService : IEarlyBehavior
catch { }
}
public async Task<bool> RunBehavior(IGuild guild, IUserMessage msg)
public async Task<bool> ExecOnMessageAsync(IGuild guild, IUserMessage msg)
{
if (guild is null)
return false;