/src/net/sacredlabyrinth/Phaed/PreciousStones/PreciousStones.java

https://github.com/FreezyExp/PreciousStones · Java · 370 lines · 235 code · 39 blank · 96 comment · 0 complexity · 189510be030baa9a153454e6cef84bcc MD5 · raw file

  1. package net.sacredlabyrinth.Phaed.PreciousStones;
  2. import com.nijikokun.register.payment.Method;
  3. import net.sacredlabyrinth.Phaed.PreciousStones.listeners.*;
  4. import net.sacredlabyrinth.Phaed.PreciousStones.managers.*;
  5. import org.bukkit.event.Event;
  6. import org.bukkit.event.Event.Priority;
  7. import org.bukkit.plugin.java.JavaPlugin;
  8. import java.text.MessageFormat;
  9. import java.util.logging.Level;
  10. import java.util.logging.Logger;
  11. /**
  12. * PreciousStones for Bukkit
  13. *
  14. * @author Phaed
  15. */
  16. public class PreciousStones extends JavaPlugin
  17. {
  18. private static PreciousStones instance;
  19. private static Logger logger = Logger.getLogger("Minecraft");
  20. private Method Method;
  21. private SettingsManager settingsManager;
  22. private SimpleClansManager simpleClansManager;
  23. private CommandManager commandManager;
  24. private LimitManager limitManager;
  25. private ForceFieldManager forceFieldManager;
  26. private CuboidManager cuboidManager;
  27. private UnbreakableManager unbreakableManager;
  28. private UnprotectableManager unprotectableManager;
  29. private GriefUndoManager griefUndoManager;
  30. private StorageManager storageManager;
  31. private CommunicatonManager communicationManager;
  32. private EntryManager entryManager;
  33. private PlayerManager playerManager;
  34. private SnitchManager snitchManager;
  35. private MineManager mineManager;
  36. private LightningManager lightningManager;
  37. private VelocityManager velocityManager;
  38. private PermissionsManager permissionsManager;
  39. private VisualizationManager visualizationManager;
  40. private ForesterManager foresterManager;
  41. private LegacyManager legacyManager;
  42. private PSPlayerListener playerListener;
  43. private PSBlockListener blockListener;
  44. private PSEntityListener entityListener;
  45. private PSWorldListener worldListener;
  46. private PSVehicleListener vehicleListener;
  47. private PSServerListener serverListener;
  48. /**
  49. * @return the instance
  50. */
  51. public static PreciousStones getInstance()
  52. {
  53. return instance;
  54. }
  55. /**
  56. * @return the logger
  57. */
  58. public static Logger getLogger()
  59. {
  60. return logger;
  61. }
  62. /**
  63. * Parameterized logger
  64. *
  65. * @param level
  66. * @param msg the message
  67. * @param arg the arguments
  68. */
  69. public static void log(Level level, String msg, Object... arg)
  70. {
  71. logger.log(level, new StringBuilder().append("[PreciousStones] ").append(MessageFormat.format(msg, arg)).toString());
  72. }
  73. /**
  74. * Parameterized info logger
  75. *
  76. * @param msg
  77. * @param arg
  78. */
  79. public static void log(String msg, Object... arg)
  80. {
  81. log(Level.INFO, msg, arg);
  82. }
  83. /**
  84. * Runs on plugin enable
  85. */
  86. public void onEnable()
  87. {
  88. displayStatusInfo();
  89. instance = this;
  90. settingsManager = new SettingsManager();
  91. simpleClansManager = new SimpleClansManager();
  92. commandManager = new CommandManager();
  93. limitManager = new LimitManager();
  94. forceFieldManager = new ForceFieldManager();
  95. cuboidManager = new CuboidManager();
  96. unbreakableManager = new UnbreakableManager();
  97. unprotectableManager = new UnprotectableManager();
  98. communicationManager = new CommunicatonManager();
  99. entryManager = new EntryManager();
  100. playerManager = new PlayerManager();
  101. snitchManager = new SnitchManager();
  102. mineManager = new MineManager();
  103. lightningManager = new LightningManager();
  104. velocityManager = new VelocityManager();
  105. permissionsManager = new PermissionsManager();
  106. visualizationManager = new VisualizationManager();
  107. foresterManager = new ForesterManager();
  108. griefUndoManager = new GriefUndoManager();
  109. storageManager = new StorageManager();
  110. legacyManager = new LegacyManager();
  111. playerListener = new PSPlayerListener();
  112. blockListener = new PSBlockListener();
  113. entityListener = new PSEntityListener();
  114. vehicleListener = new PSVehicleListener();
  115. worldListener = new PSWorldListener();
  116. serverListener = new PSServerListener();
  117. registerEvents();
  118. registerCommands();
  119. }
  120. private void displayStatusInfo()
  121. {
  122. log("Version {0} loaded", getDescription().getVersion());
  123. }
  124. private void registerEvents()
  125. {
  126. getServer().getPluginManager().registerEvent(Event.Type.ENTITY_DAMAGE, entityListener, Priority.High, this);
  127. getServer().getPluginManager().registerEvent(Event.Type.ENTITY_DEATH, entityListener, Priority.High, this);
  128. getServer().getPluginManager().registerEvent(Event.Type.ENTITY_EXPLODE, entityListener, Event.Priority.High, this);
  129. getServer().getPluginManager().registerEvent(Event.Type.ENTITY_TARGET, entityListener, Event.Priority.High, this);
  130. getServer().getPluginManager().registerEvent(Event.Type.ENDERMAN_PICKUP, entityListener, Event.Priority.High, this);
  131. getServer().getPluginManager().registerEvent(Event.Type.ENDERMAN_PLACE, entityListener, Event.Priority.High, this);
  132. getServer().getPluginManager().registerEvent(Event.Type.ITEM_SPAWN, entityListener, Priority.High, this);
  133. getServer().getPluginManager().registerEvent(Event.Type.PAINTING_BREAK, entityListener, Event.Priority.High, this);
  134. getServer().getPluginManager().registerEvent(Event.Type.PAINTING_PLACE, entityListener, Event.Priority.High, this);
  135. getServer().getPluginManager().registerEvent(Event.Type.EXPLOSION_PRIME, entityListener, Event.Priority.High, this);
  136. getServer().getPluginManager().registerEvent(Event.Type.CREATURE_SPAWN, entityListener, Event.Priority.High, this);
  137. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_LOGIN, playerListener, Priority.High, this);
  138. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_QUIT, playerListener, Priority.High, this);
  139. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_KICK, playerListener, Priority.High, this);
  140. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_MOVE, playerListener, Priority.High, this);
  141. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_TELEPORT, playerListener, Priority.High, this);
  142. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_INTERACT, playerListener, Priority.High, this);
  143. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_BUCKET_EMPTY, playerListener, Priority.High, this);
  144. getServer().getPluginManager().registerEvent(Event.Type.PLAYER_BUCKET_FILL, playerListener, Priority.High, this);
  145. getServer().getPluginManager().registerEvent(Event.Type.PLUGIN_ENABLE, serverListener, Priority.Monitor, this);
  146. getServer().getPluginManager().registerEvent(Event.Type.PLUGIN_DISABLE, serverListener, Priority.Monitor, this);
  147. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_FROMTO, blockListener, Priority.Normal, this);
  148. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_PHYSICS, blockListener, Priority.Normal, this);
  149. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_PLACE, blockListener, Priority.High, this);
  150. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_IGNITE, blockListener, Priority.High, this);
  151. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_BREAK, blockListener, Priority.High, this);
  152. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_DAMAGE, blockListener, Priority.High, this);
  153. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_PISTON_EXTEND, blockListener, Priority.High, this);
  154. getServer().getPluginManager().registerEvent(Event.Type.BLOCK_PISTON_RETRACT, blockListener, Priority.High, this);
  155. getServer().getPluginManager().registerEvent(Event.Type.REDSTONE_CHANGE, blockListener, Priority.High, this);
  156. getServer().getPluginManager().registerEvent(Event.Type.VEHICLE_MOVE, vehicleListener, Priority.High, this);
  157. getServer().getPluginManager().registerEvent(Event.Type.VEHICLE_UPDATE, vehicleListener, Priority.High, this);
  158. getServer().getPluginManager().registerEvent(Event.Type.WORLD_LOAD, worldListener, Priority.High, this);
  159. }
  160. private void registerCommands()
  161. {
  162. getCommand("ps").setExecutor(getCommandManager());
  163. }
  164. /**
  165. * Runs on plugin disable
  166. */
  167. public void onDisable()
  168. {
  169. getStorageManager().processQueue();
  170. getServer().getScheduler().cancelTasks(this);
  171. getStorageManager().closeConnection();
  172. }
  173. /**
  174. * @param Method the Method to set
  175. */
  176. public void setMethod(Method Method)
  177. {
  178. this.Method = Method;
  179. }
  180. /**
  181. * @return the Method
  182. */
  183. public Method getMethod()
  184. {
  185. return Method;
  186. }
  187. /**
  188. * @return the settingsManager
  189. */
  190. public SettingsManager getSettingsManager()
  191. {
  192. return settingsManager;
  193. }
  194. /**
  195. * @return the commandManager
  196. */
  197. public CommandManager getCommandManager()
  198. {
  199. return commandManager;
  200. }
  201. /**
  202. * @return the forceFieldManager
  203. */
  204. public ForceFieldManager getForceFieldManager()
  205. {
  206. return forceFieldManager;
  207. }
  208. /**
  209. * @return the unbreakableManager
  210. */
  211. public UnbreakableManager getUnbreakableManager()
  212. {
  213. return unbreakableManager;
  214. }
  215. /**
  216. * @return the unprotectableManager
  217. */
  218. public UnprotectableManager getUnprotectableManager()
  219. {
  220. return unprotectableManager;
  221. }
  222. /**
  223. * @return the griefUndoManager
  224. */
  225. public GriefUndoManager getGriefUndoManager()
  226. {
  227. return griefUndoManager;
  228. }
  229. /**
  230. * @return the storageManager
  231. */
  232. public StorageManager getStorageManager()
  233. {
  234. return storageManager;
  235. }
  236. /**
  237. * @return the communicationManager
  238. */
  239. public CommunicatonManager getCommunicationManager()
  240. {
  241. return communicationManager;
  242. }
  243. /**
  244. * @return the entryManager
  245. */
  246. public EntryManager getEntryManager()
  247. {
  248. return entryManager;
  249. }
  250. /**
  251. * @return the playerManager
  252. */
  253. public PlayerManager getPlayerManager()
  254. {
  255. return playerManager;
  256. }
  257. /**
  258. * @return the snitchManager
  259. */
  260. public SnitchManager getSnitchManager()
  261. {
  262. return snitchManager;
  263. }
  264. /**
  265. * @return the mineManager
  266. */
  267. public MineManager getMineManager()
  268. {
  269. return mineManager;
  270. }
  271. /**
  272. * @return the lightningManager
  273. */
  274. public LightningManager getLightningManager()
  275. {
  276. return lightningManager;
  277. }
  278. /**
  279. * @return the velocityManager
  280. */
  281. public VelocityManager getVelocityManager()
  282. {
  283. return velocityManager;
  284. }
  285. /**
  286. * @return the permissionsManager
  287. */
  288. public PermissionsManager getPermissionsManager()
  289. {
  290. return permissionsManager;
  291. }
  292. /**
  293. * @return the simpleClansManager
  294. */
  295. public SimpleClansManager getSimpleClansManager()
  296. {
  297. return simpleClansManager;
  298. }
  299. /**
  300. * @return the visualizationManager
  301. */
  302. public VisualizationManager getVisualizationManager()
  303. {
  304. return visualizationManager;
  305. }
  306. /**
  307. * @return the foresterManager
  308. */
  309. public ForesterManager getForesterManager()
  310. {
  311. return foresterManager;
  312. }
  313. /**
  314. * @return the legacyManager
  315. */
  316. public LegacyManager getLegacyManager()
  317. {
  318. return legacyManager;
  319. }
  320. /**
  321. * @return the limitManager
  322. */
  323. public LimitManager getLimitManager()
  324. {
  325. return limitManager;
  326. }
  327. public CuboidManager getCuboidManager()
  328. {
  329. return cuboidManager;
  330. }
  331. }