From 93d4c9654ea5cff4f06b47b5d334fe186a8f283b Mon Sep 17 00:00:00 2001 From: ZeroEpoch1969 <13510767+ZeroEpoch1969@users.noreply.github.com> Date: Fri, 11 Jan 2019 20:05:12 -0700 Subject: [PATCH] bleh --- .../totalfreedommod/TotalFreedomMod.java | 3 +- .../blocking/EventBlocker.java | 8 +-- .../command/Command_admininfo.java | 2 +- .../command/Command_adventure.java | 11 +-- .../command/Command_clearchat.java | 46 +++++++++---- .../totalfreedommod/command/Command_deop.java | 6 ++ .../command/Command_masterbuilderinfo.java | 34 ++++++++++ .../totalfreedommod/command/Command_op.java | 6 ++ .../command/Command_smite.java | 2 +- .../totalfreedommod/config/ConfigEntry.java | 3 +- .../masterbuilder/MasterBuilder.java | 4 +- .../playerverification/VPlayer.java | 4 +- src/main/resources/config.yml | 67 +++++++++++-------- 13 files changed, 136 insertions(+), 60 deletions(-) create mode 100644 src/main/java/me/totalfreedom/totalfreedommod/command/Command_masterbuilderinfo.java diff --git a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java index b8c10eb3..ff28c11f 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java @@ -245,10 +245,9 @@ public class TotalFreedomMod extends AeroPlugin btb = bridges.registerService(BukkitTelnetBridge.class); cpb = bridges.registerService(CoreProtectBridge.class); esb = bridges.registerService(EssentialsBridge.class); - // Disabled so I can at least load TFM as these plugins aren't updated ldb = bridges.registerService(LibsDisguisesBridge.class); web = bridges.registerService(WorldEditBridge.class); - //wgb = bridges.registerService(WorldGuardBridge.class); + wgb = bridges.registerService(WorldGuardBridge.class); amp = bridges.registerService(AMP.class); bridges.start(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/EventBlocker.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/EventBlocker.java index 36cc2eb9..b99d8e67 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/EventBlocker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/EventBlocker.java @@ -221,12 +221,12 @@ public class EventBlocker extends FreedomService { BlockStateMeta blockStateMeta = (BlockStateMeta)item.getItemMeta(); ShulkerBox shulkerBox = (ShulkerBox)blockStateMeta.getBlockState(); - for(ItemStack item : shulkerBox.getInventory().getContents) + for (ItemStack itemStack : shulkerBox.getInventory().getContents()) { - if(item != null) + if (itemStack != null) { - event.setCancelled(true); - break; + event.setCancelled(true); + break; } } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_admininfo.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_admininfo.java index 828df046..5dfacf02 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_admininfo.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_admininfo.java @@ -18,7 +18,7 @@ public class Command_admininfo extends FreedomCommand @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { - List adminInfo = ConfigEntry.ADMININFO.getStringList(); + List adminInfo = ConfigEntry.ADMIN_INFO.getStringList(); if (adminInfo.isEmpty()) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_adventure.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_adventure.java index d77d316b..74be8c51 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_adventure.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_adventure.java @@ -7,8 +7,8 @@ import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; -@CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH) -@CommandParameters(description = "Quickly change your own gamemode to adventure, or define someone's username to change theirs.", usage = "/ <-a | [partialname]>", aliases = "gma") +@CommandPermissions(level = Rank.OP, source = SourceType.BOTH) +@CommandParameters(description = "Quickly change your own gamemode to adventure, or define someone's username to change theirs.", usage = "/ <[partialname] | -a>", aliases = "gms") public class Command_adventure extends FreedomCommand { @@ -28,6 +28,8 @@ public class Command_adventure extends FreedomCommand return true; } + checkRank(Rank.SUPER_ADMIN); + if (args[0].equals("-a")) { for (Player targetPlayer : server.getOnlinePlayers()) @@ -47,10 +49,9 @@ public class Command_adventure extends FreedomCommand return true; } - msg("Setting " + player.getName() + " to game mode adventure"); - msg(player, sender.getName() + " set your game mode to adventure"); + msg("Setting " + player.getName() + " to game mode adventure."); + msg(player, sender.getName() + " set your game mode to adventure."); player.setGameMode(GameMode.ADVENTURE); - return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_clearchat.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_clearchat.java index 841f0b71..08ff67a0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_clearchat.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_clearchat.java @@ -11,41 +11,61 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @CommandPermissions(level = Rank.OP, source = SourceType.BOTH) -@CommandParameters(description = "Clear chat", usage = "/ [optout]", aliases = "cc") +@CommandParameters(description = "Clear chat", usage = "/", aliases = "cc") public class Command_clearchat extends FreedomCommand { @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) { + if (plugin.al.isAdmin(playerSender)) { - server.getOnlinePlayers().stream().filter(player -> !plugin.al.isAdmin(player) || !plugin.pv.getVerificationPlayer(player).isClearChatOptOut() || !plugin.mbl.getMasterBuilder(player).isClearChatOptOut()).forEach(player -> IntStream.range(0, 100).mapToObj(i -> "").forEach(player::sendMessage)); + for (Player player : server.getOnlinePlayers()) + { + boolean optedOut = false; + + if (plugin.al.isAdmin(player)) + { + optedOut = true; + } + else if (plugin.mbl.isMasterBuilder(player) && plugin.mbl.getMasterBuilder(player).isClearChatOptOut()) + { + optedOut = true; + } + else if (plugin.pv.getVerificationPlayer(player).getEnabled() && plugin.pv.getVerificationPlayer(player).isClearChatOptOut()) + { + optedOut = true; + } + + if (!optedOut) + { + IntStream.range(0, 100).mapToObj(i -> "").forEach(player::sendMessage); + } + } FUtil.adminAction(sender.getName(), "Cleared chat", true); - return true; } - if (args.length != 1) - { - return false; - } - if (plugin.mbl.isMasterBuilder(playerSender)) + else if (plugin.mbl.isMasterBuilder(playerSender)) { MasterBuilder mb = plugin.mbl.getMasterBuilder(playerSender); mb.setClearChatOptOut(!mb.isClearChatOptOut()); - msg(mb.isClearChatOptOut() ? "Opted-out" : "Opted-in" + " to clear chat."); + msg((mb.isClearChatOptOut() ? "Opted-out of" : "Opted-in to") + " clear chat."); plugin.mbl.save(); plugin.mbl.updateTables(); - return true; } - if (plugin.pv.getVerificationPlayer(playerSender).getEnabled()) + else if (plugin.pv.getVerificationPlayer(playerSender).getEnabled()) { VPlayer vp = plugin.pv.getVerificationPlayer(playerSender); vp.setClearChatOptOut(!vp.isClearChatOptOut()); - msg(vp.isClearChatOptOut() ? "Opted-out" : "Opted-in" + " to clear chat."); + msg((vp.isClearChatOptOut() ? "Opted-out of" : "Opted-in to") + " clear chat."); plugin.pv.saveVerificationData(vp); return true; } - msg("Only Master Builders, and players with verification enabled can opt out of clear chat.", ChatColor.RED); + else + { + msg("Only Master Builders, admins, and players with verification enabled can opt-out of clear chat.", ChatColor.RED); + } + return true; } } \ No newline at end of file diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_deop.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_deop.java index 0a2d9248..a9f29d15 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_deop.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_deop.java @@ -41,6 +41,12 @@ public class Command_deop extends FreedomCommand player.setOp(false); + if (player.isOnline()) + { + Player p = (Player)player; + p.sendMessage(YOU_ARE_NOT_OP); + } + return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_masterbuilderinfo.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_masterbuilderinfo.java new file mode 100644 index 00000000..d49218a9 --- /dev/null +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_masterbuilderinfo.java @@ -0,0 +1,34 @@ +package me.totalfreedom.totalfreedommod.command; + +import java.util.List; +import me.totalfreedom.totalfreedommod.config.ConfigEntry; +import me.totalfreedom.totalfreedommod.rank.Rank; +import me.totalfreedom.totalfreedommod.util.FUtil; +import org.apache.commons.lang3.StringUtils; +import org.bukkit.ChatColor; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.entity.Player; + +@CommandPermissions(level = Rank.OP, source = SourceType.BOTH) +@CommandParameters(description = "Information on how to apply for Master Builder.", usage = "/", aliases = "mbi") +public class Command_masterbuilderinfo extends FreedomCommand +{ + + @Override + public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) + { + List masterBuilderInfo = ConfigEntry.MASTER_BUILDER_INFO.getStringList(); + + if (masterBuilderInfo.isEmpty()) + { + msg("There is no Master Builder information set in the config.", ChatColor.RED); + } + else + { + msg(FUtil.colorize(StringUtils.join(masterBuilderInfo, "\n"))); + } + + return true; + } +} diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_op.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_op.java index 2b7fba9d..331d32c7 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_op.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_op.java @@ -55,6 +55,12 @@ public class Command_op extends FreedomCommand FUtil.adminAction(sender.getName(), "Opping " + player.getName(), false); player.setOp(true); + if (player.isOnline()) + { + Player p = (Player)player; + p.sendMessage(YOU_ARE_OP); + } + return true; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_smite.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_smite.java index f5fd4eab..c476a080 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_smite.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_smite.java @@ -61,7 +61,7 @@ public class Command_smite extends FreedomCommand { FUtil.bcastMsg(" Reason: " + ChatColor.YELLOW + reason, ChatColor.RED); } - FUtil.bcastMsg(" Smited by: " + ChatColor.YELLOW + sender.getName(), ChatColor.RED); + FUtil.bcastMsg(" Smitten by: " + ChatColor.YELLOW + sender.getName(), ChatColor.RED); // Deop player.setOp(false); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java b/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java index 987e07d1..100f2a3c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/config/ConfigEntry.java @@ -95,7 +95,8 @@ public enum ConfigEntry OVERLORD_IPS(List.class, "overlord_ips"), NOADMIN_IPS(List.class, "noadmin_ips"), ADMIN_ONLY_MODE(Boolean.class, "admin_only_mode"), - ADMININFO(List.class, "admininfo"), + ADMIN_INFO(List.class, "admininfo"), + MASTER_BUILDER_INFO(List.class, "masterbuilderinfo"), AUTO_ENTITY_WIPE(Boolean.class, "auto_wipe"), // AMP_ENABLED(Boolean.class, "amp.enabled"), diff --git a/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilder.java b/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilder.java index c0d52222..202b4d71 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilder.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilder.java @@ -84,7 +84,7 @@ public class MasterBuilder implements ConfigLoadable, ConfigSavable, Validatable lastLogin = FUtil.stringToDate(cs.getString("last_login")); discordID = cs.getString("discord_id", null); tag = cs.getString("tag", null); - clearChatOptOut = cs.getBoolean("clearchatoptout", false); + clearChatOptOut = cs.getBoolean("clearChatOptOut", false); } @Override @@ -96,7 +96,7 @@ public class MasterBuilder implements ConfigLoadable, ConfigSavable, Validatable cs.set("last_login", FUtil.dateToString(lastLogin)); cs.set("discord_id", discordID); cs.set("tag", tag); - cs.set("clearchatoptout", clearChatOptOut); + cs.set("clearChatOptOut", clearChatOptOut); } public void addIp(String ip) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java b/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java index e328d398..c662d557 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/playerverification/VPlayer.java @@ -54,7 +54,7 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable discordId = cs.getString("discordId", null); enabled = cs.getBoolean("enabled", false); tag = cs.getString("tag", null); - clearChatOptOut = cs.getBoolean("clearchatoptout", false); + clearChatOptOut = cs.getBoolean("clearChatOptOut", false); } @Override @@ -66,7 +66,7 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable cs.set("enabled", enabled); cs.set("tag", tag); cs.set("ips", Lists.newArrayList(ips)); - cs.set("clearchatoptout", clearChatOptOut); + cs.set("clearChatOptOut", clearChatOptOut); } public List getIps() diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index f4d5e1b5..9148da65 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -254,38 +254,47 @@ announcer: prefix: '&5[&eTotalFreedom&5] &b' announcements: - - 'Be sure to visit our forums at &6http://totalfreedom.boards.net/' - - 'You can always review the server rules here: &6http://totalfreedom.me/' - - 'If you are not OP, be sure to ask!' - - 'Somebody breaking the rules? Report it! /report ' - - 'Griefing is not allowed!' - - 'Hacked clients are allowed!' - - 'Interested in becoming admin? Type "/ai" for more information!' - - 'You may view all online administrators via "/list -a"' - - 'Save your buildings via WorldEdit! http://totalfreedom.me for more information!' - - 'Famous players, such as Notch, are always fake! We are an offline/cracked server!' - - 'You may contact TotalFreedom support on Twitter! https://tiny.re/tfsupport' - - 'You may download TotalFreedomMod here: https://tiny.re/tfm+' - - 'TheMinecraft is the owner of TotalFreedom.' - - 'MarkByron is the founder of TotalFreedom.' - - 'Server lagging? Check the lag via "/tps"' - - 'You are allowed to record and stream videos on TotalFreedom.' - - 'Player vs player while in creative or god mode is forbidden!' - - 'Spawn killing is forbidden!' - - 'Invisible potions are allowed!' - - 'Serial griefing and trolling will result in a permanent ban!' - - 'TotalFreedom does not accept any form of donations!' - - 'Racism, nazism, and sexism are strictly forbidden!' - - 'Join our Discord server! Link: https://discordapp.com/invite/XXjmAmV/' + - 'Be sure to visit our forums at &6http://totalfreedom.boards.net/' + - 'You can always review the server rules here: &6http://totalfreedom.me/' + - 'If you are not OP, be sure to ask!' + - 'Somebody breaking the rules? Report it! /report ' + - 'Griefing is not allowed!' + - 'Hacked clients are allowed!' + - 'Interested in becoming admin? Type "/ai" for more information!' + - 'You may view all online administrators via "/list -a"' + - 'Save your buildings via WorldEdit! http://totalfreedom.me for more information!' + - 'Famous players, such as Notch, are always fake! We are an offline/cracked server!' + - 'You may contact TotalFreedom support on Twitter! https://tiny.re/tfsupport' + - 'You may download TotalFreedomMod here: https://tiny.re/tfm+' + - 'TheMinecraft is the owner of TotalFreedom.' + - 'MarkByron is the founder of TotalFreedom.' + - 'Server lagging? Check the lag via "/tps"' + - 'You are allowed to record and stream videos on TotalFreedom.' + - 'Player vs player while in creative or god mode is forbidden!' + - 'Spawn killing is forbidden!' + - 'Invisible potions are allowed!' + - 'Serial griefing and trolling will result in a permanent ban!' + - 'TotalFreedom does not accept any form of donations!' + - 'Racism, nazism, and sexism are strictly forbidden!' + - 'Join our Discord server! Link: https://discordapp.com/invite/XXjmAmV/' # What to display in the admininfo command. admininfo: - - '&bHow to apply for admin on the TotalFreedom Server:' - - ' &6- Do not ask for admin in game' - - ' &2- Be helpful within the server' - - ' &6- Report those breaking the rules' - - ' &2- And apply on our forums at the link:' - - ' &9www.totalfreedom.boards.net' + - '&bHow to apply for admin on the TotalFreedom Server:' + - ' &6- Do not ask for admin in game' + - ' &2- Be helpful within the server' + - ' &6- Report those breaking the rules' + - ' &2- And apply on our forums at the link:' + - ' &9www.totalfreedom.boards.net' + +# What to display in the Master Builder info command. +masterbuilderinfo: + - '&bHow to apply for Master Builder on the TotalFreedom Server:' + - ' &6- Do not ask for Master Builder in game' + - ' &2- Screenshot some of your previous builds (be ready to prove that the builds are yours)' + - ' &6- Copy the template and create a thread on our forums' + - ' &2- Template:' + - ' &9bit.ly/TFMasterBuilderTemplate' # Famous players - cannot be banned by username famous_players: