Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Das ist Main class
- package CubeneX.bungee;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.Map.Entry;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- public class Cubenex extends JavaPlugin implements Listener{
- Connection connection;
- Statement s;
- String host, port, database, username, password;
- ArrayList<String> banned = new ArrayList<String>();
- ArrayList<Player> gm = new ArrayList<Player>();
- HashMap<Player, ReportList> lists = new HashMap<Player, ReportList>();
- public void onEnable(){
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- host = "cubenex.de";
- port = "6099";
- database = "bugreport";
- username = "frank";
- password = "thunfisch";
- BukkitRunnable r = new BukkitRunnable(){
- @Override
- public void run() {
- openConnection();
- try {
- s = connection.createStatement();
- Bukkit.getServer().broadcastMessage(ChatColor.GREEN+"Verbunden!");
- } catch (SQLException e) {
- Bukkit.getServer().broadcastMessage(ChatColor.RED+"Beim verbinden ist ein fehler aufgetreten!");
- e.printStackTrace();
- }
- getBanned();
- }
- };
- r.runTaskAsynchronously(this);
- }
- public void onDisable(){
- }
- public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){
- Player p = (Player) sender;
- if (cmd.getName().equalsIgnoreCase("report")){
- if (s == null || connection == null){
- Bukkit.getServer().broadcastMessage(ChatColor.RED+"Eine verbindung wurde noch nicht hergestellt!");
- return true;
- }
- if (banned.contains(p.getName())){
- p.sendMessage(ChatColor.RED+"Du wurdest vom reporten gebannt!");
- return true;
- }
- if (args.length < 2 || args.length == 0){
- p.sendMessage(ChatColor.RED+"Verwendung: /report <server> <bug>");
- return true;
- }
- String server = args[0];
- String player = p.getName();
- String bug = null;
- for (int i = 1; i < args.length; i++){
- bug += args[i] + " ";
- }
- try {
- s.executeUpdate("INSERT INTO bugs (id, sender, server, message) VALUES ('', '"+player+"', '"+server+"', '"+bug+"');");
- p.sendMessage(ChatColor.GREEN+"Danke! Ihr report wurde gesendet!");
- } catch (SQLException e) {
- p.sendMessage(ChatColor.RED+"Ein fehler ist beim sendes des reports aufgetreten! Bitte kontaktieren sie einen Admin!");
- e.printStackTrace();
- }
- return true;
- }
- if (cmd.getName().equalsIgnoreCase("reportlist")){
- if (!(p.hasPermission("report"))){
- p.sendMessage(ChatColor.RED+"Du hast keinen zugriff auf diesem Befehl!");
- return true;
- }
- p.sendMessage(ChatColor.BLUE+"Empfängt Data, bitte warten....");
- ReportList list = new ReportList();
- try {
- ResultSet result = s.executeQuery("SELECT * FROM bugs;");
- HashMap<Integer, String> bug = new HashMap<Integer, String>();
- HashMap<Integer, String> sen = new HashMap<Integer, String>();
- HashMap<Integer, Player> spieler = new HashMap<Integer, Player>();
- HashMap<Integer, String> server = new HashMap<Integer, String>();
- while (result.next()) {
- String var1 = result.getString("sender");
- String var2 = result.getString("bug");
- String var3 = result.getString("server");
- int var = result.getInt("id");
- Player var4 = null;
- boolean canPlayer = false;
- try{
- var4 = Bukkit.getPlayer(var1);
- canPlayer = true;
- }catch(Exception e){
- canPlayer = false;
- }
- bug.put(var, var2);
- server.put(var, var1);
- sen.put(var, var1);
- spieler.put(var, var4);
- }
- int i = 1;
- for (Entry<Integer, String> en : bug.entrySet()){
- int var = en.getKey();
- String var1 = en.getValue();
- String var2 = server.get(var);
- String var3 = sen.get(var);
- Player var4 = spieler.get(var);
- String sending = ChatColor.AQUA+""+ChatColor.BOLD+String.valueOf(i)+".\n"+ChatColor.RESET;
- if (var4 != null){
- sending += ChatColor.BLUE+"Spieler: "+ChatColor.RED+var3+ChatColor.BLUE+", ";
- if (var4.isOnline()) sending += ChatColor.GREEN+"Online\n"+ChatColor.RESET;
- else sending += ChatColor.RED+"Offline\n"+ChatColor.RESET;
- }else{
- sending += ChatColor.BLUE+"Spieler: "+ChatColor.RED+var3+ChatColor.BLUE+", "+
- ChatColor.GRAY+"Nicht angegeben";
- }
- sending += ChatColor.BLUE+"Server: "+ChatColor.RED+var2+ChatColor.RESET+"\n";
- sending += ChatColor.BLUE+"Bug: "+ChatColor.RED+var1;
- list.add(var, i, var1, var3, var2);
- i++;
- }
- lists.put(p, list);
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- if (cmd.getName().equals("reportBan")){
- if (!(p.hasPermission("report"))){
- p.sendMessage(ChatColor.RED+"Du hast keine zugriff auf diesem Befehl!");
- return true;
- }
- if (args.length == 0 || args.length < 1){
- p.sendMessage(ChatColor.RED+"Verwendung: /reportBan <Spieler>");
- return true;
- }
- try {
- s.executeUpdate("INSERT INTO banned (player) VALUES ('"+args[0]+"');");
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- banned.add(args[0]);
- p.sendMessage(ChatColor.GREEN+"Du hast den spieler "+args[0]+" gebannt!");
- return true;
- }
- if (cmd.getName().equalsIgnoreCase("reportremove")){
- if (!(p.hasPermission("report"))){
- p.sendMessage(ChatColor.RED+"Du hast keinen zugriff auf diesem Befehl!");
- return true;
- }
- if (args.length == 0 || args.length > 1){
- p.sendMessage(ChatColor.RED+"Verwendung: /reportremove <nummer>");
- return true;
- }
- ReportList list = lists.get(p);
- int id = 0;
- try{
- id = list.getId(Integer.parseInt(args[0]));
- }catch(Exception e){
- p.sendMessage(args[0]+" ist keine nummer!");
- return true;
- }
- try {
- s.executeUpdate("DELETE FROM bugs WHERE id='"+id+"'");
- p.sendMessage(ChatColor.GREEN+"Bug aus datenbank gelöscht!");
- } catch (SQLException e) {
- p.sendMessage(ChatColor.RED+"Es ist ein feheler aufgetaucht! Bitte kontaktieren Sie ein Admin!");
- e.printStackTrace();
- }
- list.removeById(id);
- return true;
- }
- if (cmd.getName().equalsIgnoreCase("globalmute")){
- if (gm.contains(p)){
- gm.remove(p);
- p.sendMessage(ChatColor.GREEN+"Du kannst nun wieder alle spieler hören!");
- }else{
- gm.add(p);
- p.sendMessage(ChatColor.GREEN+"Global wurde gemuted");
- }
- }
- return false;
- }
- public void getBanned(){
- ResultSet result;
- try {
- result = s.executeQuery("SELECT * FROM banned;");
- ArrayList<String> bankruptPlayers = new ArrayList<String>();
- while (result.next()) {
- banned.add(result.getString("player"));
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- public void openConnection() {
- try {
- if (connection != null && !connection.isClosed()) {
- return;
- }
- } catch (SQLException e1) {
- // TODO Auto-generated catch block
- e1.printStackTrace();
- }
- try {
- Class.forName("com.mysql.jdbc.Driver");
- connection = DriverManager.getConnection("jdbc:mysql://"
- + this.host + ":" + this.port + "/" + this.database,
- this.username, this.password);
- } catch (SQLException | ClassNotFoundException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- @EventHandler
- public void globalMute(AsyncPlayerChatEvent e){
- e.setCancelled(true);
- for (Player p : Bukkit.getOnlinePlayers()){
- if (!gm.contains(p)){
- p.sendMessage(e.getFormat());
- }
- }
- }
- }
- ----------------------------------------------------------------------------------------------------------------------------
- Das ist ReportList
- package CubeneX.bungee;
- import java.util.HashMap;
- import java.util.Map.Entry;
- public class ReportList {
- HashMap<Integer, Integer> cId;
- HashMap<Integer, String> bug;
- HashMap<Integer, String> sender;
- HashMap<Integer, String> server;
- public ReportList(){
- cId = new HashMap<Integer, Integer>();
- bug = new HashMap<Integer, String>();
- sender = new HashMap<Integer, String>();
- server = new HashMap<Integer, String>();
- }
- public void add(int id, int cid, String Bug, String Sender, String Server){
- cId.put(id, cid);
- bug.put(id, Bug);
- sender.put(id, Sender);
- server.put(id, Server);
- }
- public int getId(int cid){
- int r = 0;
- for (Entry<Integer, Integer> en : cId.entrySet()){
- if (en.getValue() == cid){
- r = en.getKey();
- break;
- }
- }
- return r;
- }
- public void remove(int cid){
- int id = getId(cid);
- cId.remove(id);
- bug.remove(id);
- sender.remove(id);
- server.remove(id);
- }
- public void removeById(int id){
- cId.remove(id);
- bug.remove(id);
- sender.remove(id);
- server.remove(id);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement