Configurable delays for the Pig Cube self destruct feature

This commit is contained in:
barelyprofessional
2025-05-02 12:41:40 -05:00
parent 7c2b1354aa
commit adf38b9c53
2 changed files with 38 additions and 3 deletions

View File

@@ -148,7 +148,8 @@ public class GetRandomImage : ICommand
if (!await images.AnyAsync(ctx)) return;
var settings = await Helpers.GetMultipleValues([
BuiltIn.Keys.BotImageRandomSliceDivideBy, BuiltIn.Keys.BotImagePigCubeSelfDestruct,
BuiltIn.Keys.BotImageInvertedCubeUrl
BuiltIn.Keys.BotImageInvertedCubeUrl, BuiltIn.Keys.BotImagePigCubeSelfDestructMin,
BuiltIn.Keys.BotImagePigCubeSelfDestructMax, BuiltIn.Keys.BotImageInvertedPigCubeSelfDestructDelay
]);
var divideBy = settings[BuiltIn.Keys.BotImageRandomSliceDivideBy].ToType<int>();
var limit = 1;
@@ -185,8 +186,9 @@ public class GetRandomImage : ICommand
}
var timeToDeletionMsec = image.Url == settings[BuiltIn.Keys.BotImageInvertedCubeUrl].Value
? 5000
: new Random().Next(5 * 1000, 15 * 1000);
? settings[BuiltIn.Keys.BotImageInvertedPigCubeSelfDestructDelay].ToType<int>()
: new Random().Next(settings[BuiltIn.Keys.BotImagePigCubeSelfDestructMin].ToType<int>(),
settings[BuiltIn.Keys.BotImagePigCubeSelfDestructMax].ToType<int>());
logger.Info($"Deleting pig cube in {timeToDeletionMsec}ms");
await Task.Delay(timeToDeletionMsec, ctx);
await botInstance.KfClient.DeleteMessageAsync(msg.ChatMessageId.Value);