Hello how do I make it so in the config you can do colours? Say the message is the default as I put.. And I want them to use colours. So they can customize it. code: Code:java package me.Sean0402.HidePlugin; import org.bukkit.Bukkit;import org.bukkit.ChatColor;import org.bukkit.entity.Player;import org.bukkit.event.EventHandler;import org.bukkit.event.Listener;import org.bukkit.event.player.PlayerCommandPreprocessEvent;import org.bukkit.plugin.java.JavaPlugin; public class HidePlugin extends JavaPlugin implements Listener { private boolean Message = this.getConfig().getBoolean("Message"); public void onEnable(){ Bukkit.getServer().getPluginManager().registerEvents(this, this); getServer().getLogger().info("HidePlugin Now Enabled! Created By Sean0402"); getConfig().options().copyDefaults(true); saveConfig(); } public void onDisable(){ getServer().getLogger().info("HidePlugin Now Enabled! Created By Sean0402"); } @EventHandler public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { Player p = event.getPlayer(); if ((event.getMessage().startsWith("/?")) && (!event.getPlayer().isOp())) { p.sendMessage(getConfig().getString("Message")); event.setCancelled(true); } else if ((event.getMessage().startsWith("/bukkit")) && (event.getPlayer().isOp())) { event.setCancelled(true); p.sendMessage(getConfig().getString("Message")); } else if ((event.getMessage().startsWith("/pl")) && (event.getPlayer().isOp())) { event.setCancelled(true); p.sendMessage(getConfig().getString("Message")); }}}
Generally, this is done by using: translateAlternateColorCodes() http://jd.bukkit.org/rb/apidocs/org/bukkit/ChatColor.html
_Cookie_ How would I do it for more than 1? And the .replaceAll keeps saying to rename is to replace or replaceFirst then if I do them it says rename it to the old one..
Just as an example of usage. Say you have a config file. Code: some: text: '&7Hello! My name is &2FerusGrim!' You could then translate those symbols: Code:java public void someMethod() { getLogger().info(ChatColor.translateAlternateColorCodes('&', getConfig().getString("some.text")));}
_Cookie_ Wat even? *cough* there is a method as FerusGrim explained, why would you do that? This is the second time I've said this to you but go think about what you have just posted ;3
LordVakar That is how I do it, I wasn't aware of that method, so there is no need to be a dick about it.
You should really have a read through the API docs, then. Familiarize yourself with it, and you can do anything.
I'm having problems with it still.. Giving me errors when I change the code and put's it back to it's original code. Code:java package me.Sean0402.HidePlugin; import org.bukkit.Bukkit;import org.bukkit.ChatColor;import org.bukkit.entity.Player;import org.bukkit.event.EventHandler;import org.bukkit.event.Listener;import org.bukkit.event.player.PlayerCommandPreprocessEvent;import org.bukkit.plugin.java.JavaPlugin; public class HidePlugin extends JavaPlugin implements Listener { private boolean Message = this.getConfig().getBoolean("Message"); public void onEnable(){ Bukkit.getServer().getPluginManager().registerEvents(this, this); getServer().getLogger().info("HidePlugin Now Enabled! Created By Sean0402"); getConfig().options().copyDefaults(); saveConfig(); } public void onDisable(){ getServer().getLogger().info("HidePlugin Now Enabled! Created By Sean0402"); } @EventHandler public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { Player p = event.getPlayer(); if ((event.getMessage().startsWith("/?")) && (!event.getPlayer().isOp())) { getLogger().info(ChatColor.translateAlternateColorCodes('&', getConfig().getString("Message"))); p.sendMessage(getConfig().getString("Message")); event.setCancelled(true); } else if ((event.getMessage().startsWith("/bukkit")) && (event.getPlayer().isOp())) { getLogger().info(ChatColor.translateAlternateColorCodes('&', getConfig().getString("Message"))); p.sendMessage(getConfig().getString("Message")); event.setCancelled(true); } else if ((event.getMessage().startsWith("/pl")) && (event.getPlayer().isOp())) { getLogger().info(ChatColor.translateAlternateColorCodes('&', getConfig().getString("Message"))); p.sendMessage(getConfig().getString("Message")); event.setCancelled(true); }}}
Well now you know, before giving people bad information and bad java coding conventions (in another thread), you should learn it yourself. Also, @OP, you're getting a string message that probably doesn't exist in the config everytime.
LordVakar Really, he's just trying to help. Let us not discourage people who enjoy helping others, because of a mistake. _Cookie_ The JavaDocs can be quite fun to explore. I sometimes look at the methods inside of it just to give me ideas of things to make! Why don't you browse through it? You may have some fun, and learn a thing or two at the same time.
FerusGrim Sean0402 Error is probably getString("Message") doesn't exist and he does it everytime. EDIT: FerusGrim I realize he's trying to help, but giving away bad information every time is terrible, it makes other people learn java incorrectly.
I really couldn't tell you off-hand what the issue is, without looking a bit more. But, for now, try replacing: Code:java getConfig().options().copyDefaults(); with: Code:java saveDefaultConfig();
I don't really disagree. But someone is more likely to take your advice if you give it to them in a way where you don't come off as a jerk.