Why doesn't this work?!

Discussion in 'Plugin Development' started by XxZHALO13Xx, Jan 2, 2015.

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

    XxZHALO13Xx

    So my plugin thats like world guard.. won't save the region to the configs.. heres the video



    heres my code
    Core
    Code:java
    1. import java.io.File;
    2. import java.util.ArrayList;
    3. import java.util.HashMap;
    4. import java.util.List;
    5. import java.util.Map;
    6.  
    7. import org.bukkit.Location;
    8. import org.bukkit.plugin.java.JavaPlugin;
    9.  
    10. public class Regions extends JavaPlugin{
    11.  
    12. public Regions plugin;
    13. private static List<Region> regions = new ArrayList<>();
    14. private static Map<String, WandPoints> wandStorage = new HashMap<>();
    15.  
    16.  
    17. public void onEnable(){
    18. getCommand("wp").setExecutor(new RegionCommand(this));
    19. getServer().getPluginManager().registerEvents(new InteractListener(), this);
    20. getServer().getPluginManager().registerEvents(new BlockListener(), this);
    21. getServer().getPluginManager().registerEvents(new MoveListener(), this);
    22. getServer().getPluginManager().registerEvents(new PVPListener(), this);
    23.  
    24. if(!getDataFolder().exists()) {
    25. getDataFolder().mkdir();
    26. }
    27. if(plugin != null){
    28. loadConfiguration();
    29. }
    30.  
    31. plugin = this;
    32.  
    33.  
    34.  
    35. }
    36.  
    37. public static Map<String, WandPoints> getWandStorage() {
    38. return wandStorage;
    39. }
    40.  
    41. public static void setWandStorage(Map<String, WandPoints> wandStorage) {
    42. Regions.wandStorage = wandStorage;
    43. }
    44.  
    45. public static List<Region> getRegions() {
    46. return regions;
    47. }
    48.  
    49. public static Region getRegion(String name){
    50. for(Region region : getRegions()){
    51. if(region.getName().equalsIgnoreCase(name)){
    52. return region;
    53. }
    54. }
    55. return null;
    56. }
    57.  
    58. public static void setRegions(List<Region> regions) {
    59. Regions.regions = regions;
    60. }
    61.  
    62. public static Region getRegionHere(Location loc){
    63.  
    64. List<Region> regionList = Regions.getRegions();
    65. for(Region rg: regionList){
    66.  
    67. Location p1 = rg.getP1();
    68. Location p2 = rg.getP2();
    69.  
    70. int minX = p1.getBlockX() < p2.getBlockX() ? p1.getBlockX() : p2.getBlockX();
    71. int minY = p1.getBlockY() < p2.getBlockY() ? p1.getBlockY() : p2.getBlockY();
    72. int minZ = p1.getBlockZ() < p2.getBlockZ() ? p1.getBlockZ() : p2.getBlockZ();
    73.  
    74. int maxX = p1.getBlockX() > p2.getBlockX() ? p1.getBlockX() : p2.getBlockX();
    75. int maxY = p1.getBlockY() > p2.getBlockY() ? p1.getBlockY() : p2.getBlockY();
    76. int maxZ = p1.getBlockZ() > p2.getBlockZ() ? p1.getBlockZ() : p2.getBlockZ();
    77.  
    78. if(loc.getBlockX() >= minX && loc.getBlockX() <= maxX){
    79. if(loc.getBlockY() >= minY && loc.getBlockY() <= maxY){
    80. if(loc.getBlockZ() >= minZ && loc.getBlockZ() <= maxZ){
    81.  
    82.  
    83. return rg;
    84. }
    85. }
    86. }
    87. }
    88.  
    89. return null;
    90. }
    91.  
    92. public void onDisable(){
    93. }
    94. public void loadConfiguration(){
    95. //See "Creating you're defaults"
    96. plugin.getConfig().options().copyDefaults(true); // NOTE: You do not have to use "plugin." if the class extends the java plugin
    97. //Save the config whenever you manipulate it
    98. plugin.saveConfig();
    99. }
    100. }
    101.  


    Commands
    Code:java
    1. public class RegionCommand implements CommandExecutor{
    2.  
    3. private Regions plugin;
    4.  
    5. public RegionCommand(Regions plugin) {
    6. this.plugin = plugin;
    7. }
    8.  
    9.  
    10. @Override
    11. public boolean onCommand(CommandSender sender, Command command, String s, String[] args){
    12.  
    13. if(args.length == 0){
    14.  
    15. sender.sendMessage("§c§lWorld-Protect Help");
    16. sender.sendMessage("§8> §e/wp list");
    17. sender.sendMessage("§8> §e/wp wand");
    18. sender.sendMessage("§8> §e/wp tp §3<Name>");
    19. sender.sendMessage("§8> §e/wp create §3<Name>");
    20. sender.sendMessage("§8> §e/wp delete §3<Name>");
    21. sender.sendMessage("§8> §e/wp removemessages §3<Name>");
    22. sender.sendMessage("§8> §e/wp setentry §3<Name> <Message>");
    23. sender.sendMessage("§8> §e/wp setleave §3<Name> <Message>");
    24.  
    25. }
    26. else{
    27.  
    28. String cmd = args[0];
    29.  
    30. if(cmd.equalsIgnoreCase("create")){
    31.  
    32. if(sender.hasPermission("wp.create")){
    33. if(args.length ==2){
    34. String name = args[1];
    35.  
    36. Region rg = Regions.getRegion(name);
    37. if(rg==null){
    38.  
    39. if(Regions.getWandStorage().containsKey(sender.getName())){
    40.  
    41. WandPoints wand = Regions.getWandStorage().get(sender.getName());
    42. if(wand.getP1()!=null&&wand.getP2()!=null){
    43.  
    44. if(wand.getP1().getWorld().getName().equals(wand.getP2().getWorld().getName())){
    45.  
    46. Region myregion = new Region(name, wand.getP1(), wand.getP2(), sender.getName());
    47.  
    48. Regions.getRegions().add(myregion);
    49.  
    50. sender.sendMessage(RegionString.MAIN + ChatColor.GREEN + "Region created... Name: " + myregion.getName() + ". + Creator: " + sender.getName() + "!");
    51. plugin.getConfig().set("Regions.AllRegions", myregion);
    52. plugin.saveConfig();
    53. plugin.reloadConfig();
    54. }
    55.  
    56. else{
    57. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Your selected points aren't in the same universe!");
    58. }
    59.  
    60.  
    61. return true;
    62. }
    63.  
    64.  
    65. }
    66.  
    67.  
    68. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Please define a region with /wp wand!");
    69. }
    70. else{
    71. sender.sendMessage(RegionString.MAIN + "§cThe region (" + name + ") already exists!");
    72. }
    73. }
    74. else{
    75. sender.sendMessage(RegionString.MAIN + "§cYou need to specify a name.");
    76. }
    77. }
    78. else{
    79. sender.sendMessage(RegionString.MAIN + "§cYou don't have permission to delete regions!");
    80. }
    81. } else if (cmd.equalsIgnoreCase("removemessages")) {
    82.  
    83. if (sender.hasPermission("regions.removemessage")) {
    84. if (args.length == 2) {
    85. String name = args[1];
    86.  
    87. Region rg = Regions.getRegion(name);
    88. if (rg != null) {
    89.  
    90.  
    91. rg.setEntryMessage(null);
    92. rg.setLeaveMessage(null);
    93. sender.sendMessage(RegionString.MAIN + ChatColor.DARK_RED + "Messages for " + rg.getName() + "Cleared.");
    94.  
    95. } else {
    96. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "No regions found named \"" + name + "\"!");
    97. }
    98. }
    99. else {
    100. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Specify a name.");
    101. }
    102. }
    103. else{
    104. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "You don't have permission.");
    105. }
    106. }
    107.  
    108.  
    109. else if (cmd.equalsIgnoreCase("setentry")) {
    110.  
    111. if (sender.hasPermission("regions.setentry")) {
    112. if (args.length >= 3) {
    113. String name = args[1];
    114.  
    115. Region rg = Regions.getRegion(name);
    116. if (rg != null) {
    117.  
    118.  
    119. String msg = "";
    120. for (int i = 2; i < args.length; i ++){
    121. msg = msg + " " + args[i];
    122. }
    123. msg = msg.substring(1);
    124.  
    125. rg.setEntryMessage(msg);
    126. sender.sendMessage(RegionString.MAIN + ChatColor.GREEN + "Changed Entry Message to " + msg);
    127.  
    128.  
    129. } else {
    130. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "No regions found named \"" + name + "\"!");
    131. }
    132. }
    133. else {
    134. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Specify a name.");
    135. }
    136. }
    137. else{
    138. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "You don't have permission.");
    139. }
    140. }
    141.  
    142.  
    143.  
    144.  
    145. else if (cmd.equalsIgnoreCase("setleave")) {
    146.  
    147. if (sender.hasPermission("regions.setleave")) {
    148. if (args.length >= 3) {
    149. String name = args[1];
    150.  
    151. Region rg = Regions.getRegion(name);
    152. if (rg != null) {
    153.  
    154.  
    155. String msg = "";
    156. for (int i = 2; i < args.length; i ++){
    157. msg = msg + " " + args[i];
    158. }
    159. msg = msg.substring(1);
    160.  
    161. rg.setLeaveMessage(msg);
    162. sender.sendMessage(RegionString.MAIN + ChatColor.GREEN + "Changed Leave Message to " + msg);
    163.  
    164.  
    165.  
    166. } else {
    167. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "No regions found named \"" + name + "\"!");
    168. }
    169. }
    170. else {
    171. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Specify a name.");
    172. }
    173. }
    174. else{
    175. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "You don't have permission.");
    176. }
    177.  
    178.  
    179. }
    180. else if(cmd.equalsIgnoreCase("wand")){
    181.  
    182.  
    183. if(sender.hasPermission("wp.wand")){
    184.  
    185.  
    186. if((sender instanceof Player)){
    187. Player player = (Player) sender;
    188.  
    189. ItemStack wand = new ItemStack(Material.GOLD_AXE, 1);
    190. ItemMeta meta = wand.getItemMeta();
    191. meta.setDisplayName("§bRegion Wand");
    192. wand.setItemMeta(meta);
    193. player.getInventory().addItem(wand);
    194. player.sendMessage(RegionString.MAIN + ChatColor.GREEN + "Gave you the Region Wand!");
    195. player.playEffect(player.getLocation(), Effect.MOBSPAWNER_FLAMES, 600);
    196. player.playSound(player.getLocation(), Sound.LEVEL_UP, 600, 600);
    197.  
    198. }
    199.  
    200.  
    201.  
    202. }
    203. else{
    204. sender.sendMessage(RegionString.MAIN + "§cYou don't have permission to get the region wand!");
    205. }
    206.  
    207. }
    208. else if(cmd.equalsIgnoreCase("tp")){
    209.  
    210.  
    211. if(sender.hasPermission("wp.tp")){
    212. if(args.length ==2){
    213. String name = args[1];
    214.  
    215. Region rg = Regions.getRegion(name);
    216. if(rg!=null){
    217.  
    218. if((sender instanceof Player)){
    219. Player player = (Player) sender;
    220. player.teleport(rg.getP1());
    221. player.sendMessage(RegionString.MAIN + ChatColor.DARK_GREEN + "Whoosh! Teleported to (" + rg.getName() + ")! Created by (" + rg.getOwner() + ")!");
    222. player.playSound(player.getLocation(), Sound.ANVIL_LAND, 600, 600);
    223. }
    224. }
    225. else{
    226. sender.sendMessage(RegionString.MAIN + "§cNo regions found named \"" + name + "\"!");
    227. }
    228. }
    229. else{
    230. sender.sendMessage(RegionString.MAIN + "§cYou need to specify a name.");
    231. }
    232. }
    233. else{
    234. sender.sendMessage(RegionString.MAIN + "§cYou don't have permission to teleport to regions!");
    235. }
    236. }
    237. else if (cmd.equalsIgnoreCase("list")){
    238.  
    239. List<Region> list = Regions.getRegions();
    240.  
    241. if(list.size() > 0){
    242.  
    243. sender.sendMessage(RegionString.MAIN + "§aDefined Regions (§b" + list.size() + "§a): §e" + list.toString());
    244.  
    245. }
    246. else{
    247. }
    248. sender.sendMessage(RegionString.MAIN + "§cNo defined Regions!");
    249. }
    250. else if(cmd.equalsIgnoreCase("delete")){
    251.  
    252. if(sender.hasPermission("wp.delete")){
    253. if(args.length ==2){
    254. String name = args[1];
    255.  
    256. Region rg = Regions.getRegion(name);
    257. if(rg!=null){
    258.  
    259. Regions.getRegions().remove(rg);
    260. sender.sendMessage(RegionString.MAIN + "§aRegion '" + name + "' Deleted!");
    261. }
    262. else{
    263. sender.sendMessage(RegionString.MAIN + "§cNo regions found named \"" + name + "\"!");
    264. }
    265. }
    266. else{
    267. sender.sendMessage(RegionString.MAIN + "§cYou need to specify a name.");
    268. }
    269. }
    270. else{
    271. sender.sendMessage(RegionString.MAIN + "§cYou don't have permission to delete regions!");
    272. }
    273. }
    274. else{
    275. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Unknown command! Type /wp for help!");
    276. }
    277. }
    278. return true;
    279. }
    280.  
    281. }
    282. [/i][/i]


    Important Command things

    Code:java
    1. if(cmd.equalsIgnoreCase("create")){
    2.  
    3. if(sender.hasPermission("wp.create")){
    4. if(args.length ==2){
    5. String name = args[1];
    6.  
    7. Region rg = Regions.getRegion(name);
    8. if(rg==null){
    9.  
    10. if(Regions.getWandStorage().containsKey(sender.getName())){
    11.  
    12. WandPoints wand = Regions.getWandStorage().get(sender.getName());
    13. if(wand.getP1()!=null&&wand.getP2()!=null){
    14.  
    15. if(wand.getP1().getWorld().getName().equals(wand.getP2().getWorld().getName())){
    16.  
    17. Region myregion = new Region(name, wand.getP1(), wand.getP2(), sender.getName());
    18.  
    19. Regions.getRegions().add(myregion);
    20.  
    21. sender.sendMessage(RegionString.MAIN + ChatColor.GREEN + "Region created... Name: " + myregion.getName() + ". + Creator: " + sender.getName() + "!");
    22. plugin.getConfig().set("Regions.AllRegions", myregion);
    23. plugin.saveConfig();
    24. plugin.reloadConfig();
    25. }
    26.  
    27. else{
    28. sender.sendMessage(RegionString.MAIN + ChatColor.RED + "Your selected points aren't in the same universe!");
    29. }
    30.  
    31.  
    32. return true;
    33. }
    34.  


    Error
    Code:
    [13:40:48 INFO]: XxZHALO13Xx issued server command: /wp create Test
    [13:40:48 ERROR]: Cannot load plugins\WorldProtect\config.yml
    org.bukkit.configuration.InvalidConfigurationException: could not determine a co
    nstructor for the tag tag:yaml.org,2002:me.XxZHALO13Xx.WorldProtect.Region
    in "<string>", line 2, column 15:
          AllRegions: !!me.XxZHALO13Xx.WorldProtect.Region
                      ^
    
            at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlCo
    nfiguration.java:55) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jn
    ks]
            at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguratio
    n.java:149) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguratio
    n.java:114) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(Yam
    lConfiguration.java:176) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b306
    1jnks]
            at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:150) [
    craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at me.XxZHALO13Xx.WorldProtect.RegionCommand.onCommand(RegionCommand.jav
    a:68) [WorldProtect.jar:?]
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) [craf
    tbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:18
    0) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.bukkit.craftbukkit.v1_7_R3.CraftServer.dispatchCommand(CraftServe
    r.java:703) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.PlayerConnection.handleCommand(PlayerCon
    nection.java:953) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.PlayerConnection.a(PlayerConnection.java
    :815) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.PacketPlayInChat.a(PacketPlayInChat.java
    :28) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.PacketPlayInChat.handle(PacketPlayInChat
    .java:47) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.NetworkManager.a(NetworkManager.java:157
    ) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.ServerConnection.c(SourceFile:134) [craf
    tbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.MinecraftServer.v(MinecraftServer.java:6
    67) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.DedicatedServer.v(DedicatedServer.java:2
    60) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.MinecraftServer.u(MinecraftServer.java:5
    58) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java
    :469) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:6
    28) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
    Caused by: org.yaml.snakeyaml.constructor.ConstructorException: null; could not
    determine a constructor for the tag tag:yaml.org,2002:me.XxZHALO13Xx.WorldProtec
    t.Region
            at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructUndefined.con
    struct(SafeConstructor.java:475) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6a
    c518-b3061jnks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseCo
    nstructor.java:183) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnk
    s]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping2ndSte
    p(BaseConstructor.java:326) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-
    b3061jnks]
            at org.yaml.snakeyaml.constructor.SafeConstructor.constructMapping2ndSte
    p(SafeConstructor.java:143) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-
    b3061jnks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping(BaseC
    onstructor.java:307) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jn
    ks]
            at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlMap.const
    ruct(SafeConstructor.java:459) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac5
    18-b3061jnks]
            at org.bukkit.configuration.file.YamlConstructor$ConstructCustomObject.c
    onstruct(YamlConstructor.java:26) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6
    ac518-b3061jnks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseCo
    nstructor.java:183) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnk
    s]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping2ndSte
    p(BaseConstructor.java:326) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-
    b3061jnks]
            at org.yaml.snakeyaml.constructor.SafeConstructor.constructMapping2ndSte
    p(SafeConstructor.java:143) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-
    b3061jnks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructMapping(BaseC
    onstructor.java:307) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jn
    ks]
            at org.yaml.snakeyaml.constructor.SafeConstructor$ConstructYamlMap.const
    ruct(SafeConstructor.java:459) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac5
    18-b3061jnks]
            at org.bukkit.configuration.file.YamlConstructor$ConstructCustomObject.c
    onstruct(YamlConstructor.java:26) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6
    ac518-b3061jnks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructObject(BaseCo
    nstructor.java:183) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnk
    s]
            at org.yaml.snakeyaml.constructor.BaseConstructor.constructDocument(Base
    Constructor.java:142) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061j
    nks]
            at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseCons
    tructor.java:128) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
    
            at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480) ~[craftbukkit.j
    ar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.yaml.snakeyaml.Yaml.load(Yaml.java:399) ~[craftbukkit.jar:git-Buk
    kit-1.7.2-R0.3-35-gd6ac518-b3061jnks]
            at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlCo
    nfiguration.java:53) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-35-gd6ac518-b3061jn
    ks]
            ... 19 more
    What is set to the config

    Code:
    Regions:
      AllRegions: !!me.XxZHALO13Xx.WorldProtect.Region
        entryMessage: null
        leaveMessage: null
        name: Test
        owner: XxZHALO13Xx
        p1:
          pitch: 0.0
          world: &id001 !!org.bukkit.craftbukkit.v1_7_R3.CraftWorld
            PVP: true
            ambientSpawnLimit: 15
            animalSpawnLimit: 15
            autoSave: true
            difficulty: EASY
            environment: NORMAL
            fullTime: 261027
            keepSpawnInMemory: true
            monsterSpawnLimit: 70
            thunderDuration: 10132
            thundering: false
            time: 21027
            waterAnimalSpawnLimit: 5
            weatherDuration: 84493
          x: -8.0
          y: 63.0
          yaw: 0.0
          z: -32.0
        p2:
          pitch: 0.0
          world: *id001
          x: -21.0
          y: 67.0
          yaw: 0.0
          z: -8.0
    
     
  2. Offline

    xTigerRebornx

    @XxZHALO13Xx Can you provide the Region class, and where do you register it for serialization (as you are attempting to save it in a config)
     
  3. @XxZHALO13Xx
    u`re saving the entire world, try just saving the name
    Code (open)
    World.getName();
     
  4. Offline

    TwerkinCraft

    This may not be on topic with the question, but shouldn't getRegionHere(Location) return a List of regions rather than a single region, because it is possible that you might have more than one region overlapping in a single location.
     
  5. Offline

    XxZHALO13Xx

    Code:
    package me.XxZHALO13Xx.WorldProtect;
    
    import org.bukkit.Location;
    
    public class Region {
    
        private String name;
        private Location p1;
        private Location p2;
        private String owner;
       
        private String entryMessage = null;
        private String leaveMessage = null;
       
        public Region(String name, Location p1, Location p2, String owner){
            this.name = name;
            this.p1 = p1;
            this.p2 = p2;
            this.owner = owner;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Location getP1() {
            return p1;
        }
    
        public void setP1(Location p1) {
            this.p1 = p1;
        }
    
        public Location getP2() {
            return p2;
        }
    
        public void setP2(Location p2) {
            this.p2 = p2;
        }
    
        public String getOwner() {
            return owner;
        }
    
        public void setOwner(String owner) {
            this.owner = owner;
        }
    
        public String getEntryMessage() {
            return entryMessage;
        }
    
        public void setEntryMessage(String entryMessage) {
            this.entryMessage = entryMessage;
        }
    
        public String getLeaveMessage() {
            return leaveMessage;
        }
    
        public void setLeaveMessage(String leaveMessage) {
            this.leaveMessage = leaveMessage;
        }
       
       
       
       
    }
    
    @xTigerRebornx @Juancomaster1998 @TwerkinCraft
     
  6. Offline

    xTigerRebornx

    @XxZHALO13Xx You aren't properly implementing ConfigurationSerializable, therefor it won't save and load properly.
     
Thread Status:
Not open for further replies.

Share This Page