/[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 1936 - (show annotations) (download)
Wed Mar 20 14:56:43 2013 UTC (11 years, 2 months ago) by torben
File size: 7076 byte(s)
Remember to start server after init
1 package dk.thoerup.bukkit.hoeruputils;
2
3
4 import java.net.InetSocketAddress;
5 import java.util.ArrayList;
6 import java.util.List;
7 import java.util.logging.Level;
8
9 import org.bukkit.plugin.PluginManager;
10 import org.bukkit.plugin.java.JavaPlugin;
11
12 import com.sun.net.httpserver.HttpServer;
13
14 import dk.thoerup.bukkit.hoeruputils.chests.AdvancedChest;
15 import dk.thoerup.bukkit.hoeruputils.chests.ChestBean;
16 import dk.thoerup.bukkit.hoeruputils.creative.GeneralContractorCommands;
17 import dk.thoerup.bukkit.hoeruputils.message.MessageBean;
18 import dk.thoerup.bukkit.hoeruputils.message.MessageWrapper;
19 import dk.thoerup.bukkit.hoeruputils.secretdoor.DoorBlockListener;
20 import dk.thoerup.bukkit.hoeruputils.web.BanListener;
21 import dk.thoerup.bukkit.hoeruputils.web.StatusListener;
22 import dk.thoerup.bukkit.hoeruputils.web.WebUser;
23 import dk.thoerup.bukkit.hoeruputils.web.WebUserCommand;
24
25 public class HoerupUtilsPlugin extends JavaPlugin {
26
27 @Override
28 public void onDisable() {
29 if ( server != null ) {
30 server.stop( 0 );
31 }
32 }
33
34 MessageWrapper messageWrapper;
35 HttpServer server = null;
36
37
38 @Override
39 public void onEnable() {
40 System.out.println("Loading HoerupUtils plugin");
41 getCommand("whereis").setExecutor(new WhereisCommand(getServer()));
42 //getCommand("mapgen").setExecutor(new MapgenCommand(this));
43 getCommand("eternalday").setExecutor(new EternalDayCommand(this));
44 getCommand("getpos").setExecutor( new GetposCommand() );
45 getCommand("msg").setExecutor( new MsgCommand( this ) );
46 getCommand("tp").setExecutor( new TeleportCommand() );
47
48 getCommand("wall").setExecutor( new WallCommand() );
49 getCommand("weather").setExecutor( new WeatherCommand() );
50
51 getCommand("gc").setExecutor( new GcCommand() );
52
53
54 HomeCommand home = new HomeCommand(this);
55 getCommand("home").setExecutor( home );
56 getCommand("sethome").setExecutor( home );
57 getCommand("ophome").setExecutor( home );
58
59 DiverCommand diver = new DiverCommand(this );
60 getCommand("diver").setExecutor( diver );
61
62 getCommand("opkill").setExecutor( new OpkillCommand() );
63
64 GeneralContractorCommands generalContractor = new GeneralContractorCommands();
65 getCommand("replay").setExecutor( generalContractor );
66 getCommand("levelarea").setExecutor( generalContractor );
67 getCommand("fillarea").setExecutor( generalContractor );
68 getCommand("slopearea").setExecutor( generalContractor );
69 getCommand("setsurface").setExecutor( generalContractor );
70 getCommand("platform").setExecutor( generalContractor );
71 getCommand("cylinder").setExecutor( generalContractor );
72 getCommand("createcave").setExecutor( generalContractor );
73 getCommand("spawn").setExecutor( new SpawnCommand() );
74
75 getCommand("template").setExecutor( new TemplateCommand(this) );
76
77 LogintimeHandler logintimeHandler = new LogintimeHandler( this.getDataFolder() );
78
79
80 PluginManager pm = getServer().getPluginManager();
81
82
83 MotdHandler motd = new MotdHandler(this);
84 getCommand("motd").setExecutor( motd );
85 pm.registerEvents( motd, this);
86
87
88 pm.registerEvents(logintimeHandler, this);
89 pm.registerEvents(logintimeHandler, this);
90
91
92 pm.registerEvents(diver, this);
93
94 pm.registerEvents(new EndermanStopper(), this);
95
96 Jail jail = new Jail(this);
97 pm.registerEvents(jail, this);
98 getCommand("jail").setExecutor( jail );
99
100
101
102
103
104
105 Runnable ddlInstaller = new Runnable() {
106 @Override
107 public void run() {
108 System.out.println("installddl");
109 installDDL();
110 }
111 };
112 messageWrapper = new MessageWrapper(this, ddlInstaller);
113 pm.registerEvents( messageWrapper, this);
114
115 AdvancedChest locked = new AdvancedChest(this, ddlInstaller);
116 getCommand("chest").setExecutor(locked);
117 pm.registerEvents( locked, this);
118
119
120 getCommand("webuser").setExecutor( new WebUserCommand(this,ddlInstaller) );
121
122
123 //register web plugins
124 //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this);
125 //pm.registerEvent(Event.Type.CUSTOM_EVENT, new MessageListener(getServer()), Priority.Normal, this);
126
127 /*try {
128 try {
129 //først probes om klassen i det hele taget findes
130 Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); //if it fails it throws an exception
131 WebLoader.getInstance().load(this, logintimeHandler.getConfig(), home.getConfig());
132
133 getLogger().info("ApiBukkit found, status listener registered");
134
135 } catch (ClassNotFoundException e) {
136 getLogger().warning("Could not find ApiBukkit - web status is disabled" );
137 }
138 } catch (Throwable e) { //instead of ClassNotFoundException + NoSuchMethodException + InvocationTargetException + IllegalAccessException
139 getLogger().warning("Could not find ApiBukkit - web status is disabled (" + e.getClass().getName() + ":" + e.getMessage() + ")" );
140 }*/
141
142 try {
143 InetSocketAddress adr = new InetSocketAddress("localhost", 9999);
144 HttpServer.create(adr, 10);
145 server.createContext("/bans", new BanListener(this, getServer()) );
146 server.createContext("/webstatus", new StatusListener(this, getServer(),logintimeHandler.getConfig(), home.getConfig()) );
147 server.start();
148
149 } catch(Exception e) {
150 getLogger().log(Level.SEVERE, "Error loading webserver", e);
151
152 }
153
154
155
156
157 DoorBlockListener secretDoor = new DoorBlockListener(this);
158 pm.registerEvents(secretDoor, this);
159 pm.registerEvents(secretDoor.getPlayerListener(), this);
160 }
161
162
163
164
165
166 public MessageWrapper getMessageWrapper() {
167 return messageWrapper;
168 }
169
170 //@SuppressWarnings({ "unchecked", "rawtypes" })
171 @Override
172 public List<Class<?>> getDatabaseClasses() {
173 List<Class<?>> list = new ArrayList<Class<?>>();
174
175 list.add(MessageBean.class);
176 list.add(ChestBean.class);
177 list.add(WebUser.class);
178
179 return list;
180 }
181
182 private void deprecated() {
183 /*
184 getCommand("stoner").setExecutor( new StonerCommand() );
185 getCommand("spawn").setExecutor( new SpawnCommand() );
186 getCommand("boom").setExecutor( new BoomCommand(this) );
187 getCommand("grass").setExecutor(new GrassCommand());
188
189 getCommand("zapme").setExecutor( new ZapmeCommand() );
190 getCommand("zap").setExecutor( new ZapCommand() );
191
192
193 PowerMiner powerMiner = new PowerMiner();
194 pm.registerEvent(Event.Type.BLOCK_DAMAGE, powerMiner, Priority.Normal, this);
195 pm.registerEvent(Event.Type.PLAYER_QUIT, powerMiner.getPlayerQuitListener(), Priority.Normal, this);
196 getCommand("powerminer").setExecutor(powerMiner);
197
198 SuperMiner superMiner = new SuperMiner();
199 pm.registerEvent(Event.Type.BLOCK_DAMAGE, superMiner, Priority.Normal, this);
200 pm.registerEvent(Event.Type.PLAYER_QUIT, superMiner.getPlayerQuitListener(), Priority.Normal, this);
201 getCommand("superminer").setExecutor(superMiner);
202
203
204 //pm.registerEvent(Event.Type.PROJECTILE_HIT, new ExplosiveSnowballs(), Priority.Normal, this);
205
206 //pm.registerEvent(Event.Type.PLAYER_RESPAWN, new RespawnHandler(this), Priority.Normal, this);
207 //pm.registerEvent(Event.Type.ENTITY_DEATH, new RespawnHandler.PlayerDeathListener(this.getDataFolder()), Priority.Normal, this);
208
209 */
210 }
211
212 }

  ViewVC Help
Powered by ViewVC 1.1.20