Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // Source code recreated from a .class file by IntelliJ IDEA
- // (powered by Fernflower decompiler)
- //
- package cmds;
- import java.io.File;
- import java.io.IOException;
- import java.util.HashMap;
- import java.util.Iterator;
- import java.util.UUID;
- import net.md_5.bungee.BungeeCord;
- import net.md_5.bungee.api.CommandSender;
- import net.md_5.bungee.api.chat.ClickEvent;
- import net.md_5.bungee.api.chat.TextComponent;
- import net.md_5.bungee.api.chat.ClickEvent.Action;
- import net.md_5.bungee.api.connection.ProxiedPlayer;
- import net.md_5.bungee.api.plugin.Command;
- import org.bukkit.configuration.file.YamlConfiguration;
- import p1.Report.Class;
- public class Report extends Command {
- private HashMap<UUID, Long> time = new HashMap();
- private int cooldown = 120000;
- public static String type = null;
- public static String msg = "";
- public static File file = new File("plugins//SchillerBungeeMain", "Reports");
- public static YamlConfiguration cfg;
- static {
- cfg = YamlConfiguration.loadConfiguration(file);
- }
- public Report(String name) {
- super(name);
- }
- public void execute(CommandSender cs, String[] args) {
- if(cs instanceof ProxiedPlayer) {
- ProxiedPlayer p = (ProxiedPlayer)cs;
- if(!p.hasPermission("report.use")) {
- p.sendMessage(new TextComponent(Class.prefix + "Keine Permission: REPORT.USE"));
- return;
- }
- if(args.length == 0 || args.length == 1 || args.length == 2 || args.length <= 3) {
- p.sendMessage(new TextComponent(Class.prefix + "/report <Spieler> <Typ> <Grund>"));
- p.sendMessage(new TextComponent(Class.prefix + "Verfügbare Reporttypen: bug, hacker, anderes"));
- return;
- }
- if(args.length == 3) {
- ProxiedPlayer t = BungeeCord.getInstance().getPlayer(args[0]);
- String person = cfg.getString("report." + args[0] + ".person");
- if(person == t.getName()) {
- p.sendMessage(new TextComponent(Class.prefix + "Der Spieler wurde bereits gemeldet."));
- return;
- }
- String server = t.getServer().getInfo().getName();
- if(person == t.getName()) {
- if(t == null || !t.isConnected()) {
- p.sendMessage(new TextComponent(Class.prefix + "Der Spieler " + t + " ist nicht online."));
- return;
- }
- if(t != null && t.isConnected()) {
- if(!this.canReport(p.getUniqueId())) {
- double var16 = (double)Math.round((float)((((Long)this.time.get(p.getUniqueId())).longValue() + (long)this.cooldown - System.currentTimeMillis()) / 1000L * 100L));
- p.sendMessage(new TextComponent(Class.prefix + "Du kannst einen neuen Spieler in " + var16 / 100.0D + " Sekunden melden!"));
- return;
- }
- if(this.canReport(p.getUniqueId())) {
- if(args[1].equalsIgnoreCase("bug")) {
- type = "Bug";
- } else if(args[1].equalsIgnoreCase("hacker")) {
- type = "Hacker";
- } else if(args[1].equalsIgnoreCase("anderes")) {
- type = "Anderes";
- } else {
- p.sendMessage(new TextComponent(Class.prefix + "Du hast einen falschen Typ angegeben"));
- }
- }
- if(type == null || type.isEmpty()) {
- p.sendMessage(new TextComponent(Class.prefix + "Du musst einen Typ angeben."));
- return;
- }
- if(type != null && !type.isEmpty()) {
- this.time.put(p.getUniqueId(), Long.valueOf(System.currentTimeMillis()));
- for(int pp = 2; pp < args.length; ++pp) {
- msg = msg + args[pp] + " ";
- }
- if(msg != null && !msg.isEmpty()) {
- msg = msg.substring(0, msg.length() - 1);
- }
- p.sendMessage(new TextComponent(Class.prefix + "Danke für deinen Report. Senden..."));
- p.sendMessage(new TextComponent(Class.prefix + "Dein Report wurde gesendet!"));
- cfg.addDefault("report." + args[0] + ".sender", p.getName());
- cfg.options().copyDefaults(true);
- try {
- cfg.save(file);
- } catch (IOException var14) {
- var14.printStackTrace();
- }
- cfg.addDefault("report." + args[0] + ".person", t.getName());
- cfg.options().copyDefaults(true);
- try {
- cfg.save(file);
- } catch (IOException var13) {
- var13.printStackTrace();
- }
- cfg.addDefault("report." + args[0] + ".server", server);
- cfg.options().copyDefaults(true);
- try {
- cfg.save(file);
- } catch (IOException var12) {
- var12.printStackTrace();
- }
- cfg.addDefault("report." + args[0] + ".typ", type);
- cfg.options().copyDefaults(true);
- try {
- cfg.save(file);
- } catch (IOException var11) {
- var11.printStackTrace();
- }
- cfg.addDefault("report." + args[0] + ".grund", msg);
- cfg.options().copyDefaults(true);
- try {
- cfg.save(file);
- } catch (IOException var10) {
- var10.printStackTrace();
- }
- Iterator var8 = BungeeCord.getInstance().getPlayers().iterator();
- while(var8.hasNext()) {
- ProxiedPlayer var15 = (ProxiedPlayer)var8.next();
- if(var15.hasPermission("report.getnot")) {
- var15.sendMessage(new TextComponent(Class.prefix + "Es ist ein neuer Report eingegangen:"));
- TextComponent st = new TextComponent("[Klicken zum Bearbeiten]");
- st.setClickEvent(new ClickEvent(Action.RUN_COMMAND, "/srep " + t.getName()));
- var15.sendMessage(st);
- }
- }
- }
- }
- }
- }
- }
- }
- private boolean canReport(UUID uuid) {
- if(this.time.containsKey(uuid)) {
- long current = System.currentTimeMillis();
- return ((Long)this.time.get(uuid)).longValue() + (long)this.cooldown <= current;
- } else {
- return false;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment