Commit Graph

216 Commits

Author SHA1 Message Date
graywolf336
7c4c403843 Fix the jail command, it will always reach here with one argument. 2014-02-01 01:43:54 -06:00
graywolf336
e52a24cb5e Add some debug to the JailHandler 2014-02-01 01:39:39 -06:00
graywolf336
0bb25e6324 Fix the tests failing 2014-02-01 01:28:33 -06:00
graywolf336
a088577bee Move lots of the subcommands to proper place, let's see if this works. 2014-02-01 01:24:44 -06:00
graywolf336
989e503242 Add the ver to the version command. 2014-01-30 14:34:55 -06:00
graywolf336
bfebd6e944 Fix some of the commands not working, let's hope this doesn't mess up. 2014-01-30 14:29:26 -06:00
graywolf336
f4e735eda4 Fix the jail stop and also add some alternatives. 2014-01-30 14:23:50 -06:00
graywolf336
1e632017c7 Add the jailstop, jailtelein, and jailteleout to subcommands. 2014-01-30 14:10:51 -06:00
graywolf336
edb563a9ec Move mute, reload, and version to the subcommand of /jail 2014-01-29 13:46:26 -06:00
graywolf336
2bea10259c Fix the unjailing force not actually unjailing someone. 2014-01-28 22:50:02 -06:00
graywolf336
c3b3e390b0 Make the subcommands of /jail work. :) 2014-01-28 22:34:39 -06:00
graywolf336
cab6d7fdf9 When unjailing someone, if they've never been online and have time
remaining then forcefully remove them.
2014-01-28 22:20:33 -06:00
graywolf336
2acfbf098e Quick fix, but let's parse the jail command if no args. 2014-01-28 16:23:20 -06:00
graywolf336
9f4ebd5993 Fix some formatting, not actually needed but oh well 2014-01-28 14:24:37 -06:00
graywolf336
691d59f0f7 Work on the new command system, this is not ready at all.
This commit is only so I can work on it more at another computer.
2014-01-27 18:02:24 -06:00
graywolf336
cb8de04a91 Temp work on the jailcheck command, not finishing.
It has been decided we are going to be switching the command structure
up, more details to come.
2014-01-23 18:51:22 -06:00
graywolf336
e0dc22dfec Add the JailReload command. 2014-01-23 18:05:35 -06:00
graywolf336
010b592fb5 Add the JailMute, JailTeleIn, and JailTeleOut commands. 2014-01-23 17:52:21 -06:00
graywolf336
4ac89455b0 Add the JailClearCommand back, this time releasing all the prisoners. 2014-01-23 13:07:26 -06:00
graywolf336
13363f6d9a Rename the JailClear to JailClearForce 2014-01-22 17:55:47 -06:00
graywolf336
d6ad4df991 Log the unjailing to console if we have that enabled. 2014-01-22 17:48:32 -06:00
graywolf336
cb22fe9786 Let's try out the move protection, maybe this will work the first time 2014-01-22 14:43:14 -06:00
graywolf336
fe1db3bb04 Prevent interaction with items and blocks!
Works just like the old version, they can interact with anything except
what is in the blacklist.
2014-01-21 22:23:26 -06:00
graywolf336
1e3a8cc992 Change the priority of the crop trampling to be called first so it
cancels the event before any other interact event gets it.
2014-01-21 21:44:58 -06:00
graywolf336
863793543f Allow protecting and penalizing trampling of crops. 2014-01-21 21:37:52 -06:00
graywolf336
4e06336c99 Simple way of stopping players from getting respawned outside the jail.
Something more complicated might be needed, but I will add that as the
time arises.
2014-01-21 21:12:50 -06:00
graywolf336
1cfd64164c Change the priorities of the event listeners, this way the protections
and the penalties get applied before the other listener cancels it.
2014-01-21 20:52:19 -06:00
graywolf336
06aa6629b7 Finally get all the messages on the jail command to come from the
language system. :)
2014-01-21 19:56:14 -06:00
graywolf336
9a9a75dc1e Fix my comment, would have threw someone off in the future I imagine 2014-01-21 18:11:46 -06:00
graywolf336
34ac65565c More command workings and using the custom languages. 2014-01-21 18:09:47 -06:00
graywolf336
3ab751baa8 Nullify the prisoners and cells before saving them. 2014-01-21 16:14:26 -06:00
graywolf336
c956018d1e Add work on jailclear and also the jail command to use language string. 2014-01-21 15:12:09 -06:00
graywolf336
38438e2eb8 Change it so that offline pending is used always, then inside that we
check the remaining time
2014-01-21 14:37:48 -06:00
graywolf336
d691f1104b If the time of the prisoner on joining is 0, then unjail them. Also,
ignore the sleeping state if enabled in the config.
2014-01-21 14:09:18 -06:00
graywolf336
abb3e70bdf Enable protecting endermen protections in jails 2014-01-21 12:31:56 -06:00
graywolf336
4179a6a2d3 Move the explosion protection to a different section of the config.
This way it makes more sense, as the explosionProtection is for the
jails and not during the jailing.
2014-01-21 12:21:33 -06:00
graywolf336
b005248deb If the time is 0, then send a different message. 2014-01-21 12:10:43 -06:00
graywolf336
4c13948549 Make the command execution throw an exception, and let's catch it. 2014-01-21 11:22:26 -06:00
graywolf336
9f34304fdb Enable protecting chests and people being able to open them and not. 2014-01-20 17:24:22 -06:00
graywolf336
4eae8778ea Enable food control 2014-01-20 15:24:27 -06:00
graywolf336
392b1d94cc Prevent commands from being executed, except those whitelisted 2014-01-20 14:40:03 -06:00
graywolf336
af58eea360 It's crops as well for placing, whoops 2014-01-20 12:26:03 -06:00
graywolf336
18265777dd It's crops and not wheat, also add potatos to the default whitelist. 2014-01-20 12:24:09 -06:00
graywolf336
28953682ae Add some debugging messages to the placing/breaking so we can see what
block are what, will be helpful for figuring out what to add to the
whitelist of placing/breaking.
2014-01-20 12:10:12 -06:00
graywolf336
43cee6311a Add two more tests and rename our Util test class to reflect the usage. 2014-01-19 16:01:12 -06:00
graywolf336
f41ee77092 Enable checking the whitelist of breaking and placing. 2014-01-19 15:53:42 -06:00
graywolf336
da26bc172e Next up is protecting against placing blocks. 2014-01-19 14:49:42 -06:00
graywolf336
95649e7f03 Start work on the protection and penalties. First up is Block Place 2014-01-19 14:40:39 -06:00
graywolf336
d9d0de046d Fix the tests failing. 2014-01-17 14:54:27 -06:00
graywolf336
759df05bdd More language strings, focused this time on the command handler. 2014-01-17 14:34:12 -06:00
graywolf336
976149743a Change some way we let people know of hte language system.
Also added a console command sender to the test setup, just in case we
want to use it later on down the road.
2014-01-14 18:28:02 -06:00
graywolf336
cf7c9fc4c2 Protect the jails against explosions, if it is enabled 2014-01-08 15:27:38 -06:00
graywolf336
d734d99e88 Protect against block breaking and block placing in jails
Unless the player has admin permission. This does not include the
penalties as those will be done in a future commit. This also has a
little better performance on the block placing and breaking events, if
these checks are disabled.
2014-01-08 15:02:24 -06:00
graywolf336
ab74a158b8 Get the muted message from the Language File 2014-01-04 00:22:26 -06:00
graywolf336
369c874add If the config has prisoners not to get the chats, then let's obey that. 2014-01-03 23:57:10 -06:00
graywolf336
2f36c1f900 Fix the broadcast/logging not being the correct one for minutes. 2014-01-03 21:05:39 -06:00
graywolf336
6f86f04f3d Log to the console which timer/scheduler we're using. 2014-01-03 20:29:25 -06:00
graywolf336
57eb5c71e3 Nullify the timer on disable 2014-01-03 14:18:16 -06:00
graywolf336
f5bf76ec46 Add jail timer and jail event, count down the prisoners time. 2014-01-03 14:10:38 -06:00
graywolf336
738f8bc057 Set the handcuff manager to null on disable 2014-01-01 18:27:23 -06:00
graywolf336
2a3c3ad0f7 Register the unhandcuff command with bukkit 2014-01-01 18:22:49 -06:00
graywolf336
a7dacf42c1 Fix the message format not being correct. 2014-01-01 18:13:31 -06:00
graywolf336
3f27410a7a Handcuffing messages are now fully customizable via the language file 2014-01-01 17:39:21 -06:00
graywolf336
f1451f4179 Add the HandCuffListener 2014-01-01 16:22:40 -06:00
graywolf336
b22fad16c4 Merge branch 'master' of git@github.com:graywolf336/Jail.git 2014-01-01 16:19:18 -06:00
graywolf336
9b534b2abc Add handcuffing, next commit will be handcuff listeners. 2014-01-01 16:19:04 -06:00
graywolf336
506ab26858 Send the unjail message and also execute the commands on releasing 2013-12-31 13:25:06 -06:00
graywolf336
0ceef58e73 Move the restore method to the util, makes more sense there. 2013-12-31 13:20:39 -06:00
graywolf336
d49d2243d8 Ignore the cancelled events 2013-12-30 22:03:33 -06:00
graywolf336
4ab48b3659 Do some work on the JavaDoc 2013-12-28 19:50:55 -06:00
graywolf336
ce457fc7bf Derp, save the file when we change it. 2013-12-28 15:42:06 -06:00
graywolf336
05b15cc9b8 Let's try to remove people from the storage system this way. 2013-12-28 15:39:14 -06:00
graywolf336
04d65088e3 First attempt at unjailing a prisoner. 2013-12-28 15:08:24 -06:00
graywolf336
17f627350b Remove the debugging messages and add a debugging variable. 2013-12-28 13:37:18 -06:00
graywolf336
81ec445deb TOLD YOU IT WAS A SMALL BUG... Bah, humbug! 2013-12-28 13:20:09 -06:00
graywolf336
539ebeb326 Don't allow jailing of players who are already jailed. 2013-12-28 13:17:31 -06:00
graywolf336
3ab161cbe8 Clean up the jailstop command, make it tell what all they stopped. 2013-12-28 13:12:45 -06:00
graywolf336
b75f12c23c General bug work, there's a small bug in here I can't find...grrr 2013-12-28 12:53:07 -06:00
graywolf336
df0caabbac The double chests are actually larger than 40, derp 2013-12-28 12:27:25 -06:00
graywolf336
546131dd77 Fix the loading of the cells being really messed up. 2013-12-28 12:12:57 -06:00
graywolf336
359192a655 Fix the usage message being wrong. 2013-12-28 12:07:59 -06:00
graywolf336
15ca0810ba Remove the debugging message, as it is now in the loaded message. 2013-12-28 12:04:44 -06:00
graywolf336
e888467b66 Add the amount of cells loaded to the loaded message. 2013-12-28 12:01:56 -06:00
graywolf336
bde63666bc Fix the issue with losing the inventory and the armor being moved to the
inventory.
2013-12-27 18:22:13 -06:00
graywolf336
e4f74e5e91 Lots of progress was made towards jailing the player.
We now handle the jailing of the players and even store their inventory.
Unjailing hasn't been tested at all yet, so that's still to do.
2013-12-27 18:19:47 -06:00
graywolf336
d9f88b8eef Add some documentation to the prepareJail method. 2013-12-27 14:16:08 -06:00
graywolf336
07f3d85a2a Don't allow prisoners to be jailed into the same cell as someone else.
This will prevent overriding inventories in cell chests. When we tell
them the destination cell already has a prisoner in it, we try to find
the first empty cell in that jail but if all the jail's cells are full
then we tell them that as well.
2013-12-27 13:16:21 -06:00
graywolf336
5e4bc77579 Add some methods to serialize an inventory to Base64 string.
Special thanks to Comphenix, @aadnk, for the code.
2013-12-27 10:37:32 -06:00
graywolf336
fc0bde6255 Seems the player is not being ejected. 2013-12-26 00:00:33 -06:00
graywolf336
b4a740979d Try to parse the gamemode from the config, default to adventure. 2013-12-25 23:28:01 -06:00
graywolf336
c35b3b04f0 Add a config value to set their gamemode to. Also, eject them. 2013-12-25 23:20:52 -06:00
graywolf336
23e7aa15a3 Only save the previous position as well if it is null. 2013-12-25 23:06:00 -06:00
graywolf336
69b7981914 Only try to load the previous gamemode if it isn't null. 2013-12-25 23:01:56 -06:00
graywolf336
aaa286fbdd Save their previous GameMode if it is enabled in the config.
Need to update the wiki with the new config option.
2013-12-25 22:57:09 -06:00
graywolf336
6423e8d2e5 If the location is empty, don't try it. If the language string doesn't
exist, then don't try to parse it either and return an empty string.
2013-12-25 22:41:01 -06:00
graywolf336
57e4eb6c1e If the previous position string given is null, ignore it. 2013-12-25 22:06:57 -06:00
graywolf336
a72f6c273b Work on the actual jailing of the player.
Lots of work done here, untested.
2013-12-25 21:56:01 -06:00
graywolf336
f987dedc3d Fix the time parsing no longer working. 2013-12-25 01:12:20 -06:00
graywolf336
b4dc142455 Save and load the prisoners on flat file. 2013-12-24 23:42:53 -06:00
graywolf336
c499443ff9 If we've already broadcasted it to the entire server, don't log it as
double messages will appear in the console.
2013-12-24 23:29:51 -06:00