Code Issue - Warn Plugin, Please help.

Discussion in 'Plugin Development' started by ITaco, Jul 14, 2014.

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

    ITaco

    Ok so im getting a issue when trying to load my plugin and this is what is happening:
    Code:
    org.bukkit.configuration.InvalidConfigurationException: while parsing a block mapping
    in 'string', line 1, column 1:
        banmessage: You have been temp b ...
        ^
    expected <block end>, but found Scalar
    in 'string', line 2, column 23:
        warnmessage: {target} has been warned by {sender}
                              ^
     
        at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:149) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:204) [spigot.jar:git-Spigot-1455]
        at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:154) [spigot.jar:git-Spigot-1455]
        at org.bukkit.plugin.java.JavaPlugin.getConfig(JavaPlugin.java:144) [spigot.jar:git-Spigot-1455]
        at proewarns.me.SettingsManager.setup(SettingsManager.java:33) [ProeWarn.jar:?]
        at proewarns.me.Main.onEnable(Main.java:19) [ProeWarn.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:250) [spigot.jar:git-Spigot-1455]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) [spigot.jar:git-Spigot-1455]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugin(CraftServer.java:467) [spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.enablePlugins(CraftServer.java:385) [spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.reload(CraftServer.java:820) [spigot.jar:git-Spigot-1455]
        at org.bukkit.Bukkit.reload(Bukkit.java:286) [spigot.jar:git-Spigot-1455]
        at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:24) [spigot.jar:git-Spigot-1455]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:180) [spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchCommand(CraftServer.java:722) [spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchServerCommand(CraftServer.java:709) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.DedicatedServer.aB(DedicatedServer.java:319) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:284) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:576) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:482) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Spigot-1455]
    Caused by: org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping; expected <block end>, but found Scalar;  in 'string', line 2, column 23:
        warnmessage: {target} has been warned by {sender}
                              ^
        at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:570) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:158) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:143) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:159) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:120) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:481) ~[spigot.jar:git-Spigot-1455]
        at org.yaml.snakeyaml.Yaml.load(Yaml.java:400) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:53) ~[spigot.jar:git-Spigot-1455]
        ... 22 more
    
    Now here is my code:
    Code:
    package proewarns.me;
     
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.plugin.java.JavaPlugin;
     
    import proewarns.me.SettingsManager;
     
    public class Main extends JavaPlugin {
     
           
     
        SettingsManager settings = SettingsManager.getInstance();
       
        public void onEnable() {
                settings.setup(this);
                getConfig().options().copyDefaults(true);
                saveConfig();
        }
     
       
     
        @SuppressWarnings("deprecation")
        public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
            if (cmd.getName().equalsIgnoreCase("warn")) {
                if (!sender.hasPermission("proewarn.warn")) {
                    sender.sendMessage(ChatColor.RED + "You are not permitted to do this!");
                        return true;
                }
                if (args.length == 0) {
                        sender.sendMessage(ChatColor.RED + "Please specify a player!");
                        return true;
                       
                }
     
     
           
            final Player target = Bukkit.getServer().getPlayer(args[0]);
     
            if (target == null) {
                sender.sendMessage(ChatColor.RED + "Could not find player!");
                return true;
            }
     
           
            Object level = settings.getData().get(target.getName());
            String wm = this.getConfig().getString("warnmessage");
                wm = wm.replaceAll("{sender}", sender.getName());
                wm = wm.replaceAll("{target}", target.getName());
            String pm = this.getConfig().getString("playermessage");
                pm = pm.replaceAll("{sender}", sender.getName());
                pm = pm.replaceAll("{target}", target.getName());
            String bm = this.getConfig().getString("tempbanMessage");
                bm = bm.replaceAll("{sender}", sender.getName());
                bm = bm.replaceAll("{target}", target.getName());
     
           
            if (level == null) {
                settings.getData().set("" + target.getName() + "", 1);
                settings.saveData();
                target.sendMessage(this.getConfig().getString("playermessage") + ChatColor.DARK_RED + "(1/3)");
                Bukkit.getServer().broadcastMessage(this.getConfig().getString("warnmessage") + ChatColor.DARK_RED + "(1/3)");
                return true;
               
            }
     
            int l = Integer.parseInt(level.toString());
           
            if (l == 1) {
                settings.getData().set("" + target.getName() + "", 2);
                settings.saveData();
                target.sendMessage(this.getConfig().getString("playermessage") + ChatColor.DARK_RED + "(2/3)");
                Bukkit.getServer().broadcastMessage(this.getConfig().getString("warnmessage") + ChatColor.DARK_RED + "(2/3)");
                return true;
            }
            if (l == 2) {
                settings.getData().set("" + target.getName() + "", null);
                settings.saveData();
                target.kickPlayer(this.getConfig().getString("banmessage"));
                target.setBanned(true);
                Bukkit.getServer().broadcastMessage(this.getConfig().getString("tempbanbroadcast") + ChatColor.DARK_RED + "(3/3)");         
                Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
                        public void run() {
                                target.setBanned(false);
                        }
                }, 1500 * 20);
                return true;
           
           
            }
                return true;
     
     
        }
            return true;
     
     
        }
    }
    
    and now here is my settingsmanager:
    Code:java
    1. package proewarns.me;
    2.  
    3. import java.io.File;
    4. import java.io.IOException;
    5.  
    6. import org.bukkit.Bukkit;
    7. import org.bukkit.ChatColor;
    8. import org.bukkit.configuration.file.FileConfiguration;
    9. import org.bukkit.configuration.file.YamlConfiguration;
    10. import org.bukkit.plugin.Plugin;
    11. import org.bukkit.plugin.PluginDescriptionFile;
    12.  
    13. public class SettingsManager {
    14.  
    15. private SettingsManager() { }
    16.  
    17. static SettingsManager instance = new SettingsManager();
    18.  
    19. public static SettingsManager getInstance() {
    20. return instance;
    21. }
    22.  
    23. Plugin p;
    24.  
    25. FileConfiguration config;
    26. File cfile;
    27.  
    28. FileConfiguration data;
    29. File dfile;
    30.  
    31. public void setup(Plugin p) {
    32. cfile = new File(p.getDataFolder(), "config.yml");
    33. config = p.getConfig();
    34. //config.options().copyDefaults(true);
    35. //saveConfig();
    36.  
    37. if (!p.getDataFolder().exists()) {
    38. p.getDataFolder().mkdir();
    39. }
    40.  
    41. dfile = new File(p.getDataFolder(), "data.yml");
    42.  
    43. if (!dfile.exists()) {
    44. try {
    45. dfile.createNewFile();
    46. }
    47. catch (IOException e) {
    48. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not create data.yml!");
    49. }
    50. }
    51.  
    52. data = YamlConfiguration.loadConfiguration(dfile);
    53. }
    54.  
    55. public FileConfiguration getData() {
    56. return data;
    57. }
    58.  
    59. public void saveData() {
    60. try {
    61. data.save(dfile);
    62. }
    63. catch (IOException e) {
    64. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not save data.yml!");
    65. }
    66. }
    67.  
    68. public void reloadData() {
    69. data = YamlConfiguration.loadConfiguration(dfile);
    70. }
    71.  
    72. public FileConfiguration getConfig() {
    73. return config;
    74. }
    75.  
    76. public void saveConfig() {
    77. try {
    78. config.save(cfile);
    79. }
    80. catch (IOException e) {
    81. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not save config.yml!");
    82. }
    83. }
    84.  
    85. public void reloadConfig() {
    86. config = YamlConfiguration.loadConfiguration(cfile);
    87. }
    88.  
    89. public PluginDescriptionFile getDesc() {
    90. return p.getDescription();
    91. }
    92. }
     
  2. Offline

    _Filip

    What is your config?
     
  3. Offline

    RawCode

    spigot not supported here
     
  4. Offline

    fireblast709

    ITaco wrap the warn message in ''
     
    Garris0n likes this.
  5. Offline

    ITaco

    my config.yml is:
    Code:
    banmessage: You have been temp banned for 25 Minutes
    warnmessage: {target} has been warned by {sender}
    playermessage: You have been warned by {sender}
    tempbanbroadcast: {target} has been temp banned by {sender}
     
  6. Offline

    _Filip

    Do what fireblast said
     
  7. Offline

    ITaco

    the warn message is wrapped in " ..
     
  8. Offline

    fireblast709

    ITaco your config says otherwise
     
  9. Offline

    ITaco

    Where is the warnmessage not wrapped in "" ?
    I dont see where..
     
  10. Offline

    Prosfis

    ITaco
    the warn message in your config has no quotes around it. thats what theyre talking about.
     
  11. Offline

    ITaco

    I dont see why it would need it :/
     
  12. Offline

    fireblast709

    ITaco I think the error should be enough motivation
     
  13. Offline

    Prosfis

    ITaco

    Code:
    banmessage: You have been temp banned for 25 Minutes
    warnmessage: "{target} has been warned by {sender}"
    playermessage: "You have been warned by {sender}"
    tempbanbroadcast: "{target} has been temp banned by {sender}"
    http://yaml-online-parser.appspot.com/


    This! lol

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

    ITaco

    I love this guy!

    Thx! Works now, Thank you all

    erg

    Wait here is the new error when do /warn ITaco_v2
    Code:
    Unexpected exception while parsing console command "warn ITaco"
    org.bukkit.command.CommandException: Unhandled exception executing command 'warn' in plugin ProeWarn v1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:180) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchCommand(CraftServer.java:722) ~[spigot.jar:git-Spigot-1455]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchServerCommand(CraftServer.java:709) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.DedicatedServer.aB(DedicatedServer.java:319) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:284) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:576) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:482) [spigot.jar:git-Spigot-1455]
        at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Spigot-1455]
    Caused by: java.util.regex.PatternSyntaxException: Illegal repetition
    {sender}
        at java.util.regex.Pattern.error(Pattern.java:1924) ~[?:1.7.0_55]
        at java.util.regex.Pattern.closure(Pattern.java:3104) ~[?:1.7.0_55]
        at java.util.regex.Pattern.sequence(Pattern.java:2101) ~[?:1.7.0_55]
        at java.util.regex.Pattern.expr(Pattern.java:1964) ~[?:1.7.0_55]
        at java.util.regex.Pattern.compile(Pattern.java:1665) ~[?:1.7.0_55]
        at java.util.regex.Pattern.<init>(Pattern.java:1337) ~[?:1.7.0_55]
        at java.util.regex.Pattern.compile(Pattern.java:1022) ~[?:1.7.0_55]
        at java.lang.String.replaceAll(String.java:2162) ~[?:1.7.0_55]
        at proewarns.me.Main.onCommand(Main.java:50) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot.jar:git-Spigot-1455]
        ... 8 more
    >
    
    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 9, 2016
  15. Offline

    fireblast709

    ITaco use replace instead of replaceAll. The latter is regex based
     
  16. Offline

    ITaco

    Thx your the best.

    Ok it works but then this happens instead of getting the name of the sender it just says {sender}

    same thing with target

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

    fireblast709

    ITaco you probably forgot to assign it again.
    Code:java
    1. string = string.replace("{a}", "b");
     
  18. Offline

    ITaco

    How would I put that into my code? Because that variable isnt resolved :/
     
  19. Offline

    fireblast709

    ITaco perhaps don't copy paste and think about how you would use this in your code -.-
     
  20. Offline

    ITaco

    I didnt copy and paste, I changed the code from above.. I used different variables:
    Code:java
    1. String wm = this.getConfig().getString("warnmessage");
    2. wm = wm.replace("{sender}", sender.getName());
    3. wm = wm.replace("{target}", target.getName());
    4. String pm = this.getConfig().getString("playermessage");
    5. pm = pm.replace("{sender}", sender.getName());
    6. pm = pm.replace("{target}", target.getName());
    7. String bm = this.getConfig().getString("tempbanbroadcast");
    8. bm = bm.replace("{sender}", sender.getName());
    9. bm = bm.replace("{target}", target.getName());

    and dont yell at me if you think im a noob, cuz I am a noob This is the most advanced plugin I have ever made.. I have made very simple plugins before. None of wich used strings in them. I am just starting using strings
     
  21. Offline

    fireblast709

    ITaco couldn't see that from just that post xD. What variable isn't resolved? If it is target and/or sender, you need to replace them just before you broadcast them
     
  22. Offline

    ITaco

    no when I put in: string = string.replace("sender", "target"); it says the "string" isnt resolved as a variable.
     
  23. Offline

    fireblast709

    ITaco yea that was the copy paste remark for lol. You need to replace string with the actual variable
     
  24. Offline

    ITaco

    or would I need to do for each, like: wm = wm.replace("sender", "target"); or would I do like wm = wm.replace("sender", sender.getName()); ?
    fireblast709
     
  25. Offline

    fireblast709

    ITaco you would replace "{sender}" with the sender name obviously (so the second)
     
  26. Offline

    ITaco

    ok lets see if this works :D

    fireblast709 still didnt work, heres my code now:
    Code:java
    1. String wm = this.getConfig().getString("warnmessage");
    2. wm = wm.replace("{sender}", sender.getName());
    3. wm = wm.replace("{target}", target.getName());
    4. String pm = this.getConfig().getString("playermessage");
    5. pm = pm.replace("{sender}", sender.getName());
    6. pm = pm.replace("{target}", target.getName());
    7. String bm = this.getConfig().getString("tempbanbroadcast");
    8. bm = bm.replace("{sender}", sender.getName());
    9. bm = bm.replace("{target}", target.getName());
    10. wm = wm.replace("{sender}", sender.getName());
    11. wm = wm.replace("{target}", target.getName());
    12. pm = pm.replace("{sender}", sender.getName());
    13. pm = pm.replace("{target}", target.getName());
    14. bm = bm.replace("{sender}", sender.getName());
    15. bm = bm.replace("{target}", target.getName());


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

    fireblast709

    ITaco what exactly doesn't work? What is the code around this?
     
  28. Offline

    ITaco

    fireblast709 Here is all my code:
    Code:java
    1. package proewarns.me;
    2.  
    3. import org.bukkit.Bukkit;
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.command.Command;
    6. import org.bukkit.command.CommandSender;
    7. import org.bukkit.entity.Player;
    8. import org.bukkit.plugin.java.JavaPlugin;
    9.  
    10. import proewarns.me.SettingsManager;
    11.  
    12. public class Main extends JavaPlugin {
    13.  
    14.  
    15.  
    16. SettingsManager settings = SettingsManager.getInstance();
    17.  
    18. public void onEnable() {
    19. settings.setup(this);
    20. getConfig().options().copyDefaults(true);
    21. saveConfig();
    22. }
    23.  
    24.  
    25.  
    26. @SuppressWarnings("deprecation")
    27. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
    28. if (cmd.getName().equalsIgnoreCase("warn")) {
    29. if (!sender.hasPermission("proewarn.warn")) {
    30. sender.sendMessage(ChatColor.RED + "You are not permitted to do this!");
    31. return true;
    32. }
    33. if (args.length == 0) {
    34. sender.sendMessage(ChatColor.RED + "Please specify a player!");
    35. return true;
    36. }
    37.  
    38.  
    39.  
    40. final Player target = Bukkit.getServer().getPlayer(args[0]);
    41.  
    42. if (target == null) {
    43. sender.sendMessage(ChatColor.RED + "Could not find player!");
    44. return true;
    45. }
    46.  
    47.  
    48. Object level = settings.getData().get(target.getName());
    49. String wm = this.getConfig().getString("warnmessage");
    50. wm = wm.replace("{sender}", sender.getName());
    51. wm = wm.replace("{target}", target.getName());
    52. String pm = this.getConfig().getString("playermessage");
    53. pm = pm.replace("{sender}", sender.getName());
    54. pm = pm.replace("{target}", target.getName());
    55. String bm = this.getConfig().getString("tempbanbroadcast");
    56. bm = bm.replace("{sender}", sender.getName());
    57. bm = bm.replace("{target}", target.getName());
    58. wm = wm.replace("{sender}", sender.getName());
    59. wm = wm.replace("{target}", target.getName());
    60. pm = pm.replace("{sender}", sender.getName());
    61. pm = pm.replace("{target}", target.getName());
    62. bm = bm.replace("{sender}", sender.getName());
    63. bm = bm.replace("{target}", target.getName());
    64.  
    65.  
    66. if (level == null) {
    67. settings.getData().set("" + target.getName() + "", 1);
    68. settings.saveData();
    69. target.sendMessage(this.getConfig().getString("playermessage") + "" + ChatColor.DARK_RED + " (1/3)");
    70. Bukkit.getServer().broadcastMessage(this.getConfig().getString("warnmessage") + "" + ChatColor.DARK_RED + " (1/3)");
    71. return true;
    72.  
    73. }
    74.  
    75. int l = Integer.parseInt(level.toString());
    76.  
    77. if (l == 1) {
    78. settings.getData().set("" + target.getName() + "", 2);
    79. settings.saveData();
    80. target.sendMessage(this.getConfig().getString("playermessage") + "" + ChatColor.DARK_RED + "(2/3)");
    81. Bukkit.getServer().broadcastMessage(this.getConfig().getString("warnmessage") + "" + ChatColor.DARK_RED + " (2/3)");
    82. return true;
    83. }
    84. if (l == 2) {
    85. settings.getData().set("" + target.getName() + "", null);
    86. settings.saveData();
    87. target.kickPlayer(this.getConfig().getString("banmessage") + "");
    88. target.setBanned(true);
    89. Bukkit.getServer().broadcastMessage(this.getConfig().getString("tempbanbroadcast") + "" + ChatColor.DARK_RED + " (3/3)");
    90. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(this, new Runnable() {
    91. public void run() {
    92. target.setBanned(false);
    93. }
    94. }, 1500 * 20);
    95. return true;
    96.  
    97.  
    98. }
    99. return true;
    100.  
    101.  
    102. }
    103. return true;
    104.  
    105.  
    106. }
    107. }
    108.  

    heres my settingsmanager:
    Code:java
    1. package proewarns.me;
    2.  
    3. import java.io.File;
    4. import java.io.IOException;
    5.  
    6. import org.bukkit.Bukkit;
    7. import org.bukkit.ChatColor;
    8. import org.bukkit.configuration.file.FileConfiguration;
    9. import org.bukkit.configuration.file.YamlConfiguration;
    10. import org.bukkit.plugin.Plugin;
    11. import org.bukkit.plugin.PluginDescriptionFile;
    12.  
    13. public class SettingsManager {
    14.  
    15. private SettingsManager() { }
    16.  
    17. static SettingsManager instance = new SettingsManager();
    18.  
    19. public static SettingsManager getInstance() {
    20. return instance;
    21. }
    22.  
    23. Plugin p;
    24.  
    25. FileConfiguration config;
    26. File cfile;
    27.  
    28. FileConfiguration data;
    29. File dfile;
    30.  
    31. public void setup(Plugin p) {
    32. cfile = new File(p.getDataFolder(), "config.yml");
    33. config = p.getConfig();
    34. //config.options().copyDefaults(true);
    35. //saveConfig();
    36.  
    37. if (!p.getDataFolder().exists()) {
    38. p.getDataFolder().mkdir();
    39. }
    40.  
    41. dfile = new File(p.getDataFolder(), "data.yml");
    42.  
    43. if (!dfile.exists()) {
    44. try {
    45. dfile.createNewFile();
    46. }
    47. catch (IOException e) {
    48. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not create data.yml!");
    49. }
    50. }
    51.  
    52. data = YamlConfiguration.loadConfiguration(dfile);
    53. }
    54.  
    55. public FileConfiguration getData() {
    56. return data;
    57. }
    58.  
    59. public void saveData() {
    60. try {
    61. data.save(dfile);
    62. }
    63. catch (IOException e) {
    64. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not save data.yml!");
    65. }
    66. }
    67.  
    68. public void reloadData() {
    69. data = YamlConfiguration.loadConfiguration(dfile);
    70. }
    71.  
    72. public FileConfiguration getConfig() {
    73. return config;
    74. }
    75.  
    76. public void saveConfig() {
    77. try {
    78. config.save(cfile);
    79. }
    80. catch (IOException e) {
    81. Bukkit.getServer().getLogger().severe(ChatColor.RED + "Could not save config.yml!");
    82. }
    83. }
    84.  
    85. public void reloadConfig() {
    86. config = YamlConfiguration.loadConfiguration(cfile);
    87. }
    88.  
    89. public PluginDescriptionFile getDesc() {
    90. return p.getDescription();
    91. }
    92. }
     
  29. Offline

    fireblast709

    ITaco after you do all replacing, your broadcast gets a fresh new string from the config, which doesn't have the sender and target replaced xD
     
  30. Offline

    Jade

    Locked. We do not support unofficial builds.
     
Thread Status:
Not open for further replies.

Share This Page