How can I block writing something in the Chat?

Discussion in 'Plugin Development' started by MarkusK96, May 5, 2012.

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

    MarkusK96

    I want to write a plugin, which contols the chat. If somebody writes for example "fuck you", nothing should happen. But if somebody writes something normal, it should be in the chat.

    I hope you can help me (Sorry about my english)
     
  2. Offline

    travja

    Code:java
    1. public void Chat(PlayerChatEvent event){
    2. if(event.getMessage().contains("whatever you want to catch"){
    3. event.setCancelled(true);
    4. }
    5. }
     
    MarkusK96 likes this.
  3. Offline

    MarkusK96

    How can I change the text?
     
  4. Offline

    travja

    For that you don't need and if just:
    Code:java
    1. public void Chat(PlayerChatEvent event){
    2. event.getMessage().replace("catch here", "Replacement here")
    3. }
     
    Double0negative and MarkusK96 like this.
  5. Offline

    MarkusK96

    Thank you very much :D
     
  6. Offline

    travja

    :D Glad to help
     
  7. Offline

    Double0negative

    event.getMessage().replaceAll("catch here", "rpelacer");

    would work better in this case
     
    MarkusK96 likes this.
  8. Offline

    messageofdeath

    or

    PHP:
    event.setMessage("");
     
  9. Offline

    travja

    True
     
  10. Offline

    Double0negative

    No, then you wouldn't get any message at all
     
  11. Offline

    messageofdeath

     
  12. Offline

    travja

    ooh, and to make it even cooler you could do:
    event.getMessage().replaceAll("catch here", ChatColor.MAGIC + "rpelacer");

    That way it's just misc stuff for the word.
     
  13. Offline

    C0nsole

     
  14. Offline

    ItsHarry

    Why would you use event.setMessage(""); in the first place, just use event.setCancelled(true);
    ...........
     
  15. public void onChat(PlayerChatEvent ev)
    {
    String msg = ev.getMessage();
    if(msg.contains("fuck you"))
    {
    msg.replace("fuck you", "*");
    }
    ev.setMessage(msg);
    }

    That simply replaces the message with * for every character

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 25, 2016
    MarkusK96 likes this.
Thread Status:
Not open for further replies.

Share This Page