diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 00000000..26d33521
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# Default ignored files
+/shelf/
+/workspace.xml
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 00000000..5b2e27ba
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 00000000..aa00ffab
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 00000000..712ab9d9
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 00000000..ab42f915
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 00000000..797acea5
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 00000000..35eb1ddf
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
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 0dac01fb..e2604111 100644
--- a/src/main/java/org/jointheleague/discord_bot_example/Bot.java
+++ b/src/main/java/org/jointheleague/discord_bot_example/Bot.java
@@ -51,9 +51,9 @@ public void connect(boolean printInvite) {
api.addMessageCreateListener(list);
helpListener.addHelpEmbed(list.getHelpEmbed());
- MazeGame maze = new MazeGame(channelName);
- api.addMessageCreateListener(maze);
- helpListener.addHelpEmbed(maze.getHelpEmbed());
+// MazeGame maze = new MazeGame(channelName);
+// api.addMessageCreateListener(maze);
+// helpListener.addHelpEmbed(maze.getHelpEmbed());
MarsPictures marsPictures = new MarsPictures(channelName);
api.addMessageCreateListener(marsPictures);
@@ -160,9 +160,21 @@ public void connect(boolean printInvite) {
api.addMessageCreateListener(depress);
helpListener.addHelpEmbed(depress.getHelpEmbed());
- Depression depress = new Depression(channelName);
- api.addMessageCreateListener(depress);
- helpListener.addHelpEmbed(depress.getHelpEmbed());
+ LeagueChamp leagueChamp = new LeagueChamp(channelName);
+ api.addMessageCreateListener(leagueChamp);
+ helpListener.addHelpEmbed(leagueChamp.getHelpEmbed());
+
+ GuessTheNumber guessNum = new GuessTheNumber(channelName);
+ api.addMessageCreateListener(guessNum);
+ helpListener.addHelpEmbed(guessNum.getHelpEmbed());
+
+ NumberVs numberVs = new NumberVs(channelName);
+ api.addMessageCreateListener(numberVs);
+ helpListener.addHelpEmbed(numberVs.getHelpEmbed());
+
+// Depression depress = new Depression(channelName);
+// api.addMessageCreateListener(depress);
+// helpListener.addHelpEmbed(depress.getHelpEmbed());
// old way to add listeners
api.addMessageCreateListener(helpListener);
@@ -208,5 +220,8 @@ public void connect(boolean printInvite) {
api.addMessageCreateListener(new RandomCase(channelName));
api.addMessageCreateListener(new GetTime(channelName));
api.addMessageCreateListener(new ScreenCapture(channelName));
+ api.addMessageCreateListener(new LeagueChamp(channelName));
+ api.addMessageCreateListener(new GuessTheNumber(channelName));
+ api.addMessageCreateListener(new NumberVs(channelName));
}
}
\ No newline at end of file
diff --git a/src/main/java/org/jointheleague/modules/GuessTheNumber.java b/src/main/java/org/jointheleague/modules/GuessTheNumber.java
new file mode 100644
index 00000000..fa5cf7b8
--- /dev/null
+++ b/src/main/java/org/jointheleague/modules/GuessTheNumber.java
@@ -0,0 +1,45 @@
+package org.jointheleague.modules;
+
+import java.util.Random;
+
+import org.javacord.api.event.message.MessageCreateEvent;
+
+public class GuessTheNumber extends CustomMessageCreateListener {
+
+ int range = 100;
+ int randomNum = 0;
+
+ public GuessTheNumber(String channelName) {
+ super(channelName);
+ // TODO Auto-generated constructor stub
+ }
+
+ private static final String COMMAND = "!GuessNumber";
+
+ @Override
+ public void handle(MessageCreateEvent event) {
+ // TODO Auto-generated method stub
+ Random rand = new Random();
+ if (event.getMessageContent().equals("!GuessNumber help")
+ || event.getMessageContent().equals("!GuessNumber Help")) {
+ event.getChannel().sendMessage(
+ "Guess the Number is a guessing game to see if you can guess the number the computer has. The number is generated randomly between 1-100 by default. To change parameters, do !GuessNumber range (number)");
+ } else if (event.getMessageContent().startsWith("!GuessNumber range")) {
+ String str = event.getMessageContent(); str = str.replace("!GuessNumber range ", "");
+ // System.out.println("LINE" + str);
+ int number = Integer.parseInt(str); range = number;
+ event.getChannel().sendMessage("Range has been changed to " + range);
+ } else if (event.getMessageContent().startsWith("!GuessNumber")) {
+ String str = event.getMessageContent();
+ str = str.replace("!GuessNumber ", "");
+ int number = Integer.parseInt(str);
+ randomNum = rand.nextInt(range);
+ if (number == randomNum) {
+ event.getChannel().sendMessage("Nice, you guessed the number, which was " + randomNum);
+ }
+ else { event.getChannel().sendMessage("Nope, bad guess! The number you guessed was, " + number + " but the answer was " + randomNum);}
+ }
+
+ }
+
+}
diff --git a/src/main/java/org/jointheleague/modules/LeagueChamp.java b/src/main/java/org/jointheleague/modules/LeagueChamp.java
new file mode 100644
index 00000000..5b525cdb
--- /dev/null
+++ b/src/main/java/org/jointheleague/modules/LeagueChamp.java
@@ -0,0 +1,44 @@
+package org.jointheleague.modules;
+
+import java.util.Random;
+
+import org.javacord.api.event.message.MessageCreateEvent;
+
+import net.aksingh.owmjapis.api.APIException;
+
+public class LeagueChamp extends CustomMessageCreateListener {
+
+ final String[] champions = {"Aatrox", "Ekko", "Jinx", "Miss Fortune", "Shen", "Varus", "Ahri", "Akali", "Evelynn", "Karma", "Morgana", "Singed", "Veigar",
+ "Ahri", "Elise", "Kalista", "Mordekaiser", "Shyvana", "Vayne", "Alistar", "Ezreal", "Karthus", "Nami", "Sion", "Vel'Koz", "Amumu", "Fiddlesticks", "Kassadin", "Nasus", "Sivir", "Vi", "Anivia", "Fiora", "Katarina", "Nautilus",
+ "Skarner", "Viktor", "Annie", "Fizz", "Kayle", "Nidalee", "Sona", "Vladmir", "Ashe", "Galio", "Kennen", "Nocturne", "Soraka", "Volibear", "Aurelion Sol", "Gangplank", "Kha'Zix", "Nunu", "Swain", "Warwick", "Azir", "Garen", "Kindred", "Olaf",
+ "Syndra", "Wukong", "Bard", "Gnar", "Kled", "Orianna", "Tahm Kench", "Xerath", "Blitzcrank", "Gragas", "Kog'Maw", "Pantheon", "Taliyah", "Xin Zhao", "Brand", "Graves",
+ "Leblanc", "Poppy", "Talon", "Yasuo", "Braum", "Hecarim", "Lee sin", "Quinn", "Taric", "Yorick", "Caitlyn", "Heimerdinger", "Leona", "Rammus", "Teemo", "Zac", "Camille", "Illaoi", "Lissandra", "Rek'Sai", "Thresh", "Zed", "Cassiopeia" ,
+ "Irelia", "Lucian", "Renekton", "Tristana", "Ziggs", "Cho'Gath", "Ivern", "Lulu", "Rengar", "Trundle", "Zilean", "Corki", "Janna", "Lux", "Riven", "Tryndamere", "Zyra", "Darius", "Jarvan IV", "Malphite ", "Rumble", "Twisted Fate", "Diana",
+ "Jax", "Malzahar", "Ryze", "Twitch", "Dr. Mundo", "Jayce", "Maokai", "Sejuani", "Udyr", "Draven", "Jhin", "Master Yi", "Shaco", "Urgot"};
+
+ public LeagueChamp(String channelName) {
+ super(channelName);
+
+ // TODO Auto-generated constructor stub
+ }
+
+
+ private static final String COMMAND = "!randChamp";
+
+ @Override
+ public void handle(MessageCreateEvent event) {
+ // TODO Auto-generated method stub
+ Random rand = new Random();
+ if(event.getMessageContent().startsWith(COMMAND)) {
+ event.getChannel().sendMessage("Your champion is: " + champions[rand.nextInt(champions.length)]);
+ }
+ }
+
+}
+
+
+
+
+
+
+
diff --git a/src/main/java/org/jointheleague/modules/MazeGame.java b/src/main/java/org/jointheleague/modules/MazeGame.java
index 76e1f77c..24acb906 100644
--- a/src/main/java/org/jointheleague/modules/MazeGame.java
+++ b/src/main/java/org/jointheleague/modules/MazeGame.java
@@ -27,7 +27,7 @@ public MazeGame(String channelName) {
@Override
// listens for command and parses parameters
public void handle(MessageCreateEvent event) throws APIException {
- System.out.println("Heard message: " + event.getMessageContent());
+ /*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();
@@ -82,7 +82,7 @@ public void handle(MessageCreateEvent event) throws APIException {
}
- }
+ }*/
}
/*
diff --git a/src/main/java/org/jointheleague/modules/NumberVs.java b/src/main/java/org/jointheleague/modules/NumberVs.java
new file mode 100644
index 00000000..a6ec5872
--- /dev/null
+++ b/src/main/java/org/jointheleague/modules/NumberVs.java
@@ -0,0 +1,97 @@
+package org.jointheleague.modules;
+
+import java.util.Random;
+import java.util.concurrent.TimeUnit;
+
+import org.javacord.api.event.message.MessageCreateEvent;
+public class NumberVs extends CustomMessageCreateListener {
+ //Level 3 Discord Feature. NumberVs is a game played against the computer. The computer gives you a range of numbers. You and the computer both guess a number. Whoever is closer gets the point. The goal is to get more
+ //points than the computer after x number of rounds.
+
+ //Important Vars
+ int range = 100; int playerScore = 0; int compScore = 0;
+ //Limit to score to. Thinking 40 as default.
+ int scoreLim = 10;
+ //State Machine
+ int state = 0;
+ //Temp Vars
+ int number = 0; String str = "";
+ int randomNum = 0; Random random = new Random();
+ int compTarget = 0; int compGuess = 0;
+ //default state 0, start state 1, game state 2
+
+ public NumberVs(String channelName) {
+ super(channelName);
+ }
+
+
+ private static final String COMMAND = "!GuessVs";
+
+ @Override
+ public void handle(MessageCreateEvent event) {
+ // TODO Auto-generated method stub
+ //use instead String message = event.getMessageContent();
+ if (state == 0) {
+ if (event.getMessageContent().equals("!GuessVs help") || event.getMessageContent().equals("!GuessVs Help")) {
+ event.getChannel().sendMessage(
+ "To play, the computer will tell you a range of numbers. You will guess a number against the computer. Whoever is closer gets a pont. If you guess the number exactly, " +
+ "you get 5 extra points. Important commands(always include '!GuessVs '): range x --> specifies range, with x being maximum. start --> goes to game. score --> sets score to play to.");
+
+ } else if (event.getMessageContent().startsWith("!GuessVs range")) {
+ str = event.getMessageContent(); str = str.replace("!GuessVs range ", "");
+ number = Integer.parseInt(str); range = number;
+ event.getChannel().sendMessage("New Range: 0 to " + range);
+
+ } else if (event.getMessageContent().startsWith("!GuessVs Range")) {
+ str = event.getMessageContent(); str = str.replace("!GuessVs Range", "");
+ number = Integer.parseInt(str); range = number;
+ event.getChannel().sendMessage("New Range: 0 to " + range);
+
+ } else if (event.getMessageContent().startsWith("!GuessVs Start") || event.getMessageContent().startsWith("!GuessVs start")) {
+ event.getChannel().sendMessage("Time to Guess!! Type 'Guess x', with x being a number. Your range is from 0 " + range);
+ state = 1;
+
+ } else if (event.getMessageContent().startsWith("!GuessVs score") || event.getMessageContent().startsWith("!GuessVs score")){
+ str = event.getMessageContent(); str = str.replace("!GuessVs score ", "");
+ number = Integer.parseInt(str); scoreLim = number;
+ event.getChannel().sendMessage("New Score range: " + scoreLim);
+ }
+ } else if (state == 1) {
+ //Guessing state. Allow player to fight against computer.
+ if(playerScore >= scoreLim){ event.getChannel().sendMessage("Congrats, you won... exiting game"); resetScores(); state = 0; }
+ else if (compScore >= scoreLim){ event.getChannel().sendMessage("Congrats, you lost :( ... exiting game"); resetScores(); state = 0;}
+ else if (event.getMessageContent().startsWith("Guess ")) {
+
+ str = event.getMessageContent(); str = str.replace("Guess ", "");
+ number = Integer.parseInt(str); compGuess = random.nextInt(range); compTarget = random.nextInt(range);
+ // if the abs value of number - comptarget is lower than abs value of compguess - comptarget, player wins and vice versa
+ event.getChannel().sendMessage("Your number was " + number + ". The computers was " + compGuess + ". The actual number was " + compTarget + ".");
+ if (Math.abs(number - compTarget) < Math.abs(compGuess - compTarget)) {
+
+ if (number == compTarget) { playerScore += 5; event.getChannel().sendMessage("Nice! You guessed the number exactly! Plus 5 points!"); }
+ else { playerScore++; event.getChannel().sendMessage("Nice, you guessed closer! You get a point!"); }
+
+ } else if(Math.abs(number - compTarget) > Math.abs(compGuess - compTarget)){
+
+ if (compGuess == compTarget) { compScore += 5; event.getChannel().sendMessage("Too bad! The computer guessed exactly! Plus 5 points :("); }
+ else { event.getChannel().sendMessage("Yikes, a computer beat you and guessed closer... it gets one point!"); compScore++; }
+
+ } else {
+ event.getChannel().sendMessage("You guessed the same as the computer, which was " + number + ". You each get two points.");
+ event.getChannel().sendMessage("New Round: Scores are: " + "Player: " + playerScore + "Computer: " + compScore);
+ }
+ event.getChannel().sendMessage("Your score: " + playerScore + ". Computer score: " + compScore + ".");
+ }
+ //Exits state machine 1, back to 0.
+ else if(event.getMessageContent().startsWith("Exit")){
+ event.getChannel().sendMessage("Exiting game.");
+ state = 0;
+ }
+ }
+ }
+
+ public void resetScores(){
+ playerScore = 0;
+ compScore = 0;
+ }
+}
diff --git a/src/main/resources/config.json b/src/main/resources/config.json
index 4dd58050..8db79039 100644
--- a/src/main/resources/config.json
+++ b/src/main/resources/config.json
@@ -1,4 +1,4 @@
{
- "channels": [""],
- "token": ""
+ "channels": ["brandon_p"],
+ "token": "ODAwNTM5Njg1NTk1MTE5NjQ2.YATmrg.IbaqolKV-F9OynbznOhXGaOOP7w"
}