SpoutStart.java 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package com.gmail.nossr50.runnables;
  2. import org.getspout.spoutapi.SpoutManager;
  3. import org.getspout.spoutapi.event.spout.SpoutCraftEnableEvent;
  4. import org.getspout.spoutapi.player.FileManager;
  5. import org.getspout.spoutapi.player.SpoutPlayer;
  6. import com.gmail.nossr50.mcMMO;
  7. import com.gmail.nossr50.config.SpoutConfig;
  8. import com.gmail.nossr50.spout.SpoutStuff;
  9. public class SpoutStart implements Runnable{
  10. private final mcMMO plugin;
  11. public SpoutStart(final mcMMO plugin) {
  12. this.plugin = plugin;
  13. }
  14. @Override
  15. public void run() {
  16. if (plugin.getServer().getPluginManager().getPlugin("Spout") != null) {
  17. mcMMO.spoutEnabled = true;
  18. }
  19. else {
  20. mcMMO.spoutEnabled = false;
  21. }
  22. //Spout Stuff
  23. if (mcMMO.spoutEnabled) {
  24. SpoutConfig.getInstance();
  25. SpoutStuff.setupSpoutConfigs();
  26. SpoutStuff.registerCustomEvent();
  27. SpoutStuff.extractFiles(); //Extract source materials
  28. FileManager FM = SpoutManager.getFileManager();
  29. FM.addToPreLoginCache(plugin, SpoutStuff.getFiles());
  30. //Handle spout players after a /reload
  31. for (SpoutPlayer spoutPlayer : SpoutManager.getPlayerManager().getOnlinePlayers()) {
  32. SpoutCraftEnableEvent spoutCraftEnableEvent = new SpoutCraftEnableEvent(spoutPlayer);
  33. mcMMO.p.getServer().getPluginManager().callEvent(spoutCraftEnableEvent);
  34. }
  35. }
  36. }
  37. }