From a3be6fd8ed84e57ce3a094db78b2e7dc794ad570 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 25 Mar 2021 01:30:02 +0000 Subject: [PATCH 1/4] ask about split method --- .../discord_bot_example/Bot.java | 1 + .../jointheleague/modules/DndCompanion.java | 35 ++++++++++++++++++ .../org/jointheleague/modules/MazeGame.java | 2 +- src/main/resources/.config.json.swp | Bin 0 -> 12288 bytes src/main/resources/config.json | 4 +- 5 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 src/main/java/org/jointheleague/modules/DndCompanion.java create mode 100644 src/main/resources/.config.json.swp diff --git a/src/main/java/org/jointheleague/discord_bot_example/Bot.java b/src/main/java/org/jointheleague/discord_bot_example/Bot.java index 06e330bf..8a09de54 100644 --- a/src/main/java/org/jointheleague/discord_bot_example/Bot.java +++ b/src/main/java/org/jointheleague/discord_bot_example/Bot.java @@ -194,6 +194,7 @@ public void connect(boolean printInvite) { api.addMessageCreateListener(new ScreenCapture(channelName)); api.addMessageCreateListener(new StarSignSeeker(channelName)); api.addMessageCreateListener(new War(channelName)); + api.addMessageCreateListener(new DndCompanion(channelName)); //api.addMessageCreateListener(new Depression(channelName)); } } diff --git a/src/main/java/org/jointheleague/modules/DndCompanion.java b/src/main/java/org/jointheleague/modules/DndCompanion.java new file mode 100644 index 00000000..41255b0b --- /dev/null +++ b/src/main/java/org/jointheleague/modules/DndCompanion.java @@ -0,0 +1,35 @@ +package org.jointheleague.modules; + +import org.javacord.api.event.message.MessageCreateEvent; + +import net.aksingh.owmjapis.api.APIException; + +public class DndCompanion extends CustomMessageCreateListener { + + private final static String COMMAND = "/ask"; + + public DndCompanion(String channelName) { + super(channelName); + } + + @Override + public void handle(MessageCreateEvent event) throws APIException { + // TODO Auto-generated method stub + if (event.getMessageContent().contains(COMMAND)) { + String cmd = event.getMessageContent().replaceAll(" ", "").replace("/ask", ""); + if (cmd.contains("links")) { + cmd = event.getMessageContent().replaceAll(" ", "").replace("/ask links", ""); + if (cmd.equals("")) { + event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" + + "character sheets: dndbeyond.com" + "\n" + "this website"); + } else if (cmd.equals("table")) { + event.getChannel().sendMessage("ro1120.net for the table :)"); + } else if (cmd.equals("character sheets")) { + event.getChannel().sendMessage("dndbeyond.com for the table :)"); + } else if (cmd.equals("discord")) { + event.getChannel().sendMessage("this website for discord calls"); + } + } + } + } +} diff --git a/src/main/java/org/jointheleague/modules/MazeGame.java b/src/main/java/org/jointheleague/modules/MazeGame.java index 76e1f77c..f4578587 100644 --- a/src/main/java/org/jointheleague/modules/MazeGame.java +++ b/src/main/java/org/jointheleague/modules/MazeGame.java @@ -30,7 +30,7 @@ public void handle(MessageCreateEvent event) throws APIException { System.out.println("Heard message: " + event.getMessageContent()); if (event.getMessageContent().contains(COMMAND) && !event.getMessageAuthor().isBotUser()) { if (event.getMessageContent().contains("start") || event.getMessageContent().contains("load")) { - String target = event.getMessageContent().substring(11).strip(); + String target = event.getMessageContent().substring(11).trim(); try { if(!target.equalsIgnoreCase("upload")) { diff --git a/src/main/resources/.config.json.swp b/src/main/resources/.config.json.swp new file mode 100644 index 0000000000000000000000000000000000000000..8c2e41a7376af5833a48435698d95f8dece2f9b2 GIT binary patch literal 12288 zcmeI&JxT*X6u|Kpv9J+EFR+earP;VH9Y>vJTS6?0?7#KTp3(&|8zO~sWi|a*B#BPj zX-DgBH=VTizG@gB=3cvEa1b7Sq2p1O+qf{^jSFpjteqX^7tJg0?4(w#A%MU%0^@SH zwY%8cNw!A+qD5I_I{1Q0*~0R#}3ae?x-ArIjWbM-yu>)iN}>ym^3 z0tg_000IagfB*srAb`w!Uc#up|9`*#e}wuyjMsYYxmqU>KmY**5I_I{ w1Q0*~0R#|0;J*d#eh-O4sM1{U2}&6KK#sy#N3J literal 0 HcmV?d00001 diff --git a/src/main/resources/config.json b/src/main/resources/config.json index 0b58c8d9..a12ff01d 100644 --- a/src/main/resources/config.json +++ b/src/main/resources/config.json @@ -1,4 +1,4 @@ { - "channels": ["channelName"], - "token": "discordToken" + "channels": ["samson"], + "token": "ODI0NDQxMTIzMDUzMTA5MzAw.YFvaoQ.MABtrZ1qQiXmD_qIHYo_-i_lYSc" } From 80b51f8a19b96f7c9d6c76e159f62c3ac0bb36c2 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 01:35:27 +0000 Subject: [PATCH 2/4] finish helpembed, ask how to fill it out with new lines properly and why its erroring --- .../jointheleague/modules/DndCompanion.java | 38 +++++++++++++------ 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/jointheleague/modules/DndCompanion.java b/src/main/java/org/jointheleague/modules/DndCompanion.java index 41255b0b..0bf7962e 100644 --- a/src/main/java/org/jointheleague/modules/DndCompanion.java +++ b/src/main/java/org/jointheleague/modules/DndCompanion.java @@ -1,5 +1,9 @@ package org.jointheleague.modules; +import java.util.Random; + +import javax.swing.JOptionPane; + import org.javacord.api.event.message.MessageCreateEvent; import net.aksingh.owmjapis.api.APIException; @@ -10,25 +14,37 @@ public class DndCompanion extends CustomMessageCreateListener { public DndCompanion(String channelName) { super(channelName); + helpEmbed = (COMMAND, "/ask roll (number to mod) (modifier) \n /ask link (discord/roll20/character sheet)"); } @Override public void handle(MessageCreateEvent event) throws APIException { // TODO Auto-generated method stub - if (event.getMessageContent().contains(COMMAND)) { - String cmd = event.getMessageContent().replaceAll(" ", "").replace("/ask", ""); - if (cmd.contains("links")) { - cmd = event.getMessageContent().replaceAll(" ", "").replace("/ask links", ""); - if (cmd.equals("")) { - event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" - + "character sheets: dndbeyond.com" + "\n" + "this website"); - } else if (cmd.equals("table")) { + String[] str = event.getMessageContent().split(" "); + if (str[0].equals(COMMAND)) { + if (str.length <= 2) { + event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" + + "character sheets: dndbeyond.com" + "\n" + "this website"); + } + if (str.length >= 2 && str[1].equals("links")) { + if (str[2].equals("table")) { event.getChannel().sendMessage("ro1120.net for the table :)"); - } else if (cmd.equals("character sheets")) { - event.getChannel().sendMessage("dndbeyond.com for the table :)"); - } else if (cmd.equals("discord")) { + } else if (str[2].equals("character") && str[3].equals("sheets")) { + event.getChannel().sendMessage("dndbeyond.com for the characters. They're not alive though :L"); + } else if (str[2].equals("discord")) { event.getChannel().sendMessage("this website for discord calls"); } + } else if (str.length >= 3 && str[1].equals("roll")) { + Random rand = new Random(); + int max = rand.nextInt(Integer.parseInt(str[2])); + int mod = Integer.parseInt(str[3]); + int finale = max + mod; + event.getChannel().sendMessage("your number is: " + finale); + } else if (str[1].equals("help")) { + event.getChannel(); + if (str.length <= 2) { + event.getChannel().sendMessage(""); + } } } } From f86f68e6a0d31182bc05336739ddac1bfa83c7c8 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 8 Apr 2021 01:05:25 +0000 Subject: [PATCH 3/4] finished the function --- .../discord_bot_example/Bot.java | 10 +++-- .../jointheleague/modules/DndCompanion.java | 40 ++++++++++++------- src/main/resources/config.json | 4 +- 3 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/main/java/org/jointheleague/discord_bot_example/Bot.java b/src/main/java/org/jointheleague/discord_bot_example/Bot.java index 8a09de54..afa1cfcc 100644 --- a/src/main/java/org/jointheleague/discord_bot_example/Bot.java +++ b/src/main/java/org/jointheleague/discord_bot_example/Bot.java @@ -47,9 +47,9 @@ public void connect(boolean printInvite) { api.addMessageCreateListener(dl); helpListener.addHelpEmbed(dl.getHelpEmbed()); - CurrencyConverter cc = new CurrencyConverter(channelName); - api.addMessageCreateListener(cc); - helpListener.addHelpEmbed(cc.getHelpEmbed()); + //CurrencyConverter cc = new CurrencyConverter(channelName); + //api.addMessageCreateListener(cc); + //helpListener.addHelpEmbed(cc.getHelpEmbed()); ToDoList list = new ToDoList(channelName); api.addMessageCreateListener(list); @@ -147,6 +147,9 @@ public void connect(boolean printInvite) { api.addMessageCreateListener(depress); helpListener.addHelpEmbed(depress.getHelpEmbed()); + DndCompanion dc = new DndCompanion(channelName); + api.addMessageCreateListener(dc); + helpListener.addHelpEmbed(dc.getHelpEmbed()); //old way to add listeners api.addMessageCreateListener(helpListener); @@ -194,7 +197,6 @@ public void connect(boolean printInvite) { api.addMessageCreateListener(new ScreenCapture(channelName)); api.addMessageCreateListener(new StarSignSeeker(channelName)); api.addMessageCreateListener(new War(channelName)); - api.addMessageCreateListener(new DndCompanion(channelName)); //api.addMessageCreateListener(new Depression(channelName)); } } diff --git a/src/main/java/org/jointheleague/modules/DndCompanion.java b/src/main/java/org/jointheleague/modules/DndCompanion.java index 0bf7962e..70795322 100644 --- a/src/main/java/org/jointheleague/modules/DndCompanion.java +++ b/src/main/java/org/jointheleague/modules/DndCompanion.java @@ -1,10 +1,13 @@ package org.jointheleague.modules; +import java.io.FileWriter; +import java.io.IOException; import java.util.Random; import javax.swing.JOptionPane; import org.javacord.api.event.message.MessageCreateEvent; +import org.jointheleague.modules.pojo.HelpEmbed; import net.aksingh.owmjapis.api.APIException; @@ -14,7 +17,7 @@ public class DndCompanion extends CustomMessageCreateListener { public DndCompanion(String channelName) { super(channelName); - helpEmbed = (COMMAND, "/ask roll (number to mod) (modifier) \n /ask link (discord/roll20/character sheet)"); + helpEmbed = new HelpEmbed(COMMAND, "/ask roll followed by a number to role between and a modifier \n /ask link pick from the following 3 choices: discord, character sheets or table"); } @Override @@ -22,28 +25,37 @@ public void handle(MessageCreateEvent event) throws APIException { // TODO Auto-generated method stub String[] str = event.getMessageContent().split(" "); if (str[0].equals(COMMAND)) { - if (str.length <= 2) { - event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" - + "character sheets: dndbeyond.com" + "\n" + "this website"); - } - if (str.length >= 2 && str[1].equals("links")) { +// if (str.length <= 2 && str.length != 1) { +// event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" +// + "character sheets: dndbeyond.com" + "\n" + "this website"); +// } + if (str.length >= 3 && str[1].equals("links")) { if (str[2].equals("table")) { event.getChannel().sendMessage("ro1120.net for the table :)"); - } else if (str[2].equals("character") && str[3].equals("sheets")) { + } else if (str.length >= 4 && str[2].equals("character") && str[3].equals("sheets")) { event.getChannel().sendMessage("dndbeyond.com for the characters. They're not alive though :L"); } else if (str[2].equals("discord")) { event.getChannel().sendMessage("this website for discord calls"); + } else if(str[2].equals("all")){ + event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" + + "character sheets: dndbeyond.com" + "\n" + "this website"); } - } else if (str.length >= 3 && str[1].equals("roll")) { + } else if (str.length >= 4 && str[1].equals("roll")) { Random rand = new Random(); - int max = rand.nextInt(Integer.parseInt(str[2])); + int max = rand.nextInt(Integer.parseInt(str[2])) + 1; int mod = Integer.parseInt(str[3]); int finale = max + mod; - event.getChannel().sendMessage("your number is: " + finale); - } else if (str[1].equals("help")) { - event.getChannel(); - if (str.length <= 2) { - event.getChannel().sendMessage(""); + event.getChannel().sendMessage("your number is: "+ max + " + " + mod + " = " + finale); + } else if (str[1].equals("advice")) { + try { + FileWriter fw = new FileWriter("src/main/java/org/jointheleague/modules/DndCompanionExtras"); + for(int i = 2; i < str.length; i++) { + fw.write(str[i]); + fw.close(); + } + } catch (IOException e) { + // TODO Auto-generated catch block + e.printStackTrace(); } } } diff --git a/src/main/resources/config.json b/src/main/resources/config.json index a12ff01d..4dd58050 100644 --- a/src/main/resources/config.json +++ b/src/main/resources/config.json @@ -1,4 +1,4 @@ { - "channels": ["samson"], - "token": "ODI0NDQxMTIzMDUzMTA5MzAw.YFvaoQ.MABtrZ1qQiXmD_qIHYo_-i_lYSc" + "channels": [""], + "token": "" } From d0cbefdb512b29147235ffbe60e0566aa3e88807 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 15 Apr 2021 00:42:09 +0000 Subject: [PATCH 4/4] hopefully finished dnd companion --- .../jointheleague/discord_bot_example/Bot.java | 1 + .../org/jointheleague/modules/DndCompanion.java | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/jointheleague/discord_bot_example/Bot.java b/src/main/java/org/jointheleague/discord_bot_example/Bot.java index afa1cfcc..443e87c0 100644 --- a/src/main/java/org/jointheleague/discord_bot_example/Bot.java +++ b/src/main/java/org/jointheleague/discord_bot_example/Bot.java @@ -143,6 +143,7 @@ public void connect(boolean printInvite) { UnbeatableRockPaperScissors rps = new UnbeatableRockPaperScissors(channelName); api.addMessageCreateListener(rps); helpListener.addHelpEmbed(rps.getHelpEmbed()); + Depression depress = new Depression(channelName); api.addMessageCreateListener(depress); helpListener.addHelpEmbed(depress.getHelpEmbed()); diff --git a/src/main/java/org/jointheleague/modules/DndCompanion.java b/src/main/java/org/jointheleague/modules/DndCompanion.java index 70795322..98deaa5e 100644 --- a/src/main/java/org/jointheleague/modules/DndCompanion.java +++ b/src/main/java/org/jointheleague/modules/DndCompanion.java @@ -31,21 +31,28 @@ public void handle(MessageCreateEvent event) throws APIException { // } if (str.length >= 3 && str[1].equals("links")) { if (str[2].equals("table")) { - event.getChannel().sendMessage("ro1120.net for the table :)"); + event.getChannel().sendMessage("httpS://ro1120.net for the table :)"); } else if (str.length >= 4 && str[2].equals("character") && str[3].equals("sheets")) { event.getChannel().sendMessage("dndbeyond.com for the characters. They're not alive though :L"); } else if (str[2].equals("discord")) { event.getChannel().sendMessage("this website for discord calls"); } else if(str[2].equals("all")){ - event.getChannel().sendMessage("the links are: " + "\n" + "table: roll20.net" + "\n" + event.getChannel().sendMessage("the links are: " + "\n" + "table: httpS://roll20.net" + "\n" + "character sheets: dndbeyond.com" + "\n" + "this website"); } } else if (str.length >= 4 && str[1].equals("roll")) { Random rand = new Random(); - int max = rand.nextInt(Integer.parseInt(str[2])) + 1; - int mod = Integer.parseInt(str[3]); - int finale = max + mod; + int max = 0; + int mod = 0; + int finale = 0; + if(Integer.parseInt(str[2]) <= 0) { + event.getChannel().sendMessage("you can't do a number less then 0"); + } else { + max = rand.nextInt(Integer.parseInt(str[2])) + 1; + mod = Integer.parseInt(str[3]); + finale = max + mod; event.getChannel().sendMessage("your number is: "+ max + " + " + mod + " = " + finale); + } } else if (str[1].equals("advice")) { try { FileWriter fw = new FileWriter("src/main/java/org/jointheleague/modules/DndCompanionExtras");