use of net.dv8tion.jda.core.entities.Member in project MOOTBoot by LeshDev.
the class RuRoulette method onMessageReceived.
public void onMessageReceived(MessageReceivedEvent e) {
Message msg = e.getMessage();
User user = e.getAuthor();
Member member = e.getMember();
EmbedBuilder eB = new EmbedBuilder();
String status = "";
if (!msg.getRawContent().startsWith("-revolver") || bannedList.black.contains(e.getAuthor().getIdLong()) || e.getAuthor().isBot()) {
return;
}
e.getMessage().delete().queueAfter(5, TimeUnit.SECONDS);
Random shots = new Random();
String split = e.getMessage().getRawContent().split("\\s+", 2)[1];
int drehen = Integer.parseInt(split);
int bullets = shots.nextInt(drehen);
int saveBullets = bullets;
int gedrehteRunden = 0;
for (int i = drehen; i > 0; i--) {
Random hit = new Random();
int hitting = hit.nextInt(2);
if (bullets != 0 && hitting == 1) {
status = "Deine Seele verschwindet";
System.out.println("[DEBUG] >> Du bist gestorben");
eB.setColor(Color.RED);
break;
} else {
status = "Dein Leben verl�uft normal";
eB.setColor(Color.GREEN);
}
gedrehteRunden++;
System.out.println("[DEBUG] >> Es wird ein weiteres Mal gedreht");
}
eB.setAuthor(">> Revolver Game", null, null);
eB.addField("Name", user.getAsMention(), true);
eB.addField("Vorhandene Kugeln", "" + saveBullets, true);
eB.addField("Gesamte Drehungen", "" + Integer.parseInt(split), false);
eB.addField("Drehungen", "" + gedrehteRunden, true);
eB.addField("Status", status, true);
e.getChannel().sendMessage(eB.build()).queue();
System.out.println("[Debug] >> Kugeln: " + bullets);
}
use of net.dv8tion.jda.core.entities.Member in project Ardent by adamint.
the class CheckIfPremiumGuild method run.
@Override
public void run() {
for (Shard shard : ShardManager.getShards()) {
for (Guild guild : shard.jda.getGuilds()) {
int premiumCounter = 0;
for (Member member : guild.getMembers()) {
if (UserUtils.hasTierThreePermissions(member.getUser()))
premiumCounter++;
}
if (premiumCounter == 0) {
guild.getPublicChannel().sendMessage("Someone in your guild needs Tier 3 permissions to be able to access me (the " + "premium bot). " + "Pledge $5 a month @ https://patreon.com/ardent to get access!").queue();
guild.leave().queue();
}
}
}
}
use of net.dv8tion.jda.core.entities.Member in project FlareBot by FlareBot.
the class DebugCommand method onCommand.
@Override
public void onCommand(User sender, GuildWrapper guild, TextChannel channel, Message message, String[] args, Member member) {
if (args.length < 1) {
MessageUtils.sendUsage(this, channel, sender, args);
return;
}
FlareBot fb = FlareBot.instance();
EmbedBuilder eb = MessageUtils.getEmbed();
if (args[0].equalsIgnoreCase("flarebot") || args[0].equalsIgnoreCase("bot")) {
eb.setTitle("Bot Debug").setDescription(String.format("Debug for FlareBot v" + FlareBot.getVersion() + "\nUptime: %s" + "\nMemory Usage: %s" + "\nMemory Free: %s" + "\nVideo Threads: %d" + "\nCommand Threads: %d" + "\nTotal Threads: %d" + "\n\nGuilds: %d" + "\nLoaded Guilds: %d" + "\nVoice Channels: %d" + "\nActive Voice Channels: %d" + "\nCommands Executed: %d" + "\nQueued RestActions: %s", fb.getUptime(), getMB(Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()), getMB(Runtime.getRuntime().freeMemory()), VideoThread.VIDEO_THREADS.activeCount(), Events.COMMAND_THREADS.activeCount(), Thread.getAllStackTraces().size(), fb.getShardManager().getGuildCache().size(), FlareBotManager.instance().getGuilds().size(), Getters.getConnectedVoiceChannels(), Getters.getActiveVoiceChannels(), fb.getEvents().getCommandCount(), getQueuedRestActions()));
StringBuilder sb = new StringBuilder();
for (DataInterceptor interceptor : DataInterceptor.getInterceptors()) sb.append(WordUtils.capitalize(interceptor.getSender().getName())).append(" - ").append(interceptor.getRequests()).append(" requests").append("\n");
eb.addField("HTTP Requests", sb.toString(), false);
} else if (args[0].equalsIgnoreCase("threads")) {
eb.setTitle("Thread Debug").setDescription(String.format("Video Threads: %d" + "\nCommand Threads: %d" + "\nTotal Threads: %d" + "\nThread list: %s", VideoThread.VIDEO_THREADS.activeCount(), Events.COMMAND_THREADS.activeCount(), Thread.getAllStackTraces().size(), MessageUtils.paste(Thread.getAllStackTraces().keySet().stream().map(th -> th.getName() + " - " + th.getState() + " (" + th.getThreadGroup().getName() + ")").collect(Collectors.joining("\n")))));
} else if (args[0].equalsIgnoreCase("server") || args[0].equalsIgnoreCase("guild")) {
GuildWrapper wrapper = guild;
if (args.length == 2)
wrapper = FlareBotManager.instance().getGuild(args[1]);
if (wrapper == null) {
channel.sendMessage("I can't find that guild!").queue();
return;
}
eb.setTitle("Server Debug").setDescription(String.format("Debug for " + wrapper.getGuildIdLong() + "\nData Ver: %s (%s)" + "\nPrefix: %s" + "\nBlocked: %b" + "\nBeta: %b" + "\nWelcomes: %b/%b" + "\nNINO: %b" + "\nSong nick: %b" + "\nPerms: %s" + "\nMute role: %s" + "\nsettings: %s" + "\n\nFor full guild data do `_guild data " + wrapper.getGuildIdLong() + "`", wrapper.dataVersion, GuildWrapper.DATA_VERSION, MessageUtils.escapeMarkdown(String.valueOf(wrapper.getPrefix())), wrapper.isBlocked(), wrapper.getBetaAccess(), wrapper.getWelcome().isGuildEnabled(), wrapper.getWelcome().isDmEnabled(), wrapper.getNINO().isEnabled(), wrapper.isSongnickEnabled(), MessageUtils.paste(FlareBot.GSON.toJson(wrapper.getPermissions())), wrapper.getMutedRole(), wrapper.getSettings().toString()));
} else if (args[0].equalsIgnoreCase("player") || args[0].equalsIgnoreCase("music")) {
GuildWrapper wrapper = guild;
if (args.length == 2)
wrapper = FlareBotManager.instance().getGuild(args[1]);
if (wrapper == null) {
channel.sendMessage("I can't find that guild!").queue();
return;
}
Player player = FlareBot.instance().getMusicManager().getPlayer(wrapper.getGuildId());
AudioManager manager = wrapper.getGuild().getAudioManager();
@Nullable VoiceChannel vc = manager.getConnectedChannel();
String lastActive = "Not tracked.";
if (VoiceChannelCleanup.VC_LAST_USED.containsKey(vc != null ? vc.getIdLong() : guild.getGuildIdLong())) {
long ms = VoiceChannelCleanup.VC_LAST_USED.get(vc != null ? vc.getIdLong() : guild.getGuildIdLong());
lastActive = String.valueOf(ms) + " (" + (System.currentTimeMillis() - ms) + "ms ago)";
}
boolean isPlaying = player.getPlayingTrack() != null;
Track track = player.getPlayingTrack();
eb.setTitle("Bot Debug").setDescription(String.format("Player Debug for `" + wrapper.getGuildId() + "`" + "\nCurrent Track: %s" + "\nCurrent Position: %s" + "\nIs Paused: %b" + "\nPlaylist Length: %s" + "\nIs Looping: %b" + "\nConnecting: %b" + "\nVoice Channel: %s" + "\nConnection State: %s" + "\nLast Active: %s", (isPlaying ? track.getTrack().getIdentifier() : "No current track"), (isPlaying ? track.getTrack().getPosition() + "/" + track.getTrack().getDuration() : "N/A"), player.getPaused(), player.getPlaylist().size(), player.getLooping(), manager.isAttemptingToConnect(), (vc == null ? "null" : vc.toString()), manager.getConnectionStatus().toString(), lastActive));
} else {
channel.sendMessage("Invalid debug option").queue();
return;
}
channel.sendMessage(eb.build()).queue();
}
use of net.dv8tion.jda.core.entities.Member in project FlareBot by FlareBot.
the class ShardInfoCommand method onCommand.
@Override
public void onCommand(User sender, GuildWrapper guild, TextChannel channel, Message message, String[] args, Member member) {
PagedTableBuilder tb = new PagedTableBuilder();
tb.addColumn("Shard ID");
tb.addColumn("Status");
tb.addColumn("Ping");
tb.addColumn("Guild Count");
tb.addColumn("Connected VCs");
List<JDA> shards = new ArrayList<>(Getters.getShards());
Collections.reverse(shards);
for (JDA jda : shards) {
List<String> row = new ArrayList<>();
row.add(ShardUtils.getDisplayShardId(jda) + (ShardUtils.getShardId(channel.getJDA()) == ShardUtils.getShardId(jda) ? " (You)" : ""));
row.add(WordUtils.capitalizeFully(jda.getStatus().toString().replace("_", " ")));
row.add(String.valueOf(jda.getPing()));
row.add(String.valueOf(jda.getGuilds().size()));
row.add(String.valueOf(jda.getVoiceChannels().stream().filter(vc -> vc.getMembers().contains(vc.getGuild().getSelfMember())).count()));
tb.addRow(row);
}
PaginationUtil.sendPagedMessage(channel, tb.build(), 0, sender, ButtonGroupConstants.SHARDINFO);
}
use of net.dv8tion.jda.core.entities.Member in project FlareBot by FlareBot.
the class WarningsCommand method onCommand.
@Override
public void onCommand(User sender, GuildWrapper guild, TextChannel channel, Message message, String[] args, Member member) {
if (args.length == 1) {
if (args[0].equalsIgnoreCase("stats")) {
Map.Entry<String, List<String>> highestEntry = Collections.max(guild.getWarningsMap().entrySet(), Comparator.comparingInt(entry -> entry.getValue().size()));
User mostWarned = GuildUtils.getUser(highestEntry.getKey(), guild.getGuildId(), true);
channel.sendMessage(new EmbedBuilder().setTitle("Warning stats", null).addField("Total Warnings", String.valueOf(guild.getWarningsMap().values().stream().mapToLong(List::size).sum()), true).addField("Users warned", String.valueOf(guild.getWarningsMap().size()), true).addField("Most warned user", MessageUtils.getTag(mostWarned) + " - " + highestEntry.getValue().size() + " warnings", true).setColor(Color.CYAN).build()).queue();
} else {
User user = GuildUtils.getUser(args[0]);
if (user == null) {
MessageUtils.sendErrorMessage("That user could not be found!!", channel);
return;
}
StringBuilder sb = new StringBuilder();
List<String> tmp = guild.getUserWarnings(user);
List<String> warnings = tmp.subList(Math.max(tmp.size() - 5, 0), tmp.size());
int i = 1;
for (String warning : warnings) {
sb.append(i).append(". ").append(warning.substring(0, Math.min(725, warning.length()))).append(warning.length() > 725 ? "..." : "").append("\n");
i++;
}
EmbedBuilder eb = new EmbedBuilder().setTitle("Warnings for " + user.getName()).addField("Warning count", String.valueOf(tmp.size()), true).addField("Last 5 warnings", "```md\n" + sb.toString().trim() + "\n```", false).setColor(Color.CYAN);
channel.sendMessage(eb.build()).queue();
}
} else {
MessageUtils.sendUsage(this, channel, sender, args);
}
}
Aggregations