Advertisement
Guest User

Untitled

a guest
Oct 20th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.96 KB | None | 0 0
  1. package me.nibblesnow.advancedseen;
  2.  
  3. import com.massivecraft.factions.FPlayer;
  4. import me.nibblesnow.advancedseen.command.AdvancedSeenCommand;
  5. import me.nibblesnow.advancedseen.command.AltBanCommand;
  6. import me.nibblesnow.advancedseen.command.IPHistoryCommand;
  7. import me.nibblesnow.advancedseen.command.IPLookupCommand;
  8. import me.nibblesnow.advancedseen.lib.Factions;
  9. import me.nibblesnow.advancedseen.lib.Vault;
  10. import me.nibblesnow.advancedseen.listener.PlayerListener;
  11. import me.nibblesnow.advancedseen.manager.DataManager;
  12. import me.nibblesnow.advancedseen.manager.SQLManager;
  13. import me.nibblesnow.advancedseen.util.Chat;
  14. import me.nibblesnow.advancedseen.util.Constants;
  15. import me.nibblesnow.advancedseen.util.Fetcher;
  16. import org.bukkit.Bukkit;
  17. import org.bukkit.ChatColor;
  18. import org.bukkit.command.CommandSender;
  19. import org.bukkit.entity.Player;
  20. import org.bukkit.plugin.java.JavaPlugin;
  21.  
  22. import java.text.SimpleDateFormat;
  23. import java.util.List;
  24. import java.util.UUID;
  25.  
  26. public class AdvancedSeen extends JavaPlugin {
  27.  
  28. private static AdvancedSeen instance = null;
  29. private DataManager dataManager;
  30.  
  31. private static long START_TIME;
  32.  
  33. public void onEnable() {
  34. START_TIME = System.currentTimeMillis();
  35. Chat.log("Waking up from a deep sleep - Hello World!");
  36. Chat.log("Start Time: " + new SimpleDateFormat("MM/d/yy '@' h:mm:ss.S a").format(getStartTime()));
  37. Chat.log("Build Number: " + getBuildNumber());
  38. Chat.log("Developers: " + getDevelopers());
  39. instance = this;
  40.  
  41. // Register all custom and built-in configuration files
  42. loadConfigManager();
  43. loadDataManager();
  44.  
  45. // Connect to the MySQL Database
  46. SQLManager.setup();
  47.  
  48. // Hook into the dependencies
  49. Vault.hook();
  50. Factions.hook();
  51.  
  52. // Register all commands
  53. Chat.log("Registering commands");
  54. getCommand("advancedseen").setExecutor(new AdvancedSeenCommand());
  55. getCommand("advancedseen").setTabCompleter(new AdvancedSeenCommand());
  56. getCommand("altban").setExecutor(new AltBanCommand());
  57. getCommand("altban").setTabCompleter(new AltBanCommand());
  58. getCommand("iphistory").setExecutor(new IPHistoryCommand());
  59. getCommand("iphistory").setTabCompleter(new IPHistoryCommand());
  60. getCommand("iplookup").setExecutor(new IPLookupCommand());
  61. getCommand("iplookup").setTabCompleter(new IPLookupCommand());
  62.  
  63. // Register all listeners
  64. Chat.log("Registering listeners");
  65. getServer().getPluginManager().registerEvents(new PlayerListener(), getInstance());
  66.  
  67. Chat.log("=== ENABLE DONE (Took " + (System.currentTimeMillis() - START_TIME) + "ms) ===");
  68. }
  69.  
  70. public void onDisable() {
  71. instance = null;
  72. Vault.unhook();
  73. Factions.unhook();
  74. }
  75.  
  76. public static AdvancedSeen getInstance() {
  77. return instance;
  78. }
  79.  
  80. public static long getStartTime() {
  81. return START_TIME;
  82. }
  83.  
  84. public static String getBuildNumber() {
  85. return Constants.BUILD_NUMBER;
  86. }
  87.  
  88. public static List<String> getDevelopers() {
  89. return Constants.DEVELOPERS;
  90. }
  91.  
  92. public static boolean seenLocally(UUID uuid) {
  93. return AdvancedSeen.getInstance().getDataManager().getData().contains(uuid.toString() + ".lastLogin");
  94. }
  95.  
  96. public static boolean isOnline(String player) {
  97. Player onlinePlayer = Bukkit.getPlayerExact(player);
  98. if (onlinePlayer == null) return false; return true;
  99. }
  100.  
  101. public static String getGroupColor(String group) {
  102. String groupColor = "r";
  103. for (String key : getInstance().getConfig().getConfigurationSection("groups").getKeys(false)) {
  104. if (group.equalsIgnoreCase(key)) {
  105. groupColor = getInstance().getConfig().getString("groups." + key + ".color");
  106. }
  107. }
  108. return groupColor;
  109. }
  110.  
  111. public static ChatColor getRelationColor(FPlayer player, FPlayer otherPlayer) {
  112. return player.getColorTo(otherPlayer);
  113. }
  114.  
  115. public static UUID getUUID(String argument) {
  116. UUID uuid;
  117. try {
  118. uuid = UUID.fromString(argument);
  119. } catch (Exception e) {
  120. uuid = Fetcher.getUUID(argument);
  121. }
  122. return uuid;
  123. }
  124.  
  125. public static UUID getUUID(String argument, CommandSender sender) {
  126. UUID uuid;
  127. try {
  128. uuid = UUID.fromString(argument);
  129. } catch (Exception e) {
  130. uuid = Fetcher.getUUID(argument, sender);
  131. }
  132. return uuid;
  133. }
  134.  
  135. public DataManager getDataManager() {
  136. return dataManager;
  137. }
  138.  
  139. private void loadDataManager() {
  140. dataManager = new DataManager();
  141. dataManager.setup();
  142. dataManager.saveData();
  143. }
  144.  
  145. private void loadConfigManager() {
  146. saveDefaultConfig();
  147. Chat.log("Successfully loaded config.yml file");
  148. }
  149.  
  150. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement