Warn

Dieses Thema im Forum "Programmierung" wurde erstellt von Sn0wBlizz4rdalt, 28. August 2012.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Sn0wBlizz4rdalt
    Offline

    Sn0wBlizz4rdalt Gesperrt

    Registriert seit:
    5. Dezember 2011
    Beiträge:
    311
    Ja, hallo Leute!

    Heute ist es soweit, ich habe mein zweites Plugin fertig gestellt!
    Es heißt Warn, und hat die Funktion User zu warnen.
    Es gibt bereits ein Plugin, KOTHWarn, doch das ist oft outdatet, und auf
    Englisch. Also habe ich ein ähnliches Plugin Erstellt;

    Befehle:
    • /warn <Name> - Warnt einen Nutzer. (Permission: Warn.use)
    • /warn <Name> <Grund> - Warnt einen Nutzer mit Grund (Achtung, der Grund muss mindestens aus zwei Wörtern bestehen!) (Permission: Warn.use)
    Funktionen:
    • Warnt einen User.
    • Bannt einen User nach 3 Warnungen.
    Bekannte Bugs:
    • Die Config zeigt statt einer Warnung zwei an. (Trotzdem Ban nach 3 Warnungen!)
    • Der Grund muss mindestens 2 Wörter enthalten.
    Download:
    • Wenn du mein Plugin toll findest, kannst du es hier runterladen.
    Source-Code:
    • Wenn du den Code haben willst, klicke hier.
      package eu.Sn0wBlizz4rd.Warn.Commands;

      import org.bukkit.ChatColor;
      import org.bukkit.command.Command;
      import org.bukkit.entity.Player;

      import eu.Sn0wBlizz4rd.Warn.Warn;

      public class CommandWarn {

      Warn plugin;
      Command cmd;
      String[] args;
      Player p;
      Player target;
      String grund = "";

      public CommandWarn(Command cmd, String[] args, Player p, Warn plugin){
      this.cmd = cmd;
      this.args = args;
      this.p = p;
      this.plugin = plugin;
      }

      public boolean execute(){

      String mainPath = "WarnListe.Spieler.";


      if(args.length==2){
      p.sendMessage("§7Bitte nenne einen Grund.");
      return false;
      }


      try{
      target = (Player) p.getServer().getPlayer(args[0]);
      if(target.isOnline()){

      }else{
      throw new NullPointerException();
      }
      } catch(NullPointerException e){
      p.sendMessage(ChatColor.RED + args[0] + " §7wurde nicht gefunden.");
      return false;
      }
      if(args.length==0){
      p.sendMessage("§cZu wenig Argumente!");
      return false;
      }
      for(int i = 1; i < args.length; i++){
      this.grund = grund + args + " ";
      }
      if(grund==""){
      grund="Kein Grund vorhanden.";
      }
      p.getServer().broadcastMessage(ChatColor.RED + target.getName() + " §7wurde gewarnt wegen:§c " + grund);
      try{
      int level = getLevel(mainPath, target);
      if(level == 0){
      addNewPlayer(mainPath, target);
      }
      levelPlayerUp(mainPath, target);

      if(getLevel(mainPath, target) ==4){
      target.setBanned(true);
      target.kickPlayer("§cDu hast zu viele Verwarnungen erhalten.");
      plugin.getServer().getBannedPlayers().add(target);
      p.sendMessage(ChatColor.RED + target.getName() + " §7wurde wegen 3 Verwarnungen gebannt!");
      }
      return true;
      } catch(NullPointerException e){
      p.sendMessage("§cEin Fehler ist aufgetreten.");
      return true;
      }
      }
      private int getLevel(String mainPath, Player target){

      return plugin.getConfig().getInt(mainPath + target.getName());
      }

      private void addNewPlayer(String mainPath, Player target){
      plugin.getConfig().addDefault(mainPath + target.getName(), 1);
      plugin.getConfig().options().copyDefaults();
      plugin.saveConfig();
      }

      private void levelPlayerUp(String mainPath, Player target){
      int level = getLevel(mainPath, target);
      level++;
      plugin.getConfig().set(mainPath + target.getName(), level);
      plugin.saveConfig();
      }

      }


    Geplante Features:
    • MySQL, sodass Websites Warns von Usern anzeigen können.
    • Dynamiche Config.
    • Einstellbare Nachrichten.
    • Warns entfernen.

    Bei Ideen/Bugs bitte melden.
     
    #1
  2. 19juli99
    Offline

    19juli99

    Registriert seit:
    19. Mai 2012
    Beiträge:
    299
    Minecraft:
    19juli99
    Ich teste es danach. Es wäre aber auch noch gut wenn man Warns entfernen kann.
     
    #2
  3. Sn0wBlizz4rdalt
    Offline

    Sn0wBlizz4rdalt Gesperrt

    Registriert seit:
    5. Dezember 2011
    Beiträge:
    311
    Kann man, bis jetzt aber nur in der Config. ;)
     
    #3
  4. 19juli99
    Offline

    19juli99

    Registriert seit:
    19. Mai 2012
    Beiträge:
    299
    Minecraft:
    19juli99
    Ok danke ;) Un das mit den Warns auf der Homepage find ich klasse.;)
     
    #4
  5. BestFailer
    Offline

    BestFailer

    Registriert seit:
    27. Mai 2012
    Beiträge:
    405
    Ort:
    /home
    Minecraft:
    BestFailer
    Hey,
    ich finde das Plugin gut wäre aber für ein paar zusätzlich features:
    - Man kann einem Spieler auch mehrere Warns auf einmal geben also /warn test (grund) 3
    - man kann die warns mit /warns einsehen , am besten wer das man sieht wer einen gewarnt wurde.
    -In der Config einstellbar wann man gebannt wird .( Also 3 warns einmal gekickt , tempban und wann bann)

    MFG
     
    #5
  6. LBuilder
    Offline

    LBuilder

    Registriert seit:
    2. April 2012
    Beiträge:
    708
    Minecraft:
    SchnitzelDE
    Cooles Plugin, gibt es zwar schon auf einiger Weise aber für das 2., top!
     
    #6
  7. EasyBox
    Offline

    EasyBox

    Registriert seit:
    7. Juni 2012
    Beiträge:
    159
    Ort:
    Brücke
    Minecraft:
    TheManu897
    Ja das gibts schon, aber sonst echt cool gemacht! :thumbsup:
     
    #7
  8. LightningBaer
    Offline

    LightningBaer

    i glaube er hat verstanden das es das Plugin schon gibt ...i meine mich würds glaube n bissel auf die Nerven gehen wenn i Total stolz bin grade mein zweites Plugin erstellt zu haben ..und dann 1000 ma sehen muss das es des schon gibt ..meiner meinung nach reicht 1x

    ..jz ma zum Plugin :) echt cool
     
    #8
  9. Sn0wBlizz4rdalt
    Offline

    Sn0wBlizz4rdalt Gesperrt

    Registriert seit:
    5. Dezember 2011
    Beiträge:
    311
    Danke Leute ;)
     
    #9
  10. Spongebob1399
    Offline

    Spongebob1399

    Registriert seit:
    4. April 2012
    Beiträge:
    1.279
    Minecraft:
    Spongebob1399
    Supa sache ;)



    Mfg Sponge
     
    #10
  11. #Verschoben
    #Präfix Geändert
     
    #11
  12. kingingo
    Offline

    kingingo Gesperrt

    Registriert seit:
    1. September 2012
    Beiträge:
    63
    Lol DeBukkit hat an 27.08.2012 ein video gemacht wie man ein Warn Plugin schreibt und das sieht genau so aus ??

    Hier ist der Link
     
    #12
Status des Themas:
Es sind keine weiteren Antworten möglich.