iBlitzkriegi / Vixio

Vixio, The Skript Addon made to fit all of your Discord needs.
http://www.vixio.space
40 stars 28 forks source link

[Suggestion] Reaction on Message Builder #188

Closed Zyphrono closed 5 years ago

Zyphrono commented 5 years ago

[This is a suggestion]

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] I'm currently creating a bug report feature for in my discord bot. But, I'm trying to create embed messages with a message builder and later add reactions to it. Turns out, it doesn't support it so users need to add reactions themselves -_-

Describe the solution you'd like A clear and concise description of what you want to happen. Add support to add reactions to embed messages created by a message builder.

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered. Users need to add reactions themselves.

Additional context Add any other context or screenshots about the feature request here.

Olyno commented 5 years ago

You add a reaction to a message. A message contains some text (the content of the message) and can contain a embed. If you try to add a reaction to a message that doesn't exist in discord (so a message build) it will not work.

Zyphrono commented 5 years ago

You add a reaction to a message. A message contains some text (the content of the message) and can contain a embed. If you try to add a reaction to a message that doesn't exist in discord (so a message build) it will not work.

Thank you very much for your reply. I'm currently doing it this way: create embed: add field named "Bug Report: %{bugmessagenumber}%" with value "%arg-1%" to the embed add field named "Verstuurd door" with value "%mention tag of event-member%" to the embed set color of the embed to blue set {embedmessage.%{bugmessagenumber}%} to last made embed set the timestamp of {embedmessage.%{bugmessagenumber}%} to now send the last created embed to event-channel with "Thunder" wait 0.5 seconds add reactions "white_check_mark" and "x" to reactions of {embedmessage.%{bugmessagenumber}%}

Can you provide a bit of code to do it differently? Thank you very much :) (And yes, the tabs are placed correct but isn't in the reply)

Olyno commented 5 years ago

you must add with "Thunder" at the end of your line add reaction....

Zyphrono commented 5 years ago

you must add with "Thunder" at the end of your line add reaction....

  • I didn't understand why you store the embed in a global var if you don't reuse it.

It's added to a global var as I'm creating a manager to delete / edit these messages later on. Adding with "Thunder" gives exactly the same issue.

Error: [00:20:25 ERROR]: #!#! Stack trace: [00:20:25 ERROR]: #!#! java.lang.UnsupportedOperationException: This operation is not supported for Messages that were created by a MessageBuilder! [00:20:25 ERROR]: #!#! at net.dv8tion.jda.core.entities.impl.DataMessage.unsupported(DataMessage.java:85)

Olyno commented 5 years ago

Please put the whole error, and not just a part.

Zyphrono commented 5 years ago

Please put the whole error, and not just a part.

00:20:25 ERROR: #!#! Stack trace: 00:20:25 ERROR: #!#! java.lang.UnsupportedOperationException: This operation is not supported for Messages that were created by a MessageBuilder! 00:20:25 ERROR: #!#! at net.dv8tion.jda.core.entities.impl.DataMessage.unsupported(DataMessage.java:85) 00:20:25 ERROR: #!#! at net.dv8tion.jda.core.entities.impl.AbstractMessage.getTextChannel(AbstractMessage.java:261) 00:20:25 ERROR: #!#! at me.iblitzkriegi.vixio.expressions.message.emoji.ExprReactions.lambda$change$2(ExprReactions.java:97) 00:20:25 ERROR: #!#! at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) 00:20:25 ERROR: #!#! at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) 00:20:25 ERROR: #!#! at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:948) 00:20:25 ERROR: #!#! at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482) 00:20:25 ERROR: #!#! at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472) 00:20:25 ERROR: #!#! at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) 00:20:25 ERROR: #!#! at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) 00:20:25 ERROR: #!#! at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) 00:20:25 ERROR: #!#! at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) 00:20:25 ERROR: #!#! at me.iblitzkriegi.vixio.util.skript.EasyMultiple.change(EasyMultiple.java:51) 00:20:25 ERROR: #!#! at me.iblitzkriegi.vixio.expressions.message.emoji.ExprReactions.change(ExprReactions.java:95) 00:20:25 ERROR: #!#! at me.iblitzkriegi.vixio.changers.EffChange.execute(EffChange.java:309) 00:20:25 ERROR: #!#! at ch.njol.skript.lang.Effect.run(Effect.java:52) 00:20:25 ERROR: #!#! at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:61) 00:20:25 ERROR: #!#! at ch.njol.skript.lang.TriggerItem.walk(TriggerItem.java:89) 00:20:25 ERROR: #!#! at ch.njol.skript.effects.Delay$1.run(Delay.java:109) 00:20:25 ERROR: #!#! at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:64) 00:20:25 ERROR: #!#! at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:423) 00:20:25 ERROR: #!#! at net.minecraft.server.v1_12_R1.MinecraftServer.D(MinecraftServer.java:840) 00:20:25 ERROR: #!#! at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:423) 00:20:25 ERROR: #!#! at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:774) 00:20:25 ERROR: #!#! at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:666) 00:20:25 ERROR: #!#! at java.lang.Thread.run(Thread.java:748)

00:20:25 ERROR: #!#! Version Information: 00:20:25 ERROR: #!#! Skript: 2.4-beta4 (latest) 00:20:25 ERROR: #!#! Flavor: skriptlang-github 00:20:25 ERROR: #!#! Date: 2019-07-28 00:20:25 ERROR: #!#! Bukkit: 1.12.2-R0.1-SNAPSHOT 00:20:25 ERROR: #!#! Minecraft: 1.12.2 00:20:25 ERROR: #!#! Java: 1.8.0_212 (OpenJDK 64-Bit Server VM 25.212-b01) 00:20:25 ERROR: #!#! OS: Linux amd64 4.15.0-55-generic

00:20:25 ERROR: #!#! Server platform: Paper

00:20:25 ERROR: #!#! Current node: null 00:20:25 ERROR: #!#! Current item: add emoji named ("white_check_mark" and "x")[class java.lang.String] to the reactions of {embedmessage.%{bugmessagenumber}(as java.lang.Object)%}(as me.iblitzkriegi.vixio.util.UpdatingMessage) with "Thunder" 00:20:25 ERROR: #!#! Current trigger: discord command bugreport (simple event) (bot.sk, line -1)

00:20:25 ERROR: #!#! Thread: Server thread

00:20:25 ERROR: #!#! Language: english 00:20:25 ERROR: #!#! Link parse mode: DISABLED

00:20:25 ERROR: #!#! End of Error.

GamingGeek commented 5 years ago

You need to store the message and add the reaction to that...

send the last created embed to event-channel with "Thunder" and store it in {_e}

and then you would use {_e}