Merge pull request #112 from BigBotNetwork/greg-dev

Greg dev
This commit is contained in:
Skidder 2019-11-29 09:05:13 -08:00 committed by GitHub
commit f6e3869862
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 122 additions and 23 deletions

28
.gitattributes vendored Normal file
View file

@ -0,0 +1,28 @@
# Java sources
*.java text diff=java
*.gradle text diff=java
*.gradle.kts text diff=java
# These files are text and should be normalized (Convert crlf => lf)
*.css text diff=css
*.df text
*.htm text diff=html
*.html text diff=html
*.js text
*.jsp text
*.jspf text
*.jspx text
*.properties text
*.tld text
*.tag text
*.tagx text
*.xml text
# These files are binary and should be left untouched
# (binary is a macro for -text -diff)
*.class binary
*.dll binary
*.ear binary
*.jar binary
*.so binary
*.war binary

23
example-config.json Normal file
View file

@ -0,0 +1,23 @@
{
"Owners":
[],
"Database":{"IP":"",
"Port":6775,
"DBName":"",
"Username":"",
"Password":""},
"Tokens":{
"BotToken":"",
"Giphy":"",
"GitHub": "",
"MythicalBotList":"",
"BotsForDiscord":"",
"DiscordBotList":"",
"DiscordBestBots":"",
"DiscordBoats": "",
"YetAnotherBotList": "",
"DiscordExtremeList": "",
"DiscordBotReviews": "",
"DiscordBots": ""
}
}

View file

@ -25,7 +25,7 @@
<dependency> <dependency>
<groupId>net.dv8tion</groupId> <groupId>net.dv8tion</groupId>
<artifactId>JDA</artifactId> <artifactId>JDA</artifactId>
<version>4.0.0_64</version> <version>4.0.0_67</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.json</groupId> <groupId>org.json</groupId>
@ -60,7 +60,7 @@
<dependency> <dependency>
<groupId>org.kohsuke</groupId> <groupId>org.kohsuke</groupId>
<artifactId>github-api</artifactId> <artifactId>github-api</artifactId>
<version>1.99</version> <version>1.101</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.sedmelluq</groupId> <groupId>com.sedmelluq</groupId>

View file

@ -76,6 +76,7 @@ public class Hadder {
new JoinCommand(), new JoinCommand(),
new LeaveCommand(), new LeaveCommand(),
new GuildLeaveCommand(), new GuildLeaveCommand(),
new MemeCommand(),
new LinkCommand()), config, helpCommand); new LinkCommand()), config, helpCommand);
builder.addEventListeners( builder.addEventListeners(

View file

@ -27,11 +27,11 @@ public class GifCommand implements Command {
query = new StringBuilder(query.substring(0, query.length() - 1)); query = new StringBuilder(query.substring(0, query.length() - 1));
} }
OkHttpClient caller = new OkHttpClient(); OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("http://api.giphy.com/v1/gifs/search?q=" + query + "&api_key=" + event.getConfig().getGiphyToken()).build(); Request request = new Request.Builder().url("http://api.giphy.com/v1/gifs/search?q=" + query + "&api_key=" + event.getConfig().getGiphyToken()).build();
try { try {
Random rand = new Random(); Random rand = new Random();
Response response = caller.newCall(request).execute(); Response response = client.newCall(request).execute();
JSONObject json = new JSONObject(response.body().string()); JSONObject json = new JSONObject(response.body().string());
JSONArray array = json.getJSONArray("data"); JSONArray array = json.getJSONArray("data");
int gifIndex = rand.nextInt(array.length()); int gifIndex = rand.nextInt(array.length());

View file

@ -0,0 +1,60 @@
package com.bbn.hadder.commands.fun;
/*
* @author Skidder / GregTCLTK
*/
import com.bbn.hadder.commands.Command;
import com.bbn.hadder.commands.CommandEvent;
import com.bbn.hadder.utils.MessageEditor;
import net.dv8tion.jda.api.EmbedBuilder;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import org.json.JSONObject;
import java.awt.*;
import java.io.IOException;
import java.time.Instant;
public class MemeCommand implements Command {
@Override
public void executed(String[] args, CommandEvent event) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("https://some-random-api.ml/meme").build();
try {
Response response = client.newCall(request).execute();
JSONObject json = new JSONObject(response.body().string());
String url = json.get("image").toString();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder())
.setTitle("Your random meme")
.setImage(url)
.build()).queue();
} catch (IOException e) {
e.printStackTrace();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder())
.setTitle("Error!")
.setDescription("The request to the meme API could not be processed. Please try it again later.")
.setColor(Color.RED)
.build()).queue();
}
}
@Override
public String[] labels() {
return new String[]{"meme"};
}
@Override
public String description() {
return "Sends you a random meme.";
}
@Override
public String usage() {
return "";
}
}

View file

@ -21,16 +21,11 @@ public class JoinCommand implements Command {
AudioManager audioManager = event.getGuild().getAudioManager(); AudioManager audioManager = event.getGuild().getAudioManager();
if(!audioManager.isAttemptingToConnect()) { if(!audioManager.isAttemptingToConnect()) {
VoiceChannel vc = event.getMember().getVoiceState().getChannel(); VoiceChannel vc = event.getMember().getVoiceState().getChannel();
if (vc.getMemberPermissionOverrides().contains(Permission.VOICE_CONNECT)) {
event.getGuild().getAudioManager().openAudioConnection(vc); event.getGuild().getAudioManager().openAudioConnection(vc);
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()
.setTitle("Successfully connected")) .setTitle("Successfully connected"))
.setDescription("I successfully connected to " + vc.getName() + ".") .setDescription("I successfully connected to " + vc.getName() + ".")
.build()).queue(); .build()).queue();
} else {
EmbedBuilder builder = new EmbedBuilder();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue();
}
} else { } else {
EmbedBuilder builder = new EmbedBuilder(); EmbedBuilder builder = new EmbedBuilder();
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder)

View file

@ -33,7 +33,6 @@ public class AnalCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setAuthor("GIF not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Anal") .setFooter("Anal")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class BlowjobCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setAuthor("Image not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Blowjob") .setFooter("Blowjob")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class BoobsCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setAuthor("GIF not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Boobs") .setFooter("Boobs")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class CumCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setAuthor("GIF not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Cum") .setFooter("Cum")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class EroticCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setAuthor("Image not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Erotic") .setFooter("Erotic")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class FeetCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setAuthor("Image not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Feet") .setFooter("Feet")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class PornCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setAuthor("GIF not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Porn") .setFooter("Porn")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class PussyCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setAuthor("GIF not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Pussy") .setFooter("Pussy")
.build()).queue(); .build()).queue();

View file

@ -33,7 +33,6 @@ public class TransCommand implements Command {
event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder)
.setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setAuthor("Image not showing? Click here", url.replace("\"}", ""))
.setImage(url.replace("\"}", "")) .setImage(url.replace("\"}", ""))
.setTimestamp(Instant.now())
.setFooter("Trans") .setFooter("Trans")
.build()).queue(); .build()).queue();

View file

@ -3,29 +3,30 @@ package com.bbn.hadder.utils;
import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.EmbedBuilder;
import java.awt.*; import java.awt.*;
import java.time.Instant;
public class MessageEditor { public class MessageEditor {
public EmbedBuilder setDefaultSettings(MessageType type, EmbedBuilder embedBuilder) { public EmbedBuilder setDefaultSettings(MessageType type, EmbedBuilder embedBuilder) {
switch (type) { switch (type) {
case INFO: case INFO:
embedBuilder.setColor(new Color(47,94,105)); embedBuilder.setColor(new Color(47,94,105)).setTimestamp(Instant.now());
break; break;
case ERROR: case ERROR:
embedBuilder.setColor(Color.RED); embedBuilder.setColor(Color.RED).setTimestamp(Instant.now());
break; break;
case WARNING: case WARNING:
embedBuilder.setColor(Color.ORANGE); embedBuilder.setColor(Color.ORANGE).setTimestamp(Instant.now());
break; break;
case NO_PERMISSION: case NO_PERMISSION:
embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED); embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED).setTimestamp(Instant.now());
break; break;
case NO_SELF_PERMISSION: case NO_SELF_PERMISSION:
embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED); embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED).setTimestamp(Instant.now());
break; break;
} }
return embedBuilder; return embedBuilder;