Für mein System Plugin

Dieses Thema im Forum "Programmierung" wurde erstellt von Lik3Fr33, 10. Oktober 2012.

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

    Lik3Fr33 Gesperrt

    Registriert seit:
    1. Oktober 2012
    Beiträge:
    37
    Minecraft:
    mdafcker / Lik3Fr33
    Hay, Leute ich habe Am meinen "System" Plugin weiter gemacht..
    Ich wollte noch AntiCaps einbauen Hier der code:

    Code (Text):
    1. package me.Lik3Fr33.System;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.event.Listener;
    5. import org.bukkit.event.player.AsyncPlayerChatEvent;
    6.  
    7. public class AntiCapsEvent
    8.   implements Listener
    9. {
    10.   public void onPlayerChat(AsyncPlayerChatEvent event)
    11.   {
    12.     int spacecount = 0;
    13.     boolean msgbool = false;
    14.     if (!event.getPlayer().hasPermission("system.caps"))
    15.     {
    16.       String[] msg = event.getMessage().split(" ");
    17.       for (int i = 0; i < msg.length; i++)
    18.       {
    19.         if ((msg[i].length() == 1) && (isMostUpper2(msg[i])))
    20.         {
    21.           spacecount++;
    22.         }
    23.         if ((!isMostUpper(msg[i])) && (spacecount <= 2))
    24.           continue;
    25.         msg[i] = msg[i].toLowerCase();
    26.         if (msgbool)
    27.           continue;
    28.         Bukkit.getServer().getWorld("world").strikeLightning(event.getPlayer().getLocation());
    29.         event.getPlayer().sendMessage("§4Caps ist verboten!");
    30.         msgbool = true;
    31.       }
    32.  
    33.       String newmsg = "";
    34.       for (int i = 0; i < msg.length; i++)
    35.       {
    36.         newmsg = newmsg + msg[i];
    37.         newmsg = newmsg + " ";
    38.       }
    39.       event.setMessage(newmsg);
    40.       msgbool = false;
    41.     }
    42.   }
    43.  
    44.   private static boolean isMostUpper(String s) {
    45.     int capcount = 0;
    46.     for (char c : s.toCharArray())
    47.     {
    48.       if ((!Character.isLetter(c)) || (!Character.isUpperCase(c)))
    49.         continue;
    50.       capcount++;
    51.     }
    52.  
    53.     return (capcount > s.length() / 2) && (s.length() != 1);
    54.   }
    55.  
    56.   private static boolean isMostUpper2(String s)
    57.   {
    58.     for (char c : s.toCharArray())
    59.     {
    60.       if ((Character.isLetter(c)) && (Character.isUpperCase(c)))
    61.       {
    62.         return true;
    63.       }
    64.     }
    65.     return false;
    66.   }
    67. }
    Nur geht das Plugin nicht ;/ Warum?

    Wer nett wen ihr zurück schreibt :)

    LG, Lik3Fr33
     
    #1
  2. Smuil
    Online

    Smuil

    das was mir auf die schnelle nur auffällt ist die 2 in " if ((msg.length() == 1) && (isMostUpper2(msg)))"
     
    #2
  3. Crafter6432
    Offline

    Crafter6432

    Registriert seit:
    22. Dezember 2011
    Beiträge:
    686
    Ab dem 1 großen Buchstaben bricht deine Funtkion ab und gibt True zurück.
     
    #3
Status des Themas:
Es sind keine weiteren Antworten möglich.