Commit Graph

177 Commits

Author SHA1 Message Date
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
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
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
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
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
graywolf336
170fd1776f Send the log message to the console sender, to support color. 2013-12-24 23:24:30 -06:00
graywolf336
57d61717fe Let's try to use the new preparing method, see what errors we get. 2013-12-24 23:12:24 -06:00
graywolf336
38a4a859e4 Implement not being able to jail people who can't be jailed. 2013-12-24 22:47:17 -06:00
graywolf336
63032ad6cc Some work on the plugin, added a couple things and worked on the
preparing the jail.
2013-12-24 22:25:14 -06:00
graywolf336
a27596bcfb If they provide an incorrect format in time, don't override it. 2013-12-24 19:42:12 -06:00
graywolf336
978bd044fe Fix the time parsing not defaulting to minutes & add another test for it 2013-12-24 19:36:14 -06:00
graywolf336
ed481ff925 Test the parsing of the time and all the variations. 2013-12-24 18:45:50 -06:00
graywolf336
c4b1eb6d1a Default the time to minutes if all else fails. 2013-12-24 18:06:38 -06:00
graywolf336
7e75f297d5 Remove some debugging code. 2013-12-24 17:56:52 -06:00
graywolf336
dc2e74a63e Implement getting the jail nearest to sender of the jail command if no
jail parameter is defined.
2013-12-24 17:51:41 -06:00
graywolf336
64301db196 Fix the regex pattern and add more tests for the default config. 2013-12-24 16:52:59 -06:00
graywolf336
0d79569c74 Add some settings management and also parse the time format.
This allows for: 30seconds, 10minutes, 3hours, or 2days
2013-12-24 12:28:40 -06:00
graywolf336
4a45229bc5 Send the online prisoner the jailed message with the reason. 2013-12-24 10:23:39 -06:00
graywolf336
1021430b75 Output what language we are loading if successful. 2013-12-23 14:51:04 -06:00
graywolf336
c123689e67 Fix the test jailing. 2013-12-23 14:46:09 -06:00
graywolf336
ab0c236711 Add a language file and system. 2013-12-23 14:31:27 -06:00
graywolf336
845e219d5d Maybe copy the defaults on load to get the new config options?
Still not too sure if this will work correctly, as I don't know if this
will override the changes in the config.
2013-12-23 13:40:47 -06:00
graywolf336
78dca18242 Add this. to be consistent. 2013-12-19 16:16:23 -06:00
graywolf336
1a04ecf409 Let's use the PrisonerJailedEvent in the jailing of a player. 2013-12-19 16:13:41 -06:00
graywolf336
92c19fd05f Derp, set the time from the given one. 2013-12-19 11:39:18 -06:00
graywolf336
7376326288 Let's try to convert to minutes from milliseconds. 2013-12-19 11:32:04 -06:00
graywolf336
17ac609a0f Let's start some work on the jail command. 2013-12-19 11:13:07 -06:00
graywolf336
5f2fcd9027 No longer require true/false for the -m. 2013-12-19 09:19:55 -06:00
graywolf336
500c2abd51 Switch to using JCommander for the params/arguments system.
This system is very complex and we can make it as complex or as simple
as we want. This will save us time when we want to parse commands and
since it takes a while to write the code to parse the commands, this way
provides a lot more options. I'm excited for this.
2013-12-18 17:26:39 -06:00
graywolf336
afccd42c24 Nothing major, just tiny little bits and pieces. 2013-12-16 15:51:25 -06:00
graywolf336
702aa8cc9f This looping through the arguments isn't working for me. 2013-12-16 14:32:06 -06:00
graywolf336
913c5d014e Meh, start a little work on the jailing command. 2013-12-16 14:21:32 -06:00
graywolf336
c7a08381f2 Include some information for when there are no cells. 2013-12-16 14:12:26 -06:00
graywolf336
12b850c391 Rename the JailListCell to JailListCells 2013-12-16 14:08:48 -06:00
graywolf336
5febe47880 Implement the jaillistcell command, prints the prisoner name in the cell
as well if there is someone in there.
2013-12-16 13:57:17 -06:00