Downloads

Latest Release Github commits (since latest release) Latest Pre-release Github commits (since latest pre-release)

Open Issues Closed Issues Open Pull requests Closed Pull requests

StaffChat

Simple and highly configurable staff chat.

Download

You can download the plugin from the Spigot resource page or via the GitHub releases.

License

This plugin is licensed with the MIT License, for more information see the LICENSE file.

Building

To build this yourself just clone the repository and run the shadowJar task with the Gradle Wrapper.

Windows

git clone git@github.com:oskar3123/StaffChat.git
cd StaffChat
gradlew.bat shadowJar

*nix (Linux, FreeBSD, macOS, ...)

git clone git@github.com:oskar3123/StaffChat.git
cd StaffChat
./gradlew shadowJar

Event API (For developers)

Bukkit/Spigot

Because the event API in 1.14+ is now strict between sync and async events you should check whether this was called synchronously or asynchronously by using event.isAsynchronous().

public class StaffChatListener implements Listener {

  @EventHandler
  public void onStaffChat(StaffChatEvent event) {
    // String format = event.getFormat();
    // event.setFormat("&b{NAME} >> {MESSAGE}");
    // String message = event.getMessage();
    // Player player = event.getPlayer();
    // event.setCancelled(true);
  }
}

Register the listener with

getServer().getPluginManager().registerEvents(new StaffChatListener(), this);

in your plugin onEnable.

BungeeCord

public class StaffChatListener implements Listener {

  @EventHandler
  public void onStaffChat(BungeeStaffChatEvent event) {
    // String format = event.getFormat();
    // event.setFormat("&b{NAME} >> {MESSAGE}");
    // String message = event.getMessage();
    // Player player = event.getPlayer();
    // event.setCancelled(true);
  }
}

Register the listener with

getProxy().getPluginManager().registerListener(this, new StaffChatListener());

in your plugin onEnable.

Velocity

public class StaffChatListener {

  @Subscribe
  public void onStaffChat(VelocityStaffChatEvent event) {
    // Player player = event.getPlayer();
    // String format = event.getFormat();
    // String message = event.getMessage();
    // StaffChatResult result = StaffChatResult.denied();
    // StaffChatResult result = StaffChatResult.format("&b{NAME} >> {MESSAGE}");
    // StaffChatResult result = StaffChatResult.message(filterMessage(message));
    // StaffChatResult result = StaffChatResult.formatAndMessage("&b{NAME} >> {MESSAGE}", filterMessage(message));
    // event.setResult(result);
  }

  private static String filterMessage(String message) {
    // ...
    return message;
  }
}

Register the listener on the ProxyInitializeEvent in your plugin.

@Plugin
public class Plugin {

  private final ProxyServer server;

  @Inject
  public Plugin(ProxyServer server) {
    this.server = server;
  }

  @Subscribe
  public void onProxyInitialization(ProxyInitializeEvent event) {
    server.getEventManager().register(this, new StaffChatListener());
  }
}
S
Description
Simple and highly configurable staffchat
Readme MIT
422 KiB
v1.4.1
Latest
2022-03-22 01:57:02 +01:00
Languages
Java 100%