/[projects]/miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/HoerupUtilsPlugin.java
ViewVC logotype

Annotation of /miscJava/bukkit-minecraft-plugins/HoerupUtils/src/main/java/dk/thoerup/bukkit/hoeruputils/HoerupUtilsPlugin.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1762 - (hide annotations) (download)
Wed Mar 21 19:24:25 2012 UTC (12 years, 2 months ago) by torben
File size: 4866 byte(s)
Apparently can the singleton pattern be used to do lazy class loading
1 torben 1236 package dk.thoerup.bukkit.hoeruputils;
2    
3    
4 torben 1760 import java.lang.reflect.Method;
5    
6     import org.bukkit.configuration.Configuration;
7 torben 1236 import org.bukkit.plugin.PluginManager;
8     import org.bukkit.plugin.java.JavaPlugin;
9    
10 torben 1723 import dk.thoerup.bukkit.hoeruputils.creative.GeneralContractorCommands;
11 torben 1531 import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener;
12 torben 1762 import dk.thoerup.bukkit.hoeruputils.web.WebLoader;
13 torben 1241
14 torben 1236 public class HoerupUtilsPlugin extends JavaPlugin {
15    
16     @Override
17     public void onDisable() {
18     // TODO Auto-generated method stub
19     }
20    
21    
22     @Override
23     public void onEnable() {
24     System.out.println("Loading HoerupUtils plugin");
25     getCommand("whereis").setExecutor(new WhereisCommand(getServer()));
26 torben 1589 //getCommand("mapgen").setExecutor(new MapgenCommand(this));
27 torben 1242 getCommand("eternalday").setExecutor(new EternalDayCommand(this));
28 torben 1472 getCommand("getpos").setExecutor( new GetposCommand() );
29 torben 1499 getCommand("msg").setExecutor( new MsgCommand( getServer() ) );
30 torben 1586 getCommand("tp").setExecutor( new TeleportCommand() );
31 torben 1590
32     getCommand("wall").setExecutor( new WallCommand() );
33 torben 1592 getCommand("weather").setExecutor( new WeatherCommand() );
34    
35 torben 1673 getCommand("gc").setExecutor( new GcCommand() );
36 torben 1592
37 torben 1673
38 torben 1592 HomeCommand home = new HomeCommand(this);
39     getCommand("home").setExecutor( home );
40     getCommand("sethome").setExecutor( home );
41 torben 1667
42 torben 1671 DiverCommand diver = new DiverCommand(this );
43     getCommand("diver").setExecutor( diver );
44 torben 1723
45     GeneralContractorCommands generalContractor = new GeneralContractorCommands();
46 torben 1729 getCommand("replay").setExecutor( generalContractor );
47 torben 1723 getCommand("levelarea").setExecutor( generalContractor );
48     getCommand("fillarea").setExecutor( generalContractor );
49     getCommand("slopearea").setExecutor( generalContractor );
50     getCommand("setsurface").setExecutor( generalContractor );
51 torben 1730 getCommand("platform").setExecutor( generalContractor );
52 torben 1733 getCommand("cylinder").setExecutor( generalContractor );
53 torben 1751 getCommand("createcave").setExecutor( generalContractor );
54 torben 1667
55 torben 1738
56 torben 1739 getCommand("template").setExecutor( new TemplateCommand(this) );
57 torben 1671
58 torben 1667 LogintimeHandler logintimeHandler = new LogintimeHandler( this.getDataFolder() );
59 torben 1236
60 torben 1592
61 torben 1236 PluginManager pm = getServer().getPluginManager();
62 torben 1602
63    
64 torben 1680 pm.registerEvents(logintimeHandler, this);
65     pm.registerEvents(logintimeHandler, this);
66 torben 1667
67 torben 1671
68 torben 1680 pm.registerEvents(diver, this);
69 torben 1667
70 torben 1671
71 torben 1680 pm.registerEvents(new EndermanStopper(), this);
72 torben 1667
73    
74 torben 1241 //register web plugins
75 torben 1685 //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this);
76     //pm.registerEvent(Event.Type.CUSTOM_EVENT, new MessageListener(getServer()), Priority.Normal, this);
77    
78 torben 1760 try {
79     try {
80     //først probes om klassen i det hele taget findes
81 torben 1762 Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); //if it fails it throws an exception
82     WebLoader.getInstance().load(this, logintimeHandler.getConfig(), home.getConfig());
83    
84 torben 1760 getLogger().warning("ApiBukkit found, status listener registered");
85    
86     } catch (ClassNotFoundException e) {
87     getLogger().warning("Could not find ApiBukkit - web status is disabled" );
88 torben 1762 }
89 torben 1760 } catch (Throwable e) { //instead of ClassNotFoundException + NoSuchMethodException + InvocationTargetException + IllegalAccessException
90     getLogger().warning("Could not find ApiBukkit - web status is disabled (" + e.getClass().getName() + ":" + e.getMessage() + ")" );
91     }
92 torben 1378
93    
94 torben 1653
95    
96     DoorBlockListener secretDoor = new DoorBlockListener(this);
97 torben 1680 pm.registerEvents(secretDoor, this);
98     pm.registerEvents(secretDoor.getPlayerListener(), this);
99 torben 1653
100     }
101    
102     private void deprecated() {
103     /*
104     getCommand("stoner").setExecutor( new StonerCommand() );
105 torben 1654 getCommand("spawn").setExecutor( new SpawnCommand() );
106 torben 1653 getCommand("boom").setExecutor( new BoomCommand(this) );
107     getCommand("grass").setExecutor(new GrassCommand());
108    
109     getCommand("zapme").setExecutor( new ZapmeCommand() );
110     getCommand("zap").setExecutor( new ZapCommand() );
111    
112    
113 torben 1385 PowerMiner powerMiner = new PowerMiner();
114     pm.registerEvent(Event.Type.BLOCK_DAMAGE, powerMiner, Priority.Normal, this);
115 torben 1388 pm.registerEvent(Event.Type.PLAYER_QUIT, powerMiner.getPlayerQuitListener(), Priority.Normal, this);
116 torben 1385 getCommand("powerminer").setExecutor(powerMiner);
117 torben 1522
118     SuperMiner superMiner = new SuperMiner();
119     pm.registerEvent(Event.Type.BLOCK_DAMAGE, superMiner, Priority.Normal, this);
120     pm.registerEvent(Event.Type.PLAYER_QUIT, superMiner.getPlayerQuitListener(), Priority.Normal, this);
121     getCommand("superminer").setExecutor(superMiner);
122 torben 1524
123 torben 1525
124 torben 1593 //pm.registerEvent(Event.Type.PROJECTILE_HIT, new ExplosiveSnowballs(), Priority.Normal, this);
125    
126 torben 1680 //pm.registerEvent(Event.Type.PLAYER_RESPAWN, new RespawnHandler(this), Priority.Normal, this);
127     //pm.registerEvent(Event.Type.ENTITY_DEATH, new RespawnHandler.PlayerDeathListener(this.getDataFolder()), Priority.Normal, this);
128    
129 torben 1653 */
130 torben 1236 }
131    
132     }

  ViewVC Help
Powered by ViewVC 1.1.20