/[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 1968 - (show annotations) (download)
Thu Apr 11 14:18:59 2013 UTC (11 years, 1 month ago) by torben
File size: 7514 byte(s)
Added mute/unmute function
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 WayPoint wp = new WayPoint(this);
88 getCommand("waypoint").setExecutor( wp );
89 getCommand("setwaypoint").setExecutor( wp );
90 pm.registerEvents( wp, this);
91
92
93 pm.registerEvents(logintimeHandler, this);
94 pm.registerEvents(logintimeHandler, this);
95
96
97 pm.registerEvents(diver, this);
98
99 pm.registerEvents(new EndermanStopper(), this);
100
101 Jail jail = new Jail(this);
102 pm.registerEvents(jail, this);
103 getCommand("jail").setExecutor( jail );
104
105 StickyChunk chunks = new StickyChunk();
106 pm.registerEvents(chunks, this);
107 getCommand("stickychunk").setExecutor(chunks);
108
109 Mute mute = new Mute(this);
110 pm.registerEvents(mute, this);
111 getCommand("mute").setExecutor(mute);
112 getCommand("unmute").setExecutor(mute);
113
114
115 Runnable ddlInstaller = new Runnable() {
116 @Override
117 public void run() {
118 System.out.println("installddl");
119 installDDL();
120 }
121 };
122 messageWrapper = new MessageWrapper(this, ddlInstaller);
123 pm.registerEvents( messageWrapper, this);
124
125 AdvancedChest locked = new AdvancedChest(this, ddlInstaller);
126 getCommand("chest").setExecutor(locked);
127 pm.registerEvents( locked, this);
128
129
130 getCommand("webuser").setExecutor( new WebUserCommand(this,ddlInstaller) );
131
132
133 //register web plugins
134 //pm.registerEvent(Event.Type.CUSTOM_EVENT, new StatusListener(getServer(), logintimeHandler.getConfig(), home.getConfig() ), Priority.Normal, this);
135 //pm.registerEvent(Event.Type.CUSTOM_EVENT, new MessageListener(getServer()), Priority.Normal, this);
136
137 /*try {
138 try {
139 //først probes om klassen i det hele taget findes
140 Class.forName("de.codeinfection.quickwango.ApiBukkit.ApiServer.ApiController"); //if it fails it throws an exception
141 WebLoader.getInstance().load(this, logintimeHandler.getConfig(), home.getConfig());
142
143 getLogger().info("ApiBukkit found, status listener registered");
144
145 } catch (ClassNotFoundException e) {
146 getLogger().warning("Could not find ApiBukkit - web status is disabled" );
147 }
148 } catch (Throwable e) { //instead of ClassNotFoundException + NoSuchMethodException + InvocationTargetException + IllegalAccessException
149 getLogger().warning("Could not find ApiBukkit - web status is disabled (" + e.getClass().getName() + ":" + e.getMessage() + ")" );
150 }*/
151
152 try {
153 InetSocketAddress adr = new InetSocketAddress("127.0.0.1", 9999);
154 server = HttpServer.create(adr, 20);
155 server.createContext("/bans", new BanListener(this, getServer()) );
156 server.createContext("/webstatus", new StatusListener(this, getServer(),logintimeHandler.getConfig(), home.getConfig()) );
157 server.start();
158
159 } catch(Exception e) {
160 getLogger().log(Level.SEVERE, "Error loading webserver", e);
161
162 }
163
164
165
166
167 DoorBlockListener secretDoor = new DoorBlockListener(this);
168 pm.registerEvents(secretDoor, this);
169 pm.registerEvents(secretDoor.getPlayerListener(), this);
170 }
171
172
173
174
175
176 public MessageWrapper getMessageWrapper() {
177 return messageWrapper;
178 }
179
180 //@SuppressWarnings({ "unchecked", "rawtypes" })
181 @Override
182 public List<Class<?>> getDatabaseClasses() {
183 List<Class<?>> list = new ArrayList<Class<?>>();
184
185 list.add(MessageBean.class);
186 list.add(ChestBean.class);
187 list.add(WebUser.class);
188
189 return list;
190 }
191
192 private void deprecated() {
193 /*
194 getCommand("stoner").setExecutor( new StonerCommand() );
195 getCommand("spawn").setExecutor( new SpawnCommand() );
196 getCommand("boom").setExecutor( new BoomCommand(this) );
197 getCommand("grass").setExecutor(new GrassCommand());
198
199 getCommand("zapme").setExecutor( new ZapmeCommand() );
200 getCommand("zap").setExecutor( new ZapCommand() );
201
202
203 PowerMiner powerMiner = new PowerMiner();
204 pm.registerEvent(Event.Type.BLOCK_DAMAGE, powerMiner, Priority.Normal, this);
205 pm.registerEvent(Event.Type.PLAYER_QUIT, powerMiner.getPlayerQuitListener(), Priority.Normal, this);
206 getCommand("powerminer").setExecutor(powerMiner);
207
208 SuperMiner superMiner = new SuperMiner();
209 pm.registerEvent(Event.Type.BLOCK_DAMAGE, superMiner, Priority.Normal, this);
210 pm.registerEvent(Event.Type.PLAYER_QUIT, superMiner.getPlayerQuitListener(), Priority.Normal, this);
211 getCommand("superminer").setExecutor(superMiner);
212
213
214 //pm.registerEvent(Event.Type.PROJECTILE_HIT, new ExplosiveSnowballs(), Priority.Normal, this);
215
216 //pm.registerEvent(Event.Type.PLAYER_RESPAWN, new RespawnHandler(this), Priority.Normal, this);
217 //pm.registerEvent(Event.Type.ENTITY_DEATH, new RespawnHandler.PlayerDeathListener(this.getDataFolder()), Priority.Normal, this);
218
219 */
220 }
221
222 }

  ViewVC Help
Powered by ViewVC 1.1.20