Skip to content

Forum Tags#63

Open
MC-Samuel wants to merge 2 commits intoDenizenScript:masterfrom
MC-Samuel:forum_post_tags
Open

Forum Tags#63
MC-Samuel wants to merge 2 commits intoDenizenScript:masterfrom
MC-Samuel:forum_post_tags

Conversation

@MC-Samuel
Copy link
Copy Markdown
Contributor

// -->
tagProcessor.registerMechanism("forum_post_tags", false, (object, mechanism) -> {
if (!(object.getChannel() instanceof ThreadChannel threadChannel)) {
mechanism.echoError("Cannot adjust 'forum_post_tags' tag: this channel is not a forum post.");
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mechanism*, but the error already automatically has the whole Error while adjusting mechanism 'X' on 'OBJECT': in it, you only really need the actual error message.

ListTag input = mechanism.valueAsType(ListTag.class);
int size;
if (input.size() > 5) {
mechanism.echoError("The 'DiscordChannelTag.forum_post_tags' mechanism has a maximum input of 5 tag ids.");
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, the mechanism name and everything is already automatically in the error message (or should be at least).

// <--[mechanism]
// @object DiscordChannelTag
// @name forum_post_tags
// @input ListTag
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All of these would be ListTag(Number) I believe?

}
Collection<ForumTagSnowflake> forumTags = new ArrayList<>(size);
for (int i = 0; i < size; i++) {
forumTags.add(ForumTagSnowflake.fromId(input.get(i)));
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can check if there's precedence one way or the other in the rest of dDiscordBot, but might better if we handle the long parsing ourselves (so that invalid input is a nice Denizen error and not an exception).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants