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

Contents 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 - (show annotations) (download)
Wed Mar 21 19:24:25 2012 UTC (12 years, 1 month ago) by torben
File size: 4866 byte(s)
Apparently can the singleton pattern be used to do lazy class loading
1 package dk.thoerup.bukkit.hoeruputils;
2
3
4 import java.lang.reflect.Method;
5
6 import org.bukkit.configuration.Configuration;
7 import org.bukkit.plugin.PluginManager;
8 import org.bukkit.plugin.java.JavaPlugin;
9
10 import dk.thoerup.bukkit.hoeruputils.creative.GeneralContractorCommands;
11 import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener;
12 import dk.thoerup.bukkit.hoeruputils.web.WebLoader;
13
14 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 //getCommand("mapgen").setExecutor(new MapgenCommand(this));
27 getCommand("eternalday").setExecutor(new EternalDayCommand(this));
28 getCommand("getpos").setExecutor( new GetposCommand() );
29 getCommand("msg").setExecutor( new MsgCommand( getServer() ) );
30 getCommand("tp").setExecutor( new TeleportCommand() );
31
32 getCommand("wall").setExecutor( new WallCommand() );
33 getCommand("weather").setExecutor( new WeatherCommand() );
34
35 getCommand("gc").setExecutor( new GcCommand() );
36
37
38 HomeCommand home = new HomeCommand(this);
39 getCommand("home").setExecutor( home );
40 getCommand("sethome").setExecutor( home );
41
42 DiverCommand diver = new DiverCommand(this );
43 getCommand("diver").setExecutor( diver );
44
45 GeneralContractorCommands generalContractor = new GeneralContractorCommands();
46 getCommand("replay").setExecutor( generalContractor );
47 getCommand("levelarea").setExecutor( generalContractor );
48 getCommand("fillarea").setExecutor( generalContractor );
49 getCommand("slopearea").setExecutor( generalContractor );
50 getCommand("setsurface").setExecutor( generalContractor );
51 getCommand("platform").setExecutor( generalContractor );
52 getCommand("cylinder").setExecutor( generalContractor );
53 getCommand("createcave").setExecutor( generalContractor );
54
55
56 getCommand("template").setExecutor( new TemplateCommand(this) );
57
58 LogintimeHandler logintimeHandler = new LogintimeHandler( this.getDataFolder() );
59
60
61 PluginManager pm = getServer().getPluginManager();
62
63
64 pm.registerEvents(logintimeHandler, this);
65 pm.registerEvents(logintimeHandler, this);
66
67
68 pm.registerEvents(diver, this);
69
70
71 pm.registerEvents(new EndermanStopper(), this);
72
73
74 //register web plugins
75 //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 try {
79 try {
80 //først probes om klassen i det hele taget findes
81 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 getLogger().warning("ApiBukkit found, status listener registered");
85
86 } catch (ClassNotFoundException e) {
87 getLogger().warning("Could not find ApiBukkit - web status is disabled" );
88 }
89 } 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
93
94
95
96 DoorBlockListener secretDoor = new DoorBlockListener(this);
97 pm.registerEvents(secretDoor, this);
98 pm.registerEvents(secretDoor.getPlayerListener(), this);
99
100 }
101
102 private void deprecated() {
103 /*
104 getCommand("stoner").setExecutor( new StonerCommand() );
105 getCommand("spawn").setExecutor( new SpawnCommand() );
106 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 PowerMiner powerMiner = new PowerMiner();
114 pm.registerEvent(Event.Type.BLOCK_DAMAGE, powerMiner, Priority.Normal, this);
115 pm.registerEvent(Event.Type.PLAYER_QUIT, powerMiner.getPlayerQuitListener(), Priority.Normal, this);
116 getCommand("powerminer").setExecutor(powerMiner);
117
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
123
124 //pm.registerEvent(Event.Type.PROJECTILE_HIT, new ExplosiveSnowballs(), Priority.Normal, this);
125
126 //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 */
130 }
131
132 }

  ViewVC Help
Powered by ViewVC 1.1.20