Solved Replace("%Level", player.getLevel() error...

Discussion in 'Plugin Development' started by mrsamcraft, Jan 7, 2014.

Thread Status:
Not open for further replies.
  1. So,

    I'm stuck yet again!.. Sorry :/

    This time its with this, Im trying to make a custom variable(%Level) for the config so that a user can pick where the level will be shown back on the message. I'm not sure If i have this set out right or not?

    The ".replace" BEFORE ("%Level", player.getLevel()))); Is showing as a error.

    Code:java
    1. player.sendMessage(getConfig().getString("level-up-message").replaceAll("(&([a-f0-9]))", "\u00A7$2").replace("%name", player.getName().replace("%Level", player.getLevel())));



    Thanks,
    ~ Sam
     
  2. Offline

    _Filip

    Are you getting an error?
     
  3. Offline

    sgavster

    try doing Integer.toString(p.getLevel());
     
  4. Offline

    Minnymin3

    The issue is that you are replacing '%Level' in player.getName() since you never closed the replace method bracket. Add a bracket after player.getName()
     
  5. swampshark19
    The only error was the .replace in the code.

    sgavster
    That works, but Its showing "%level" in the message :(.
    Code:java
    1. player.sendMessage(getConfig().getString("level-up-message").replaceAll("(&([a-f0-9]))", "\u00A7$2").replace("%player", player.getName().replace("%level", Integer.toString(player.getLevel()))));


    Minnymin3
    That didn't work :(.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 6, 2016
  6. Offline

    Garris0n

    You're calling the .replace on the player's name, not the string. Also, use ChatColor.translateAlternateColorCodes('&', message) instead of that regex.
     
  7. Garris0n Sorry Im still learning as I go, how would I do this?

    Even when I do it like this the .replace still shows as an error
    Code:java
    1. getConfig().getString("level-up-message").replace("%level", player.getLevel());


    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 6, 2016
  8. Offline

    sgavster

  9. sgavster
    Like this? :')
    Code:java
    1. player.sendMessage(getConfig().getString("level-up-message").replaceAll("(&([a-f0-9]))", "\u00A7$2").replace("%player", player.getName().replace("%level", Integer.toString(player.getLevel()))));
     
  10. Offline

    sgavster

    mrsamcraft Try this:

    Code:java
    1. player.sendMessage(ChatColor.translateAlternateColorCodes('&', getConfig().getString("level-up-message").replace("%player", player.getName()).replace("%level", Integer.toString(player.getLevel()))));
     
    Garris0n and mrsamcraft like this.
  11. sgavster Smashing! Thanks!

    From that I can now understand and learn a bit more, thanks ever so much!

    I can see what I did wrong. :p
    Code:java
    1. player.getName()

    Should have been
    Code:java
    1. player.getName())

    All the best!
    ~ Sam
     
  12. Offline

    sgavster

    mrsamcraft yes, that is correct! Glad I could help ;)
     
    mrsamcraft likes this.
Thread Status:
Not open for further replies.

Share This Page