From 775976d69fd16ef67dd5c9c3730cfb674666f28a Mon Sep 17 00:00:00 2001 From: RandomHashTags Date: Wed, 31 Oct 2018 19:30:44 -0500 Subject: [PATCH] Fixed the shop.yml saving with no contents --- .idea/artifacts/epicbuckets_jar.xml | 34 ++++++++++++++++++ ...Maven__com_google_code_gson_gson_2_2_4.xml | 13 +++++++ .../Maven__com_google_guava_guava_17_0.xml | 13 +++++++ ..._javax_persistence_persistence_api_1_0.xml | 13 +++++++ ...Maven__net_milkbowl_vault_VaultAPI_1_6.xml | 13 +++++++ .../Maven__org_avaje_ebean_2_8_1.xml | 13 +++++++ ...n__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml | 13 +++++++ .../Maven__org_yaml_snakeyaml_1_15.xml | 13 +++++++ src/main/java/META-INF/MANIFEST.MF | 3 ++ .../com/songoda/epicbuckets/EpicBuckets.java | 26 ++++++++++---- .../epicbuckets/genbuckets/GenbucketItem.java | 2 +- .../inventories/InventoryManager.java | 4 +-- .../listeners/GenbucketPlaceListener.java | 4 +-- .../listeners/InventoryClickListener.java | 2 +- .../genbuckets/GenbucketItem.class | Bin 4606 -> 4534 bytes .../inventories/InventoryManager.class | Bin 7380 -> 7305 bytes 16 files changed, 154 insertions(+), 12 deletions(-) create mode 100644 .idea/artifacts/epicbuckets_jar.xml create mode 100644 .idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml create mode 100644 .idea/libraries/Maven__com_google_guava_guava_17_0.xml create mode 100644 .idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml create mode 100644 .idea/libraries/Maven__net_milkbowl_vault_VaultAPI_1_6.xml create mode 100644 .idea/libraries/Maven__org_avaje_ebean_2_8_1.xml create mode 100644 .idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml create mode 100644 .idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml create mode 100644 src/main/java/META-INF/MANIFEST.MF diff --git a/.idea/artifacts/epicbuckets_jar.xml b/.idea/artifacts/epicbuckets_jar.xml new file mode 100644 index 0000000..e7083be --- /dev/null +++ b/.idea/artifacts/epicbuckets_jar.xml @@ -0,0 +1,34 @@ + + + $APPLICATION_HOME_DIR$/Spigot Plugins + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml b/.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml new file mode 100644 index 0000000..4533c1b --- /dev/null +++ b/.idea/libraries/Maven__com_google_code_gson_gson_2_2_4.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__com_google_guava_guava_17_0.xml b/.idea/libraries/Maven__com_google_guava_guava_17_0.xml new file mode 100644 index 0000000..2a9069c --- /dev/null +++ b/.idea/libraries/Maven__com_google_guava_guava_17_0.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml b/.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml new file mode 100644 index 0000000..e60370e --- /dev/null +++ b/.idea/libraries/Maven__javax_persistence_persistence_api_1_0.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__net_milkbowl_vault_VaultAPI_1_6.xml b/.idea/libraries/Maven__net_milkbowl_vault_VaultAPI_1_6.xml new file mode 100644 index 0000000..fa96a55 --- /dev/null +++ b/.idea/libraries/Maven__net_milkbowl_vault_VaultAPI_1_6.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml b/.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml new file mode 100644 index 0000000..91f161a --- /dev/null +++ b/.idea/libraries/Maven__org_avaje_ebean_2_8_1.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml b/.idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml new file mode 100644 index 0000000..2fb4911 --- /dev/null +++ b/.idea/libraries/Maven__org_bukkit_bukkit_1_9_R0_1_SNAPSHOT.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml b/.idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml new file mode 100644 index 0000000..02d9152 --- /dev/null +++ b/.idea/libraries/Maven__org_yaml_snakeyaml_1_15.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/main/java/META-INF/MANIFEST.MF b/src/main/java/META-INF/MANIFEST.MF new file mode 100644 index 0000000..33b1838 --- /dev/null +++ b/src/main/java/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: com.songoda.epicbuckets.EpicBuckets + diff --git a/src/main/java/com/songoda/epicbuckets/EpicBuckets.java b/src/main/java/com/songoda/epicbuckets/EpicBuckets.java index 2193afa..7047f3f 100644 --- a/src/main/java/com/songoda/epicbuckets/EpicBuckets.java +++ b/src/main/java/com/songoda/epicbuckets/EpicBuckets.java @@ -13,10 +13,13 @@ import net.milkbowl.vault.permission.Permission; import org.apache.commons.lang.ArrayUtils; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; +import org.bukkit.configuration.file.YamlConfiguration; import org.bukkit.entity.Player; import org.bukkit.plugin.RegisteredServiceProvider; import org.bukkit.plugin.java.JavaPlugin; +import java.io.File; + public class EpicBuckets extends JavaPlugin { private static CommandSender console = Bukkit.getConsoleSender(); @@ -24,7 +27,7 @@ public class EpicBuckets extends JavaPlugin { private static Permission permission = null; private static Economy economy = null; private static Chat chat = null; - public ShopFile shopFile; + public YamlConfiguration shopFile; private Locale locale; @@ -61,6 +64,21 @@ public class EpicBuckets extends JavaPlugin { console.sendMessage(ChatUtil.colorString("&a=============================")); } + private void save(String folder, String file) { + File f = null; + if(folder != null && !folder.equals("")) + f = new File(getDataFolder() + File.separator + folder + File.separator, file); + else + f = new File(getDataFolder() + File.separator, file); + if(!f.exists()) { + f.getParentFile().mkdirs(); + saveResource(folder != null && !folder.equals("") ? folder + File.separator + file : file, false); + } + if(file.equals("shops.yml")) { + shopFile = YamlConfiguration.loadConfiguration(f); + } + } + @Override public void onDisable() { console.sendMessage(ChatUtil.colorString("&a=============================")); @@ -76,11 +94,8 @@ public class EpicBuckets extends JavaPlugin { getLogger().warning("Folder not found, generating files!"); saveResource("shops.yml", false); saveDefaultConfig(); - } - shopFile = new ShopFile(); - - + save(null, "shops.yml"); } public double getBalance(Player player) { @@ -113,7 +128,6 @@ public class EpicBuckets extends JavaPlugin { public void reloadFiles() { this.locale.reloadMessages(); - shopFile.load(); reloadConfig(); } diff --git a/src/main/java/com/songoda/epicbuckets/genbuckets/GenbucketItem.java b/src/main/java/com/songoda/epicbuckets/genbuckets/GenbucketItem.java index 0cdefb1..eec4aad 100644 --- a/src/main/java/com/songoda/epicbuckets/genbuckets/GenbucketItem.java +++ b/src/main/java/com/songoda/epicbuckets/genbuckets/GenbucketItem.java @@ -35,7 +35,7 @@ public class GenbucketItem { public GenbucketItem(String shopName, String key) { - FileConfiguration config = EpicBuckets.getInstance().shopFile.config; + FileConfiguration config = EpicBuckets.getInstance().shopFile; this.itemName = ChatUtil.colorString(config.getString("shops." + shopName + "." + key + ".name")); diff --git a/src/main/java/com/songoda/epicbuckets/inventories/InventoryManager.java b/src/main/java/com/songoda/epicbuckets/inventories/InventoryManager.java index 5e27110..54eeacc 100644 --- a/src/main/java/com/songoda/epicbuckets/inventories/InventoryManager.java +++ b/src/main/java/com/songoda/epicbuckets/inventories/InventoryManager.java @@ -57,7 +57,7 @@ public class InventoryManager { public void loadSubInventory(Player player, String shopName) { - FileConfiguration config = EpicBuckets.getInstance().shopFile.config; + FileConfiguration config = EpicBuckets.getInstance().shopFile; String inventoryName = ChatUtil.colorString(config.getString("shops." + shopName + ".inventory-name")); @@ -97,7 +97,7 @@ public class InventoryManager { private void setBucketInSubGUI(Inventory inventory, String shopName, String key) { - FileConfiguration config = EpicBuckets.getInstance().shopFile.config; + FileConfiguration config = EpicBuckets.getInstance().shopFile; String name = ChatUtil.colorString(config.getString("shops." + shopName + "." + key + ".name")); diff --git a/src/main/java/com/songoda/epicbuckets/listeners/GenbucketPlaceListener.java b/src/main/java/com/songoda/epicbuckets/listeners/GenbucketPlaceListener.java index f21cd34..60ad34e 100644 --- a/src/main/java/com/songoda/epicbuckets/listeners/GenbucketPlaceListener.java +++ b/src/main/java/com/songoda/epicbuckets/listeners/GenbucketPlaceListener.java @@ -41,7 +41,7 @@ public class GenbucketPlaceListener implements Listener { @EventHandler public void onPlayerBucketEmptyEvent(PlayerBucketEmptyEvent event) { - FileConfiguration config = plugin.shopFile.config; + FileConfiguration config = plugin.shopFile; final Player player = event.getPlayer(); @@ -99,7 +99,7 @@ public class GenbucketPlaceListener implements Listener { Block clickedBlock = event.getClickedBlock(); - FileConfiguration config = plugin.shopFile.config; + FileConfiguration config = plugin.shopFile; boolean foundGenbucket = false; diff --git a/src/main/java/com/songoda/epicbuckets/listeners/InventoryClickListener.java b/src/main/java/com/songoda/epicbuckets/listeners/InventoryClickListener.java index 5744375..0e7c400 100644 --- a/src/main/java/com/songoda/epicbuckets/listeners/InventoryClickListener.java +++ b/src/main/java/com/songoda/epicbuckets/listeners/InventoryClickListener.java @@ -93,7 +93,7 @@ public class InventoryClickListener implements Listener { @EventHandler public void onClickSubInventory(InventoryClickEvent event) { - FileConfiguration config = plugin.shopFile.config; + FileConfiguration config = plugin.shopFile; String clickedInventory = ChatUtil.stripColor(event.getInventory().getTitle()); diff --git a/target/classes/com/songoda/epicbuckets/genbuckets/GenbucketItem.class b/target/classes/com/songoda/epicbuckets/genbuckets/GenbucketItem.class index 7c9109cf5db6c98c104ed8f21da456041122bc60..547dcdd0531faa533bc84e45ce8e42f24d5592c7 100644 GIT binary patch literal 4534 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 diff --git a/target/classes/com/songoda/epicbuckets/inventories/InventoryManager.class b/target/classes/com/songoda/epicbuckets/inventories/InventoryManager.class index 0b133e8ce3875cf2e73e1ded595e6081239c4c74..97bea70e260ca49feef8f51e92854fd6c71768e2 100644 GIT binary patch delta 2870 zcmaJ?3wTt;75>k@X70Vy5H=5T14(#92-$1`WV4cm1OfpeB#;7urm2=Fi3S3}kkCRO zOIvG|YPDXq7Tc<=mAY;9}b*4o4j{%6#MicG0#e{=f^>CZS?Iu2fJ0w1-=c5vL>iJV9K8??q zxC?iixCft=_?&)yuZ7R!J`2b21q)xqm-O&ufv*VMZz3PJNIanDuS$GP&kyQ7$4zXC zW5mKkIAJ1zQEep+K0GDyu*4%0k4l`B7?b$AKJ1jlV-nxsZFpSb35h2qzG)&4Pnmcc z-;#JnhyAwB@U+CU65lcLT|8&ud-%S@41zunSzYus) z;+GOHnfMicZE(bw_0HdzSb^VKcm=<+@O%70;*a{sKj~BcY~nBYtM>Yv#NTycuL}G_ z;GZL%bQk5a^)G>cyD+>a@ShRs?efqI&QAY=rnh3Vz<(9a;B|%n;SIvHwly0&!t1xL zY1>lW+t=UEI~D$qv*)ku?>p3^Fivnz`%7DhJc7K6e0ugP3Xl*a6?Tw8Fed{lGRYF8 z6upIV1Wi+vOVc?cMM26_lurdtB+w8kq!|Q%b>C3W9z{iDD=NlWg%4nuD^WC)W(g`$ zREo`t%4oKtIW*U~KhT~(kID&Dtv3%H+{XzHVc3~2W|m(>wxIcn7ElF2RqyQCf5l+m zzM;N>y^0o6rJ@j3Iqf1pC#-mTjlgS)7SUp7P_&mXQB+G2L3N6vbTJ`kSNDPLn&F|o z{+f=C_05WwQoU1Z*v`0Ev@)h>87)`TfP;z}X@#Pd)Ffz?qSe$aXpQz>%QosC6iZ*as)QZi{fGh|UQX3)S+(VI(G3obv7PmStS@sNOqo<~`dr$xBfxW$bR}K$$ z>jIXIgmYSa?VI@8=$`s(F`eYl|Y}sE+T>50^D|cfH$yIAin#Io8(>$ z=)|~&3J$0^*M&)V9zxm1@FU3Y97REJb^+-Y~)7f6m*fyd9E3p=<7{zAvvvmaPa4TAHCt7hY zlm8;NGISjjH_=IX=%PYgN@ci=DwqsS;XYXGROeD?Y4kD_vX!P#zuU(oc_3)6OQshU zL@seYKJsN;&1Cxd`AL`H04H*i>FnkNkFXT)=T#Z!tZs7|He7~7n&GEmWf*31cQM7p zze$>#_{|y4&!cbb1k1(TXqx5LG|Mrc?VG~0hB&MduFN28ILX3k=X2mXgfb2y8n{p( z-9G8gNg$j=bxd5yJ4>uF;VoV7`1#$K&9WvFe38x9Jc-3I<3iDwWZXs6ypUh*q@NWk zuxx+aHf-T5FnvixQmFG{vZX3vaxd&;Y-i?FYETh~Z zhuD&QWG~*s+FDeZL_1~&+Q1$2Wr_Z7{jsPk-5iF3Nh zh%JguvZ^U`IbWK=CBx1nmsy{BCv2Bgor9oZ`|W^6PipjHW~jih&2vF?4%i`A6ZM4x z#xl^brFBiq?HE4jUL$QyK*Kj&tD}zc7^=9v|uwM`3z`)k3USg(O@hItIgYZ9Lo||?rbV9?rMnn zt4jFU_9xJI3M<^AuJKYyZuD-JC9O=St8(jtD}5)C*Xa#5ZAoI)ajf=vvwbuvR#oR| zmGeaL#V#fhmWOJTGS^4g;#9Ke9G(yvgS$cF*_=9)AeSaMUMiGZmqN3L;armfe@VS5T;jngO@MH8W-&E5CuWvySY`*##lT0$#vkR#nbI>l)5Z-nD}jwH2vf0`xKmEqtkr}1 zrZh74+qrmMx@IAjEj=~S7z=STKE?%muo%}(lpbN?b+h|i5X#^iM-u|BSoXUT>3#<1 S3EX6yK@p>IGl%xz<8K1Mnl_{W delta 2899 zcmaJ@33yaj75>k>nYs79xzJ>?P6AA5^EAg=2kLx=V7Fwe?;lt+; zvoMLcmJ%jAKWX9-JSuTY;ZQ&Vw zMdGX4_SbZn&q{n<;u{veiEsIE7T=cmj>LB*z9;d0i65BwVJCiM;W_+R;Ca3OMBoL9 zpGv%F;b-`{$rgX1Z~oH4I=tk=ukdRheuLji{7$?4z4r143xCARTI){|f7aRkMc}Uj zf17BhW0b+t-v$2RU@;|dZo)7+UG%)Y)3c;@E7}D9sqioSTj4yW370i(Z0;y)Xy4e> z7TVq0-_JJ{f#{VdqrHcE6uHQ-pYjwny2&HRt4QcwDl*9uySkHi>LYkv!E|J1bIKY`GDx!IU<||r& zHbo0*k)p+Pxu9Z&ow&h%z}p&KLQ6U1kTx=QaJWZdKMv@J!LETGf;Tig(z}ZVcCl+{ zP|-4)BdA1CkV*+E)ZH_>YovF0tXH3vQAklaEhmUjch^AI9_QX@|InDA3PmgE3V|s_ zm9&yGbwUme+C!p#aahqRS}mwbQG~7}%J?o@n*=rJ8;zV6XTF)XC~DGRH!Er(Ls2W*2pNx$ zuiCJGWTarj!CkOgAlg6W z1UZCZ9T?{jWP^%hEseu<0`pE_eskF)$lf-I9RGqC@=E#NzmS(00x_6zSP}Qd3X4(- zBJ8>NbaCp`GdJul^Isl=CoC>jE4FXTUhG?P;lQ5Et}0Cjv6QU@e7yLVrR){l2k-dw zVm6ugyz1j&IaH6cV`|=8+D-#GC z&<$)j4P3%i0w%!6;D;Id9q7Y5un#9Oz+a>x%EXOSg;8o|jCDO6N`jlNf)3R@Arz(M-7@~%K$_R5GA%rOJjf1_px13_n$>D~ZNr?6m2k0U)LPvb34M`$UD zg+y!yi(>u>akIvPJMs|T%E{^hb`5TEptuFAowWJ44+@;LO-!(#TX7pRl>(sddgtm9 zXa3%voU=?pHY4a|_lGGX?7uP&Uz1UD9Mv(bNg#uu8zF&A!o66oB|qT|Y9gM}xvUiM z#IW`Z)^VnGML|xW)_n?D+YJBuwm3E%N1fYn$Dymo-dPafd48~9l>