Advertisement
Guest User

Untitled

a guest
Nov 21st, 2014
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. package us.pixelkits.pixelbadges.config;
  2.  
  3. import java.io.File;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6.  
  7. import org.bukkit.Bukkit;
  8. import org.bukkit.ChatColor;
  9. import org.bukkit.configuration.file.FileConfiguration;
  10. import org.bukkit.configuration.file.YamlConfiguration;
  11. import org.bukkit.entity.Player;
  12. import org.bukkit.plugin.Plugin;
  13.  
  14. import us.pixelkits.pixelbadges.Main;
  15. import us.pixelkits.pixelbadges.utilities.BadgeUtils;
  16.  
  17. public class StatsConfig {
  18.  
  19. public static StatsConfig getInstance() {
  20. return instance;
  21. }
  22.  
  23. public Plugin getPlugin(){
  24. return Bukkit.getPluginManager().getPlugin("PixelBadge");
  25. }
  26.  
  27. private static Main i;
  28.  
  29. private static StatsConfig instance = new StatsConfig(i);
  30.  
  31. public StatsConfig(Main m) {
  32. this.i = i;
  33. }
  34.  
  35. private FileConfiguration stats;
  36. private File sfile;
  37.  
  38. public void setup(Main plugin) {
  39. if (!plugin.getDataFolder().exists()) {
  40. plugin.getDataFolder().mkdirs();
  41.  
  42. }
  43.  
  44. sfile = new File(plugin.getDataFolder(), "playerStats.yml");
  45.  
  46. if (!sfile.exists()) {
  47. try { sfile.createNewFile(); }
  48. catch (Exception e) { e.printStackTrace(); }
  49. }
  50.  
  51. stats = YamlConfiguration.loadConfiguration(sfile);
  52. }
  53. public void set(Player p, String var, Object value) {
  54. set(p.getName() + "." + var, value);
  55. }
  56.  
  57. public void set(String path, Object value) {
  58. stats.set(path, value);
  59. try {
  60. stats.save(sfile);
  61. } catch (Exception e) {
  62. e.printStackTrace();
  63. }
  64. }
  65. public <T> T get(Player p, String var) {
  66. return get(p.getName() + ".var");
  67. }
  68.  
  69. @SuppressWarnings("unchecked")
  70. public <T> T get(String path) {
  71. T t = (T) stats.get(path);
  72. if (t == null) {
  73. set(path, 0);
  74. return get(path);
  75. }
  76. return t;
  77. }
  78.  
  79. public void saveConfig() {
  80. try {
  81. stats.save(sfile);
  82. } catch (Exception e) {
  83. e.printStackTrace();
  84. }
  85. }
  86.  
  87.  
  88. public void giveBadge(Player p, String s) {
  89.  
  90. String name = p.getUniqueId().toString();
  91.  
  92. ArrayList<String> l = new ArrayList<String>();
  93.  
  94. String st = i.getConfig().getStringList(name + ".badges").toString();
  95.  
  96. l.clear();
  97. l.add(st);
  98.  
  99.  
  100. BadgeUtils.add(p, 1);
  101. saveConfig();
  102. }
  103.  
  104. public void takeBadge(Player p, String s) {
  105.  
  106. String name = p.getUniqueId().toString();
  107.  
  108. ArrayList<String> l = new ArrayList<String>();
  109.  
  110. l.clear();
  111. l.set(i.getConfig().getStringList(name + ".badges"));
  112.  
  113. l.remove(s);
  114. BadgeUtils.take(p, 1);
  115.  
  116. saveConfig();
  117. }
  118.  
  119. public void getBadges(Player p, Player t) {
  120.  
  121. String name = t.getUniqueId().toString();
  122.  
  123. ArrayList<String> l = new ArrayList<String>();
  124.  
  125. l.clear();
  126. l.addAll(i.getConfig().getStringList(name + "badges"));
  127.  
  128. p.sendMessage(ChatColor.GREEN + t.getName() + " ยง7" + l);
  129.  
  130. saveConfig();
  131. }
  132.  
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement