Gelöst ServerPlugin Programm Ich habe ein Problem mit BanSystem.

Dieses Thema im Forum "Programmierung" wurde erstellt von Lentry, 8. November 2016.

  1. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Guten tag,
    ich habe ein Problem mit mein BanSystem

    Ich wollte mal mein BanSystem aus testen, und habe mich beim Strat des Plugin automatisch bann lassen.

    Hier sind die Main, BanManager und MySQL classe

    MySQL:
    Code (Javascript):
    1. package de.lentry.bansystem.api.mysql;
    2.  
    3. import java.sql.Connection;
    4. import java.sql.DriverManager;
    5. import java.sql.ResultSet;
    6. import java.sql.SQLException;
    7.  
    8. import org.bukkit.Bukkit;
    9.  
    10. import de.lentry.bansystem.main.main;
    11.  
    12. public class MySQL {
    13.  
    14.     public static String host = "****";
    15.     public static String port = "***";
    16.     public static String user = "***";
    17.     public static String password = "******";;
    18.     public static String database = "****";
    19.  
    20.     public static Connection con;
    21.  
    22.     public static void connect() {
    23.  
    24.         if (!isConnected()) {
    25.  
    26.             try {
    27.                 con = DriverManager.getConnection("jdbc:mysql://" + host + ":" + port + "/" + database, user, password);
    28.             } catch (SQLException e) {
    29.                 Bukkit.getConsoleSender().sendMessage(
    30.                         main.prefix + "[BanSystem] Die MySQl konnte nicht herrgestellt: §cFehler: §7" + e.getMessage());
    31.             }
    32.  
    33.         }
    34.  
    35.     }
    36.  
    37.     public static void disconntect() {
    38.         if (isConnected()) {
    39.             try {
    40.                 con.close();
    41.             } catch (SQLException e) {
    42.                 e.printStackTrace();
    43.             }
    44.         }
    45.     }
    46.  
    47.     public static boolean isConnected() {
    48.  
    49.         return con != null;
    50.     }
    51.  
    52.     public static void update(String qry) {
    53.         if (isConnected()) {
    54.             try {
    55.                 con.createStatement().executeUpdate(qry);
    56.             } catch (SQLException e) {
    57.                 e.printStackTrace();
    58.             }
    59.         }
    60.     }
    61.  
    62.     public static ResultSet getResult(String qry) {
    63.  
    64.         if (isConnected()) {
    65.             try {
    66.                 return con.createStatement().executeQuery(qry);
    67.             } catch (SQLException e) {
    68.                 e.printStackTrace();
    69.             }
    70.         }
    71.         return null;
    72.  
    73.     }
    74.  
    75.     public static void createTabbles() {
    76.         if (isConnected()) {
    77.             try {
    78.                 con.createStatement().executeUpdate(
    79.                         "CREATE TABLE IF NOT EXISTS BannedPlayers(Spielername VARCHAR(100), UUID VARCHAR(100), Grund VARCHAR(100), Ende VARCHAR(100), BannedPlayer VARCHAR(100))");
    80.  
    81.                 con.createStatement().executeUpdate(
    82.                         "CREATE TABLE IF NOT EXISTS BanPunkte(Spielername VARCHAR(100), UUID VARCHAR(100), BanPoints INT(100))");
    83.             } catch (SQLException e) {
    84.                 e.printStackTrace();
    85.             }
    86.  
    87.         }
    88.  
    89.     }
    90. }
    91.  

    Die Main Class:

    Code (Javascript):
    1. package de.lentry.bansystem.main;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.plugin.java.JavaPlugin;
    5.  
    6. import de.lentry.bansystem.api.mysql.MySQL;
    7. import de.lentry.bansystem.banmanager.BanManager;
    8.  
    9. public class main extends JavaPlugin {
    10.  
    11.     public static String prefix = "§c§lBanSystem §8§l» §7";
    12.     public static String noperm = prefix + "Dazu hast du keine berechtigung.";
    13.  
    14.     @SuppressWarnings("deprecation")
    15.     @Override
    16.     public void onEnable() {
    17.  
    18.         MySQL.connect();
    19.         MySQL.createTabbles();
    20.         Bukkit.getConsoleSender().sendMessage(main.prefix + "BanSystem wurde erfolgreich geladen.");
    21.  
    22.         int banpunkte = 24;
    23.         String banresaon = "Hacking";
    24.  
    25.         if (!BanManager.playerExists(Bukkit.getOfflinePlayer("JasonDev").getUniqueId().toString())) {
    26.  
    27.             BanManager.createPlayer(Bukkit.getOfflinePlayer("JassonDev").getUniqueId().toString(),
    28.                     Bukkit.getOfflinePlayer("JasonDev").getName());
    29.  
    30.         }
    31.  
    32.         BanManager.TempBan(Bukkit.getOfflinePlayer("JasonDev").getUniqueId().toString(),
    33.                 Bukkit.getOfflinePlayer("JasonDev").getName(), banresaon, Bukkit.getOfflinePlayer("Lentry").getName(),
    34.                 banpunkte);
    35.  
    36.     }
    37.  
    38.     @Override
    39.     public void onDisable() {
    40.  
    41.         MySQL.disconntect();
    42.     }
    43. }

    Der BanManager:

    Code (Javascript):
    1. package de.lentry.bansystem.banmanager;
    2.  
    3. import java.sql.ResultSet;
    4. import java.sql.SQLException;
    5. import java.util.ArrayList;
    6. import java.util.List;
    7.  
    8. import org.bukkit.Bukkit;
    9.  
    10. import de.lentry.bansystem.api.mysql.MySQL;
    11.  
    12. public class BanManager {
    13.  
    14.     public static void TempBan(String uuid, String playername, String resaon, String getBannedPlayer, int BanPunkte) {
    15.  
    16.         int BanPoints = getBanPoints(playername, uuid);
    17.  
    18.         int banpunkteliste = BanPunkte + BanPoints;
    19.  
    20.         if (banpunkteliste == 0 || banpunkteliste == 1 || banpunkteliste == 2) {
    21.             long ende = 0;
    22.             long end = 172800;
    23.             long current = System.currentTimeMillis();
    24.             long millis = end * 1000;
    25.             ende = current + millis;
    26.  
    27.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    28.                     + uuid + "','" + ende + "','" + resaon + "')");
    29.             if (Bukkit.getPlayer(playername) != null) {
    30.                 Bukkit.getPlayer(playername)
    31.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    32.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    33.             }
    34.  
    35.         } else if (banpunkteliste == 3 || banpunkteliste == 4 || banpunkteliste == 5 || banpunkteliste == 6) {
    36.             long ende = 0;
    37.             long end = 86400 + 518400;
    38.             long current = System.currentTimeMillis();
    39.             long millis = end * 1000;
    40.             ende = current + millis;
    41.  
    42.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    43.                     + uuid + "','" + ende + "','" + resaon + "')");
    44.             if (Bukkit.getPlayer(playername) != null) {
    45.                 Bukkit.getPlayer(playername)
    46.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    47.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    48.             }
    49.  
    50.         } else if (banpunkteliste == 7 || banpunkteliste == 8 || banpunkteliste == 9 || banpunkteliste == 10
    51.                 || banpunkteliste == 11 || banpunkteliste == 12) {
    52.             long ende = 0;
    53.             long end = 86400 + 518400 + 86400 + 518400;
    54.             long current = System.currentTimeMillis();
    55.             long millis = end * 1000;
    56.             ende = current + millis;
    57.  
    58.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    59.                     + uuid + "','" + ende + "','" + resaon + "')");
    60.             if (Bukkit.getPlayer(playername) != null) {
    61.                 Bukkit.getPlayer(playername)
    62.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    63.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    64.             }
    65.  
    66.         } else if (banpunkteliste == 13 || banpunkteliste == 14 || banpunkteliste == 15) {
    67.             long ende = 0;
    68.             long end = 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400;
    69.             long current = System.currentTimeMillis();
    70.             long millis = end * 1000;
    71.             ende = current + millis;
    72.  
    73.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    74.                     + uuid + "','" + ende + "','" + resaon + "')");
    75.             if (Bukkit.getPlayer(playername) != null) {
    76.                 Bukkit.getPlayer(playername)
    77.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    78.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    79.             }
    80.  
    81.         } else if (banpunkteliste == 16 || banpunkteliste == 17 || banpunkteliste == 18 || banpunkteliste == 19
    82.                 || banpunkteliste == 20) {
    83.             long ende = 0;
    84.             long end = 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400
    85.                     + 518400 + 86400 + 518400 + 86400 + 518400;
    86.             long current = System.currentTimeMillis();
    87.             long millis = end * 1000;
    88.             ende = current + millis;
    89.  
    90.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    91.                     + uuid + "','" + ende + "','" + resaon + "')");
    92.             if (Bukkit.getPlayer(playername) != null) {
    93.                 Bukkit.getPlayer(playername)
    94.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    95.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    96.             }
    97.  
    98.         } else if (banpunkteliste == 21 || banpunkteliste == 22 || banpunkteliste == 32) {
    99.             long ende = 0;
    100.             long end = 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400
    101.                     + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400 + 86400 + 518400
    102.                     + 86400 + 518400;
    103.             long current = System.currentTimeMillis();
    104.             long millis = end * 1000;
    105.             ende = current + millis;
    106.  
    107.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund ) VALUES ('" + playername + "','"
    108.                     + uuid + "','" + ende + "','" + resaon + "')");
    109.             if (Bukkit.getPlayer(playername) != null) {
    110.                 Bukkit.getPlayer(playername)
    111.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    112.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    113.             }
    114.  
    115.         } else {
    116.             long end = -1;
    117.             MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Ende, Grund) VALUES ('" + playername + "','"
    118.                     + uuid + "','" + end + "','" + resaon + "')");
    119.             if (Bukkit.getPlayer(playername) != null) {
    120.                 Bukkit.getPlayer(playername)
    121.                         .kickPlayer("§7Du wurdest von §9§lFreeLeague.NET Gebannt wurden! \n\n §c§lGrund: §7" + resaon
    122.                                 + "\n\n §aDu kannst auf unserem TS3 Server einen §eEntbannungsantrag §aerstellen!");
    123.             }
    124.         }
    125.  
    126.     }
    127.  
    128.     public static void Ban(String uuid, String playername, String resaon, String getBannedPlayer) {
    129.  
    130.         long end = -1;
    131.  
    132.         MySQL.update("INSERT INTO BannedPlayers(Spielername, UUID, Grund, getBannedPlayer, Ende) VALUES ('" + playername
    133.                 + "','" + uuid + "','" + resaon + "','" + getBannedPlayer + "','" + end + "')");
    134.  
    135.     }
    136.  
    137.     public static String getRemainingTime(String uuid) {
    138.         long current = System.currentTimeMillis();
    139.         long end = getEnd(uuid);
    140.         if (end == -1) {
    141.             return "§4§LPERMAENT";
    142.         }
    143.         long millies = end - current;
    144.         long sekunden = 0;
    145.         long minuten = 0;
    146.         long stunden = 0;
    147.         long tage = 0;
    148.         long wochen = 0;
    149.         while (millies > 1000) {
    150.             millies -= 1000;
    151.             sekunden++;
    152.         }
    153.         while (sekunden > 60) {
    154.             sekunden -= 60;
    155.             minuten++;
    156.  
    157.         }
    158.         while (minuten > 60) {
    159.             minuten -= 60;
    160.             stunden++;
    161.  
    162.         }
    163.  
    164.         while (stunden > 24) {
    165.             stunden -= 24;
    166.             tage++;
    167.  
    168.         }
    169.         while (tage > 7) {
    170.             tage -= 7;
    171.             wochen++;
    172.  
    173.         }
    174.  
    175.         String sekundent = "";
    176.         String minutent = "";
    177.         String stundent = "";
    178.         String taget = "";
    179.         String wochent = "";
    180.  
    181.         if (sekunden == 1) {
    182.             sekundent = " Sekunde ";
    183.         } else {
    184.             sekundent = " Sekunden ";
    185.         }
    186.         if (minuten == 1) {
    187.             minutent = " Minute ";
    188.         } else {
    189.             minutent = " Minuten ";
    190.         }
    191.  
    192.         if (stunden == 1) {
    193.             stundent = " Stunde ";
    194.         } else {
    195.             stundent = " Stunden ";
    196.         }
    197.  
    198.         if (tage == 1) {
    199.             taget = " Tag ";
    200.         } else {
    201.             taget = " Tage ";
    202.         }
    203.  
    204.         if (wochen == 1) {
    205.             wochent = " Woche ";
    206.         } else {
    207.             wochent = " Wochen ";
    208.         }
    209.  
    210.         if (wochen == 0) {
    211.             return +tage + taget + stunden + stundent + minuten + minutent + sekunden + sekundent;
    212.         } else if (wochen == 0 && tage == 0) {
    213.             return +stunden + stundent + minuten + minutent + sekunden + sekundent;
    214.         } else if (wochen == 0 && tage == 0 && stunden == 0) {
    215.             return +minuten + minutent + sekunden + sekundent;
    216.         } else if (wochen == 0 && tage == 0 && stunden == 0 && minuten == 0) {
    217.             return +sekunden + sekundent;
    218.         } else {
    219.             return wochen + wochent + tage + taget + stunden + stundent + minuten + minutent + sekunden + sekundent;
    220.         }
    221.  
    222.     }
    223.  
    224.     public static String getReason(String uuid) {
    225.  
    226.         ResultSet rs = MySQL.getResult("SELECT * FROM BannedPlayer WHERE UUID='" + uuid + "'");
    227.         try {
    228.             while (rs.next()) {
    229.                 return rs.getString("Grund");
    230.             }
    231.         } catch (SQLException e) {
    232.             e.printStackTrace();
    233.         }
    234.         return "";
    235.     }
    236.  
    237.     public static void unban(String uuid) {
    238.  
    239.         MySQL.update("DELETE FROM BannedPlayer WHERE UUID ='" + uuid + "'");
    240.  
    241.     }
    242.  
    243.     public static boolean isBanned(String uuid) {
    244.         ResultSet rs = MySQL.getResult("SELECT Ende FROM BannedPlayer WHERE UUID='" + uuid + "'");
    245.         try {
    246.             return rs.next();
    247.         } catch (SQLException e) {
    248.             e.printStackTrace();
    249.         }
    250.         return false;
    251.  
    252.     }
    253.  
    254.     public static Long getEnd(String uuid) {
    255.         ResultSet rs = MySQL.getResult("SELECT * FROM BannedPlayer WHERE UUID='" + uuid + "'");
    256.  
    257.         try {
    258.             while (rs.next()) {
    259.                 return rs.getLong("Ende");
    260.             }
    261.         } catch (SQLException e) {
    262.             e.printStackTrace();
    263.         }
    264.         return null;
    265.  
    266.     }
    267.  
    268.     public static List<String> getBannedPlayers() {
    269.  
    270.         List<String> list = new ArrayList<>();
    271.         ResultSet rs = MySQL.getResult("SELECT * FROM BannedPlayer");
    272.         try {
    273.             while (rs.next()) {
    274.                 list.add(rs.getString("Spielername"));
    275.             }
    276.         } catch (SQLException e) {
    277.             e.printStackTrace();
    278.         }
    279.  
    280.         return list;
    281.     }
    282.  
    283.     public static boolean playerExists(String uuid) {
    284.  
    285.         ResultSet rs = MySQL.getResult("SELECT * FROM BanPunkte WHERE UUID= '" + uuid + "'");
    286.         try {
    287.             if (rs.next()) {
    288.                 return rs.getString("UUID") != null;
    289.             }
    290.             return false;
    291.         } catch (SQLException e) {
    292.             e.printStackTrace();
    293.  
    294.         }
    295.         return false;
    296.  
    297.     }
    298.  
    299.     public static void createPlayer(String uuid, String playername) {
    300.  
    301.         if (!playerExists(uuid)) {
    302.             MySQL.update("INSERT INTO BanPunkte(Spielername, UUID, BanPoints) VALUES ('" + playername + "','" + uuid
    303.                     + "',' 0 ');");
    304.         }
    305.  
    306.     }
    307.  
    308.     public static Integer getBanPoints(String playername, String uuid) {
    309.         Integer i = 0;
    310.         ResultSet rs = MySQL.getResult("SELECT * FROM BanPunkte WHERE UUID= '" + uuid + "'");
    311.         try {
    312.             if ((rs.next()) || (Integer.valueOf(rs.getInt("BanPoints")) == null))
    313.                 ;
    314.  
    315.             i = rs.getInt("BanPoints");
    316.         } catch (SQLException e) {
    317.             e.printStackTrace();
    318.         }
    319.         return i;
    320.     }
    321.  
    322.     public static void setBanPoints(String uuid, String playername, Integer BanPoints) {
    323.  
    324.         MySQL.update("UPDATE BanPunkte SET BanPoints= '" + BanPoints + "' WHERE UUID= '" + uuid + "';");
    325.  
    326.     }
    327.  
    328.     public static void addBanPoints(String playername, String uuid, Integer BanPoints) {
    329.  
    330.         setBanPoints(uuid, playername,
    331.                 Integer.valueOf(getBanPoints(playername, uuid).intValue() + BanPoints.intValue()));
    332.  
    333.     }
    334.  
    335.     public static void removeBanPoints(String playername, String uuid, Integer BanPoints) {
    336.  
    337.         setBanPoints(uuid, playername,
    338.                 Integer.valueOf(getBanPoints(playername, uuid).intValue() - BanPoints.intValue()));
    339.  
    340.     }
    341. }
    342.  
    Ich hoffe das ihr mir weiter helfen könnt
    LG Lentry
     
    #1
  2. PrimitiverTyp
    Offline

    PrimitiverTyp

    Registriert seit:
    7. November 2016
    Beiträge:
    7
    Ohne den Code betrachtet zu haben:
    Gibt es einen konkreten Fehler, oder eine Fehlermeldung?
    Hast du sichergestellt, dass du die aktuellste Version des Plugins auch erfolgreich hochgeladen hast und Bukkit/BungeeCord auch diese erkannt hat?
     
    #2
    Lentry gefällt das.
  3. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Ich habe den fehler behoben.
    Sorry das ich die Fehler Meldung nicht geschrieben habe. Ich habe es vergessen.
    Aber danke für eure mit hilfe
    LG Lentry
     
    #3
  4. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    #Closed
     
    #4
  5. PrimitiverTyp
    Offline

    PrimitiverTyp

    Registriert seit:
    7. November 2016
    Beiträge:
    7
    Woran hat es denn letztendlich gelegen?
     
    #5
    Lentry und KeVoZ_ gefällt das.
  6. KeVoZ_
    Offline

    KeVoZ_

    Registriert seit:
    9. Mai 2015
    Beiträge:
    58
    Minecraft:
    Curverneur
    @PrimitiverTyp sowas nervt, dass die nie an andere Denken.... Nur an sich selbst...

    Leider :/
     
    #6
  7. Figz
    Offline

    Figz

    Registriert seit:
    9. Mai 2016
    Beiträge:
    30
    Ganz einfach... Namen merken und ihm nie wieder helfen.
     
    #7
    KeVoZ_ gefällt das.
  8. Lentry
    Offline

    Lentry

    Registriert seit:
    15. Mai 2016
    Beiträge:
    39
    Der Fehler bei der Methode von gebanntpoins igendwo ich kann dir es leider nicht genau sagen

    LG Lentry
     
    #8