Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.rosaage.Tobi;
- import java.awt.Component;
- public class TobiMotd extends JavaPlugin implements Listener {
- private JPanel panel;
- private JLabel jLabel1;
- private JButton jButton1;
- private JTextArea textArea;
- private JTextArea textArea_1;
- public void onDisable() {
- System.out.println("[TobiMotd] v2.4 is disabled!");
- }
- public void onEnable() {
- final FileConfiguration config = this.getConfig();
- if(config.contains("MOTD")){
- }
- else{
- config.addDefault("MOTD", "this is my motd");
- }
- this.getConfig().options().copyDefaults(true);
- saveConfig();
- checkifpail();
- getServer().getPluginManager().registerEvents(this, this);
- getCommand("motd").setExecutor(new CommandExecutor(){
- public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
- if(cmd.getName().equalsIgnoreCase("motd")){
- World world = sender instanceof Player ? ((Player) sender).getWorld() : getServer().getWorlds().get(0);
- long time = world.getTime();
- int hours = (int) ((time / 1000+8) % 24);
- int minutes = (int) (60 * (time % 1000) / 1000);
- String[] message = config.getString("MOTD").split("%NL%");
- for(int x=0 ; x<message.length ; x++) {
- sender.sendMessage(message[x].replaceAll("(&([a-f0-9]))", "\u00A7$2").replaceAll("%NAME%", sender.getName())
- .replaceAll("%TIME%", hours + ":" + minutes).replaceAll("%VERSION%", getServer().getBukkitVersion())
- .replaceAll("%WORLD%", world.getName()).replaceAll("%ONLINE%", list(sender)));
- }
- return true;
- }
- return false;
- }
- });
- getCommand("setmotd").setExecutor(new CommandExecutor(){
- public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
- if(cmd.getName().equalsIgnoreCase("setmotd")){
- if(sender.hasPermission("tobimotd.set") || sender.isOp()) {
- StringBuilder sb = new StringBuilder();
- for (String arg : args)
- sb.append(arg + " ");
- config.set("MOTD", sb.toString());
- saveConfig();
- reloadConfig();
- PluginManager pm = getServer().getPluginManager();
- if (pm.isPluginEnabled("Pail")) {
- textArea_1.setText(config.getString("MOTD"));
- textArea.setText(config.getString("MOTD"));
- }
- World world = sender instanceof Player ? ((Player) sender).getWorld() : getServer().getWorlds().get(0);
- long time = world.getTime();
- int hours = (int) ((time / 1000+8) % 24);
- int minutes = (int) (60 * (time % 1000) / 1000);
- String[] message = config.getString("MOTD").split("%NL%");
- for(int x=0 ; x<message.length ; x++) {
- sender.sendMessage("The motd is now: " + message[x].replaceAll("(&([a-f0-9]))", "\u00A7$2").replaceAll("%NAME%", sender.getName())
- .replaceAll("%TIME%", hours + ":" + minutes).replaceAll("%VERSION%", getServer().getBukkitVersion())
- .replaceAll("%WORLD%", world.getName()).replaceAll("%ONLINE%", list(sender)));
- }
- return true;
- }
- return false;
- }
- return false;
- }
- });
- getCommand("tm").setExecutor(new CommandExecutor(){
- public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
- if(cmd.getName().equalsIgnoreCase("tm")){
- if(sender.hasPermission("tobimodt.reload") || sender.isOp()){
- reloadConfig();
- saveConfig();
- PluginManager pm = getServer().getPluginManager();
- if (pm.isPluginEnabled("Pail")) {
- textArea_1.setText(config.getString("MOTD"));
- textArea.setText(config.getString("MOTD"));
- }
- sender.sendMessage(ChatColor.DARK_AQUA + "Config reloaded!");
- return true;
- }
- else{
- return false;
- }
- }
- sender.sendMessage(ChatColor.RED + "ERROR!");
- return false;
- }
- });
- System.out.println("[TobiMotd] v2.4 is enabled!");
- }
- @EventHandler
- public void PlayerJoin(PlayerJoinEvent event) {
- final FileConfiguration config = this.getConfig();
- World world = event.getPlayer() instanceof Player ? ((Player) event.getPlayer()).getWorld() : getServer().getWorlds().get(0);
- long time = world.getTime();
- Player p = event.getPlayer();
- CommandSender sender = (Player) p;
- int hours = (int) ((time / 1000+8) % 24);
- int minutes = (int) (60 * (time % 1000) / 1000);
- String[] message = config.getString("MOTD").split("%NL%");
- for(int x=0 ; x<message.length ; x++) {
- p.sendMessage(message[x].replaceAll("(&([a-f0-9]))", "\u00A7$2").replaceAll("%NAME%", p.getName())
- .replaceAll("%TIME%", hours + ":" + minutes).replaceAll("%VERSION%", getServer().getBukkitVersion())
- .replaceAll("%WORLD%", world.getName()).replaceAll("%ONLINE%", list(sender)));
- }
- }
- private String list (CommandSender sender) {
- StringBuilder players = new StringBuilder();
- for (Player player : Bukkit.getOnlinePlayers()) {
- if (sender instanceof Player && !((Player) sender).canSee(player))
- continue;
- if (players.length() > 0) {
- players.append(", ");
- }
- players.append(player.getDisplayName());
- }
- return players.toString();
- }
- private void addElement (JPanel c, Component w) {
- c.add(w);
- }
- private void checkifpail() {
- final FileConfiguration config = this.getConfig();
- PluginManager pm = getServer().getPluginManager();
- if (pm.isPluginEnabled("Pail")) {
- System.out.println("[TobiMotd] " + Util.translate("Successfully hooked into Pail!, Trying To generate a tab..."));
- panel = new JPanel();
- panel.setLayout(null);
- jLabel1 = new JLabel(Util.translate("Set the Motd"));
- addElement(panel, jLabel1);
- jButton1 = new JButton(Util.translate("Save"));
- addElement(panel, jButton1);
- JLabel lblCurrentMotd = new JLabel(Util.translate("Current Motd:"));
- panel.add(lblCurrentMotd);
- JScrollPane scrollPane = new JScrollPane();
- scrollPane.setBounds(20, 32, 465, 114);
- panel.add(scrollPane);
- textArea = new JTextArea();
- scrollPane.setViewportView(textArea);
- JScrollPane scrollPane_1 = new JScrollPane();
- scrollPane_1.setBounds(20, 187, 465, 114);
- panel.add(scrollPane_1);
- textArea_1 = new JTextArea();
- scrollPane_1.setViewportView(textArea_1);
- jButton1.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent event) {
- config.set("MOTD", textArea.getText());
- saveConfig();
- reloadConfig();
- textArea_1.setText(config.getString("MOTD"));
- textArea.setText(config.getString("MOTD"));
- }
- });
- jLabel1.setBounds(20, 7, 109, 14);
- lblCurrentMotd.setBounds(119, 157, 89, 14);
- jButton1.setBounds(20, 153, 89, 23);
- panel.setLocation(new Point(150, 150));
- textArea_1.setText(config.getString("MOTD"));
- textArea.setText(config.getString("MOTD"));
- ((Pail)pm.getPlugin("Pail")).loadInterfaceComponent("TobiMotd", panel);
- System.out.println("[TobiMotd] " + Util.translate("Done!"));
- }
- else {
- System.out.println("[TobiMotd] Pail isn't loaded.");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment