Solved Player List Name : Crashes Server

Discussion in 'Plugin Development' started by BajanAmerican, Apr 20, 2013.

Thread Status:
Not open for further replies.
  1. Offline

    BajanAmerican

    I don't know what the issue is. All I know is that it has to do with the amount of letters in a player's name. It's really late at night..
    Code:
    [m
    2013-04-20 23:56:35 [SEVERE] Exception in thread "Thread-7"
    2013-04-20 23:56:35 [SEVERE] java.lang.IllegalArgumentException: Player list names can only be a maximum of 16 characters long
    2013-04-20 23:56:35 [SEVERE]    at org.bukkit.craftbukkit.v1_5_R2.entity.CraftPlayer.setPlayerListName(CraftPlayer.java:169)
    2013-04-20 23:56:35 [SEVERE]    at me.BajanAmerican.CloudWars.Game.setListName(Game.java:57)
    2013-04-20 23:56:35 [SEVERE]    at me.BajanAmerican.CloudWars.Game.splitTeams(Game.java:72)
    2013-04-20 23:56:35 [SEVERE]    at me.BajanAmerican.CloudWars.Game.start(Game.java:27)
    2013-04-20 23:56:35 [SEVERE]    at me.BajanAmerican.CloudWars.CloudWars.startGame(CloudWars.java:79)
    2013-04-20 23:56:35 [SEVERE]    at me.BajanAmerican.CloudWars.GameLoop.run(GameLoop.java:43)
    2013-04-20 23:56:35 [SEVERE]    at java.lang.Thread.run(Unknown Source)
    2013-04-20 23:56:37

    And here is my code:

    Code:
          public void setListName(Player player, String name, ChatColor C) {
                String s = name;
                if (name.toCharArray().length >= 13) {
                  s = C + s;
                  for (int i = 0; i <= 12; i++)
                    s = s + name.toCharArray()[i];
                  s = s + new Random().nextInt(10);
                }
                player.setPlayerListName(s);
              }
    Thanks for any help!
     
  2. Offline

    gomeow

    java.lang.IllegalArgumentException: Player list names can only be a maximum of 16 characters long

    ^^
     
  3. Offline

    BajanAmerican

    And how do I limit the amount of characters in a player's name?
     
  4. Offline

    gomeow

    Well you just don't pass that method a string longer than 16 characters
     
  5. Offline

    chasechocolate

    Or use:
    Code:java
    1. if(string.length() > 16){
    2. string = string.substring(0, 16);
    3. }
     
Thread Status:
Not open for further replies.

Share This Page