diff --git a/README.adoc b/README.adoc index e6b931d5..5d13d7e0 100644 --- a/README.adoc +++ b/README.adoc @@ -85,6 +85,7 @@ The quickstart will show a user also all named commands other user have created |`Rêve de Dragon` |`Salvage Union BDR-V1.0` |`Savage Worlds` +|`Shadowdark` |`Shadowrun` |`Shadowrun without Dice Images` |`Star Wars - West End Games D6 Rules, 2nd Edition REUP` @@ -487,10 +488,6 @@ The alias must be created before the custom_parameter command is used and removi ==== Examples -===== Vampire 5ed - -`/custom_parameter start expression: val('$r',{regular dice:1\<\=>16}d10 col 'blue') val('$h',{hunger dice:0\<\=>5}d10 col 'purple_dark') val('$s',('$r' + '$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',( ( ('$rt' + '$ht'=) ) /2)*2) val('$ts',('$s' + '$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression dice_image_style: polyhedral_knots dice_image_color: blue` - ===== nWod / Chronicles of Darkness `/custom_parameter start expression: {Number of Dice}d!10>=8c` @@ -676,6 +673,7 @@ The state of the button message will be lost and reset as if new created. === Clear The clear command removes all button configuration in a channel from the bot and deletes the button messages. +The optional `name` option can be used to only delete a named command in a channel. === Validation diff --git a/bot/src/main/java/de/janno/discord/bot/command/AbstractCommand.java b/bot/src/main/java/de/janno/discord/bot/command/AbstractCommand.java index bb4342af..e51b8b9c 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/AbstractCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/AbstractCommand.java @@ -2,7 +2,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ImmutableList; -import de.janno.discord.bot.BaseCommandUtils; import de.janno.discord.bot.persistance.MessageConfigDTO; import de.janno.discord.bot.persistance.MessageDataDTO; import de.janno.discord.bot.persistance.PersistenceManager; @@ -75,11 +74,6 @@ protected boolean shouldKeepExistingButtonMessage(@NonNull ButtonEventAdaptor ev public @NonNull Optional getCurrentMessageContentChange(C config, State state, boolean keepExistingButtonMessage) { return AbstractCommand.this.getCurrentMessageContentChange(config, state, keepExistingButtonMessage); } - - @Override - public @NonNull MessageDataDTO createEmptyMessageData(@NonNull UUID configUUID, @Nullable Long guildId, long channelId, long messageId) { - return AbstractCommand.this.createEmptyMessageData(configUUID, guildId, channelId, messageId); - } }; slashCommand = new SlashCommandImpl<>(persistenceManager) { @Override @@ -151,11 +145,6 @@ protected Collection additionalCommandOptions() { protected @NonNull Optional getStartOptionsValidationMessage(@NonNull CommandInteractionOption options, long channelId, long userId, @NonNull Locale userLocale) { return AbstractCommand.this.getStartOptionsValidationMessage(options, channelId, userId, userLocale); } - - @Override - public @NonNull MessageDataDTO createEmptyMessageData(@NonNull UUID configUUID, @Nullable Long guildId, long channelId, long messageId) { - return AbstractCommand.this.createEmptyMessageData(configUUID, guildId, channelId, messageId); - } }; } @@ -199,17 +188,6 @@ protected abstract ConfigAndState getMessageDataAndUpdateWithButtonValue(@ @NonNull String invokingUserName); - /** - * On the creation of a message an empty state need to be saved so we know the message exists and we can remove it later, even on concurrent actions - */ - @VisibleForTesting - public @NonNull MessageDataDTO createEmptyMessageData(@NonNull UUID configUUID, - @Nullable Long guildId, - long channelId, - long messageId) { - return BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, guildId, channelId, messageId, getCommandId(), persistenceManager); - } - //visible for welcome command public abstract Optional createMessageConfig(@NonNull UUID configUUID, @Nullable Long guildId, diff --git a/bot/src/main/java/de/janno/discord/bot/command/ClearCommand.java b/bot/src/main/java/de/janno/discord/bot/command/ClearCommand.java index e5919bd8..a0fdb28c 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/ClearCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/ClearCommand.java @@ -1,17 +1,24 @@ package de.janno.discord.bot.command; +import com.google.common.base.Strings; import de.janno.discord.bot.BotMetrics; import de.janno.discord.bot.I18n; import de.janno.discord.bot.persistance.PersistenceManager; +import de.janno.discord.connector.api.AutoCompleteAnswer; +import de.janno.discord.connector.api.AutoCompleteRequest; import de.janno.discord.connector.api.SlashCommand; import de.janno.discord.connector.api.SlashEventAdaptor; import de.janno.discord.connector.api.slash.CommandDefinition; +import de.janno.discord.connector.api.slash.CommandDefinitionOption; +import de.janno.discord.connector.api.slash.CommandInteractionOption; import lombok.NonNull; import lombok.extern.slf4j.Slf4j; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import java.time.Duration; +import java.util.Comparator; +import java.util.List; import java.util.Locale; import java.util.UUID; import java.util.function.Supplier; @@ -19,6 +26,7 @@ @Slf4j public class ClearCommand implements SlashCommand { + private static final String NAME_OPTION = "name"; private final PersistenceManager persistenceManager; public ClearCommand(PersistenceManager persistenceManager) { @@ -37,23 +45,51 @@ public ClearCommand(PersistenceManager persistenceManager) { .nameLocales(I18n.allNoneEnglishMessagesNames("clear.name")) .description(I18n.getMessage("clear.description", Locale.ENGLISH)) .descriptionLocales(I18n.allNoneEnglishMessagesDescriptions("clear.description")) + .option(CommandDefinitionOption.builder() + .autoComplete(true) + .type(CommandDefinitionOption.Type.STRING) + .required(false) + .name(I18n.getMessage("clear.option.name.name", Locale.ENGLISH)) + .description(I18n.getMessage("clear.option.name.description", Locale.ENGLISH)) + .descriptionLocales(I18n.allNoneEnglishMessagesDescriptions("clear.option.name.description")) + .build()) .build(); } + @Override + public @NonNull List getAutoCompleteAnswer(@NonNull AutoCompleteRequest autoCompleteRequest, @NonNull Locale userLocale, long channelId, Long guildId, long userId) { + if (!NAME_OPTION.equals(autoCompleteRequest.getFocusedOptionName())) { + return List.of(); + } + + return persistenceManager.getNamedCommandsChannel(channelId).stream() + .filter(nc -> Strings.isNullOrEmpty(autoCompleteRequest.getFocusedOptionValue()) || nc.toLowerCase().contains(autoCompleteRequest.getFocusedOptionValue().toLowerCase())) + .map(n -> new AutoCompleteAnswer(n, n)) + .distinct() + .sorted(Comparator.comparing(AutoCompleteAnswer::getName)) + .limit(5) + .toList(); + } + @Override public @NonNull Mono handleSlashCommandEvent(@NonNull SlashEventAdaptor event, @NonNull Supplier uuidSupplier, @NonNull Locale userLocal) { BotMetrics.incrementSlashStartMetricCounter(getCommandId()); + final String name = event.getOption(NAME_OPTION).map(CommandInteractionOption::getStringValue).orElse(null); + return event.reply(I18n.getMessage("clear.reply", userLocal), false) - .then(Mono.just(persistenceManager.deleteMessageDataForChannel(event.getChannelId())) + .then(Mono.just(persistenceManager.deleteMessageDataForChannel(event.getChannelId(), name)) .flux() .flatMap(Flux::fromIterable) .delayElements(Duration.ofMillis(io.avaje.config.Config.getLong("command.clear.messageDeleteDelay", 1000))) .flatMap(event::deleteMessageById) + .doOnTerminate(() -> log.info("Finish delete")) .then()) .doOnSuccess(v -> { - persistenceManager.deleteAllChannelConfig(event.getChannelId()); - persistenceManager.deleteAllMessageConfigForChannel(event.getChannelId()); + if (Strings.isNullOrEmpty(name)) { + persistenceManager.deleteAllChannelConfig(event.getChannelId()); + } + persistenceManager.deleteAllMessageConfigForChannel(event.getChannelId(), name); }); } } diff --git a/bot/src/main/java/de/janno/discord/bot/command/FetchCommand.java b/bot/src/main/java/de/janno/discord/bot/command/FetchCommand.java index f2405f6b..efa8275a 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/FetchCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/FetchCommand.java @@ -1,5 +1,6 @@ package de.janno.discord.bot.command; +import de.janno.discord.bot.BaseCommandUtils; import de.janno.discord.bot.BotMetrics; import de.janno.discord.bot.I18n; import de.janno.discord.bot.command.customDice.CustomDiceCommand; @@ -80,7 +81,7 @@ private Mono moveButtonMessage(C config, AbstractCo List> actions = List.of( Mono.defer(() -> event.reply(I18n.getMessage("fetch.reply", event.getRequester().getUserLocal()), true)), Mono.defer(() -> event.sendMessage(buttonMessage) - .doOnNext(messageId -> command.createEmptyMessageData(configUUID, event.getGuildId(), event.getChannelId(), messageId))) + .doOnNext(messageId -> BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, event.getGuildId(), event.getChannelId(), messageId, getCommandId(), persistenceManager))) .flatMap(newMessageId -> MessageDeletionHelper.deleteOldMessageAndData(persistenceManager, newMessageId, null, configUUID, event.getChannelId(), event)) .then()); return Flux.merge(1, actions.toArray(new Mono[0])) diff --git a/bot/src/main/java/de/janno/discord/bot/command/SlashCommandImpl.java b/bot/src/main/java/de/janno/discord/bot/command/SlashCommandImpl.java index 8f9839f5..076767a0 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/SlashCommandImpl.java +++ b/bot/src/main/java/de/janno/discord/bot/command/SlashCommandImpl.java @@ -1,5 +1,6 @@ package de.janno.discord.bot.command; +import com.google.common.base.Stopwatch; import com.google.common.base.Strings; import com.google.common.collect.ImmutableList; import de.janno.discord.bot.BaseCommandUtils; @@ -21,7 +22,9 @@ import reactor.core.publisher.Mono; import javax.annotation.Nullable; +import java.time.Duration; import java.util.*; +import java.util.concurrent.TimeUnit; import java.util.function.Supplier; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -116,19 +119,9 @@ protected Collection additionalCommandOptions() { return BaseCommandOptions.autoCompleteColorOption(autoCompleteRequest, userLocale); } - /** - * On the creation of a message an empty state need to be saved so we know the message exists and we can remove it later, even on concurrent actions - */ - protected @NonNull MessageDataDTO createEmptyMessageData(@NonNull UUID configUUID, - @Nullable Long guildId, - long channelId, - long messageId) { - return BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, guildId, channelId, messageId, getCommandId(), persistenceManager); - } - - @Override public final @NonNull Mono handleSlashCommandEvent(@NonNull SlashEventAdaptor event, @NonNull Supplier uuidSupplier, @NonNull Locale userLocale) { + Stopwatch stopwatch = Stopwatch.createStarted(); Optional checkPermissions = event.checkPermissions(userLocale); if (checkPermissions.isPresent()) { return event.reply(checkPermissions.get(), false); @@ -168,22 +161,25 @@ protected Collection additionalCommandOptions() { if (guildId == null) { BotMetrics.outsideGuildCounter("slash"); } - log.info("{}: '{}'", - event.getRequester().toLogString(), - commandString.replace("`", "").replace("\n", " ")); + String replayMessage = Stream.of(commandString, getConfigWarnMessage(config, userLocale).orElse(null)) .filter(s -> !Strings.isNullOrEmpty(s)) .collect(Collectors.joining("\n")); - + Duration untilAck = stopwatch.elapsed(); return event.reply(replayMessage, false) .then(Mono.defer(() -> { final Optional newMessageConfig = createMessageConfig(configUUID, guildId, channelId, event.getUserId(), config); newMessageConfig.ifPresent(persistenceManager::saveMessageConfig); return event.sendMessage(createSlashResponseMessage(configUUID, config, channelId)) - .doOnNext(messageId -> createEmptyMessageData(configUUID, guildId, channelId, messageId)) + .doOnNext(messageId -> BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, guildId, channelId, messageId, getCommandId(), persistenceManager)) .then(); - })); - + })) + .doAfterTerminate(() -> log.info("{}: {} in start={}ms reply={}ms", + event.getRequester().toLogString(), + commandString.replace("`", "").replace("\n", " "), + untilAck.toMillis(), + stopwatch.elapsed(TimeUnit.MILLISECONDS) + )); } else if (event.getOption(HELP_OPTION_NAME).isPresent()) { BotMetrics.incrementSlashHelpMetricCounter(getCommandId()); return event.replyWithEmbedOrMessageDefinition(getHelpMessage(event.getRequester().getUserLocal()), true); diff --git a/bot/src/main/java/de/janno/discord/bot/command/customParameter/CustomParameterCommand.java b/bot/src/main/java/de/janno/discord/bot/command/customParameter/CustomParameterCommand.java index 4843bae7..6bab3b34 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/customParameter/CustomParameterCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/customParameter/CustomParameterCommand.java @@ -230,7 +230,7 @@ static List createParameterListFromBaseExpression(String expression) .filter(s -> !Strings.isNullOrEmpty(s)) .map(s -> { //if a label exists - if (s.contains(DiceEvaluatorAdapter.LABEL_DELIMITER)) { + if (s.contains(DiceEvaluatorAdapter.LABEL_DELIMITER) && s.split(DiceEvaluatorAdapter.LABEL_DELIMITER).length == 2) { String[] split = s.split(DiceEvaluatorAdapter.LABEL_DELIMITER); final String parameterOptionExpressionWithPath = split[0]; final String nextPathId = getPathId(parameterOptionExpressionWithPath); @@ -245,7 +245,7 @@ static List createParameterListFromBaseExpression(String expression) cleanLable = label; directRoll = false; } - if (split.length == 2 && !Strings.isNullOrEmpty(parameterOptionExpression) && !Strings.isNullOrEmpty(split[1])) { + if (!Strings.isNullOrEmpty(parameterOptionExpression) && !Strings.isNullOrEmpty(split[1])) { return new Parameter.ParameterOption(parameterOptionExpression, cleanLable, createParameterOptionIdFromIndex(counter.getAndIncrement()), directRoll, nextPathId); } } diff --git a/bot/src/main/java/de/janno/discord/bot/command/help/QuickstartCommand.java b/bot/src/main/java/de/janno/discord/bot/command/help/QuickstartCommand.java index ee96c28e..aaed9dd0 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/help/QuickstartCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/help/QuickstartCommand.java @@ -2,6 +2,7 @@ import com.google.common.base.Stopwatch; import com.google.common.base.Strings; +import de.janno.discord.bot.BaseCommandUtils; import de.janno.discord.bot.BotMetrics; import de.janno.discord.bot.I18n; import de.janno.discord.bot.command.Config; @@ -58,7 +59,7 @@ public class QuickstartCommand implements SlashCommand { return List.of(); } - final List savedNamedAnswers = persistenceManager.getNamedCommandsForChannel(userId, guildId).stream() + final List savedNamedAnswers = persistenceManager.getLastUsedNamedCommandsOfUserAndGuild(userId, guildId).stream() .filter(nc -> Strings.isNullOrEmpty(autoCompleteRequest.getFocusedOptionValue()) || nc.name().toLowerCase().contains(autoCompleteRequest.getFocusedOptionValue().toLowerCase())) .filter(nc -> SUPPORTED_COMMANDS.contains(nc.commandId())) .map(n -> new AutoCompleteAnswer(n.name(), n.name())) @@ -172,6 +173,7 @@ private Optional getMessage(Config genericConfig, UUID } if (commandAndMessageDefinition.isPresent()) { return Mono.defer(() -> event.sendMessage(commandAndMessageDefinition.get())) + .doOnNext(messageId -> BaseCommandUtils.createCleanupAndSaveEmptyMessageData(newConfigUUID, guildId, channelId, messageId, getCommandId(), persistenceManager)) .doOnSuccess(v -> BotMetrics.timerNewButtonMessageMetricCounter(getCommandId(), stopwatch.elapsed())) .then(event.reply(commandString, false)) .doOnSuccess(v -> diff --git a/bot/src/main/java/de/janno/discord/bot/command/help/RpgSystemCommandPreset.java b/bot/src/main/java/de/janno/discord/bot/command/help/RpgSystemCommandPreset.java index 0b32c380..b79860ad 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/help/RpgSystemCommandPreset.java +++ b/bot/src/main/java/de/janno/discord/bot/command/help/RpgSystemCommandPreset.java @@ -81,7 +81,7 @@ public static Config createConfig(PresetId presetId, Locale userLocale) { case BLADES_IN_THE_DARK -> new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, DiceImageStyle.none.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK.name", userLocale)); case BLADES_IN_THE_DARK_IMAGE -> - new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_RdD, DiceImageStyle.polyhedral_RdD.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK.name", userLocale)); + new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_RdD, DiceImageStyle.polyhedral_RdD.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK_IMAGE.name", userLocale)); case BLADES_IN_THE_DARK_DETAIL -> new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK_DETAIL.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_RdD, DiceImageStyle.polyhedral_RdD.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK_DETAIL.name", userLocale)); //7th Edition Call of Cthulhu: custom_dice start buttons: 1d100; 2d100L1@1d100 Advantage; 2d100K1@1d100 Penalty; 1d3; 1d4; 1d6; 1d8; 1d10; 1d12; 1d20; 3d6 @@ -92,10 +92,10 @@ public static Config createConfig(PresetId presetId, Locale userLocale) { new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.EXALTED_3ED.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_3d, DiceImageStyle.polyhedral_3d.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.EXALTED_3ED.name", userLocale)); //Vampire 5ed /custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression case VAMPIRE_5ED -> - new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.VAMPIRE_5ED.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_knots, DiceImageStyle.polyhedral_knots.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.VAMPIRE_5ED.name", userLocale)); + new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.VAMPIRE_5ED.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.reroll, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_knots, DiceImageStyle.polyhedral_knots.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.VAMPIRE_5ED.name", userLocale)); //Hunter 5ed /custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression dice_image_style: polyhedral_knots case HUNTER_5ED -> - new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.HUNTER_5ED.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_knots, DiceImageStyle.polyhedral_knots.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.HUNTER_5ED.name", userLocale)); + new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.HUNTER_5ED.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.reroll, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_knots, DiceImageStyle.polyhedral_knots.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.HUNTER_5ED.name", userLocale)); //One-Roll Engine /custom_parameter start expression: groupc({Number of Dice:1<=>10}d10+({Number of Extra Die:0@0/10@1/2r10@2/3r10@3/4r10@4})>={Difficulty:1<=>10}) case ONE_ROLL_ENGINE -> new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.ONE_ROLL_ENGINE.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_3d, DiceImageStyle.polyhedral_3d.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.ONE_ROLL_ENGINE.name", userLocale)); @@ -222,7 +222,16 @@ public static Config createConfig(PresetId presetId, Locale userLocale) { new AliasConfig(ChannelConfigCommand.parseStringToMultiAliasList(I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK_ALIAS.expression", userLocale)), I18n.getMessage("rpg.system.command.preset.BLADES_IN_THE_DARK_ALIAS.name", userLocale)); case CYBERPUNK_RED_ALIAS -> new AliasConfig(ChannelConfigCommand.parseStringToMultiAliasList(I18n.getMessage("rpg.system.command.preset.CYBERPUNK_RED_ALIAS.expression", userLocale)), I18n.getMessage("rpg.system.command.preset.CYBERPUNK_RED_ALIAS.name", userLocale)); - + // Warhammer Age of Sigmar: Soulbound /custom_parameter start expression: val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) dice_image_style: polyhedral_alies_v2 dice_image_color: blue_and_gold answer_interaction: reroll + case WARHAMMER_AOS -> + new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.WARHAMMER_AOS.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.reroll, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_alies_v2, "blue_and_gold"), userLocale, null, I18n.getMessage("rpg.system.command.preset.WARHAMMER_AOS.name", userLocale)); + // Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular /custom_parameter start expression: val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') + case GHOSTBUSTERS -> + new CustomParameterConfig(null, I18n.getMessage("rpg.system.command.preset.GHOSTBUSTERS.expression", userLocale), AnswerFormatType.without_expression, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_RdD, DiceImageStyle.polyhedral_RdD.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.GHOSTBUSTERS.name", userLocale)); + // Shadowdark /sum_custom_set start buttons: d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@!Stats;,@Split always_sum_result: true hide_expression_in_answer: false answer_format: full dice_image_style: polyhedral_3d dice_image_color: red_and_white answer_interaction: none + case SHADOWDARK -> new SumCustomSetConfig(null, + ButtonHelper.parseString(I18n.getMessage("rpg.system.command.preset.SHADOWDARK.expression", userLocale)), + true, false, false, null, null, AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.polyhedral_3d, DiceImageStyle.polyhedral_3d.getDefaultColor()), userLocale, null, I18n.getMessage("rpg.system.command.preset.SHADOWDARK.name", userLocale)); }; } @@ -339,7 +348,10 @@ public enum PresetId { SALVAGE_UNION(CustomDiceCommand.COMMAND_NAME, CustomDiceCommand.CONFIG_TYPE_ID), FALLOUT(CustomDiceCommand.COMMAND_NAME, CustomDiceCommand.CONFIG_TYPE_ID), FORBIDDEN_LANDS(CustomParameterCommand.COMMAND_NAME, CustomParameterCommand.CONFIG_TYPE_ID), - CYBERPUNK_RED_ALIAS(ChannelConfigCommand.COMMAND_NAME, AliasHelper.CHANNEL_ALIAS_CONFIG_TYPE_ID); + CYBERPUNK_RED_ALIAS(ChannelConfigCommand.COMMAND_NAME, AliasHelper.CHANNEL_ALIAS_CONFIG_TYPE_ID), + WARHAMMER_AOS(CustomParameterCommand.COMMAND_NAME, CustomParameterCommand.CONFIG_TYPE_ID), + SHADOWDARK(SumCustomSetCommand.COMMAND_NAME, SumCustomSetCommand.CONFIG_TYPE_ID), + GHOSTBUSTERS(CustomParameterCommand.COMMAND_NAME, CustomParameterCommand.CONFIG_TYPE_ID); private final String commandId; private final String configClassType; diff --git a/bot/src/main/java/de/janno/discord/bot/command/namedCommand/NamedCommandHelper.java b/bot/src/main/java/de/janno/discord/bot/command/namedCommand/NamedCommandHelper.java index cf59ead3..b9e46d4c 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/namedCommand/NamedCommandHelper.java +++ b/bot/src/main/java/de/janno/discord/bot/command/namedCommand/NamedCommandHelper.java @@ -21,7 +21,7 @@ public final class NamedCommandHelper { public static Optional getConfigForName(PersistenceManager persistenceManager, String name, Locale locale, @Nullable Long guildId, long userId) { - Optional savedNamedCommandConfig = persistenceManager.getNamedCommandsForChannel(userId, guildId).stream() + Optional savedNamedCommandConfig = persistenceManager.getLastUsedNamedCommandsOfUserAndGuild(userId, guildId).stream() .filter(nc -> Objects.equals(nc.name(), name)) .flatMap(nc -> getConfigForNamedCommand(persistenceManager, nc.id()).map(snc -> new NamedConfig(snc.namedConfig().name(), snc.namedConfig().commandId(), snc.namedConfig().configClassId(), snc.namedConfig().config())).stream()) .findFirst(); diff --git a/bot/src/main/java/de/janno/discord/bot/command/reroll/RerollAnswerHandler.java b/bot/src/main/java/de/janno/discord/bot/command/reroll/RerollAnswerHandler.java index 25ca2c1e..fe532aac 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/reroll/RerollAnswerHandler.java +++ b/bot/src/main/java/de/janno/discord/bot/command/reroll/RerollAnswerHandler.java @@ -211,7 +211,7 @@ protected void updateCurrentMessageStateData(UUID configUUID, @Nullable Long gui } public Mono deleteMessageConfigWithDelay(UUID configUUID) { - final Duration delay = Duration.ofMillis(io.avaje.config.Config.getLong("command.delayMessageDataDeletionMs", 10000)); + final Duration delay = Duration.ofMillis(io.avaje.config.Config.getLong("db.delayMessageDataDeletionMs", 10000)); return Mono.defer(() -> Mono.just(configUUID) .delayElement(delay) .doOnNext(persistenceManager::deleteMessageConfig).ofType(Void.class)); diff --git a/bot/src/main/java/de/janno/discord/bot/command/starter/StarterCommand.java b/bot/src/main/java/de/janno/discord/bot/command/starter/StarterCommand.java index 94c01167..a1be19ec 100644 --- a/bot/src/main/java/de/janno/discord/bot/command/starter/StarterCommand.java +++ b/bot/src/main/java/de/janno/discord/bot/command/starter/StarterCommand.java @@ -3,6 +3,7 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Strings; import com.google.common.collect.ImmutableSet; +import de.janno.discord.bot.BaseCommandUtils; import de.janno.discord.bot.BotEmojiUtil; import de.janno.discord.bot.BotMetrics; import de.janno.discord.bot.I18n; @@ -21,7 +22,6 @@ import de.janno.discord.bot.dice.DiceEvaluatorAdapter; import de.janno.discord.bot.persistance.Mapper; import de.janno.discord.bot.persistance.MessageConfigDTO; -import de.janno.discord.bot.persistance.MessageDataDTO; import de.janno.discord.bot.persistance.PersistenceManager; import de.janno.discord.connector.api.*; import de.janno.discord.connector.api.message.EmbedOrMessageDefinition; @@ -325,7 +325,7 @@ private SavedNamedConfig saveConfigToStart(Config genericConfig, UUID starterCon } private void createEmptyMessageData(@NonNull UUID configUUID, @Nullable Long guildId, long channelId, long messageId) { - persistenceManager.saveMessageData(new MessageDataDTO(configUUID, guildId, channelId, messageId, getCommandId(), Mapper.NO_PERSISTED_STATE, null)); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, guildId, channelId, messageId, getCommandId(), persistenceManager); } public WelcomeMessageCreator getWelcomeMessage() { @@ -423,7 +423,7 @@ private StarterConfig createStartConfigFromCreateOption(CommandInteractionOption .filter(n -> !Strings.isNullOrEmpty(n)) .collect(Collectors.toSet()); - final List savedNamedAnswers = persistenceManager.getNamedCommandsForChannel(userId, guildId).stream() + final List savedNamedAnswers = persistenceManager.getLastUsedNamedCommandsOfUserAndGuild(userId, guildId).stream() .filter(nc -> Strings.isNullOrEmpty(autoCompleteRequest.getFocusedOptionValue()) || nc.name().toLowerCase().contains(autoCompleteRequest.getFocusedOptionValue().toLowerCase())) .filter(nc -> SUPPORTED_COMMANDS.contains(nc.commandId())) .map(n -> new AutoCompleteAnswer(n.name(), n.name())) diff --git a/bot/src/main/java/de/janno/discord/bot/persistance/DatabaseInitiator.java b/bot/src/main/java/de/janno/discord/bot/persistance/DatabaseInitiator.java index e9d9f233..1bc9fa91 100644 --- a/bot/src/main/java/de/janno/discord/bot/persistance/DatabaseInitiator.java +++ b/bot/src/main/java/de/janno/discord/bot/persistance/DatabaseInitiator.java @@ -1,6 +1,7 @@ package de.janno.discord.bot.persistance; import com.google.common.base.Preconditions; +import com.google.common.base.Stopwatch; import com.google.common.collect.ImmutableList; import com.google.common.io.Resources; import io.micrometer.core.instrument.util.IOUtils; @@ -19,6 +20,7 @@ import java.util.Comparator; import java.util.Enumeration; import java.util.List; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; @@ -101,6 +103,7 @@ private static void applyMissingMigrations(List allMigrations, .filter(m -> !alreadyAppliedMigrations.contains(m.getName())) .sorted(Comparator.comparing(Migration::getOrder)) .forEach(m -> { + Stopwatch stopwatch = Stopwatch.createStarted(); log.info("Start executing {}", m.getName()); try (Connection connection = databaseConnector.getConnection()) { Statement statement = connection.createStatement(); @@ -115,7 +118,7 @@ private static void applyMissingMigrations(List allMigrations, log.error("Error in {}", m.getName()); throw new RuntimeException(e); } - log.info("Finish executing {}", m.getName()); + log.info("Finish executing {} in {}ms", m.getName(), stopwatch.elapsed(TimeUnit.MILLISECONDS)); }); } diff --git a/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManager.java b/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManager.java index d7dcf3cc..c36e7cdb 100644 --- a/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManager.java +++ b/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManager.java @@ -2,6 +2,7 @@ import lombok.NonNull; +import javax.annotation.Nullable; import java.time.LocalDateTime; import java.util.List; import java.util.Optional; @@ -13,7 +14,7 @@ public interface PersistenceManager { @NonNull Optional getMessageConfig(@NonNull UUID configUUID); - void deleteAllMessageConfigForChannel(long channelId); + void deleteAllMessageConfigForChannel(long channelId, @Nullable String name); void saveMessageConfig(@NonNull MessageConfigDTO messageConfigDTO); @@ -28,7 +29,7 @@ public interface PersistenceManager { void deleteStateForMessage(long channelId, long messageId); @NonNull - Set deleteMessageDataForChannel(long channelId); + Set deleteMessageDataForChannel(long channelId, @Nullable String name); void saveMessageData(@NonNull MessageDataDTO messageState); @@ -52,5 +53,10 @@ public interface PersistenceManager { void deleteMessageConfig(UUID configUUID); - List getNamedCommandsForChannel(long userId, Long guildId); + /** + * If there are commands with the same name, the last used one will be returned + */ + List getLastUsedNamedCommandsOfUserAndGuild(long userId, Long guildId); + + List getNamedCommandsChannel(long channelId); } diff --git a/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManagerImpl.java b/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManagerImpl.java index 2a860b56..8ea89041 100644 --- a/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManagerImpl.java +++ b/bot/src/main/java/de/janno/discord/bot/persistance/PersistenceManagerImpl.java @@ -1,7 +1,9 @@ package de.janno.discord.bot.persistance; +import com.google.common.annotations.VisibleForTesting; import com.google.common.base.Preconditions; import com.google.common.base.Stopwatch; +import com.google.common.base.Strings; import com.google.common.collect.ImmutableSet; import de.janno.discord.bot.BotMetrics; import io.micrometer.core.instrument.Gauge; @@ -45,6 +47,15 @@ public PersistenceManagerImpl(@NonNull String url, @Nullable String user, @Nulla queryGauge("db.messageData-7d.active", "select count (MESSAGE_ID) from MESSAGE_DATA where (CURRENT_TIMESTAMP - CREATION_DATE) <= interval '10080' MINUTE;", databaseConnector.getDataSource(), Set.of()); queryGauge("db.messageData-1d.active", "select count (MESSAGE_ID) from MESSAGE_DATA where (CURRENT_TIMESTAMP - CREATION_DATE) <= interval '1440' MINUTE;", databaseConnector.getDataSource(), Set.of()); + long interval = io.avaje.config.Config.getLong("db.deleteMarkMessageDataIntervalInMilliSec", 10_000); + if (interval > 0) { + ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor(); + executorService.scheduleAtFixedRate(this::deleteOldMessageDataThatAreMarked, + io.avaje.config.Config.getLong("db.deleteMarkMessageDataStartDelayMilliSec", 0), + interval, + TimeUnit.MILLISECONDS); + Runtime.getRuntime().addShutdownHook(new Thread(executorService::shutdownNow)); + } Runtime.getRuntime().addShutdownHook(new Thread(() -> { log.info("start db shutdown"); databaseConnector.dispose(); @@ -56,13 +67,13 @@ public PersistenceManagerImpl(@NonNull String url, @Nullable String user, @Nulla } })); - ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor(); - executorService.scheduleAtFixedRate(this::deleteOldMessageDataThatAreMarked, 0, io.avaje.config.Config.getLong("db.deleteMarkMessageDataIntervalInMilliSec", 10_000), TimeUnit.MILLISECONDS); + } - private void deleteOldMessageDataThatAreMarked() { + @VisibleForTesting + void deleteOldMessageDataThatAreMarked() { Stopwatch stopwatch = Stopwatch.createStarted(); - final Duration delay = Duration.ofMillis(io.avaje.config.Config.getLong("command.delayMessageDataDeletionMs", 10_000)); + final Duration delay = Duration.ofMillis(io.avaje.config.Config.getLong("db.delayMessageDataDeletionMs", 10_000)); LocalDateTime deleteAllBefore = LocalDateTime.now().minus(delay); try (Connection con = databaseConnector.getConnection()) { @@ -70,7 +81,7 @@ private void deleteOldMessageDataThatAreMarked() { preparedStatement.setObject(1, deleteAllBefore); long deleted = preparedStatement.executeUpdate(); if (deleted > 0) { - log.trace("deleted message_data: " + deleted); + log.trace("deleted message_data: {}", deleted); } } } catch (SQLException e) { @@ -118,13 +129,23 @@ private MessageDataDTO transformResultSet2MessageDataDTO(ResultSet resultSet) th } @Override - public void deleteAllMessageConfigForChannel(long channelId) { + public void deleteAllMessageConfigForChannel(long channelId, @Nullable String name) { Stopwatch stopwatch = Stopwatch.createStarted(); try (Connection con = databaseConnector.getConnection()) { - try (PreparedStatement preparedStatement = con.prepareStatement("DELETE FROM MESSAGE_CONFIG WHERE CHANNEL_ID = ?")) { + final String deleteConfig; + if (Strings.isNullOrEmpty(name)) { + deleteConfig = "DELETE FROM MESSAGE_CONFIG WHERE CHANNEL_ID = ?"; + } else { + deleteConfig = "DELETE FROM MESSAGE_CONFIG WHERE CHANNEL_ID = ? and CONFIG_NAME = ?"; + } + try (PreparedStatement preparedStatement = con.prepareStatement(deleteConfig)) { preparedStatement.setLong(1, channelId); + if (!Strings.isNullOrEmpty(name)) { + preparedStatement.setString(2, name); + } preparedStatement.execute(); } + } catch (SQLException e) { throw new RuntimeException(e); } @@ -261,23 +282,43 @@ public void deleteStateForMessage(long channelId, long messageId) { } @Override - public @NonNull Set deleteMessageDataForChannel(long channelId) { + public @NonNull Set deleteMessageDataForChannel(long channelId, String name) { Stopwatch stopwatch = Stopwatch.createStarted(); - final ImmutableSet ids; + final ImmutableSet messageIds; try (Connection con = databaseConnector.getConnection()) { con.setAutoCommit(false); - try (PreparedStatement preparedStatement = con.prepareStatement("SELECT DISTINCT MC.MESSAGE_ID FROM MESSAGE_DATA MC WHERE MC.CHANNEL_ID = ?")) { + final String messageIdSql; + if (Strings.isNullOrEmpty(name)) { + messageIdSql = "SELECT DISTINCT MD.MESSAGE_ID FROM MESSAGE_DATA MD WHERE MD.CHANNEL_ID = ?"; + } else { + messageIdSql = "SELECT DISTINCT MD.MESSAGE_ID FROM MESSAGE_DATA MD JOIN MESSAGE_CONFIG MC ON MC.CONFIG_ID = MD.CONFIG_ID WHERE MD.CHANNEL_ID = ? and MC.CONFIG_NAME = ?"; + } + try (PreparedStatement preparedStatement = con.prepareStatement(messageIdSql)) { preparedStatement.setObject(1, channelId); + if (!Strings.isNullOrEmpty(name)) { + preparedStatement.setString(2, name); + } ResultSet resultSet = preparedStatement.executeQuery(); - final ImmutableSet.Builder resultBuilder = ImmutableSet.builder(); + final ImmutableSet.Builder messageIdBuilder = ImmutableSet.builder(); while (resultSet.next()) { - resultBuilder.add(resultSet.getLong("MESSAGE_ID")); + messageIdBuilder.add(resultSet.getLong("MESSAGE_ID")); } - ids = resultBuilder.build(); + messageIds = messageIdBuilder.build(); } + final String markDeletedSql; - try (PreparedStatement preparedStatement = con.prepareStatement("DELETE FROM MESSAGE_DATA WHERE CHANNEL_ID = ?")) { - preparedStatement.setLong(1, channelId); + if (Strings.isNullOrEmpty(name)) { + markDeletedSql = "UPDATE MESSAGE_DATA SET MARKED_DELETED = ? WHERE CHANNEL_ID = ?"; + } else { + markDeletedSql = "UPDATE MESSAGE_DATA SET MARKED_DELETED = ? where message_id in (SELECT DISTINCT MD.MESSAGE_ID FROM MESSAGE_DATA MD JOIN MESSAGE_CONFIG MC ON MC.CONFIG_ID = MD.CONFIG_ID WHERE MD.CHANNEL_ID = ? and MC.CONFIG_NAME = ?)"; + } + + try (PreparedStatement preparedStatement = con.prepareStatement(markDeletedSql)) { + preparedStatement.setObject(1, LocalDateTime.now()); + preparedStatement.setLong(2, channelId); + if (!Strings.isNullOrEmpty(name)) { + preparedStatement.setString(3, name); + } preparedStatement.execute(); } con.commit(); @@ -285,7 +326,7 @@ public void deleteStateForMessage(long channelId, long messageId) { throw new RuntimeException(e); } BotMetrics.databaseTimer("deleteDataForChannel", stopwatch.elapsed()); - return ids; + return messageIds; } @Override @@ -517,7 +558,7 @@ AND MD.COMMAND_ID in (""" } @Override - public List getNamedCommandsForChannel(long userId, Long guildId) { + public List getLastUsedNamedCommandsOfUserAndGuild(long userId, Long guildId) { Stopwatch stopwatch = Stopwatch.createStarted(); try (Connection con = databaseConnector.getConnection()) { final String sql; @@ -536,7 +577,8 @@ public List getNamedCommandsForChannel(long userId, Long gui AND MC.CREATION_DATE = Latest.LatestDate where (MC.CREATION_USER_ID = ? OR MC.GUILD_ID = ?) - and MC.CONFIG_NAME is not null; + and MC.CONFIG_NAME is not null + order by MC.CONFIG_NAME; """; } else { sql = """ @@ -551,7 +593,8 @@ public List getNamedCommandsForChannel(long userId, Long gui and mc.CONFIG_NAME = Latest.CONFIG_NAME AND MC.CREATION_DATE = Latest.LatestDate where MC.CREATION_USER_ID = ? - and MC.CONFIG_NAME is not null; + and MC.CONFIG_NAME is not null + order by MC.CONFIG_NAME; """; } try (PreparedStatement preparedStatement = con.prepareStatement(sql)) { @@ -574,7 +617,35 @@ public List getNamedCommandsForChannel(long userId, Long gui resultSet.getString("CONFIG_NAME") )); } - BotMetrics.databaseTimer("getNamedCommandsForChannel", stopwatch.elapsed()); + BotMetrics.databaseTimer("getNamedCommandsOfUserAndGuild", stopwatch.elapsed()); + return result; + + } + } catch (Exception e) { + throw new IllegalStateException(e); + } + } + + @Override + public List getNamedCommandsChannel(long channelId) { + Stopwatch stopwatch = Stopwatch.createStarted(); + try (Connection con = databaseConnector.getConnection()) { + try (PreparedStatement preparedStatement = con.prepareStatement(""" + SELECT DISTINCT MC.CONFIG_NAME + FROM MESSAGE_CONFIG MC + where MC.CHANNEL_ID = ? + and MC.CONFIG_NAME is not null + order by MC.CONFIG_NAME; + """)) { + + preparedStatement.setLong(1, channelId); + + ResultSet resultSet = preparedStatement.executeQuery(); + List result = new ArrayList<>(); + while (resultSet.next()) { + result.add(resultSet.getString("CONFIG_NAME")); + } + BotMetrics.databaseTimer("getNamedCommandsChannel", stopwatch.elapsed()); return result; } diff --git a/bot/src/main/resources/botMessages.properties b/bot/src/main/resources/botMessages.properties index 2e256235..9dd8cddc 100644 --- a/bot/src/main/resources/botMessages.properties +++ b/bot/src/main/resources/botMessages.properties @@ -140,6 +140,7 @@ starter.option.create.name=create starter.option.message.name=message starter.option.new.message.name=open_in_new_message starter.option.welcome.name=welcome +clear.option.name.name=name base.option.answer_format.full.name=full base.option.answer_format.without_expression.name=without_expression base.option.answer_format.only_result.name=only_result @@ -224,6 +225,7 @@ starter.option.new.message.description=Set true to create new button messages ot starter.option.welcome.description=Creates the default welcome message in this channel starter.option.command.name.description=A named command that should be added to the starter. Start typing to filter. quickstart.option.description=Start typing to filter and see more options +clear.option.name.description=Limits clear to commands with the selected name #autocomplete net.dv8tion.jda.api.interactions.commands.Command.Choice.MAX_NAME_LENGTH #max 100 characters base.option.dice_image_style.autoComplete.missingStyle.name=Select the dice image style first @@ -314,13 +316,13 @@ rpg.system.command.preset.SAVAGE_WORLDS.expression=(d!!{Dice:4@D4/6@D6/8@D8/12@D rpg.system.command.preset.BLADES_IN_THE_DARK.expression=val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Die/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) if('$sixes'>?1,'Critical Success - You do it with increased effect.', '$sixes'=?1,'Success - You do it.','$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.') rpg.system.command.preset.BLADES_IN_THE_DARK_DETAIL.expression=val('$rollType',{Roll Type:1@Generic/2@Controlled Action/3@Risky Action/4@Desperate Action/5@Engagement/6@Resistance/7@Asset Quality/8@Progress Clock/9@Heat Reduction/10@Incarceration}) val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Dice/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) val('$stressbase',6) if('$rollType' =?1 && '$sixes'>?1,'Critical Success', '$rollType' =?1 && '$sixes'=?1, 'Success' , '$rollType' =?1 && '$partials' >? 0,'Partial Success', '$rollType' =?1 && '$partials' =?0, 'Failure', '$rollType' =?2 && '$sixes'>?1,'Critical Success - You do it with increased effect.', '$rollType' =?2 && '$sixes'=?1, 'Success - You do it.' , '$rollType' =?2 && '$partials' >? 0,'Partial Success - You hesitate. Do it with a minor consequence (lesser harm, minor complication, reduced effect or end up in a risky position) OR try another approach.', '$rollType' =?2 && '$partials' =?0, 'Failure - You falter. Press on with a risky opportunity OR withdraw and try another approach.', '$rollType' =?3 && '$sixes'>?1,'Critical Success - You do it with increased effect.', '$rollType' =?3 && '$sixes'=?1, 'Success - You do it.' , '$rollType' =?3 && '$partials' >? 0,'Partial Success - You do it but suffer harm, a complication, reduced effect or end up in a desperate position.', '$rollType' =?3 && '$partials' =?0, 'Failure - Things go badly. You suffer harm, a complication, end up in a desperate position or lose this opportunity for action.', '$rollType' =?4 && '$sixes'>?1,'Critical Success - You do it with increased effect.', '$rollType' =?4 && '$sixes'=?1, 'Success - You do it.' , '$rollType' =?4 && '$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or reduced effect.', '$rollType' =?4 && '$partials' =?0, 'Failure - Things could not go worse. You suffer severe harm, a serious complication, or lose this opportunity for action.', '$rollType' =?5 && '$sixes'>?1,'Critical Success - This first obstacle is overcome and you move to a controlled position for the next.', '$rollType' =?5 && '$sixes'=?1, 'Controlled - You are in a controlled position to act.' , '$rollType' =?5 && '$partials' >? 0,'Risky - You are in a risky position to act.', '$rollType' =?5 && '$partials' =?0, 'Desperate - You are in a desperate position to act.', '$rollType' =?6 && '$sixes'>?1,'Spectacular success - recover 1 stress.', '$rollType' =?6 && '$sixes'=?1, 'Well within your ability - no stress.' , '$rollType' =?6, concat ('You succeed with an effort - take ',('$stressbase' - ('$diceRoll'k1)=), ' stress.'), '$rollType' =?7 && '$sixes'>?1,'Exceptional Quality - Crew Tier +2', '$rollType' =?7 && '$sixes'=?1, 'Fine Quality - Crew Tier +1' , '$rollType' =?7 && '$partials' >? 0,'Standard Quality - Equal to Crew Tier', '$rollType' =?7 && '$partials' =?0, 'Inferior Quality - Crew Tier -1', '$rollType' =?8 && '$sixes'>?1,'Mark off 5 progress segments.', '$rollType' =?8 && '$sixes'=?1, 'Mark off 3 progress segments.' , '$rollType' =?8 && '$partials' >? 0,'Mark off two progress segments.', '$rollType' =?8 && '$partials' =?0, 'Mark off 1 progress segment.', '$rollType' =?9 && '$sixes'>?1,'Reduce 5 Heat.', '$rollType' =?9 && '$sixes'=?1, 'Reduce 3 Heat.' , '$rollType' =?9 && '$partials' >? 0,'Reduce 2 Heat.', '$rollType' =?9 && '$partials' =?0, 'Reduce 1 Heat.', '$rollType' =?10 && '$sixes'>?1,'You make a name for yourself (+3 rep, +1 prison claim, +1 faction).', '$rollType' =?10 && '$sixes'=?1, 'You do your time well (+1 prison claim, +1 faction).' , '$rollType' =?10 && '$partials' >? 0,'You keep your head down and do your time without incident.', '$rollType' =?10 && '$partials' =?0, 'A horrific experience - you suffer a level of Trauma.', '') rpg.system.command.preset.CALL_OF_CTHULHU_7ED.expression=1d100;2d100L1@1d100 Advantage; 2d100K1@1d100 Penalty; 1d3; 1d4; 1d6; 1d8; 1d10; 1d12; 1d20; 3d6 -rpg.system.command.preset.EXALTED_3ED.expression=val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) -rpg.system.command.preset.VAMPIRE_5ED.expression=val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) -rpg.system.command.preset.HUNTER_5ED.expression=val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) +rpg.system.command.preset.EXALTED_3ED.expression=val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) +rpg.system.command.preset.VAMPIRE_5ED.expression=val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) +rpg.system.command.preset.HUNTER_5ED.expression=val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) rpg.system.command.preset.ONE_ROLL_ENGINE.expression=groupc({Number of Dice:1<=>10}d10+({Number of Extra Die:0@0/10@1/2r10@2/3r10@3/4r10@4})>={Difficulty:1<=>10}) rpg.system.command.preset.DUNGEON_CRAWL_CLASSICS.expression=+1d4;+1d6;+1d7;+1d8;+1d10;+1d12;+1d14;+1d16;+1d20;+1d24;+1d16;+1d30;+1d100;+1;+2;+3;+4;-1;-2;-3;-4 -rpg.system.command.preset.TINY_D6.expression=ifG(1d6>=5c,0,'Success','Failure')@Disadvantage; ifG(2d6>=5c,0,'Success','Failure')@Test;ifG(3d6>=5c,0,'Success','Failure')@Advantage -rpg.system.command.preset.CYBERPUNK_RED.expression=val('$roll', 1d10) ifE('$roll', 1, '$roll'-1d10, 10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= +rpg.system.command.preset.TINY_D6.expression=if((1d6>=5c) >? 0,'Success','Failure')@Disadvantage; if((2d6>=5c) >? 0,'Success','Failure')@Test;if((3d6>=5c) >? 0,'Success','Failure')@Advantage +rpg.system.command.preset.CYBERPUNK_RED.expression=val('$roll', 1d10), if('$roll' =? 1, '$roll'-1d10, '$roll' =?10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= rpg.system.command.preset.ASOIAF.expression={numberOfDice:1<=>15}d6k{keep:1<=>10} rpg.system.command.preset.CITY_OF_MIST.expression=2d6+{modifier:-6<=>6} rpg.system.command.preset.RISUS.expression=val('$r',{numberOfDice:1<=>10}d!6) ('$r'==2c) + ('$r'==4c) + ('$r'==6c)= @@ -356,6 +358,9 @@ rpg.system.command.preset.SHADOWRUN_ALIAS.expression=(?\\\\d+)sr:: rpg.system.command.preset.SAVAGE_WORLDS_ALIAS.expression=r:d!!;sw(?\\\\d+)::1d!!${sides} + 1d!!6 k1@d${sides} Wildcard rpg.system.command.preset.BLADES_IN_THE_DARK_ALIAS.expression=(?\\\\d+)b::val('diceRoll', if(${numberOfDice}=?0,2d6L1, ${numberOfDice}d6)) val('sixes','diceRoll'==6c) val('partials','diceRoll'>3<6c) if('sixes'>?1,'Critical Success - You do it with increased effect.', 'sixes'=?1,'Success - You do it.','partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.')@${numberOfDice} Dice rpg.system.command.preset.CYBERPUNK_RED_ALIAS.expression=cp:val('$roll', 1d!10) if('$roll'=?1, '$roll'-1d!10, '$roll')@Roll +rpg.system.command.preset.WARHAMMER_AOS.expression=val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) +rpg.system.command.preset.SHADOWDARK.expression=d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@!Stats;,@Split +rpg.system.command.preset.GHOSTBUSTERS.expression=val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') #Rpg presets names rpg.system.command.preset.FATE.name=Fate without Dice Images rpg.system.command.preset.FATE_IMAGE.name=Fate @@ -416,6 +421,9 @@ rpg.system.command.preset.SHADOWRUN_ALIAS.name=Shadowrun - Alias rpg.system.command.preset.SAVAGE_WORLDS_ALIAS.name=Savage Worlds - Alias rpg.system.command.preset.BLADES_IN_THE_DARK_ALIAS.name=Blades in the Dark - Alias rpg.system.command.preset.CYBERPUNK_RED_ALIAS.name=Cyberpunk - Alias +rpg.system.command.preset.WARHAMMER_AOS.name=Warhammer Age of Sigmar: Soulbound +rpg.system.command.preset.GHOSTBUSTERS.name=Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular +rpg.system.command.preset.SHADOWDARK.name=Shadowdark ##Rpg presets aliases separated by ; rpg.system.command.preset.FATE.aliases=Fudge rpg.system.command.preset.FATE_IMAGE.aliases=Fudge @@ -476,3 +484,6 @@ rpg.system.command.preset.SHADOWRUN_ALIAS.aliases= rpg.system.command.preset.SAVAGE_WORLDS_ALIAS.aliases= rpg.system.command.preset.BLADES_IN_THE_DARK_ALIAS.aliases= rpg.system.command.preset.CYBERPUNK_RED_ALIAS.aliases= +rpg.system.command.preset.WARHAMMER_AOS.aliases= +rpg.system.command.preset.SHADOWDARK.aliases= +rpg.system.command.preset.GHOSTBUSTERS.aliases= diff --git a/bot/src/main/resources/botMessages_de.properties b/bot/src/main/resources/botMessages_de.properties index 4c4feb90..813dc227 100644 --- a/bot/src/main/resources/botMessages_de.properties +++ b/bot/src/main/resources/botMessages_de.properties @@ -150,6 +150,7 @@ starter.option.message.description=Einen eigenen Text für die Startmeldung fest starter.option.new.message.description=Setzen Sie true, um immer neue Button Message zu erstellen starter.option.welcome.description=Erstellt die Standardbegrüßungsnachricht in diesem Kanal starter.option.command.name.description=Ein benannter Befehl, der dem Starter hinzugefügt werden soll. Beginnen die Eingabe, um zu filtern +clear.option.name.description=Limitiert clear auf Befehle mit dem ausgewählten Namen #autocomplete net.dv8tion.jda.api.interactions.commands.Command.Choice.MAX_NAME_LENGTH #max 100 characters base.option.dice_image_style.autoComplete.missingStyle.name=Wähle zuerst einen Würfelbilderstil @@ -213,35 +214,21 @@ base.option.dice_color.d6_marvel.red=rot #Rpg presets expressions rpg.system.command.preset.FATE.expression=replace(4d[+,▢,−],'+',1,'▢',0,'−',-1)+{Modifikator:-4<=>10}= rpg.system.command.preset.FATE_IMAGE.expression=4d[-1,0,1]+{Modifikator:-4<=>10}= -rpg.system.command.preset.DND5.expression=D20;2d20k1@D20 Vorteil;2d20L1@D20 Nachteil;;1d4;1d6;1d8;1d10;1d12;1d100;2d4=@2d4;2d6=@2d6;2d8=@2d8;2d10=@2d10;2d12=@2d12;2d20=@2d20 -rpg.system.command.preset.DND5_IMAGE.expression=D20;2d20k1@D20 Vorteil;2d20L1@D20 Nachteil;;1d4;1d6;1d8;1d10;1d12;1d100;2d4=@2d4;2d6=@2d6;2d8=@2d8;2d10=@2d10;2d12=@2d12;2d20=@2d20 +rpg.system.command.preset.DND5.expression=D20@w20;2d20k1@w20 Vorteil;2d20L1@w20 Nachteil;;1d4;1d6@1w6;1d8@1w8;1d10@1w10;1d12@1w12;1d100@1w100;2d4=@2w4;2d6=@2w6;2d8=@2w8;2d10=@2w10;2d12=@2w12;2d20=@2w20 +rpg.system.command.preset.DND5_IMAGE.expression=D20@w20;2d20k1@w20 Vorteil;2d20L1@w20 Nachteil;;1d4;1d6@1w6;1d8@1w8;1d10@1w10;1d12@1w12;1d100@1w100;2d4=@2w4;2d6=@2w6;2d8=@2w8;2d10=@2w10;2d12=@2w12;2d20=@2w20 rpg.system.command.preset.NWOD.expression={Würfelanzahl}d!10>=8c rpg.system.command.preset.OWOD.expression=val('$diceNumber',{Würfelanzahl}) val('$target', {Mindestwurf:2<=>10}) val('$reroll', {Neu würfeln by 10:0@Nein/1@Ja}) val('$roll', if('$reroll'=?0, '$diceNumber'd10,'$diceNumber'd!10)) ('$roll'>='$target'c) - ('$roll'==1c)= rpg.system.command.preset.SHADOWRUN.expression=val('$roll',{Würfelanzahl:1<=>20}d6) concat('$roll'>4c, if('$roll'==1c >? '$roll'c/2,' - Glitch!')) rpg.system.command.preset.SHADOWRUN_IMAGE.expression=val('$roll',{Würfelanzahl:1<=>20}d6) concat('$roll'>4c, if('$roll'==1c >? '$roll'c/2,' - Glitch!')) rpg.system.command.preset.COIN.expression=1d[Kopf 😀/Zahl 🦅]@🪙Münzwurf -#rpg.system.command.preset.DICE_CALCULATOR.expression=7;8;9;+;-;4;5;6;d@w;k;1;2;3;0;l rpg.system.command.preset.OSR.expression=1d20@W20;1d6@W6;2d6@2W6;1d4@W4;1d8@W8;6x3d6=@Attribute;(3d6=)*10@Gold;1d100@W100;1d10@W10;1d12@W12 -rpg.system.command.preset.TRAVELLER.expression=+2d6;+(3d6k2)@Boon;+(3d6l2)@Bane;+1d6;+1;+2;+3;+4;-1;-2;-3;-4 rpg.system.command.preset.SAVAGE_WORLDS.expression=(d!!{Würfel:4@W4/6@W6/8@W8/12@W12/20@W20} + {Type: 0@Normal/1d!!6@Wildcard})k1 rpg.system.command.preset.CALL_OF_CTHULHU_7ED.expression=1d100@W100;2d100L1@W100 Vorteil; 2d100K1@W100 Nachteil;1d3@W3;1d4@W4;1d6@W6;1d8@W8;1d10@W10;1d12@W12;1d20@W20;3d6@3W6 -rpg.system.command.preset.EXALTED_3ED.expression=val('$1', cancel(double({Würfelanzahl}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) -rpg.system.command.preset.VAMPIRE_5ED.expression=val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) -rpg.system.command.preset.HUNTER_5ED.expression=val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) rpg.system.command.preset.ONE_ROLL_ENGINE.expression=groupc({Würfelanzahl:1<=>10}d10+({Anzahl der Extrawürfel:0@0/10@1/2r10@2/3r10@3/4r10@4})>={Difficulty:1<=>10}) -rpg.system.command.preset.TINY_D6.expression=ifG(1d6>=5c,0,'Success','Failure')@Disadvantage; ifG(2d6>=5c,0,'Success','Failure')@Test;ifG(3d6>=5c,0,'Success','Failure')@Advantage -rpg.system.command.preset.CYBERPUNK_RED.expression=val('$roll', 1d10) ifE('$roll', 1, '$roll'-1d10, 10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= rpg.system.command.preset.ASOIAF.expression={Würfelanzahl:1<=>15}d6k{Behalten:1<=>10} rpg.system.command.preset.CITY_OF_MIST.expression=2d6+{Modifikator:-6<=>6} rpg.system.command.preset.RISUS.expression=val('$r',{Würfelanzahl:1<=>10}d!6) ('$r'==2c) + ('$r'==4c) + ('$r'==6c)= -rpg.system.command.preset.KIDS_ON_BROOMS.expression=(d!!{Dice:4@D4/6@D6/8@D8/12@D12/20@D20/4+d!!4@D4Spell/6+d!!4@D6Spell/8+d!!4@D8Spell/12+d!!4@D12Spell/20+d!!4@D20Spell} {plus or minus:+/-}{Modifier:0<=>15}=)-{Difficulty:1<=>30}= rpg.system.command.preset.DND5_CALC.expression=d4@W4;d6@W6;d8@W8;d10@W10;d12@W12;d20@W20;d100@W100;1;2;3;4;5;k@Behalt höchsten;L@Behalt niedrigsten;(2d20k1)@W20 Vorteil;(2d20L1)@W20 Nachteil;-@Minus;+@Plus;4d6k3=@Attribut;,@Aufteilen -rpg.system.command.preset.REVE_DE_DRAGON.expression=1d4@D4;1d6@D6;2d6=@2D6;1d7@D7;1d8@D8;val('roll',1d!8 col 'special') val('diceCount','roll' c) 'roll'-'diceCount'+7=@DDR;2d10=@2D10;1d12@D12;val('$r',1d12 col 'special'),if('$r'=?1,'vaisseau','$r'=?2,'sirène','$r'=?3,'faucon','$r'=?4,'couronne','$r'=?5,'dragon','$r'=?6,'épées','$r'=?7,'lyre','$r'=?8,'serpent','$r'=?9,'poisson acrobate','$r'=?10,'araignée','$r'=?11,'roseaux','$r'=?12,'château dormant')@DAS;1d20@D20;1d100@D100 -rpg.system.command.preset.PUBLIC_ACCESS.expression=2d6=@Roll;3d6k2=@Advantage;3d6l2=@Disadvantage -rpg.system.command.preset.PARANOIA.expression=asc((0d6 > 4) col 'black' + replace(1d6 > 4, [6], 'Computer!')) @ 0d6 + Computer; asc((1d6 > 4) col 'black' + replace(1d6 > 4, [6], 'Computer!')) @ 1d6 + Computer; asc((2d6 > 4) col 'red' + replace(1d6 > 4, [6], 'Computer!')) @ 2d6 + Computer; asc((3d6 > 4) col 'orange' + replace(1d6 > 4, [6], 'Computer!')) @ 3d6 + Computer; asc((4d6 > 4) col 'yellow' + replace(1d6 > 4, [6], 'Computer!')) @ 4d6 + Computer; asc((5d6 > 4) col 'green' + replace(1d6 > 4, [6], 'Computer!')) @ 5d6 + Computer; asc((6d6 > 4) col 'cyan' + replace(1d6 > 4, [6], 'Computer!')) @ 6d6 + Computer; asc((7d6 > 4) col 'blue' + replace(1d6 > 4, [6], 'Computer!')) @ 7d6 + Computer; asc((8d6 > 4) col 'magenta' + replace(1d6 > 4, [6], 'Computer!')) @ 8d6 + Computer; asc((9d6 > 4) col 'white' + replace(1d6 > 4, [6], 'Computer!')) @ 9d6 + Computer -rpg.system.command.preset.CANDELA_OBSCURA.expression=+2d6l1 col 'blue'@None;+1d6@1;+2d6@2;+3d6@3;+4d6@4;+5d6@5;+6d6@6;+1d6 col 'purple_white'@⭐ Add Gilded? -rpg.system.command.preset.PROWLERS_PARAGONS.expression=val('$r',{number of dice:1<=>12}d6),val('$total',replace('$r', [1/3/5], 0, [2/4], 1, [6], 2)=), '$total'_' successes' -rpg.system.command.preset.BLUEBEARD_BRIDE.expression=val('$roll',(2d6)) val('$mod',{Modifier:-1<=>1}) val('$total',('$roll'+'$mod')=) if('$total'>=?10, 'Hit', '$total'<=?6, 'Miss', 'Mitigated Hit') #Rpg presets names rpg.system.command.preset.FATE.name=Fate ohne Würfelbildern rpg.system.command.preset.FATE_IMAGE.name=Fate diff --git a/bot/src/main/resources/botMessages_fr.properties b/bot/src/main/resources/botMessages_fr.properties index a515aa49..38240f77 100644 --- a/bot/src/main/resources/botMessages_fr.properties +++ b/bot/src/main/resources/botMessages_fr.properties @@ -151,6 +151,7 @@ starter.option.message.description=Définir un texte personnalisé pour le messa starter.option.new.message.description=Mettre true pour créer de nouveaux messages de bouton, sinon réutiliser le message de départ starter.option.welcome.description=Crée le message de bienvenue par défaut dans ce canal starter.option.command.name.description=Une commande nommée qui doit être ajoutée au démarreur. Commencez à taper pour filtrer. +clear.option.name.description=Limite l'accès aux commandes portant le nom sélectionné #autocomplete net.dv8tion.jda.api.interactions.commands.Command.Choice.MAX_NAME_LENGTH #max 100 characters base.option.dice_image_style.autoComplete.missingStyle.name=Sélectionnez d'abord le style d'image des dés diff --git a/bot/src/main/resources/botMessages_pt_BR.properties b/bot/src/main/resources/botMessages_pt_BR.properties index 4d3b361f..8ca21996 100644 --- a/bot/src/main/resources/botMessages_pt_BR.properties +++ b/bot/src/main/resources/botMessages_pt_BR.properties @@ -152,6 +152,7 @@ starter.option.message.description=Definir um texto personalizado para a mensage starter.option.new.message.description=Defina true para criar novas mensagens de botão; caso contrário, reutilize a mensagem inicial starter.option.welcome.description=Cria a mensagem de boas-vindas padrão nesse canal starter.option.command.name.description=Um comando nomeado que deve ser adicionado ao starter. Comece a digitar para filtrar. +clear.option.name.description=Limita a limpeza a comandos com o nome selecionado #autocomplete net.dv8tion.jda.api.interactions.commands.Command.Choice.MAX_NAME_LENGTH #max 100 characters base.option.dice_image_style.autoComplete.missingStyle.name=Selecione o estilo da imagem do dado primeiro @@ -212,14 +213,13 @@ rpg.system.command.preset.OWOD.expression=val('$diceNumber',{Quantidade de Dados rpg.system.command.preset.SHADOWRUN.expression=val('$roll',{Quantidade de Dados:1<=>20}d6) concat('$roll'>4c, if('$roll'==1c >? '$roll'c/2,' - Glitch!')) rpg.system.command.preset.SHADOWRUN_IMAGE.expression=val('$roll',{Quantidade de Dados:1<=>20}d6) concat('$roll'>4c, if('$roll'==1c >? '$roll'c/2,' - Glitch!')) rpg.system.command.preset.COIN.expression=1d[Cara 😀/Coroa ♛]@🪙Cara ou Coroa -#rpg.system.command.preset.DICE_CALCULATOR.expression=7;8;9;+;-;4;5;6;d;k;1;2;3;0;l rpg.system.command.preset.OSR.expression=1d20@D20;1d6@D6;2d6@2D6;1d4@D4;1d8@D8;6x3d6=@Atributos;(3d6=)*10@Ouro;1d100@D100;1d10@D10;1d12@D12 rpg.system.command.preset.TRAVELLER.expression=+2d6;+(3d6k2)@Benefício;+(3d6l2)@Defeito;+1d6;+1;+2;+3;+4;-1;-2;-3;-4 rpg.system.command.preset.SAVAGE_WORLDS.expression=(d!!{Dados:4@D4/6@D6/8@D8/12@D12/20@D20} + {Tipo: 0@Normal/1d!!6@Carta Selvagem})k1 rpg.system.command.preset.CALL_OF_CTHULHU_7ED.expression=1d100;2d100L1@1d100 Vantagem; 2d100K1@1d100 Penalidade; 1d3; 1d4; 1d6; 1d8; 1d10; 1d12; 1d20; 3d6 -rpg.system.command.preset.EXALTED_3ED.expression=val('$1', cancel(double({Quantidade de Dados}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) -rpg.system.command.preset.VAMPIRE_5ED.expression=val('$r',{Dados Normais:1<=>16}d10 col 'azul') val('$h',{Dados de Fome:0<=>5}d10 col 'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', ifE('$ts',0,ifG('$ho',1,' falha bestial' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' crítico confuso', ''), '')) -rpg.system.command.preset.HUNTER_5ED.expression=val('$r',{Dados D10 Normais:1<=>16}d10 col 'azul') val('$h', {Dado de Desespero:0<=>5}d10 col'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', ifE('$ts',0,ifG('$ho',1,' falha bestial' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' crítico confuso', ''), '')) +rpg.system.command.preset.EXALTED_3ED.expression=val('$1', cancel(double({Quantidade de Dados}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) +rpg.system.command.preset.VAMPIRE_5ED.expression=val('$r',{Dados Normais:1<=>16}d10 col 'azul') val('$h',{Dados de Fome:0<=>5}d10 col 'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', if('$ts'=? 0 && '$ho' >? 1,' falha bestial' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' crítico confuso', '')) +rpg.system.command.preset.HUNTER_5ED.expression=val('$r',{Dados D10 Normais:1<=>16}d10 col 'azul') val('$h', {Dado de Desespero:0<=>5}d10 col'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' falha bestial' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' crítico confuso', '')) rpg.system.command.preset.ONE_ROLL_ENGINE.expression=groupc({Quantidade de Dados:1<=>10}d10+({Quantidade de Dados Extra:0@0/10@1/2r10@2/3r10@3/4r10@4})>={Dificuldade:1<=>10}) rpg.system.command.preset.DUNGEON_CRAWL_CLASSICS.expression=+1d4;+1d6;+1d7;+1d8;+1d10;+1d12;+1d14;+1d16;+1d20;+1d24;+1d16;+1d30;+1d100;+1;+2;+3;+4;-1;-2;-3;-4 rpg.system.command.preset.TINY_D6.expression=ifG(1d6>=5c,0,'Successo','Falha')@Desvantagem; ifG(2d6>=5c,0,'Successo','Falha')@Teste;ifG(3d6>=5c,0,'Successo','Falha')@Vantagem diff --git a/bot/src/test/java/de/janno/discord/bot/ButtonEventAdaptorMockFactory.java b/bot/src/test/java/de/janno/discord/bot/ButtonEventAdaptorMockFactory.java index 1aded8ad..c77310c6 100644 --- a/bot/src/test/java/de/janno/discord/bot/ButtonEventAdaptorMockFactory.java +++ b/bot/src/test/java/de/janno/discord/bot/ButtonEventAdaptorMockFactory.java @@ -24,7 +24,7 @@ public ButtonEventAdaptorMockFactory(String commandId, AbstractCommand com this.messageIdCounter = new AtomicLong(0); this.pinnedMessageIds = firstMessagePinned ? Sets.newHashSet(messageIdCounter.get()) : Collections.emptySet(); command.createMessageConfig(configUUID, GUILD_ID, CHANNEL_ID, USER_ID, config).ifPresent(persistenceManager::saveMessageConfig); - command.createEmptyMessageData(configUUID, GUILD_ID, CHANNEL_ID, messageIdCounter.get()); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(configUUID, GUILD_ID, CHANNEL_ID, messageIdCounter.get(), command.getCommandId(), persistenceManager); } public ButtonEventAdaptorMock getButtonClickOnLastButtonMessage(String buttonValue) { diff --git a/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.java b/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.java index d0c98b1b..437c14ce 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.java +++ b/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.java @@ -5,7 +5,11 @@ import com.google.common.collect.ImmutableSet; import de.janno.discord.bot.SlashEventAdaptorMock; import de.janno.discord.bot.persistance.*; +import de.janno.discord.connector.api.AutoCompleteAnswer; +import de.janno.discord.connector.api.AutoCompleteRequest; import de.janno.discord.connector.api.SlashEventAdaptor; +import de.janno.discord.connector.api.slash.CommandInteractionOption; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import reactor.core.publisher.Mono; @@ -30,16 +34,16 @@ void handleSlashCommandEvent() { SlashEventAdaptor slashEventAdaptor = mock(SlashEventAdaptor.class); when(slashEventAdaptor.reply(any(), anyBoolean())).thenReturn(Mono.empty()); when(slashEventAdaptor.getChannelId()).thenReturn(0L); - when(persistenceManager.deleteMessageDataForChannel(anyLong())).thenReturn(ImmutableSet.of(1L, 2L)); + when(persistenceManager.deleteMessageDataForChannel(anyLong(), isNull())).thenReturn(ImmutableSet.of(1L, 2L)); when(slashEventAdaptor.deleteMessageById(anyLong())).thenReturn(Mono.empty()); Mono res = underTest.handleSlashCommandEvent(slashEventAdaptor, () -> UUID.fromString("00000000-0000-0000-0000-000000000000"), Locale.ENGLISH); StepVerifier.create(res).verifyComplete(); - verify(persistenceManager).deleteMessageDataForChannel(0L); + verify(persistenceManager).deleteMessageDataForChannel(0L, null); verify(persistenceManager).deleteAllChannelConfig(0L); - verify(persistenceManager).deleteAllMessageConfigForChannel(0L); + verify(persistenceManager).deleteAllMessageConfigForChannel(0L, null); verify(slashEventAdaptor).deleteMessageById(1L); verify(slashEventAdaptor).deleteMessageById(2L); } @@ -54,14 +58,26 @@ public void getId() { expect.toMatchSnapshot(underTest.getCommandId()); } + @AfterEach + void cleanup() { + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "0"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "0"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + } + + @Test - public void mockTest() { + public void mockTest() throws InterruptedException { long channelId = 1; long otherChannelId = 2; long guildId = 1; long messageId = 1; long otherMessageId = 2; String configClassId = "configClassId"; + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "1"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "0"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); underTest = new ClearCommand(persistenceManager); @@ -79,6 +95,7 @@ public void mockTest() { SlashEventAdaptorMock slashEventAdaptorMock = new SlashEventAdaptorMock(List.of()); underTest.handleSlashCommandEvent(slashEventAdaptorMock, UUID::randomUUID, Locale.ENGLISH).block(); + Thread.sleep(10); assertThat(persistenceManager.getMessageConfig(configUUID)).isEmpty(); assertThat(persistenceManager.getMessageConfig(config2UUID)).isPresent(); @@ -91,4 +108,93 @@ public void mockTest() { } + @Test + public void mockTest_name() throws InterruptedException { + long channelId = 1; + long otherChannelId = 2; + long guildId = 1; + long messageId = 1; + long otherMessageId = 2; + long message2Id = 3; + String configClassId = "configClassId"; + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "1"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "0"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); + underTest = new ClearCommand(persistenceManager); + + UUID configUUID = UUID.randomUUID(); + persistenceManager.saveMessageConfig(new MessageConfigDTO(configUUID, guildId, channelId, "commandId", "configClass", "config", "commandName", null)); + UUID config2UUID = UUID.randomUUID(); + persistenceManager.saveMessageConfig(new MessageConfigDTO(config2UUID, guildId, otherChannelId, "commandId", "configClass", "config", "commandName", null)); + UUID config3UUID = UUID.randomUUID(); + persistenceManager.saveMessageConfig(new MessageConfigDTO(config3UUID, guildId, channelId, "commandId", "configClass", "config", "commandName2", null)); + + persistenceManager.saveMessageData(new MessageDataDTO(configUUID, guildId, channelId, messageId, "commandId", "stateDataClassId", "stateData")); + persistenceManager.saveMessageData(new MessageDataDTO(config2UUID, guildId, otherChannelId, otherMessageId, "commandId", "stateDataClassId", "stateData")); + persistenceManager.saveMessageData(new MessageDataDTO(config3UUID, guildId, channelId, message2Id, "commandId", "stateDataClassId", "stateData")); + + persistenceManager.saveChannelConfig(new ChannelConfigDTO(UUID.randomUUID(), guildId, channelId, null, "commandId", configClassId, "config", "aliasName")); + persistenceManager.saveChannelConfig(new ChannelConfigDTO(UUID.randomUUID(), guildId, otherChannelId, null, "commandId", configClassId, "config", "aliasName")); + assertThat(persistenceManager.getMessageConfig(config3UUID)).isPresent(); + + SlashEventAdaptorMock slashEventAdaptorMock = new SlashEventAdaptorMock(List.of(CommandInteractionOption.builder().name("name").stringValue("commandName").build())); + + underTest.handleSlashCommandEvent(slashEventAdaptorMock, UUID::randomUUID, Locale.ENGLISH).block(); + Thread.sleep(20); + + assertThat(persistenceManager.getMessageConfig(configUUID)).isEmpty(); + assertThat(persistenceManager.getMessageConfig(config2UUID)).isPresent(); + assertThat(persistenceManager.getMessageConfig(config3UUID)).isPresent(); + + assertThat(persistenceManager.getMessageData(channelId, messageId)).isEmpty(); + assertThat(persistenceManager.getMessageData(otherChannelId, otherMessageId)).isPresent(); + assertThat(persistenceManager.getMessageData(channelId, message2Id)).isPresent(); + + assertThat(persistenceManager.getChannelConfig(channelId, configClassId)).isPresent(); + assertThat(persistenceManager.getChannelConfig(otherChannelId, configClassId)).isPresent(); + + } + + @Test + void getAutoCompleteAnswer_empty() { + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); + underTest = new ClearCommand(persistenceManager); + + List res = underTest.getAutoCompleteAnswer(new AutoCompleteRequest("name", "", List.of()), Locale.ENGLISH, 1L, 2L, 3L); + + assertThat(res).isEmpty(); + } + + @Test + void getAutoCompleteAnswer_hit() { + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); + underTest = new ClearCommand(persistenceManager); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name2", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 2L, "testCommand", "testConfigClass", "configClass", "name3", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 3L, "testCommand", "testConfigClass", "configClass", "name4", null)); + + List res = underTest.getAutoCompleteAnswer(new AutoCompleteRequest("name", "", List.of()), Locale.ENGLISH, 1L, 2L, 3L); + + assertThat(res.stream().map(AutoCompleteAnswer::getName)).containsExactly("name1", "name2"); + } + + @Test + void getAutoCompleteAnswer_filter() { + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); + underTest = new ClearCommand(persistenceManager); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 1L, "testCommand", "testConfigClass", "configClass", "name2", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 2L, 2L, "testCommand", "testConfigClass", "configClass", "name3", 0L)); + persistenceManager.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 3L, "testCommand", "testConfigClass", "configClass", "name4", null)); + + List res = underTest.getAutoCompleteAnswer(new AutoCompleteRequest("name", "e2", List.of()), Locale.ENGLISH, 1L, 2L, 3L); + + assertThat(res.stream().map(AutoCompleteAnswer::getName)).containsExactly( "name2"); + } + } \ No newline at end of file diff --git a/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.snap b/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.snap index 83ac0b97..aa8783a6 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.snap +++ b/bot/src/test/java/de/janno/discord/bot/command/ClearCommandTest.snap @@ -17,7 +17,32 @@ de.janno.discord.bot.command.ClearCommandTest.getCommandDefinition=[ "description": "Supprime tous les messages des boutons et les données sauvegardées du bot pour ce canal." } ], - "options": [ ] + "options": [ + { + "type": "STRING", + "name": "name", + "nameLocales": [ ], + "description": "Limits clear to commands with the selected name", + "descriptionLocales": [ + { + "locale": "de", + "description": "Limitiert clear auf Befehle mit dem ausgewählten Namen" + }, + { + "locale": "pt_BR", + "description": "Limita a limpeza a comandos com o nome selecionado" + }, + { + "locale": "fr", + "description": "Limite l'accès aux commandes portant le nom sélectionné" + } + ], + "required": false, + "choices": [ ], + "options": [ ], + "autoComplete": true + } + ] } ] diff --git a/bot/src/test/java/de/janno/discord/bot/command/FetchCommandMockTest.java b/bot/src/test/java/de/janno/discord/bot/command/FetchCommandMockTest.java index 57349c62..38e703ea 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/FetchCommandMockTest.java +++ b/bot/src/test/java/de/janno/discord/bot/command/FetchCommandMockTest.java @@ -4,6 +4,7 @@ import au.com.origin.snapshots.junit5.SnapshotExtension; import com.google.common.collect.ImmutableList; import de.janno.discord.bot.AnswerInteractionType; +import de.janno.discord.bot.BaseCommandUtils; import de.janno.discord.bot.SlashEventAdaptorMock; import de.janno.discord.bot.command.customDice.CustomDiceCommand; import de.janno.discord.bot.command.customDice.CustomDiceConfig; @@ -52,8 +53,9 @@ void setup() { @AfterEach void cleanup() { - io.avaje.config.Config.setProperty("command.delayMessageDataDeletionMs", "10"); - io.avaje.config.Config.setProperty("command.fetch.delayMs", "0"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "0"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "0"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); } @@ -99,21 +101,21 @@ void noOldMessage_de() { @Test void fetchOldCustomDiceMessage() throws InterruptedException { - io.avaje.config.Config.setProperty("command.delayMessageDataDeletionMs", "1000"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "1000"); io.avaje.config.Config.setProperty("command.fetch.delayMs", "50"); CustomDiceConfig otherConfig = new CustomDiceConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "att", "2d20", false, false, null)), AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customDiceCommand.createMessageConfig(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), otherConfig) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customDiceCommand.createEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L, customDiceCommand.getCommandId(), persistenceManager); Thread.sleep(100); CustomDiceConfig config = new CustomDiceConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "Dmg", "1d6", false, false, null)), AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customDiceCommand.createMessageConfig(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), config) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customDiceCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L, customDiceCommand.getCommandId(), persistenceManager); MessageDeletionHelper.markAsDeleted(persistenceManager, fetchEvent.getChannelId(), -2).subscribe(); - customDiceCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L, customDiceCommand.getCommandId(), persistenceManager); underTest.handleSlashCommandEvent(fetchEvent, () -> uuid0, Locale.ENGLISH).block(); expect.toMatchSnapshot(fetchEvent.getActions()); @@ -125,15 +127,15 @@ void fetchOldCustomDiceMessageNotOldEnough() throws InterruptedException { CustomDiceConfig otherConfig = new CustomDiceConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "att", "2d20", false, false, null)), AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customDiceCommand.createMessageConfig(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), otherConfig) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customDiceCommand.createEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L, customDiceCommand.getCommandId(), persistenceManager); CustomDiceConfig config = new CustomDiceConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "Dmg", "1d6", false, false, null)), AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customDiceCommand.createMessageConfig(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), config) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customDiceCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L, customDiceCommand.getCommandId(), persistenceManager); MessageDeletionHelper.markAsDeleted(persistenceManager, fetchEvent.getChannelId(), -2).subscribe(); - customDiceCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L, customDiceCommand.getCommandId(), persistenceManager); Thread.sleep(100); underTest.handleSlashCommandEvent(fetchEvent, () -> uuid0, Locale.ENGLISH).block(); @@ -143,24 +145,24 @@ void fetchOldCustomDiceMessageNotOldEnough() throws InterruptedException { @Test void fetchOldSumCustomSetMessage() throws InterruptedException { - io.avaje.config.Config.setProperty("command.delayMessageDataDeletionMs", "1000"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "1000"); io.avaje.config.Config.setProperty("command.fetch.delayMs", "50"); SumCustomSetConfig otherConfig = new SumCustomSetConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "Att", "+2d20", false, false, null), new ButtonIdLabelAndDiceExpression("2_button", "bonus", "+5", false, false, null)), true, true, false, null, null, AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); sumCustomSetCommand.createMessageConfig(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), otherConfig) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - sumCustomSetCommand.createEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L, customDiceCommand.getCommandId(), persistenceManager); Thread.sleep(50); SumCustomSetConfig config = new SumCustomSetConfig(null, ImmutableList.of(new ButtonIdLabelAndDiceExpression("1_button", "Dmg", "+1d6", false, false, null), new ButtonIdLabelAndDiceExpression("2_button", "bonus", "+2", false, false, null)), true, true, false, null, null, AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); sumCustomSetCommand.createMessageConfig(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), config) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customDiceCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L, customDiceCommand.getCommandId(), persistenceManager); MessageDeletionHelper.markAsDeleted(persistenceManager, fetchEvent.getChannelId(), -2).subscribe(); - sumCustomSetCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L, customDiceCommand.getCommandId(), persistenceManager); underTest.handleSlashCommandEvent(fetchEvent, () -> uuid0, Locale.ENGLISH).block(); @@ -169,22 +171,22 @@ void fetchOldSumCustomSetMessage() throws InterruptedException { @Test void fetchOldCustomParameterMessage() throws InterruptedException { - io.avaje.config.Config.setProperty("command.delayMessageDataDeletionMs", "1000"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "1000"); io.avaje.config.Config.setProperty("command.fetch.delayMs", "50"); CustomParameterConfig otherConfig = new CustomParameterConfig(null, "{numberOfDice:3<=>6}d{sides:6/8/10/12}", AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customParameterCommand.createMessageConfig(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), otherConfig) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customParameterCommand.createEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid1, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -3L, customDiceCommand.getCommandId(), persistenceManager); Thread.sleep(50); CustomParameterConfig config = new CustomParameterConfig(null, "{numberOfDice:1<=>10}d{sides:1/4/6/8/10/12/20/100}", AnswerFormatType.full, AnswerInteractionType.none, null, new DiceStyleAndColor(DiceImageStyle.none, "none"), Locale.ENGLISH, null, null); customParameterCommand.createMessageConfig(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), fetchEvent.getUserId(), config) .ifPresent(m -> persistenceManager.saveMessageConfig(m)); - customParameterCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -2L, customDiceCommand.getCommandId(), persistenceManager); MessageDeletionHelper.markAsDeleted(persistenceManager, fetchEvent.getChannelId(), -2).subscribe(); - customParameterCommand.createEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L); + BaseCommandUtils.createCleanupAndSaveEmptyMessageData(uuid0, fetchEvent.getGuildId(), fetchEvent.getChannelId(), -1L, customDiceCommand.getCommandId(), persistenceManager); underTest.handleSlashCommandEvent(fetchEvent, () -> uuid0, Locale.ENGLISH).block(); diff --git a/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.java b/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.java index f9a51f54..41658e70 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.java +++ b/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.java @@ -19,6 +19,7 @@ import de.janno.discord.connector.api.slash.CommandDefinitionOption; import de.janno.discord.connector.api.slash.CommandInteractionOption; import de.janno.evaluator.dice.random.RandomNumberSupplier; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.Arguments; @@ -36,6 +37,7 @@ public class QuickstartCommandMockTest { Expect expect; + PersistenceManager persistenceManager; static Stream generateRpgSystemLocaleData() { return Arrays.stream(RpgSystemCommandPreset.PresetId.values()) @@ -89,10 +91,16 @@ static Stream aliasRollData() { ); } + @BeforeEach + void setup() { + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "0"); + persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); + + } + @ParameterizedTest(name = "{index} config={0}, locale={1}") @MethodSource("generateRpgSystemLocaleData") void handleSlashCommandEvent(RpgSystemCommandPreset.PresetId presetId, Locale userLocale) { - PersistenceManager persistenceManager = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); CachingDiceEvaluator cachingDiceEvaluator = new CachingDiceEvaluator(new RandomNumberSupplier(0)); CustomDiceCommand customDiceCommand = new CustomDiceCommand(persistenceManager, cachingDiceEvaluator); CustomParameterCommand customParameterCommand = new CustomParameterCommand(persistenceManager, cachingDiceEvaluator); diff --git a/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.snap b/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.snap index 33ef6a0a..ba68fc69 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.snap +++ b/bot/src/test/java/de/janno/discord/bot/command/help/QuickstartCommandMockTest.snap @@ -926,8 +926,8 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=Roll ⇒ 1, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=w20 ⇒ 1, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -966,8 +966,8 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=D20 ⇒ 1, descriptionOrContent=[1], fields=[], componentRowDefinitions=[], hasImage=false, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=w20 ⇒ 1, descriptionOrContent=D20: [1], fields=[], componentRowDefinitions=[], hasImage=false, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -1034,8 +1034,8 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=Würfelanzahl: 1 ⇒ Botch, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Würfelanzahl**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **number of dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=number of dice: 1 ⇒ Botch, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -1298,6 +1298,34 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:GHOSTBUSTERS_de]=[ + [ + "editMessage: message:invokingUser: Bitte wähle den Wert für **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Löschen, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:GHOSTBUSTERS_en]=[ + [ + "editMessage: message:invokingUser: Please select value for **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Clear, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:GHOSTBUSTERS_fr]=[ + [ + "editMessage: message:invokingUser: Veuillez sélectionner la valeur de **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Effacer, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:GHOSTBUSTERS_pt_BR]=[ + [ + "editMessage: message:invokingUser: Por favor selecione um valor para **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Limpar, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:HEROES_OF_CERULEA_de]=[ [ "acknowledge", @@ -1986,6 +2014,34 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:SHADOWDARK_de]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Würfeln, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Zurück, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:SHADOWDARK_en]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Roll, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Back, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:SHADOWDARK_fr]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rouleau, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Retour, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:SHADOWDARK_pt_BR]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rolar, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Voltar, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:SHADOWRUN_IMAGE_de]=[ [ "acknowledge", @@ -2218,6 +2274,34 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:WARHAMMER_AOS_de]=[ + [ + "editMessage: message:invokingUser: Bitte wähle den Wert für **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:WARHAMMER_AOS_en]=[ + [ + "editMessage: message:invokingUser: Please select value for **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:WARHAMMER_AOS_fr]=[ + [ + "editMessage: message:invokingUser: Veuillez sélectionner la valeur de **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[firstButtonEvent:WARHAMMER_AOS_pt_BR]=[ + [ + "editMessage: message:invokingUser: Por favor selecione um valor para **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:ALIEN_de]=[ [ "reply: commandString", @@ -2785,7 +2869,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:DND5_IMAGE_de]=[ [ "reply: commandString", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -2817,7 +2901,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:DND5_de]=[ [ "reply: commandString", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -2881,7 +2965,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:EXALTED_3ED_de]=[ [ "reply: commandString", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Würfelanzahl**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **number of dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -3130,6 +3214,38 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:GHOSTBUSTERS_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:GHOSTBUSTERS_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:GHOSTBUSTERS_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:GHOSTBUSTERS_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:HEROES_OF_CERULEA_de]=[ [ "reply: commandString", @@ -3822,6 +3938,38 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:SHADOWDARK_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um die Würfel hinzuzufügen und dann auf Würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Würfeln, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Zurück, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:SHADOWDARK_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Click the buttons to add dice to the set and then on Roll, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Roll, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Back, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:SHADOWDARK_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Cliquez sur les boutons pour ajouter des dés à l'ensemble, puis sur Lancer., fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rouleau, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Retour, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:SHADOWDARK_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Clique nos botões para adicionar dados ao conjunto e então em Rolar, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rolar, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Voltar, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:SHADOWRUN_ALIAS_de]=[ [ "reply: `commandString`\nNeuer Alias gespeichert" @@ -4074,6 +4222,38 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:WARHAMMER_AOS_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:WARHAMMER_AOS_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:WARHAMMER_AOS_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.config2CommandString_slashCommand_firstButton[slashCommand:WARHAMMER_AOS_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[ALIEN_alias_de]=[ [ ] ] @@ -4332,7 +4512,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[BLADES_IN_THE_DARK_IMAGE_en]=[ [ - "reply: **Blades in the Dark:** `/custom_parameter start expression: val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Die/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) if('$sixes'>?1,'Critical Success - You do it with increased effect.', '$sixes'=?1,'Success - You do it.','$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Blades in the Dark without Dice Images`", + "reply: **Blades in the Dark:** `/custom_parameter start expression: val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Die/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) if('$sixes'>?1,'Critical Success - You do it with increased effect.', '$sixes'=?1,'Success - You do it.','$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Blades in the Dark`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Number of Dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=No Dice, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1 Die, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2 Dice, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3 Dice, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4 Dice, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=5 Dice, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6 Dice, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7 Dice, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -4340,7 +4520,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[BLADES_IN_THE_DARK_IMAGE_fr]=[ [ - "reply: **Blades in the Dark:** `/custom_parameter start expression: val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Die/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) if('$sixes'>?1,'Critical Success - You do it with increased effect.', '$sixes'=?1,'Success - You do it.','$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Blades in the Dark without Dice Images`", + "reply: **Blades in the Dark:** `/custom_parameter start expression: val('$diceRoll',{Number of Dice:2d6L1@No Dice/1d6@1 Die/2d6@2 Dice/3d6@3 Dice/4d6@4 Dice/5d6@5 Dice/6d6@6 Dice/7d6@7 Dice}) val('$sixes','$diceRoll'==6c) val('$partials','$diceRoll'>3<6c) if('$sixes'>?1,'Critical Success - You do it with increased effect.', '$sixes'=?1,'Success - You do it.','$partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Blades in the Dark`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Number of Dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=No Dice, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1 Die, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2 Dice, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3 Dice, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4 Dice, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=5 Dice, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6 Dice, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7 Dice, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -4812,7 +4992,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[CYBERPUNK_RED_de]=[ [ - "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10) ifE('$roll', 1, '$roll'-1d10, 10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", + "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10), if('$roll' =? 1, '$roll'-1d10, '$roll' =?10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **ability**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=0, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=5, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -4820,7 +5000,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[CYBERPUNK_RED_en]=[ [ - "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10) ifE('$roll', 1, '$roll'-1d10, 10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", + "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10), if('$roll' =? 1, '$roll'-1d10, '$roll' =?10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **ability**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=0, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=5, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -4828,7 +5008,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[CYBERPUNK_RED_fr]=[ [ - "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10) ifE('$roll', 1, '$roll'-1d10, 10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", + "reply: **Cyberpunk Red:** `/custom_parameter start expression: val('$roll', 1d10), if('$roll' =? 1, '$roll'-1d10, '$roll' =?10, '$roll'+1d10, '$roll')+{ability:0<=>9}+{skill:0<=>9}= answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Cyberpunk Red`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **ability**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=0, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=5, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5132,8 +5312,8 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[DND5_IMAGE_de]=[ [ - "reply: **Dungeon & Dragons 5e:** `/custom_dice start buttons: D20;2d20k1@D20 Vorteil;2d20L1@D20 Nachteil;;1d4;1d6;1d8;1d10;1d12;1d100;2d4=@2d4;2d6=@2d6;2d8=@2d8;2d10=@2d10;2d12=@2d12;2d20=@2d20 answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Dungeon & Dragons 5e`", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "reply: **Dungeon & Dragons 5e:** `/custom_dice start buttons: D20@w20;2d20k1@w20 Vorteil;2d20L1@w20 Nachteil;;1d4;1d6@1w6;1d8@1w8;1d10@1w10;1d12@1w12;1d100@1w100;2d4=@2w4;2d6=@2w6;2d8=@2w8;2d10=@2w10;2d12=@2w12;2d20=@2w20 answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Dungeon & Dragons 5e`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5184,8 +5364,8 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[DND5_de]=[ [ - "reply: **Dungeon & Dragons 5e ohne Würfelbildern:** `/custom_dice start buttons: D20;2d20k1@D20 Vorteil;2d20L1@D20 Nachteil;;1d4;1d6;1d8;1d10;1d12;1d100;2d4=@2d4;2d6=@2d6;2d8=@2d8;2d10=@2d10;2d12=@2d12;2d20=@2d20 answer_format: full answer_interaction: none dice_image_style: none dice_image_color: none name: Dungeon & Dragons 5e ohne Würfelbildern`", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "reply: **Dungeon & Dragons 5e ohne Würfelbildern:** `/custom_dice start buttons: D20@w20;2d20k1@w20 Vorteil;2d20L1@w20 Nachteil;;1d4;1d6@1w6;1d8@1w8;1d10@1w10;1d12@1w12;1d100@1w100;2d4=@2w4;2d6=@2w6;2d8=@2w8;2d10=@2w10;2d12=@2w12;2d20=@2w20 answer_format: full answer_interaction: none dice_image_style: none dice_image_color: none name: Dungeon & Dragons 5e ohne Würfelbildern`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5288,15 +5468,15 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[EXALTED_3ED_de]=[ [ - "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({Würfelanzahl}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Würfelanzahl**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **number of dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[EXALTED_3ED_en]=[ [ - "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", + "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **number of dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5304,7 +5484,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[EXALTED_3ED_fr]=[ [ - "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", + "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({number of dice}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **number of dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5312,7 +5492,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[EXALTED_3ED_pt_BR]=[ [ - "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({Quantidade de Dados}d10,10),1,[7/8/9/10])), ifE(('$1'>=7)c,0,ifG(('$1'<=1)c,0,'Botch')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", + "reply: **Exalted 3ed:** `/custom_parameter start expression: val('$1', cancel(double({Quantidade de Dados}d10,10),1,[7/8/9/10])), if(('$1'>=7)c =? 0 && ('$1'<=1)c >?0,'Botch', ('$1'>=7)c) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Exalted 3ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Quantidade de Dados**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5702,6 +5882,58 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_alias_de]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_alias_en]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_alias_fr]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_alias_pt_BR]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_de]=[ + [ + "reply: **Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular:** `/custom_parameter start expression: val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_en]=[ + [ + "reply: **Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular:** `/custom_parameter start expression: val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_fr]=[ + [ + "reply: **Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular:** `/custom_parameter start expression: val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[GHOSTBUSTERS_pt_BR]=[ + [ + "reply: **Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular:** `/custom_parameter start expression: val('$dice',{Dice Pool:1<=>25}),val('$diff',{Difficulty:5@Easy Job/10@Normal Job/20@Hard Job/30@Impossible Job}) val('$ghost', 1d6 col 'green_and_white'), if('$ghost'=?6,val('$res',('$dice' -1=)d6=), val('$res', ('$dice' -1=)d6+ '$ghost'=)), '$res' _ ' vs ' _ '$diff' _ ': ' _ if('$res' >=? '$diff', 'success', 'failure') _ if('$ghost'=?6, ' and something bad happens', '') answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_RdD dice_image_color: default name: Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spooktacular`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Dice Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[HEROES_OF_CERULEA_alias_de]=[ [ ] ] @@ -5776,7 +6008,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[HUNTER_5ED_de]=[ [ - "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", + "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Regular D10 Dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5784,7 +6016,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[HUNTER_5ED_en]=[ [ - "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", + "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Regular D10 Dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5792,7 +6024,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[HUNTER_5ED_fr]=[ [ - "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", + "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Regular D10 Dice:1<=>16}d10 col 'blue') val('$h', {Desperation Dice:0<=>5}d10 col'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Regular D10 Dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -5800,7 +6032,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[HUNTER_5ED_pt_BR]=[ [ - "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Dados D10 Normais:1<=>16}d10 col 'azul') val('$h', {Dado de Desespero:0<=>5}d10 col'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', ifE('$ts',0,ifG('$ho',1,' falha bestial' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' crítico confuso', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", + "reply: **Hunter 5ed:** `/custom_parameter start expression: val('$r',{Dados D10 Normais:1<=>16}d10 col 'azul') val('$h', {Dado de Desespero:0<=>5}d10 col'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' falha bestial' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' crítico confuso', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Hunter 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Dados D10 Normais**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -6946,6 +7178,58 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_alias_de]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_alias_en]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_alias_fr]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_alias_pt_BR]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_de]=[ + [ + "reply: **Shadowdark:** `/sum_custom_set start buttons: d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@Stats;,@Split always_sum_result: true hide_expression_in_answer: false answer_format: full answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Shadowdark`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um die Würfel hinzuzufügen und dann auf Würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Würfeln, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0000-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Zurück, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0000-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_en]=[ + [ + "reply: **Shadowdark:** `/sum_custom_set start buttons: d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@Stats;,@Split always_sum_result: true hide_expression_in_answer: false answer_format: full answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Shadowdark`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Click the buttons to add dice to the set and then on Roll, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Roll, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0000-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Back, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0000-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_fr]=[ + [ + "reply: **Shadowdark:** `/sum_custom_set start buttons: d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@Stats;,@Split always_sum_result: true hide_expression_in_answer: false answer_format: full answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Shadowdark`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Cliquez sur les boutons pour ajouter des dés à l'ensemble, puis sur Lancer., fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rouleau, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0000-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Retour, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0000-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWDARK_pt_BR]=[ + [ + "reply: **Shadowdark:** `/sum_custom_set start buttons: d4;d6;d8;d10;d12;d20;d100;1;2;3;4;5;(2d20k1)@D20 Advantage;(2d20L1)@D20 Disadvantage;;-@Minus;+@Plus;5x3d6=@Stats;,@Split always_sum_result: true hide_expression_in_answer: false answer_format: full answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Shadowdark`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Clique nos botões para adicionar dados ao conjunto e então em Rolar, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rolar, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0000-000000000000, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0000-000000000000, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Voltar, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0000-000000000000, style=SECONDARY, disabled=true, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[SHADOWRUN_ALIAS_alias_de]=[ [ { @@ -7248,7 +7532,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[TINY_D6_de]=[ [ - "reply: **Tiny D6:** `/custom_dice start buttons: ifG(1d6>=5c,0,'Success','Failure')@Disadvantage;ifG(2d6>=5c,0,'Success','Failure')@Test;ifG(3d6>=5c,0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", + "reply: **Tiny D6:** `/custom_dice start buttons: if((1d6>=5c) >? 0,'Success','Failure')@Disadvantage;if((2d6>=5c) >? 0,'Success','Failure')@Test;if((3d6>=5c) >? 0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Klick auf einen Button um zu würfeln, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Disadvantage, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Test, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Advantage, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7256,7 +7540,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[TINY_D6_en]=[ [ - "reply: **Tiny D6:** `/custom_dice start buttons: ifG(1d6>=5c,0,'Success','Failure')@Disadvantage;ifG(2d6>=5c,0,'Success','Failure')@Test;ifG(3d6>=5c,0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", + "reply: **Tiny D6:** `/custom_dice start buttons: if((1d6>=5c) >? 0,'Success','Failure')@Disadvantage;if((2d6>=5c) >? 0,'Success','Failure')@Test;if((3d6>=5c) >? 0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Click on a button to roll the dice, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Disadvantage, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Test, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Advantage, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7264,7 +7548,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[TINY_D6_fr]=[ [ - "reply: **Tiny D6:** `/custom_dice start buttons: ifG(1d6>=5c,0,'Success','Failure')@Disadvantage;ifG(2d6>=5c,0,'Success','Failure')@Test;ifG(3d6>=5c,0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", + "reply: **Tiny D6:** `/custom_dice start buttons: if((1d6>=5c) >? 0,'Success','Failure')@Disadvantage;if((2d6>=5c) >? 0,'Success','Failure')@Test;if((3d6>=5c) >? 0,'Success','Failure')@Advantage answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_3d dice_image_color: red_and_white name: Tiny D6`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Cliquez sur un bouton pour lancer les dés, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Disadvantage, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Test, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Advantage, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7352,7 +7636,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[VAMPIRE_5ED_de]=[ [ - "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", + "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **regular dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7360,7 +7644,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[VAMPIRE_5ED_en]=[ [ - "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", + "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **regular dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7368,7 +7652,7 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[VAMPIRE_5ED_fr]=[ [ - "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', ifE('$ts',0,ifG('$ho',1,' bestial failure' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' messy critical', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", + "reply: **Vampire 5ed:** `/custom_parameter start expression: val('$r',{regular dice:1<=>16}d10 col 'blue') val('$h',{hunger dice:0<=>5}d10 col 'purple_dark') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('successes: ', '$ts', if('$ts'=? 0 && '$ho' >? 1,' bestial failure' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' messy critical', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Vampire 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **regular dice**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] @@ -7376,12 +7660,64 @@ de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEv de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[VAMPIRE_5ED_pt_BR]=[ [ - "reply: **Vampiro 5ed:** `/custom_parameter start expression: val('$r',{Dados Normais:1<=>16}d10 col 'azul') val('$h',{Dados de Fome:0<=>5}d10 col 'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', '$ts', ifE('$ts',0,ifG('$ho',1,' falha bestial' , ''),''), ifE('$rt' mod 2, 1, ifE('$ht' mod 2, 1, ' crítico confuso', ''), '')) answer_format: without_expression answer_interaction: none dice_image_style: polyhedral_knots dice_image_color: blue name: Vampiro 5ed`", + "reply: **Vampiro 5ed:** `/custom_parameter start expression: val('$r',{Dados Normais:1<=>16}d10 col 'azul') val('$h',{Dados de Fome:0<=>5}d10 col 'roxo_escuro') val('$s',('$r'+'$h')>=6c) val('$rt','$r'==10c) val('$ht','$h'==10c) val('$ho','$h'==1c) val('$2s',((('$rt'+'$ht'=))/2)*2) val('$ts',('$s'+'$2s'=)) concat('sucessos: ', if('$ts'=? 0 && '$ho' >? 1,' falha bestial' , ''), if(('$rt' mod 2 ) =? 1 && ('$ht' mod 2) =? 1, ' crítico confuso', '')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_knots dice_image_color: blue name: Vampiro 5ed`", "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Dados Normais**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" ] ] +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_alias_de]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_alias_en]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_alias_fr]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_alias_pt_BR]=[ + [ ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_de]=[ + [ + "reply: **Warhammer Age of Sigmar: Soulbound:** `/custom_parameter start expression: val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_alies_v2 dice_image_color: blue_and_gold name: Warhammer Age of Sigmar: Soulbound`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Bitte wähle den Wert für **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_en]=[ + [ + "reply: **Warhammer Age of Sigmar: Soulbound:** `/custom_parameter start expression: val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_alies_v2 dice_image_color: blue_and_gold name: Warhammer Age of Sigmar: Soulbound`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Please select value for **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_fr]=[ + [ + "reply: **Warhammer Age of Sigmar: Soulbound:** `/custom_parameter start expression: val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_alies_v2 dice_image_color: blue_and_gold name: Warhammer Age of Sigmar: Soulbound`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Veuillez sélectionner la valeur de **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.help.QuickstartCommandMockTest.handleSlashCommandEvent[WARHAMMER_AOS_pt_BR]=[ + [ + "reply: **Warhammer Age of Sigmar: Soulbound:** `/custom_parameter start expression: val('$Pool',{Pool:1<=>20}d6 col 'blue_and_gold') val('$Success', ('$Pool'>={Difficulty:2<=>6})c) val ('$Complexity', {Complexity:1<=>20}) val('$Test', ('$Success'>='$Complexity')c) val('$Overcast', '$Success' - '$Complexity'=) concat('$Success'_' successes ; '_if('$Test'>?0,'Success ('_'$Overcast'_' overcast)','Failure')) answer_format: without_expression answer_interaction: reroll dice_image_style: polyhedral_alies_v2 dice_image_color: blue_and_gold name: Warhammer Age of Sigmar: Soulbound`", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=Por favor selecione um valor para **Pool**, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0000-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + de.janno.discord.bot.command.help.QuickstartCommandMockTest.quickstartAlias_directRoll[BLADES_IN_THE_DARK_ALIAS_0b_directRoll]=[ [ "replyWithEmbedOrMessageDefinition: EmbedOrMessageDefinition(title=0 Dice ⇒ Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action., descriptionOrContent=val('diceRoll', if(0=?0,2d6L1, 0d6)) val('sixes','diceRoll'==6c) val('partials','diceRoll'>3<6c) if('sixes'>?1,'Critical Success - You do it with increased effect.', 'sixes'=?1,'Success - You do it.','partials' >? 0,'Partial Success - You do it but suffer severe harm, a serious complication or have reduced effect.','Failure - You suffer severe harm, a serious complication occurs, or you lose this opportunity for action.'), fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)" diff --git a/bot/src/test/java/de/janno/discord/bot/command/starter/StarterCommandMockTest.snap b/bot/src/test/java/de/janno/discord/bot/command/starter/StarterCommandMockTest.snap index 855b2bfd..b3c47fcb 100644 --- a/bot/src/test/java/de/janno/discord/bot/command/starter/StarterCommandMockTest.snap +++ b/bot/src/test/java/de/janno/discord/bot/command/starter/StarterCommandMockTest.snap @@ -1424,7 +1424,7 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_IM de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_IMAGE_event2_de]=[ [ - "editMessage: message:Klick auf einen Button um zu würfeln, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + "editMessage: message:Klick auf einen Button um zu würfeln, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" ] ] @@ -1454,8 +1454,8 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_IM [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=Roll ⇒ 13, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Dungeon & Dragons 5e, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Dungeon & Dragons 5e, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=w20 ⇒ 13, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -1524,7 +1524,7 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_ev de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_event2_de]=[ [ - "editMessage: message:Klick auf einen Button um zu würfeln, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=D20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1d12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2d12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2d20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + "editMessage: message:Klick auf einen Button um zu würfeln, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=w20, id=custom_dice\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Vorteil, id=custom_dice\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=w20 Nachteil, id=custom_dice\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1d4, id=custom_dice\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w6, id=custom_dice\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w8, id=custom_dice\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w10, id=custom_dice\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1w12, id=custom_dice\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1w100, id=custom_dice\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w4, id=custom_dice\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w6, id=custom_dice\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w8, id=custom_dice\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w10, id=custom_dice\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2w12, id=custom_dice\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2w20, id=custom_dice\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" ] ] @@ -1554,8 +1554,8 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[DND5_ev [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=D20 ⇒ 13, descriptionOrContent=[13], fields=[], componentRowDefinitions=[], hasImage=false, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Dungeon & Dragons 5e ohne Würfelbildern, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Dungeon & Dragons 5e ohne Würfelbildern, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=w20 ⇒ 13, descriptionOrContent=D20: [13], fields=[], componentRowDefinitions=[], hasImage=false, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -1712,7 +1712,7 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[EXALTED de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[EXALTED_3ED_event2_de]=[ [ - "editMessage: message:Bitte wähle den Wert für **Würfelanzahl**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + "editMessage: message:Bitte wähle den Wert für **number of dice**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" ] ] @@ -1742,8 +1742,8 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[EXALTED [ "acknowledge", "deleteMessageById: 1", - "sendMessage: EmbedOrMessageDefinition(title=Würfelanzahl: 1 ⇒ 0, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)", - "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Exalted 3ed, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Exalted 3ed, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)", + "sendMessage: EmbedOrMessageDefinition(title=number of dice: 1 ⇒ 0, descriptionOrContent=, fields=[], componentRowDefinitions=[], hasImage=true, type=EMBED, userReference=true, sendToOtherChannelId=null)" ] ] @@ -2366,6 +2366,94 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[FORBIDD ] +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event1_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spookta..., id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event1_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spookta..., id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event1_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spookta..., id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event1_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Ghostbusters: A Frightfully Cheerful Roleplaying Game First Edition & Spookta..., id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event2_de]=[ + [ + "editMessage: message:Bitte wähle den Wert für **Dice Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event2_en]=[ + [ + "editMessage: message:Please select value for **Dice Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event2_fr]=[ + [ + "editMessage: message:Veuillez sélectionner la valeur de **Dice Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event2_pt_BR]=[ + [ + "editMessage: message:Por favor selecione um valor para **Dice Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=21, id=custom_parameter\u001Eid21\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=22, id=custom_parameter\u001Eid22\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=23, id=custom_parameter\u001Eid23\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=24, id=custom_parameter\u001Eid24\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event3_de]=[ + [ + "editMessage: message:invokingUser: Bitte wähle den Wert für **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Löschen, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event3_en]=[ + [ + "editMessage: message:invokingUser: Please select value for **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Clear, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event3_fr]=[ + [ + "editMessage: message:invokingUser: Veuillez sélectionner la valeur de **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Effacer, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[GHOSTBUSTERS_event3_pt_BR]=[ + [ + "editMessage: message:invokingUser: Por favor selecione um valor para **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Easy Job, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Normal Job, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Hard Job, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Impossible Job, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Limpar, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[HEROES_OF_CERULEA_event1_de]=[ [ "reply: commandString", @@ -4194,6 +4282,94 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SAVAGE_ ] +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event1_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Shadowdark, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event1_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Shadowdark, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event1_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Shadowdark, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event1_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Shadowdark, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event2_de]=[ + [ + "editMessage: message:Klick auf einen Button um die Würfel hinzuzufügen und dann auf Würfeln, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Würfeln, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Zurück, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=true, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event2_en]=[ + [ + "editMessage: message:Click the buttons to add dice to the set and then on Roll, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Roll, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Back, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=true, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event2_fr]=[ + [ + "editMessage: message:Cliquez sur les boutons pour ajouter des dés à l'ensemble, puis sur Lancer., buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rouleau, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Retour, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=true, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event2_pt_BR]=[ + [ + "editMessage: message:Clique nos botões para adicionar dados ao conjunto e então em Rolar, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rolar, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=true, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Voltar, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=true, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event3_de]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Würfeln, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Zurück, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event3_en]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Roll, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Back, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event3_fr]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rouleau, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Retour, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWDARK_event3_pt_BR]=[ + [ + "editMessage: message:invokingUser: d4, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d4, id=sum_custom_set\u001E1_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d6, id=sum_custom_set\u001E2_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d8, id=sum_custom_set\u001E3_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d10, id=sum_custom_set\u001E4_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d12, id=sum_custom_set\u001E5_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=d20, id=sum_custom_set\u001E6_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=d100, id=sum_custom_set\u001E7_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=1, id=sum_custom_set\u001E8_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=sum_custom_set\u001E9_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=sum_custom_set\u001E10_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=4, id=sum_custom_set\u001E11_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=sum_custom_set\u001E12_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Advantage, id=sum_custom_set\u001E13_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=D20 Disadvantage, id=sum_custom_set\u001E14_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Minus, id=sum_custom_set\u001E15_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Plus, id=sum_custom_set\u001E16_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Stats, id=sum_custom_set\u001E17_button\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null), ButtonDefinition(label=Split, id=sum_custom_set\u001E18_button\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=Rolar, id=sum_custom_set\u001Eroll\u001E00000000-0000-0000-0001-000000000001, style=SUCCESS, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=sum_custom_set\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null), ButtonDefinition(label=Voltar, id=sum_custom_set\u001Eback\u001E00000000-0000-0000-0001-000000000001, style=SECONDARY, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[SHADOWRUN_IMAGE_event1_de]=[ [ "reply: commandString", @@ -4846,6 +5022,94 @@ de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[VAMPIRE ] +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event1_de]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Warhammer Age of Sigmar: Soulbound, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event1_en]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Warhammer Age of Sigmar: Soulbound, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event1_fr]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Warhammer Age of Sigmar: Soulbound, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event1_pt_BR]=[ + [ + "reply: commandString", + "sendMessage: EmbedOrMessageDefinition(title=null, descriptionOrContent=custom name, fields=[], componentRowDefinitions=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Warhammer Age of Sigmar: Soulbound, id=starter\u001E00000000-0000-0000-0001-000000000001\u001E00000000-0000-0000-0001-000000000000, style=PRIMARY, disabled=false, emoji=null)])], hasImage=false, type=MESSAGE, userReference=false, sendToOtherChannelId=null)" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event2_de]=[ + [ + "editMessage: message:Bitte wähle den Wert für **Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event2_en]=[ + [ + "editMessage: message:Please select value for **Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event2_fr]=[ + [ + "editMessage: message:Veuillez sélectionner la valeur de **Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event2_pt_BR]=[ + [ + "editMessage: message:Por favor selecione um valor para **Pool**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=1, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=2, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=6, id=custom_parameter\u001Eid6\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=7, id=custom_parameter\u001Eid7\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=8, id=custom_parameter\u001Eid8\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=9, id=custom_parameter\u001Eid9\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=10, id=custom_parameter\u001Eid10\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=11, id=custom_parameter\u001Eid11\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=12, id=custom_parameter\u001Eid12\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=13, id=custom_parameter\u001Eid13\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=14, id=custom_parameter\u001Eid14\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=15, id=custom_parameter\u001Eid15\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=16, id=custom_parameter\u001Eid16\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=17, id=custom_parameter\u001Eid17\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=18, id=custom_parameter\u001Eid18\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=19, id=custom_parameter\u001Eid19\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=20, id=custom_parameter\u001Eid20\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event3_de]=[ + [ + "editMessage: message:invokingUser: Bitte wähle den Wert für **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Löschen, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event3_en]=[ + [ + "editMessage: message:invokingUser: Please select value for **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Clear, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event3_fr]=[ + [ + "editMessage: message:invokingUser: Veuillez sélectionner la valeur de **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Effacer, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + +de.janno.discord.bot.command.starter.StarterCommandMockTest.createPreset[WARHAMMER_AOS_event3_pt_BR]=[ + [ + "editMessage: message:invokingUser: Por favor selecione um valor para **Difficulty**, buttons=[ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=2, id=custom_parameter\u001Eid1\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=3, id=custom_parameter\u001Eid2\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=4, id=custom_parameter\u001Eid3\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=5, id=custom_parameter\u001Eid4\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null), ButtonDefinition(label=6, id=custom_parameter\u001Eid5\u001E00000000-0000-0000-0001-000000000001, style=PRIMARY, disabled=false, emoji=null)]), ComponentRowDefinition(buttonDefinitions=[ButtonDefinition(label=Limpar, id=custom_parameter\u001Eclear\u001E00000000-0000-0000-0001-000000000001, style=DANGER, disabled=false, emoji=null)])]" + ] +] + + de.janno.discord.bot.command.starter.StarterCommandMockTest.createWithUserNamed_newMassage[event1]=[ [ "reply: commandString", diff --git a/bot/src/test/java/de/janno/discord/bot/persistance/PersistenceManagerImplTest.java b/bot/src/test/java/de/janno/discord/bot/persistance/PersistenceManagerImplTest.java index dcf38aa3..d93f7520 100644 --- a/bot/src/test/java/de/janno/discord/bot/persistance/PersistenceManagerImplTest.java +++ b/bot/src/test/java/de/janno/discord/bot/persistance/PersistenceManagerImplTest.java @@ -1,10 +1,12 @@ package de.janno.discord.bot.persistance; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import reactor.core.publisher.Flux; import java.time.Duration; +import java.util.List; import java.util.Optional; import java.util.Set; import java.util.UUID; @@ -46,9 +48,19 @@ void deleteDataForMessage() { assertThat(underTest.getMessageData(2L, 5L)).isPresent(); } + @AfterEach + void cleanup() { + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "0"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "0"); + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + } + + @Test void markDeleteThenDeleteMessage() throws InterruptedException { - io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "100"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataIntervalInMilliSec", "50"); + io.avaje.config.Config.setProperty("db.deleteMarkMessageDataStartDelayMilliSec", "50"); + underTest = new PersistenceManagerImpl("jdbc:h2:mem:" + UUID.randomUUID(), null, null); UUID uuid = UUID.randomUUID(); underTest.saveMessageData(new MessageDataDTO(uuid, 1L, 2L, 4L, "testCommand", "testConfigClass", "configClass")); @@ -57,24 +69,102 @@ void markDeleteThenDeleteMessage() throws InterruptedException { Optional res = underTest.getMessageData(2L, 4L); assertThat(res.map(MessageDataDTO::getConfigUUID)).contains(uuid); - Thread.sleep(100); + Thread.sleep(120); Optional resAfterTime = underTest.getMessageData(2L, 4L); assertThat(resAfterTime.map(MessageDataDTO::getConfigUUID)).isEmpty(); } @Test - void deleteDataForChannel() { - underTest.saveMessageData(new MessageDataDTO(UUID.randomUUID(), 1L, 2L, 4L, "testCommand", "testConfigClass", "configClass")); - underTest.saveMessageData(new MessageDataDTO(UUID.randomUUID(), 1L, 2L, 5L, "testCommand", "testConfigClass", "configClass")); - underTest.saveMessageData(new MessageDataDTO(UUID.randomUUID(), 1L, 3L, 6L, "testCommand", "testConfigClass", "configClass")); - - Set res = underTest.deleteMessageDataForChannel(2L); + void deleteMessageDataForChannel() throws InterruptedException { + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + UUID config1 = UUID.randomUUID(); + UUID config2 = UUID.randomUUID(); + UUID config3 = UUID.randomUUID(); + underTest.saveMessageData(new MessageDataDTO(config1, 1L, 2L, 4L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config2, 1L, 2L, 5L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config3, 1L, 3L, 6L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageConfig(new MessageConfigDTO(config1, 1L, 2L, "testCommand", "testConfigClass", "configClass", null, null)); + underTest.saveMessageConfig(new MessageConfigDTO(config2, 1L, 2L, "testCommand", "testConfigClass", "configClass", null, null)); + underTest.saveMessageConfig(new MessageConfigDTO(config3, 1L, 3L, "testCommand", "testConfigClass", "configClass", null, null)); + Thread.sleep(10); + + Set res = underTest.deleteMessageDataForChannel(2L, null); + underTest.deleteOldMessageDataThatAreMarked(); assertThat(res).containsExactly(4L, 5L); assertThat(underTest.getMessageData(2L, 4L)).isEmpty(); assertThat(underTest.getMessageData(2L, 5L)).isEmpty(); assertThat(underTest.getMessageData(3L, 6L)).isPresent(); + //not delete by this methode but by deleteAllMessageConfigForChannel + assertThat(underTest.getMessageConfig(config1)).isPresent(); + assertThat(underTest.getMessageConfig(config2)).isPresent(); + assertThat(underTest.getMessageConfig(config3)).isPresent(); + } + + @Test + void deleteMessageDataForChannel_name() throws InterruptedException { + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + UUID config1 = UUID.randomUUID(); + UUID config2 = UUID.randomUUID(); + UUID config3 = UUID.randomUUID(); + underTest.saveMessageData(new MessageDataDTO(config1, 1L, 2L, 4L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config2, 1L, 2L, 5L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config3, 1L, 3L, 6L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageConfig(new MessageConfigDTO(config1, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", null)); + underTest.saveMessageConfig(new MessageConfigDTO(config2, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name2", null)); + underTest.saveMessageConfig(new MessageConfigDTO(config3, 1L, 3L, "testCommand", "testConfigClass", "configClass", "name1", null)); + Thread.sleep(10); + + Set res = underTest.deleteMessageDataForChannel(2L, "name1"); + assertThat(res).containsExactly(4L); + underTest.deleteOldMessageDataThatAreMarked(); + + assertThat(underTest.getMessageData(2L, 4L)).isEmpty(); + assertThat(underTest.getMessageData(2L, 5L)).isPresent(); + assertThat(underTest.getMessageData(3L, 6L)).isPresent(); + + //not delete by this methode but by deleteAllMessageConfigForChannel + assertThat(underTest.getMessageConfig(config1)).isPresent(); + assertThat(underTest.getMessageConfig(config2)).isPresent(); + assertThat(underTest.getMessageConfig(config3)).isPresent(); + } + + @Test + void deleteAllMessageConfigForChannel() { + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + UUID config1 = UUID.randomUUID(); + UUID config2 = UUID.randomUUID(); + UUID config3 = UUID.randomUUID(); + underTest.saveMessageConfig(new MessageConfigDTO(config1, 1L, 2L, "testCommand", "testConfigClass", "configClass", null, null)); + underTest.saveMessageConfig(new MessageConfigDTO(config2, 1L, 2L, "testCommand", "testConfigClass", "configClass", null, null)); + underTest.saveMessageConfig(new MessageConfigDTO(config3, 1L, 3L, "testCommand", "testConfigClass", "configClass", null, null)); + + + underTest.deleteAllMessageConfigForChannel(2L, null); + + assertThat(underTest.getMessageConfig(config1)).isEmpty(); + assertThat(underTest.getMessageConfig(config2)).isEmpty(); + assertThat(underTest.getMessageConfig(config3)).isPresent(); + } + + @Test + void deleteAllMessageConfigForChannel_name() { + io.avaje.config.Config.setProperty("db.delayMessageDataDeletionMs", "0"); + UUID config1 = UUID.randomUUID(); + UUID config2 = UUID.randomUUID(); + UUID config3 = UUID.randomUUID(); + underTest.saveMessageConfig(new MessageConfigDTO(config1, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", null)); + underTest.saveMessageConfig(new MessageConfigDTO(config2, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name2", null)); + underTest.saveMessageConfig(new MessageConfigDTO(config3, 1L, 3L, "testCommand", "testConfigClass", "configClass", "name1", null)); + + + underTest.deleteAllMessageConfigForChannel(2L, "name1"); + + + assertThat(underTest.getMessageConfig(config1)).isEmpty(); + assertThat(underTest.getMessageConfig(config2)).isPresent(); + assertThat(underTest.getMessageConfig(config3)).isPresent(); } @Test @@ -141,4 +231,53 @@ void saveWithForbiddenUserKey() { assertThrows(RuntimeException.class, () -> underTest.saveChannelConfig(channelConfigDTO1)); } + @Test + void getNamedCommandsChannel() { + underTest.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", null)); + underTest.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 2L, "testCommand", "testConfigClass", "configClass", "name2", null)); + underTest.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 3L, "testCommand", "testConfigClass", "configClass", "name1", null)); + underTest.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", null)); + underTest.saveMessageConfig(new MessageConfigDTO(UUID.randomUUID(), 1L, 2L, "testCommand", "testConfigClass", "configClass", null, null)); + + + List res = underTest.getNamedCommandsChannel(2L); + + + assertThat(res).containsExactly("name1", "name2"); + + } + + @Test + void getLastUsedNamedCommandsOfUserAndGuild() { + UUID config1 = UUID.randomUUID(); + UUID config2 = UUID.randomUUID(); + UUID config3 = UUID.randomUUID(); + UUID config4 = UUID.randomUUID(); + UUID config5 = UUID.randomUUID(); + UUID config6 = UUID.randomUUID(); + UUID config7 = UUID.randomUUID(); + underTest.saveMessageData(new MessageDataDTO(config1, 1L, 2L, 4L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config2, 1L, 2L, 5L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config3, 1L, 3L, 6L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config4, 1L, 2L, 7L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config5, 1L, 2L, 8L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config6, 3L, 2L, 9L, "testCommand", "testStateClass", "stateData")); + underTest.saveMessageData(new MessageDataDTO(config7, 3L, 2L, 10L, "testCommand", "testStateClass", "stateData")); + + underTest.saveMessageConfig(new MessageConfigDTO(config1, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config2, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name2", 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config3, 1L, 3L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config4, 1L, 2L, "testCommand", "testConfigClass", "configClass", "name1", 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config5, 1L, 2L, "testCommand", "testConfigClass", "configClass", null, 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config6, 3L, 2L, "testCommand", "testConfigClass", "configClass", null, 0L)); + underTest.saveMessageConfig(new MessageConfigDTO(config7, 3L, 3L, "testCommand", "testConfigClass", "configClass", "name3", 0L)); + + + List res = underTest.getLastUsedNamedCommandsOfUserAndGuild(0L, 1L); + + assertThat(res.stream().map(SavedNamedConfigId::name)).containsExactly("name1", "name2", "name3"); + assertThat(res.stream().map(SavedNamedConfigId::id)).containsExactly(config4, config2, config7); + + } + } \ No newline at end of file diff --git a/bot/src/test/resources/application-test.yaml b/bot/src/test/resources/application-test.yaml index 4274c688..415bf98e 100644 --- a/bot/src/test/resources/application-test.yaml +++ b/bot/src/test/resources/application-test.yaml @@ -1,15 +1,16 @@ db: - url: fjdbc:h2:mem:test_mem + url: jdbc:h2:mem:test_mem user: password: + deleteMarkMessageDataIntervalInMilliSec: 0 + deleteMarkMessageDataStartDelayMilliSec: 0 + delayMessageDataDeletionMs: 0 metric: url: localhost port: 9090 command: - minDelayBetweenButtonMessagesMs: 10 - delayMessageDataDeletionMs: 10 fetch.delayMs: 0 - clear.messageDeleteDelay: 10 + clear.messageDeleteDelay: 1000 diceEvaluator: keepChildrenRolls: false cacheSize: 0 \ No newline at end of file diff --git a/config.yaml b/config.yaml index 36c73d3a..9fb4dafa 100644 --- a/config.yaml +++ b/config.yaml @@ -14,6 +14,8 @@ db: user: password: deleteMarkMessageDataIntervalInMilliSec: 10000 + deleteMarkMessageDataStartDelayMilliSec: 0 + delayMessageDataDeletionMs: 10000 metric: url: localhost port: 8080 @@ -25,6 +27,5 @@ diceEvaluator: errorContextSize: 6 command: minDelayBetweenButtonMessagesMs: 1000 - delayMessageDataDeletionMs: 10000 fetch.delayMs: 60000 clear.messageDeleteDelay: 1000 \ No newline at end of file diff --git a/discord-connector/api/src/main/java/de/janno/discord/connector/api/Requester.java b/discord-connector/api/src/main/java/de/janno/discord/connector/api/Requester.java index e71e889d..410e4bbf 100644 --- a/discord-connector/api/src/main/java/de/janno/discord/connector/api/Requester.java +++ b/discord-connector/api/src/main/java/de/janno/discord/connector/api/Requester.java @@ -26,7 +26,7 @@ public String toLogString() { .or(() -> Optional.ofNullable(userName)) .orElse(""); if (configUUID != null) { - return "%s:%s".formatted(configUUID, name); + return "%s: %s".formatted(configUUID, name); } return name; }