1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-09-07 05:00:47 +02:00

Compare commits

..

2647 Commits

Author SHA1 Message Date
ementalo
fde2eb0757 Travis notifications for slack 2015-04-12 14:46:09 +01:00
ementalo
84856d996e Remove help 2015-04-11 22:33:49 +01:00
ementalo
9e6c686c29 Change namespace from com.earth2me to org.mcess - net.ess3.api changes still required 2015-04-11 21:47:56 +01:00
ementalo
ce8313bd68 Remove xmpp 2015-04-10 23:22:14 +01:00
ementalo
1020521190 Remove kittycannon 2015-04-10 23:03:33 +01:00
ementalo
47d49f68a9 Removed unlimited functionality 2015-04-10 22:53:55 +01:00
ementalo
5c1445e6be Remove tree and big tree 2015-04-10 22:46:17 +01:00
ementalo
0fe601f353 Remove Backup functionality 2015-04-10 22:40:58 +01:00
ementalo
7e1a36fb95 Remove Lombok 2015-04-09 00:29:59 +01:00
KHobbits
a97af4aa6f Unrequired Dependacy 2014-09-06 17:22:25 +01:00
KHobbits
33fe9ecb34 Merge branch '2.x' of github.com:essentials/Essentials into 2.x 2014-09-03 00:21:42 +01:00
KHobbits
c2ab179f42 rework /seen to be a little stricter on argument matching. 2014-08-18 21:00:03 +01:00
md_5
432a5f3baa Fix missed cases from previous user iteration optimizations. 2014-08-16 19:04:13 +10:00
KHobbits
687f0f040f Make sure we close any open inventories of players who leave. 2014-08-14 01:58:17 +01:00
KHobbits
b193daa711 Use quicker ban lookup to reduce /seen lag. 2014-08-14 01:50:31 +01:00
KHobbits
3133dc266a Add paging to mail.
Support aliases in rule and baltop output.
2014-08-11 19:03:24 +01:00
KHobbits
ff487418ea Add mailFormat TL key. 2014-08-11 18:46:04 +01:00
Necrodoom
c8a329940e Misc clarification (socialspy and kit delay)
clarify allow-silent-join-quit
2014-08-11 00:12:43 +01:00
Necrodoom
7b3c14524c Remove outdated try-catches 2014-08-11 00:11:06 +01:00
Necrodoom
474b8a367f Add /tempban missing syntax 2014-08-11 00:10:09 +01:00
FearFree
d1b1fd2848 Add amount required to notEnoughMoney TL key.
See https://essentials3.atlassian.net/browse/ESS-5125 for request.
2014-07-19 20:31:50 +01:00
KHobbits
9239ca9c4b Formatting fixes. 2014-07-19 20:11:45 +01:00
SidShakal
f310f3db17 Fix sticky piston retract breaking essentials sign
Sticky pistons could break signs that were mounted on blocks the pistons were retracting.

This patch extends the protection from just the piston base to include the extended piston arm and the block at the end of the piston arm as well.

This method will very likely need to be changed again when 1.8 comes out, but this should bring us a bit closer, by wrapping the block tests in a loop.
2014-07-19 20:08:38 +01:00
md_5
fefd04463e Optimize player / user iteration.
* Add a method for backwards compatability with unmapped code.
* Convert all getOnlinePlayers() calls to use this method, part of the IEssentials interface
* Add a new method getOnlineUsers() Ljava/lang/Iterable;
* Convert appropriate calls to use this method
* Update Bukkit to #1945
* Update CraftBukkit to #3103
2014-07-19 20:07:50 +01:00
Alexander Likhachev
ba4cf9f04a Add permission check before resetting speed on login The staff of my server asked me to do this fix, but I think it is very useful for all. This commit change is to reset player fly & run speed only if player has no permission to change speed. 2014-07-19 20:07:09 +01:00
KHobbits
80e8996799 If a player already exists in the usermap, don't replace it with a eco npc. 2014-07-19 18:04:35 +01:00
KHobbits
d3ae3e5fe9 Clean up tempban messages to be a little clearer. 2014-07-14 21:23:56 +01:00
KHobbits
bced0d4d14 Update translations from Crowdin (http://translate2.ess3.net) 2014-07-12 22:12:51 +01:00
KHobbits
a3fedb8a7d Remove ban check from /ess cleanup, no longer required.
Fix ban upgrade script.
2014-07-12 19:13:23 +01:00
FearFree
f28ffa8058 Update to new ban method. 2014-07-12 17:40:14 +01:00
KHobbits
ee510d9d47 Add ban reason to /banip 2014-07-12 17:23:11 +01:00
KHobbits
6f03022bf0 Still give 'nickNoMore' message when removing a nickname. 2014-07-12 16:48:01 +01:00
KHobbits
c3fe51647b Allow for changing of username casing without adding 'nickname' prefix. 2014-07-12 16:43:57 +01:00
KHobbits
234f3c103f Prevent users from setting unsafe homes when teleport safety is disabled. 2014-07-12 16:34:18 +01:00
KHobbits
0b935553bf Allow people with god & fly to teleport to unsafe locations even when teleport safety is disabled. 2014-07-12 16:33:50 +01:00
KHobbits
24ac4e4197 Converge ban message translations, and add reason support to default tempban tl key. 2014-07-12 16:32:42 +01:00
KHobbits
8ec9b111b3 Switch sudo to command dispatch, this will allow vanilla commands to be executed. 2014-07-12 15:29:25 +01:00
KHobbits
359bef2bba Don't cascade null usernames passed from eco api 2014-07-10 11:48:54 +01:00
KHobbits
1489b56131 New permission :essentials.tp.position Required to use /tp [player] <x> <y> <z> 2014-07-06 18:41:12 +01:00
Necrodoom
8f1baadf4b Add support for vanilla /tp <x> <y> <z> teleport syntax. 2014-07-06 18:41:01 +01:00
KHobbits
c55d39c140 Allow forcing adult status on randomly generated /spawnmob mobs. 2014-07-06 18:25:00 +01:00
KHobbits
f4b00be07c Update Bukkit
CB: 3092 B: 1938
2014-07-06 16:40:06 +01:00
KHobbits
1405934489 Show warp teleport status to teleport owner. 2014-06-28 18:10:32 +01:00
KHobbits
5b93b8c467 Slightly reorder teleport messages to be less confusing. 2014-06-28 18:06:13 +01:00
KHobbits
19ace492c5 Fix NPE with /list in console 2014-06-27 04:28:33 +01:00
KHobbits
66ab0352ab Update essentials to support 3rd party vanish toggling. 2014-06-27 01:46:37 +01:00
KHobbits
481e9d3b2f Add some debugging to make it easier to diagnose kit errors. 2014-06-25 19:19:04 +01:00
KHobbits
f7f2aaccd7 Kit cleanup and refactor. 2014-06-25 19:03:31 +01:00
KHobbits
835b9b2009 Allow multiple kits to be spawned per command. 2014-06-23 00:38:13 +01:00
KHobbits
58f1a63dea New permission: essentials.signs.trade.override.collect
People with this permission will collect the resources of other peoples trade signs broken with admin permissions (essentials.signs.trade.override).
2014-06-21 21:47:33 +01:00
Necrodoom
04bd8be70a empty array is not null array 2014-06-19 16:22:38 +01:00
KHobbits
f407b67e12 Reduce a few nickname refresh calls. 2014-06-19 04:02:15 +01:00
KHobbits
1a03d4f763 Force listener cleanup on plugin disable. 2014-06-19 02:59:08 +01:00
KHobbits
692764b9d3 Add a lag check for permission system checks.
This doesn't include normal permission checks, since the overhead could be detrimental.
2014-06-19 02:38:28 +01:00
KHobbits
4f66743ef6 Revert "Add spawn location cache to reduce blocking on player respawn."
This reverts commit b1a0aa8d86.
2014-06-17 23:27:46 +01:00
KHobbits
6b658992aa If "sethome-multiple" config section is invalid, silently fallback to default config values. 2014-06-17 00:19:59 +01:00
KHobbits
b1a0aa8d86 Add spawn location cache to reduce blocking on player respawn. 2014-06-16 19:55:34 +01:00
KHobbits
c71c591407 Add default ban reason for tempban reason. 2014-06-14 22:06:26 +01:00
KHobbits
2540bab6b1 Check for arraynull on pex group request. 2014-06-14 18:20:49 +01:00
KHobbits
580fa15d4e Only remove first date match from ban reason. 2014-06-14 16:27:34 +01:00
KHobbits
e4fa340c48 Add optional {2} in 'tempBanned' TL key, for reason. 2014-06-14 16:21:05 +01:00
KHobbits
7a02e07598 Show UUID in trackUUID debug message. 2014-06-07 18:21:10 +01:00
KHobbits
1f30d959a2 Don't allow old UUID's to accidentally overwrite current UUID for user mapping.
Add some extra logging and uuid debug.
2014-06-07 18:08:25 +01:00
KHobbits
16d8b9e261 New permission: essentials.itemspawn.meta-vanilla
Without this permission you cannot use vanilla itemmeta.  You can still use essentials style meta, if you have the appropriate permissions.
2014-06-07 16:08:51 +01:00
KHobbits
2cecfaa56e Try to use consistent UUIDs and not rely on Bukkit lookup while saving. 2014-06-07 15:45:57 +01:00
KHobbits
a449b35fb7 Add local echo of mail being sent on /mail send. 2014-06-05 00:07:27 +01:00
KHobbits
b7d322471a Fix firework recipe in /recipe 2014-06-04 16:13:20 +01:00
KHobbits
c50ca9041b Use strings for cachemap key, should prevent accidental key issues. 2014-06-01 21:50:24 +01:00
KHobbits
1e36e64277 Add API logging to Eco API. 2014-05-31 20:37:44 +01:00
KHobbits
5993466041 Extend getUser(Object) to match uuid and offline players. 2014-05-30 22:16:06 +01:00
KHobbits
99c890ce84 Emulate player join for mocking. 2014-05-27 21:14:45 +01:00
KHobbits
94d4f0f854 Improve fakeServer model 2014-05-27 20:31:13 +01:00
KHobbits
aa0d249b9d Remove online player lookup in usermap.getUUIDMap(), throw log entry on failback. 2014-05-27 18:04:02 +01:00
KHobbits
e4e8a83caa Log takeMoney exception, even if we ignore it. 2014-05-27 10:46:25 +01:00
KHobbits
7402ff69da Revert writecount reset, this could cause odd behavior. 2014-05-27 06:18:34 +01:00
KHobbits
85b8ee2e2d Enforce userdata save on player dispose. 2014-05-27 04:52:52 +01:00
KHobbits
d0cd3356fd If we are modifying money, force transaction clear, this is important. 2014-05-27 03:41:18 +01:00
KHobbits
01a84d069f Don't check silentjoin.vanish if another plugin has hidden the join message. 2014-05-26 22:08:18 +01:00
KHobbits
2d157c3238 New permission: essentials.silentjoin.vanish
The server needs silentjoin to be enabled first.
2014-05-25 19:31:55 +01:00
KHobbits
d74770dcc4 Abort transaction before updating funds on balance overflow. 2014-05-25 17:03:23 +01:00
KHobbits
d2240f011f Utilize write transactions for delaylogin task. 2014-05-25 01:38:37 +01:00
KHobbits
db4d80590b Rename listening methods to be a little more descriptive of their purpose. 2014-05-24 18:47:40 +01:00
KHobbits
293b75dc92 Convert 9 anonymous scheduled tasks to named classes for better logging. 2014-05-18 21:32:07 +01:00
KHobbits
9bcb3cb606 Fix invalid TL key. 2014-05-18 19:47:18 +01:00
KHobbits
dca2383b98 Exempt named mobs by default from /remove
Named mobs can be removed using /remove named
Killing all mobs now requires /remove all,tamed,named
2014-05-18 14:43:07 +01:00
KHobbits
008b241017 Tweak to player login event. 2014-05-18 13:26:27 +01:00
KHobbits
a4d221f2da Update worth.yml to be more descriptive. 2014-05-17 04:31:44 +01:00
KHobbits
c64e1684c1 Update /condense syntax hint. 2014-05-17 04:21:51 +01:00
@ArkhamNetwork
8643a27b4e Optimize PlayerLoginEvent 2014-05-17 04:05:51 +01:00
@ArkhamNetwork
eafea119a6 Move the teleport timer to an async task. 2014-05-17 03:35:44 +01:00
KHobbits
e92fdbdc59 Prevent near empty userdata file creation. 2014-05-17 03:06:48 +01:00
KHobbits
df562a09a2 Stop using old string player lookup. 2014-05-17 02:47:10 +01:00
KHobbits
7a2414a43e Prevent reading and writing the usermap at the same time. 2014-05-17 01:50:41 +01:00
Faris Rehman
868088e2b2 Add user messages. 2014-05-16 20:39:49 +01:00
KHobbits
ffe08aabbc First draft of /condense 2014-05-16 20:30:06 +01:00
KHobbits
490ade13d4 If Bukkit doesn't know who a player is, but we do, substitute the last known nickname when ban checking. 2014-05-10 21:52:45 +01:00
KHobbits
5f143176d9 Update English TL keys. 2014-05-10 17:49:37 +01:00
KHobbits
098bf3ee40 Update translations from crowdin (http://translate2.ess3.net/) 2014-05-10 16:11:03 +01:00
Luke Anderson (stuntguy3000)
d5269e28df Improve messages/formatting 2014-05-10 16:03:39 +01:00
Burke D
936cb8a42d Grammatical changes to config.yml 2014-05-10 15:46:08 +01:00
clou44
7b71b81fdb Updated Items.csv: Added nemofish and fishnemo.
Added shorter aliases for salmon, pufferfish, and clownfish.
2014-05-10 15:38:29 +01:00
KHobbits
e075ce361b Only dispose users who are offline at point of disposal.
This should cater for quick reconnects on lagged servers.
2014-05-10 15:36:58 +01:00
KHobbits
45bcc899de Initialize TL Bundle on plugin start. 2014-05-06 07:00:57 +01:00
KHobbits
cb6f72b3dc Remove '-' from valid account names again.
This could cause issues with NPC's converted to UUID before this version.
2014-05-05 22:46:46 +01:00
KHobbits
21ed479dfe Reload locale even if it is set to null. 2014-05-05 20:47:48 +01:00
KHobbits
3fffa93dac Better handle TL failover. 2014-05-05 14:48:25 +01:00
KHobbits
c929533ca3 Update teleport timer to handle UUID rather than player names. 2014-05-05 13:01:20 +01:00
KHobbits
78d5568cc7 Better handle corrupted chunks. 2014-05-04 19:39:35 +01:00
ElgarL
3374dc2da8 Error in logic 2014-05-04 17:12:15 +01:00
ElgarL
d79feefdbf Prevent players who have never logged in before from taking over existing accounts. 2014-05-04 16:22:58 +01:00
KHobbits
dc13240344 Allow disabling userfile cache on uuid convert.
Add "ignore-userfiles-cache: true" to "upgrades-done.yml" to disable cache, forcing uuid lookup requests.
2014-05-04 13:25:20 +01:00
ElgarL
2806dc74dd Fix clones forgetting sub groups. 2014-05-04 12:50:22 +01:00
ElgarL
1764940b18 Set a default mirror map if none is found in the config. 2014-05-04 12:50:21 +01:00
ElgarL
8ce433d138 Fix overloadedWorldHolder so it correctly calls the new WorldHolder code when the user is not overloaded. 2014-05-04 12:50:20 +01:00
ElgarL
9b7a889842 Fixup javadocs 2014-05-04 12:50:18 +01:00
ElgarL
e8b51c549f v2.1: - Update for CraftBukkit 1.7.8-R0.1(3050). - Add UUID support. Plugins can still query by player name but a UUID is faster and preferable. 2014-05-04 12:50:17 +01:00
ElgarL
0ef79eea00 Do not override higher level permissions with negations. 2014-05-04 12:50:16 +01:00
Necrodoom
55abcd6636 Fix a /mangcheckp message 2014-05-04 12:50:15 +01:00
ElgarL
bbc465e465 Update mangcheckp to understand Exception nodes. 2014-05-04 12:50:14 +01:00
ElgarL
5dbf052e1d Fix manucheckp to understand and report correctly on Exception nodes. 2014-05-04 12:50:13 +01:00
ElgarL
320eb550e3 Allow Exceptions in any inherited group to override negation of permissions. 2014-05-04 12:50:12 +01:00
Necrodoom
7f384e6474 Cleanup plugin description 2014-05-04 12:50:11 +01:00
ElgarL
b4a90f3b17 Prevent adding sub groups for ranks the granting player doesn't have access to. 2014-05-04 12:50:09 +01:00
ElgarL
601b362159 Allow Exception permission to override negations when in the same group. 2014-05-04 12:50:08 +01:00
ElgarL
af985d8f0b Change to use LinkedHashSets to preserve ordering. Fixes an issue with populating bukkit perms in the wrong order. Fix wildcard negation in parent groups. 2014-05-04 12:50:07 +01:00
ElgarL
41bbc89fb7 Fix Cyclic mirroring test (silly me) 2014-05-04 12:50:06 +01:00
ElgarL
f75e50ba24 Tidy imports 2014-05-04 12:50:05 +01:00
Necrodoom
d4469dca9f Improve Javadocs, clean ' strip checks, update changelog. 2014-05-04 12:50:04 +01:00
Necrodoom
38ccf1c0b1 add recursive permission adding/removing
also other minor fixes
2014-05-04 12:50:03 +01:00
ElgarL
3ed02250ae Check subgroup permissions with an equal priority so no one subgroup is higher ranked than another. 2014-05-04 12:50:02 +01:00
KHobbits
3816d64ec3 Fix attempting to spawn invalid items. 2014-04-30 05:41:42 +01:00
KHobbits
714efc48a0 Skip npc's when doing cleanup. 2014-04-29 04:42:55 +01:00
KHobbits
498ecdd8e1 Better handle a write locked usermap.csv 2014-04-29 01:44:28 +01:00
KHobbits
13259dd959 Run user dispose on another thread. 2014-04-28 23:12:35 +01:00
Corin Simpson-Bryars
f71a6dd167 Updating pom for vault
When deploying with Jenkins the build will fail due to there being no http://repo.ess3.net:8071/content/groups/public/net/milkbowl/vault/1.2.27 however there's a valid jar/dir for vault at http://repo.ess3.net:8071/content/groups/public/net/milkbowl/vault/Vault/1.2.32/
This will keep maven happy and the build not to error.
2014-04-28 00:52:06 +01:00
KHobbits
a9a2a25c51 Fix /home for offline players. 2014-04-27 17:09:44 +01:00
KHobbits
c8f6002baf Update UUID mapping, if uuid for a username changes. 2014-04-27 01:35:52 +01:00
KHobbits
b2b5d9f101 Switch AFK check to use UUID. 2014-04-27 01:10:44 +01:00
KHobbits
ff836b8671 Delay uuidconversion for 10s and show warning.
UUID conversion should now better handle offline conversion.
2014-04-26 23:50:12 +01:00
KHobbits
77dc7b0b2e Fix time command exit statuses. 2014-04-24 10:24:35 +01:00
KHobbits
b4c3571d34 Skip empty user names on uuid conversion. 2014-04-22 18:07:02 +01:00
KHobbits
85cfaf3380 [Breaking] Fix ECO NPC's. This is a work around of CB's recent changes blocking invalid uuid lookups.
NPC's converted with the previous version will need manual changes.
2014-04-19 02:03:39 +01:00
KHobbits
c8c9068799 Only write to UUIDMap if the entry doesn't exist. 2014-04-18 06:48:14 +01:00
KHobbits
53b540bbe9 Format /seen account history list, optimize map loading. 2014-04-18 05:57:47 +01:00
KHobbits
482899ba34 Add previous account tracking to /seen 2014-04-18 04:48:34 +01:00
KHobbits
398e0181ab Force CB 3050+ 2014-04-18 03:58:27 +01:00
KHobbits
bfd25e30d4 Fix offlineplayers with null names. 2014-04-17 06:09:08 +01:00
KHobbits
3f0ac523db Optimize uuidmap writing, and use userConf write buffering. 2014-04-17 05:34:34 +01:00
KHobbits
6ab29771de Add progress status and /ess uuidconvert command for manual conversion. 2014-04-17 02:18:28 +01:00
KHobbits
c659e80ae6 Update Bukkit to 1.7.8-R0.1
Bukkit: 1922 CraftBukkit: 3050
2014-04-15 00:24:12 +01:00
KHobbits
6878c11d87 Add UUID mocking support, and fix tests. 2014-04-15 00:08:02 +01:00
KHobbits
7745dfd260 Allow usermap to support legacy users, and restore ability to create user on first access, as well as server join. 2014-04-15 00:07:35 +01:00
KHobbits
a5a0b70380 Make eco npc methods use proper user config creation and resets. 2014-04-15 00:06:29 +01:00
KHobbits
9af24f1069 Stop delayed writes from reversing user reset. 2014-04-15 00:05:56 +01:00
KHobbits
d72d748178 Remove Ess object from FakeServer. 2014-04-14 00:03:07 +01:00
KHobbits
09178693ea Essentials UUID conversion. 2014-04-13 21:40:15 +01:00
KHobbits
5a4dd00e30 Converted emulated player class calls to use base class. 2014-04-13 01:01:49 +01:00
clou44
19ff2175e2 Update items.csv
Added additional aliases for various flowers.
2014-04-10 23:31:05 +01:00
clou44
059622c41f Update items.csv
Added additional aliases for coal blocks.
2014-04-10 23:30:58 +01:00
KHobbits
8effff76ca Update config.yml to reflect vanilla fallback no longer works. 2014-04-07 14:09:09 +01:00
KHobbits
11021eef7a Update Bukkit 1.7.5-R0.1
Bukkit 1919 CB: 3039
No UUID update yet.
2014-04-06 15:57:37 +01:00
KHobbits
d778f5ad1a Cleanup 2014-04-06 15:44:37 +01:00
KHobbits
c348691d6f Correctly handle line overflow in book pager
Fixes a bug with the last book pager tweak.
2014-04-05 15:33:38 +01:00
KHobbits
4534ef8415 Fix fly logic check (creative doesn't mean fly is enabled) 2014-03-31 03:26:48 +01:00
KHobbits
51a6ae2cf0 Add chat configurables. 2014-03-30 15:50:32 +01:00
KHobbits
9fb5b3cef4 See if we can better handle book paging to fit more context on a line, without causing text loss after reaching character limit. 2014-03-29 16:07:32 +00:00
evonuts
51afbfcfc7 Minor phrasing fixes. 2014-03-26 22:08:37 +00:00
Matt Anthony
1cbc5ca975 Add colors to a few TL keys. 2014-03-26 21:58:36 +00:00
KHobbits
0c504d9afe Add local echo to tempban command. 2014-03-26 20:08:38 +00:00
KHobbits
85c641c7eb Helpop should use broadcast method
Add local echo's to helpop and mute commands.
2014-03-26 20:06:01 +00:00
Necrodoom
daa73f9822 Add socialspy wildcard support 2014-03-26 19:09:00 +00:00
Necrodoom
680264e873 Match /clearinventory multiple permission to /msg 2014-03-26 19:07:48 +00:00
Necrodoom
5b7e009b52 Some messages fixes, and information addition. 2014-03-26 19:07:41 +00:00
KHobbits
99a9e9fb50 Revert "Do not allow a block with an Essentials Sign attached to it to be pulled with a sticky piston"
This reverts commit 8b0ade3e1d.
2014-03-26 15:14:40 +00:00
Chris Ward
8b0ade3e1d Do not allow a block with an Essentials Sign attached to it to be pulled with a sticky piston 2014-03-26 22:00:57 +11:00
KHobbits
c2fa68c257 Merge branch '2.x' of github.com:essentials/Essentials into 2.x 2014-03-23 18:14:21 +00:00
KHobbits
5c4f31dec4 Fix null teleport costs. 2014-03-23 18:12:33 +00:00
FearFree
a4f8193e38 Future Java versions may not support _ as identifier. 2014-03-22 16:08:11 +11:00
KHobbits
7a31d2e213 Cleanup warp charging, to properly handle warp sign costs. 2014-03-19 00:01:47 +00:00
ElgarL
8389996b4a Merge pull request #668 from necrodoom/patch-91
Fix messages
2014-03-12 15:41:53 +00:00
KHobbits
fb0b219029 Fix some /home errors with invalid data. 2014-03-09 17:59:07 +00:00
Dabo Ross
9a124c6177 Add IEssentialsSpawn class for API for Essentials Spawn with two methods, getSpawn(String) and setSpawn(String, Location).
Implement IEssentialsSpawn in EssentialsSpawn.
2014-03-09 17:31:36 +00:00
KHobbits
dea07cbdfa Update translations from Crowdin
http://translate2.ess3.net/
2014-03-09 17:23:38 +00:00
Necrodoom
d3a68e58ad Fix messages 2014-03-09 19:17:26 +02:00
Luke Anderson (stuntguy3000)
6c1719dff5 Add missing language pointers 2014-03-09 17:14:09 +00:00
FearFree
30cdbb244b Remove op and replace with permission 2014-03-09 17:01:31 +00:00
KHobbits
6511d5d067 Only enable teleport protection on plugin/command caused teleport events. 2014-03-09 01:13:41 +00:00
Dykam
b3a92e3415 You can now access the old balance during the UserBalanceUpdateEvent Event 2014-03-04 19:44:55 +00:00
Kryptic Dot
2a9daca526 Cleaning up readme markdown 2014-03-04 19:29:47 +00:00
SkyBirdSoar
a493fc491a Fixed some grammatic errors, changed some sentences. 2014-03-04 19:26:16 +00:00
Zed Spencer-Milnes
0c20f98670 Finish Sentence
# Setting to false means EssentialsAntiBuild will never prevent you from using.
->
# Setting to false means EssentialsAntiBuild will never prevent you from using items.

Am I glad to make such a profoud change to the source code.
2014-03-04 19:22:05 +00:00
Luke Anderson
778f2c85df Remove generated comments 2014-03-04 19:20:56 +00:00
KHobbits
774554517e Fix login death caused by built up fall damage using /fly. 2014-03-03 21:24:00 +00:00
KHobbits
a4c4648a96 User loading cleanup 2014-03-03 09:01:07 +00:00
KHobbits
a0ea07b9c1 Round to gc output to 2 dp. 2014-03-03 08:34:43 +00:00
KHobbits
cf04ebd9b4 Constant user file casing. 2014-02-27 01:55:04 +00:00
KHobbits
90651b10b2 Fix warp sign costs. 2014-02-25 07:09:32 +00:00
KHobbits
7b368313fa Fix safety tp check above world height
Performance tweak to fly check
2014-02-23 17:41:25 +00:00
KHobbits
3215dd0be5 Fix customtext copy 2014-02-19 03:28:28 +00:00
KHobbits
a02ccd44df Alternative implementation of unsafe enchant blocking for signs.
Permission: essentials.signs.enchant.allowunsafe - required to add unsafe enchants using enchant signs.
This reverts commit 9041abe31f.
2014-02-19 01:18:40 +00:00
KHobbits
4ad8ed4100 Fix projectiles compiling. 2014-02-19 00:58:20 +00:00
KHobbits
b12726e1c3 Update Bukkit to 1.7.3-R0.3 - Bukkit: 1903 CB: 3020
This also disables vanilla fallback, use new aliases file.
2014-02-19 00:36:54 +00:00
snowleo
9041abe31f Split unsafe enchantments in kits to a new config option 2014-02-18 23:47:18 +01:00
KHobbits
c3c29fc202 Merge branch '2.x' of github.com:essentials/Essentials into 2.x 2014-02-16 01:15:25 +00:00
KHobbits
c41985d6ff Use the absolute radius value. 2014-02-16 01:15:01 +00:00
Chris Ward
79914cd490 Update repository URLs 2014-02-15 14:23:30 +11:00
KHobbits
a28b7c9933 Allow sending customtext chapters as a parameter instead of reading commandLabel 2014-02-13 22:52:14 +00:00
KHobbits
72c5ce82fe Fix Stripping/blocking of urls containing caps. 2014-02-12 01:20:54 +00:00
Iaccidentally
a216e1cf9d Merge pull request #657 from evonuts/2.x
Fix spelling error (atleast) in translation files.
2014-02-11 02:27:10 -05:00
evonuts
d63097d619 Fix spelling error (atleast) in translation files. 2014-02-11 20:15:14 +13:00
KHobbits
2b2e06e943 Fix world argument to ignore radius, and allow for skipping radius param in syntax. 2014-02-09 22:26:54 +00:00
KHobbits
ab31d9a07c Fix ghost items with /recipe 2014-02-09 21:54:04 +00:00
Necrodoom
e479a4e13a Reorder ID 376 2014-02-09 21:37:03 +00:00
KHobbits
db091fb7c9 Code cleanup and remove remote skull edit. 2014-02-08 01:23:54 +00:00
Luke Anderson (stuntguy3000)
d467512781 Add /skull command 2014-02-08 00:25:34 +00:00
coegho
dba09cd8f5 [Fix] fireball-fire=true now prevents fire spread from fireballs 2014-02-08 00:22:56 +00:00
Necrodoom
9907bda138 Restore 2 aliases 2014-02-08 00:16:11 +00:00
Necrodoom
5ec8f89637 Fix duplicates, a few more aliases addition/remove 2014-02-08 00:16:11 +00:00
KHobbits
2bc4475d24 Reformat pom 2014-02-08 00:13:46 +00:00
KHobbits
854148dbee Add bow as a skeleton keyword 2014-02-06 02:35:27 +00:00
Iaccidentally
58eb20d073 Modifier order consistency 2014-02-04 11:11:43 -05:00
KHobbits
0503aff84a Readme tweak. 2014-02-04 01:17:06 +00:00
KHobbits
b010d94ba2 Add support for vanilla item names from api. 2014-02-02 19:04:09 +00:00
KHobbits
084b63d38f Fixed argument count for meta parsing. 2014-02-02 18:56:45 +00:00
KHobbits
bc438f61da Allow the Essentials module to compile again. 2014-02-02 18:19:29 +00:00
KHobbits
4dc94cc686 Raise minimum CB version to 2922 or 1.7.2-R0.1
This should prevent issued caused by UUID mismatch.
2014-02-02 17:13:44 +00:00
KHobbits
4f25ba3ced Track UUID for future use. 2014-02-02 17:05:41 +00:00
KHobbits
fa467fc221 Restore teleporting to middle of block, when flying and unsafe is enabled. 2014-02-02 16:43:31 +00:00
KHobbits
b6cd83acc8 [Breaking] Add exception when players have exceeded their account limit.
This might effect some plugins which hook Essentials for economy without using the API
2014-02-02 16:07:32 +00:00
KHobbits
f4cf63c0ce Make sure we leave any vehicles before teleporting. 2014-02-02 15:04:07 +00:00
Iaccidentally
938e539463 [FIX] Print a proper error when using tpaccept with no requester 2014-02-01 16:49:54 -05:00
Chris Ward
14e190282c Allow the use of non-development Bukkit builds at runtime
Unsafe code is surrounded by sufficient handling
2014-01-30 10:43:26 +11:00
Chris Ward
a6a33b9c4e Restore Bukkit dependency to parent pom 2014-01-30 10:34:16 +11:00
KHobbits
a85c697477 Attempt to fix client issue with speed reset on world change. 2014-01-26 22:33:56 +00:00
KHobbits
52ccd649a7 Make /speed persist on world change if permissions exist. 2014-01-26 20:00:41 +00:00
KHobbits
2c87e516bb Force Bukkit version to match deps. 2014-01-25 23:29:48 +00:00
KHobbits
95094e20ca Use OSX character split on internal sign interface 2014-01-25 22:55:28 +00:00
Necrodoom
0211762c5a Fix cauldron ID 2014-01-25 22:46:26 +00:00
Necrodoom
09c24ba852 Trim items.csv based on feedback 2014-01-25 22:46:25 +00:00
snowleo
b6a550fdcb Read backup output async 2014-01-25 15:33:33 +01:00
Chris Ward
ba6b83140f Add fullstops for @Necrodoom 2014-01-21 12:20:24 +11:00
Chris Ward
47580a04ea Add support for vanilla JSON metadata syntax (/give, /i, /kit, etc.) 2014-01-21 00:54:48 +11:00
Chris Ward
7fc0542597 Update to Bukkit Development Builds
Change things so unit testing can run after Bukkit's breaking commit with classloader stuff
2014-01-20 21:20:13 +11:00
KHobbits
7385d9ce56 Fix hidden groups in /list 2014-01-14 21:55:30 +00:00
KHobbits
0ce2e87513 Pass optional location parameters to teleport TL keys. 2014-01-12 01:23:12 +00:00
KHobbits
bd347f5171 Config description cleanup. 2014-01-11 17:34:35 +00:00
Adam
b3e1d2bec8 Reset Exhaustion on /feed 2014-01-08 01:07:38 +00:00
Chris Ward
3eb75b1488 Add an upload-only pom file for GroupManager 2014-01-06 10:03:22 +11:00
KHobbits
d929cbf742 Check command cost, before running kit delay check, prevent accidentally delaying unran commands. 2014-01-03 08:16:17 +00:00
KHobbits
4ecba25f01 Add and implement sign break/create/interact events to EssAPI
Implement AfkStatusChangeEvent
2013-12-31 17:47:52 +00:00
KHobbits
cdeb08d93d Remove redundant permission check. 2013-12-31 04:44:28 +00:00
KHobbits
10a0e609ed Fix NB parent compiling 2013-12-28 23:09:56 +00:00
KHobbits
ad0028f6e0 Add permission: essentials.msg.multiple and essentials.pay.multiple
Message permission will allow rough nick matches and wildcards, while pay will only allow wildcards.
2013-12-28 22:37:36 +00:00
Chris Ward
70371c3a81 Add deploy plugin 2013-12-29 03:04:36 +11:00
Chris Ward
06dae78b9e Use the Essentials Maven repository 2013-12-29 00:21:26 +11:00
Chris Ward
694ce12e1b Remove Ant, migrate Netbeans code style to pom.xml 2013-12-27 03:47:13 +11:00
Chris Ward
e04ecd59d1 Travis - use Maven to build 2013-12-26 01:19:51 +11:00
SkyBirdSoar
a73da6a82d Add aliases to stationary water & stationary lava
New changes:
stillwater is an alias to 9:0 (Stationary water)
stilllava is an alias to 11:0 (Stationary lava)
2013-12-26 01:17:42 +11:00
Chris Ward
5d5adcdb63 Pull geoip library from Maven 2013-12-26 01:12:04 +11:00
Chris Ward
d3f2249d6a Use Ant to replace GroupManager's plugin.yml version 2013-12-22 19:21:19 +11:00
KHobbits
d654b171e5 Better matching of zombie and skeleton mobdata to avoid confusion. 2013-12-22 00:12:22 +00:00
KHobbits
a6aa8c1c86 Add {4} to homeSet TL key, this contains the name of the home being set. 2013-12-21 23:30:12 +00:00
KHobbits
203c58f41c Check command cost permissions prior to teleporting. Fixes ESS-4918 2013-12-21 23:19:58 +00:00
KHobbits
307a460dee Add extra /home message TL params
{1} = current home count
{2} = max home count
2013-12-21 17:42:55 +00:00
KHobbits
7e69cd2270 Don't check for default worth durability if more than one durability price is defined.
This also adds support for '*' durability matching 'other'.
2013-12-21 03:33:27 +00:00
KHobbits
d8386f33fd Restore CB to lib folder 2013-12-21 02:39:26 +00:00
Chris Ward
e63460835f Use Bukkit beta build 2013-12-18 17:26:01 +11:00
KHobbits
7f3f88495a Try changing the config file home language up a little bit. 2013-12-17 19:23:28 +00:00
Necrodoom
10e9d68071 fix gcWorld in de locale 2013-12-15 12:49:06 -06:00
Necrodoom
e6521adbb6 Add cobweb aliases 2013-12-13 09:23:29 -06:00
Chris Ward
a343d6e9f6 Change teleport safety checks to use less expensive methods. 2013-12-13 19:41:57 +11:00
KHobbits
bb681f2d7b Alter teleport cancel message to reflect config option. 2013-12-13 08:15:28 +00:00
Joshua Popoff
c56afbbb5c Add the ability to disable teleport safety. Requested by a few people - teleport safety isn't always a good thing for some servers. Request is cancelled if not safe. 2013-12-13 17:07:26 +11:00
Chris Ward
5b212c3ffd Remove Javadocs from the default compile, use the javadoc:javadoc goal to generate them. 2013-12-11 21:50:06 +11:00
Chris Ward
432577b292 Merge pull request #609 from Skylexia/patch-1
Fixed all the salmon.
2013-12-10 18:46:51 -08:00
Skylexia
9f423e660b Fixed all the salmon. 2013-12-10 20:42:56 -05:00
Iaccidentally
49ddb1a2e9 Merge pull request #607 from necrodoom/patch-67
Add new baked potato aliases - thanks clou44
2013-12-08 09:45:16 -08:00
Necrodoom
7dd3fb7d62 Add new baked potato aliases - thanks clou44 2013-12-08 19:44:14 +02:00
Chris Ward
8abfea6943 Strip all Mac OSX characters
Temporary workaround awaiting PR from Bukkit
2013-12-08 20:40:10 +11:00
md-5
7b7827dfd9 Fix formatting from last commit 2013-12-08 17:00:53 +11:00
md_5
65e14638f0 Strip weird sign chars sent by OSX due to client bug 2013-12-08 16:57:44 +11:00
KHobbits
719361190d Update config.yml to reflect recent custom message settings. 2013-12-08 04:46:33 +00:00
KHobbits
b5a56a733d Make it so both {world} and {worldname} work for both keyword parsers. 2013-12-07 23:58:47 +00:00
KHobbits
f1a39e06d9 Update Bukkit
Bukkit: #1859 CB: #2943
2013-12-07 22:26:41 +00:00
Necrodoom
de0277b1a7 Ignore empty chat events generated by plugins 2013-12-07 22:15:01 +00:00
KHobbits
a7a42a3956 Add support for adding item meta to [free] signs.
Fix NPE on [sign] creation.
2013-12-07 20:25:23 +00:00
KHobbits
de4ba9abdf Logger cleanup pt 1. 2013-12-07 20:03:05 +00:00
KHobbits
f143aaa38e Cleanup /remove ingame syntax 2013-12-07 19:17:36 +00:00
KHobbits
5c0ef0b14e Show warning when invalid mob type is specified for /remove 2013-12-07 19:03:29 +00:00
KHobbits
a8d14eb299 Remove requires at least one argument. 2013-12-07 18:46:25 +00:00
Chris Ward
8d6751d500 Fix issue in login messages
Message wouldn't be displayed if silent join is enabled and custom is disabled. Probably.
2013-12-07 14:24:39 +11:00
Chris Ward
1a58e3f6df Disable the login message hooks automatically 2013-12-07 14:20:51 +11:00
Chris Ward
bd61719dcd Fix login messages 2013-12-07 13:44:41 +11:00
Chris Ward
436eb564cc Revert "Fixed bug when logging in silently"
This reverts commit 81e782a8b0.
2013-12-07 13:24:48 +11:00
Iaccidentally
b582158331 Merge pull request #605 from Phryxiil/2.x
Fixed bug when logging in silently
2013-12-06 18:17:06 -08:00
Zarubinator
81e782a8b0 Fixed bug when logging in silently 2013-12-06 21:15:27 -05:00
Chris Ward
fc71aa2672 Who doesn't love a good ol' NPE 2013-12-06 19:01:37 +11:00
Necrodoom
d6b1e225dc Fix glass pane IDs
remove duplicates in items.csv (thanks .itemdbparse)
2013-12-05 23:09:35 +00:00
Chris Ward
8a4ef90017 Cleanup join/quit messages. 2013-12-05 23:08:29 +00:00
Chris Ward
e469ff3671 Fix custom join messages Removes double message, adds colour codes and placeholders for the user's name. 2013-12-05 23:08:28 +00:00
TheReverend403
38ad919f37 Code cleanup 2013-12-05 23:06:04 +00:00
Necrodoom
0c52536870 Update items.csv to 1.7.2 (beta file version) 2013-12-05 23:03:34 +00:00
KHobbits
bbb8b3eb39 Updated translations from crowdin 2013-12-05 23:03:34 +00:00
KHobbits
899fccb378 Cache join/quit messages. 2013-12-05 23:03:33 +00:00
Iaccidentally
e62abac974 Add options to disable join/quit messages and custom join/quit messages 2013-12-05 23:03:33 +00:00
KHobbits
f21fb54ceb Merge remove and killall command, thanks to @Evonuts and @Iaccidentally. 2013-12-05 23:03:33 +00:00
Adam
124e730284 Add a title to [Disposal] and [Free] sign inventory 2013-12-05 23:03:33 +00:00
Chris Ward
0ffc8115e9 Update FakeServer - fixes compilation 2013-12-05 23:03:33 +00:00
KHobbits
71ed092fc8 Update to first build of 1.7.2 - CraftBukkit is still buggy so expect issues
Bukkit: #1856 CB: #2922
2013-12-05 23:03:32 +00:00
iBo3oF
a08a7ccca2 Add Balance Update Event. 2013-12-05 23:03:31 +00:00
KHobbits
c0cb38a194 Tidy up string manipulation in trade signs. 2013-12-05 23:03:31 +00:00
KHobbits
d624fe68b2 Try to be a little less confusing with non-command debug errors. 2013-12-05 23:03:31 +00:00
KHobbits
0a9845cc40 Adding saddles to horses should properly tame horses. 2013-12-05 23:03:31 +00:00
Necrodoom
eaa466aa91 Do not block user damaging self (ender eye) 2013-11-17 19:19:42 +02:00
Joseph Jenniges
da4ab6dd00 Fix logic error with /kickall in console 2013-11-17 10:04:36 -06:00
snowleo
be0401d049 Fix fromIndex = -20 2013-11-15 20:06:16 +01:00
KHobbits
011321c487 Throw meaningful warnings when wrong Essentials version is used with unsupported mod packs. 2013-11-15 00:22:10 +00:00
Iaccidentally
ae60b928dc Tidy up Commandremove a bit, thanks to Evonuts 2013-11-10 23:25:42 +00:00
Iaccidentally
0f0b1cc16a Add more functionality to the remove command. This now overlaps some functionality of the killall command, which should eventually be merged into this command and removed. new options: hostile, monsters, passive, animals, ambient, mobs, entities 2013-11-10 23:25:34 +00:00
KHobbits
258d8f3651 Allow ignore to block tpahere requests. 2013-11-09 04:08:25 +00:00
KHobbits
7a43e1aaa1 Add a couple more enchant aliases for blast protection 2013-11-09 03:40:51 +00:00
Iaccidentally
ed89f048a3 Cleanup various aspects of code, fix some formatting, more netbeans 7.4 stuff 2013-11-06 21:22:32 -05:00
Iaccidentally
a0efe4bd69 Add ability to supress join/leave messages :: new permissions: essentials.silentjoin & essentials.silentquit 2013-11-06 18:05:02 -05:00
Iaccidentally
9b550641b5 netbeans 7.4 stuff 2013-11-06 18:03:46 -05:00
KHobbits
a09e840c61 Update Bukkit and Craftbukkit jar files for stable 1.6.4
Bukkit: 1848 Craftbukkit: 2912
2013-10-28 00:29:01 +00:00
KHobbits
1ab09bb1de Update Translation files from Crowdin:
http://translate2.ess3.net/
2013-10-28 00:21:41 +00:00
FearFree
5f2b10a45a Update for consistency.
Signed-off-by: KHobbits <rob@khobbits.co.uk>
2013-10-28 00:10:35 +00:00
FearFree
28c0ecf1ad Clarify no perm msgs for missing .offline perms
Signed-off-by: KHobbits <rob@khobbits.co.uk>
2013-10-28 00:10:33 +00:00
KHobbits
9db789771f Clarify message when ignoring exempt players. 2013-10-27 23:53:24 +00:00
Chris Ward
f9b54521c4 Fix automatic versioning when compiling with Maven 2013-10-21 13:50:17 +11:00
KHobbits
5abf0a1806 Add a little more group based debugging. 2013-10-21 01:20:09 +01:00
KHobbits
092488fe86 Add debug log entry when checking permission groups. 2013-10-20 17:45:37 +01:00
KHobbits
251aa6e768 Round up Y position when standing on half blocks. This should address some safelogin bugs. 2013-10-20 02:25:11 +01:00
KHobbits
d95289a433 Restore deleted craftbukkit jar 2013-10-20 01:36:22 +01:00
KHobbits
3d2b4c486e Restore original give/take Money API 2013-10-19 12:26:28 +01:00
Chris Ward
acea1cd14f [Fix] Allow someone to change their nick to different case of the same thing 2013-10-19 12:19:40 +01:00
Chris Ward
89c4abf218 Use a player's real name in /balance if they are vanished 2013-10-19 12:19:40 +01:00
Chris Ward
5384390a83 Call Ant from Maven (for GM) 2013-10-19 12:19:40 +01:00
Chris Ward
fce310a0af Fix null pointer exception on kits with meta 2013-10-19 12:19:39 +01:00
Chris Ward
2c52976436 Make looping commands see vanished players properly
Make /r check player existence in the correct order
2013-10-19 12:19:39 +01:00
Chris Ward
4041c0404e Add Maven Support 2013-10-19 12:19:39 +01:00
Chris Ward
2924125db3 Fix double messages in targeted commands 2013-10-19 12:19:37 +01:00
Chris Ward
f19293c4d4 Remove .idea and *.iml from git 2013-10-18 17:32:47 +11:00
Chris Ward
979b5b1a37 Fix /r 2013-10-18 17:23:27 +11:00
KHobbits
c53f21d9d1 Cleanup 2013-10-18 00:07:35 +01:00
KHobbits
dbebbbaa0e Restore getUser API 2013-10-18 00:07:34 +01:00
KHobbits
10167b3e95 Extract CommandSender to CommandSource, this should prevent Ess user object leaks. 2013-10-16 21:05:33 +01:00
KHobbits
840062a690 Strip nickname prefix when doing displayname comparison. 2013-10-16 20:54:23 +01:00
Iaccidentally
75963667f8 Cleanup XMPP PR 2013-10-16 20:53:30 +01:00
patjense
f33836fb13 add delayed task for XMPP presence update 2013-10-16 20:52:50 +01:00
patjense
f07b616e4f add XMPP presence management stack 2013-10-16 20:52:50 +01:00
patjense
e315e943cd add update for global presence handler 2013-10-16 20:52:50 +01:00
KHobbits
b55fbbc1d0 Clean Imports 2013-10-11 03:44:41 +01:00
KHobbits
0aabc746d9 Allow for event based test cases. 2013-10-11 03:34:41 +01:00
Iaccidentally
006cab7681 implement GodStatusChangeEvent 2013-10-11 03:14:51 +01:00
KHobbits
54bc030d0e Update README.markdown 2013-10-07 01:34:42 +01:00
KHobbits
aef2a5ff7d Allow recolouring own name. 2013-10-05 05:34:33 +01:00
KHobbits
a3807efc68 Cleanup 2013-10-05 03:27:40 +01:00
KHobbits
5169003102 Improve nick validation
Now matches nicks against userdata for conflicts
Now checks for empty string nicknames
2013-10-05 02:31:19 +01:00
KHobbits
1563cec8c6 Add more API template and implement nick change event. 2013-10-05 02:11:39 +01:00
KHobbits
37d86ea48f Extract user match looping 2013-09-28 21:33:22 +01:00
Luke GB
a3aba6ac9b Adds even more clarification to metrics opt-out 2013-09-25 00:22:11 +01:00
TheReverend403
17770acd5d Adds clarification to metrics opt-out 2013-09-25 00:18:43 +01:00
drtshock
5ede4e4b8b Format to the format with the formatter. 2013-09-24 09:38:30 +01:00
drtshock
ed677de950 Ignore list and no tpa to self. Fixes ESS-4456 ESS-4711
List users that you ignore when no arguments are given. Otherwise state
that no players are ignored.

Don't allow users to tpa or tpahere themself. This is a problem with
people "glitching" with how essentials finds a safe location to get
inside of places they shouldn't.
2013-09-24 09:38:29 +01:00
Iaccidentally
8630d49260 Update to 1.6.4 2013-09-19 21:38:15 -04:00
Chris Ward
f789d310ea Cleanup 2013-09-18 22:22:56 +10:00
GunfighterJ
2ccfc003bf Update ItemStack reference to getTypeId() 2013-09-17 23:23:45 +10:00
Chris Ward
29350240e8 Require latest Bukkit RB 2013-09-17 21:08:20 +10:00
GunfighterJ
8b8ae2b2d4 Push latest Bukkit RB 2013-09-17 06:06:34 -05:00
GunfighterJ
f45a8d6126 Fix translation typo 2013-09-15 16:43:16 -05:00
KHobbits
2c7d224b1f Fix handling max warp pages. 2013-09-10 01:42:11 +01:00
KHobbits
7ffa37fe1e Fix case sensitivity on {PLAYERLIST:group} 2013-09-06 23:54:37 +01:00
KHobbits
809f204b91 Clarify kit errors 2013-09-05 15:40:43 +01:00
KHobbits
bd4900b114 Expose other plugins ban masks. 2013-09-04 07:19:30 +01:00
KHobbits
2fd5777a4a Properly handle negative /clear amounts. 2013-09-04 06:35:53 +01:00
KHobbits
55b1169735 Reimplement 'private' keywords. 2013-09-01 00:24:11 +01:00
KHobbits
4abf5e6bae New enum cached, lazy generated KeywordReplacer
This runs before the pager, so keywords on other pages will still be parsed.
2013-08-31 23:11:08 +01:00
Pocketkid2
3a173f9e60 Use Tamed instead of horse/ocelot/wolf 2013-08-31 19:36:41 +01:00
KHobbits
6020ebef97 Add support for coloured authors on books
Fixes ESS-4690
2013-08-31 13:20:36 +01:00
KHobbits
546ea270f0 Add debug output to keyword replacer 2013-08-30 13:37:49 +01:00
KHobbits
7e0f1f0d05 This tp req cancel isn't needed anymore. 2013-08-30 11:05:27 +01:00
KHobbits
a30d94d4e8 Don't waste cpu on /baltop if eco is disabled. 2013-08-28 18:00:27 +01:00
KHobbits
e1a4f6d235 Extend eco disable option to block eco lookups. This can be required to combat slow SQL economies.
This option is not recommended under normal circumstances.
2013-08-28 17:50:28 +01:00
KHobbits
3ef723e95f Don't allow buying partial item sets via trade signs. 2013-08-28 13:42:08 +01:00
KHobbits
80cb3e9910 Add another customtext example (including one with multiple aliases) 2013-08-20 23:43:40 +01:00
KHobbits
f1d0c4ad51 Add support for {PLAYERLIST:GROUP} AND {PLAYERLIST:GROUP:<none>}
Replace <none> with what you want to show if there are no players from that group online.
2013-08-20 23:39:34 +01:00
Chris Ward
8072dbe40e Add COORDS, UPTIME and TPS keywords 2013-08-20 22:14:29 +10:00
KHobbits
babee63623 More colour. 2013-08-20 01:51:32 +01:00
KHobbits
618c999555 Refresh default motd. 2013-08-19 22:00:30 +01:00
KHobbits
30ee1fb7bc Fix text file color code escaping (&&6 -> &6) Add support for color escaping in ingame chat Other formatting class cleanup 2013-08-19 21:37:44 +01:00
KHobbits
85c4685c5d New command /customtext - This command is intended to be used with bukkit.yml aliases to make custom commands. 2013-08-19 21:37:33 +01:00
KHobbits
cd3e7dbcf2 Add support for multiple bookmarks/chapter names
Clean up info file handling
2013-08-19 00:13:49 +01:00
KHobbits
9f16c0b71f Fix tests 2013-08-18 22:48:13 +01:00
KHobbits
2fc252409f Reset fall distance when toggling fly so fall damage is not accidentally applied. 2013-08-18 22:43:43 +01:00
KHobbits
5476dad4e3 Fix a few issues with /list and group formatting. 2013-08-18 22:08:57 +01:00
KHobbits
29d2d91381 Fix feed cooldown bypass permission:
Permission: essentials.feed.cooldown.bypass
2013-08-18 21:05:45 +01:00
KHobbits
74d757fd59 Fix NPE in /kill when used from console. Thanks Necrodoom 2013-08-18 21:04:19 +01:00
KHobbits
93b00222fd Add muting offline players
Permission: essentials.mute.offline
2013-08-18 21:02:47 +01:00
KHobbits
289c47525f Allow alternative command handler to also pass tab complete. 2013-08-15 21:58:23 +01:00
Necrodoom
cfae34d3f7 items.csv - try move the most common item alias to top of aliases stack
without ore aliases remove
2013-08-15 21:37:55 +01:00
KHobbits
2062b97bb9 Use essentials itemdb for charge messages. 2013-08-15 05:47:23 +01:00
KHobbits
18b8e56d43 Use user object to send messages when possible. 2013-08-15 01:53:22 +01:00
KHobbits
df968b0dbf Gracefully handle botched plugin starts 2013-08-13 23:41:54 +01:00
KHobbits
49d1d926c4 Fix mail sendall from console skipping first param 2013-08-13 22:01:13 +01:00
Necrodoom
420fedf6ed fix config comment at heal-cooldown 2013-08-13 18:16:40 +01:00
Pocketkid2
fb7b326cb6 Update Commandremove.java
Fix class checking in /remove
2013-08-13 18:14:40 +01:00
Necrodoom
42427e2ee5 trim and replace spaces in chapter names to always work in commands 2013-08-13 18:07:27 +01:00
KHobbits
5b94d28f7f Teleport cleanup 2013-08-13 18:06:24 +01:00
GunfighterJ
bf834ae061 Fix NPE in /back when no previous location exists 2013-08-13 11:46:52 -05:00
KHobbits
df8c1f2e54 Restore safe location for /top 2013-08-13 00:55:31 +01:00
KHobbits
68adbc6a37 Prevent inf loop when adding air to kits.
Should fix #4555
2013-08-12 00:26:51 +01:00
KHobbits
83529213d4 Fully support numerical worth yml data. 2013-08-11 23:43:45 +01:00
KHobbits
cd1709d137 When in fly+god mode or when in creative mode, don't use safe teleport location when teleporting to other players.
Enable fly in unsafe circumstances.
This only works when teleporting within worlds for permission reasons.
2013-08-11 22:42:29 +01:00
KHobbits
ecd80c0112 Update plugin.yml and add some aliases (Evonuts is going to hate me) 2013-08-11 22:10:56 +01:00
KHobbits
c7e9751cad Allow toggling vanish for other players
Permission: essentials.vanish.others
2013-08-11 21:48:30 +01:00
KHobbits
8fa5dee2c4 General cleanup.
Add optional TL param for tempban/mute time in notify message
2013-08-11 21:34:26 +01:00
KHobbits
7c5cdb9931 The /tpahere command now stores the location of 'here' rather than using the current players location.
Cleanup teleport logic - This also fixes exploiting /tpahere to get accesses to restricted areas.
2013-08-11 16:37:21 +01:00
KHobbits
47c62dbc6c Update Mob.java 2013-08-09 04:38:57 +01:00
Necrodoom
6b0d76b0eb display syntax if more than one argument to avoid confusion with command purpose
more clearly, show syntax when people try to do /money give playername amount
2013-08-05 16:04:28 +01:00
KHobbits
f86ac7e8a7 Update Bukkit for 1.6.2R0.1 beta
CB: 2838 Bukkit: 2252
2013-08-05 04:15:26 +01:00
KHobbits
7b0be85a04 Update Translations from crowdin 2013-08-05 00:19:44 +01:00
KHobbits
02d504f920 Force space after group in /list 2013-08-04 23:39:56 +01:00
GunfighterJ
77cb979078 Remove duplicate key 2013-08-04 12:53:46 -05:00
Pocketkid2
9d44496b8a Update Potions.java
Add extra alias
2013-08-04 11:38:48 -05:00
KHobbits
da558f31e1 More missing syntax. 2013-08-03 02:48:50 +01:00
KHobbits
320a6ccd68 Add missing command syntax for /spawnmob 2013-08-03 02:25:42 +01:00
Pocketkid2
f89d5f5d4a Update Commandkillall.java
Add support for horses
2013-07-29 21:40:52 +10:00
KHobbits
d6b9d5ec6f Restore vault compat 2013-07-26 00:11:37 +01:00
Iaccidentally
6ecaba1498 Merge pull request #524 from necrodoom/patch-40
fix mobdata typo
2013-07-25 10:51:08 -07:00
Necrodoom
9a7ce12112 fix mobdata typo 2013-07-25 16:44:48 +02:00
GunfighterJ
fd5dfd3df0 Close inventories before opening any others 2013-07-24 16:01:17 -05:00
KHobbits
0bb65dee7d Use the correct name in /sethome if you don't have sethome.others permission. 2013-07-23 23:39:44 +01:00
KHobbits
d65a3780c2 Restore deprecated trade api
Fixes #4500
2013-07-23 22:48:32 +01:00
KHobbits
2c6e259eea Fix max radius. 2013-07-21 00:04:04 +01:00
okamosy
36cbd6ea2f Refactored and cleaned up SpawnMob. Added context-aware help /spawnmob <mob>: 2013-07-20 21:29:13 +01:00
KHobbits
67b57627fe Show if a IP is ip-banned on /seen <ip> 2013-07-19 02:25:50 +01:00
KHobbits
adf0eedbbb Cleanup worth and sell messages 2013-07-19 00:55:21 +01:00
snowleo
439ce03542 Can't sell negative amount of items. 2013-07-19 01:01:52 +02:00
okamosy
7935d28381 Added horse armor /spawnmob horse:armor<iron|gold|diamond> 2013-07-17 23:32:25 +01:00
okamosy
307e933052 Added saddles to pigs and horses /spawnmob pig:saddle /spawnmob horse:saddle 2013-07-17 23:31:37 +01:00
KHobbits
fd6257355f Log notice when chat ignore is blocked by another plugin. 2013-07-17 23:26:26 +01:00
KHobbits
25b7a91ced Add scaling object cap for usermap, prevent huge memory usage, also config file configurable. 2013-07-17 01:56:27 +01:00
okamosy
78f928655a Added horses to SpawnMob /spawnmob horse:<color><variant><style><chest> 2013-07-16 23:36:11 +01:00
KHobbits
fe8d1dd4f3 Fix radius logic 2013-07-15 23:15:35 +01:00
Necrodoom
f637b8c8be Max near radius 2013-07-15 23:10:55 +01:00
KHobbits
2b2eba6c27 Add missing param in /remove 2013-07-15 02:43:23 +01:00
KHobbits
c410cf5a1b Better handle esschat/GM reloading during async events. 2013-07-15 00:47:17 +01:00
KHobbits
902b3fc983 Update Craftbukkit
CB: 2814 Bukkit: 1792
2013-07-14 22:27:57 +01:00
KHobbits
3c1393ffa8 Try to restore basic api functionality 2013-07-14 13:00:03 +01:00
KHobbits
709e368070 Tidy and slightly expand user API 2013-07-14 12:41:27 +01:00
KHobbits
f1fdf33952 Fix worth display bug 2013-07-14 12:09:49 +01:00
KHobbits
e705f5bb1c Fix local chat spy tag order. 2013-07-14 01:20:36 +01:00
KHobbits
8c4c8395dd Throw syntax error instead of "For input string" 2013-07-14 01:07:59 +01:00
KHobbits
f743a7725e Add support for /worth all and /worth hand 2013-07-14 01:03:08 +01:00
KHobbits
913cbbc738 Whoops, wrong event. 2013-07-13 18:56:18 +01:00
KHobbits
af604194a5 Wrap ItemDb accessors and move Item string matching to itemdb class. 2013-07-13 18:52:53 +01:00
KHobbits
f536224268 Fix local message when no players are in the area
Allow any translation key to be silenced by blanking it in locale file
2013-07-13 18:46:26 +01:00
Iaccidentally
3652bd0aca [API] flip! (╯°□°)╯︵ ┻━┻ 2013-07-13 13:40:46 -04:00
Iaccidentally
178164152e [API] fix implementation? 2013-07-13 12:52:08 -04:00
Iaccidentally
f558a57824 Merge branch 'API' of https://github.com/essentials/Essentials into API 2013-07-13 12:41:31 -04:00
Iaccidentally
acca5bd4d8 [API] fix other modules to use new packages 2013-07-13 12:40:50 -04:00
KHobbits
0468f61b16 Fix failing XMPP build. 2013-07-13 17:36:35 +01:00
KHobbits
2cd909edc9 Add 'No one listening' message stub, will be empty by default and thus not sent. 2013-07-13 17:31:14 +01:00
KHobbits
4934cac1c6 Remove old chat hook
Use Bukkit API for local chat handling
Implement localChatSpy event
2013-07-13 17:25:58 +01:00
Iaccidentally
7f0c3ac44a [API] remove setters 2013-07-13 11:53:52 -04:00
Iaccidentally
d4e4cbe60c [API] Event framework 2013-07-13 11:48:05 -04:00
Iaccidentally
b8c39f13a6 [API] Move 2.x API to new package, create dummy classes for compatibility 2013-07-13 11:14:39 -04:00
Iaccidentally
4015b3056d Merge branch '2.x' of https://github.com/essentials/Essentials into API 2013-07-13 10:38:28 -04:00
Necrodoom
60682e1ab5 fix mute message when chatting
deny /mail if muted
2013-07-12 15:22:48 +01:00
GunfighterJ
f88ace0318 Add horse to entity spawn protection blacklist 2013-07-11 12:37:09 -05:00
KHobbits
b607902a7d Don't cast sender to User. 2013-07-11 09:20:52 +01:00
KHobbits
a86f995d8e Prevent speed from hitting absolute zero. 2013-07-11 08:58:22 +01:00
KHobbits
9fd5022a36 Update TL files from Crowdin, this commit resets untranslated English to new colour scheme. 2013-07-10 22:36:27 +01:00
KHobbits
3b561df287 Remove unused TL Keys 2013-07-10 22:14:23 +01:00
Iaccidentally
e229d36213 tweak default setting for max nick length 2013-07-10 11:01:49 -04:00
Iaccidentally
3202fff0b8 [FEATURE] Add configurable max nick length 2013-07-10 10:48:14 -04:00
KHobbits
c2724f3551 Update CB to 2808 2013-07-10 00:09:48 +01:00
KHobbits
0b83de8925 Fix TL handling with escaped ' marks. 2013-07-10 00:03:14 +01:00
KHobbits
504728b46b Fix user comparison. 2013-07-09 09:08:26 +01:00
GunfighterJ
84bd137b9f Implement abstract methods 2013-07-08 19:28:24 -05:00
GunfighterJ
1447ee781b Update to 1.6.2, adds new potion effect types 2013-07-08 19:22:38 -05:00
KHobbits
96d8ea856a Standardize translation formatting. 2013-07-07 15:01:00 +01:00
KHobbits
e93b9d7fab Update Polish and Swedish translations from crowdin 2013-07-07 14:54:38 +01:00
KHobbits
3fab3925c0 Translation cleanup
Allow '' in non format keys
Update French translation from crowdin
2013-07-07 14:52:31 +01:00
Gabriel D
dbea00ed64 Update some new text 2013-07-07 14:13:43 +01:00
KHobbits
3632ace61d More cleanup 2013-07-07 13:02:40 +01:00
KHobbits
35e0cab96a Misc cleanup 2013-07-07 12:38:01 +01:00
KHobbits
25b6c607e2 Whoops, we shouldn't be leaking the user object. 2013-07-07 11:51:12 +01:00
mrarroyo
234362c406 Fix punctuation 2013-07-07 02:17:25 +01:00
Chris Ward
6a5b68b870 Merge pull request #509 from necrodoom/patch-31
add horse egg
2013-07-02 02:25:49 -07:00
Necrodoom
2052e18a64 add horse egg 2013-07-02 12:20:20 +03:00
KHobbits
94e0beb8d9 Add carpet to safe teleport materials. 2013-07-02 08:02:01 +01:00
KHobbits
8bc1414cdd Add command logging for CommandBlocks and other console types. 2013-07-02 07:16:42 +01:00
Iaccidentally
fe83f25a73 Merge pull request #503 from necrodoom/patch-26
update items.csv to Minecraft 1.6
2013-07-01 19:48:11 -07:00
GunfighterJ
fa2e6248df Update Essentials for Bukkit 1.6.1-R0.1-SNAPSHOT 2013-07-01 21:38:27 -05:00
Necrodoom
5052724f05 update items.csv to Minecraft 1.6 2013-07-01 13:03:24 -05:00
GunfighterJ
f25895b19c Close the reader 2013-06-30 07:47:33 -05:00
GunfighterJ
a3e2d67682 Force reading in UTF-8 from .txt files 2013-06-30 07:40:24 -05:00
Tyler Blair
c829b3cc24 Update Plugin Metrics to R7 2013-06-29 18:05:42 +01:00
Iaccidentally
af9134c83a [API] Fix package naming 2013-06-28 15:30:47 -04:00
Iaccidentally
0f4928564c [API] fix references 2013-06-28 15:26:23 -04:00
Iaccidentally
a9b4639a0d [API] Cleanup 2013-06-28 15:21:49 -04:00
Iaccidentally
668f35c411 [API] Remove some unneeded dependencies 2013-06-28 14:58:45 -04:00
Iaccidentally
eb67e693de [API] A basic example of a custom event, more to come. 2013-06-28 14:22:18 -04:00
KHobbits
7a68694a15 Add {TEAMPREFIX} {TEAMSUFFIX} and {TEAMNAME} to chat formatting. 2013-06-28 17:12:01 +01:00
KHobbits
9195bdea22 Force repair inventory refresh. 2013-06-28 14:14:43 +01:00
KHobbits
1d6e7c33f4 Minor colour tweak 2013-06-28 13:05:56 +01:00
KHobbits
ea3f9a61d3 Make the paging logic even more complicated. 2013-06-28 01:05:56 +01:00
KHobbits
ee5cc43061 Drop messageFormat for simple string replace, remove duped ' marks. 2013-06-27 09:33:35 +01:00
KHobbits
3e771e75c2 Don't drop oversized stacks on the ground if player doesn't have oversized permission. 2013-06-26 21:44:34 +01:00
KHobbits
918f06659d [Fix] Fix toggle syntax in plugin.yml 2013-06-26 08:57:26 +01:00
KHobbits
42f3da8953 Merge pull request #504 from necrodoom/patch-30
[Fix] Fix socialspy toggle with no on/off param.
2013-06-26 00:51:51 -07:00
Necrodoom
f71df5681c fix socialspy toggles 2013-06-26 09:56:56 +03:00
KHobbits
e895587700 Let's make the default group colour orange. 2013-06-26 01:22:18 +01:00
KHobbits
d98affc18b Don't automatically convert {chatparms} to [chatparams] 2013-06-25 18:04:31 +01:00
Necrodoom
c018f6cdb8 update items.csv to Minecraft 1.6 2013-06-25 19:04:29 +03:00
KHobbits
32cda41b70 Fix null values. 2013-06-25 16:34:17 +01:00
ZerothAngel
0810d3fa2a Add group/prefix/suffix support for zPermissions. 2013-06-25 16:24:23 +01:00
Luuk Jacobs
9e108d80c2 Reword some things, minor fixes and add punctuation.
more tiny fixes
minor unicode fix
2013-06-25 16:20:21 +01:00
KHobbits
7c99c2103f Merge branch '2.x' of github.com:essentials/Essentials into 2.9 2013-06-25 16:00:32 +01:00
KHobbits
cf78f8b29a Merge pull request #502 from afistofirony/patch-1
Changing a spawner should update its BlockState.
2013-06-25 07:58:46 -07:00
KHobbits
2eaf1c221a Add missing variable. 2013-06-25 15:09:50 +01:00
Sahir
5d247afca0 Changing a spawner should update its BlockState. 2013-06-25 17:07:43 +04:00
KHobbits
a72ab3dc28 Update KeywordReplacer.java 2013-06-24 13:31:07 +02:00
KHobbits
6546ccdf90 Update info.txt 2013-06-24 13:29:28 +02:00
KHobbits
1589b47508 Merge pull request #499 from mozoa/patch-1
Update messages_nl.properties
2013-06-23 15:41:51 -07:00
KHobbits
a3878f749c Merge pull request #501 from theudis/patch-6
Update messages_fr.properties
2013-06-23 15:41:30 -07:00
theudis
c7f411042b Update messages_fr.properties 2013-06-24 00:18:58 +03:00
KHobbits
382334450d [Feature] Allow the placing of spawners with predefined network id's (/i spawner:50)
[Permission] essentials.spawnerconvert.<mobname> - Allow the placing of specific mobspawners with premade network id's.
2013-06-23 16:11:24 +01:00
mozoa
c3df201985 Update messages_nl.properties
Reworded some strings
and changed the order of words
2013-06-23 16:49:08 +02:00
KHobbits
98ee07927c Merge pull request #498 from mozoa/patch-1
Added /ci lines
2013-06-22 16:49:48 -07:00
mozoa
56de10a33f Update messages_nl.properties 2013-06-22 22:51:38 +03:00
mozoa
d1affb070f Update messages_nl.properties
Added new CI lines
bit indifferent about line 543 and 544
2013-06-22 22:49:26 +03:00
KHobbits
604d50a73d [Feature] Expand /ci to allow removing certain amounts, and breakdown on the items removed. 2013-06-22 17:36:35 +01:00
KHobbits
6c30d37962 Clean up exception types. 2013-06-22 16:33:22 +01:00
KHobbits
7eab661312 Fix missing Unicode in NL TL 2013-06-21 11:23:01 +01:00
KHobbits
178ec410e1 Reduce restrictions on same item trading, so only identical items are blocked. 2013-06-20 21:14:28 +01:00
mozoa
db6b01c94d Update NL locale 2013-06-20 21:07:58 +01:00
KHobbits
51ab887143 [Fix] Don't throw the wrong error message when using group limited kit signs. 2013-06-19 21:20:58 +01:00
GunfighterJ
2289c08114 Merge pull request #489 from necrodoom/patch-23
fix permission check typo (thanks to #4365)
2013-06-18 11:01:17 -07:00
Necrodoom
c36c057073 fix permission check typo (thanks to #4365) 2013-06-18 20:57:30 +03:00
KHobbits
e5e2b6de66 Merge pull request #488 from necrodoom/patch-21
fix typo in eco warning
2013-06-17 08:19:59 -07:00
Necrodoom
42b550af7d fix typo in eco warning 2013-06-17 16:05:45 +03:00
KHobbits
5b35afbaa0 Block external access to unsupported saveConfig() method. 2013-06-17 01:08:42 +01:00
KHobbits
049ae81d20 Allow new lines and add secure broadcast keywords. 2013-06-16 01:18:35 +01:00
KHobbits
232750fcb8 Cleanup broadcast, allow limited keywords in. 2013-06-16 01:07:16 +01:00
KHobbits
1c5e0ea7a5 Clarify 'permission-based-item-spawn' config setting. 2013-06-16 00:05:27 +01:00
KHobbits
695d454e35 Update to 1.5.2 RB:
Bukkit #1776 CraftBukkit #2788
2013-06-15 11:53:47 +01:00
KHobbits
8e61f72cb4 Reset suffix on /nick even if op and prefix/suffix are disabled. 2013-06-13 09:18:47 +01:00
KHobbits
954695116c Merge pull request #485 from necrodoom/patch-29
no permissions is not an error, so dont output it as a warning
2013-06-12 02:59:55 -07:00
Necrodoom
c221cf66f5 no permissions is not an error, so dont output it as a warning 2013-06-12 12:41:15 +03:00
KHobbits
85aa487b45 Merge branch 'temp1' into 2.9 2013-06-11 20:50:24 +01:00
KHobbits
a254644180 Merge branch 'release' of github.com:essentials/Essentials into 2.9 2013-06-11 20:46:28 +01:00
Iaccidentally
568741b460 Cleanup imports 2013-06-11 20:45:12 +01:00
KHobbits
5a75823b85 Restore support for replacing CAPITAL colour codes. 2013-06-11 16:38:24 +01:00
KHobbits
f6b52a87f7 Don't look up valid looking IP's in the player database. 2013-06-09 23:10:02 +01:00
Iaccidentally
eff86fba0f Remove old permissions handlers that are no longer used. This fixes an issue where new versions of Bpermissions would be detected as old. 2013-06-09 14:38:27 -04:00
KHobbits
b23d6a6db1 Allow use of deprecated teleport function through interface. 2013-06-09 13:38:09 +01:00
theudis
123bffc32b Update messages_fr.properties
Small changes in what I had done previously.
2013-06-09 03:09:20 +01:00
Necrodoom
c8e21b6825 Fix arg length checks on /exp 2013-06-09 03:07:35 +01:00
cexikitin
8f0ab2ccde Alert give sender that the user was unable to receive all the items. 2013-06-09 03:05:40 +01:00
KHobbits
62edbc044c Split util classes. 2013-06-08 22:31:19 +01:00
KHobbits
ea62dfc474 Cleanup ITarget 2013-06-08 21:43:42 +01:00
KHobbits
421a6b7462 Turn Target into a real class. 2013-06-08 21:40:02 +01:00
KHobbits
393677e1d5 Trapdoors should be treated as half blocks, not transparent blocks. 2013-06-08 21:26:11 +01:00
KHobbits
cbc7aee85e Teleport invulnerability should trigger on respawn as well as normal teleport. 2013-06-08 21:06:33 +01:00
KHobbits
db5f1f1d33 Essentials API cleanup and teleport possession fixing. (UNSTABLE) 2013-06-08 19:34:14 +01:00
KHobbits
eea791be90 Throw a little testing on toggle logic. 2013-06-08 16:33:30 +01:00
KHobbits
31b6f8971c Try and make toggles DRYer without loosing command flow.
Allow socialspy to match multiple players.
2013-06-08 15:13:51 +01:00
KHobbits
e8061f2e4d Allow spawning zombies without the trademark gold boots.
Also limit armor to zombies and skeletons.
2013-06-05 03:15:12 +01:00
KHobbits
5a2e6bc923 Fix unit tests. 2013-06-02 17:56:48 +01:00
KHobbits
7479620a97 Attempt to fix /seen times on vanish. 2013-06-02 17:45:56 +01:00
KHobbits
4f35ec2592 Mute and sudo should check for essentials.vanish.interact permission. 2013-06-02 16:09:56 +01:00
KHobbits
32d65bd468 Allow spawning zombies with swords too. 2013-06-02 00:09:12 +01:00
KHobbits
9adb02e24d [Feature]Extend spawning mob meta to allow more customized spawning:
/spawnmob (skeleton|zombie|pigzombie):(diamond|iron|gold)armor
2013-06-02 00:02:40 +01:00
KHobbits
4928948b48 [Fix] Set some default mob data.
Fixes skeletons spawning without bows.
2013-06-01 23:33:31 +01:00
KHobbits
0a32bb9358 Update Essentials spawn to use new kit params. 2013-05-27 02:29:28 +01:00
KHobbits
7391c6d150 Better handle kit item casting. 2013-05-27 02:25:30 +01:00
KHobbits
cce9b9f71c Ignore extra spaces in kit config. 2013-05-26 23:53:39 +01:00
KHobbits
0104373beb Exempt [repair] signs from 'essentials.repair.all' permissions check. 2013-05-26 22:00:35 +01:00
KHobbits
324cc3b45c Update inventory when closing ghost-dupe-able inventory, to remove ghost items. 2013-05-26 18:21:19 +01:00
KHobbits
2ea36e47b3 Reduce duplicated broadcast code. 2013-05-26 17:58:04 +01:00
KHobbits
d94ec6f601 Simplify player matching. 2013-05-26 17:37:11 +01:00
KHobbits
5fabaf030b Standardize /getpos and /whois to use essentials.vanish.interact like all other commands. 2013-05-26 17:20:03 +01:00
KHobbits
579b4603a2 GeoIP already has a perm, doesn't need hidden behind essentials.seen.extra as well. 2013-05-26 16:52:25 +01:00
KHobbits
104edda8d1 Show teleport cancel messages to tpa user. 2013-05-26 16:49:11 +01:00
KHobbits
2bc9b0946f Fix /helpop for console use. 2013-05-26 16:23:36 +01:00
KHobbits
612973d813 [Fix] Fix vanished player matching in: /seen /give /burn /nuke /tpall /tpaall 2013-05-26 16:02:40 +01:00
KHobbits
f80ab48c20 Forgot to push Essentials spawn changes. 2013-05-24 00:10:39 +01:00
KHobbits
f36f43ca19 Improve hidden player matching.
Replace essentials.teleport.hidden with essentials.vanish.interact
Fix perm checks in tpall and tpaall
2013-05-23 22:59:09 +01:00
KHobbits
76d35d3e4b Fixing feed messages. 2013-05-23 22:12:54 +01:00
KHobbits
710c0f5edf Improve user matching 2013-05-20 18:50:14 +01:00
KHobbits
9ad49f9e98 Don't throw NPE on broken sign state, just allow block to break. 2013-05-19 01:21:21 +01:00
KHobbits
1e9c0917ab Default chat formatting should strip all format codes, not just colours. 2013-05-19 01:03:54 +01:00
KHobbits
9e8bf18f28 Add indication of when kit's cannot be used yet, in the /kit output. 2013-05-18 23:27:41 +01:00
KHobbits
ec99f38069 Tidy up /gc's TPS output. 2013-05-18 21:42:02 +01:00
KHobbits
b008cdc5f6 [Feature] Add hunger level to /whois 2013-05-18 18:20:06 +01:00
KHobbits
18b9fe6a5e Fix null when trying to tempban players in console for times longer than max ban. 2013-05-18 17:57:05 +01:00
KHobbits
174e12d897 Tweak /baltop to not show displaynames on vanished players. 2013-05-12 21:19:54 +01:00
KHobbits
f157ebb3e9 Tiny listener optimizations. 2013-05-12 20:59:07 +01:00
KHobbits
38d8eb6824 Small tweak to warning display and make config variable 'economy-lag-warning' set in ms not ns. 2013-05-12 16:31:40 +01:00
KHobbits
b3c560ec34 Make the lag warning configurable, useful to debug economy lag on larger servers. 2013-05-12 16:10:41 +01:00
KHobbits
18bc02427d Throw console warning on slow economy api call. 2013-05-12 04:12:34 +01:00
GunfighterJ
3c8b9af2cb [Fix] Check initial direction when looking for a safe teleport spot 2013-05-10 11:21:39 -05:00
KHobbits
4777c083a6 Don't treat AFK players as god mode when dealing with food regen. 2013-05-09 17:44:10 +01:00
snowleo
37b1d66a78 Update ItemDb.java 2013-05-08 00:53:37 +03:00
snowleo
cb7e304330 Doesn't need this 2013-05-08 00:52:39 +03:00
KHobbits
9fffadf220 [Feature] Withdraw from trade signs without dropping items as overflow. [EXPERIMENTAL] 2013-05-06 23:09:31 +01:00
KHobbits
a4a1c63f5c Add some sign debugging to /ess debug to help track down charging issues. 2013-05-05 22:37:28 +01:00
KHobbits
1a7c125b72 Couple more bits of Eco cleanup 2013-05-05 20:05:28 +01:00
KHobbits
8c541ecdd4 Fix /sell to handle zero priced items again. 2013-05-05 19:59:35 +01:00
snowleo
c52c22a9e9 Make it compatible with Factions again. 2013-05-05 19:00:21 +03:00
snowleo
158e957eb7 Catch both exceptions in EssentialsConf and valueOf instead of new 2013-05-05 11:55:39 +02:00
snowleo
3a268ea11d Cleanup 2013-05-05 11:42:53 +02:00
snowleo
9ceee255d9 ECONOMY MADNESS? THIS IS … FIXED 2013-05-05 11:41:19 +02:00
snowleo
81310aae87 fix NPE in teleport code 2013-05-05 11:08:49 +03:00
KHobbits
5c62ede70b Further economy cleanup 2013-05-05 08:03:06 +01:00
KHobbits
e3e184920b Cleanup player argument matching in loops
Cleanup ess cleanup timestamp matching
2013-05-05 07:15:33 +01:00
KHobbits
d0c60bab0a Economy Madness 2013-05-05 05:12:17 +01:00
KHobbits
e2338d937f Trim stored precision to below that of a double, to prevent rounding issues. 2013-05-05 01:23:07 +01:00
theudis
b8ea75ba5b Update messages_fr.properties 2013-05-04 21:56:32 +01:00
KHobbits
7aa0ce11f7 Update CS translation with some extra TL keys from tommymortago 2013-05-04 19:34:55 +01:00
KHobbits
4b603e89b1 Sorted TL files 2013-05-04 19:22:44 +01:00
pa001024
dbef226b71 update zh-locate 2013-05-04 18:32:44 +01:00
Necrodoom
c98401ba06 Throw invalid kit message on invalid delay 2013-05-04 18:26:34 +01:00
KHobbits
b071e07101 cleanup 2013-05-04 18:22:55 +01:00
KHobbits
89768f47e3 [Feature] Make /kit list kit costs if any are set. 2013-05-04 18:11:35 +01:00
KHobbits
282ba911ca Merge pull request #465 from skmedix/patch-1
Update Polish translation
2013-05-04 08:55:18 -07:00
KHobbits
b9966f904e [Permission] Add essentials.repair.all permission, which is required to unlock /repair all
Also make it to /repair defaults to hand.
2013-05-04 16:06:06 +01:00
KHobbits
cf052e0403 [Fix] Allow Feed to be used via console
Throw events when modifying heath or food levels.
2013-05-04 16:04:59 +01:00
snowleo
46c24b52a9 Remove User instance from Teleport class 2013-05-03 01:53:54 +02:00
snowleo
ac11e2ee2b Don't trust File.length() 2013-05-03 01:26:51 +02:00
snowleo
ff0efdd9dc Do not keep hard references to User objects 2013-05-03 01:15:02 +02:00
snowleo
bdde309ab5 *angry eyes* 2013-05-03 00:25:07 +02:00
snowleo
95f386e4f1 Fix cleanup to not hold Users in memory. 2013-05-03 00:12:40 +02:00
Iaccidentally
b8856659d1 Update libs for 1.5.2 :: Minimum CB version now 2763 2013-05-02 11:54:05 -04:00
SKmedix
0c1b6bc18a Update messages_pl.properties
Changelog:
---
* Added:
kitError2 (216)
kitNotFound (536)
socialSpy (537)
setBal (538)
insufficientFunds (540)

* Fixed:
backUsageMsg (21)
banFormat (28)
bedMissing (30)
connectedPlayers (58)
downloadingGeoIp (91)
fullStack (125)
geoIpUrlEmpty (131)
geoIpUrlInvalid (132)
healOther (148)
itemSpawn (200)
jailReleased (206)
jailSentenceExtended (208)
jailSet (209)
kickedAll (213)
kitInvFull (221)
kitOnce (222)
markMailAsRead (239)
matchingIPAddress (242)
messageTruncated (246)
nickChanged (272)
removed (376)
repairNone (381)
teleportAll (419)
tempBanned (434)
thunderDuration (437)
timeSet (442)
totalWorthAll (446)
totalWorthBlocks (447)
tradeSignEmpty (450)
youAreHealed (520)
youHaveNewMail (521)
balanceOther (527)
2013-04-30 20:34:33 +03:00
Iaccidentally
edceda8c3c Minor cleanup 2013-04-30 12:57:38 -04:00
Iaccidentally
12c379697a Fix some tl keys :: update Portuguese translation 2013-04-30 12:26:09 -04:00
Iaccidentally
648f78699c API & misc cleanup 2013-04-30 12:25:25 -04:00
Iaccidentally
9b1fe33419 Merge pull request #460 from main--/2.9
Made the "throws" declaration of getWarps() more specific
2013-04-30 08:30:41 -07:00
KHobbits
9a3dad918f Support /me in console 2013-04-30 02:24:30 +01:00
KHobbits
2093f1b661 Allow powertool to be set from console. 2013-04-30 02:18:22 +01:00
KHobbits
892ee13aea Fix tests. 2013-04-30 01:50:02 +01:00
KHobbits
047ef63e55 Move spawnmob.stack perm check to the right place. 2013-04-30 01:37:39 +01:00
KHobbits
31d9b1fab4 [Fix] Stacked mobs count towards spawnmob-limit count. 2013-04-30 01:04:40 +01:00
KHobbits
b50ec3406e Fix currency rounding up. 2013-04-30 00:35:39 +01:00
KHobbits
5513b62d98 Fix TL messages. 2013-04-30 00:18:53 +01:00
KHobbits
a6c55a1d9e Fix Eco take bug and fix NPE 2013-04-30 00:07:28 +01:00
KHobbits
57d6fb12b5 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2013-04-29 23:50:49 +01:00
GunfighterJ
a76385b5d3 Remove ArrayListInput
Formatting
2013-04-29 14:04:59 -05:00
main()
2fd56f2c0b Made the "throws" declaration of getWarps() more specific
It is very difficult to handle an Exception thrown by an API method when you don't have any way to **programatically** (without dirty stuff like string comparisons, so the message is not enough) distinguish errors and find out what's going on.
2013-04-29 20:29:42 +02:00
GunfighterJ
b05c56db02 Add keyword replacements in kits
Add SimpleTextInput constructor for lists
Variable refactoring for clarity.
2013-04-29 06:31:08 -05:00
Iaccidentally
5848a5c2ec cleanup last commit a bit 2013-04-28 17:22:11 -04:00
Iaccidentally
ff3733c1b7 [API] Add a warp api, with future 3.x support :: minor cleanup 2013-04-28 16:23:45 -04:00
KHobbits
4f6bc7420f Fix ZH TL messages 2013-04-28 14:18:19 +01:00
pa001024
2c0e87a79b Add China/Hong Kong/Taiwan Translations 2013-04-28 14:12:21 +01:00
Iaccidentally
081b81d081 [CHANGE] Rewrite eco command with better logic :: the command will now attempt to do exactly what it is told, with respect to the minimum balance :: fix missing messages 2013-04-27 23:44:23 -04:00
KHobbits
0e8e6178fc [Fix] Try singular and plural entity names in /remove. 2013-04-28 04:26:39 +01:00
Necrodoom
70a364894f Fix radius in /remove and add world.
Fix SocialSpy
Fix /killall world argument.
2013-04-28 04:20:28 +01:00
Necrodoom
a9052b5d40 [Feature] Add /socialspy other 2013-04-28 03:44:24 +01:00
KHobbits
376955e1cc Update Polish translation by skmedix 2013-04-28 03:31:18 +01:00
Necrodoom
8f6193bf8a [Fix] Output proper message if typo'd kit 2013-04-28 03:22:31 +01:00
snowleo
56beab083c Update Commandgc.java 2013-04-23 08:57:22 +03:00
snowleo
97238b82ed Derp, still need currentTime 2013-04-23 08:55:02 +03:00
snowleo
2d339a1307 Fix tps after Timer changes 2013-04-23 08:51:25 +03:00
snowleo
1b6f1a88db Allow to forceSave conf files 2013-04-23 00:47:45 +02:00
snowleo
9b821545fd Delayed write to file (experimental) 2013-04-22 23:31:11 +02:00
U-SFX\wardcg
27853b78f8 Merge remote-tracking branch 'origin/groupmanager' into 2.9 2013-04-23 01:02:31 +10:00
KHobbits
bb9c62e4de Minor TP and timer tweaks. 2013-04-22 00:11:13 +01:00
KHobbits
df159a3def Attempt to smooth out timer usage.
Add extra sign metrics.
2013-04-21 23:39:50 +01:00
snowleo
4b095bc9c3 Restrict EssentialsTimer to 10ms execution time 2013-04-22 01:23:21 +03:00
Iaccidentally
0b05211041 [FEATURE] Add kill exempt :: new permission: essentials.kill.exempt
players with essentials.kill.force and console will still be able to override this
2013-04-19 14:40:10 -04:00
Iaccidentally
9bb2e8ceb5 Merge pull request #453 from necrodoom/patch-20
[FIX] ID 18, 29, 33 invalid damage values and more
2013-04-19 10:32:47 -07:00
ElgarL
3dba6faccc Merge pull request #452 from evonuts/groupmanager
Minor grammatical changes to config.yml
2013-04-19 09:57:16 -07:00
Necrodoom
9d6362f625 [FIX] ID 18, 29, 33 invalid damage values and more
expand IDs 98:1, 98:2, 98:3
2013-04-19 19:43:22 +03:00
GunfighterJ
afdb9539a5 Fix NPE on invalid enchant 2013-04-19 10:06:43 -05:00
evonuts
ee36420e5d Minor grammatical changes to config.yml 2013-04-19 12:13:09 +12:00
Iaccidentally
e32a3a289c [Feature] Add a blacklist for what dispensers can dispense to antibuild 2013-04-16 17:01:01 -04:00
Iaccidentally
c43b30693d [UPDATE] Update to 1.5.1-r0.2 beta build 2013-04-16 16:59:36 -04:00
Iaccidentally
4907ddd775 Clean up last commit 2013-04-16 16:16:07 -04:00
Iaccidentally
053c5b0668 [FIX] Update user activity when shooting a bow 2013-04-16 15:58:13 -04:00
GunfighterJ
2e543828d6 Allow permission control of stacked mobs
Adds essentials.spawnmob.stack to allow stacking of more than one mob using the /spawnmob command

Adds https://www.assembla.com/spaces/essentials/tickets/4050
2013-04-14 15:01:25 -05:00
snowleo
3da69fca76 Changing that name too, thanks jomp16 2013-04-14 12:30:30 +03:00
snowleo
881459b702 Threading Fix 2013-04-14 04:44:16 +03:00
KHobbits
70e84453ff Remove duplicate perm. 2013-04-13 23:50:17 +01:00
KHobbits
915391124d Check threading on backup init. 2013-04-13 23:10:09 +01:00
GunfighterJ
1fd8ce5daf Merge pull request #438 from GunfighterJ/2.9
Add Romanian translation
2013-04-08 17:27:16 -07:00
GunfighterJ
fb5f379951 Add Romanian translation 2013-04-06 17:13:59 -05:00
GunfighterJ
209e925666 [Feature] pweather command 2013-04-06 16:20:12 -05:00
snowleo
d6c85a0d0d Still need that check 2013-04-06 18:40:42 +03:00
snowleo
12a1dac02d Math fail 2013-04-06 18:38:49 +03:00
snowleo
b3b30ced9b Fix § at end of line 2013-04-06 18:37:13 +03:00
KHobbits
14a552f295 Balance others message. 2013-04-06 05:54:44 +01:00
KHobbits
255ff82729 Fix group name when using wildcard group definitions. 2013-04-06 05:05:28 +01:00
ementalo
ac535db329 Remove GB from main build.xml 2013-04-04 20:49:55 +01:00
ementalo
235e52e0fa [update] Remove GroupBridge 2013-04-04 20:45:09 +01:00
KHobbits
ced281fb5c Missing file update. 2013-04-04 08:45:08 +01:00
KHobbits
8272257883 Update Bukkit for 1.5.1-R0.1 Beta.
CB: 2735 Bukkit: 1741
2013-04-04 08:39:57 +01:00
Paul A.
08b04bcb1a Merge pull request #435 from GunfighterJ/2.9
[Fix] NPE on ptime from console
2013-04-02 08:31:42 -07:00
GunfighterJ
61e5d2df7a [Fix] NPE on ptime from console 2013-04-02 10:21:20 -05:00
Iaccidentally
889e44908d Merge pull request #431 from GunfighterJ/2.9
Show Geolocation in /seen
2013-04-01 14:20:42 -07:00
GunfighterJ
6de8ce0d59 Show Geolocation in /seen
Refactor argument for clarity
2013-04-01 16:00:09 -05:00
KHobbits
eab3375c3f Block sign interact if player is dead. 2013-04-01 05:23:04 +01:00
KHobbits
0974ff935d Merge pull request #428 from necrodoom/patch-15
readd "forest" and "jungle"
2013-03-31 08:27:26 -07:00
Necrodoom
df69ed43e7 readd "forest" and "jungle" 2013-03-31 18:26:38 +03:00
KHobbits
fc6397e739 For group overflow, add a little colour. 2013-03-30 02:40:20 +00:00
KHobbits
1ea74f6205 Use original casing in config file group name. 2013-03-30 02:36:09 +00:00
Iaccidentally
81e53662c6 [FIX] add itemframe support to remove 2013-03-29 22:20:54 -04:00
KHobbits
ab1d6c0aba Prevent sign healing when the player is recently dead. 2013-03-29 14:37:30 +00:00
SKmedix
9df9f46259 Update messages_pl.properties
Update Polish translation.
2013-03-29 03:19:43 +00:00
Necrodoom
dbf9b54018 [Fix] Allow console to afk others 2013-03-29 03:16:18 +00:00
Necrodoom
7e6275fa99 wipe too general log name aliases 2013-03-29 03:13:03 +00:00
Necrodoom
bdd3efc260 [Fix] Sudo allowed on vanished players. 2013-03-29 03:10:45 +00:00
Necrodoom
29a6ccdee1 prevent confusion at /ci code 2013-03-29 03:04:54 +00:00
KHobbits
6fc5ce3af5 Spacing. 2013-03-29 03:01:53 +00:00
KHobbits
5b5b873af9 Fixing casing and formatting issues in /list 2013-03-29 02:59:55 +00:00
KHobbits
9ad0bb9fbd Merge pull request #423 from kukelekuuk00/patch-1
[Fix] Strip colourcodes from groups in /list (internal only)
2013-03-28 19:50:50 -07:00
ElgarL
fd1e725d0e another string fix. 2013-03-28 16:08:59 +00:00
ElgarL
cac4850c42 More Necrodoom fixes. 2013-03-28 15:38:18 +00:00
ElgarL
0b28db383d Fix loops. 2013-03-28 13:10:17 +00:00
ElgarL
a7f6dd2f3e Merge pull request #371 from necrodoom/patch-72
add new commands and others
2013-03-28 05:59:35 -07:00
Luuk Jacobs
ddfba595c9 [Fix] Strip colourcodes from groups
This way groups with colourcodes in the middle of the name work with /who <groupname> ie. §4S§cerveradmin
2013-03-26 11:43:45 +01:00
Iaccidentally
77237b4143 Merge pull request #409 from GunfighterJ/2.9
[Feature] Stack more mobs with /spawnmob
2013-03-22 14:39:55 -07:00
GunfighterJ
711a6c234a [Feature] Stack more mobs with /spawnmob
Uses same syntax, now supports more than 2 mobs
2013-03-22 16:35:01 -05:00
KHobbits
138a916883 Abort user login code, if user disconnects before it runs. 2013-03-21 22:30:02 +00:00
KHobbits
5f32b80ba0 Don't allow an empty list value. 2013-03-21 21:41:30 +00:00
KHobbits
f8afa46be9 Tweak ess version 2013-03-21 21:12:58 +00:00
KHobbits
b955399e49 Add the max-walk-speed config variable back to the default config file. 2013-03-20 23:24:45 +00:00
SKmedix
0022614300 Update messages_pl.properties
Update Polish translation.
2013-03-20 08:53:00 +00:00
KHobbits
ec9bd64029 Use correct getPlayer method to not match offline users. 2013-03-20 01:29:54 +00:00
KHobbits
fb71b08d0e [Permission] essentials.vanish.interact - Players with this permission will be able to interact with hidden players. 2013-03-20 01:00:50 +00:00
KHobbits
58c5b47aad Add some missing hidden checks 2013-03-19 23:24:06 +00:00
KHobbits
80ab850abc Try to unify player matching for hidden users:
kill, lightning and ptime still need cleanup
2013-03-19 23:17:34 +00:00
KHobbits
6bfd722200 [Fix] Reset walk/fly speed on login.
[Permission] essentials.speed.<fly|walk> - If a player only has one of these, they will only be able to toggle the given state.
2013-03-19 22:55:00 +00:00
KHobbits
b1e9d13ee4 Don't close inventories every plugin disable, just our own. 2013-03-19 21:05:12 +00:00
Necrodoom
13782722d9 [Fix] Print correct sender name on /spawn player from console. 2013-03-19 20:59:02 +00:00
Necrodoom
69af6bf441 Fix exception in /heal, "playernotfound" should be exception. 2013-03-19 20:56:50 +00:00
KHobbits
3d567401e9 Use original case for default /list groups. 2013-03-19 18:34:28 +00:00
KHobbits
89929a3849 readmeupdate 2013-03-19 14:32:23 +00:00
Necrodoom
4c88091551 kittycannon should actually fire kittens 2013-03-19 14:31:34 +00:00
Necrodoom
c0f31ae777 console should be able to mute admins 2013-03-19 14:09:30 +00:00
Necrodoom
dd55e9188f [Fix] offline player matching for online only commands.
/kick,/warp, /burn & /tppos should only match online players
2013-03-19 14:07:42 +00:00
KHobbits
1aa6ea13b5 Pull the default list behavior from the old 'sort-list-by-groups' variable if it exists. 2013-03-19 09:00:50 +00:00
KHobbits
8eb61298d7 Add Travis notifications 2013-03-18 23:48:01 +00:00
KHobbits
2163929a1d Try different ant command 2013-03-18 23:35:00 +00:00
KHobbits
1f306b9ea1 Travis 2013-03-18 23:27:15 +00:00
KHobbits
79593fdcd2 Merge pull request #396 from GunfighterJ/2.9
Allow potion clear/apply commands to work
2013-03-18 16:20:45 -07:00
KHobbits
45b2ef9384 Minor code cleanup 2013-03-18 23:15:18 +00:00
KHobbits
50b196a9e4 Cleanup: Run Kukes code through a dryer, add more comments. 2013-03-18 22:43:05 +00:00
GunfighterJ
0825ed0fa5 Allow potion clear/apply commands to work 2013-03-18 11:21:28 -05:00
KHobbits
1398a27e74 Edit default config to not cause confusion. 2013-03-18 08:59:40 +00:00
KHobbits
401c2bbdbf Cleanup: Comment and simplify /list code - More to do. 2013-03-18 08:53:12 +00:00
KHobbits
611173ed50 Cleanup - Split /list into methods 2013-03-18 08:16:34 +00:00
kukelekuuk00
94fdf2c3ef fixes and addition of '*' to match all unmatched users. 2013-03-18 06:16:02 +00:00
kukelekuuk00
61948a9e4d Added /list [group] and some more detailed configuration regarding /list 2013-03-18 06:16:02 +00:00
GunfighterJ
e6aff5a5e9 Potion erroring and duration/power fix 2013-03-18 06:14:44 +00:00
Necrodoom
681a906014 update IDs 27, 28, 66, 157
update rails aliases to match bukkit item names
2013-03-18 06:14:00 +00:00
GunfighterJ
1d3da2d700 [Fix] Potion erroring and duration/power fix 2013-03-17 13:34:10 -05:00
KHobbits
34cf1d6cee [Fix] Restore /speed command's ability to control walk speed. 2013-03-17 06:38:24 +00:00
KHobbits
5b6e8228e4 Fixing TL edit error. 2013-03-16 12:17:13 +00:00
Necrodoom
0e7e0783ab Update messages.properties
fix typos in new messages
2013-03-16 12:15:57 +00:00
KHobbits
706143f916 Fix raw bukkit itemdb lookup 2013-03-16 12:11:03 +00:00
KHobbits
80976fa09e Cleanup open inventories 2013-03-16 11:01:56 +00:00
KHobbits
156a7f6b8a Import cleanup 2013-03-16 09:19:30 +00:00
KHobbits
c9c68c1113 Fix potion effect errors 2013-03-16 09:13:21 +00:00
KHobbits
af32128a83 Fix Minecart class rename
Lets use consistent versions in the code base
Bukkit: 1700 CB: 2648
2013-03-16 08:55:39 +00:00
KHobbits
c46ad29cc4 We use tabs not spaces for indenting. 2013-03-16 08:43:52 +00:00
KHobbits
ddca0c30eb Check health is 0 after /suicide 2013-03-16 08:42:24 +00:00
KHobbits
e08309941d Fix missing /ci syntax update. 2013-03-16 08:32:21 +00:00
Alexander Schepp
582e90c0d7 Merge pull request #388 from GunfighterJ/2.9
[Feature] Additional spawnable mob types
2013-03-15 13:44:43 -07:00
GunfighterJ
1e7acce345 [Feature] Additional spawnable mob types 2013-03-15 15:41:23 -05:00
Alexander Schepp
e55b9df46c Merge pull request #387 from GunfighterJ/2.9
Initial 1.5 update
2013-03-15 12:59:50 -07:00
GunfighterJ
9a45f780fe Initial 1.5 update 2013-03-15 14:54:51 -05:00
Alexander Schepp
3e55913fcf Merge pull request #342 from necrodoom/patch-60
[feature] update items.csv to minecraft 1.5
2013-03-15 12:25:09 -07:00
KHobbits
d646989b78 Merge pull request #383 from necrodoom/patch-73
[fix] trying to AFK others should work now
2013-03-15 06:28:56 -07:00
KHobbits
13fd8a896f Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2013-03-14 18:01:50 +00:00
Iaccidentally
5b72bfa81f Merge pull request #385 from Skylexia/patch-1
[Fix] Fixing message (Tl key).
2013-03-13 17:41:10 -07:00
Skylexia
eb734996ec Fixing message. 2013-03-13 20:23:01 -03:00
KHobbits
0ef3bee594 Fix missing console notifications on /unban and /unbanip 2013-03-12 22:26:24 +00:00
Necrodoom
7a2e029073 [fix] trying to AFK others should work now 2013-03-11 15:36:12 +02:00
KHobbits
839ded00e9 Fixing ban ip broadcast notification. 2013-03-11 10:33:59 +00:00
KHobbits
f876083f56 Fix Essentials version display 2013-03-11 02:01:57 +00:00
KHobbits
47a0582cf7 Fixed lost TL. 2013-03-10 23:43:13 +00:00
Skylexia-PC
d9543d2250 Shows IP unbans to online staff. 2013-03-10 23:41:17 +00:00
Necrodoom
36304c1ed0 readd some checks 2013-03-10 14:42:03 +02:00
KHobbits
92e973fc22 Merge pull request #380 from Skylexia/2.9
[Feature] Broadcast unbans to online staff.
2013-03-10 00:38:09 -08:00
Skylexia-PC
d7e1e3198d Update tl properties to remove unused properties. 2013-03-10 04:37:04 -04:00
Skylexia-PC
f052dbdcfe [Feature] Broadcast unbans to online staff. 2013-03-10 03:22:35 -04:00
KHobbits
e3ff9f2803 Use lower locale. 2013-03-10 02:04:11 +00:00
KHobbits
d0940c9ad8 Protect us from npe. 2013-03-10 02:01:59 +00:00
Iaccidentally
f5c8e832e4 Merge pull request #379 from GunfighterJ/2.9
Allow potion meta to work
2013-03-09 16:46:59 -08:00
GunfighterJ
bccb85756e Allow potion meta to work
Instead of denying if they have perms
2013-03-09 18:38:59 -06:00
KHobbits
6253a23fed Fix TL key casing. 2013-03-09 21:41:30 +00:00
KHobbits
d099572514 [Fix] Allow /nick to change nickname case, without adding prefix character. 2013-03-09 14:24:19 +00:00
KHobbits
92987ac129 [Fix] Move allowunsafe enchant perm to: essentials.enchantments.allowunsafe 2013-03-09 14:02:34 +00:00
KHobbits
cb98f1bdb9 [Fix] Move all enchant type perms to: essentials.enchantments.<enchant>
[Fix] Move all potion effect perms to: essentials.potions.<effect>
[Fix] Move multiple potion perm to: essentials.potions.multiple
Other perms: essentials.itemspawn.meta-(firework|firework-multiple|firework-power|name|lore|head|book|chapter|chapter-<chapter>|author|title)
2013-03-09 13:56:38 +00:00
Necrodoom
c6380f8009 fix alias 2013-03-09 15:12:15 +02:00
KHobbits
f7f1932480 Merge pull request #378 from Skylexia/2.9
Fixing exp trading type.
2013-03-08 14:08:08 -08:00
Skylexia-PC
2582e94c8f Fixing exp trading type. 2013-03-08 17:04:54 -05:00
KHobbits
aacbaef98c Allow item/item trades still. 2013-03-08 12:34:11 +00:00
KHobbits
d379d0587b Merge pull request #370 from necrodoom/patch-71
[fix] EssentialsAntiBuild shouldn't run without Essentials
2013-03-08 04:01:08 -08:00
KHobbits
eaf6332534 Clean up meta error messages.
Add enchant perm checks back.
2013-03-07 03:17:58 +00:00
KHobbits
44d651e219 Don't check people for meta perms when using kits. 2013-03-07 02:57:25 +00:00
KHobbits
394966eda2 Merge pull request #375 from GunfighterJ/patch-15
[Feature] Adds meta permissions
2013-03-06 18:46:55 -08:00
KHobbits
5b302c7378 [Fix] Prevent same item type trades on signs, prevents amount confusion scams. 2013-03-07 02:42:47 +00:00
KHobbits
bfc5385032 Fix cleanup comparison number base 2013-03-06 23:39:11 +00:00
KHobbits
d9419cdfac Add cleanup logging to debug mode. 2013-03-06 22:36:36 +00:00
GunfighterJ
22a5e7d2ef [Feature] Adds meta permissions
TL MetaItemStack.java
Some meta cleanup
Parameter refactor for clarity
Full list of added perms http://goo.gl/do1XL
2013-03-06 15:09:51 -06:00
KHobbits
49c98eda42 Fix a color code mistake. 2013-03-06 20:46:19 +00:00
KHobbits
579b5fbded Sort TL files. 2013-03-06 17:44:05 +00:00
Necrodoom
dc7a594142 add armor aliases since new leather names 2013-03-05 18:56:40 +02:00
KHobbits
46f1012f9a [Fix] Unify item spawning permissions in /give 2013-03-03 20:33:23 +00:00
Necrodoom
7664e546ca add mising isopoverride check 2013-03-03 18:35:05 +02:00
KHobbits
218a922f53 Merge pull request #372 from skmedix/patch-21
Update messages_pl.properties
2013-03-02 09:43:35 -08:00
SKmedix
15a50da403 Update messages_pl.properties
Update Polish translations.
---
Date: 2.03.13

---
Added "playerBanIpAddress" (27)
2013-03-02 18:41:04 +01:00
KHobbits
190599ab5e Fix /banip so it compiles, also throw it through a DRYer. 2013-03-02 17:08:22 +00:00
Necrodoom
487285ed1a Include IP address when banning IP 2013-03-02 17:08:16 +00:00
Necrodoom
b3ece8c5e6 add new commands, add alias to listgroups 2013-03-02 10:03:45 +02:00
Necrodoom
f6b1e76e72 Update GroupManagerPermissions.java 2013-03-02 09:56:38 +02:00
Necrodoom
02cc0c7f88 fix clear commands change mandemote and manpromote
dont make manpromote and mandemote act like manuadd when OP, 3 manuadd commands arent needed.
2013-03-02 09:50:31 +02:00
Necrodoom
3b89e81211 messages fix, add /manuclearp and /mangclearp 2013-03-01 20:48:12 +02:00
ementalo
49bda8ef1d Remove reference to c3p0 from build.xml 2013-02-28 21:23:33 +00:00
ementalo
30805b3aa8 [Breaking] Remove protect database functionality for protecting signs and rails.
- Removed config entries
- Removed c3p0 lib
2013-02-28 21:02:37 +00:00
Necrodoom
c1c352694d [fix] essantibuild shouldnt run without essentials 2013-02-28 19:04:05 +02:00
KHobbits
7480208859 Merge pull request #369 from TheReverend403/2.9
Fix geoip messages
2013-02-28 05:32:42 -08:00
Lee Watson
8d6df3ba3b Updated ALL local files 2013-02-28 13:23:28 +00:00
KHobbits
6f88c9babd Merge pull request #364 from necrodoom/patch-69
deny empty warp name
2013-02-28 04:55:40 -08:00
KHobbits
3472d10bae Merge pull request #357 from skmedix/patch-20
Update Essentials/src/messages_pl.properties
2013-02-28 04:53:58 -08:00
KHobbits
f136478cdb [Fix] Charging players at wrong point in /spawn 2013-02-28 12:52:22 +00:00
KHobbits
2de2c216fb Add extra trade log messages for sign charges. 2013-02-28 03:15:21 +00:00
Necrodoom
94a0cb684b deny empty warp name 2013-02-26 19:07:10 +02:00
ElgarL
9d962f109d Merge pull request #361 from necrodoom/patch-66
add catches for the last 2 config settings
2013-02-26 08:49:40 -08:00
ElgarL
b106e0b87b Merge pull request #362 from necrodoom/patch-67
fix a few groupmanager.java errors
2013-02-26 06:43:31 -08:00
Necrodoom
508c16e3b3 change commandblock message 2013-02-26 13:05:45 +02:00
Necrodoom
fbbb21e3d0 fix a few groupmanager.java errors 2013-02-26 12:27:05 +02:00
Necrodoom
bb4fb78975 add catches for the last 2 config settings 2013-02-26 12:17:26 +02:00
Iaccidentally
d7985c906a This is still needed. 2013-02-25 22:44:52 -05:00
KHobbits
5060048a31 Revert "[Spawn] Please join me in welcoming EssentialsSpawn to Java 1.6 and modern bukkit.
This reverts commit 276f0f8972.
If you don't understand the code, don't touch it.
2013-02-26 03:30:11 +00:00
Iaccidentally
f994f0eb1d Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-02-25 22:01:49 -05:00
Iaccidentally
276f0f8972 [Spawn] Please join me in welcoming EssentialsSpawn to Java 1.6 and modern bukkit. :: http://i.imgur.com/79Izo.jpg 2013-02-25 22:01:06 -05:00
Iaccidentally
5fa1342159 Merge pull request #360 from GunfighterJ/patch-15
[Protect] Prevent creepers from breaking paintings if their explosions a...
2013-02-25 18:46:44 -08:00
GunfighterJ
7507fcdc05 [Protect] Prevent creepers from breaking paintings if their explosions are disabled.
Backport from 3.0
2013-02-25 17:15:20 -06:00
ElgarL
2ade9d28ba Show the world a group change is made in when using notify. 2013-02-25 14:11:42 +00:00
ElgarL
f032c84513 Store worldSelection indexed on the senders name rather than the object
(fixes commandblocks using manselect).
2013-02-25 13:49:18 +00:00
ElgarL
70aaf168e5 Only prevent adding nodes with '/manuaddp' and '/mangaddp' if they are
exact matches (not wildcards).
2013-02-25 12:47:23 +00:00
ElgarL
455b12eb5d Warn when adding a node where an exception already exist. 2013-02-25 10:46:16 +00:00
ElgarL
d219c63bd2 Don't allow adding a node with '/manuaddp' and '/mangaddp' which is
already negated.
2013-02-25 10:27:01 +00:00
ElgarL
0c92e11ed6 Fix setting of accessLevel on User level permission tests. 2013-02-25 10:11:44 +00:00
SKmedix
fe71cc2fec Update Essentials/src/messages_pl.properties
Update Polish translations.
---
Date: 24.02.13

---
+ Added "noMatchingPlayers" (509)
+ Added "matchingIPAddress" (510)
+ Added "runningPlayerMatch" (511)
* Fixed "adventure" (8)
* Fixed "antiBuildInteract" (14)
2013-02-24 11:45:56 +01:00
KHobbits
deaa1d6e61 [Feature] Allow IP lookup in /seen command.
[Permission] essentials.seen.ipsearch - allows /seen <ip address>
2013-02-24 03:55:20 +00:00
KHobbits
7cf406555b Clarify vanish status a little. 2013-02-23 23:34:31 +00:00
Iaccidentally
47fc955578 Merge pull request #352 from GunfighterJ/patch-15
[Fix] Persist yaw and pitch on teleport
2013-02-23 11:57:15 -08:00
KHobbits
cffc62b162 Merge pull request #356 from skmedix/patch-19
Update Essentials/src/messages_pl.properties
2013-02-23 05:26:21 -08:00
skmedix
e6c8ed54cd Update Essentials/src/messages_pl.properties
Update Polish translations.
---
Date: 23.02.13
---
* Fixed "fireworkSyntax" (502)
* Fixed colors.
2013-02-23 11:08:47 +01:00
ElgarL
cc4bacbffc Merge pull request #355 from necrodoom/patch-63
add "all_unnamed_worlds" info
2013-02-22 12:47:12 -08:00
Necrodoom
f99470d0c9 fix typo 2013-02-22 20:49:57 +02:00
Necrodoom
07d0a18d29 add "all_unnamed_worlds" info 2013-02-22 20:48:09 +02:00
ElgarL
0973f58421 Only one error this time Necrodoom :) 2013-02-22 17:21:14 +00:00
ElgarL
bea18f899c Merge pull request #353 from necrodoom/patch-61
various messages fixes - This better work!!!!!!
2013-02-22 09:19:56 -08:00
ElgarL
c5dea15d75 Fix global mirroring of non main worlds. 2013-02-22 17:07:55 +00:00
Necrodoom
bfe3db71a8 various messages fixes 2013-02-22 19:07:01 +02:00
GunfighterJ
4407e775ed [Fix] Persist yaw and pitch on teleport
Vanilla bukkit/MC persists yaw on teleport
2013-02-22 10:56:39 -06:00
ElgarL
b33627b95e Merge pull request #351 from GunfighterJ/gm-patch-1
Receive was spelt wrong
2013-02-22 05:56:53 -08:00
GunfighterJ
83fbe0d497 I before E except after C 2013-02-22 07:50:54 -06:00
ElgarL
48d4f047fb Do not list "all_unnamed_worlds" as a selectable world. 2013-02-22 13:17:58 +00:00
ElgarL
6b8196c0cb Don't try to use the worldHolder before it's initialised. 2013-02-22 12:59:50 +00:00
ElgarL
528342cac7 Added a new mirroring option in the config of 'all_unnamed_worlds'. This
will cause all new or unnamed worlds to use this mirroring.
2013-02-22 12:39:41 +00:00
ElgarL
b113529fd3 '/manselect' will no longer list duplicate worlds. 2013-02-22 11:46:59 +00:00
KHobbits
66da7aa81c Merge pull request #350 from skmedix/patch-18
Update Polish TL - Thanks to andrewkm for proofing.
2013-02-22 02:44:03 -08:00
skmedix
4f3627ef76 Update Essentials/src/messages_pl.properties
Update Polish translations.
---
Date: 21.02.13
---
+ Added "cleaned" (42)
+ Added "cleaned" (43)
2013-02-21 11:03:06 +01:00
GunfighterJ
964c1f349b Cache teleport invulnerability time 2013-02-20 13:46:28 +00:00
Chris Ward
958c091abc Final! 2013-02-20 12:46:47 +11:00
KHobbits
42af71de05 Readme cleanup. 2013-02-20 01:39:04 +00:00
KHobbits
7bf26f86d7 Code cleanup 2013-02-19 23:06:04 +00:00
kukelekuuk00
a61ff68abb Added /essentials cleanup <days> [money] [homes] [bans]
Delete userdata of players offline for over <days> and with less money than [money], less homes than [homes] and less bans than [bans].
2013-02-19 22:43:23 +00:00
Necrodoom
3d7f0c81b6 add 1.5 new slab blocks 2013-02-19 19:47:49 +02:00
Necrodoom
c0102c00fb update items.csv to minecraft 1.5
dont pull till 1.5 bukkit devbuild
2013-02-19 13:35:29 +02:00
Chris Ward
fdbe862125 Merge pull request #341 from necrodoom/patch-59
fix rest of "posion" aliases
2013-02-19 02:26:44 -08:00
Necrodoom
027fbc4e95 fix rest of "posion" aliases 2013-02-19 11:46:26 +02:00
GunfighterJ
57a7ce8ce8 Fixes Necrodoom's code Needs more exception 2013-02-18 15:25:09 +00:00
Necrodoom
fed8f884eb make sure player isnt dead before healing 2013-02-18 15:08:55 +00:00
KHobbits
b759691cfd Fix socialspy command list. 2013-02-17 18:05:07 +00:00
ElgarL
ceed7a9215 Fix Necrodooms code...again! 2013-02-17 17:24:52 +00:00
ElgarL
e66226095b Merge pull request #338 from necrodoom/patch-57
if variable is inside ' ', strip them
2013-02-17 09:22:36 -08:00
ElgarL
745d7410cf Merge pull request #328 from necrodoom/patch-53
delete player command messages, bukkit does it
2013-02-17 09:21:12 -08:00
Necrodoom
3c0d56ce97 if variable is inside ' ', strip them 2013-02-17 19:09:04 +02:00
KHobbits
e393aeadb2 Clarify command disabling. 2013-02-17 16:30:05 +00:00
Necrodoom
541045491e fix auto afk description 2013-02-17 16:26:18 +00:00
KHobbits
9c8e186af6 Merge pull request #334 from necrodoom/patch-54
add skull alias to head item
2013-02-17 08:17:10 -08:00
Necrodoom
2eb052964a add skull alias to head item 2013-02-17 18:15:48 +02:00
snowleo
6a67b400ec why do we even remove the items?
derp
2013-02-17 15:34:49 +01:00
snowleo
eff0561e8a Revert the last 2 commits and actually fix the right one. 2013-02-17 15:17:47 +01:00
snowleo
b720785922 Fix all removeItem()
This could fix some broken logging of selling items
2013-02-17 15:10:41 +01:00
snowleo
9d9fb555d3 Items can't be reused after the have been used in removeItem 2013-02-17 15:07:32 +01:00
KHobbits
bfc8c0d715 Fix a couple of cosmetic errors in /seen 2013-02-17 01:18:50 +00:00
Skylexia
7c84901304 Fixed colour coding.
Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

Fixed colour coding.

totalWorthAll
totalWorthBlocks
2013-02-16 18:22:25 +00:00
KHobbits
daa4e628eb Merge pull request #333 from GunfighterJ/patch-12
Adds optional argument to clear both inventory and armor with /clear
2013-02-16 08:40:44 -08:00
GunfighterJ
49931aaf9e Adds optional argument to clear inventory and armor with /clear 2013-02-15 12:38:41 -06:00
ElgarL
d5813aec43 Catch the error when using an out of date config for
'allow_commandblocks' So it doesn't kill the whole config.
2013-02-15 17:39:34 +00:00
KHobbits
4318f0f71d Merge pull request #331 from kukelekuuk00/2.9
Add methods to UserData and IUser for accessing and writing of data from other plugins.
2013-02-14 03:05:41 -08:00
kukelekuuk00
0dca5306aa Add a method to write to the userdata to UserData.java and IUser.java. 2013-02-13 08:24:25 -06:00
Iaccidentally
42d0ad1ba8 Merge branch '2.9' of https://github.com/essentials/Essentials.git into 2.9 2013-02-12 18:38:35 -05:00
Iaccidentally
2547932073 Clean up protect :: transient is not needed :: remove unnecessary returns :: @Override all the things! 2013-02-12 18:37:40 -05:00
KHobbits
419d26bc9c Fix /give|/item descriptions for itemmeta. 2013-02-12 22:56:17 +00:00
KHobbits
1b6bf9d532 Merge branch '2.9' of github.com:essentials/Essentials into patch-41 2013-02-12 22:46:35 +00:00
Necrodoom
67d4b8bf71 remove color from bedNull 2013-02-12 22:45:54 +00:00
KHobbits
17e59bc198 fix typo in messages
add new messages to messages.properties

add new messages to messages_en.properties

add new messages to messages_cs.properties

add new messages to messages_da.properties

add new messages to messages_de.properties

add new messages to messages_es.properties

add new messages to messages_fi.properties

add new messages to messages_fr.properties

add new messages to messages_it.properties

add new messages to messages_nl.properties

add new messages to messages_pl.properties

add new messages to messages_pt.properties

add new messages to messages_se.properties

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull

remove color from bedNull
2013-02-12 22:45:54 +00:00
Necrodoom
fc7d118de5 change bed spawn set message 2013-02-12 22:43:07 +00:00
Necrodoom
4c617d6366 try improve bed spawn handle
dont act as if bed doesnt exist if its missing
2013-02-12 22:43:06 +00:00
Iaccidentally
cfead02f27 Fix build :: This is what happens when you don't use an IDE 2013-02-12 17:42:04 -05:00
Necrodoom
ace45aafcc fix typo 2013-02-12 22:26:02 +00:00
KHobbits
3a893ef546 add inventoryclearall message
update messages.properties

update messages_en.properties

update messages_da.properties

update messages_de.properties

update messages_en.properties

update messages_es.properties

update messages_fi.properties

update messages_fr.properties

update messages_it.properties

update messages_nl.properties

update messages_pl.properties

update messages_pt.properties

update messages_se.properties
2013-02-12 22:26:02 +00:00
Skylexia
421810dda8 Update Essentials/src/config.yml 2013-02-12 17:17:48 -05:00
Skylexia
45a047fe11 Update Essentials/src/plugin.yml 2013-02-12 17:13:08 -05:00
Necrodoom
2517f8ed93 delete player command messages, bukkit does it 2013-02-12 16:56:54 +02:00
ElgarL
239e207c1e Merge pull request #327 from necrodoom/patch-52
add missing return false in manudelp
2013-02-12 06:49:27 -08:00
Necrodoom
caccca54b2 add missing return false; 2013-02-12 16:47:39 +02:00
KHobbits
56bb3784ec Minor entity optimization. 2013-02-11 23:33:30 +00:00
KHobbits
9148f5cd42 Attempt to optimize Essentials login event. 2013-02-11 23:11:37 +00:00
KHobbits
90ab677fa6 Merge pull request #325 from Skylexia/patch-2
Fixed all "poison" typos; add ppotato alias.
2013-02-11 15:00:14 -08:00
Skylexia
206668e3ed Update Essentials/src/items.csv 2013-02-11 17:57:20 -05:00
KHobbits
532cfd33c9 Merge pull request #324 from Skylexia/patch-1
Update Essentials/src/items.csv
2013-02-11 10:41:09 -08:00
Skylexia
ffbbd7e59b Update Essentials/src/items.csv 2013-02-11 13:38:11 -05:00
KHobbits
a692f58e2f Merge pull request #322 from necrodoom/patch-50
add dye aliases to match bukkit
2013-02-11 09:22:56 -08:00
Necrodoom
174b90e6e8 add dye aliases to match bukkit 2013-02-11 18:56:23 +02:00
KHobbits
11dedaf8b1 Merge pull request #321 from GunfighterJ/patch-10
Fix array index out of bounds on /firework fire
2013-02-11 08:41:47 -08:00
GunfighterJ
7b9870d249 Fix array index out of bounds on /firework fire 2013-02-11 10:35:55 -06:00
ElgarL
04f43db46d Merge pull request #298 from necrodoom/patch-37
Fix typo at groupmanager config.yml
2013-02-10 02:12:42 -08:00
Chris Ward
0ccd54dfff Merge pull request #317 from necrodoom/patch-47
update AFK documation
2013-02-10 01:54:37 -08:00
Necrodoom
64e1ee63cf update AFK documation 2013-02-10 11:46:59 +02:00
Chris Ward
293306474b Fix compilation, unreachable code. 2013-02-10 20:37:46 +11:00
Chris Ward
ee94164f27 Merge pull request #316 from necrodoom/patch-46
throw exception on banexempt
2013-02-10 01:34:53 -08:00
Necrodoom
8d454eec7f throw exception on banexempt
match rest of moderator commands
2013-02-10 11:04:55 +02:00
KHobbits
f62a350d54 Fix kit messages when giving kit to another player. 2013-02-10 00:07:40 +00:00
KHobbits
5398d1ef5e missing alias 2013-02-09 23:39:21 +00:00
GunfighterJ
399d243a06 Proper TL 2013-02-09 16:27:54 -06:00
GunfighterJ
d8c0256d3e Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-02-09 16:27:19 -06:00
KHobbits
2e58cea13b Make /god and /god <player> behave the same. 2013-02-09 19:31:31 +00:00
Chris Ward
7c5ed0d7c8 Merge remote-tracking branch 'origin/groupmanager' into 2.9 2013-02-09 21:55:20 +11:00
ElgarL
de258e26da Fix bad Git Merge 2013-02-09 10:51:16 +00:00
Chris Ward
3ee51a1931 Merge pull request #312 from necrodoom/patch-44
update kit link to the new one
2013-02-09 02:48:48 -08:00
Necrodoom
a4689cc9cc update kit link to the new one 2013-02-09 12:47:36 +02:00
Chris Ward
d239423db0 Merge pull request #311 from necrodoom/patch-43
fix itemmeta link on kit section
2013-02-09 02:41:01 -08:00
Necrodoom
8b9585be06 fix itemmeta link on kit section 2013-02-09 11:57:32 +02:00
GunfighterJ
d74c24440a Un-deletes deleted things. 2013-02-08 17:14:46 -06:00
GunfighterJ
bb94023c76 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-02-08 16:05:48 -06:00
snowleo
627f48f29c Fix /seen command 2013-02-08 22:26:21 +01:00
snowleo
fb4e1eefbe Don't overwrite last location on logout
Logout position is saved as logoutlocation now in users yml
2013-02-08 21:22:35 +01:00
snowleo
c1d0dc26b9 Check if player is still online 2013-02-08 21:18:00 +01:00
snowleo
edacb00c4d Fix async access to bukkit code 2013-02-08 21:16:21 +01:00
Chris Ward
0956f3f526 Merge pull request #304 from necrodoom/patch-40
pull messages.properties changes to messages_en
2013-02-06 22:54:27 -08:00
Necrodoom
3d71bc4b45 pull messages.properties changes to messages_en 2013-02-06 16:15:18 +02:00
Chris Ward
8293b80b33 Merge pull request #300 from necrodoom/patch-39
add missing puncuation
2013-02-06 02:49:04 -08:00
KHobbits
a21587fb4b Don't block food recovery in god mode. 2013-02-05 23:34:08 +00:00
KHobbits
1735a22875 Merge pull request #302 from GunfighterJ/patch-9
Prevents flying from being disabled on world teleport if player has esse...
2013-02-05 12:07:36 -08:00
GunfighterJ
5e6d81fd01 Prevents flying from being disabled on world teleport if player has essentials.fly 2013-02-05 13:16:27 -06:00
GunfighterJ
046aecd386 Adds potion meta
Some cleanup as well
2013-02-05 13:13:19 -06:00
Necrodoom
2b2ec49bf1 fix a few errors 2013-02-05 16:45:30 +02:00
Necrodoom
e98b1ffa8c add missing puncuation
probably needs extra reading though before pulling.
2013-02-05 13:57:27 +02:00
KHobbits
b0929e5c63 Merge pull request #297 from necrodoom/patch-36
fix typo at ID 22
2013-02-05 03:26:19 -08:00
Necrodoom
f3f45c528b Fix typo at groupmanager config.yml 2013-02-05 13:13:00 +02:00
Necrodoom
a09c17b178 fix typo at ID 22 2013-02-05 13:11:36 +02:00
ElgarL
c46c086388 Revert Necro's change to mancheckw 2013-02-04 13:44:58 +00:00
ElgarL
d94b5dbe33 Fix Necrodooms errors for not using an IDE!!!!! 2013-02-04 13:33:06 +00:00
ElgarL
6249a5c2c0 Merge pull request #291 from necrodoom/patch-32
display name instead of path for /mancheckw
2013-02-04 05:29:10 -08:00
ElgarL
f22bf97dff Merge pull request #290 from necrodoom/patch-30
Derp - revert incorrect modified line
2013-02-04 05:25:10 -08:00
KHobbits
339f3b6322 Stylize 'bed' in /home list 2013-02-03 17:30:14 +00:00
Chris Ward
ec7d47a675 Merge pull request #294 from necrodoom/patch-35
add common cat type name aliases
2013-02-03 05:16:17 -08:00
Necrodoom
5089e694f6 add common cat type name aliases 2013-02-03 15:13:36 +02:00
KHobbits
9076084c2f We don't need move events if afk interact is disabled. 2013-02-03 05:15:25 +00:00
KHobbits
6962e07665 Merge pull request #292 from GunfighterJ/2.9
Adds toggle to disable AFK cancel on interactions
2013-02-02 21:11:43 -08:00
GunfighterJ
263ce3b92d Adds toggle to disable AFK cancel on interactions 2013-02-02 23:06:09 -06:00
KHobbits
bb8ca488da Minor comment updates. 2013-02-03 04:14:23 +00:00
Necrodoom
e03a688040 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java 2013-02-01 16:39:18 +02:00
Necrodoom
665c229329 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/UsersDataHolder.java 2013-02-01 16:33:55 +02:00
Necrodoom
8a665ab520 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/GroupsDataHolder.java 2013-02-01 16:33:37 +02:00
Necrodoom
a21492e592 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/UsersDataHolder.java 2013-02-01 16:31:58 +02:00
Necrodoom
1f99b455a0 Derp - revert incorrect modified line 2013-02-01 14:14:46 +02:00
KHobbits
21c16675f5 Fix missing 'bed' from home list. 2013-02-01 05:26:17 +00:00
KHobbits
7ca32d455c Let Bukkit decide if a bedspawn is valid or not.
Bukkit's bed fix forces minimum bukkit change.
2013-02-01 02:59:40 +00:00
KHobbits
5c1e235f15 [GM] Catch all of the null. 2013-02-01 02:52:41 +00:00
KHobbits
27697c7b0c Make gm API lookup respect offlineperms toggle properly. 2013-02-01 00:01:57 +00:00
KHobbits
94769334d6 Updating groups example 2013-01-31 21:02:38 +00:00
KHobbits
cdb215bebf Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9
Conflicts:
	EssentialsGroupManager/src/Changelog.txt
2013-01-31 20:38:36 +00:00
Iaccidentally
2293cbc34f cleanup :: fix build 2013-01-31 14:40:33 -05:00
Iaccidentally
aa212f8068 Refactor name of ScheduleAsyncDelayedTask to RunTaskAsynchronously 2013-01-31 14:16:09 -05:00
Iaccidentally
d1b463c2ce Update to 1.4.7 R1 :: remove calls to ScheduleAsyncDelayedTask, as it is deprecated :: cleanup :: WARNING: This commit may or may not be stable 2013-01-31 14:03:27 -05:00
ElgarL
fb4a7a3bd6 Fix Necrodooms broken code. 2013-01-30 19:55:38 +00:00
ElgarL
17fac3555b Merge pull request #288 from necrodoom/patch-29
config option to allow GM commands in commandblocks
2013-01-30 11:45:27 -08:00
Necrodoom
1e658752ed update changelog 2013-01-30 19:26:46 +02:00
Necrodoom
221c0e4b6e update commandblock usage deny message 2013-01-30 19:25:35 +02:00
Necrodoom
e34eba0b57 update config description of allow_commmandblocks 2013-01-30 19:14:57 +02:00
Necrodoom
01aa20d7ef add allow commandblock check 2013-01-30 18:53:40 +02:00
Necrodoom
689a8655ce register new config setting 2013-01-30 18:47:19 +02:00
Necrodoom
dc925f32c8 update config.yml to include commandblock change 2013-01-30 18:15:58 +02:00
KHobbits
1f649dbc95 What is less than less than one. 2013-01-29 23:59:31 +00:00
KHobbits
5fe5b37038 Might as well make it all safe. 2013-01-29 23:51:42 +00:00
snowleo
1f391dbf4c Don't run calls against bucket api in async login thread 2013-01-30 00:26:50 +01:00
snowleo
cb86c989b0 Update /sell command to newer bukkit api 2013-01-29 20:29:03 +01:00
ElgarL
640a2bcc2d Doh, actually find what world we want to check properly with mancheckw. 2013-01-29 16:56:03 +00:00
ElgarL
a51d1f11a6 Update plugin.yml with the new command 2013-01-29 16:45:23 +00:00
ElgarL
7bb1fd2f77 grammaaahhhh!!! 2013-01-29 16:35:15 +00:00
ElgarL
e4dd3a28e4 Added '/mancheckw <world>' to inspect what permission files a world is
referencing.
2013-01-29 16:33:20 +00:00
ElgarL
fda048efca Missed an S 2013-01-29 16:15:45 +00:00
ElgarL
8fdf029007 Prevent '*' permissions granting the 'groupmanager.noofflineperm'
permission.
2013-01-29 16:14:24 +00:00
ementalo
ba189b8028 Revert "Merge pull request #286 from GunfighterJ/2.9"
This reverts commit 9cc2aa216a, reversing
changes made to ebefcd84fa.
2013-01-29 10:25:01 +00:00
Iaccidentally
9cc2aa216a Merge pull request #286 from GunfighterJ/2.9
Ignore itemmeta on selling
2013-01-28 21:13:41 -08:00
GunfighterJ
ffda5a6601 Ignore itemmeta on sell 2013-01-28 23:11:43 -06:00
ElgarL
b86e02427f Add support for BukkitForge using 'overworld' as the main world name. 2013-01-28 04:13:16 +00:00
GunfighterJ
1d491c5861 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-27 14:20:59 -06:00
KHobbits
ebefcd84fa Minor /ci tweak. 2013-01-27 17:22:43 +00:00
KHobbits
b4fe74d54b Cleanup /ci addition. 2013-01-27 17:10:07 +00:00
GunfighterJ
597ca566af Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-27 10:44:13 -06:00
KHobbits
ee087b1b3b Merge pull request #278 from GunfighterJ/2.9
Adds vanilla syntax for /clearinventory
2013-01-27 08:40:39 -08:00
KHobbits
edb828547e Fix vanish status when switching worlds.
This fixes the potion effect being cleared on world change.
2013-01-27 16:39:50 +00:00
KHobbits
bfc6eda3ae Add command syntax comment, for clarification.
Merge branch '2.9' of github.com:essentials/Essentials into 2.9
2013-01-27 15:26:46 +00:00
KHobbits
145313b3ea Don't try and charge a user if we don't have the chat data stored. 2013-01-27 15:26:42 +00:00
Iaccidentally
f7f9b9f8c5 Make heal remove fire from players. 2013-01-26 17:16:48 -05:00
Iaccidentally
7ccf9c25ac Update heal to account for the fact that 20 is not always the max health 2013-01-26 17:12:17 -05:00
GunfighterJ
057a192d33 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-24 21:16:13 -06:00
KHobbits
60c524b3bc Revert "Prevent replacement of { and } characters in chat.format"
This reverts commit 4cb9f58c88.
2013-01-25 03:12:13 +00:00
KHobbits
cf33210da6 Try command fallback 2013-01-25 03:06:53 +00:00
KHobbits
1ff74c286c Merge pull request #284 from phrstbrn/chat-braces-fix
Prevent replacement of { and } characters in chat.format
2013-01-24 08:53:32 -08:00
Zak Ford
4cb9f58c88 Prevent replacement of { and } characters in chat.format 2013-01-24 11:43:10 -05:00
GunfighterJ
201bd611a3 Update /ci to support vanilla syntax 2013-01-23 16:47:21 -06:00
Chris Ward
f06dde59bd Add debug option to XMPP 2013-01-23 19:41:36 +11:00
Chris Ward
c4fc66f016 Remove references to earth2me in plugin.ymls 2013-01-23 02:56:18 +11:00
Chris Ward
d36316b6f0 Merge pull request #280 from necrodoom/patch-28
update documation reference in config.yml
2013-01-22 00:13:07 -08:00
Necrodoom
aed128e3ff Update Essentials/src/config.yml 2013-01-22 09:54:48 +02:00
KHobbits
1272a5bdda Small patch to allow multiple firework effects to be defined in kits. 2013-01-21 23:38:03 +00:00
KHobbits
9f12acf4f6 Revert /gc change.
Simplify firework syntax, and add help
Merge branch 'patch-26' of git://github.com/necrodoom/Essentials into 2.9
2013-01-21 20:07:02 +00:00
KHobbits
21617e8bb2 Merge pull request #276 from necrodoom/patch-26
Update Essentials/src/plugin.yml
2013-01-21 06:41:32 -08:00
Necrodoom
b851105229 Update Essentials/src/plugin.yml 2013-01-21 16:40:45 +02:00
Necrodoom
8ddf55540d Update Essentials/src/messages_en.properties 2013-01-21 16:37:12 +02:00
Necrodoom
09007e15d9 fix message 2013-01-21 16:35:40 +02:00
Necrodoom
6ba3f0c60c try make error message more informative 2013-01-21 16:32:49 +02:00
Necrodoom
e5ad40c96b Update Essentials/src/plugin.yml 2013-01-21 16:29:26 +02:00
KHobbits
da61f031ae Allow negative exp to be given 2013-01-21 14:15:53 +00:00
KHobbits
4471d2ee77 Fix a couple of param issues. 2013-01-21 13:40:45 +00:00
KHobbits
5bcc11b8a4 Merge pull request #275 from DMarby/patch-1
Update Essentials/src/messages_se.properties
2013-01-20 15:31:34 -08:00
David Marby
a55aaf8b0f Update Essentials/src/messages_se.properties 2013-01-21 00:26:38 +01:00
KHobbits
1db19f8404 Show afk warning when pm'ing afk players.
Fix vanished leak on player matching.
2013-01-20 22:05:44 +00:00
KHobbits
6d93105d91 Add optional 2nd arg to broadcast format. 2013-01-20 20:58:05 +00:00
KHobbits
aee2cff57f Fix book meta error message. 2013-01-20 20:41:15 +00:00
KHobbits
f5364907e5 Trim long /gc output, add /gc all 2013-01-20 20:35:41 +00:00
KHobbits
b9a0f73d25 Fix minor /book bug (Null author) 2013-01-20 20:06:27 +00:00
KHobbits
9ccd611f70 Fix eco take derp. 2013-01-20 19:43:59 +00:00
KHobbits
8798c0f06c Fix colour syntax message on coloured leather. 2013-01-20 01:44:03 +00:00
KHobbits
7bf9ff085a Minor cleanup on /eco command. 2013-01-20 01:24:09 +00:00
KHobbits
e43bebca82 Merge pull request #274 from GunfighterJ/2.9
Cleanup /eco, fix reset broadcast
2013-01-19 17:12:07 -08:00
KHobbits
85a8b8a1a0 Cleanup /exp command, and fix vanilla syntax issues.
Needs double checking with commandblocks with vanilla syntax.
2013-01-20 01:10:41 +00:00
GunfighterJ
f53648fd2f Cleanup /eco, fix reset broadcast 2013-01-19 17:58:12 -06:00
KHobbits
3fc78c1ac3 Add example firework kit, and cleanup debug messages. 2013-01-19 23:43:40 +00:00
KHobbits
9506872ac0 Move firework meta handling into MetaItemStack
Allow firework meta to be applied to item spawning and kit commands.
2013-01-19 23:35:59 +00:00
ElgarL
f8bf45385f Negate 'groupmanager.noofflineperms' by default in the owner group. 2013-01-19 22:22:42 +00:00
KHobbits
88146c1ed1 Merge pull request #272 from GunfighterJ/2.9
/eco overhaul, adds /eco set
2013-01-19 10:54:11 -08:00
GunfighterJ
e3ec579c22 /eco overhaul, adds /eco set 2013-01-19 12:50:35 -06:00
KHobbits
fe1a281c66 Reduce chance of self repeating powertool actions. 2013-01-19 15:19:39 +00:00
Chris Ward
5935e22f7b Merge pull request #271 from necrodoom/patch-25
update /book description
2013-01-19 06:21:47 -08:00
Necrodoom
68fa58d882 update /book description 2013-01-19 16:16:35 +02:00
ElgarL
2565fbde78 Negate 'groupmanager.noofflineperms' by default in the owner group. 2013-01-19 12:40:40 +00:00
Chris Ward
02c9a9a543 Touch of cleanup to Gunfighter's addition to exp 2013-01-19 18:22:22 +11:00
GunfighterJ
0976557549 Adds vanilla syntax to /exp command 2013-01-18 18:20:05 -06:00
Alexander Schepp
f5e3774b15 Fix bug with empty motd 2013-01-18 23:36:59 +01:00
Iaccidentally
97097f4cda Merge pull request #266 from GunfighterJ/2.9
Duplicate alias removed
2013-01-17 17:30:04 -08:00
GunfighterJ
766e3f55dd Duplicate alias removed 2013-01-17 19:27:21 -06:00
snowleo
a5e90bd0d1 Merge remote-tracking branch 'origin/groupmanager' into 2.9 2013-01-18 01:01:23 +01:00
Iaccidentally
ee16244c93 Merge pull request #265 from GunfighterJ/2.9
Adds essentials.mute.notify
2013-01-17 15:53:37 -08:00
GunfighterJ
c3670e0473 Adds essentials.mute.notify 2013-01-17 17:42:32 -06:00
Iaccidentally
bb6efd5b6f Merge pull request #263 from GunfighterJ/2.9
Added /firework command
2013-01-17 14:59:01 -08:00
Iaccidentally
3d3f989ffb Update libs 2013-01-17 14:36:03 -05:00
Iaccidentally
3404ee112f Update Bukkit to 1.4.7-R0.1 2013-01-17 14:25:19 -05:00
GunfighterJ
6edffa340b Now it adds the right firework command 2013-01-16 20:40:29 -06:00
GunfighterJ
087e79cce7 Adds the actual /firework command 2013-01-16 20:39:09 -06:00
GunfighterJ
7736060f57 Added /firework command 2013-01-16 20:36:33 -06:00
Iaccidentally
9c5014659c Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-16 21:23:17 -05:00
KHobbits
ac9d4a2952 Fix null args on /book 2013-01-16 16:56:27 +00:00
KHobbits
1c28ebdbd7 Remove logger. 2013-01-16 16:30:30 +00:00
KHobbits
60baa468b4 Remove broken firework meta. 2013-01-15 00:37:08 +00:00
KHobbits
b6d56346bb Start work on firework effect - syntax in flux 2013-01-14 23:11:19 +00:00
Iaccidentally
1a726a00f9 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-14 17:25:32 -05:00
KHobbits
66cad5fc9c Couple of extra /helpop aliases. 2013-01-14 21:40:25 +00:00
KHobbits
c7010343da Add colour support to item meta. 2013-01-14 21:34:35 +00:00
KHobbits
11fc84a4e9 Only show ban reason in the in-game display, not full banFormat. 2013-01-14 11:59:31 +00:00
KHobbits
aa6a4465ab Better handle initial book.txt creation. 2013-01-14 08:21:03 +00:00
KHobbits
aedb73e50e Switch book meta, to use 'book.txt', and 'book:<section>'.
Should make things clearer and easier to understand.
2013-01-14 08:14:42 +00:00
KHobbits
6db519bb4d Merge remote-tracking branch 'remotes/origin/groupmanager' into 2.9 2013-01-14 07:37:11 +00:00
KHobbits
4eb8b41843 All the better to kick you with
(Pipe format for linebreak)
2013-01-14 07:36:45 +00:00
ElgarL
fa98833737 Fix recursive loop when used on offline servers. 2013-01-14 06:47:50 +00:00
ElgarL
8c228166a4 Update GlobalGroups (removing old permissions) as Towny handles it's own
perms now.
2013-01-14 05:48:48 +00:00
KHobbits
89bfb67fd2 Cleanup /book command. 2013-01-13 23:11:15 +00:00
Iaccidentally
51e2e753f4 Merge pull request #260 from GunfighterJ/patch-3
Fixes /top command not carrying pitch and yaw
2013-01-13 15:09:05 -08:00
GunfighterJ
8df731af3f Fixes /top command not carrying pitch and yaw 2013-01-13 17:02:46 -06:00
KHobbits
eb865c930a Merge pull request #259 from GunfighterJ/patch-2
Added more book commands for editing author and title
2013-01-13 14:57:35 -08:00
GunfighterJ
39b62e5e52 Merge branch 'patch-2' of https://github.com/GunfighterJ/Essentials into patch-2
Conflicts:
	Essentials/src/com/earth2me/essentials/commands/Commandbook.java
2013-01-13 16:31:29 -06:00
GunfighterJ
76228c3b90 Added more book arguments for editing author and title amend 2013-01-13 16:19:37 -06:00
KHobbits
00105cb008 Cleanup of book meta. 2013-01-13 22:18:08 +00:00
GunfighterJ
eccce51afd Added more book commands for editing author and title 2013-01-13 15:54:11 -06:00
KHobbits
712113e9b3 Adding support for books made from /einfo 2013-01-13 21:08:24 +00:00
ElgarL
0745834e1a typo in changelog. 2013-01-13 16:40:53 +00:00
ElgarL
bfde1ee754 Do not grant any permissions (nort update Bukkit) if the server is in
offline mode and the player has the permission node
'groupmanager.noofflineperms'.
2013-01-13 16:39:53 +00:00
KHobbits
37ca05d01f Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2013-01-13 16:30:43 +00:00
KHobbits
2dee1fa5ef Clean up TextPager 2013-01-13 16:30:22 +00:00
ElgarL
6499a8d6c6 Fix the logger so errors are reported again. 2013-01-13 16:20:38 +00:00
ElgarL
2731674c85 Synchronize pushing to Bukkit perms to prevent any
ConcurrentModificationException.
2013-01-13 16:20:09 +00:00
Chris Ward
fc47a93454 Merge pull request #258 from necrodoom/patch-22
update ID 397:3
2013-01-13 05:03:05 -08:00
Necrodoom
0bbce042b7 update ID 397:3 2013-01-13 15:01:10 +02:00
KHobbits
ba9a0ebb82 Add provisional support for basic item Meta
Adds /book command to allow reediting of signed books.
2013-01-13 04:44:28 +00:00
KHobbits
0a2446cdc2 Clean up userdata saving, to prevent CMI
Also update config section code to use newer bukkit methods
2013-01-12 19:30:06 +00:00
KHobbits
fa137c8660 Don't extend ItemStack 2013-01-12 17:05:05 +00:00
KHobbits
21b74e8bcd Pull item meta from itemdb class 2013-01-12 14:12:12 +00:00
Iaccidentally
9cfab0b8e9 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-11 12:56:18 -05:00
Iaccidentally
4199507399 Merge pull request #251 from necrodoom/patch-19
/me shakes fist at Khobbits
2013-01-11 09:17:44 -08:00
Necrodoom
6142dcbe68 /me shakes fist at Khobbits
fixes fd79120929 whitespace
2013-01-11 19:10:32 +02:00
Chris Ward
3a45b9bc91 Merge remote-tracking branch 'origin/groupmanager' into 2.9 2013-01-11 21:59:39 +11:00
Chris Ward
e04241a80f Fixes Item Frames being linked to Paintings when breaking 2013-01-11 21:54:52 +11:00
ElgarL
14ceb5ccc9 Store a plugin and server reference. 2013-01-11 00:53:48 +00:00
KHobbits
3892d1b93c New permission: essentials.sethome.bed
Players with this permission will force a bed home updating if daytime beds are enabled.
2013-01-10 22:36:38 +00:00
Chris Ward
316bfeb2b4 Implement abstract methods 2013-01-10 22:57:08 +11:00
Chris Ward
27a803f744 Update bukkit/craftbukkit libs. Force latest beta version 2013-01-10 22:51:48 +11:00
KHobbits
a880cfb888 Ban cleanup 2013-01-09 21:31:56 +00:00
KHobbits
75a9f8e793 Util commenting 2013-01-09 21:18:46 +00:00
KHobbits
7ea639399a Multiline kick messages and tempban countdown. 2013-01-09 21:04:58 +00:00
Chris Ward
b1b60a4e1a Merge branch 'groupmanager' into 2.9 2013-01-10 04:57:10 +11:00
Joseph
d1402c91fa Formatting 2013-01-10 03:25:58 +11:00
GunfighterJ
39bb9f5ab1 Add more items to Fireball command. Add delay option to /spawner 2013-01-10 03:25:57 +11:00
Chris Ward
33fcd427fc Merge pull request #247 from necrodoom/patch-18
rewrite ID 43:6, 44:6, 113, 114
2013-01-09 06:50:31 -08:00
Necrodoom
87b6687942 rewrite ID 43:6, 44:6, 113, 114 2013-01-09 16:46:37 +02:00
ElgarL
adb7f9c1b5 Synchronize the raising of GroupManager events to Bukkit.getServer()
(should prevent deadlocks).
2013-01-09 14:38:00 +00:00
ElgarL
52b316f06f Merge pull request #241 from necrodoom/patch-15
fix typo
2013-01-09 02:50:30 -08:00
ElgarL
e731b8b6eb Remove attachments BEFORE we clear them. 2013-01-09 04:27:10 +00:00
ElgarL
7e166d969a code tidy. 2013-01-09 04:13:40 +00:00
ElgarL
84e4558280 Remove attachments before clearing 2013-01-09 04:04:59 +00:00
ElgarL
243759a4a6 Clear our attachment map upon a manload so we correctly reconfigure a
players new permissions.
2013-01-09 03:55:26 +00:00
KHobbits
e8db940042 Expand plugin.yml fireball aliases. 2013-01-09 01:00:13 +00:00
KHobbits
b3bff937b6 Fire a few extra entities from /fireball 2013-01-09 00:58:29 +00:00
KHobbits
1e4fb1b10b Add a couple of extra entities to spawnmob 2013-01-09 00:41:24 +00:00
KHobbits
a0b80ab1ea Cleanup 2013-01-08 23:59:31 +00:00
KHobbits
8406715569 Pull and clean up book enchant pullreq.
Removed 1 enchant per book limit, anvils seem to handle multiple enchants fine, even if the result can only be one enchant.
2013-01-08 23:51:46 +00:00
Chasing Code
aab980f3d6 Add missing import for EnchantmentStorageMeta 2013-01-08 11:46:08 -08:00
Chasing Code
00767f142c Store enchanments in Enchanted Books
Change enchant command to store the enchantment instead of applying it when used on an Enchanted Book.  If an enchantment is already present, replace it (only one allowed on Enchanted Books).
2013-01-08 11:37:46 -08:00
oggehej
1b6729d3fc Update Swedish translation with new messages. 2013-01-08 19:45:51 +11:00
Chris Ward
2000dfb3fa Store regex, use util method instead of another regex. Store variable 2013-01-08 02:26:09 +11:00
Chris Ward
8ce481c0d9 Fix multiple enchantments in kits 2013-01-08 02:25:35 +11:00
Chris Ward
d000322a42 Merge pull request #242 from necrodoom/patch-17
update ID 127
2013-01-07 07:00:41 -08:00
Necrodoom
b66708a684 update ID 127 2013-01-07 16:52:51 +02:00
Chris Ward
04c7abc122 Unnecessary RegEx is unnecessary. 2013-01-08 00:08:11 +11:00
KHobbits
e3ae6a6150 Enchantment and item spawning cleanup
Should make it a little easier to add itemmeta.
2013-01-06 18:28:24 +00:00
KHobbits
febe3c512a Tell user that /mail sendall succeeded when used in console. 2013-01-06 16:27:20 +00:00
Necrodoom
0aa35d9296 fix typo 2013-01-05 19:05:02 +02:00
Necrodoom
0d1103938c update IDs 368, 381, 399, 402 2013-01-05 19:27:56 +11:00
KHobbits
70f479d7d1 Throw an error if user doesn't have permission to use kit sign. 2013-01-05 07:39:32 +00:00
KHobbits
a85b8c5d00 More user feedback on enchant sign. 2013-01-05 07:24:02 +00:00
KHobbits
52c1762322 Allow unsafe enchants to be placed by [enchant] signs if enabled in the config file. 2013-01-05 07:05:25 +00:00
KHobbits
d3bb0c6310 Couple of extra enchant aliases 2013-01-05 06:59:37 +00:00
KHobbits
093865d990 Merge branch 'release' into 2.9 2013-01-04 21:40:02 +00:00
KHobbits
9c04257b5e Fix sign break bug 2013-01-04 13:05:57 +00:00
md_5
0cc851c6b5 Might be worth catching other occurances of the event too. 2013-01-04 13:53:01 +11:00
md_5
538d5e1b29 ArrayList, I choose you! (Fixes CraftBook erroring when the killall command is used and custom drops are enabled in that plugin) 2013-01-04 13:49:45 +11:00
Alexander Schepp
d7a48f2351 Fix nl translation 2013-01-03 11:50:19 +01:00
Iaccidentally
21ef38d16d Update AntiBuild to use HangingBreakByEntityEvent instead of deprecated PaintingBreakByEntityEvent 2013-01-02 18:25:40 -05:00
Iaccidentally
fd2d220a87 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2013-01-02 18:24:34 -05:00
KHobbits
1b5d893c36 Merge pull request #236 from gravypod/patch-1
Store ingredient map and recipe shape
2013-01-01 15:20:26 -08:00
KHobbits
c74f1d9062 New permission: essentials.fly.safelogin - Players with this command will automatically switch to fly mode if they login whilst floating in the air. 2013-01-01 22:00:53 +00:00
KHobbits
20632705d4 New perm: essentials.vanish.effect - People with this effect will get the potion effect applied while vanished. 2013-01-01 21:12:26 +00:00
KHobbits
6d4387ecd0 Cleanup cleanup. 2013-01-01 19:48:08 +00:00
KHobbits
68c57a9ffd More cleanup 2013-01-01 19:34:32 +00:00
KHobbits
eb3dd6f0dc Cleanup 2013-01-01 18:39:23 +00:00
ElgarL
51e93c4c55 Merge pull request #235 from necrodoom/patch-10
fix isOpOverride checks
2012-12-31 07:59:27 -08:00
gravypod
baf3e56e87 Store ingredient map and recipe shape 2012-12-31 10:44:28 -05:00
Chris Ward
9c9dc28d74 Fix recipe NPE/failed display in game 2013-01-01 02:26:04 +11:00
Necrodoom
d0fa99fb89 fix isOpOverride checks 2012-12-31 15:35:58 +02:00
KHobbits
bef697c83d Don't unregister all listeners. 2012-12-31 12:15:51 +00:00
KHobbits
0c599fb471 Unregister unused events. 2012-12-31 05:44:20 +00:00
KHobbits
8c4375e288 Use bukkit api for chat user list 2012-12-31 05:43:05 +00:00
KHobbits
ed2677d57d Allow unbanning players who do not have valid userdata 2012-12-31 01:08:39 +00:00
KHobbits
f5e46a7b41 Implement event toggle. 2012-12-30 04:32:43 +00:00
KHobbits
5347f177ce Reorganize entity listener 2012-12-30 03:32:32 +00:00
Alexander Schepp
1f6f37cbd1 Use the right formatter in XMPP 2012-12-30 00:23:04 +01:00
KHobbits
a7cba7a860 Hide a few more duplicate enchantments from /enchant 2012-12-29 09:00:42 +00:00
KHobbits
5d27f6c095 Set default tpa timeout to 2 minutes. 2012-12-29 08:40:03 +00:00
KHobbits
36097288b9 Allow unsafe enchantments in /item /give /kit and /enchant
Needs enabled in config file manually.
2012-12-29 08:36:24 +00:00
KHobbits
667310a976 Make /enchant only show valid enchantments for the item. 2012-12-29 07:58:28 +00:00
KHobbits
dfe8ccc42b Add aliases for new thorns enchantment. 2012-12-29 07:47:07 +00:00
KHobbits
092850792f Ignore self damage in teleport entity protection. 2012-12-29 07:35:26 +00:00
KHobbits
adfa7b8739 Lets clean up the recipe window on player quit, just in case. 2012-12-29 06:55:48 +00:00
KHobbits
6080a5ff29 Fix home functionality bugs:
/home not using bed when enabled
/home not giving teleport warning
2012-12-29 06:43:26 +00:00
KHobbits
38cdc79303 Update bukkit to 1.4.6-R0.1
bukkit: 1652 cb: 2561
2012-12-29 06:37:52 +00:00
KHobbits
d29b9ea5f8 Fix string match error on none existing user (/ban). 2012-12-29 02:00:48 +00:00
Chris Ward
6cc5111ce0 Add SimplyPerms to classpath 2012-12-29 11:26:44 +11:00
Xefir
bc823c43f2 Added SimplyPerms Handler 2012-12-29 10:41:15 +11:00
Alexander Schepp
546edd604d Merge pull request #229 from necrodoom/patch-9
fix tempban permission check
2012-12-28 09:37:40 -08:00
Necrodoom
0d10639154 derp - fix tempban permission check 2012-12-28 19:05:54 +02:00
ElgarL
9f7aba554e Fix missing + from Necrodoom's pull request. 2012-12-28 13:46:22 +00:00
ElgarL
1edc27cc16 Merge pull request #228 from necrodoom/patch-8
Update EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManage...
2012-12-28 05:43:54 -08:00
Iaccidentally
21a040e64f Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2012-12-26 09:48:38 -05:00
Chris Ward
d91efdaad4 Revert c2bdf8edd4 - Adding permission node to speak, with config option to enable the node 2012-12-27 01:41:32 +11:00
Chris Ward
219c84f11a Add tpdeny message to /tpahere 2012-12-27 01:10:57 +11:00
Iaccidentally
dcd9faff58 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2012-12-25 18:12:42 -05:00
Necrodoom
716496af16 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java 2012-12-25 18:11:10 +02:00
Chris Ward
c2bdf8edd4 Adding permission node to speak, with config option to enable the node 2012-12-24 01:55:53 +11:00
Chris Ward
b50330c9dd Move max-tempban-time in config 2012-12-24 01:04:02 +11:00
Chris Ward
6590d8c448 Fixing IUser 2012-12-23 21:29:26 +11:00
Chris Ward
6f12d2f92b Adding isAfk and setAfk to IUser API 2012-12-23 21:25:29 +11:00
KHobbits
547769aa73 Make seen status's only show when true. 2012-12-22 03:36:56 +00:00
Chris Ward
43acdfd5ad Merge pull request #215 from necrodoom/patch-5
update items.csv to minecraft 1.4.6
2012-12-21 04:33:14 -08:00
KHobbits
3d806ff7b8 Log target plugin in debug mode for altcmd 2012-12-21 06:38:51 +00:00
KHobbits
acbe4423e0 Final all the things - Recipe 2012-12-21 03:48:54 +00:00
KHobbits
90046ffc60 Fix recipe layout for small shapes 2012-12-21 03:35:48 +00:00
KHobbits
ae8762b422 Swap method order on recipe 2012-12-21 03:21:35 +00:00
KHobbits
80b903456e Adjust section matching. 2012-12-20 23:37:37 +00:00
KHobbits
76ea2bf913 Merge pull request #227 from Elvaron/2.9
FallBack for missing config property
2012-12-20 15:36:01 -08:00
Elvaron
d1f2b48671 FallBack for missing config property 2012-12-21 00:16:18 +01:00
KHobbits
aaceceea55 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-12-20 22:58:00 +00:00
KHobbits
7da6c14d1a Add support for whitelisting commands in /help by permission: essentials.help.<plugin>.<command> 2012-12-20 22:57:38 +00:00
KHobbits
5f6bf150f5 Reduce permissions checking when generating /help 2012-12-20 22:54:36 +00:00
KHobbits
4327876447 Allow certain commands while in jail, but only if the user normally has access to that command. 2012-12-20 22:53:52 +00:00
KHobbits
07e9e6d1fe Merge pull request #226 from Elvaron/2.9
Made socialspy commands list configurable
2012-12-20 14:16:45 -08:00
Elvaron
291ffb0bba Made socialspy commands list configurable 2012-12-20 23:07:22 +01:00
KHobbits
b8ca9a73ba Merge branch 'release' of github.com:essentials/Essentials into 2.9 2012-12-20 20:37:42 +00:00
KHobbits
87ab3ee119 Add a little bit of extra information to /seen, this will show when user is online. 2012-12-20 20:37:04 +00:00
KHobbits
f839355459 Warn other party when teleport fails after tpaccept. 2012-12-20 20:24:07 +00:00
KHobbits
22e8f9e194 Redundant tpaccept cost check. 2012-12-20 20:23:51 +00:00
KHobbits
ac2d3df058 Fix max tempban length option. 2012-12-20 20:11:45 +00:00
KHobbits
8f572b12ae Warn other party when teleport fails after tpaccept. 2012-12-20 20:01:43 +00:00
KHobbits
9fd1b019b0 Redundant tpaccept cost check. 2012-12-20 19:50:59 +00:00
KHobbits
840cbc12d0 Merge branch 'release' of github.com:essentials/Essentials into 2.9 2012-12-20 17:03:48 +00:00
KHobbits
075bf6b9be Remove command cost warnings from plugin matching. 2012-12-20 15:51:49 +00:00
Chris Ward
bf72cfb50d Fix currency display in MOTD - display currency character, trim decimal places 2012-12-20 15:45:32 +00:00
snowleo
ec87388089 Don't use broken CB methods ... 2012-12-20 15:45:22 +00:00
snowleo
1dc7f53497 Don't use broken CB methods ... 2012-12-20 16:07:40 +01:00
Chris Ward
3937357c66 Useless import 2012-12-20 23:10:38 +11:00
Chris Ward
95c5d8ed85 Fix currency display in MOTD - display currency character, trim decimal places 2012-12-20 23:07:49 +11:00
md_5
6c9716f97d Fix nagging for overriden commands. 2012-12-20 09:56:30 +01:00
snowleo
5294268568 Merge branch 'refs/heads/groupmanager' into 2.9 2012-12-20 09:55:26 +01:00
snowleo
9f52b17e4b Fix gm builds
Change craftbukkit.jar -> bukkit,jar
2012-12-20 09:36:35 +01:00
md_5
7d2a34ed0b Lets leave numeric homes as is for now, looping through all files on server startup is not the place to do this (reverse-merged from commit ebebb61989) 2012-12-20 17:24:14 +11:00
md_5
f9d34d0fe1 Fix nagging for overriden commands. 2012-12-20 17:11:05 +11:00
Chris Ward
7919065be3 Fix NPE in update (sorry again :P) 2012-12-20 15:45:09 +11:00
Chris Ward
ebebb61989 Update home names to prepend "home" to numeric home names 2012-12-20 13:11:05 +11:00
snowleo
770f0e81b0 Force people to use latest CB version 2012-12-20 00:46:03 +01:00
snowleo
2d02b67f2c Fix Spawns / Jail loading 2012-12-20 00:46:03 +01:00
snowleo
d0eace79a7 Update Inventory Workaround to the latest version
Still bugged in CB: maxAmount of items
2012-12-20 00:46:03 +01:00
snowleo
cb30a2c852 Force people to use latest CB version 2012-12-19 23:28:18 +01:00
snowleo
625e2ee386 Fix Spawns / Jail loading 2012-12-19 23:26:29 +01:00
snowleo
ebbab2ecb3 Update Inventory Workaround to the latest version
Still bugged in CB: maxAmount of items
2012-12-19 22:07:03 +01:00
ElgarL
c9408af77a Update Bukkit to version #2543 (1.4.5-R1.0) To ensure we are all
compatible with current recommended build.
2012-12-19 15:10:37 +00:00
Chris Ward
c623058c52 Fix recipe command 2012-12-20 01:35:55 +11:00
md_5
b7559ee38c Simply using the SnakeYaml default (which in turn defaults to Class.forName) appears to be enough to get the classes for our custom configuration. This avoid Bukkit depreciation. 2012-12-19 12:57:05 +00:00
KHobbits
251b58bd75 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-12-19 12:54:00 +00:00
KHobbits
412d3c8f3d Updating Bukkit to 1.4.5 RB
Bukkit: 1643 CB: 2543
2012-12-19 12:52:05 +00:00
Chris Ward
a89d6014e8 Merge pull request #223 from chrisgward/patch-1
Add /recipe command
2012-12-19 00:28:27 -08:00
md_5
0375b9b31d Simply using the SnakeYaml default (which in turn defaults to Class.forName) appears to be enough to get the classes for our custom configuration. This avoid Bukkit depreciation. 2012-12-19 19:10:02 +11:00
Chris Ward
0c39d3fdb9 Add /recipe command 2012-12-19 14:57:12 +11:00
KHobbits
5deab414a4 Remove CB from EssCore libs. 2012-12-18 22:58:55 +00:00
KHobbits
cc1febb46d Merge pull request #216 from chrisgward/patch-1
Add tempban limit (with override node)
2012-12-18 02:24:45 -08:00
KHobbits
95906a66ee Fix command costs warnings. 2012-12-17 18:32:42 +00:00
KHobbits
1f175dffe1 Support new skeleton and zombie types.
Also fix baby sheep colours.
2012-12-16 21:39:31 +00:00
KHobbits
38901e1f29 Log a few extra metrics. 2012-12-16 21:02:02 +00:00
KHobbits
da013e0c09 Merge pull request #217 from necrodoom/patch-7
add "w" alias
2012-12-16 11:07:10 -08:00
Necrodoom
598ad2633d Update Essentials/src/plugin.yml 2012-12-16 18:05:07 +02:00
Necrodoom
785f924361 add "w" alias 2012-12-16 18:03:04 +02:00
Chris Ward
53c0bcec0a Add tempban limit (with override node) and console override to exempt node. 2012-12-17 02:12:38 +11:00
Alexander Schepp
a949ec475d derp
That's why switch statements are bad.
2012-12-16 13:59:25 +01:00
Alexander Schepp
314cd5a68b Fix order of messages 2012-12-16 13:48:02 +01:00
KHobbits
8dc9c310ab Update bukkit
Bukkit 1608 CraftBukkit 2488
2012-12-16 12:28:49 +00:00
KHobbits
ba1e708a13 Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-12-16 12:12:23 +00:00
Necrodoom
86cb1f9db0 update items.csv to minecraft 1.4.6 2012-12-16 12:52:16 +02:00
Alexander Schepp
4d5a4fcf9b Merge pull request #214 from necrodoom/patch-4
change add-prefix-suffix description
2012-12-15 06:17:22 -08:00
snowleo
e018dede79 Fix the gap 2012-12-15 14:22:52 +01:00
snowleo
9f61f2241b Align /tp syntax with Minecraft /tp command 2012-12-15 14:12:34 +01:00
Necrodoom
979c10d4de change add-prefix-suffic description
hopefully will keep newbies from changing it for no reason
2012-12-15 12:58:57 +02:00
Iaccidentally
69cbdd6e9b Merge pull request #210 from Echo4190/patch-1
Update Essentials/src/config.yml
2012-12-11 04:06:10 -08:00
Echo419
dbf2380765 Update Essentials/src/config.yml
trillions => trillion
english => English
2012-12-11 12:03:21 +00:00
KHobbits
743608246f Merge pull request #209 from necrodoom/patch-2
update config.yml to reference wiki more
2012-12-10 09:46:31 -08:00
KHobbits
e3aa3a37ba Add missing import. 2012-12-10 17:45:32 +00:00
KHobbits
e53a8aa7b6 Update metrics to r6 2012-12-10 17:43:06 +00:00
KHobbits
38e90db8b8 Metrics Diff 2012-12-10 17:40:15 +00:00
Necrodoom
c1e75b96d1 update config.yml to reference wiki more
also changed locale setting to be less confusing
2012-12-10 09:39:22 +02:00
KHobbits
2ef491b7bd Delay sending respawn event until we actually try to respawn user. 2012-12-09 17:32:02 +00:00
KHobbits
c15f942ed6 Revert "Bukkit should have fixed this issue, so we can now get a better first join player experience by teleporting them at once with no delay."
This reverts commit 54c50f7208.

This breaks compatibility with multiverse, and Essentials core.
2012-12-09 17:14:57 +00:00
KHobbits
7c2cb8a19b Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-12-09 17:10:31 +00:00
KHobbits
1be3dc7af2 Move null bed check to teleport code 2012-12-09 17:10:12 +00:00
md_5
54c50f7208 Bukkit should have fixed this issue, so we can now get a better first join player experience by teleporting them at once with no delay. 2012-12-09 16:03:00 +11:00
KHobbits
e78d216a87 Shorten local chat format. 2012-12-08 18:51:18 +00:00
KHobbits
5af9f540f6 Some nice friendly messages to help debugging command costs. 2012-12-08 15:51:33 +00:00
KHobbits
6de63be344 Throw error when using /more on full stack 2012-12-07 00:46:13 +00:00
KHobbits
16dc929433 Remove unused variable 2012-12-06 23:27:43 +00:00
KHobbits
5a7c7510fe Make BPerms sign group checking behave similarly to same as GM and PEX 2012-12-06 23:26:48 +00:00
KHobbits
bdff7dca62 Merge pull request #208 from kukelekuuk00/2.9
Added a total profit message for /sell all|blocks
2012-12-05 09:14:07 -08:00
kukelekuuk00
b8f10c345b Added a total profit message for /sell all|blocks 2012-12-05 15:40:17 +01:00
KHobbits
44a93cad23 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-12-03 09:09:17 +00:00
KHobbits
1283ec3c35 Update afk status on block interact 2012-12-03 09:08:56 +00:00
Iaccidentally
e468892696 Merge pull request #205 from evonuts/patch-1
Spelling/Grammar fixes.
2012-12-01 02:43:20 -08:00
evonuts
d9d598e05a Spelling/Grammar fixes. 2012-12-01 21:51:24 +13:00
Iaccidentally
dc06b46cf4 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2012-11-27 14:54:18 -05:00
snowleo
efacf17ee2 Add log color removal.
(This could already be done with the bukkit setting "log-strip-color")
2012-11-27 19:54:32 +01:00
KHobbits
a40b5059fb Fix kit timers, kit times more than 25 years will be treated as single use. 2012-11-27 18:27:23 +00:00
KHobbits
82e457c897 Userdata cleanup 2012-11-27 17:47:08 +00:00
KHobbits
f4fda5ac35 Merge branch 'release' of github.com:essentials/Essentials into 2.9 2012-11-27 15:24:34 +00:00
Iaccidentally
771aaa482c Merge pull request #204 from necrodoom/patch-23
fix typo at config.yml
2012-11-25 09:30:13 -08:00
Necrodoom
e9d62e73ef fix typo at config.yml 2012-11-25 15:07:25 +02:00
Iaccidentally
ed21a18ea0 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2012-11-24 14:55:54 -05:00
KHobbits
6a68a33d28 Merge pull request #201 from necrodoom/patch-22
fix spacing at disabled-commands
2012-11-20 11:16:00 -08:00
Necrodoom
91de139b2a fix spacing at disabled-commands 2012-11-20 19:38:21 +02:00
ElgarL
3254a1a2a0 Fix recursive error detection when partial mirroring the main world 2012-11-20 14:55:06 +00:00
snowleo
5a0632be73 Better fix for last commit 2012-11-19 22:03:25 +01:00
snowleo
2f43296358 Fix for the plugin conflict with any plugin that contains a log4j library 2012-11-19 20:28:12 +01:00
KHobbits
15f1af8e71 Merge branch 'release' of github.com:essentials/Essentials into 2.9 2012-11-19 14:28:28 +00:00
KHobbits
db47c5d23f Add tptoggle others Essentials style. 2012-11-16 01:37:47 +00:00
Iaccidentally
8e02af5fde Merge remote-tracking branch 'remotes/origin/release' into 2.9 2012-11-13 22:57:14 -05:00
ElgarL
7d0056b154 Update bukkit.jar to #1593 in lib so we can reference the new
interfaces.
2012-11-13 10:17:15 +00:00
Iaccidentally
c54ec648ba Merge pull request #195 from evonuts/2.9
Update fly command to allow for /fly on|*ena*|1 and inversely, /fly off|...
2012-11-11 14:21:18 -08:00
ElgarL
0857d498e5 Prevent GM commands from being used on CommandBlocks. 2012-11-11 20:56:07 +00:00
ElgarL
bf196eb2dc Add support for Rcon. 2012-11-11 20:39:03 +00:00
Iaccidentally
5cdd6498c3 update tptoggle to allow toggling other players :: new permission: essentials.tptoggle.others 2012-11-11 14:34:56 -05:00
KHobbits
12cb2f2a82 Cleanup spawnmob classes
Spawnmob sign nolonger calls Command
Spawnmob other, now spawns at targets feet, rather than where the target is looking
Console can now spawnmob other
2012-11-11 18:55:02 +00:00
Iaccidentally
60138da699 Merge pull request #197 from necrodoom/patch-21
Update Essentials/src/com/earth2me/essentials/Mob.java
2012-11-11 09:10:33 -08:00
KHobbits
16703b4e32 Mob comment. 2012-11-11 17:04:16 +00:00
Necrodoom
30a57e82b0 Update Essentials/src/com/earth2me/essentials/Mob.java 2012-11-11 18:58:05 +02:00
Iaccidentally
b471970edc Make playerFishEvent cancel AFK :: fixes #3192 2012-11-11 11:43:10 -05:00
KHobbits
12004632f6 Merge branch '2.9' of github.com:essentials/Essentials into release 2012-11-11 14:55:00 +00:00
KHobbits
640459290b Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-11-11 14:54:19 +00:00
KHobbits
8eb1ce0f5c Merge branch '2.9' of github.com:essentials/Essentials into release 2012-11-11 14:53:42 +00:00
Iaccidentally
889d2efa80 Merge pull request #196 from necrodoom/patch-20
update ID 101, by andrewkm request
2012-11-10 09:53:16 -08:00
Necrodoom
626c98898c update ID 101, by andrewkm request 2012-11-10 19:12:25 +02:00
evonuts
b587bf34f8 Fix fly specific settings for other players (eg. /fly evonuts on) 2012-11-10 22:17:39 +13:00
evonuts
eab1895364 Update fly command to allow for /fly on|*ena*|1 and inversely, /fly off|*dis*|0. 2012-11-10 13:40:48 +13:00
ElgarL
b929bb4f83 Merge pull request #194 from necrodoom/patch-19
correct spaces at plugin.yml
2012-11-09 05:51:52 -08:00
ElgarL
c2741ccd5c Merge pull request #193 from necrodoom/patch-18
GroupManager typo fix
2012-11-09 05:51:15 -08:00
ElgarL
b248d192e1 Merge pull request #190 from necrodoom/patch-16
fix typos and update ingame error message
2012-11-09 05:50:39 -08:00
Necrodoom
b495ee2480 correct spaces at plugin.yml 2012-11-08 16:35:57 +02:00
Necrodoom
3e9e477583 GroupManager typo fix 2012-11-08 16:31:49 +02:00
KHobbits
68f8bbdfc0 Extra perm check in /home 2012-11-08 11:53:26 +00:00
md_5
7ece478d68 Set a players sleeping ignored status synchronously, just in case! Thanks for the hint mbaxter & Wolvereness. Closes ticket 3179. 2012-11-08 18:57:44 +11:00
Iaccidentally
ca84cfc868 Merge pull request #192 from evonuts/2.9
Allow for console based gamemode shortcuts. Fixes ticket #3173
2012-11-07 18:39:39 -08:00
evonuts
3261ed2307 Allow for console based gamemode shortcuts. Fixes ticket #3173 2012-11-08 15:19:07 +13:00
Iaccidentally
26b657c85c fix build 2012-11-04 19:04:10 -05:00
Iaccidentally
b1bf072a39 CB 2455 :: Bukkit 1593 2012-11-04 17:52:35 -05:00
KHobbits
2aae8206c9 Allow the 'userIsNotAway' and 'userIsAway' translation messages to be empty. 2012-11-04 22:41:35 +00:00
Alexander Schepp
42129c046f Allow the noNewMail translation to be empty 2012-11-04 22:34:47 +01:00
KHobbits
8d123a3cd5 Code comments. 2012-11-04 21:31:23 +00:00
Iaccidentally
50d9799999 allow money to be put in kits using the currency symbol before the amount 2012-11-04 16:25:09 -05:00
KHobbits
e31d317678 Use durability instead of itemdata for antibuild checks.
Fixes potion blocking using antibuild.
2012-11-04 18:02:36 +00:00
KHobbits
d9e4e00d28 Fix godmode pvp protection not blocking thrown pots and arrows. 2012-11-04 17:31:57 +00:00
KHobbits
2d8c0eb75d Fix missing mob target block 2012-11-04 16:45:02 +00:00
KHobbits
911ea62826 Fix a few more errors in plugin.yml 2012-11-04 13:29:39 +00:00
KHobbits
4aa6516a8e Fix plugin.yml typo. 2012-11-04 13:16:05 +00:00
KHobbits
c29dff5970 Code comments 2012-11-04 02:24:54 +00:00
KHobbits
d7559683ab Limit tnt disable on /nuke to 10s 2012-11-04 02:18:51 +00:00
md_5
f85bbbf80e Update Spanish translations thanks to nikooo14. 2012-11-03 11:47:39 +11:00
Necrodoom
c62e6cf831 Update EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java 2012-11-02 18:21:26 +02:00
Alexander Schepp
61d5c898a4 remove all L 2012-10-31 21:30:57 +01:00
Iaccidentally
f257a13e91 Make /exp accept L before or after the amount, add extra checks 2012-10-31 16:25:13 -04:00
Alexander Schepp
a9ae2267c9 Handle int overflow in SetExpFix 2012-10-31 21:06:30 +01:00
Alexander Schepp
b5e166b280 Use the class, not the interface
This code will be changed later, once Elgarl updates the gm branch to 1.4
2012-10-31 20:06:32 +01:00
Alexander Schepp
5d494d0ae7 Quickfix to prevent GM commands from being called by BlockCommandSender. 2012-10-31 19:44:13 +01:00
Iaccidentally
3e8db7a55f fix minimum required bukkit version. 2012-10-29 14:26:51 -03:00
Iaccidentally
ee3ce3d96e CB 2420 :: Bukkit 1570 :: Update FakeServer and OfflinePlayer 2012-10-29 13:17:56 -04:00
KHobbits
ca6d88491d Merge pull request #185 from evonuts/patch-5
Update Essentials/src/config.yml
2012-10-29 02:21:24 -07:00
evonuts
2ed9070165 Update Essentials/src/config.yml
'flase' typo in wither-spawnexplosion
2012-10-29 22:06:23 +13:00
ementalo
15c49aebf3 Fix mail 2012-10-28 20:09:25 +00:00
ementalo
df53b5d814 Fix mail 2012-10-28 20:00:15 +00:00
Iaccidentally
fcc5018b76 typo fix 2012-10-28 15:03:45 -03:00
Iaccidentally
34ba901548 Update Essentials/src/com/earth2me/essentials/commands/Commandtppos.java
2.9 too
2012-10-28 15:01:54 -03:00
Iaccidentally
e164a0e958 nothing to see here, move along (typo fix) 2012-10-28 13:09:19 -04:00
Iaccidentally
01f148cb5e NOW with complete wither protection! 2012-10-28 13:05:08 -04:00
Iaccidentally
e42b00f0df oops! :: fix wither spawn explosion blocking 2012-10-28 12:58:01 -04:00
Iaccidentally
95104a0681 Fully support wither blocking in protect 2012-10-28 12:53:12 -04:00
Iaccidentally
01ca659987 CB #2415 2012-10-28 12:23:47 -04:00
Iaccidentally
61786bf7c6 Merge branch '2.9' of https://github.com/essentials/Essentials into 2.9 2012-10-28 11:10:17 -04:00
Iaccidentally
0aa2c21f04 update tppos to not accept coords over 30000000 2012-10-28 11:09:49 -04:00
Iaccidentally
03eebcab8d Merge pull request #184 from necrodoom/patch-15
add bat egg and witch egg
2012-10-28 07:40:52 -07:00
Necrodoom
86f0a8abc8 add bat egg and witch egg
enderdragon and wither have no useable eggs, so not added
2012-10-28 16:37:23 +02:00
Iaccidentally
611df58395 Protect updates :: ability to prevent wither damage :: block spawning of new mobs 2012-10-28 09:39:54 -04:00
Iaccidentally
8fa486aa37 CB #2406 Bukkit #1568 2012-10-28 09:11:50 -04:00
md-5
ad1a37c90f Merge pull request #183 from evonuts/patch-4
Update Essentials/src/config.yml
2012-10-28 03:22:55 -07:00
evonuts
bf70a501fb Update Essentials/src/config.yml 2012-10-28 22:37:00 +13:00
md_5
7840faff18 Why the f*** do we depend on Bukkit too? 2012-10-28 20:09:26 +11:00
md-5
a725408ddf Merge pull request #182 from evonuts/patch-3
Update Essentials/src/config.yml
2012-10-28 02:02:24 -07:00
md_5
f015e2ea36 No idea why this still refuses to compile locally. Stupid ant. 2012-10-28 20:01:27 +11:00
evonuts
557ca0b27a Update Essentials/src/config.yml 2012-10-28 21:55:20 +13:00
md-5
631b91e302 Merge pull request #180 from Glyca/2.9
Added, fixed and improved French translations
2012-10-28 01:38:51 -07:00
md-5
cce82f1fc5 Merge pull request #176 from necrodoom/patch-14
update files to minecraft 1.4
2012-10-28 01:37:22 -07:00
Glyca
c57acad54a Added, fixed and improved French translations 2012-10-27 21:47:55 +02:00
Necrodoom
75dd2ae877 update ID 137 2012-10-27 10:41:50 +03:00
KHobbits
7921ca54ec Merge branch '2.9' of github.com:essentials/Essentials into release 2012-10-26 21:41:49 +01:00
KHobbits
7b5ed517fe Reduce calls to bukkit getPlayer(); 2012-10-26 21:34:36 +01:00
ementalo
873d1c7550 2.9 Release 2012-10-26 09:48:45 +01:00
KHobbits
8345f875f1 Fix tp delay message 2012-10-23 00:00:55 +01:00
KHobbits
70ee7d8f44 Update EssentialsAntiBuild/src/com/earth2me/essentials/antibuild/EssentialsAntiBuildListener.java 2012-10-22 14:55:52 +02:00
KHobbits
12f43c16bf Update listener comment 2012-10-22 12:27:01 +02:00
Alexander Schepp
76b0a925b2 Fix NPE in UserData on login
if no address is available
2012-10-21 23:17:08 +03:00
KHobbits
b0cd884c41 Fix perm check in /kill 2012-10-20 19:24:33 +01:00
KHobbits
bc8a45c850 If the player is still alive, make sure he dies. (/kill) 2012-10-20 19:18:04 +01:00
KHobbits
3a31b7cf9d Block explicit /home bed, unless user has "essentials.home.bed" permission.
This does not effect the '/home' command when used with no arguments.
In this case, a player will still be sent to the bed home, if they have no Ess home set.
2012-10-20 16:15:43 +01:00
KHobbits
be2066e0a0 Remove extra home check. 2012-10-20 16:09:54 +01:00
Necrodoom
d1ecde5c88 update mob.java to 1.4 2012-10-20 12:24:18 +03:00
Necrodoom
bfcbe64a36 update items.csv to 1.4
items.csv version 2.2_01
2012-10-20 12:11:27 +03:00
ementalo
d0f0bd32e0 Fix test 2012-10-17 13:14:59 +01:00
ementalo
017c162692 CB #2396 B #1566 2012-10-17 13:09:03 +01:00
snowleo
775109e32b Don't call plugin manager in Settings. 2012-10-15 20:30:52 +02:00
KHobbits
7239e58ef7 Merge pull request #174 from necrodoom/patch-13
fix sandstone slab aliases
2012-10-14 09:44:26 -07:00
Necrodoom
df07696063 fix sandstone slab aliases 2012-10-14 19:40:57 +03:00
KHobbits
8ed098cff2 Allow kicking of hidden players 2012-10-14 13:04:00 +01:00
KHobbits
1638934575 Warn when banning a player who has never connected to the server. 2012-10-14 13:03:54 +01:00
Iaccidentally
1a4e3ce566 Update Essentials/src/items.csv
quick items.csv fix
2012-10-09 05:19:27 -03:00
KHobbits
cefda18404 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-10-07 22:40:18 +01:00
KHobbits
76c347977a Add alt warp perm for others 2012-10-07 22:40:04 +01:00
snowleo
413bf8552e Update AntiBuild for NB7.2 2012-10-07 23:00:09 +02:00
snowleo
22c6812509 Prevent massive amount of mails being send.
Added new config: mails-per-minute, default 1000
2012-10-07 22:46:15 +02:00
KHobbits
7a64099959 New permission: essentials.vanish.pvp
If you don't have this permission you cannot PVP while vanished.
2012-10-07 18:10:50 +01:00
KHobbits
a48c836213 Change default action colour to be different to /say 2012-10-06 22:26:51 +01:00
KHobbits
8234a40083 Code comments 2012-10-06 03:49:36 +01:00
KHobbits
f25a4942ea Comment for future sanity. 2012-10-05 02:06:23 +01:00
KHobbits
17bebc564d Fix gamemode other perm check 2012-10-02 21:06:28 +01:00
KHobbits
af43c14956 Better handle invalid warp names 2012-10-02 00:19:42 +01:00
KHobbits
292a48348c Cleanup sethome 2012-10-01 20:32:10 +01:00
Alexander Schepp
321e308201 Merge pull request #171 from chrisgward/patch-5
Adding console override to sudo chat
2012-10-01 10:31:48 -07:00
Chris Ward
0e602a61d7 Adding console override to sudo chat, changing say to c: 2012-10-02 03:30:13 +10:00
ElgarL
ed336e9e79 Merge remote-tracking branch 'remotes/origin/2.9' into groupmanager 2012-10-01 17:51:56 +01:00
ElgarL
f898b0c2c9 Merge branch '2.9' of https://ElgarL@github.com/essentials/Essentials.git into 2.9 2012-10-01 17:50:08 +01:00
ElgarL
2a06f49284 Move Event to LOW so permissions get updated before this event is
triggered.

With LOWEST it would only randomly work with most perm systems,
depending on the loading order.
2012-10-01 17:49:42 +01:00
Alexander Schepp
c75e9a3a84 Merge pull request #165 from chrisgward/patch-2
Adding say command to sudo to fake chat
2012-10-01 09:34:49 -07:00
Alexander Schepp
8801f02f80 Merge pull request #166 from chrisgward/patch-3
Blocking numeric home names, changing invalid home message
2012-10-01 09:34:09 -07:00
Chris Ward
b5d8337f09 Blocking numeric home names, changing invalid home message 2012-10-02 02:32:52 +10:00
Chris Ward
1cb60e8733 Adding -c switch to sudo to fake chat 2012-10-02 02:31:15 +10:00
Alexander Schepp
239f274821 Merge pull request #169 from chrisgward/patch-5
Adding console only overrides to exempts
2012-10-01 09:15:18 -07:00
Alexander Schepp
c249c735b8 Merge pull request #170 from chrisgward/2.9
Fixing storage of compiled regex
2012-10-01 09:12:35 -07:00
Chris Ward
94c08fbd66 Fixing storage of compiled regex 2012-10-02 02:11:05 +10:00
Chris Ward
4131763ba7 Adding console overrides to exempts 2012-10-02 01:57:29 +10:00
Iaccidentally
f0818310f8 Merge pull request #164 from chrisgward/patch-1
Fixing bad file names in Windows (Fixes #2924)
2012-10-01 07:16:22 -07:00
Chris Ward
2ce7a98b5d Fixing bad file names in Windows (Fixes #2924) 2012-10-01 21:20:17 +10:00
ElgarL
9e13290879 allWorldsDataList now returns fully mirrored worlds whihc are not
identical mirrors (fixes the /manselect list).
2012-10-01 12:05:49 +01:00
KHobbits
6813c66dea Merge pull request #163 from chrisgward/patch-1
Fixes #2933
2012-10-01 03:27:37 -07:00
Chris Ward
b586059201 Typo (Ticket 2933) 2012-10-01 20:12:13 +10:00
KHobbits
1d8f36a2c9 Merge pull request #158 from necrodoom/patch-10
update potion aliases- add all unused potions
2012-09-30 13:55:20 -07:00
KHobbits
ba63aeabd2 Merge pull request #162 from necrodoom/patch-12
small fixes to items.csv
2012-09-30 13:55:09 -07:00
KHobbits
76f4d1e091 Restore removed tp method, it is used in other plugins. 2012-09-30 18:15:46 +01:00
KHobbits
47b69e2401 Update Bukkit/CB to 1.3.2 R1
Bukkit: 1546 CB: 2377
2012-09-30 17:33:49 +01:00
Necrodoom
f25229cd8e small fixes to items.csv 2012-09-30 19:22:14 +03:00
KHobbits
7fe8b1bbad Merge branch 'release' of github.com:essentials/Essentials into 2.9 2012-09-30 17:21:09 +01:00
Necrodoom
490d3fe929 update kit sign permission check 2012-09-30 17:16:03 +01:00
Necrodoom
fe630ba930 update warp sign permission check 2012-09-30 17:15:57 +01:00
KHobbits
c0467d3a60 Should fix tpaccept charge bug - needs testing 2012-09-30 17:15:40 +01:00
KHobbits
9921299140 New permission: essentials.teleport.timer.move - allow players to move during tp delay 2012-09-29 23:48:59 +01:00
KHobbits
ecc03a9d54 Little bit DRYer 2012-09-29 23:41:12 +01:00
KHobbits
026ddbbf67 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-29 23:35:09 +01:00
KHobbits
356c750c6f Properly handle tphere requests so the right user is in control/charged. 2012-09-29 23:34:46 +01:00
KHobbits
202fc901a9 Tidy Teleport file 2012-09-29 23:33:32 +01:00
KHobbits
f74f7910ff Merge pull request #161 from necrodoom/patch-11
update signs permission check
2012-09-29 13:52:07 -07:00
Necrodoom
8b89ffa965 update kit sign permission check 2012-09-29 15:57:31 +03:00
Necrodoom
a3aed7eb9b update warp sign permission check 2012-09-29 15:55:47 +03:00
KHobbits
8cadbed40b Should fix tpaccept charge bug - needs testing 2012-09-29 03:59:31 +01:00
KHobbits
c0721e7085 Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-09-28 23:01:32 +01:00
KHobbits
f4d95c0442 Add potion effect clearing on /heal - Chris Ward 2012-09-28 20:56:03 +01:00
KHobbits
eae2294673 Cleanup of god mode effects, suggested by gravypod. 2012-09-28 20:45:56 +01:00
KHobbits
0d59f78465 God mode cancel potion effects - Chris ward
Revert heal changes.
2012-09-28 20:35:13 +01:00
Necrodoom
4155eeb89c update potion aliases- add all unused potions
items.csv version 2.1_13
2012-09-28 17:02:43 +03:00
Paul A.
eae246dc90 Fix updating version on items.csv 2012-09-27 16:39:23 +02:00
Paul A.
291781a891 Merge pull request #156 from evonuts/patch-1
Minor spelling/grammatical fixes
2012-09-27 05:47:31 -07:00
evonuts
d097d9e04c Minor spelling/grammatical fixes 2012-09-28 00:42:25 +12:00
Paul A.
5e4e8081b6 Merge pull request #154 from necrodoom/patch-9
typo fix in config.yml as found by @Evonuts
2012-09-27 05:22:09 -07:00
Necrodoom
c5263dcc34 typo fix in config.yml 2012-09-27 15:19:14 +03:00
KHobbits
99f5f93e06 Remove debug comments. 2012-09-25 22:37:58 +01:00
KHobbits
931a76fb0f Handle negated wildcard perms in generic superperms 2012-09-25 22:21:15 +01:00
ElgarL
493b041704 Update users.yml to follow new ordering. 2012-09-25 20:41:16 +01:00
ElgarL
a4df448d23 No need for a new array. 2012-09-25 20:39:24 +01:00
ElgarL
48f502f679 Add alphabetically sorted user lists. 2012-09-25 13:23:19 +01:00
KHobbits
a357c7e5b5 Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-09-25 13:16:41 +01:00
ElgarL
5a137842e5 Change order of data in Users.yml to [name, Group, SubGroup,
Permissions, Info nodes].
2012-09-25 13:09:26 +01:00
ElgarL
b4a8f357bd Commenting 2012-09-25 11:27:36 +01:00
ElgarL
99a4f6d366 Fix javadocs 2012-09-25 11:25:19 +01:00
ElgarL
d7cecb1758 Minor typo fix - Necrodoom 2012-09-25 11:15:28 +01:00
KHobbits
611de7d725 Revert "Clean up imports"
This reverts commit 276cc71db0.
2012-09-24 23:04:33 +01:00
KHobbits
ebd6d03108 Improve fake sign check. 2012-09-24 23:01:58 +01:00
Paul A.
dd12013329 Merge pull request #151 from gravypod/patch-2
Clean up imports
2012-09-24 14:34:36 -07:00
KHobbits
0c8975db45 Envelope new drop/pickup/craft perms under 'essentials.build'. 2012-09-24 12:48:07 +01:00
KHobbits
c356e92287 Minor cleanup 2012-09-24 03:16:15 +01:00
gravypod
276cc71db0 Clean up imports 2012-09-23 22:06:39 -03:00
KHobbits
2bc87841d1 Fix and give better sign errors. 2012-09-24 00:19:39 +01:00
KHobbits
8745568a69 Less sign checking if certain signs aren't enabled. 2012-09-23 23:51:57 +01:00
KHobbits
378ed75ecc config typo. 2012-09-23 23:18:17 +01:00
KHobbits
f9a014a08b Minor colour change 2012-09-23 23:08:35 +01:00
KHobbits
8470b05a6c Move wildcard perm check to superperms handler, rather than being PEX specific. 2012-09-23 23:01:14 +01:00
KHobbits
fc5c0e3e7a Lower reporting level of metrics errors. 2012-09-23 18:08:43 +01:00
KHobbits
11c68e03b6 Support new lines in newbie welcome message. 2012-09-22 21:15:04 +01:00
KHobbits
8949cbc5fb Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9
Resolved Conflicts:
	EssentialsGroupManager/src/org/anjocaido/groupmanager/GlobalGroups.java
2012-09-22 20:44:45 +01:00
KHobbits
143d9d2089 Cleanup delhome to match normal home cases properly. 2012-09-22 20:43:27 +01:00
ElgarL
f9dafb06be Update warning in GlobalGroups - Necrodoom. 2012-09-22 19:51:38 +01:00
ElgarL
1dc93a7a85 - Fix Synchronization on adding subgroups (thanks snowleo).
- Remove info node support from GlobalGroups. It should not have them
as GlobalGroups are only permission collections.
2012-09-22 19:18:51 +01:00
KHobbits
daa517c5a2 Reset colour code at start of default broadcast msg. 2012-09-22 15:00:00 +01:00
KHobbits
a49570605a General demo txt formatting 2012-09-22 14:44:56 +01:00
KHobbits
ee647e1fae Clean chat colours. 2012-09-22 14:40:56 +01:00
KHobbits
416eee97ad Clean up the info.txt 2012-09-22 14:36:07 +01:00
KHobbits
f905ae8701 Merge pull request #148 from necrodoom/patch-7
fix info.txt colors and tags
I'll do a little manual cleanup.
2012-09-22 06:21:51 -07:00
KHobbits
71d39bc23b Possibly solve info writing issues in globalgroups
Editing this on the ess branch, cause i'm sure there is a better fix.
2012-09-22 04:35:55 +02:00
Necrodoom
0f2dda6b00 fix info.txt colors and tags 2012-09-21 18:09:30 +03:00
md_5
7f16a6834a Check for explicit * permission when using PEX. 2012-09-21 19:53:20 +10:00
KHobbits
b9ea270cd2 Update config.yml to show multiple enchantments for kits. 2012-09-21 02:10:39 +01:00
KHobbits
53fdc3e408 Make sure we check for wildcards in PEX 2012-09-20 20:36:07 +01:00
KHobbits
f95d1faae1 Switch pex permissions checks to use superperms rather than direct api call. 2012-09-20 20:21:45 +01:00
KHobbits
27ea33d82b ignoreCancelled events. 2012-09-19 21:07:50 +01:00
KHobbits
654e70e436 New Permission:
essentials.build.pickup.<id>[:<datavalue>] - Allows collecting of an item
essentials.build.drop.<id>[:<datavalue>] - Allows dropping of an item
2012-09-19 20:57:06 +01:00
KHobbits
1b91705d50 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-19 19:48:14 +01:00
KHobbits
2f4f510af1 New Permission:
essentials.build.craft.<id>[:<datavalue>] - Allows crafting of an item
2012-09-19 19:47:47 +01:00
md_5
d8f6c31cd2 Self indulgent commit. Door should be an alias for wood door. 2012-09-17 21:55:52 +10:00
KHobbits
fd79120929 Hide Protection sign option. 2012-09-17 11:29:16 +01:00
KHobbits
1c7cc88ff5 Fix a few minor text formatting issues. 2012-09-16 20:45:33 +01:00
KHobbits
2f488c9a23 Config file permissions cleanup
Removed deprecated 'restricted-commands' section.
Deprecated 'superperms' toggle.
Remove op override on essentials permissions.
Give op's all permissions by default via superperms.
2012-09-16 20:27:35 +01:00
KHobbits
af2ebce3a4 Merge pull request #146 from necrodoom/patch-6
update dualbit, fix strength, add swift aliases
2012-09-16 08:48:16 -07:00
Necrodoom
82487fb383 update dualbit, fix strength, add swift aliases
items.csv version 2.1_12
2012-09-16 18:46:46 +03:00
md_5
7d427ae0b5 Merge remote-tracking branch 'origin/groupmanager' into 2.9 2012-09-16 23:02:56 +10:00
Iaccidentally
7698f3d9af Update Essentials/src/plugin.yml
updating SKYNET
2012-09-15 21:07:42 -03:00
KHobbits
006d445bd3 Missing tl key. 2012-09-15 22:06:42 +01:00
KHobbits
bc0f5e76ae Add server uptime to /gc 2012-09-15 22:04:18 +01:00
KHobbits
bb0ff457f6 Add missing TL key
Fixes #1363
2012-09-15 21:16:31 +01:00
KHobbits
1b73efef86 Allow bans on players who have never connected. 2012-09-15 20:57:44 +01:00
KHobbits
40da0b735d Reduce the enchantment list some more. 2012-09-15 20:29:29 +01:00
KHobbits
d8c9ca163b Fix Essentials /sethome to more strictly obey home limits. 2012-09-15 19:55:12 +01:00
KHobbits
826b18153a /ess reset <player> - Clears stored data about a user. 2012-09-14 02:30:24 +01:00
KHobbits
1708071eb6 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-14 01:11:04 +01:00
KHobbits
22e2b48f9a Fixed jail extend message - xGhOsTkiLLeRx 2012-09-14 01:10:22 +01:00
KHobbits
2c6b461d0e Update Essentials/nbproject/project.properties
Accidentally added unneeded line...
2012-09-14 02:01:02 +02:00
KHobbits
0368b57034 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-14 00:59:25 +01:00
KHobbits
89cc945e23 Don't create empty user files 2012-09-14 00:58:57 +01:00
KHobbits
93c5a7387d Merge pull request #141 from DerFlash/2.9
Fix problems with async chat event not sending messages to xmpp chat spy
2012-09-13 06:21:11 -07:00
DerFlash
2ad9104d72 Fix problems with async chat event not sending messages to xmpp chat spy 2012-09-13 14:57:02 +02:00
KHobbits
c40f9b6e17 remove users from bperm example, different yml file now. 2012-09-13 01:50:55 +01:00
KHobbits
4568cbea50 Update bpermissions example 2012-09-13 01:46:23 +01:00
ElgarL
8967839e6d Remove unused imports. 2012-09-11 11:12:19 +01:00
KHobbits
77e80296e1 Couple extra /info aliases. 2012-09-11 05:05:55 +01:00
KHobbits
9a7352b6cf Less strict matching on /realname 2012-09-11 01:07:31 +01:00
KHobbits
906f2506db Make /realname throw an error if no matches were found 2012-09-11 00:53:32 +01:00
snowleo
ed75ae3030 Missing final 2012-09-10 20:53:25 +02:00
snowleo
e02a0de520 Thread safety for GM 2012-09-10 20:49:07 +02:00
snowleo
128540b51e Revert bad synchronization
This reverts commit 9544bc35df.
2012-09-10 19:06:17 +02:00
ElgarL
f483545bbb Synchronize the world data holder. 2012-09-10 17:46:01 +01:00
KHobbits
0250f74fb4 Patch flight disable, to not effect creative mode.
Full world change config still needs coding.
2012-09-10 01:13:30 +01:00
KHobbits
9cf146a789 Fixing map/ironore bug. 2012-09-10 01:10:32 +01:00
ElgarL
9544bc35df Change to Hashtables to reduce the chance of a
ConcurrentModificationException pulling group/user data in an Async
thread.
2012-09-10 00:15:42 +01:00
KHobbits
e323af32d8 Little bit extra sanity checking. 2012-09-09 20:13:03 +01:00
KHobbits
0b2b514fd5 Move auto afk permission to 'essentials.afk.auto' 2012-09-09 19:09:35 +01:00
KHobbits
406dda2d6f Fixing locale typo. 2012-09-09 18:35:20 +01:00
KHobbits
c4681e0cf7 Fix Missing TL key 2012-09-09 17:10:26 +01:00
KHobbits
c2c8c41df5 Change default op colour 2012-09-09 16:55:43 +01:00
KHobbits
001f3629e6 More message cleanup 2012-09-09 16:52:45 +01:00
KHobbits
da9b438028 Manual merge necrodoom enchant changes. 2012-09-09 16:29:38 +01:00
KHobbits
19f3dca231 Two sets of enchantment aliases. 2012-09-09 16:27:22 +01:00
KHobbits
cec92f3085 More message cleanup 2012-09-09 16:15:12 +01:00
KHobbits
de72875aea Missing TL keys 2012-09-09 15:50:22 +01:00
KHobbits
8ce63c1073 Few more message tweaks. 2012-09-09 15:27:25 +01:00
KHobbits
b4fc91db39 If chat event doesn't resolve to valid player, cancel and exit. 2012-09-09 06:36:14 +01:00
KHobbits
8f22262d92 Message cleanup. 2012-09-09 05:41:06 +01:00
KHobbits
938aa05776 Update some of the example permissions files for the perm changes. 2012-09-08 23:00:57 +01:00
KHobbits
55c4700eee Move the per world permissions:
essentials.world.worldname is moved to essentials.worlds.worldname
2012-09-08 22:50:20 +01:00
KHobbits
498ae85348 Log to console the effects of /sudo 2012-09-08 21:10:26 +01:00
KHobbits
11147706f6 Remove dead setting.
Fixes #2465
2012-09-08 20:41:38 +01:00
KHobbits
e684e2f0f3 Move the per kit and warp permissions:
essentials.kit.kitname is moved to essentials.kits.kitname
essentials.warp.warpname is moved to essentials.warps.warpname
2012-09-08 20:32:48 +01:00
KHobbits
9e5b105bcc Look out for nulls. 2012-09-08 18:41:21 +01:00
KHobbits
28f9bbd1ce Make /itemdb command list the 15 shortest item.csv names for said item.
This will be useful when making eco signs.
2012-09-08 18:33:06 +01:00
KHobbits
0ab8efbb19 Fix /itemdb showing 'uses left' on none held items. 2012-09-08 16:33:00 +01:00
KHobbits
1725a235ee Fix compile error. 2012-09-08 16:03:54 +01:00
KHobbits
684e6c06fb Async EssentialsSpawn join event, like the others. 2012-09-08 14:55:37 +01:00
KHobbits
c3228f1bd6 New Permission: essentials.god.pvp
Unless you have this permission you will be unable to attack other players while in god mode.
2012-09-08 14:51:03 +01:00
KHobbits
45135e4b63 Give user chance to get display name set before displaying geoip. 2012-09-08 14:40:19 +01:00
KHobbits
4ceaf2183b Potential fix for teleporting issue. 2012-09-08 14:30:11 +01:00
KHobbits
9f21a0d42e Switch default antibuild status to false. Antibuild toggling shouldn't be an issue with it as a stand alone plugin. 2012-09-08 14:11:12 +01:00
snowleo
2aa1bbefcb Fix ConcurrentModification bugs
This will probably slow down any access to config
2012-09-07 18:33:28 +02:00
Iaccidentally
f6455b44be Update Essentials/src/com/earth2me/essentials/commands/Commandburn.java
typo fix
2012-09-04 00:16:23 -03:00
KHobbits
3a0bac99ce Catch null eco symbol. 2012-09-02 20:17:28 +01:00
KHobbits
a6b11592f5 More error on 'Permissions system error' in debug mode. 2012-09-02 18:30:59 +01:00
KHobbits
bac60b2e8a Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-02 18:11:54 +01:00
KHobbits
d26a581775 Update /kit delay to use updated yaml code. 2012-09-02 18:11:29 +01:00
KHobbits
2242ed2886 Merge pull request #136 from necrodoom/patch-3
update enchants with 3-1 letter aliases
2012-09-02 07:51:29 -07:00
KHobbits
d9f4ef38ca Add support for /gamemode toggle | /gamemode t and /gmt to toggle between the 3 gamemodes. 2012-09-02 06:54:58 +01:00
KHobbits
83dc0d6628 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-09-02 01:57:10 +01:00
Iaccidentally
ad8f7bca3e fix burn matching all players 2012-09-01 16:40:49 -04:00
Necrodoom
a1e494a894 update enchants with 3-1 letter aliases 2012-09-01 10:33:20 +03:00
KHobbits
9789378411 Another Config tweak. 2012-08-31 22:31:56 +01:00
KHobbits
c02966258c Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-08-31 22:28:21 +01:00
KHobbits
fd5b77324e Config file tweaks 2012-08-31 22:26:26 +01:00
ElgarL
ee10e8c7fc Include the GM version when logging errors. 2012-08-31 21:56:46 +01:00
ElgarL
2f6dd238b1 Give a better error when a subgroup is null. 2012-08-31 21:47:35 +01:00
KHobbits
70c9bf56d2 Fix powertool command logging. 2012-08-31 18:52:40 +01:00
KHobbits
19043fecf6 Don't need built in command logger anymore. 2012-08-31 18:44:14 +01:00
KHobbits
d8cabedb59 Sanity Check. 2012-08-31 17:57:57 +01:00
KHobbits
07906c9bbf Add missing repair cost check on /repair hand 2012-08-31 17:54:10 +01:00
KHobbits
8bb202fca6 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-08-31 17:48:25 +01:00
KHobbits
48f704e047 Reduce the number of permissions checks in command cost lookups
Add support for item number repair costs (repair-123: 120)
Ess charge api supports nested charges.
Slight kit optimization.
2012-08-31 17:48:07 +01:00
KHobbits
17a4f04ccb Merge pull request #134 from necrodoom/patch-16
clear whitespace in globalgroups.yml
2012-08-31 06:48:07 -07:00
Necrodoom
a3ff7da1c1 clear whitespace in globalgroups.yml 2012-08-31 16:40:25 +03:00
KHobbits
13877531c4 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-08-31 14:09:44 +01:00
KHobbits
a1c77138e6 Fix metrics when kits are improperly configured. 2012-08-31 14:09:20 +01:00
Paul A.
5751977cb8 Update Essentials/src/config.yml
More grammar from Evonuts
2012-08-31 12:30:40 +02:00
Paul A.
817c7b751c Update Essentials/src/config.yml
Grammar update thanks to Evonuts
2012-08-31 11:37:10 +02:00
KHobbits
651343f187 Fix painting break in antibuild. 2012-08-31 06:06:33 +01:00
KHobbits
2a45afec68 Fix IllegalStateException in sign click patch
Cleanup
2012-08-31 00:47:53 +01:00
KHobbits
deb79b7478 Fix min bukkit version warning. 2012-08-30 23:28:16 +01:00
KHobbits
db0d944e2a Reset fly/speed on world change
This will be optional in a future version - Discuss http://goo.gl/Vuh4N
2012-08-30 23:13:50 +01:00
KHobbits
e43adf229b Update chat formatting to use &r instead of &f 2012-08-30 20:43:33 +01:00
KHobbits
6542377a89 Clear up overriding comments on config file.
Closes #2725
2012-08-30 19:19:03 +01:00
KHobbits
9fe4664db6 Merge pull request #133 from necrodoom/patch-15
clarify some things on config
2012-08-30 10:08:38 -07:00
Necrodoom
3abc26a8bc minor fix 2012-08-30 19:00:53 +03:00
Necrodoom
1735d53eb5 clarify some things on config 2012-08-30 18:58:43 +03:00
KHobbits
f29010257d Merge pull request #131 from necrodoom/patch-14
update pork aliases
2012-08-29 08:22:04 -07:00
Necrodoom
02c0781592 update pork aliases
items.csv version 2.1_11
2012-08-29 16:51:38 +03:00
KHobbits
dcf13efdbd Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-08-28 03:12:16 +01:00
KHobbits
115aa9b1d4 Fix CB. 2012-08-28 03:08:06 +01:00
KHobbits
b4c206cd1d Merge branch '2.9' into release 2012-08-28 03:05:13 +01:00
KHobbits
dd6a428db2 Update CB :: Bukkit 1536 || Craftbukkit 2352 (1.3.2-R0.1) 2012-08-28 03:01:49 +01:00
KHobbits
6d35416d8f Merge branch '2.9' of github.com:essentials/Essentials into release 2012-08-28 02:55:02 +01:00
KHobbits
e5adafa81f If both freeze-afk-players and cancel-afk-on-move is turned on, cancel AFK on player jump. 2012-08-28 02:50:59 +01:00
KHobbits
d3accebefd Disable AFK when player damages entity. 2012-08-28 02:24:01 +01:00
KHobbits
d88dcbea50 Manually merge Nickshelton80's alias change. 2012-08-28 02:08:58 +01:00
KHobbits
3efe3a1204 Handle jail teleport locations slightly better. 2012-08-28 02:06:11 +01:00
KHobbits
ca90700daa Optimize AntiBuild a little
Support item name deny messages in antibuild.
2012-08-28 01:38:16 +01:00
KHobbits
b30fc24513 Fix minor typo in plugin.yml
Remove 'essentials.interact' permission from antibuild - Not needed
2012-08-27 23:59:29 +01:00
KHobbits
bbb2c6d832 Remove max walk option to config, until its fixed in the client. 2012-08-27 03:09:56 +01:00
KHobbits
b1fb1588f4 Missing [player] param syntax on /afk 2012-08-26 20:26:06 +01:00
KHobbits
3575afd597 Comment out/remove the /speed walk code, until the client properly supports this function. 2012-08-26 19:53:58 +01:00
KHobbits
4fdccb1e2d New command /speed [walk|fly] <speed> [player]
New permissions:
essentials.speed = access to the command
essentials.speed.others = ability to change the speed of another player
essentials.speed.bypass = override max speed limits in config.yml
New config options:
max-fly-speed
max-walk-speed
2012-08-26 19:35:39 +01:00
KHobbits
5050c3967e More work on /fly command - Still incomplete
Updated and fixed messages files for missing keys.
2012-08-26 17:16:22 +01:00
KHobbits
af55238916 Updated Spanish Translation 2012-08-26 00:36:35 +01:00
KHobbits
28e568433e Foundation for speed command - not yet implemented. 2012-08-25 19:23:41 +01:00
KHobbits
b9bca0ed8f Add AntiBuild to Metrics. 2012-08-25 16:57:36 +01:00
KHobbits
1e222ab1a6 Don't check for loan permission is there is no cost. 2012-08-22 09:12:38 +01:00
KHobbits
dda2f07ed7 New perm: essentials.kit.exemptdelay
Allows you to exempt from kit delays.
2012-08-22 00:27:33 +01:00
ElgarL
221ccc498d iacc's anal 2012-08-21 21:28:26 +01:00
KHobbits
304ef82d60 Remove debug messages. 2012-08-21 20:45:27 +01:00
KHobbits
c9c0c84721 New command: /enderchest [player] (alias /endersee and /echest)
This command lets you look inside your or another players enderchest
New Permissions:
essentials.enderchest - Access to the command
essentials.enderchest.others - Lets you look at other enderchests
essentials.enderchest.modify - Lets you modify other enderchests
2012-08-21 20:44:09 +01:00
KHobbits
a53745c3ba Update CB
Bukkit 1533 || Craftbukkit 2345 (1.3.1-R2.1)
2012-08-21 19:56:14 +01:00
KHobbits
bcf092c26a Merge branch '2.9' into release 2012-08-21 19:34:26 +01:00
KHobbits
aa2fdf7b40 Reorder perm check in antibuild 2012-08-20 08:41:22 +01:00
KHobbits
cc3591564d Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-08-19 23:42:05 +01:00
KHobbits
1bc0b8a97d Merge branch 'antibuild' into 2.9 2012-08-19 23:41:28 +01:00
KHobbits
f0f37a1671 Reduce permissions checks in antibuild.
Add a little debug logging for those with it enabled.
2012-08-19 21:20:55 +01:00
KHobbits
224e1bc115 Merge pull request #124 from necrodoom/patch-11
patch ID 322 and update ID 260
2012-08-19 12:52:32 -07:00
KHobbits
46222e1a2d Correct antibuild perm check
(still need to abort interact/use checks on block place)
2012-08-19 16:08:36 +01:00
KHobbits
2b52d11ca7 Attempt to add support for metadata permissions. 2012-08-19 15:25:40 +01:00
KHobbits
5432f046e1 Split Ess protect into EssProtect and EssAntiBuild
New permissions:
essentials.build - same as build: true
essentials.build.interact.<id> - whitelist single interact block
essentials.build.place.<id> - whitelist single place block
essentials.build.break.<id> - whitelist single break block
essentials.build.use.<id> - whitelist single use item
2012-08-19 14:54:58 +01:00
ElgarL
343cb169ef No more null errors from corrupt config.yml's. 2012-08-19 14:49:16 +01:00
necrodoom
246b978ff5 patch ID 322 and update ID 260
items.csv version 2.1_10
2012-08-19 09:50:19 +03:00
KHobbits
2c965ce9ae Add some command cost debugging messages to /ess debug 2012-08-19 03:38:09 +01:00
KHobbits
0d13dc757d Slightly more realistic worth prices. 2012-08-19 02:49:32 +01:00
KHobbits
7c833e700f Tidy the worth file formatting. 2012-08-19 02:25:30 +01:00
KHobbits
46b136e4e2 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-08-18 16:10:36 +01:00
Iaccidentally
fca82e7a26 Merge pull request #123 from necrodoom/patch-9
fix ID 2259, pointed out by tanite
2012-08-18 07:59:16 -07:00
KHobbits
7a890c9e5c Removing EssentialsUpdate from 2.9 branch.
Development may be continued in 3.x branch.
2012-08-18 15:51:55 +01:00
KHobbits
426d0093d2 Remove 3.x api migration code.
3.x development was moved to different code branch.
Removing deprecated warnings, since it would be silly to deprecate ALL classes.
2012-08-18 15:48:29 +01:00
KHobbits
530a519118 Fix /warp command matching in console. 2012-08-18 15:25:14 +01:00
necrodoom
fa6fa88247 fix ID 2259, pointed out by tanite
items.csv version 2.1_09
2012-08-18 10:22:12 +03:00
Iaccidentally
c1bdeb0900 Merge pull request #122 from necrodoom/patch-8
update IDs: 5,6,17,18 - erase unused and add new
2012-08-15 01:20:40 -07:00
necrodoom
53a51b2d59 update IDs: 5,6,17,18 - erase unused and add new
items.csv version 2.1_08
2012-08-15 10:39:34 +03:00
ElgarL
73ebd8a24a Fix an error with Logging set to 'OFF' triggering a cast exception. 2012-08-14 13:26:02 +01:00
Iaccidentally
b54fb4ad52 Merge pull request #121 from necrodoom/patch-6
few extra fixes to several ID item name aliases
2012-08-13 01:17:22 -07:00
necrodoom
36b88174cb few extra fixes to several IDs
items.csv version 2.1_07
2012-08-13 10:03:39 +03:00
Iaccidentally
e94122faf7 add spruce/pine tree to items.csv 2012-08-13 01:45:10 -04:00
KHobbits
dbc49d416f Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-08-13 02:33:09 +01:00
KHobbits
84f0f0a971 Try and prevent 'corrupt' messages files from breaking essentials. 2012-08-13 02:32:45 +01:00
snowleo
def188b94e Fix encoding of swedish locale 2012-08-13 01:36:39 +02:00
KHobbits
8366724d44 Update Essentials/src/items.csv 2012-08-13 01:19:10 +02:00
KHobbits
13617df0c6 Update Essentials/src/items.csv 2012-08-13 01:15:53 +02:00
KHobbits
9b55f8b562 Merge pull request #115 from necrodoom/patch-3
grammar check on plugin.yml
2012-08-11 18:08:50 -07:00
KHobbits
5c6d1a2eb4 Add command name matching to /gamemode
This allows aliases such as /gmc and /creative [player] to be used without stating gamemode as a parameter.
2012-08-12 01:13:52 +01:00
KHobbits
3a115000c9 Improve player matching in /gamemode
Add extra aliases to /gamemode
2012-08-12 01:12:10 +01:00
Iaccidentally
0a72669ac7 fix name length check in /kill 2012-08-10 07:17:05 -04:00
Iaccidentally
b81e834b4b fix msg and pay to accept 2 character names 2012-08-10 06:54:42 -04:00
KHobbits
38503e4dcf Throw warning when using /kill without valid player. 2012-08-10 02:40:05 +01:00
KHobbits
389884debf Add console log message when player is /kicked 2012-08-10 02:35:05 +01:00
KHobbits
f28d874ffb Add console log message when player is /banned 2012-08-10 02:27:10 +01:00
KHobbits
b5452d14c5 Fix yaml issue with /kit 2012-08-10 02:26:23 +01:00
KHobbits
b2f75664a7 Fix Chat Formatting so chat type is shown first. 2012-08-09 13:11:51 +01:00
Iaccidentally
8868e9f6b1 Merge pull request #117 from necrodoom/patch-5
items.csv update with ticket #2559 suggestions
2012-08-09 02:07:13 -07:00
necrodoom
659518dcb7 items.csv update with ticket #2559 suggestions
items.csv 2.1_06
2012-08-09 10:24:07 +03:00
KHobbits
47bf14b6d3 Merge branch 'release' of github.com:essentials/Essentials into release 2012-08-08 23:13:56 +01:00
KHobbits
9e28b3d76f Merge branch '2.9' into release 2012-08-08 23:13:33 +01:00
KHobbits
2d03da39ab Fix /top so that glass counts as a real block. 2012-08-08 23:00:09 +01:00
KHobbits
dda4082639 Fix tp permissions check to check player typing command not teleportee.
If you don't want players inviting players to other worlds, do not give them essentials.world.<currentworld>
2012-08-08 22:50:54 +01:00
snowleo
a499d16679 Merge branch 'refs/heads/2.9' into release 2012-08-08 14:22:13 +02:00
snowleo
a0be5640dd Correct material for beds 2012-08-08 14:21:25 +02:00
snowleo
3e96e47c1d Merge branch 'refs/heads/2.9' into release 2012-08-08 14:14:42 +02:00
snowleo
739a93f9ea Fix right click on signs 2012-08-08 14:11:40 +02:00
snowleo
dce47bcec7 Test the places around the location first, then go up 2012-08-08 13:13:39 +02:00
necrodoom
ed97ed97eb sets, not setting 2012-08-08 11:32:21 +03:00
snowleo
cd34c2b2c3 Fix teleports on beds 2012-08-08 10:16:06 +02:00
KHobbits
e7ca200a9f Merge branch 'release' of github.com:essentials/Essentials into release 2012-08-08 02:11:04 +01:00
KHobbits
8573a3827d Merge branch '2.9' into release 2012-08-08 02:10:25 +01:00
KHobbits
2164013c52 Fix minor Exp discrepancy
Add 'l<level>' syntax to /exp command
EG: /exp set l20
2012-08-08 02:07:47 +01:00
KHobbits
a9e527f4ee Fix /day /night /sun and /storm aliases to actually set to the current status if used without parameters.
fixes #2365
2012-08-08 00:52:43 +01:00
KHobbits
bdeb93a8d7 Don't show two error messages on [kit] signs.
Fixes #2508
2012-08-08 00:14:07 +01:00
snowleo
bb79c07a17 Merge branch 'refs/heads/2.9' into release 2012-08-07 21:11:34 +02:00
snowleo
d415aa7cf2 Merge branch 'refs/heads/groupmanager' into 2.9 2012-08-07 20:13:27 +02:00
ElgarL
6ee9c8f8ec Better error report on malformed GlobalGroups. 2012-08-07 17:58:57 +01:00
snowleo
096275a424 Merge branch 'refs/heads/2.9' into release 2012-08-07 17:45:40 +02:00
snowleo
7ea2f550db Prevent errors in listeners affecting EssentialsChat 2012-08-07 16:03:39 +02:00
Alexander Schepp
39cefac61c Merge pull request #114 from necrodoom/patch-2
another extra space
2012-08-07 05:44:23 -07:00
necrodoom
dd1250143b another extra space 2012-08-07 15:27:25 +03:00
md_5
d5a563ca9e Clean up spaces in config. Please don't break this in the future, this is the second fix guys. 2012-08-07 20:39:55 +10:00
Iaccidentally
4fad643cf7 Merge pull request #112 from necrodoom/patch-1
update permissions to include new nodes
2012-08-07 01:34:34 -07:00
necrodoom
2326e30c2a update with new workbench node 2012-08-07 11:07:52 +03:00
necrodoom
1c453728ab update permissions to include new nodes 2012-08-07 11:04:01 +03:00
KHobbits
e8641b25f3 Merge branch '2.9' of github.com:essentials/Essentials into release 2012-08-07 08:55:35 +01:00
KHobbits
973c6d5e5e Fix CB. 2012-08-07 08:52:57 +01:00
KHobbits
b25e8bd1dd Merge branch '2.9' into release 2012-08-07 08:50:06 +01:00
KHobbits
df1050b006 Updating CB:
CB: 2317 Bukkit 1521
2012-08-07 08:49:09 +01:00
KHobbits
dbf60c41d2 Merge branch '2.9' of github.com:essentials/Essentials into release 2012-08-07 08:45:16 +01:00
snowleo
0cacc10c31 Merge branch 'refs/heads/groupmanager' into 2.9 2012-08-06 18:25:55 +02:00
ElgarL
b1d174292d Fix GlobalGroups not loading permission nodes. 2012-08-06 17:15:56 +01:00
snowleo
848ee76eab Just don't use nio, this might be slower. 2012-08-06 15:57:54 +02:00
Iaccidentally
034b83223c update gc for all worlds (thanks to Yofel) 2012-08-06 06:54:55 -04:00
KHobbits
4f244b0e5c Merge branch 'groupmanager' of github.com:essentials/Essentials into 2.9 2012-08-06 09:17:19 +01:00
ElgarL
03133fac97 Ignore stupid plugins which add empty permission nodes. 2012-08-06 07:05:20 +01:00
KHobbits
41c97c4e87 Don't bomb if userMap isn't initialized. 2012-08-06 02:44:01 +01:00
KHobbits
ce98f7758e New Sign: Info
Syntax: [info] / [chapter] / [page number] / [cost]
2012-08-06 00:58:35 +01:00
KHobbits
5ca9a70d78 New Sign: Repair
Syntax: [repair] / <hand|all> / [cost]
2012-08-06 00:33:29 +01:00
KHobbits
5bb4de0ab7 New command: /workbench (aliases /wb and /wbench)
Permission: essentials.workbench
2012-08-06 00:26:42 +01:00
KHobbits
a046200cb2 Default value for [gamemode] sign
New syntax: [gamemode] / <mode>  / [price]
2012-08-06 00:23:47 +01:00
snowleo
e9f924e397 I should read javadoc properly. 2012-08-06 00:55:25 +02:00
snowleo
17ceb04541 Move FileChannel inside the loop 2012-08-05 20:16:53 +02:00
snowleo
c238ad213a Throw exception after 5 attempts 2012-08-05 19:50:37 +02:00
snowleo
71b3f7d631 Try to fix interrupt problem. 2012-08-05 19:41:28 +02:00
Alexander Schepp
125977c899 Fix /gamemode 2 playername 2012-08-04 14:17:41 +03:00
Iaccidentally
d06102b76e i'm in ur config, fixxn ur grammer 2012-08-04 06:56:10 -04:00
Iaccidentally
af1312bc9c I am a grammar nazi. 2012-08-04 07:40:54 -03:00
snowleo
be11f840b4 More thread safety 2012-08-04 11:10:57 +02:00
snowleo
873cc26b7d Thread safety for XMPP 2012-08-04 10:48:56 +02:00
ementalo
bb5e0b4a72 CB #2289 Bukkit #1512
Change PlayerChatEvent to AsyncPlayerChatEvent
2012-08-04 09:25:54 +01:00
snowleo
1a0667f659 Make chat handling more thread safe (and also faster) 2012-08-03 22:57:29 +02:00
snowleo
0dee3528c7 Synchronized chatStore 2012-08-03 21:45:32 +02:00
ElgarL
cdcbf2057e Fix mirroring now we are not using any Bukkit methods. 2012-08-03 11:15:14 +01:00
ElgarL
5e07ae3010 Stop using the YamlConfiguration in bukkit for our config handling. We
can now support periods in world names.
2012-08-03 10:36:26 +01:00
snowleo
f660c8fdf7 Ignore case on /gm command 2012-08-03 10:41:23 +02:00
snowleo
1f740d98d9 Code cleanup 2012-08-03 10:39:45 +02:00
snowleo
ba1431bf2a Ignore case on gamemode signs and code cleanup 2012-08-03 10:36:50 +02:00
snowleo
5c78044079 Less loops please 2012-08-03 10:33:45 +02:00
snowleo
1b2bc92d67 Another fix for /exp 2012-08-03 10:29:22 +02:00
snowleo
402ff66762 New exp calculations. 2012-08-03 10:21:03 +02:00
snowleo
f2717a27c0 Fix broken output of /itemdb 2012-08-03 10:02:47 +02:00
ElgarL
b7cf9d5681 Fix a cases sensitivity bug in world loading. 2012-08-03 08:54:06 +01:00
snowleo
a9639782b6 Netbeans 7.2 changes 2012-08-03 09:45:44 +02:00
Iaccidentally
41d91ae15b Merge branch '2.9' of https://github.com/essentials/Essentials 2012-08-02 20:30:09 -04:00
Iaccidentally
d625eeae30 update 2.9 item.csv for 1.3 (changes by necrodoom) 2012-08-02 20:29:09 -04:00
ementalo
3e61d4589f Switching the syntax of gamemode /gm mode player and adding mode aliases
Fixing translation keys
Fix plugin.yml gamemode syntax
2012-08-02 17:43:58 +01:00
ementalo
7e766818f9 CB #2267 Bukkit #1505
Updates to gamemode command, mode is now mandatory [creative|survival|adventure]
Updates to gamemode sign, now requires another line with gamemode
2012-08-02 13:52:11 +01:00
Paul A.
079ed0d2da Check the player we are bringing has permission to enter the world vs the initiating user the final frontier 2012-08-01 16:04:13 +02:00
Paul A.
dcc53cbf30 re: re: Check the player we are bringing has permission to enter the world vs the initiating user 2012-08-01 15:56:58 +02:00
Paul A.
452c2be54d Check the player we are bringing has permission to enter the world vs the initiating user part 4 2012-08-01 15:55:04 +02:00
Paul A.
41a9f93ab6 Check the player we are bringing has permission to enter the world vs the initiating user 2012-08-01 15:53:30 +02:00
Paul A.
9060faa351 Check the player we are bringing has permission to enter the world vs the initiating user 2012-08-01 15:52:55 +02:00
Paul A.
4136d9aaea Check the player we are bringing has permission to enter the world vs the initiating user 2012-08-01 15:50:28 +02:00
Alexander Schepp
b35449f1fd Fix "x times" on signs. 2012-07-31 13:13:18 +03:00
Iaccidentally
2b3ab23367 Merge branch '2.9' of https://github.com/essentials/Essentials 2012-07-29 14:23:36 -04:00
Iaccidentally
5039333974 KeepXp fixed. 2012-07-29 14:20:09 -04:00
KHobbits
a49218a718 Merge branch '2.9' of github.com:essentials/Essentials into 2.9 2012-07-29 17:16:10 +01:00
KHobbits
6542b7b7e9 Recommit Keep Exp on death permission
Permission: essentials.keepxp
Code by Iaccidentially.
2012-07-29 17:15:44 +01:00
Alexander Schepp
6f77466f3a Prevent that Essentials breaks other plugins signs 2012-07-28 00:26:04 +03:00
KHobbits
b0614fda60 Revert optimization, doesn't find glass blocks. 2012-07-17 21:05:13 +01:00
KHobbits
b4e75f0c0b Add small optimization tweak to new safe block function. 2012-07-17 01:28:20 +01:00
KHobbits
b6f73ddb3c Remove debugging messages. 2012-07-17 00:47:23 +01:00
KHobbits
323288dd44 Try to do a little better when searching for safe teleport locations. 2012-07-17 00:46:07 +01:00
KHobbits
bbd14453b7 Merge pull request #101 from chrisgward/patch-1
Adding enchantment aliases for fire protection
2012-07-15 10:13:33 -07:00
Chris Ward
a98abba39d Adding enchantment aliases for fire protection 2012-07-15 19:47:53 +10:00
ElgarL
94b6f8f17c Fix a typo because Necrodoom is anal. 2012-07-13 16:22:52 +01:00
ElgarL
0e85f0f0be Change to our own Yaml parsing for globalgroups instead of using the
YAMLConfiguration class in bukkit.
2012-07-13 13:38:53 +01:00
snowleo
f37199f988 Fix version in messages_se.properties 2012-07-11 13:22:44 +02:00
snowleo
cb9afeb125 Added swedish translation (from 3.0 branch) 2012-07-11 13:18:54 +02:00
KHobbits
05694b8140 Add missing triggers from /mute block list 2012-07-11 02:46:45 +02:00
ElgarL
2235364711 If a permission is found return the correct node for mangcheckp (not
null).
2012-07-10 14:35:08 +01:00
ElgarL
dfaa1db76f Merge branch 'groupmanager' of
https://ElgarL@github.com/essentials/Essentials.git into groupmanager

Conflicts:
	EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java
2012-07-10 14:27:50 +01:00
ElgarL
2ecddaa46e Stop force removing attachments and let Bukkit handle it's own mess. 2012-07-10 14:10:13 +01:00
Alexander Schepp
9e819f7de3 Ignore players, that don't have an IP 2012-07-10 15:57:49 +03:00
Alexander Schepp
fbd83d527b Another NPE fix for bots 2012-07-10 15:56:12 +03:00
md-5
6503e49d4d Merge pull request #96 from mbax/groupmanager
Fix critical flaw in permissions removal with regards to fake players and Tekkit.
2012-07-10 02:25:56 -07:00
Matt Baxter
733eaf7453 Fix critical flaw in permissions removal.
Potential for removing the removal entirely but this can be figured out later.
2012-07-10 06:24:17 -03:00
ElgarL
3767df465f Throw a better error than 'null' when someone removes all groups from a
yml.
2012-07-06 08:33:57 +01:00
ElgarL
ce0fdbb5cb Ignore any sub folders in the Worlds folder which start with a period
(fix for storing data in svn respoitories).
2012-07-04 11:32:17 +01:00
Iaccidentally
272988299c Update 2.9 2012-07-03 04:50:29 -03:00
KHobbits
73693ea072 Update 2.9 2012-07-01 16:40:48 +02:00
md_5
a243082c3f Fix issue with cross world local chat. 2012-06-26 18:13:53 +10:00
ementalo
afb8cfc042 Revert "add essentials.keepxp to allow a player to keep their level after death."
This reverts commit 5d9806ad96.
2012-06-25 21:40:22 +01:00
Iaccidentally
5d9806ad96 add essentials.keepxp to allow a player to keep their level after death. 2012-06-24 23:27:30 -04:00
ElgarL
1e880373d4 Fix loading users with only numerals in their names to be seen as
strings.
2012-06-24 13:10:22 +01:00
KHobbits
50ffc2ce78 Merge branch 'master' of github.com:essentials/Essentials into release 2012-06-23 13:47:32 +01:00
KHobbits
5078cfebc9 Revert "fix /back resetting on logout"
This is desired behavior, and required for other features.
This reverts commit db08af3c07.
2012-06-23 13:33:36 +01:00
md-5
4b07be4bb8 Merge pull request #89 from necrodoom/patch-7
major slab alias expansion for items.csv
2012-06-23 02:07:34 -07:00
necrodoom
e26fb4a985 major slab alias expansion for items.csv 2012-06-23 12:02:28 +03:00
Alexander Schepp
d3de38cb66 Too much space :D 2012-06-22 20:12:56 +03:00
Alexander Schepp
89acbca412 Prevent NPEs in KeywordReplacer 2012-06-22 19:16:40 +03:00
ElgarL
2b3a1b3778 Only output a Data update message if something has changed. 2012-06-22 15:44:04 +01:00
Iaccidentally
db08af3c07 fix /back resetting on logout 2012-06-22 03:44:19 -04:00
md-5
47e73206df Merge pull request #88 from SyntaxBlitz/master
Fix /vanish with no arguments doing nothing
2012-06-21 04:31:18 -07:00
Timothy Aveni
1f30404ebf Fix /vanish with no arguments doing nothing 2012-06-21 06:17:26 -04:00
md-5
f4505b287f Merge pull request #87 from necrodoom/patch-5
updated items.csv, 43:4, 43:5, 44:4, 44:5
2012-06-21 03:03:39 -07:00
necrodoom
4b0df9fb22 while enraged at mibbit and esper failing to work, updated items.csv 2012-06-21 12:18:14 +03:00
md_5
cb8e2dea93 Merge branch 'master' into release 2012-06-21 18:27:54 +10:00
md_5
57cbeb6178 Merge remote-tracking branch 'origin/groupmanager' 2012-06-21 18:27:21 +10:00
md_5
74eda330cf Update Czech translation. 2012-06-21 18:18:57 +10:00
Iaccidentally
b00e23ceb0 change some default values 2012-06-21 05:05:22 -03:00
Iaccidentally
e4419f826b fixxy fixxy 2012-06-19 18:13:47 -04:00
Iaccidentally
1c2cc34c2d Add Finnish translation 2012-06-19 18:02:05 -04:00
Iaccidentally
d803aee015 Merge branch 'master' of https://github.com/essentials/Essentials 2012-06-19 17:56:43 -04:00
KHobbits
0770ea5bcb *borrows snowleo's strainer* 2012-06-19 20:57:40 +01:00
Iaccidentally
53fffbc531 Merge branch 'master' of https://github.com/essentials/Essentials 2012-06-19 12:48:55 -04:00
Paul A.
f0afe26804 Merge pull request #86 from necrodoom/patch-4
adding beef and steak to items.csv - thanks @necrodoom
2012-06-19 07:13:37 -07:00
KHobbits
bdc0ae7610 Little safety check for bad plugins. 2012-06-19 09:03:37 +01:00
KHobbits
b2db6bd225 Patch to allow plugins to use ignore lookup, without updating their own code. 2012-06-19 08:59:26 +01:00
KHobbits
a2e52d4652 Add optional 2n'd param to temp ban reason TL key. 2012-06-19 08:46:33 +01:00
necrodoom
fee92f1e1d hotfix before 2.9.2 release 2012-06-19 10:04:13 +03:00
ementalo
108eef097c Fixing vanish on off arguments 2012-06-18 15:35:21 +01:00
ementalo
dccf936e5e Use the assigned variable when looking at durability in itemdb 2012-06-18 10:28:37 +01:00
KHobbits
2535e12941 Add sign throttle config option.
Allows you to limit how often an Essentials sign can be spammed per player.
2012-06-17 19:28:59 +01:00
Iaccidentally
877b28f1b7 The French are weird : they use colons like this. 2012-06-17 11:50:52 -04:00
Iaccidentally
d38f8ca566 fix spacing issue in messages.properties 2012-06-17 11:41:00 -04:00
ElgarL
a5bac7a3c8 Better update for the User object player reference. 2012-06-16 19:12:54 +01:00
ElgarL
8a8e7272f5 Clear the player reference on logout so it's refreshed upon a reconnect. 2012-06-16 19:04:40 +01:00
KHobbits
a2a9ac1afb Using /exp, show can't find player message, if no matching player is found. 2012-06-16 18:22:31 +01:00
KHobbits
8a24e09925 Added missing syntax to plugin.yml 2012-06-16 17:56:12 +01:00
KHobbits
1f93babf35 Fix playerlistname update when prefix/suffix option is disabled.
Fixes #2216
2012-06-16 17:42:42 +01:00
KHobbits
f9654b4413 Adjust kit delay description.
Fixes #1580
2012-06-16 17:37:42 +01:00
KHobbits
178ec4de20 Prevent joinbots from triggering join code, unless they are actually connected to the server and online. 2012-06-16 17:31:33 +01:00
KHobbits
c4642fde19 Added TL key for ban syntax,
Default message: "Banned: <reason>"
Default reason: The Ban Hammer has spoken!
Optional 2nd param to banReason, {1}, will contain user who made the ban.
Example use: "banReason=Banned for {0} by {1}"
2012-06-16 17:10:47 +01:00
KHobbits
220a6c88b7 Fix teleport cooldowns - thanks @basicsensei
Fixes #2260
2012-06-16 16:46:40 +01:00
KHobbits
b53c0dcb98 Players should not be able to ignore Console
Also implement chat exempt permission in other commands.
2012-06-16 16:22:51 +01:00
KHobbits
fbd0d27ac4 Fix chat showing [spy] prefix when social spy was not required to see the message.
Fixes #2263
2012-06-16 16:05:48 +01:00
KHobbits
93ec005d58 Replace op ignore exempt with ignore exempt chat permission:
essentials.chat.ignoreexempt
This permission won't prevent a player from ignoring the player, but the player will see the chat messages anyway.
2012-06-16 16:01:27 +01:00
KHobbits
85ae547fdc Fix /exp so it can be used in the console 2012-06-16 14:26:29 +01:00
KHobbits
561323a02e Avoid silent command failures on /hat (ie typing /hat fish will no longer silently return as if broken) 2012-06-16 14:02:13 +01:00
KHobbits
881b31cb8e Added missing TL key 'hatRemoved' 2012-06-16 13:56:36 +01:00
KHobbits
14586716b1 Make /vanish follow the same rules as /fly, /god and /gamemode 2012-06-16 13:53:46 +01:00
Iaccidentally
1a42284ed7 Merge pull request #85 from kukelekuuk00/master
Updated dutch translation and fixed many grammar and spelling mistakes.
2012-06-15 15:06:38 -07:00
kukelekuuk00
1f1af1b9df Updated dutch translation and fixed many grammar and spelling mistakes. 2012-06-16 00:02:19 +02:00
Iaccidentally
d05fe2b2e4 Merge pull request #82 from kukelekuuk00/master
Allow your hat to be removed with /hat remove
2012-06-15 13:44:51 -07:00
kukelekuuk00
b0303146d7 Allow your hat to be removed with /hat remove 2012-06-15 22:36:26 +02:00
Paul A.
d70ddc208e Merge pull request #81 from kukelekuuk00/master
/vanish [on|off] - thanks kukelekuuk00
2012-06-15 03:05:13 -07:00
kukelekuuk00
365fa82d7a args[0] instead of args[1]
derp
2012-06-15 11:41:06 +02:00
kukelekuuk00
6d01757a6e /vanish [on|off] 2012-06-15 11:02:04 +02:00
Iaccidentally
b54cb117db Merge branch 'master' of https://github.com/essentials/Essentials 2012-06-12 22:33:12 -04:00
Iaccidentally
63e8f8b745 add /e<command> aliases to essentials spawn 2012-06-12 22:28:10 -04:00
KHobbits
9b87450df1 Revert "Invert teleport timer."
This reverts commit 2db6120402.
2012-06-13 03:06:42 +01:00
KHobbits
2db6120402 Invert teleport timer. 2012-06-13 02:51:47 +01:00
KHobbits
332b4645f8 3 char min length on /pay and /msg 2012-06-13 00:49:36 +01:00
Iaccidentally
a679c560b9 This is broken for some reason. Removing until fixed. 2012-06-12 01:41:39 -04:00
Iaccidentally
363f6beab5 oops. forgot this. 2012-06-12 01:13:12 -04:00
Iaccidentally
4f43e1c941 add admin chat 2012-06-12 00:59:53 -04:00
Iaccidentally
2a51b6cbde Merge pull request #79 from Iaccidentally/master
update messages_pt.properties
2012-06-11 19:40:42 -07:00
Iaccidentally
1e349a9e5a fix Portuguese translation with new messages 2012-06-11 22:34:40 -04:00
Alexander Schepp
c81204170f Merge pull request #78 from Iaccidentally/master
fix some tl keys
2012-06-11 19:17:44 -07:00
Iaccidentally
f6d71a9ada fix some tl keys 2012-06-11 22:05:30 -04:00
KHobbits
74283283a3 Messing around with whois syntax
(TL's probably need some love)
2012-06-12 01:43:20 +01:00
KHobbits
34c664ce54 Fix spacing issue in /list 2012-06-12 00:27:21 +01:00
KHobbits
0e3a14bb2c Fixing messed enchantment. 2012-06-12 00:18:53 +01:00
KHobbits
bc00aff626 Merge pull request #76 from necrodoom/patch-2
pull request for expanding enchant database
2012-06-11 16:17:53 -07:00
KHobbits
900fe1fd1f Merge pull request #77 from necrodoom/patch-3
woodenslab fix, pointed out by branicyeti
2012-06-11 16:17:21 -07:00
KHobbits
6d3ae1dc43 Adding mute status to /whois 2012-06-12 00:16:09 +01:00
necrodoom
fd734bac80 woodenslab fix, pointed out by branicyeti 2012-06-11 16:39:18 +03:00
necrodoom
e97c777dd7 pull request for expanding enchant database 2012-06-11 15:08:12 +03:00
KHobbits
aa7ef933e4 Update Bukkit to 1.2.5-R4
Bukkit: #1473 CB: #2222
2012-06-11 00:40:45 +01:00
md_5
d01490b1d0 Fix the vanish command for good. 2012-06-11 09:18:06 +10:00
KHobbits
2bd24efb79 I spied some more big Booleans. 2012-06-11 00:14:19 +01:00
KHobbits
f9e40ce10d i should prefer boolean to Boolean. 2012-06-11 00:08:31 +01:00
KHobbits
a2e5a73291 Make /whois throw an error if no matching players are found. 2012-06-11 00:07:22 +01:00
md_5
cd8c5d7861 Pass the actual player object to Bukkit. 2012-06-11 08:45:24 +10:00
KHobbits
c4473e0307 /vanish command sets players invisible to essentials commands. 2012-06-10 23:36:10 +01:00
KHobbits
2396f789c7 Broadcast command allows colour formatting. 2012-06-10 23:35:50 +01:00
KHobbits
fac1dee1a1 Fix /lightning <player> <damage> to actually deal the proper set damage (5 or 25% by default). 2012-06-10 23:00:49 +01:00
KHobbits
967b9fb918 Fix /essentials command to not show command debugging if there were no conflicts. 2012-06-10 22:46:56 +01:00
KHobbits
d6c1951fec Try to be a little more sensible with stored cooldowns. 2012-06-10 21:55:48 +01:00
KHobbits
c8b9708273 Fix /mute to follow same convention as /tjail
Fixed #2056
2012-06-10 19:56:24 +01:00
KHobbits
7df82578dc Missing event aborts in sign code. 2012-06-10 19:40:09 +01:00
KHobbits
d6390a2634 Fix bug with /remove and minecarts 2012-06-10 19:36:31 +01:00
KHobbits
a75e134d52 Allow syntax: /god <player> <on/off> 2012-06-10 19:20:43 +01:00
KHobbits
57697c2333 Allow syntax: /fly <player> <on/off> 2012-06-10 19:11:45 +01:00
KHobbits
f49e11d9d3 Fixing up some TL mistakes 2012-06-10 18:38:55 +01:00
KHobbits
c3974f11c3 Play a bit less greedy with events 2012-06-10 18:33:07 +01:00
KHobbits
75ec1c581d Remove dura command and merge into itemdb. 2012-06-10 18:31:28 +01:00
KHobbits
cc8db21fcc Fix kits to only show to people who can use them. 2012-06-10 18:27:55 +01:00
KHobbits
6f5490fb8b Merge pull request #72 from kukelekuuk00/master
Durability command
2012-06-10 10:22:42 -07:00
KHobbits
2dccf390b9 Merge pull request #75 from necrodoom/patch-1
updating items.csv with newest pastebin, fixes duplicates and wrong alia...
2012-06-10 10:21:40 -07:00
necrodoom
d7fe0d7e27 file indented for unknown reason 2012-06-10 18:06:26 +03:00
necrodoom
bd02cf17b8 updating items.csv with newest pastebin, fixes duplicates and wrong aliases. 2012-06-10 15:29:34 +03:00
kukelekuuk00
2c49347ebc DERP #2 2012-06-10 14:19:03 +02:00
kukelekuuk00
b9741a99d0 DERP 2012-06-09 23:06:09 +02:00
snowleo
1abc3f4c8f Fix xmpp format stripping 2012-06-08 00:34:25 +03:00
KHobbits
26d8d8e4b4 Merge branch 'master' of github.com:essentials/Essentials 2012-06-03 16:35:12 +01:00
KHobbits
72bb3a7d2e Fix broken preventmodify permissions check in invsee (*scowls at ementalo*)
Also added check to prevent duping items
2012-06-03 16:34:27 +01:00
md-5
dc8563850c Merge pull request #74 from Rutr/master
Edit the polish translation, thanks Rutr.
2012-06-02 14:36:00 -07:00
Rutr
12cf6d7174 translation some new messages and edit some existing 2012-06-02 17:46:26 +03:00
kukelekuuk00
22f16b0220 some more aliases for /durability 2012-06-02 00:36:27 +02:00
kukelekuuk00
8843fe3191 added /dura a durability check 2012-05-30 13:42:38 +02:00
md_5
32b80ae843 Don't allow armor to be used as a hat. 2012-05-27 17:36:04 +10:00
md_5
708f4c8381 Add new command /hat and update translate keys as well as fix colour codes. 2012-05-27 17:24:49 +10:00
md_5
f643937cae Client side note blocks don't play it seems (reverse-merged from commit 85e6436bf0) 2012-05-26 14:47:30 +10:00
KHobbits
a5433d9dab Tidy up PVP attack delay. 2012-05-22 21:02:28 +01:00
KHobbits
d115dfe514 Merge branch 'master' of github.com:essentials/Essentials 2012-05-22 17:54:39 +01:00
KHobbits
79f53281e5 Separate toggle for world teleports using homes. 2012-05-22 17:54:19 +01:00
ementalo
aa19a9ab18 Adding new config setting login-attack-delay. Set this in seconds for a delay before players can attack each other after logging on.
Use permission "essentials.pvpdelay.exempt" to bypass this restriction
2012-05-22 01:29:47 +01:00
KHobbits
57dc95b6a7 Code tidy. 2012-05-22 00:41:03 +01:00
KHobbits
402c0545c2 Merge branch 'master' of github.com:essentials/Essentials 2012-05-22 00:39:44 +01:00
KHobbits
432e8fbcde Patch null error in /home after recent update. 2012-05-22 00:39:23 +01:00
md_5
5bfe53c67c Keep track of vanished players and tweak lag meter. 2012-05-21 15:13:24 +10:00
KHobbits
cc70558b46 Make /home and /back obey the world perm system.
This will prevent players from moving between words using virtually all essentials commands.
ATM /warp is excepted, because we already have per warp permissions.
Ess3 may see warp permissions altered to: essentials.warp.<world>.<warpname>
2012-05-20 23:58:03 +01:00
KHobbits
dfae3e6746 Fixing unit tests. 2012-05-19 22:19:24 +01:00
KHobbits
8190c5580d Forgot to update plugin syntax.
Added missing perm checks.
2012-05-19 22:02:42 +01:00
KHobbits
2fc2566558 Exp command cleanup 2012-05-19 21:52:54 +01:00
KHobbits
0c319a0ee3 Merge pull request #70 from kukelekuuk00/master
/exp [set|give|player] [player] [amount]
2012-05-19 12:42:33 -07:00
KHobbits
a64becfedf Update CraftBukkit: 1.2.5-R2.0 - 2190
Update Bukkit: 1.2.5-R2.0 - 1459
2012-05-19 20:35:36 +01:00
KHobbits
f3fdfd259a Merge branch 'master' of github.com:essentials/Essentials 2012-05-19 17:45:09 +01:00
KHobbits
3005c2fb20 Strip invalid chars from kit names
This may possibly block some kits from working that previous worked, if the kit name contained unusual letters
2012-05-19 17:44:47 +01:00
kukelekuuk00
8a6d8d10e8 Fixes made, added /exp fix [playername] this fixes negative exp. 2012-05-17 14:39:40 +02:00
md_5
4b76b25d93 There is no need to start a second task to measure lag, it can in fact be measured with enough precision from the exisitng one. 2012-05-17 20:33:40 +10:00
md_5
fd52f8652e Add a LagMeter (ticks per second) to the /gc command. This command can now be accessed with /lag as well. Also added a simple /vanish command, with the extra node essentials.vanish.see
If you require a more advanced vanish solution checkout VanishNoPacket from mbaxter.
2012-05-17 20:25:02 +10:00
kukelekuuk00
2313726f3f small description change 2012-05-14 11:43:57 +02:00
kukelekuuk00
2a2b311f2a new command /exp [set|give|player] [player] [amount]
perms are essentials.exp,  essentials.exp.others,  essentials.exp.set,  essentials.exp.set.others,  essentials.exp.give and  essentials.exp.give.others
2012-05-14 11:36:44 +02:00
KHobbits
ec50807670 Try to trim long displaynicks instead of blankly refusing to show them.
Will try trimming prefixes and dropping suffixes before trimming nicknames.
2012-05-13 18:58:50 +01:00
kukelekuuk00
e252ca6026 Added an /exp command that shows the amount of exp you have and how much you need for the next level.
Permissions are essentials.exp and essentials.exp.needed
2012-05-13 13:44:41 +02:00
KHobbits
543a9ac920 Force 3 letters before matching players for /god /gamemode and /fly 2012-05-07 00:30:09 +01:00
KHobbits
48453b4a0c Revert "Update home count..." This reverts commit 61f76d1097.
On second thought, this would just lead to inconsistency....
2012-05-07 00:16:45 +01:00
KHobbits
6d9ffc0b9f Home confirmation when using a bed. 2012-05-07 00:08:01 +01:00
KHobbits
61f76d1097 Update home count to include the bed home if set, this does not prevent people from setting a bed home if they are at max. 2012-05-07 00:05:02 +01:00
KHobbits
0baaf193c8 Revert "Revert "New config option 'cancel-afk-on-move' - Set to false you don't use afk." -- This should fix afk mode."
This reverts commit 14a8092f02.

Another attempt at adding 'cancel-afk-on-move' toggle.
2012-05-06 23:38:04 +01:00
KHobbits
3f119b2a04 Revert "/me crashes ementalo's face for making the client crash."
This reverts commit 95a6008941.

And fix the original bug.
2012-05-06 23:30:55 +01:00
KHobbits
e242b794d1 Add whisper to social spy trigger list. 2012-05-06 16:11:16 +01:00
KHobbits
2cf1fae209 Revert "We can't damage and kill, so we will just kill to make everyone happy, and the event pointless."
This reverts commit d54a1bb9bd.

Also fix kill to do the same.
2012-05-06 16:09:47 +01:00
md_5
d54a1bb9bd We can't damage and kill, so we will just kill to make everyone happy, and the event pointless. 2012-05-05 20:01:18 +10:00
snowleo
810d44dbad Merge branch 'refs/heads/groupmanager' 2012-04-26 10:42:48 +02:00
snowleo
14a8092f02 Revert "New config option 'cancel-afk-on-move' - Set to false you don't use afk." -- This should fix afk mode.
This reverts commit e72afac21f.

Conflicts:

	Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java
2012-04-26 10:41:24 +02:00
ementalo
c98546eff3 Latest items.csv by necrodoom 2012-04-25 11:27:18 +01:00
md_5
95a6008941 /me crashes ementalo's face for making the client crash. 2012-04-25 17:02:15 +10:00
snowleo
c9a1a56e91 Fix items.csv 2012-04-24 21:48:28 +03:00
snowleo
88fbb8879b Merge pull request #66 from Iaccidentally/patch-8
Necrodoom's update to items.csv
2012-04-24 11:42:50 -07:00
Iaccidentally
44429cb097 Necrodoom's update to items.csv 2012-04-24 14:57:56 -03:00
ementalo
6db33bd350 Updated czech language, thanks tommymortago 2012-04-24 12:29:24 +01:00
md_5
e54ee3fd45 Small cleanup of things 2012-04-24 20:31:19 +10:00
ementalo
5f0fb4230d Adding the kickedAll TL key the the rest of the files 2012-04-24 10:24:08 +01:00
md_5
73d49059ce Add message to sender when all players kicked, addresses issue #1968 2012-04-24 17:47:27 +10:00
md_5
57f91c2596 Use a quick (and working comparer) 2012-04-24 17:44:49 +10:00
ementalo
cf71fbc6c8 New permission essentials.invsee.preventmodify. People with this permission cannot have their inventories modified by invsee 2012-04-23 23:51:10 +01:00
snowleo
946b007f5d Merge pull request #64 from mdojcar/patch-1
0.2 version of Czech translate: optimized by mdojcar
2012-04-23 14:42:55 -07:00
ElgarL
14b2af7d7b Allow 'manucheckp' to notify when superperms reports false but it is
really negated.
2012-04-22 12:12:50 +01:00
ElgarL
e843009a76 Fix forgetting sub groups on a manload. 2012-04-21 16:58:22 +01:00
mdojcar
b3bf427426 0.2 version: optimized by mdojcar (modojcar@seznam.cz) - mirne fixy a trochu jsem preklad vylepsil 2012-04-21 09:35:59 +03:00
ElgarL
402e162abc updated classpath (eclipse) for teh whole project 2012-04-21 02:33:13 +01:00
ElgarL
bc4716d384 remove unneeded dependency of craftbukkit 2012-04-21 02:32:37 +01:00
ElgarL
e433b11f00 Remove unneeded dependency of craftbukkit (Eclipse building) 2012-04-21 02:32:02 +01:00
KHobbits
ddb50fed13 Remove stack trace cleaning, didn't actually remove unwanted elements. 2012-04-20 22:31:25 +01:00
ElgarL
e2b92b6fa2 Prevent null perms getting past the GlobalGroups loader. 2012-04-18 22:22:35 +01:00
KHobbits
bbfdad2be0 Slightly widen block break protection on protected signs (still does not block chain breaks). 2012-04-18 01:30:14 +01:00
KHobbits
9871fc03e7 Merge remote branch 'remotes/origin/groupmanager' 2012-04-18 00:39:14 +01:00
KHobbits
7c74c952ca Switch the order of the alt give syntax to follow vanilla order. 2012-04-18 00:37:44 +01:00
ElgarL
1df54c7984 Fix a couple of perms in GlobalGroups 2012-04-17 18:57:11 +01:00
KHobbits
6facba90ef Don't get the Essentials user object when we don't need it. 2012-04-17 01:14:07 +01:00
KHobbits
28c4fcb19c Wrong default value for AFK disable pickup. 2012-04-17 00:53:57 +01:00
ElgarL
a926f6c21d Re-initialize the WorldsHolder on a reload, as un-registering and
re-registering a new holder means all plugins have to check for the new
service on every quiery.
2012-04-16 23:54:33 +01:00
KHobbits
c85a6f9bbf Merge branch 'master' of github.com:essentials/Essentials 2012-04-16 21:43:19 +01:00
KHobbits
6cd96ec0a4 Null check, for quick exit. 2012-04-16 21:42:53 +01:00
md_5
ce188f57bb Do we have to remind @khobbits not to code while drunk. Again. 2012-04-16 19:43:53 +10:00
KHobbits
90619f44a2 Fixing a few TL issues. 2012-04-16 10:33:51 +01:00
KHobbits
b39e737579 Don't fire entity powertool commands, with our user object. 2012-04-16 10:19:19 +01:00
KHobbits
98e1889528 Minor perf tweak. 2012-04-15 23:13:34 +01:00
KHobbits
e72afac21f New config option 'cancel-afk-on-move' - Set to false you don't use afk. 2012-04-15 22:50:55 +01:00
KHobbits
9a1a6eee2d Few missing default permissions. 2012-04-15 22:02:08 +01:00
KHobbits
ae81785cb4 Merge remote branch 'remotes/origin/groupmanager' 2012-04-15 19:41:06 +01:00
KHobbits
717d7ee805 Fix metrics errors to be... descriptive. 2012-04-15 15:12:42 +01:00
KHobbits
41cc3aebf0 Revert "Add option to disable jails entirely."
This reverts commit fcffc81a96.
2012-04-14 23:18:20 +01:00
KHobbits
bd2495040d Throw syntax error on /item, if syntax is wrong. 2012-04-14 17:53:33 +01:00
KHobbits
c17abeb0bc Merge branch 'master' of github.com:essentials/Essentials 2012-04-14 15:58:12 +01:00
KHobbits
37120287e4 Fix null locations in /seen 2012-04-14 15:57:47 +01:00
md_5
fcffc81a96 Add option to disable jails entirely. 2012-04-14 15:21:42 +10:00
md_5
e240110a2e Change some ordering and clean pmd warnings 2012-04-14 15:07:10 +10:00
KHobbits
45714bc5d5 Optimize sign interacts. 2012-04-14 04:54:01 +01:00
KHobbits
f09e15a051 Try to speed up teleport events. 2012-04-14 04:13:37 +01:00
ElgarL
34569ba6c0 Correct formatting in command list. 2012-04-13 23:56:50 +01:00
ElgarL
31ce82edda Finally remove all deprecated methods. 2012-04-13 15:16:08 +01:00
ElgarL
a5dcfdbabb Code tidy 2012-04-13 15:00:55 +01:00
ElgarL
59b204d410 Stop using our own deprecated methods as we tell others to do. 2012-04-13 14:57:23 +01:00
ementalo
d29f3c49a2 Merge branch 'master' of https://github.com/essentials/Essentials 2012-04-13 14:52:25 +01:00
ementalo
4a8dcde76d Don't kill tamed ocelots with killall Test #1921 2012-04-13 14:49:15 +01:00
ElgarL
b838cde648 Update all code formatting to use tabs for indentation. 2012-04-13 14:40:26 +01:00
ElgarL
2baa87036c Fixed the 'last' nested throw/catch and rework all user and group
reading to be certain to trap all errors.
2012-04-13 13:58:05 +01:00
snowleo
7a79e204aa Fix double charge in /jump 2012-04-12 23:57:19 +03:00
ementalo
85e46dfc4e Merge branch 'master' of github.com:essentials/Essentials 2012-04-12 21:26:34 +01:00
ementalo
8afa016c82 Display name of new world on world change 2012-04-12 21:26:19 +01:00
snowleo
eb2d6d0ee6 Merge branch 'refs/heads/groupmanager' 2012-04-12 04:27:04 +02:00
ElgarL
f9b44317f0 Unregister the worldsHolder as a service on a reload/shutdown instead of
the whole plugin.
2012-04-12 03:21:38 +01:00
ElgarL
93b685d2ce Fix silly nested throw/catch statements. Errors are now correctly
generated when reading yml's.
2012-04-12 01:21:22 +01:00
snowleo
e54529dbd2 Merge branch 'refs/heads/groupmanager'
Conflicts:
	EssentialsGroupManager/src/globalgroups.yml
2012-04-11 21:57:58 +02:00
snowleo
5b8dbda61d Prevent that a config file is loaded/saved by more than one thread. 2012-04-11 22:51:34 +03:00
ElgarL
6329acf951 Expand GlobalGroups.yml and groups.yml to cover the VanishNoPacket
plugin. Demonstrating how to negate and add nodes when using the '*'
permission with inheritance.
2012-04-11 19:10:28 +01:00
ElgarL
59cf271674 Fix 'manuadd' to use the default or selected world (via 'manselect'), if
the world is not specified in the command.
2012-04-10 20:48:34 +01:00
ElgarL
41a786b836 Stop the error on shutdown if GM failed to load at startup.
GroupManager will now generate it's own log (in the GM folder) to
keep things tidy, but also to account of those players unable to
find/access their server.log.
Startup errors will now lock out ALL commands other than '/manload'
2012-04-10 20:40:04 +01:00
ElgarL
5e5038d05c Properly fix concurrent modification when removing all attachments. 2012-04-10 17:02:50 +01:00
snowleo
2fa549187e Should fix some exp math issues 2012-04-09 17:52:46 +03:00
ElgarL
930c2809a4 Added missing confirmation message on '/manload'. 2012-04-07 21:30:49 +01:00
ElgarL
c0133d45d7 Better handling of errors in user and group yml's. 2012-04-07 19:24:46 +01:00
ElgarL
f6daf12e36 Fix a concurrent modification error when removing all attachments. 2012-04-07 17:21:48 +01:00
ElgarL
321543089b Expand 'manwhois' to also list a users subgroups. 2012-04-07 11:47:07 +01:00
KHobbits
af46453666 Allow vanilla syntax of /give 2012-04-07 04:39:12 +01:00
KHobbits
cae8724d4e Remove 'set' and 'add' from /time command args, to allow use of original syntax. 2012-04-07 04:22:17 +01:00
KHobbits
c9d23c1c80 New ingame command syntax: /kit <kit> <playername>
New Permission: essentials.kit.others - allows giving kits to other people.
New console commands: /kit & /kit <kit> <playername>
2012-04-07 03:34:01 +01:00
KHobbits
ae06bc80c6 Console should be able to kick everyone. 2012-04-07 03:07:07 +01:00
KHobbits
1c28990221 Move player loading and updates to new thread, to reduce on join lag. 2012-04-06 19:19:08 +01:00
ElgarL
43c733393c Remove all permission attachments when performing a manload or restart. 2012-04-06 12:53:36 +01:00
KHobbits
1f8648dbcc Chat spy, should show otherworld chat. 2012-04-06 02:36:27 +01:00
KHobbits
69d0090fc2 Merge branch 'master' of github.com:essentials/Essentials 2012-04-05 23:37:33 +01:00
KHobbits
13829e052b Fix /time not working with the '##pm' syntax. 2012-04-05 23:36:57 +01:00
md_5
27ed75df4b Add version tag 2012-04-06 07:39:25 +10:00
md_5
14e29db2d3 Add polish translation, thanks losdamianos 2012-04-06 07:33:10 +10:00
ElgarL
006f8c3a73 Don't throw errors when attempting to remove permission attachments
(bukkit will have already removed it).
2012-04-05 21:06:48 +01:00
snowleo
4ffe3b7a23 Merge remote-tracking branch 'origin/groupmanager' 2012-04-05 17:05:43 +02:00
ElgarL
a407c6ed0c Fix an error I caused trying to modify an unmodifiable list when parsing
'*' permissions.
2012-04-05 15:02:08 +01:00
KHobbits
23597d2f1c Fixing up NPE bug in jails (implemented in Dev2.9.163) 2012-04-05 13:28:23 +01:00
ElgarL
d8891569e9 Update to 2.0
Fix GM reporting of permission inheritance to retain the correct order.
Lower inheritance groups can no longer negate a higher groups
permissions.
2012-04-05 12:54:26 +01:00
KHobbits
4ef03ab5d9 Added wiki names for enchantments. 2012-04-05 05:46:36 +01:00
KHobbits
6ee9577b04 Jail update, jailed people can't attack other players. 2012-04-05 03:22:49 +01:00
KHobbits
98a61f6898 Updating plugin.yml to add sendall syntax. 2012-04-04 23:02:13 +01:00
KHobbits
5a23c69c06 Added extra params to setHome TL key {0} world {1} x {2} y {3} z 2012-04-04 18:19:39 +01:00
ementalo
ff2e090717 1.2.5 Update Craftbukkit #2149 Bukkit ??? 2012-04-04 15:33:11 +01:00
KHobbits
32e1253044 Fix unit tests. 2012-04-04 03:21:14 +01:00
KHobbits
e7a35a8e1f Report invalid enchantments in kits.
Improve error logging
2012-04-04 03:09:27 +01:00
KHobbits
bc9c6d8f40 Catch all values greater than 10 years to avoid exploits. 2012-04-04 02:07:01 +01:00
KHobbits
edf57ddf9e Cap mute/ban/jail to 10 years (any more is silly).
Cap time descriptions to 3 significant notions.
2012-04-04 01:55:06 +01:00
KHobbits
ae54a877bd Update seen to show better data for vanished users:
New Perm: essentials.seen.extra - Shows some extra information for staff
2012-04-04 01:20:57 +01:00
KHobbits
4882c302d8 Little bit of powertools code cleanup. 2012-04-04 00:40:58 +01:00
KHobbits
db4b150d21 Enable powertools if they are disabled when setting a new tool. 2012-04-04 00:39:59 +01:00
KHobbits
09e8c6db21 Better hide vanished players. 2012-04-03 16:12:49 +01:00
KHobbits
c107532f76 Command cost api update: Can now set fallback costs.
Repair command addition: ontop of 'repair' and 'repair-<itemname>' you can now charge for 'repair-all' to charge more for /repair all or 'repair-item' to charge per item repaired.
2012-04-03 15:35:13 +01:00
ElgarL
77e15e9330 Prevent Null entries in group inheritance from throwing errors. 2012-04-03 14:30:27 +01:00
KHobbits
a3c4e75423 Switch sign listeners back to compare block id, rather than materials. 2012-04-02 22:58:07 +01:00
ElgarL
99e315e625 Added a new permission node 'groupmanager.op'. This will cause players
with this node to be treated as op's when using GroupManager commands
(they will still require each commands
permission node to use them).
2012-04-02 21:12:19 +01:00
KHobbits
0a24b24979 Allow tppos to be used in console. 2012-04-02 02:47:44 +01:00
KHobbits
4edaa53b70 Optional second param to /gm to force gamemode on other players. 2012-04-02 02:31:31 +01:00
KHobbits
2add104432 Listener Cleanup 2012-04-02 02:22:30 +01:00
ElgarL
4f2a13c223 Force remove player attachments on disconnect, and tidyup during player
join in case of any errors. Fixes a bug of losing permissions.
2012-04-01 03:44:37 +01:00
KHobbits
c3ee344089 Make sure can build checks in permbukkit/privileges work for admins/owners. 2012-04-01 02:44:11 +01:00
KHobbits
fd58d34692 Minor cleanup to player events. 2012-03-30 21:44:14 +01:00
KHobbits
384399ffed Add newish signs to default enabled commands config. 2012-03-30 21:04:15 +01:00
KHobbits
ccfb3ec97e Formatting. 2012-03-30 13:29:58 +01:00
KHobbits
88bcb862b8 Don't push vault version to metrics. 2012-03-30 13:27:57 +01:00
KHobbits
e77cfed3fa Reset ban reason to null on /ban <player>, if no reason is set. 2012-03-30 11:40:44 +01:00
KHobbits
ac33344c25 Fix tpo syntax error. 2012-03-29 22:32:16 +01:00
KHobbits
93e5913ba1 Iaccidentally's changes to pt TL. 2012-03-29 21:17:50 +01:00
KHobbits
fc98e1a617 Update TL header. 2012-03-29 18:49:56 +01:00
KHobbits
932a576f99 New translation messages 2012-03-29 18:37:22 +01:00
KHobbits
d6edf09eac Update default permissions. 2012-03-29 18:14:24 +01:00
KHobbits
5714acb227 Missing air materials. 2012-03-29 16:41:13 +01:00
ElgarL
131f0e4234 Merge branch 'groupmanager' of https://elgarl@github.com/essentials/Essentials.git into groupmanager 2012-03-29 14:09:07 +01:00
ElgarL
0632fd253e Catch errors caused by bad indentation in yml's. 2012-03-29 14:02:53 +01:00
ElgarL
ee5922fbec Stop attempting to push empty permissions when players edit the yml's
incorrectly.
2012-03-29 13:41:59 +01:00
KHobbits
fe9122916c Interact event cleanup 2012-03-29 03:06:52 +01:00
KHobbits
00308af1cd Update to CB #2126 B #1425
Min CB version changed to 2122
2012-03-29 02:00:51 +01:00
KHobbits
986073b34d Fix using /setworth <price> 2012-03-29 00:13:56 +01:00
KHobbits
22c01084c5 Merge branch 'groupmanager' of github.com:essentials/Essentials 2012-03-28 17:37:03 +01:00
KHobbits
849625e369 Implement all abstract methods. 2012-03-28 15:12:25 +01:00
KHobbits
41b50529c9 Merge branch 'master' of github.com:essentials/Essentials 2012-03-28 15:03:45 +01:00
KHobbits
2c085c413a Don't register jail listeners, if no jails are set. 2012-03-28 15:03:18 +01:00
snowleo
d619752942 Fix for the fix 2012-03-28 11:21:31 +02:00
snowleo
32201c5615 Fix isAffordableFor in Trade class
This fixes buy signs giving out items, when the player has essentials.eco.loan permission, but min-money in config is set to 0.
2012-03-28 10:36:10 +02:00
KHobbits
5e8a25c9c8 Pull example perm files out of the ess jar. 2012-03-28 00:59:51 +01:00
KHobbits
ba2bfc2ab1 Try to reduce lag caused by join spam. 2012-03-27 21:08:06 +01:00
snowleo
f27fcf7be8 Adds pvp protection after teleport 2012-03-27 21:15:11 +02:00
KHobbits
3ea6a72946 Adding world permission checks to:
tpaall tpall tpahere tphere tpohere
User is required to have the permission for the world he is in, before he can teleport users outside this world, to it.
2012-03-27 15:28:40 +01:00
ElgarL
d1da8a3166 Update GlobalGroups.yml for new/changed Towny permission nodes. 2012-03-27 10:14:53 +01:00
ElgarL
e02a27fc8e Auto rename all case sensitive world folders to lower case (if
possible).
2012-03-26 20:06:59 +01:00
ElgarL
246c62ea15 Treat all world names as lower case for file handling (please check in
your worlds folder. You should have no folders with upper case letters
from now).
2012-03-26 19:18:19 +01:00
KHobbits
9746346bc1 Fix kit enchants for people without oversized stack permission.
Add permissions lookup to debug mode.
2012-03-26 13:28:32 +01:00
KHobbits
c23eb475eb Clarify how backup works.
Add option for auto save-all.
2012-03-26 00:49:53 +01:00
KHobbits
8f94e43baf Update tp to check if target player has tptoggle disabled.
Update tpo to allow player to player tp.
2012-03-25 23:32:04 +01:00
KHobbits
bb278fef02 Don't show 'backup started' on /backup if it hasn't been configured. 2012-03-25 19:10:39 +01:00
KHobbits
0dc660eb7d Reorder login/join event calls. 2012-03-25 17:27:06 +01:00
KHobbits
8bc7bcfef1 Don't override other plugins which allow joining over capacity. 2012-03-25 16:46:36 +01:00
KHobbits
1eaefa2192 Reduce amount of move event calls being processed. 2012-03-25 16:30:22 +01:00
KHobbits
b53586474b Update [balance] sign to use currency formatting. 2012-03-25 14:26:08 +01:00
KHobbits
8b9c5c65db Merge branch 'master' of github.com:essentials/Essentials 2012-03-25 14:20:53 +01:00
KHobbits
3c4911ca02 Fix chat format regex. 2012-03-25 14:20:26 +01:00
snowleo
a1f8ec81ed CopyPaste-Fail 2012-03-25 11:47:26 +02:00
snowleo
668e330823 Wrong url 2012-03-25 11:45:50 +02:00
snowleo
a8f88dea7d This is no longer stored in file, so it's not part of UserData anymore. 2012-03-25 11:44:33 +02:00
snowleo
6ed997ef5f Optimize metrics 2012-03-25 11:39:19 +02:00
snowleo
b5965d8d23 AntiCheat has different version numbers, so don't check. 2012-03-25 11:09:13 +02:00
KHobbits
613ba0ec10 Should probably cancel this at lowest. 2012-03-25 02:55:19 +01:00
KHobbits
22b5d29ecb Merge branch 'master' of github.com:essentials/Essentials 2012-03-25 02:34:19 +01:00
KHobbits
30523d128c Invsee now shows a live player inventory in a window, rather than cloning players inventory.
New Permission: essentials.invsee.modify - Player with this permission will be able to add/remove items from the other players inventory.
2012-03-25 02:33:52 +01:00
KHobbits
014a2edd4c Update Essentials/src/config.yml 2012-03-24 23:28:56 +00:00
KHobbits
669fabe8f6 Mysql is bad. 2012-03-24 23:25:43 +00:00
KHobbits
ee622b7032 Better English. 2012-03-24 21:12:15 +00:00
KHobbits
c2259cbe48 New permission check: essentials.list.hidden is now required to /getpos hidden players. 2012-03-24 21:08:45 +00:00
KHobbits
8f14b46128 Extra itemcsv. 2012-03-23 23:13:04 +00:00
KHobbits
98396baf81 'Enabled' looks better than 'true'. 2012-03-23 22:38:01 +00:00
KHobbits
f2a2d0c2a9 Make sure items don't stack wrong in [free] signs. 2012-03-23 20:15:03 +00:00
KHobbits
9966c386bc Fix for showing plugins when user has no permission. 2012-03-23 18:26:19 +00:00
KHobbits
b0c7626c2c Wrong colour code symbol. 2012-03-23 17:50:15 +00:00
KHobbits
e10aac62c8 Merge remote branch 'remotes/origin/groupmanager' 2012-03-23 17:44:00 +00:00
KHobbits
5c85dc3bb0 Help command refresh. 2012-03-23 17:16:09 +00:00
KHobbits
6f82a2ee77 Merge branch 'master' of github.com:essentials/Essentials 2012-03-23 13:53:08 +00:00
snowleo
1bdb4fd14b Spaaaaaace! So much space! Gotta see it all! 2012-03-23 14:30:00 +01:00
KHobbits
a2ae02ba1f Merge branch 'master' of github.com:essentials/Essentials 2012-03-23 13:26:12 +00:00
KHobbits
43ff07a905 Fix url matching. 2012-03-23 13:26:03 +00:00
snowleo
9d40472f9f Fix utf-8 decoding problems. 2012-03-23 14:22:10 +01:00
snowleo
cd9127b447 http://youtu.be/8DdeLUA0Fms 2012-03-23 12:11:01 +01:00
KHobbits
45d07dcac6 Merge branch 'master' of github.com:essentials/Essentials 2012-03-23 10:18:16 +00:00
KHobbits
a17af6f21b Adding missing entities to Protect Spawn Blacklist 2012-03-23 10:16:38 +00:00
snowleo
478c16daf3 Fix UTF8 handling in Configuration class 2012-03-23 11:13:44 +01:00
KHobbits
01506d80c4 Update Essentials/src/config.yml 2012-03-23 10:03:15 +00:00
KHobbits
8dafa33624 Remove white user prefix, if prefix is blank. Messes with EssentialsChat colouring. 2012-03-23 07:56:44 +00:00
KHobbits
8e3337cd93 Fixing chat color formatting. 2012-03-23 00:19:27 +00:00
KHobbits
4c96179f06 Disabling player list updates by default (can mess with tab completion)
Hopefully this will be reverted if/when patch is found.
2012-03-23 00:15:22 +00:00
KHobbits
9d8d46ae42 Improve kit matching, and add enchantments.
Enchanted kit example in config.yml
2012-03-22 23:47:35 +00:00
KHobbits
620e59dbff Fix jar building. 2012-03-22 23:10:59 +00:00
KHobbits
6fd4903b72 Update CB to 2105 2012-03-22 23:07:23 +00:00
KHobbits
d22231b93c New command: /fly
New perm: essentials.fly.others
2012-03-22 22:59:52 +00:00
KHobbits
b3827d1f0c Split formatting perms for signs as well. 2012-03-22 22:26:04 +00:00
KHobbits
ce814c9d0f New Permission: essentials.chat.url
Without this perm, URLs will be modified not to be links.
2012-03-22 22:19:58 +00:00
KHobbits
35b14d2b58 Split colour permissions into 3: color/magic/format 2012-03-22 22:07:13 +00:00
KHobbits
e7adb6c78b Update to 1.2.4 (R0.1)
New Minimum CB version: 2100
2012-03-22 20:55:56 +00:00
KHobbits
e269f4fe2b Extra items in 1.2.4 2012-03-22 20:48:27 +00:00
KHobbits
7eb0a580c7 Add villager professions to /spawnmob 2012-03-22 20:03:52 +00:00
ElgarL
b13d2ae787 Correct Grammar 2012-03-22 17:54:59 +00:00
ElgarL
7868e3de65 Merge pull request #62 from bonney12/groupmanager
Update language and commenting
2012-03-22 10:53:25 -07:00
KHobbits
0096a497d4 Bukkit R0.3 api updates. 2012-03-22 17:26:05 +00:00
KHobbits
1909f52992 Update missing 1.2.3 items in items.csv 2012-03-22 17:25:42 +00:00
KHobbits
7627b082fc Extra Trees 2012-03-22 17:25:13 +00:00
KHobbits
fb6c5a3aba Fixed again. 2012-03-22 12:02:19 +00:00
KHobbits
8d6bd6e065 Fix typo. 2012-03-22 11:57:30 +00:00
KHobbits
c0a3b16fbf Merge branch 'master' of github.com:essentials/Essentials 2012-03-21 23:55:19 +00:00
KHobbits
0cdd5ceac3 Cleaning up displaynames 2012-03-21 23:54:57 +00:00
KHobbits
3c3967b355 Merge pull request #63 from Iaccidentally/patch-6
update default player-commands to support new and missed commands
2012-03-21 09:25:05 -07:00
Iaccidentally
852facb38e update default player-commands to support new and missed commands 2012-03-21 13:23:36 -03:00
Michael Bonney
e0d15f8aa4 Removed Portuguese text, and added English replacements. Made more sense of the sentences, and also changed an incorrect message to it's proper form. 2012-03-21 16:13:34 +00:00
KHobbits
900ebee4e5 Split if tree for readability. 2012-03-20 15:03:53 +00:00
KHobbits
6f3b475c72 Teleport check cleanup 2012-03-20 13:26:49 +00:00
KHobbits
fb2540cd26 Fix per world teleport permission checking. 2012-03-20 11:53:05 +00:00
KHobbits
5eb6e886a8 Add 'color' sign type to config file.
Enforce colour permission on signs when essentials signs are enabled.
2012-03-19 08:21:39 +00:00
KHobbits
519a5c34d1 Missing kit time check from [kit] signs. 2012-03-18 17:15:46 +00:00
KHobbits
9b6897a02a Only show nickname update message in debug mode. 2012-03-18 03:29:49 +00:00
KHobbits
0631579158 Shorten help messages. 2012-03-18 03:01:44 +00:00
KHobbits
de521a230e Error and info cleanup. 2012-03-17 20:23:46 +00:00
KHobbits
6a96a4b3e0 Merge remote branch 'remotes/origin/groupmanager' 2012-03-17 18:20:33 +00:00
ElgarL
e111cb6f96 Don't remove an attachment on a player leaving as Bukkit never forgets
it. This fixes non mirrored permissions being messed up if a player
relogs.
2012-03-17 15:56:40 +00:00
snowleo
eef8c3d63f Merge branch 'refs/heads/groupmanager' 2012-03-17 13:38:51 +01:00
ElgarL
ab825da214 Removed some debug spam. 2012-03-17 12:37:23 +00:00
snowleo
14d39de74c Fix bukkit download url 2012-03-17 11:15:28 +01:00
snowleo
bb1c6ef9f6 Fix bukkit download url 2012-03-17 11:12:32 +01:00
KHobbits
d913472fa6 Merge remote branch 'remotes/origin/groupmanager' 2012-03-17 08:01:19 +00:00
KHobbits
5e45679d55 New permission: essentials.tp.others - Allows players to /tp <p1> <p2> replaces old reused permission.
New permission usage: if world-teleport-permissions is true in the config, TP commands will now check for essentials.world.<worldname> when a tp would switch worlds.
2012-03-17 06:10:02 +00:00
KHobbits
f42ff086ca Comments to SetExpFix. 2012-03-17 03:38:32 +00:00
KHobbits
e95a8e037d Adding Exp to /whois, shows total exp and ingame level.
Due to the way minecraft calculates levels (flawed formula), its possible to not match calculated level.
2012-03-17 01:43:49 +00:00
KHobbits
29e5d0a977 Adding reference to &k in MOTD. 2012-03-16 23:03:22 +00:00
KHobbits
c009dc28dc Handle permission check failures better. 2012-03-15 23:15:19 +00:00
KHobbits
04e84c62d6 Add missing methods. 2012-03-15 22:23:26 +00:00
KHobbits
c3d6294df5 Updating Bukkit/CraftBukkit to match minimum ver. 2012-03-15 22:15:17 +00:00
md_5
0db9353e87 Fill the entire sign with free goodness 2012-03-15 20:55:56 +11:00
md_5
b18b2864bd Update minimum CraftBukkit version 2012-03-15 20:51:51 +11:00
md_5
fe71529271 Restore [free] and [disposal] signs back to their intended behaviour 2012-03-15 20:48:55 +11:00
snowleo
c801757327 :P 2012-03-15 09:15:28 +01:00
KHobbits
e8feadeade Graph a little bit extra information. 2012-03-15 08:08:25 +00:00
KHobbits
8657cd1d29 Fix fake explosions. 2012-03-15 06:42:58 +00:00
KHobbits
0629a24d45 Make /nuke drop tnt from a more reasonable height. 2012-03-15 05:09:34 +00:00
KHobbits
71da2d092a Make /spawner errors more descriptive. 2012-03-15 04:41:56 +00:00
KHobbits
e6b5014fe6 Add metric opt out toggle ingame. 2012-03-15 03:49:17 +00:00
KHobbits
89061b8e7e Fixing setwarp command. 2012-03-15 02:12:43 +00:00
KHobbits
2d85e05d50 Adding some simple feature metrics. 2012-03-15 02:12:27 +00:00
KHobbits
5ff084fb00 Metrics errors aren't important. 2012-03-15 01:32:08 +00:00
KHobbits
9f38876a45 Basic module graph. 2012-03-15 01:17:12 +00:00
KHobbits
1212738b2d Add Griefcraft metrics to Essentials
Warns on first start, and first staff join, and 5 minute warning before logging starts.
2012-03-15 00:49:22 +00:00
ementalo
57f1935b1e Adding permissions for overwriting exisitng warps
essentials.warp.overwrite.[warpname] will allow overwrting of exsiting warps
essentials.warp.overwrite.* for all warps
Adding WarpNotFoundException class
2012-03-14 21:16:22 +00:00
KHobbits
e28c73fc12 Fixing warp command costs. 2012-03-13 16:15:01 +00:00
ElgarL
3f15c9b52b Fix a globalgroup inheritance in groups.yml 2012-03-12 22:18:25 +00:00
KHobbits
303bfe5061 Missed a TL key. 2012-03-12 16:50:32 +00:00
KHobbits
a4a99e30f3 Fixing a few TL Keys 2012-03-12 15:35:20 +00:00
KHobbits
d8cb9fd02b New TL Key, allow formatting/colouring of help output. 2012-03-12 15:21:37 +00:00
KHobbits
d5f9558a20 New permission: essentials.seen.banreason
With this permission players can see why a user was banned, in /seen.
2012-03-12 15:00:44 +00:00
KHobbits
e03be504f5 Adding jail time to /whois. 2012-03-12 01:15:10 +00:00
KHobbits
23cad69a6e Update offline user check.
Add ban reason to /seen
2012-03-12 01:00:57 +00:00
KHobbits
b4fc2833cd Update setworth to allow /setworth <price> ingame
Allow /setworth to be used from console.
2012-03-11 23:59:59 +00:00
KHobbits
80f3a4ff2e New Permission: essentials.lightning.others
With this permission you can use /lightning <player>, without only strike based on direction.
2012-03-11 20:58:54 +00:00
KHobbits
ac5a01657f Add Enderman check to EntityChangeEvent (Should fix sheep eating grass). 2012-03-11 01:46:01 +00:00
KHobbits
f48fed04b8 Use ignoreCancelled on event registration. 2012-03-10 21:42:46 +00:00
KHobbits
7cace46970 Update info.txt to hint at /einfo. 2012-03-07 12:14:32 +00:00
KHobbits
eb16013fce Fixing typo in config.yml 2012-03-06 23:17:10 +00:00
ElgarL
fd32b29647 change []<> for optional command components 2012-03-06 16:23:57 +00:00
ElgarL
0b59531236 Expanded '/manuadd'to accept an optional variable for the world (eg
'/manuadd <player> <group> <world>').
2012-03-06 11:02:48 +00:00
KHobbits
787da5c3c6 Merge branch 'release'
Conflicts:
	lib/bukkit.jar
	lib/craftbukkit.jar
2012-03-05 16:25:35 +00:00
KHobbits
12a1dd92a1 Change starter kit to default to stone tools 2012-03-05 15:51:15 +00:00
KHobbits
caea6dac30 Temp fix to disable version check on R7 2012-03-05 14:17:09 +00:00
KHobbits
c49a455018 Craftbukkit/Bukkit R7 2012-03-05 08:41:19 +00:00
md_5
3d9baea863 I dont think free noteblocks are a good idea 2012-03-05 08:37:16 +00:00
KHobbits
4096f9da14 Missed one. 2012-03-05 08:37:15 +00:00
KHobbits
a110c6a1eb Fixing spawnmob count. 2012-03-05 08:37:15 +00:00
KHobbits
8eb7410b7e Add listgroups as TL key 2012-03-05 08:37:15 +00:00
KHobbits
af44cd1ff5 Apply colors to group tags. 2012-03-05 08:37:15 +00:00
KHobbits
a2b149395c Build custom mob list /spawnmob 2012-03-05 08:37:14 +00:00
KHobbits
1dd2369e56 CME 2012-03-05 08:37:14 +00:00
KHobbits
66e47c9f08 Adding starter/newbie kit to EssentialsSpawn
Optimization to EssentialsSpawn join event.
2012-03-05 08:37:14 +00:00
KHobbits
1a3601f72b Extra command alias. 2012-03-05 08:37:14 +00:00
KHobbits
74f46b558f Allow more currency customization.
Added currency key to messages.
2012-03-05 08:37:14 +00:00
KHobbits
f74833d045 Adding option to modify all users balances (including offline) /eco reset ** <amount> 2012-03-05 08:37:14 +00:00
KHobbits
5efe3f5ed4 Half-revert double backflip. 10 points.
(op prefix changes that md-5 broke, thinking I broke op prefixes)
2012-03-05 08:37:14 +00:00
md_5
82930842fc Fix op colours, which KHobbits broke! 2012-03-05 08:37:13 +00:00
Chris Ward
1f4e1fcf56 Cleanup
Signed-off-by: Chris Ward <chris@chrisgward.com>
2012-03-05 08:35:48 +00:00
Chris Ward
122d7ce538 Cleanup
Signed-off-by: Chris Ward <chris@chrisgward.com>
2012-03-05 08:35:48 +00:00
KHobbits
285aea5dfe Capital case for formatting. 2012-03-05 08:35:48 +00:00
KHobbits
42a148524e Force all kits to lowercase. 2012-03-05 08:35:48 +00:00
KHobbits
a87b8e869a *make it look like i'm doing something* 2012-03-05 08:35:48 +00:00
KHobbits
160db97e47 I think switches are better. 2012-03-05 08:35:48 +00:00
KHobbits
4b676222f9 Only update displayname on world change, not every teleport. 2012-03-05 08:35:48 +00:00
KHobbits
66a06f84f2 Extra command aliases 2012-03-05 08:35:47 +00:00
KHobbits
fbb5ffac46 Make the antioch message optional. 2012-03-05 08:35:47 +00:00
KHobbits
ed77f8bcbc Entity event cleanup 2012-03-05 08:35:47 +00:00
KHobbits
a7f6cde9b2 Shouldn't really be canceling events at priority monitor, oops. 2012-03-05 08:35:47 +00:00
KHobbits
2632110781 Don't think we need animation event anymore. 2012-03-05 08:35:47 +00:00
Iaccidentally
800a61bcf8 update messages.properties for the new bukkit download link (ci.bukkit,org no longer works) 2012-03-05 08:35:46 +00:00
md_5
85e6436bf0 I dont think free noteblocks are a good idea 2012-03-05 18:40:18 +11:00
md_5
cd5f894ec1 Allow spamming of this, by reducing explosion damage to 0, same effect, no mess 2012-03-05 18:28:04 +11:00
KHobbits
5090554cbd Missed one. 2012-03-05 00:39:37 +00:00
KHobbits
659ad5be55 Fixing spawnmob count. 2012-03-05 00:22:31 +00:00
KHobbits
157b814cd5 Add listgroups as TL key 2012-03-05 00:19:40 +00:00
KHobbits
e5ff6397cf Apply colors to group tags. 2012-03-05 00:08:37 +00:00
KHobbits
72827d5585 Build custom mob list /spawnmob 2012-03-04 21:54:51 +00:00
KHobbits
d0c4146084 CME 2012-03-04 21:43:24 +00:00
KHobbits
037df27d06 Adding starter/newbie kit to EssentialsSpawn
Optimization to EssentialsSpawn join event.
2012-03-04 20:09:25 +00:00
KHobbits
5544acef05 Extra command alias. 2012-03-04 16:17:16 +00:00
KHobbits
52afb22392 Updating Craftbukkit #2034 Bukkit #1378 2012-03-04 16:01:49 +00:00
ElgarL
af796bed24 Better reporting when a users.yml is failing to load. 2012-03-04 10:39:39 +00:00
KHobbits
1c64792672 Allow more currency customization.
Added currency key to messages.
2012-03-04 10:11:58 +00:00
KHobbits
aff5cdaf37 Adding option to modify all users balances (including offline) /eco reset ** <amount> 2012-03-04 09:20:03 +00:00
KHobbits
a2ecef8948 Half-revert double backflip. 10 points.
(op prefix changes that md-5 broke, thinking I broke op prefixes)
2012-03-04 08:18:25 +00:00
KHobbits
78180375c3 Merge branch 'master' of github.com:essentials/Essentials 2012-03-04 08:13:29 +00:00
md_5
db72175ad1 Fix op colours, which KHobbits broke! 2012-03-04 15:43:00 +11:00
snowleo
1fa51f73d8 Cleanup of /spawnmob 2012-03-03 17:01:53 +01:00
ElgarL
a4e369b512 Minor change to globalgroups 2012-03-03 14:03:52 +00:00
KHobbits
d5b168f98f Merge branch 'master' of github.com:essentials/Essentials 2012-03-03 13:49:26 +00:00
KHobbits
af87070ccd Update CB #2032 B #1377
Min CB #2015
2012-03-03 13:48:58 +00:00
ElgarL
47a03a993c Fix a silly logic error when testing bukkit perms 2012-03-03 13:47:59 +00:00
ElgarL
7b6d1b3226 Minor optimization when checking bukkit permissions. 2012-03-03 13:00:17 +00:00
md-5
bcd42f5cf4 Merge pull request #56 from Iaccidentally/patch-4
Allow spawning baby villagers and ocelots
2012-03-03 00:34:00 -08:00
md-5
2721dc5c29 Merge pull request #55 from chrisward/master
Just a really small cleanup
2012-03-03 00:31:48 -08:00
Chris Ward
e1437e9564 Cleanup
Signed-off-by: Chris Ward <chris@chrisgward.com>
2012-03-03 19:21:27 +11:00
Iaccidentally
54bbcda2a3 add little babbys 2012-03-03 03:04:54 -05:00
KHobbits
5e191d963a Capital case for formatting. 2012-03-03 07:09:41 +00:00
Chris Ward
8d455724fd Cleanup
Signed-off-by: Chris Ward <chris@chrisgward.com>
2012-03-03 18:07:43 +11:00
KHobbits
1670128d17 Force all kits to lowercase. 2012-03-03 07:03:54 +00:00
KHobbits
a1a0cda1bd *make it look like i'm doing something* 2012-03-03 05:27:02 +00:00
KHobbits
5e130592f7 I think switches are better. 2012-03-03 05:09:03 +00:00
KHobbits
fd989aaf2d Only update displayname on world change, not every teleport. 2012-03-02 19:05:30 +00:00
KHobbits
bb82807e3c Extra command aliases 2012-03-02 17:05:55 +00:00
KHobbits
fc744099a2 Make the antioch message optional. 2012-03-02 17:03:34 +00:00
KHobbits
7c05dc19cc Entity event cleanup 2012-03-02 16:54:12 +00:00
KHobbits
cbff40c82f Shouldn't really be canceling events at priority monitor, oops. 2012-03-02 16:33:20 +00:00
KHobbits
b2f82fd115 Don't think we need animation event anymore. 2012-03-02 16:29:06 +00:00
KHobbits
cbdecbb73e Merge pull request #54 from Iaccidentally/patch-3
update messages.properties for the new bukkit download link (ci.bukkit,o...
2012-03-01 20:15:16 -08:00
Iaccidentally
95749d5c8e update messages.properties for the new bukkit download link (ci.bukkit,org no longer works) 2012-03-01 23:10:32 -05:00
snowleo
0c07b6ac39 Will be removed until the next release XD 2012-03-02 01:30:52 +01:00
snowleo
3ba407a734 Better cats 2012-03-02 00:40:50 +01:00
snowleo
4e59b0a935 Fix world heights 2012-03-02 00:18:31 +01:00
snowleo
d09e3af0f7 Min version CB# 2004 2012-03-02 00:12:22 +01:00
snowleo
04a83dfc78 New eggs 2012-03-02 00:09:50 +01:00
snowleo
514666eae2 New Entities and Items for 1.2 2012-03-02 00:06:57 +01:00
snowleo
008c9b96ba CB#2004 B#1368 2012-03-01 23:57:34 +01:00
KHobbits
45ff2b33d5 Merge branch 'master' of github.com:essentials/Essentials 2012-03-01 22:37:15 +00:00
KHobbits
e01484f652 Kit sign cleanup 2012-03-01 22:36:51 +00:00
snowleo
eda8380586 update inventory 2012-03-01 23:23:23 +01:00
snowleo
79c376b584 Bukkit broke this sign :( 2012-03-01 23:10:12 +01:00
KHobbits
1ce314bc3c Fix kit timers resetting on server restart. 2012-03-01 22:04:50 +00:00
KHobbits
38170c16c0 Fix version matching. 2012-03-01 21:47:01 +00:00
snowleo
241b481423 Merge branch 'refs/heads/master' into release 2012-03-01 19:08:52 +01:00
snowleo
6af994bcb1 EntityType instead of CreatureType 2012-03-01 19:05:50 +01:00
snowleo
5eaef48834 Requires #1988 because of the new Inventory stuff 2012-03-01 19:05:50 +01:00
snowleo
2a1c4c3599 Updated to R6 2012-03-01 19:05:50 +01:00
snowleo
cac3dd6fa6 CB# 1988 B# 1360 2012-03-01 19:05:49 +01:00
md_5
492651e54c Separate config sections evenly 2012-03-01 19:05:47 +01:00
md_5
7c64ee8ecc Remove old, unwanted manifest.mf files 2012-03-01 19:05:47 +01:00
ElgarL
b1758b1342 Make 'manload' reload the config correctly. 2012-03-01 19:05:47 +01:00
KHobbits
3d01a66489 Updating Bukkit: CB #1858, B #1334 2012-03-01 19:05:47 +01:00
snowleo
a1940111a4 Merge remote-tracking branch 'origin/groupmanager' 2012-03-01 17:33:25 +01:00
snowleo
bc2bea8774 EntityType instead of CreatureType 2012-03-01 17:33:09 +01:00
snowleo
697b7dcc2c Requires #1988 because of the new Inventory stuff 2012-03-01 16:17:40 +01:00
snowleo
b0a2daf8e8 Updated to R6 2012-03-01 16:16:05 +01:00
snowleo
8ef671d1af CB# 1988 B# 1360 2012-03-01 16:16:05 +01:00
md_5
c42047d643 Merge remote-tracking branch 'origin/master' 2012-03-01 16:23:21 +11:00
md_5
0e35e94b10 Separate config sections evenly 2012-03-01 14:40:57 +11:00
md_5
35047ad6ee Remove old, unwanted manifest.mf files 2012-03-01 12:27:59 +11:00
ElgarL
0bea62ed00 Make 'manload' reload the config correctly. 2012-02-28 10:46:10 +00:00
KHobbits
149b4855a6 Adding option to log all eco api transactions. 2012-02-28 02:45:03 +00:00
KHobbits
ca1770fddc Prevent EssSpawn trying to handle spawning of jailed players. 2012-02-28 02:45:03 +00:00
KHobbits
9ecb3d07a9 Change jail listener to catch respawn at Highest 2012-02-28 02:45:03 +00:00
KHobbits
517ec1c756 Allow people to hit exactly 'min money'. 2012-02-28 02:45:03 +00:00
KHobbits
dae8330ec2 Cleanup. 2012-02-28 02:45:03 +00:00
KHobbits
d84102f2cc Adjustments to negative eco give/take. 2012-02-28 02:45:03 +00:00
KHobbits
a1a60cd23a Display users new balance on /eco give/take. 2012-02-28 02:45:02 +00:00
KHobbits
c3de3a12cc Add Minimum Balance, to allow people to manage overdrafts. 2012-02-28 02:45:02 +00:00
KHobbits
c7c8822810 Adding option to log all eco api transactions. 2012-02-27 15:31:43 +00:00
KHobbits
fc1d3c894d Prevent EssSpawn trying to handle spawning of jailed players. 2012-02-27 03:40:18 +00:00
KHobbits
f82dee2da2 Change jail listener to catch respawn at Highest 2012-02-27 03:24:58 +00:00
KHobbits
219129a1ea Allow people to hit exactly 'min money'. 2012-02-26 05:10:04 +00:00
KHobbits
113f665d68 Cleanup. 2012-02-26 05:06:03 +00:00
KHobbits
8c35e32c86 Adjustments to negative eco give/take. 2012-02-26 05:01:40 +00:00
KHobbits
cc3eff6ca0 Display users new balance on /eco give/take. 2012-02-26 04:27:29 +00:00
KHobbits
739febf06a Add Minimum Balance, to allow people to manage overdrafts. 2012-02-26 04:15:14 +00:00
KHobbits
158cf6a3b1 Updating Bukkit: CB #1858, B #1334 2012-02-25 17:57:26 +00:00
KHobbits
b5772fd4af Lowering min bukkit to r4 - 1838, this build should still be compatible. 2012-02-25 17:40:00 +00:00
KHobbits
8afddfda98 Merge branch 'master' into release 2012-02-25 17:22:39 +00:00
KHobbits
8a7ffb2d4e Merge remote branch 'remotes/origin/groupmanager' 2012-02-25 17:22:01 +00:00
ElgarL
c51a22df1b Prevent promoting players to, and demoting to GlobalGroups. 2012-02-25 09:29:54 +00:00
ElgarL
48072b6c99 Prevent adding inheritances to globalgroups. These are permissions
collections, not player groups.
2012-02-25 09:22:54 +00:00
KHobbits
b384f077d6 Write to user files less, on money update. 2012-02-23 17:25:00 +00:00
KHobbits
8032a033f7 Balance top now has server total on first line.
Balance top will update ess balance backup if using register/vault eco.
2012-02-23 15:17:23 +00:00
KHobbits
37c703527e Fixing upgrade script to allow powertool upgrade. 2012-02-23 14:49:23 +00:00
KHobbits
6cac560834 Fixing kits for new config classes. 2012-02-22 12:32:51 +00:00
KHobbits
9110f674c0 Extra command aliases. 2012-02-22 01:29:37 +00:00
KHobbits
862aac2752 Powertools dispatch commands as delayed tasks (should reduce any conflict issues). 2012-02-22 00:23:04 +00:00
KHobbits
69c1115d90 Switch powertools to use different event.
Reduce multiple triggering of powertool events.
Abort event when used with powertool.
2012-02-22 00:11:21 +00:00
KHobbits
52473b4725 Fix powertools with new config format. 2012-02-22 00:10:13 +00:00
KHobbits
dad9f0981d Check to see if home section exists. 2012-02-21 22:19:56 +00:00
KHobbits
554f99bc71 Fixing home list. 2012-02-21 22:12:37 +00:00
KHobbits
594fc433a5 Fix /sudo message display. 2012-02-21 21:39:25 +00:00
ElgarL
f3f29351da Removed BukkitPermsOverride as this is now the default with bukkit
handling child nodes.
2012-02-21 18:40:54 +00:00
ElgarL
d904709d06 Update for Bukkit R5 compatability.
Removed some unused variables.
2012-02-21 18:38:08 +00:00
snowleo
82f2bff2da Never give our user object to other plugins! 2012-02-21 18:41:27 +01:00
snowleo
e37fd0383c Merge branch 'refs/heads/groupmanager' 2012-02-21 17:34:45 +01:00
snowleo
8cd0c2d81d Updated Essentials to work with R5 2012-02-21 17:33:46 +01:00
snowleo
f1d4b2655f CB#1952
B#1330
2012-02-21 16:47:25 +01:00
KHobbits
1bbd5fa03f Merge branch 'master' into release 2012-02-19 01:20:50 +00:00
KHobbits
26e634758e Add bPerm2 support for chat prefixes. 2012-02-18 22:47:38 +00:00
KHobbits
3cd1527aeb Little bit of extra info in the default /einfo file 2012-02-18 22:08:18 +00:00
KHobbits
32d15676af Re-allow colours in newb welcome messages. 2012-02-18 21:34:05 +00:00
KHobbits
f680bd4bd6 Adding full keyword support for newb join message.
Also adding {ADDRESS} and {USERNAME} as new keywords.
2012-02-18 21:09:18 +00:00
ElgarL
a1959783f3 A command of '/manload' with no world arguments now performs a full
reload of GM.
2012-02-18 09:05:28 +00:00
KHobbits
94a553f3ec Don't try to use old bPerms API if it is not available. 2012-02-16 23:44:13 +00:00
KHobbits
1cf716534a Fixing being charged twice for /back. 2012-02-16 16:57:50 +00:00
KHobbits
35683cbfcf Merge remote branch 'remotes/origin/master' into release 2012-02-15 19:09:02 +00:00
md_5
ac95bbf2c7 Its a good idea to actually register the listeners 2012-02-15 19:55:41 +11:00
md_5
7be3239af5 Make Essentials Update use new Listener system, and fix a few general mistakes, including that of the config 2012-02-15 19:34:46 +11:00
md_5
df7f19f004 Fix formatting in the config.yml and plugin.yml files. Add a new author. 2012-02-15 17:57:53 +11:00
md_5
79d38108e0 Add all the new R4 methods 2012-02-15 17:53:47 +11:00
md_5
5af76d42ee Update to 1.1-R4 2012-02-15 17:44:35 +11:00
md_5
d926839ffd Remove dropItems from the inventory work around 2012-02-15 17:21:28 +11:00
ElgarL
f9b9110201 comment name change 2012-02-15 06:16:33 +00:00
ElgarL
3fd7635397 Depreciate PlayerTeleportEvent, PlayerRespawnEvent and PlayerPortalEvent
as it's all handled in PlayerChangedWorldEvent.
This also means we no longer update permissions before we change
worlds.
2012-02-15 06:15:31 +00:00
KHobbits
dadf6722f7 Merge branch 'master' into release 2012-02-14 23:56:02 +00:00
KHobbits
2aa24bec2f /spawnmob - Only list mobs you have permission to spawn. 2012-02-14 23:55:29 +00:00
snowleo
706780bb36 Don't return null, throw an exception 2012-02-14 20:30:06 +01:00
snowleo
092a9dde2c Merge pull request #49 from Iaccidentally/patch-2
fix typo in config.yml (another one)
2012-02-14 11:21:52 -08:00
Iaccidentally
b238dc0fa2 fix typo in config.yml (another one) 2012-02-14 14:21:07 -05:00
snowleo
b6cbc665d7 Merge pull request #48 from Iaccidentally/patch-1
fix typo in config.yml
2012-02-14 11:18:03 -08:00
Iaccidentally
665980c800 fix typo in config.yml 2012-02-14 14:16:34 -05:00
ElgarL
e6c762fdcb Depreciate PlayerTeleportEvent as it's all handled in
PlayerChangedWorldEvent.
2012-02-14 13:01:39 +00:00
snowleo
dd1dc82f6d Less sanitizing for more performance 2012-02-13 21:32:05 +01:00
KHobbits
e55bee514f Caching regex return in user cleanup.
(Pushing this for testing purposes).
2012-02-13 19:40:33 +00:00
KHobbits
6ef21a21d7 Merge branch 'master' into release 2012-02-13 17:35:05 +00:00
KHobbits
d5e68718b9 Merge remote branch 'remotes/origin/groupmanager' 2012-02-13 17:24:32 +00:00
KHobbits
2cf3bcffef Merge branch 'master' of github.com:essentials/Essentials 2012-02-13 17:17:14 +00:00
KHobbits
3985a7aa08 Allow charges for different mob types in /spawner 2012-02-13 17:16:27 +00:00
KHobbits
19231bd557 Add per warp command costs
Make warp other commands charge the commander, not the warped.
2012-02-13 17:09:07 +00:00
md_5
0ee6d41b1b Clean up the CommandException stack traces so they appear as if Essentials was never there. 2012-02-12 08:19:24 +11:00
KHobbits
7aec351469 Update trade signs properly, and visibly handle full signs. 2012-02-11 21:15:26 +00:00
KHobbits
73631e575b Merge pull request #46 from krinsdeath/master
Added Privileges to known Permissions plugins
2012-02-11 12:12:59 -08:00
KHobbits
b799a238f2 Refactoring tpaccept perm check to include tpaall. 2012-02-11 20:10:19 +00:00
KHobbits
c06b2dc9da Merge pull request #45 from Wolvereness/master
Fix /tpaccept permission check
Refactoring to follow.
2012-02-11 12:06:42 -08:00
Jeff Wardian
50e3312f79 Added PrivilegesHandler.java;
Implemented privileges in PermissionsHandler.java;

Fixed PrivilegesHandler.canBuild();
2012-02-11 10:06:18 -08:00
ElgarL
ec654f6412 Change Service registration to register WorldsHolder instead of
AnjoPermissionsHandler. This is the correct entry point for all data.
2012-02-11 10:36:55 +00:00
Wolvereness
513b4d1372 Fix exploit with /tpaccept if sender no longer has permission 2012-02-09 23:14:57 -06:00
KHobbits
1187f199d9 Allow colour codes in /ping 2012-02-09 22:13:00 +00:00
KHobbits
c3c1a290b6 New Permission: essentials.sudo.exempt
If a user has this perm, they cannot be controlled.
2012-02-09 22:11:46 +00:00
KHobbits
258d416eb8 Optional argument to /ping [message]- Message to be echo'd.
Possible use in scripts, checking for lag, /sudo, etc.
2012-02-09 22:02:24 +00:00
KHobbits
c6649615fe Fixing silly typo - Fixes shout costs. 2012-02-09 02:11:36 +00:00
ElgarL
6404fc031a Add some commenting 2012-02-05 16:41:34 +00:00
ElgarL
29ec27d4fa Fix world mirroring so it correctly creates data files and data sources
for partially mirrored worlds.
Fixed world mirroring so it returns the correct data for the
requested world
2012-02-05 16:30:58 +00:00
ElgarL
c8dfbb5383 Prevent getAllPlayersPermissions() processing a group more than once.
Improves performance when using complex inheritance structures.
2012-02-02 18:10:35 +00:00
KHobbits
8a392410bc Merge branch 'master' into release 2012-02-02 11:41:18 +00:00
KHobbits
65b24efcb3 Make it so ops can build, even if they don't have the matching permission. 2012-02-02 10:43:17 +00:00
KHobbits
c764420e84 Force minimum CB version to 1846, don't want people on #1840 due to big bugs. 2012-02-02 10:32:18 +00:00
KHobbits
9614031f7f Fixing repair to not repair items with datavalues, unless they actually have a durability. 2012-02-02 10:27:35 +00:00
KHobbits
6dc6a5953b Craftbukkit #1846 Bukkit #1211 2012-02-02 10:27:09 +00:00
KHobbits
98c3e5ce8e Recover from broken config files, but keep a backup of the old one for purpose of data recovery. 2012-02-02 09:48:56 +00:00
KHobbits
34bc0de6e1 Extend valid characters to be a little less strict. 2012-02-02 09:37:30 +00:00
KHobbits
4a68ff5a7a Sanitize mail for untoward characters.
Prevent a user error from terminating essentials timer task.
2012-02-02 09:26:36 +00:00
ElgarL
d809c6d0c4 fix setGroup to only block superperms update if update is false. 2012-02-02 02:41:10 +00:00
ElgarL
0e3c4a1368 Fix a bug with getWorldData return the main world data for all mirrors,
instead of the worlds parent data.
2012-02-02 02:01:04 +00:00
KHobbits
cfc7418086 More info, and less severe warning on jail error. 2012-01-31 08:33:14 +00:00
KHobbits
a8a07d8dbe Update jails to new event system. 2012-01-31 08:06:50 +00:00
ElgarL
413b03315f Catch all errors in badly formatted groups. 2012-01-31 03:16:34 +00:00
ElgarL
83a227d050 Track the 'onPlayerChangeWorld' event as some teleports seem to not be
triggering a world move.
2012-01-30 17:08:55 +00:00
ElgarL
b5ae4f2955 Auto sort permissions on load to speed up population of superperms.
Negating a parent node after adding all nodes with * will now
correctly remove all child nodes of that parent before populating
superperms.
	  eg.
	      - '*'
	      - -vanish.*
	      - vanish.standard
2012-01-30 14:41:19 +00:00
KHobbits
b0514341bc Merge branch 'master' into release 2012-01-30 05:36:03 +00:00
KHobbits
52e276af98 Remove invalid item spawn blacklist warning during startup. 2012-01-29 23:36:27 +00:00
KHobbits
bc6ef182a9 Merge branch 'master' into release 2012-01-29 21:44:30 +00:00
KHobbits
55b98ff934 Prevent /home bed, if the bed was later destroyed. 2012-01-29 21:44:15 +00:00
KHobbits
81086b989a Merge branch 'master' into release 2012-01-29 21:39:05 +00:00
ElgarL
00ca22bad1 .project change for Eclipse Build tool 2012-01-29 21:37:50 +00:00
KHobbits
b905a65f0e Fixing Kill/suicide in creative mode. 2012-01-29 21:37:38 +00:00
KHobbits
bc961a15ca Merge branch 'master' into release 2012-01-29 21:20:56 +00:00
KHobbits
7a8f0fec4d New craftbukkit
CB 1840, B 1208
2012-01-29 21:06:55 +00:00
KHobbits
f1cee6d0d9 Merge remote branch 'remotes/origin/groupmanager' 2012-01-29 20:57:54 +00:00
KHobbits
594f411d2e Fix boolean fail in /r offline checking. 2012-01-29 20:57:17 +00:00
ElgarL
8ad0f9ec11 updating .gitignore 2012-01-29 11:04:52 +00:00
ElgarL
46a694d41b Fix players retaining permissions when demoted. 2012-01-29 10:54:24 +00:00
KHobbits
f061d10078 Merge branch 'master' into release 2012-01-29 05:00:04 +00:00
KHobbits
8542def88c Optional second argument to /tpaccept, it will only accept the request if the sender matched that string. 2012-01-29 04:59:30 +00:00
KHobbits
930a1331d9 Added kit note.
Fixes #1276
2012-01-29 03:26:44 +00:00
KHobbits
021a149f2d Kill people the proper way.
Test #1410
2012-01-29 03:23:38 +00:00
KHobbits
583a7292f0 Switch /near priority to check for int first.
Test #1269
2012-01-29 03:09:59 +00:00
KHobbits
fb19cd53bc Make sure player is online when sending a /reply. 2012-01-29 02:57:52 +00:00
KHobbits
7450b0bbea Merge branch 'master' into release 2012-01-29 01:45:40 +00:00
KHobbits
d60ae36a0c Merge remote branch 'remotes/origin/groupmanager' 2012-01-29 01:45:03 +00:00
KHobbits
4bc8c70a4b Prevent disabled sign creation (if any of essentials signs are enabled) 2012-01-29 01:42:55 +00:00
KHobbits
ff603688cb Fix sign list format. 2012-01-29 01:38:24 +00:00
KHobbits
6009a8dc7d Disable all signs by default. 2012-01-29 01:27:04 +00:00
KHobbits
11bee4e7df Added options to enable each sign type 2012-01-29 01:12:38 +00:00
ElgarL
cdfed7a79e silly formatting change to test gitbot 2012-01-28 18:01:17 +00:00
KHobbits
f1f93ba94d Merge branch 'master' into release 2012-01-28 12:59:15 +00:00
KHobbits
750fabcddd Merge remote branch 'remotes/origin/groupmanager' 2012-01-28 12:58:37 +00:00
ElgarL
5efb151b30 fix for an iterator error if there is only one element in the array. 2012-01-28 11:59:54 +00:00
ElgarL
c101c1ca6b Fixed a bug when pushing superperms in the wrong order. 2012-01-28 11:47:39 +00:00
KHobbits
af7aec7927 Only list bed home if it is set. 2012-01-28 01:39:51 +00:00
KHobbits
842afc6cc3 Allow space as well as : in /delhome 2012-01-28 01:32:15 +00:00
KHobbits
b52bdd4b40 Stop users from using /sethome bed 2012-01-28 01:09:02 +00:00
KHobbits
70639b5c85 If bed home is set, give priority when spawning. 2012-01-28 00:57:08 +00:00
KHobbits
d377672c48 Check bed still exist, for bed homes. 2012-01-28 00:49:22 +00:00
KHobbits
4f1eb9f1cb Switch website URL's to point at wiki. 2012-01-28 00:20:46 +00:00
ElgarL
cacf235d18 Properly fix inherited negated nodes. 2012-01-27 13:09:11 +00:00
ElgarL
9077d6c9af do not allow inherited permissions to negate higher perms. 2012-01-27 12:38:00 +00:00
KHobbits
50315cbd55 Merge branch 'master' of github.com:essentials/Essentials 2012-01-26 21:21:35 +00:00
KHobbits
8c2a8646e4 Revert emergency listener to old style
Stops peoples world world burning down if they throw in 2.8, on a 1.0 server.
2012-01-26 21:21:13 +00:00
snowleo
4797911706 Merge branch 'refs/heads/master' into release 2012-01-26 04:51:10 +01:00
snowleo
218960e39c Minor fix to french translation 2012-01-26 04:49:26 +01:00
Léa Gris
e91392dc54 i18n added to command nuke 2012-01-26 04:46:00 +01:00
Léa Gris
30b54c62ef Updated translations to Essentials Dev2.7.191 2012-01-26 04:45:16 +01:00
KHobbits
2c63b2e2ae Merge branch 'master' into release 2012-01-26 00:31:05 +00:00
KHobbits
4736069ddd Set min bukkit to 1818 - RB 2012-01-26 00:30:33 +00:00
KHobbits
101f05c127 Merge remote branch 'remotes/origin/groupmanager' 2012-01-26 00:28:10 +00:00
ElgarL
747b129aa2 Fixed an infinite loop error when using '/manudel' on a logged in
player. It caused setDefaultGroup to trigger a bukkit update when no GM
User existed yet.
2012-01-25 23:44:14 +00:00
ElgarL
dab4a4f587 Trap errors in fetching the mirrors map. 2012-01-25 22:43:07 +00:00
ElgarL
53d3bfa977 Check for a null player object in the PlayerTeleportEvent. 2012-01-25 22:35:24 +00:00
ElgarL
d7e814d55c Fixed subgroups (I broke earlier). 2012-01-25 22:33:22 +00:00
ementalo
01e4812e46 Merge branch 'master' into release 2012-01-25 14:29:05 +00:00
paul.aston
7d9c71ad69 CB #1818
RB #1200
2012-01-25 14:23:46 +00:00
Paul A.
81ec3173b2 Merge pull request #43 from essentials/groupmanager
Fix trying to modify an unmodifiable collection breaking superperms.
2012-01-24 17:29:08 -08:00
ElgarL
540b480427 Fix trying to modify an unmodifiable collection breaking superperms. 2012-01-25 01:20:44 +00:00
KHobbits
e35ef69bdb Merge branch 'master' into release 2012-01-25 00:04:08 +00:00
KHobbits
f4825a2c28 Merge remote branch 'remotes/origin/groupmanager' 2012-01-25 00:02:15 +00:00
ementalo
2d328ecb94 Don't try to spawn users who have disconnected before we have a chance to spawn them 2012-01-24 22:43:33 +00:00
ElgarL
59a78f05c7 Fix typo/wording in changelog
Allow negation to the * permission node when populating superperms.
2012-01-24 19:41:22 +00:00
ElgarL
3a559ae1ad Allow negations with the * permission node when population superperms. 2012-01-24 19:38:22 +00:00
ElgarL
09deec5770 Fix hasOwnData to return a correct result with new mirroring system 2012-01-24 15:37:21 +00:00
ElgarL
a3f1105a64 Fixed isInList 2012-01-24 15:35:20 +00:00
ElgarL
adcd99626f addSubGroup now returns a boolean for success/failure.
'/manuaddsub' now correctly reports if it was able to add the sub
group.
2012-01-24 14:21:07 +00:00
ElgarL
710a27a53b Added recursive loop detection for World mirroring (you may not set the
main world as a mirror of another).
Fixed fetching world data so it no longer returns the mirrored world
for groups. Each world data holder now points to the correct data set,
so can be returned as an object.
2012-01-24 14:08:53 +00:00
snowleo
f8a66de08c Merge branch 'refs/heads/master' into release 2012-01-24 03:43:49 +01:00
snowleo
7fa0e9818f Merge branch 'refs/heads/groupmanager' 2012-01-24 03:43:17 +01:00
ementalo
3b935a2628 Add new permission essentials.protect.alerts.notrigger
If user has this permisson they do not trigger EssProtect block alerts
2012-01-23 15:48:56 +00:00
ElgarL
6237e2e51f Fixed infinite loop error on player join.
Optimized code to only update the player logging in instead of all
players online.
2012-01-22 23:46:26 +00:00
ElgarL
8d5224444c Separated all events to be independent classes. 2012-01-21 20:18:40 +00:00
ElgarL
0bf58b939d Fixed a random null error upon a player portaling. 2012-01-21 19:09:08 +00:00
KHobbits
9323b6a78a Merge branch 'master' into release 2012-01-21 17:19:12 +00:00
ElgarL
84fc2887e3 Update to new Bukkit Event system.
Update GroupManagerBridge for new event system.
2012-01-21 11:47:08 +00:00
KHobbits
0e2afd0122 Catching throwable leads to madness, lets do this safely. 2012-01-21 00:19:13 +00:00
KHobbits
69a136754f Catch errors too, incase the class doesn't exist. 2012-01-21 00:01:43 +00:00
KHobbits
6554add2b6 Messages Cleanup 2012-01-20 23:13:37 +00:00
KHobbits
f4d638c2d9 If vault throws an exception, it should not be enabled. 2012-01-20 23:04:43 +00:00
KHobbits
7e5687b5cc Adding translation keys for [L] and [Spy] 2012-01-20 22:57:35 +00:00
KHobbits
42ab423479 Check shout/question messages are longer than 1 character. 2012-01-20 22:54:47 +00:00
snowleo
93d632a9ff Removing load info, bucket displays that now. 2012-01-20 05:52:35 +01:00
snowleo
90e1b619be New Event code for EssentialsSpawn 2012-01-20 05:34:28 +01:00
snowleo
ebb3a1c19f Update for new CraftBukkit Event Code
EssentialsSpawn can't be updated yet, because the new event system lacks dynamic priorities.
2012-01-20 05:20:37 +01:00
snowleo
1d0a9e4c89 CB#1791 2012-01-20 04:09:35 +01:00
KHobbits
871657bdf9 Fix EssChat displayname error. 2012-01-19 15:51:55 +00:00
KHobbits
92c2e1777d Merge remote branch 'remotes/origin/groupmanager' 2012-01-19 15:34:00 +00:00
KHobbits
6ccb5830e0 Fix Lombok include. 2012-01-19 15:08:37 +00:00
snowleo
18f9fd3e31 Update of Lombok, fixes memory leak in Netbeans 2012-01-19 13:17:05 +01:00
snowleo
5995544f2d Cache MessageFormats for Chat 2012-01-19 02:03:20 +01:00
KHobbits
9f37b06123 Compiled regex is faster. 2012-01-18 23:35:30 +00:00
KHobbits
be5e54ab99 Make sure to clean the chatStore. 2012-01-18 23:08:40 +00:00
KHobbits
59090403e8 Reduce duplicate calls in EssentialsChat
Should cut the time down a little.
2012-01-18 22:53:39 +00:00
KHobbits
3dcfb94ece Merge remote branch 'remotes/origin/groupmanager' 2012-01-18 20:04:50 +00:00
KHobbits
80322e2066 Merge remote branch 'remotes/origin/groupmanager' 2012-01-17 23:50:05 +00:00
KHobbits
3e10997bef Merge remote branch 'remotes/origin/groupmanager' 2012-01-17 23:49:38 +00:00
KHobbits
714bbb1c78 Merge branch 'master' of github.com:essentials/Essentials 2012-01-17 17:40:22 +00:00
KHobbits
1994fb9f79 Auto Update GM Version 2012-01-17 17:24:22 +00:00
snowleo
c6ac284542 Shorter names for enchantment signs. 2012-01-17 01:45:03 +01:00
KHobbits
d9c4b564fc Stripping vanilla colour from /helpop and /mail
Adding support for &k in EssChat
Adding support for colour in /msg and /r - New perm: essentials.msg.color
2012-01-16 20:25:36 +00:00
KHobbits
154d47d54e Merge branch 'master' of github.com:essentials/Essentials 2012-01-16 19:42:37 +00:00
KHobbits
717766b6f9 Stripping vanilla colours from /msg 2012-01-16 19:42:15 +00:00
snowleo
ac57b5f72d Fix /nick command colors 2012-01-16 20:38:53 +01:00
snowleo
9cb1e28654 Strip colors from chat, if the user does not have the permission. 2012-01-16 20:29:55 +01:00
KHobbits
36146ff618 Removing debugging message from player login. 2012-01-16 18:58:44 +00:00
snowleo
69a16abc76 Cleanup 2012-01-16 19:11:41 +01:00
KHobbits
672207d385 Adding support for Vault as a fallback economy method. 2012-01-16 18:00:43 +00:00
KHobbits
5255f18572 Merge remote branch 'remotes/origin/master' into release 2012-01-16 12:43:09 +00:00
snowleo
6428499138 Optimize TextInput to cache motd and info textfiles. 2012-01-16 04:51:27 +01:00
snowleo
9095aa40eb Revert changes to Usermap 2012-01-16 02:12:20 +01:00
snowleo
e43491bc83 Optimize Break in Protect 2012-01-16 01:55:04 +01:00
snowleo
d21567290d Speed improvements for Move and Interact Event. 2012-01-16 00:50:52 +01:00
snowleo
68e6c98e60 Reload less 2012-01-14 23:25:52 +01:00
snowleo
28981cba8a Temporary fix for Spawns and Jails when Worlds are loaded after Essentials.
This will be replaced by BetterLocation fix in 3.0 branch.
2012-01-14 23:13:58 +01:00
KHobbits
f748383969 Allowing use of aliases in help/info/motd, for command suggestions.
Test #1441
2012-01-14 16:53:18 +00:00
KHobbits
e4a90c11a7 Fixing double charges on /home
Test #1426
2012-01-14 16:42:53 +00:00
KHobbits
35e6aebd09 Fixing {WorldDate}
Test #1353
2012-01-14 16:36:19 +00:00
KHobbits
087d5a782a Merge branch 'master' into release 2012-01-14 15:52:55 +00:00
KHobbits
0d4c728d4b Merge remote branch 'remotes/origin/groupmanager' 2012-01-14 15:52:22 +00:00
KHobbits
38e85fae7e Update Essentials/src/com/earth2me/essentials/commands/Commanditemdb.java 2012-01-14 15:04:16 +00:00
KHobbits
2dce5d2b23 Merge branch 'master' into release
~ GM needs testing before release ~
2012-01-14 13:16:33 +00:00
KHobbits
b2fe7986f8 Removing debugging messages. 2012-01-13 22:50:48 +00:00
KHobbits
59b2c06ef8 Adjusting default spawn behavior.
Moving option in config file.
2012-01-13 22:41:47 +00:00
snowleo
f5d57efbba Merge branch 'refs/heads/groupmanager' 2012-01-13 01:38:54 +01:00
snowleo
5f41b13351 Add new eggs to items.csv 2012-01-12 23:56:39 +01:00
snowleo
7f759d520c Min Bukkit version is 1713 now 2012-01-12 23:43:11 +01:00
snowleo
af6c07d304 Added the new Enchantments 2012-01-12 23:42:04 +01:00
snowleo
f301e883fc Netbeans 7.1 stuff 2012-01-12 23:37:39 +01:00
snowleo
7d0e65e9ac CB#1713 B#1136 2012-01-12 23:36:45 +01:00
snowleo
2799efd0a3 Merge pull request #42 from jjkoletar/patch-1
No sending to all players, must specify target.
2012-01-01 16:38:05 -08:00
Jeremy
2d003de5c0 No sending to all players, must specify target. 2012-01-01 18:18:29 -06:00
snowleo
a256c4c6bc Only info not a warning if a file is missing 2011-12-20 12:25:30 +01:00
snowleo
a0bf25749d Only info not a warning if a file is missing 2011-12-20 12:24:59 +01:00
snowleo
68376b50fc Correctly match release and non release versions of bukkit. 2011-12-20 12:20:41 +01:00
snowleo
9d14af5d3e Correctly match release and non release versions of bukkit. 2011-12-20 12:20:12 +01:00
snowleo
21b7931f7b Fix sending our player object to other plugins. 2011-12-20 11:57:51 +01:00
snowleo
4386192e7e Fix sending our player object to other plugins. 2011-12-20 11:57:22 +01:00
snowleo
40f9c1e019 Always return an offlineplayer object with the name, that the user wants. 2011-12-19 12:57:09 +01:00
snowleo
433b691b29 Fix double names in /balancetop and show display name in balancetop 2011-12-19 12:39:23 +01:00
snowleo
eeeea7e227 Merge branch 'refs/heads/master' into release 2011-12-19 12:07:28 +01:00
KHobbits
222f09bcac Merge branch 'master' of github.com:essentials/Essentials 2011-12-19 10:57:44 +00:00
KHobbits
4581121750 Prevent future warps being named as numbers. 2011-12-19 10:57:18 +00:00
snowleo
5a33fb9ca9 More null checks for Jails 2011-12-19 11:53:52 +01:00
KHobbits
8640a687b1 Merge remote branch 'remotes/origin/master' into release 2011-12-19 05:04:15 +00:00
KHobbits
6298af0039 Merge branch 'master' of github.com:essentials/Essentials 2011-12-15 20:47:24 +00:00
KHobbits
42849879eb Make powertool use a chat event, instead of just messaging each user. 2011-12-15 20:47:06 +00:00
snowleo
1a27a74476 Corrected version match for 1597 build version 2011-12-15 10:32:04 +01:00
snowleo
3aed03caf0 Fix failing override for /enchant /eco /ext 2011-12-14 15:07:08 +01:00
snowleo
b61a67224a Merge branch 'refs/heads/master' into release 2011-12-14 11:56:09 +01:00
snowleo
f1ddcbd4fd Merge branch 'refs/heads/groupmanager' 2011-12-14 10:03:32 +01:00
KHobbits
030c1c94d1 Read current exp, instead of stored exp.
This means that exp used in enchanting is subtracted from total exp.
2011-12-14 03:41:24 +00:00
snowleo
0262ca1a4e Merge branch 'refs/heads/master' into release 2011-12-13 23:52:58 +01:00
snowleo
7f4a4951f2 Merge branch 'refs/heads/groupmanager' 2011-12-13 23:52:25 +01:00
KHobbits
1dbbee6914 Fixing killall command definition. 2011-12-13 09:38:20 +00:00
snowleo
8747b97c60 Merge branch 'refs/heads/master' into release 2011-12-13 10:32:59 +01:00
snowleo
8b726f81db Renamed /butcher to /killall and fixes to the code. 2011-12-13 10:28:15 +01:00
snowleo
31ca41d09f Netbeans 7.1 changes for EssentialsUpdate 2011-12-13 08:46:50 +01:00
snowleo
ab49f31b6d Tiny fix to the last commit. 2011-12-13 08:41:28 +01:00
snowleo
4c113604da Better exp fix and allow exp on buy and sell signs. 2011-12-13 08:38:15 +01:00
snowleo
ef5d7898c3 Disabling exp as currency. Normal money will be used. 2011-12-13 07:35:46 +01:00
KHobbits
c391c3d785 Update exp trade signs on purchase. 2011-12-13 04:52:09 +00:00
KHobbits
3dbfa343d0 Fixing Sell/Buy Signs which use EXP as a currency. 2011-12-13 04:29:16 +00:00
KHobbits
7071b74aa3 Merge branch 'master' of github.com:essentials/Essentials 2011-12-13 03:12:09 +00:00
KHobbits
18ce62d0b9 Update copylibs. 2011-12-13 03:11:11 +00:00
KHobbits
d38d047f74 Inform user that they were healed. 2011-12-13 01:47:58 +00:00
KHobbits
f38ac61e3e Merge branch 'master' into release 2011-12-12 23:15:48 +00:00
KHobbits
ac48def854 Updating min Bukkit version. 2011-12-12 23:13:39 +00:00
KHobbits
33e2379b42 Merge branch 'master' into release 2011-12-12 23:06:40 +00:00
KHobbits
3fe1ec9beb Updating to RB
CraftBukkit #1597 Bukkit #1073
2011-12-12 23:00:21 +00:00
KHobbits
c0ecb0221d Merge remote branch 'remotes/origin/groupmanager'
Adjusting bukkit paths to remove version number.
2011-12-12 22:51:18 +00:00
KHobbits
c6b275dcc1 Update Bukkit jars and paths. 2011-12-12 22:45:59 +00:00
snowleo
8d0230d6a8 Merge branch 'refs/heads/master' into release 2011-12-08 05:41:00 +01:00
snowleo
37e5260cda Merge branch 'refs/heads/master' into release 2011-11-29 21:55:09 +01:00
snowleo
19b8031933 Merge branch 'refs/heads/master' into release 2011-11-28 22:42:17 +01:00
snowleo
99211fd407 Merge branch 'refs/heads/master' into release 2011-11-28 20:28:05 +01:00
snowleo
3d839c2b21 Merge branch 'refs/heads/master' into release 2011-11-28 20:03:09 +01:00
snowleo
e1e7a1cfdb Merge branch 'refs/heads/master' into release 2011-11-28 04:23:38 +01:00
snowleo
0ed7f87ee0 Merge branch 'refs/heads/master' into release 2011-11-27 20:59:19 +01:00
snowleo
579bbc9f2c Merge branch 'refs/heads/master' into release 2011-11-24 04:26:05 +01:00
snowleo
e672de949c Merge branch 'refs/heads/master' into release 2011-11-20 21:46:02 +01:00
snowleo
f72762bcb2 Merge branch 'refs/heads/master' into release 2011-11-19 16:04:00 +01:00
snowleo
7ecc3c25b0 Merge branch 'refs/heads/master' into release 2011-11-17 19:06:44 +01:00
snowleo
adcffba7cf Merge branch 'refs/heads/master' into release 2011-11-17 16:34:39 +01:00
snowleo
e271e60144 Merge branch 'refs/heads/master' into release 2011-11-17 15:34:27 +01:00
snowleo
16be86953f Merge branch 'refs/heads/master' into release 2011-11-15 22:52:42 +01:00
KHobbits
1f527cdb9e Merge branch 'essmaster' into essrelease 2011-11-08 05:17:42 +00:00
snowleo
11e8240c5c Merge branch 'refs/heads/master' into release
Conflicts:
	EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
2011-10-22 11:55:01 +02:00
KHobbits
4aecc034c2 Fixing typo in release build. 2011-10-11 22:51:30 +01:00
KHobbits
a111a07bca Merge branch 'essmaster' into essrelease 2011-10-11 20:06:23 +01:00
KHobbits
eb71097546 Merge remote branch 'remotes/ess/master' into essrelease 2011-10-11 17:52:56 +01:00
KHobbits
c7fcb72d6c Merge remote branch 'remotes/ess/master' into essrelease 2011-10-10 17:21:48 +01:00
snowleo
04af8ef329 Merge branch 'master' into release 2011-10-10 00:30:47 +02:00
snowleo
4cdf803ab7 Merge branch 'master' into release 2011-10-09 23:52:15 +02:00
snowleo
4595c15bee Merge branch 'master' into release 2011-10-09 17:54:59 +02:00
snowleo
1e3d2fbfd2 Merge branch 'master' into release 2011-10-08 19:43:07 +02:00
snowleo
57c25bf151 Merge branch 'master' into release 2011-10-04 23:07:30 +02:00
snowleo
ae030b227a Merge branch 'master' into release 2011-10-04 22:20:10 +02:00
snowleo
4f85751694 Merge branch 'master' into release 2011-10-04 21:34:28 +02:00
KHobbits
6b0d0daa2e Merge branch 'essmaster' into essrelease 2011-10-04 14:40:12 +01:00
KHobbits
401498a4f7 Merge branch 'essmaster' into essrelease 2011-10-04 09:51:51 +01:00
KHobbits
8bb50189bc Merge remote branch 'remotes/ess/master' into essrelease 2011-09-29 00:43:42 +01:00
KHobbits
eb665a059a Merge branch 'essmaster' into essrelease 2011-09-29 00:40:16 +01:00
KHobbits
3dc29be083 Merge branch 'essmaster' into essrelease 2011-09-27 02:01:52 +01:00
KHobbits
82e5447526 Merge branch 'essmaster' into essrelease 2011-09-26 23:06:02 +01:00
KHobbits
066f3fd726 Merge branch 'essmaster' into essrelease 2011-09-22 15:29:47 +01:00
snowleo
f0acf733a5 Merge branch 'master' into release 2011-09-22 10:47:58 +02:00
snowleo
96c4dd2ab9 Merge branch 'master' into release 2011-09-05 14:15:07 +02:00
snowleo
df3b9a7ef9 Merge branch 'master' into release 2011-09-04 20:47:46 +02:00
snowleo
70a3a5919e Merge branch 'master' into release 2011-09-02 00:05:05 +02:00
snowleo
688d37ee60 Merge branch 'master' into release 2011-09-01 16:35:47 +02:00
snowleo
3dcf8bc8fc Merge branch 'master' into release 2011-08-30 09:46:49 +02:00
snowleo
7039d613ee Merge branch 'master' into release 2011-08-29 20:43:49 +02:00
snowleo
256c963370 Merge branch 'master' into release 2011-08-21 21:44:58 +02:00
snowleo
7b8c2a4575 Merge branch 'master' into release 2011-08-21 20:22:28 +02:00
snowleo
7f1ba0d6ae Merge branch 'master' into release 2011-08-19 02:32:56 +02:00
snowleo
7e5b79aa14 Merge branch 'master' into release 2011-08-19 02:10:36 +02:00
snowleo
086343ee48 Merge branch 'master' into release 2011-08-19 01:06:52 +02:00
snowleo
a1ad512a80 Merge branch 'master' into release 2011-08-19 00:42:26 +02:00
snowleo
9bb2ef9cbe Merge branch 'master' into release 2011-07-27 01:04:37 +02:00
snowleo
832910d480 Merge branch 'master' into release 2011-07-23 22:34:43 +02:00
snowleo
13da2b2924 Merge branch 'master' into release 2011-07-23 20:06:00 +02:00
snowleo
84ac520353 Master and Release branch are now identical again.
Removed warning for an older bukkit version.
2011-07-23 20:05:44 +02:00
snowleo
5613975314 Merge branch 'master' into release 2011-07-23 03:11:14 +02:00
snowleo
662d30ae45 Merge branch 'master' into release 2011-07-23 03:07:38 +02:00
snowleo
57bee443b1 Merge branch 'master' into release 2011-07-23 02:39:37 +02:00
snowleo
621618e41f Merge branch 'master' into release 2011-07-21 02:58:39 +02:00
snowleo
6ccb60813a Merge branch 'master' into release 2011-07-21 02:52:25 +02:00
snowleo
b34119901e Merge branch 'master' into release 2011-07-21 02:29:45 +02:00
snowleo
b317aef8c9 Merge branch 'master' into release 2011-07-21 00:31:39 +02:00
snowleo
fdbc6fa94f Merge branch 'master' into release 2011-07-20 23:18:34 +02:00
snowleo
0ffe24903a Merge branch 'master' into release 2011-07-20 23:09:40 +02:00
snowleo
e550a7cc44 Merge branch 'master' into release 2011-07-20 22:37:43 +02:00
snowleo
82165a2af6 Merge branch 'master' into release 2011-07-20 22:22:02 +02:00
snowleo
63a4fe32c1 Merge branch 'master' into release 2011-07-20 18:40:04 +02:00
snowleo
1c44a25a4a Merge branch 'master' into release 2011-07-20 12:13:24 +02:00
snowleo
cf21ecee2e Merge branch 'master' into release 2011-07-19 12:09:48 +02:00
snowleo
5467e502a5 Merge branch 'master' into release 2011-07-19 11:42:18 +02:00
snowleo
6af9ec266b Merge branch 'master' into release 2011-07-19 01:52:44 +02:00
snowleo
faa7e0e7a9 Merge branch 'master' into release 2011-07-19 00:47:14 +02:00
snowleo
aa3606007a Merge branch 'master' into release 2011-07-19 00:42:10 +02:00
snowleo
db5974970d Merge branch 'master' into release 2011-07-18 20:55:31 +02:00
snowleo
ba2539db67 Merge branch 'master' into release 2011-07-18 02:30:16 +02:00
snowleo
21d0661d79 Merge branch 'master' into release 2011-07-18 01:49:45 +02:00
snowleo
9f3eb461a9 Merge branch 'master' into release 2011-07-16 17:04:46 +02:00
snowleo
34b0deba29 Merge branch 'master' into release 2011-07-16 16:53:13 +02:00
snowleo
d9a93d8dff Merge branch 'master' into release 2011-07-16 14:04:49 +02:00
snowleo
747776344b Fixing merge error 2011-07-16 13:32:10 +02:00
snowleo
f979a79081 Merge branch 'master' into release
Conflicts:
	Essentials/src/com/earth2me/essentials/Essentials.java
	Essentials/src/com/earth2me/essentials/EssentialsBlockListener.java
	Essentials/src/com/earth2me/essentials/commands/Commandspawner.java
	Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java
	Essentials/src/com/earth2me/essentials/register/payment/Methods.java
	Essentials/src/items.csv
	EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java
	lib/bukkit-0.0.1-SNAPSHOT.jar
	lib/craftbukkit-0.0.1-SNAPSHOT.jar
2011-07-16 13:25:12 +02:00
snowleo
367e9840cc Fix save inventory after logout for new players. 2011-07-08 02:19:59 +02:00
snowleo
ea590c2ed1 NPE fix for offline users in UserData
git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1583 e251c2fe-e539-e718-e476-b85c1f46cddb
2011-07-08 02:16:23 +02:00
snowleo
d93120257b Update of bukkit version number in essentials class 2011-07-02 01:10:48 +02:00
snowleo
e763b362d9 CB# 953
B# 754
2011-07-02 01:09:19 +02:00
snowleo
e5eb1ca0cb More names for pistons (items.csv)
Fix for /unlimited and pistons
2011-07-01 10:52:59 +02:00
snowleo
ea2649db5e Updated items.csv 2011-06-30 19:16:50 +02:00
snowleo
b53fc9cadc Renamed functions 2011-06-30 18:54:05 +02:00
snowleo
4b35e1b729 CB #946
B #750
2011-06-30 18:43:23 +02:00
snowleo
40e106db13 Fix /spawner command
The name had to be first letter uppercase, the rest lowercase
2011-06-27 11:57:03 +02:00
snowleo
3dc0659f66 Another fix to /spawnmob
Merged for release
2011-06-27 11:53:57 +02:00
snowleo
e652ed2981 Copy&Paste is bad. 2011-06-26 02:00:57 +02:00
snowleo
28db891aa5 Fix for Register inside Essentials 2011-06-26 01:43:59 +02:00
snowleo
b63ae9b771 SEVERE error messages for other plugins, that try to manually enable Essentials, FakePermissions or GroupManager 2011-06-26 01:43:19 +02:00
snowleo
27c84ceaac Remove the restriction of EssEcoApi to not use iConomy or BOSE 2011-06-25 15:35:47 +02:00
snowleo
d67ccd03ca Merge branch 'bukkitupdate' into release 2011-06-25 14:27:30 +02:00
snowleo
96b0f27c51 Fix for Craftbukkit Bug 912 2011-06-12 02:59:34 +02:00
877 changed files with 61391 additions and 73690 deletions

View File

@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="lib" path="lib/bukkit-0.0.1-SNAPSHOT.jar"/>
<classpathentry kind="lib" path="lib/craftbukkit-0.0.1-SNAPSHOT.jar"/>
<classpathentry kind="lib" path="lib/Permissions3.jar"/>
</classpath>

97
.gitignore vendored
View File

@@ -1,47 +1,50 @@
.DS_Store
/BuildAll/nbproject/private/
/EssentialsProtect/nbproject/private/
/EssentialsChat/nbproject/private/
/EssentialsGroupBridge/nbproject/private/
/EssentialsGeoIP/nbproject/private/
/EssentialsSpawn/nbproject/private/
/EssentialsXMPP/nbproject/private/
/EssentialsGroupManager/nbproject/private/
/BuildAll/build/
/EssentialsGroupBridge/dist/
/EssentialsGroupBridge/build/
/EssentialsGeoIP/dist/
/EssentialsGeoIP/build/
/EssentialsGroupManager/build/
/EssentialsGroupManager/dist/
/BuildAll/dist/
/EssentialsChat/build/
/EssentialsChat/dist/
/EssentialsSpawn/build/
/EssentialsSpawn/dist/
/EssentialsXMPP/dist/
/EssentialsXMPP/build/
/EssentialsProtect/dist/
/EssentialsProtect/build/
/EssentialsPermissionsCommands/nbproject/private/
/EssentialsPermissionsCommands/build/
/EssentialsPermissionsCommands/dist/
/Essentials/nbproject/private/
/Essentials/dist/
/Essentials/build/
/YamlAnnotations/
/EssentialsUpdate/nbproject/private/
/EssentialsRelease/
/EssentialsUpdate/dist/
/EssentialsUpdate/build/
/WebPush/apikey.php
/WebPush/nbproject/private
/.idea
*.iml
/EssentialsSigns/nbproject/private/
/Essentials2Compat/nbproject/private/
/Essentials2Compat/dist/
/Essentials2Compat/build/
/EssentialsGroupManager/bin
/EssentialsGroupManager/.externalToolBuilders
/EssentialsGeoIP/build
.DS_Store
/BuildAll/nbproject/private/
/EssentialsProtect/nbproject/private/
/EssentialsChat/nbproject/private/
/EssentialsGroupBridge/nbproject/private/
/EssentialsGeoIP/nbproject/private/
/EssentialsSpawn/nbproject/private/
/EssentialsGroupManager/nbproject/private/
/BuildAll/build/
/EssentialsGroupBridge/dist/
/EssentialsGroupBridge/build/
/EssentialsGeoIP/dist/
/EssentialsGeoIP/build/
/EssentialsGroupManager/build/
/EssentialsGroupManager/dist/
/BuildAll/dist/
/EssentialsChat/build/
/EssentialsChat/dist/
/EssentialsSpawn/build/
/EssentialsSpawn/dist/
/EssentialsProtect/dist/
/EssentialsProtect/build/
/EssentialsPermissionsCommands/nbproject/private/
/EssentialsPermissionsCommands/build/
/EssentialsPermissionsCommands/dist/
/Essentials/nbproject/private/
/Essentials/dist/
/Essentials/build/
/YamlAnnotations/
/EssentialsUpdate/nbproject/private/
/EssentialsRelease/
/EssentialsUpdate/dist/
/EssentialsUpdate/build/
/WebPush/apikey.php
/WebPush/nbproject/private
/EssentialsGroupManager/bin
/EssentialsGroupManager/.externalToolBuilders
/EssentialsAntiBuild/nbproject/private/
/EssentialsAntiBuild/dist/
/EssentialsAntiBuild/build/
/jars
/out
.idea/
*.iml
target/
dependency-reduced-pom.xml
/Essentials/config.yml
/Essentials/userdata/testplayer1.yml
/Essentials/usermap.csv
/Essentials/userdata

View File

@@ -1,17 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Essentials</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

20
.travis.yml Normal file
View File

@@ -0,0 +1,20 @@
language: java
jdk:
- oraclejdk7
- openjdk7
- openjdk6
script: mvn compile test
install: true
notifications:
irc:
channels:
- "irc.esper.net#lain"
on_success: change
on_failure: always
email:
recipients:
- "khobbits@ess3.net"
on_success: change
on_failure: always
slack:
secure: Au+u0l79voEjTbkxpak2RMIBmVQqp0lJLOFje2wyYYlBOjbbuL71hduuvo0aayQ95IJZkt2Sz33m0ZxdVRhZaMaJ5/miVkqbRnWR6hJ/EeAnFFpTeEjQd8nSrxucJlfd0iXgDoVe76d2MzakLfGReluHLP3TgiAapZF+rH4NCIw=

View File

@@ -1,74 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<!-- By default, only the Clean and Build commands use this build script. -->
<!-- Commands such as Run, Debug, and Test only use this build script if -->
<!-- the Compile on Save feature is turned off for the project. -->
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
<!-- in the project's Project Properties dialog box.-->
<project name="BuildAll" default="default" basedir=".">
<description>Builds, tests, and runs the project BuildAll.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar-with-manifest: JAR building (if you are using a manifest)
-do-jar-without-manifest: JAR building (if you are not using a manifest)
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="BuildAll-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
</project>

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +0,0 @@
build.xml.data.CRC32=51b33957
build.xml.script.CRC32=7a797370
build.xml.stylesheet.CRC32=28e38971@1.44.1.45
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=51b33957
nbproject/build-impl.xml.script.CRC32=c5170bed
nbproject/build-impl.xml.stylesheet.CRC32=fcddb364@1.50.1.46

View File

@@ -1,129 +0,0 @@
annotation.processing.enabled=true
annotation.processing.enabled.in.editor=false
annotation.processing.run.all.processors=true
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
application.title=BuildAll
application.vendor=
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.expand-tabs=true
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.indent-shift-width=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.spaces-per-tab=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.tab-size=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.text-limit-width=120
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.text-line-wrap=none
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.usedProfile=project
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineAnnotationArgs=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineArrayInit=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineAssignment=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineBinaryOp=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineCallArgs=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineDisjunctiveCatchTypes=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineFor=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineImplements=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineMethodParams=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineParenthesized=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineTernaryOp=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineThrows=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineTryResources=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.blankLinesAfterClassHeader=0
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.blankLinesBeforeClass=2
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.classDeclBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.expand-tabs=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.indent-shift-width=4
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.indentCasesFromSwitch=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.methodDeclBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.otherBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeCatchOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeElseOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeFinallyOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeWhileOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.spaceAfterTypeCast=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.spaces-per-tab=4
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.tab-size=4
build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form
# This directory is removed when the project is cleaned:
build.dir=build
build.generated.dir=${build.dir}/generated
build.generated.sources.dir=${build.dir}/generated-sources
# Only compile against the classpath explicitly listed here:
build.sysclasspath=ignore
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
# Uncomment to specify the preferred debugger connection transport:
#debug.transport=dt_socket
debug.classpath=\
${run.classpath}
debug.test.classpath=\
${run.test.classpath}
# This directory is removed when the project is cleaned:
dist.dir=dist
dist.jar=${dist.dir}/BuildAll.jar
dist.javadoc.dir=${dist.dir}/javadoc
endorsed.classpath=
excludes=
includes=**
jar.compress=true
javac.classpath=\
${reference.Essentials.jar}:\
${reference.EssentialsChat.jar}:\
${reference.EssentialsProtect.jar}:\
${reference.EssentialsSpawn.jar}:\
${reference.EssentialsGeoIP.jar}:\
${reference.EssentialsGroupBridge.jar}:\
${reference.EssentialsXMPP.jar}:\
${reference.EssentialsGroupManager.jar}
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
javac.processorpath=\
${javac.classpath}
javac.source=1.6
javac.target=1.6
javac.test.classpath=\
${javac.classpath}:\
${build.classes.dir}
javac.test.processorpath=\
${javac.test.classpath}
javadoc.additionalparam=
javadoc.author=false
javadoc.encoding=${source.encoding}
javadoc.noindex=false
javadoc.nonavbar=false
javadoc.notree=false
javadoc.private=false
javadoc.splitindex=true
javadoc.use=true
javadoc.version=false
javadoc.windowtitle=
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=false
platform.active=default_platform
project.Essentials=../Essentials
project.EssentialsChat=../EssentialsChat
project.EssentialsGeoIP=../EssentialsGeoIP
project.EssentialsGroupBridge=../EssentialsGroupBridge
project.EssentialsGroupManager=../EssentialsGroupManager
project.EssentialsProtect=../EssentialsProtect
project.EssentialsSpawn=../EssentialsSpawn
project.EssentialsXMPP=../EssentialsXMPP
reference.Essentials.jar=${project.Essentials}/dist/Essentials.jar
reference.EssentialsChat.jar=${project.EssentialsChat}/dist/EssentialsChat.jar
reference.EssentialsGeoIP.jar=${project.EssentialsGeoIP}/dist/EssentialsGeoIP.jar
reference.EssentialsGroupBridge.jar=${project.EssentialsGroupBridge}/dist/EssentialsGroupBridge.jar
reference.EssentialsGroupManager.jar=${project.EssentialsGroupManager}/dist/EssentialsGroupManager.jar
reference.EssentialsProtect.jar=${project.EssentialsProtect}/dist/EssentialsProtect.jar
reference.EssentialsSpawn.jar=${project.EssentialsSpawn}/dist/EssentialsSpawn.jar
reference.EssentialsXMPP.jar=${project.EssentialsXMPP}/dist/EssentialsXMPP.jar
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
# Space-separated list of JVM arguments used when running the project
# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
# or test-sys-prop.name=value to set system properties for unit tests):
run.jvmargs=
run.test.classpath=\
${javac.test.classpath}:\
${build.test.classes.dir}
source.encoding=UTF-8
src.dir=src
test.src.dir=test

View File

@@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.java.j2seproject</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/j2se-project/3">
<name>BuildAll</name>
<source-roots>
<root id="src.dir"/>
</source-roots>
<test-roots>
<root id="test.src.dir"/>
</test-roots>
</data>
<libraries xmlns="http://www.netbeans.org/ns/ant-project-libraries/1">
<definitions>..\lib\nblibraries.properties</definitions>
</libraries>
<references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
<reference>
<foreign-project>Essentials</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsChat</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsGeoIP</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsGroupBridge</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsGroupManager</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsProtect</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsSpawn</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
<reference>
<foreign-project>EssentialsXMPP</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
</references>
</configuration>
</project>

View File

@@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<!-- By default, only the Clean and Build commands use this build script. -->
<!-- Commands such as Run, Debug, and Test only use this build script if -->
<!-- the Compile on Save feature is turned off for the project. -->
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
<!-- in the project's Project Properties dialog box.-->
<project name="Essentials" default="default" basedir=".">
<description>Builds, tests, and runs the project Essentials.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar-with-manifest: JAR building (if you are using a manifest)
-do-jar-without-manifest: JAR building (if you are not using a manifest)
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="Essentials-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
<!--target name="-post-jar">
<jar jarfile="${dist.dir}/Essentials.jar">
<zipfileset src="${dist.jar}" excludes="META-INF/*" />
<zipfileset src="${dist.dir}/lib/Register.jar" excludes="META-INF/*" />
<manifest>
<attribute name="Classpath" value="Essentials.jar"/>
</manifest>
</jar>
</target-->
</project>

File diff suppressed because it is too large Load Diff

View File

@@ -1,11 +0,0 @@
build.xml.data.CRC32=7d758acf
build.xml.script.CRC32=3233ee78
build.xml.stylesheet.CRC32=28e38971@1.38.2.45
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=a830bc14
nbproject/build-impl.xml.script.CRC32=a9f8842a
nbproject/build-impl.xml.stylesheet.CRC32=fcddb364@1.50.1.46
nbproject/profiler-build-impl.xml.data.CRC32=ab78ce15
nbproject/profiler-build-impl.xml.script.CRC32=abda56ed
nbproject/profiler-build-impl.xml.stylesheet.CRC32=f10cf54c@1.11.1

View File

@@ -1,3 +0,0 @@
DoNotUseThreads
LongVariable
SignatureDeclareThrowsException

View File

@@ -1,154 +0,0 @@
annotation.processing.enabled=true
annotation.processing.enabled.in.editor=false
annotation.processing.processors.list=lombok.core.AnnotationProcessor
annotation.processing.run.all.processors=false
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
application.title=Essentials
application.vendor=
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.expand-tabs=true
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.indent-shift-width=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.spaces-per-tab=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.tab-size=2
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.text-limit-width=120
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.project.text-line-wrap=none
auxiliary.org-netbeans-modules-editor-indent.CodeStyle.usedProfile=project
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineAnnotationArgs=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineArrayInit=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineAssignment=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineBinaryOp=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineCallArgs=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineDisjunctiveCatchTypes=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineFor=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineImplements=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineMethodParams=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineParenthesized=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineTernaryOp=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineThrows=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.alignMultilineTryResources=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.blankLinesAfterClassHeader=0
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.blankLinesBeforeClass=2
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.classDeclBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.expand-tabs=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.importGroupsOrder=*
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.indent-shift-width=4
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.indentCasesFromSwitch=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.methodDeclBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.otherBracePlacement=NEW_LINE
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeCatchOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeElseOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeFinallyOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.placeWhileOnNewLine=true
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.separateImportGroups=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.spaceAfterTypeCast=false
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.spaces-per-tab=4
auxiliary.org-netbeans-modules-editor-indent.text.x-java.CodeStyle.project.tab-size=4
build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form
# This directory is removed when the project is cleaned:
build.dir=build
build.generated.dir=${build.dir}/generated
build.generated.sources.dir=${build.dir}/generated-sources
# Only compile against the classpath explicitly listed here:
build.sysclasspath=ignore
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
# Uncomment to specify the preferred debugger connection transport:
#debug.transport=dt_socket
debug.classpath=\
${run.classpath}
debug.test.classpath=\
${run.test.classpath}
# This directory is removed when the project is cleaned:
dist.dir=dist
dist.jar=${dist.dir}/Essentials.jar
dist.javadoc.dir=${dist.dir}/javadoc
endorsed.classpath=
excludes=
file.reference.BOSEconomy7.jar=../lib/BOSEconomy7.jar
file.reference.bPermissions.jar=../lib/bPermissions.jar
file.reference.bpermissions2.jar=../lib/bpermissions2.jar
file.reference.bukkit.jar=../lib/bukkit.jar
file.reference.craftbukkit.jar=../lib/craftbukkit.jar
file.reference.iCo4.jar=../lib/iCo4.jar
file.reference.iCo5.jar=../lib/iCo5.jar
file.reference.iCo6.jar=../lib/iCo6.jar
file.reference.lombok.jar=../lib/lombok-0.10.8.jar
file.reference.MultiCurrency.jar=../lib/MultiCurrency.jar
file.reference.Permissions3.jar=../lib/Permissions3.jar
file.reference.PermissionsBukkit-1.2.jar=../lib/PermissionsBukkit-1.2.jar
file.reference.PermissionsEx.jar=../lib/PermissionsEx.jar
file.reference.Privileges.jar=..\\lib\\Privileges.jar
file.reference.Vault.jar=../lib/Vault.jar
includes=**
jar.archive.disabled=${jnlp.enabled}
jar.compress=true
jar.index=${jnlp.enabled}
javac.classpath=\
${file.reference.Permissions3.jar}:\
${file.reference.iCo4.jar}:\
${file.reference.iCo5.jar}:\
${file.reference.iCo6.jar}:\
${file.reference.MultiCurrency.jar}:\
${file.reference.BOSEconomy7.jar}:\
${file.reference.PermissionsEx.jar}:\
${file.reference.bPermissions.jar}:\
${file.reference.PermissionsBukkit-1.2.jar}:\
${file.reference.lombok.jar}:\
${reference.EssentialsGroupManager.jar}:\
${file.reference.bukkit.jar}:\
${file.reference.craftbukkit.jar}:\
${file.reference.Vault.jar}:\
${file.reference.Privileges.jar}:\
${file.reference.bpermissions2.jar}
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
javac.processorpath=\
${javac.classpath}
javac.source=1.6
javac.target=1.6
javac.test.classpath=\
${javac.classpath}:\
${build.classes.dir}:\
${libs.junit_4.10.classpath}
javac.test.processorpath=\
${javac.test.classpath}
javadoc.additionalparam=
javadoc.author=false
javadoc.encoding=${source.encoding}
javadoc.noindex=false
javadoc.nonavbar=false
javadoc.notree=false
javadoc.private=false
javadoc.reference.PermissionsEx.jar=../lib/PermissionsEx-javadoc.jar
javadoc.splitindex=true
javadoc.use=true
javadoc.version=false
javadoc.windowtitle=Essentials Docs.
jnlp.codebase.type=no.codebase
jnlp.descriptor=application
jnlp.enabled=false
jnlp.mixed.code=default
jnlp.offline-allowed=false
jnlp.signed=false
jnlp.signing=
jnlp.signing.alias=
jnlp.signing.keystore=
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=true
platform.active=default_platform
project.EssentialsGroupManager=../EssentialsGroupManager
reference.EssentialsGroupManager.jar=../EssentialsGroupManager/dist/EssentialsGroupManager.jar
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
# Space-separated list of JVM arguments used when running the project
# (you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
# or test-sys-prop.name=value to set system properties for unit tests):
run.jvmargs=-Djline.terminal=jline.UnsupportedTerminal
run.test.classpath=\
${javac.test.classpath}:\
${build.test.classes.dir}
source.encoding=UTF-8
src.dir=src
test.src.dir=test

View File

@@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.java.j2seproject</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/j2se-project/3">
<name>Essentials</name>
<source-roots>
<root id="src.dir"/>
</source-roots>
<test-roots>
<root id="test.src.dir"/>
</test-roots>
</data>
<libraries xmlns="http://www.netbeans.org/ns/ant-project-libraries/1">
<definitions>../lib/nblibraries.properties</definitions>
</libraries>
<references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
<reference>
<foreign-project>EssentialsGroupManager</foreign-project>
<artifact-type>jar</artifact-type>
<script>build.xml</script>
<target>jar</target>
<clean-target>clean</clean-target>
<id>jar</id>
</reference>
</references>
</configuration>
</project>

144
Essentials/pom.xml Normal file
View File

@@ -0,0 +1,144 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.mcess</groupId>
<artifactId>EssentialsParent</artifactId>
<version>2.x-SNAPSHOT</version>
</parent>
<artifactId>Essentials</artifactId>
<url>http://ess3.net/</url>
<organization>
<name>Essentials Team</name>
<url>http://ess3.net/</url>
</organization>
<licenses>
<license>
<name>GPLv3</name>
<url>http://www.gnu.org/copyleft/gpl.html</url>
</license>
</licenses>
<scm>
<connection>scm:git:https://github.com/essentials/Essentials.git</connection>
<developerConnection>scm:git:https://github.com/essentials/Essentials.git</developerConnection>
<url>https://github.com/essentials/Essentials</url>
</scm>
<issueManagement>
<system>JIRA</system>
<url>http://essentials3.atlassian.net</url>
</issueManagement>
<ciManagement>
<system>TeamCity</system>
<url>http://ci.ess3.net/</url>
</ciManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<showDeprecation>true</showDeprecation>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.7.2-R0.3-SNAPSHOT</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/bukkit.jar</systemPath>
</dependency>
<dependency>
<groupId>BOSEconomy</groupId>
<artifactId>BOSEconomy</artifactId>
<version>v0.7.8.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/BOSEconomy.jar</systemPath>
</dependency>
<dependency>
<groupId>de.bananaco</groupId>
<artifactId>bPermissions</artifactId>
<version>v2.12-DEV</version>
</dependency>
<dependency>
<groupId>iConomy</groupId>
<artifactId>iConomy5</artifactId>
<version>5</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/iCo5.jar</systemPath>
</dependency>
<dependency>
<groupId>iConomy</groupId>
<artifactId>iConomy6</artifactId>
<version>6</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/iCo6.jar</systemPath>
</dependency>
<dependency>
<groupId>org.mcess</groupId>
<artifactId>GroupManager</artifactId>
<version>${project.version}</version>
<scope>system</scope>
<systemPath>${project.basedir}/../EssentialsGroupManager/dist/EssentialsGroupManager.jar</systemPath>
</dependency>
<dependency>
<groupId>MultiCurrency</groupId>
<artifactId>MultiCurrency</artifactId>
<version>2.2</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/MultiCurrency.jar</systemPath>
</dependency>
<dependency>
<groupId>com.platymuus</groupId>
<artifactId>bukkit-permissions</artifactId>
<version>2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/PermissionsBukkit.jar</systemPath>
</dependency>
<dependency>
<groupId>ru.tehkode</groupId>
<artifactId>PermissionsEx</artifactId>
<version>1.20.4</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/PermissionsEx.jar</systemPath>
</dependency>
<dependency>
<groupId>Privileges</groupId>
<artifactId>Privileges</artifactId>
<version>1.8.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/Privileges.jar</systemPath>
</dependency>
<dependency>
<groupId>SimplyPerms</groupId>
<artifactId>SimplyPerms</artifactId>
<version>1.7.6</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/SimplyPerms.jar</systemPath>
</dependency>
<dependency>
<groupId>net.milkbowl.vault</groupId>
<artifactId>Vault</artifactId>
<version>1.2.32</version>
</dependency>
<dependency>
<groupId>zPermissions</groupId>
<artifactId>zPermissions</artifactId>
<version>1.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/../lib/zPermissions.jar</systemPath>
</dependency>
</dependencies>
</project>

18
Essentials/src/book.txt Normal file
View File

@@ -0,0 +1,18 @@
This is the book file.
This file format works similar to the info.txt, motd.txt and rules.txt
Place content in here that you would like to be used by books ingame.
You can use this content by using the book:<section> meta option in kits or item spawning.
#Colors
Minecraft colors:
&0 &&0 &1 &&1 &2 &&2 &3 &&3
&4 &&4 &5 &&5 &6 &&6 &7 &&7
&8 &&8 &9 &&9 &a &&a &b &&b
&c &&c &d &&d &e &&e &f &&f
&0
&&k &kMagic&r &&l &lBold
&&m &mStrike&r &&n &nUline
&&o &oItalic&r &&r &rReset

View File

@@ -1,153 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IBackup;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ISettings;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.logging.Level;
import java.util.logging.Logger;
import lombok.Cleanup;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
public class Backup implements Runnable, IBackup
{
private static final Logger LOGGER = Bukkit.getLogger();
private transient final Server server;
private transient final IEssentials ess;
private transient final AtomicBoolean running = new AtomicBoolean(false);
private transient int taskId = -1;
private transient final AtomicBoolean active = new AtomicBoolean(false);
public Backup(final IEssentials ess)
{
this.ess = ess;
server = ess.getServer();
if (server.getOnlinePlayers().length > 0)
{
startTask();
}
}
@Override
public final void startTask()
{
if (running.compareAndSet(false, true))
{
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
final long interval = settings.getData().getGeneral().getBackup().getInterval() * 1200; // minutes -> ticks
if (interval < 1200)
{
running.set(false);
return;
}
taskId = ess.scheduleSyncRepeatingTask(this, interval, interval);
}
}
@Override
public void run()
{
if (!active.compareAndSet(false, true))
{
return;
}
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
final String command = settings.getData().getGeneral().getBackup().getCommand();
if (command == null || command.isEmpty())
{
return;
}
LOGGER.log(Level.INFO, _("backupStarted"));
final CommandSender consoleSender = server.getConsoleSender();
server.dispatchCommand(consoleSender, "save-all");
server.dispatchCommand(consoleSender, "save-off");
ess.scheduleAsyncDelayedTask(new BackupRunner(command));
}
private class BackupRunner implements Runnable
{
private final transient String command;
public BackupRunner(final String command)
{
this.command = command;
}
@Override
public void run()
{
try
{
final ProcessBuilder childBuilder = new ProcessBuilder(command);
childBuilder.redirectErrorStream(true);
childBuilder.directory(ess.getDataFolder().getParentFile().getParentFile());
final Process child = childBuilder.start();
final BufferedReader reader = new BufferedReader(new InputStreamReader(child.getInputStream()));
try
{
child.waitFor();
String line;
do
{
line = reader.readLine();
if (line != null)
{
LOGGER.log(Level.INFO, line);
}
}
while (line != null);
}
finally
{
reader.close();
}
}
catch (InterruptedException ex)
{
LOGGER.log(Level.SEVERE, null, ex);
}
catch (IOException ex)
{
LOGGER.log(Level.SEVERE, null, ex);
}
finally
{
ess.scheduleSyncDelayedTask(new EnableSavingRunner());
}
}
}
private class EnableSavingRunner implements Runnable
{
@Override
public void run()
{
server.dispatchCommand(server.getConsoleSender(), "save-on");
if (server.getOnlinePlayers().length == 0)
{
running.set(false);
if (taskId != -1)
{
server.getScheduler().cancelTask(taskId);
}
}
active.set(false);
LOGGER.log(Level.INFO, _("backupFinished"));
}
}
}

View File

@@ -1,33 +0,0 @@
package com.earth2me.essentials;
import com.earth2me.essentials.api.IReplyTo;
import org.bukkit.command.CommandSender;
public final class Console implements IReplyTo
{
private static Console instance = new Console();
private CommandSender replyTo;
public final static String NAME = "Console";
private Console()
{
}
@Override
public void setReplyTo(final CommandSender user)
{
replyTo = user;
}
@Override
public CommandSender getReplyTo()
{
return replyTo;
}
public static Console getConsoleReplyTo()
{
return instance;
}
}

View File

@@ -1,207 +0,0 @@
package com.earth2me.essentials;
import com.earth2me.essentials.api.*;
import com.earth2me.essentials.perm.Permissions;
import com.earth2me.essentials.settings.MoneyHolder;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
public class Economy implements IEconomy
{
private final IEssentials ess;
private final MoneyHolder npcs;
public Economy(IEssentials ess)
{
this.ess = ess;
this.npcs = new MoneyHolder(ess);
}
private double getNPCBalance(String name) throws UserDoesNotExistException
{
npcs.acquireReadLock();
try
{
Map<String, Double> balances = npcs.getData().getBalances();
if (balances == null)
{
throw new UserDoesNotExistException(name);
}
Double balance = npcs.getData().getBalances().get(name.toLowerCase(Locale.ENGLISH));
if (balance == null)
{
throw new UserDoesNotExistException(name);
}
return balance;
}
finally
{
npcs.unlock();
}
}
private void setNPCBalance(String name, double balance, boolean checkExistance) throws UserDoesNotExistException
{
npcs.acquireWriteLock();
try
{
Map<String, Double> balances = npcs.getData().getBalances();
if (balances == null)
{
balances = new HashMap<String, Double>();
npcs.getData().setBalances(balances);
}
if (checkExistance && !balances.containsKey(name.toLowerCase(Locale.ENGLISH)))
{
throw new UserDoesNotExistException(name);
}
balances.put(name.toLowerCase(Locale.ENGLISH), balance);
}
finally
{
npcs.unlock();
}
}
private double getStartingBalance()
{
double startingBalance = 0;
ISettings settings = ess.getSettings();
settings.acquireReadLock();
try
{
startingBalance = settings.getData().getEconomy().getStartingBalance();
}
finally
{
settings.unlock();
}
return startingBalance;
}
@Override
public void onReload()
{
this.npcs.onReload(false);
}
@Override
public double getMoney(String name) throws UserDoesNotExistException
{
IUser user = ess.getUser(name);
if (user == null)
{
return getNPCBalance(name);
}
return user.getMoney();
}
@Override
public void setMoney(String name, double balance) throws NoLoanPermittedException, UserDoesNotExistException
{
IUser user = ess.getUser(name);
if (user == null)
{
setNPCBalance(name, balance, true);
return;
}
if (balance < 0.0 && !Permissions.ECO_LOAN.isAuthorized(user))
{
throw new NoLoanPermittedException();
}
user.setMoney(balance);
}
@Override
public void resetBalance(String name) throws NoLoanPermittedException, UserDoesNotExistException
{
setMoney(name, getStartingBalance());
}
@Override
public String format(double amount)
{
return Util.formatCurrency(amount, ess);
}
@Override
public boolean playerExists(String name)
{
try
{
getMoney(name);
return true;
}
catch (UserDoesNotExistException ex)
{
return false;
}
}
@Override
public boolean isNPC(String name) throws UserDoesNotExistException
{
boolean result = ess.getUser(name) == null;
if (result)
{
getNPCBalance(name);
}
return result;
}
@Override
public boolean createNPC(String name)
{
try
{
if (isNPC(name))
{
setNPCBalance(name, getStartingBalance(), false);
return true;
}
}
catch (UserDoesNotExistException ex)
{
try
{
setNPCBalance(name, getStartingBalance(), false);
return true;
}
catch (UserDoesNotExistException ex1)
{
//This should never happen!
}
}
return false;
}
@Override
public void removeNPC(String name) throws UserDoesNotExistException
{
npcs.acquireWriteLock();
try
{
Map<String, Double> balances = npcs.getData().getBalances();
if (balances == null)
{
balances = new HashMap<String, Double>();
npcs.getData().setBalances(balances);
}
if (balances.containsKey(name.toLowerCase(Locale.ENGLISH)))
{
balances.remove(name.toLowerCase(Locale.ENGLISH));
}
else
{
throw new UserDoesNotExistException(name);
}
}
finally
{
npcs.unlock();
}
}
}

View File

@@ -1,88 +0,0 @@
package com.earth2me.essentials;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.regex.Pattern;
import org.bukkit.enchantments.Enchantment;
public final class Enchantments
{
private Enchantments()
{
}
private static final transient Pattern NUMPATTERN = Pattern.compile("\\d+");
private static final Map<String, Enchantment> ENCHANTMENTS = new HashMap<String, Enchantment>();
static
{
ENCHANTMENTS.put("alldamage", Enchantment.DAMAGE_ALL);
ENCHANTMENTS.put("alldmg", Enchantment.DAMAGE_ALL);
ENCHANTMENTS.put("sharpness", Enchantment.DAMAGE_ALL);
ENCHANTMENTS.put("arthropodsdamage", Enchantment.DAMAGE_ARTHROPODS);
ENCHANTMENTS.put("ardmg", Enchantment.DAMAGE_ARTHROPODS);
ENCHANTMENTS.put("baneofarthropods", Enchantment.DAMAGE_ARTHROPODS);
ENCHANTMENTS.put("undeaddamage", Enchantment.DAMAGE_UNDEAD);
ENCHANTMENTS.put("smite", Enchantment.DAMAGE_UNDEAD);
ENCHANTMENTS.put("digspeed", Enchantment.DIG_SPEED);
ENCHANTMENTS.put("efficiency", Enchantment.DIG_SPEED);
ENCHANTMENTS.put("durability", Enchantment.DURABILITY);
ENCHANTMENTS.put("dura", Enchantment.DURABILITY);
ENCHANTMENTS.put("unbreaking", Enchantment.DURABILITY);
ENCHANTMENTS.put("fireaspect", Enchantment.FIRE_ASPECT);
ENCHANTMENTS.put("fire", Enchantment.FIRE_ASPECT);
ENCHANTMENTS.put("knockback", Enchantment.KNOCKBACK);
ENCHANTMENTS.put("blockslootbonus", Enchantment.LOOT_BONUS_BLOCKS);
ENCHANTMENTS.put("fortune", Enchantment.LOOT_BONUS_BLOCKS);
ENCHANTMENTS.put("mobslootbonus", Enchantment.LOOT_BONUS_MOBS);
ENCHANTMENTS.put("mobloot", Enchantment.LOOT_BONUS_MOBS);
ENCHANTMENTS.put("looting", Enchantment.LOOT_BONUS_MOBS);
ENCHANTMENTS.put("oxygen", Enchantment.OXYGEN);
ENCHANTMENTS.put("respiration", Enchantment.OXYGEN);
ENCHANTMENTS.put("protection", Enchantment.PROTECTION_ENVIRONMENTAL);
ENCHANTMENTS.put("prot", Enchantment.PROTECTION_ENVIRONMENTAL);
ENCHANTMENTS.put("explosionsprotection", Enchantment.PROTECTION_EXPLOSIONS);
ENCHANTMENTS.put("expprot", Enchantment.PROTECTION_EXPLOSIONS);
ENCHANTMENTS.put("blastprotection", Enchantment.PROTECTION_EXPLOSIONS);
ENCHANTMENTS.put("fallprotection", Enchantment.PROTECTION_FALL);
ENCHANTMENTS.put("fallprot", Enchantment.PROTECTION_FALL);
ENCHANTMENTS.put("featherfalling", Enchantment.PROTECTION_FALL);
ENCHANTMENTS.put("fireprotection", Enchantment.PROTECTION_FIRE);
ENCHANTMENTS.put("fireprot", Enchantment.PROTECTION_FIRE);
ENCHANTMENTS.put("projectileprotection", Enchantment.PROTECTION_PROJECTILE);
ENCHANTMENTS.put("projprot", Enchantment.PROTECTION_PROJECTILE);
ENCHANTMENTS.put("silktouch", Enchantment.SILK_TOUCH);
ENCHANTMENTS.put("waterworker", Enchantment.WATER_WORKER);
ENCHANTMENTS.put("aquaaffinity", Enchantment.WATER_WORKER);
ENCHANTMENTS.put("firearrow", Enchantment.ARROW_FIRE);
ENCHANTMENTS.put("arrowdamage", Enchantment.ARROW_DAMAGE);
ENCHANTMENTS.put("arrowknockback", Enchantment.ARROW_KNOCKBACK);
ENCHANTMENTS.put("arrowkb", Enchantment.ARROW_KNOCKBACK);
ENCHANTMENTS.put("infinitearrows", Enchantment.ARROW_INFINITE);
ENCHANTMENTS.put("infarrows", Enchantment.ARROW_INFINITE);
}
public static Enchantment getByName(final String name) {
Enchantment enchantment;
if (NUMPATTERN.matcher(name).matches()) {
enchantment = Enchantment.getById(Integer.parseInt(name));
} else {
enchantment = Enchantment.getByName(name.toUpperCase(Locale.ENGLISH));
}
if (enchantment == null)
{
enchantment = ENCHANTMENTS.get(name.toLowerCase(Locale.ENGLISH));
}
return enchantment;
}
public static Set<Entry<String, Enchantment>> entrySet()
{
return ENCHANTMENTS.entrySet();
}
}

View File

@@ -1,436 +0,0 @@
/*
* Essentials - a bukkit plugin
* Copyright (C) 2011 Essentials Team
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.*;
import com.earth2me.essentials.listener.*;
import com.earth2me.essentials.register.payment.Methods;
import com.earth2me.essentials.settings.GroupsHolder;
import com.earth2me.essentials.settings.SettingsHolder;
import com.earth2me.essentials.user.UserMap;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.bukkit.Server;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.InvalidDescriptionException;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.yaml.snakeyaml.error.YAMLException;
public class Essentials extends JavaPlugin implements IEssentials
{
public static final int BUKKIT_VERSION = 1952;
private static final Logger LOGGER = Logger.getLogger("Minecraft");
private transient ISettings settings;
private final transient TntExplodeListener tntListener = new TntExplodeListener(this);
private transient IJails jails;
private transient IKits kits;
private transient IWarps warps;
private transient IWorth worth;
private transient List<IReload> reloadList;
private transient IBackup backup;
private transient IItemDb itemDb;
private transient IGroups groups;
private transient final Methods paymentMethod = new Methods();
//private transient PermissionsHandler permissionsHandler;
private transient IUserMap userMap;
private transient ExecuteTimer execTimer;
private transient I18n i18n;
private transient ICommandHandler commandHandler;
private transient Economy economy;
public transient boolean testing;
@Override
public ISettings getSettings()
{
return settings;
}
public void setupForTesting(final Server server) throws IOException, InvalidDescriptionException
{
testing = true;
final File dataFolder = File.createTempFile("essentialstest", "");
if (!dataFolder.delete())
{
throw new IOException();
}
if (!dataFolder.mkdir())
{
throw new IOException();
}
i18n = new I18n(this);
i18n.onEnable();
LOGGER.log(Level.INFO, _("usingTempFolderForTesting"));
LOGGER.log(Level.INFO, dataFolder.toString());
this.initialize(null, server, new PluginDescriptionFile(new FileReader(new File("src" + File.separator + "plugin.yml"))), dataFolder, null, null);
settings = new SettingsHolder(this);
i18n.updateLocale("en");
userMap = new UserMap(this);
//permissionsHandler = new PermissionsHandler(this);
economy = new Economy(this);
}
@Override
public void onEnable()
{
execTimer = new ExecuteTimer();
execTimer.start();
i18n = new I18n(this);
i18n.onEnable();
execTimer.mark("I18n1");
final PluginManager pm = getServer().getPluginManager();
for (Plugin plugin : pm.getPlugins())
{
if (plugin.getDescription().getName().startsWith("Essentials")
&& !plugin.getDescription().getVersion().equals(this.getDescription().getVersion()))
{
LOGGER.log(Level.WARNING, _("versionMismatch", plugin.getDescription().getName()));
}
}
final Matcher versionMatch = Pattern.compile("git-Bukkit-([0-9]+).([0-9]+).([0-9]+)-R[0-9]+-(?:[0-9]+-g[0-9a-f]+-)?b([0-9]+)jnks.*").matcher(getServer().getVersion());
if (versionMatch.matches())
{
final int versionNumber = Integer.parseInt(versionMatch.group(4));
if (versionNumber < BUKKIT_VERSION)
{
LOGGER.log(Level.SEVERE, _("notRecommendedBukkit"));
LOGGER.log(Level.SEVERE, _("requiredBukkit", Integer.toString(BUKKIT_VERSION)));
this.setEnabled(false);
return;
}
}
else
{
LOGGER.log(Level.INFO, _("bukkitFormatChanged"));
LOGGER.log(Level.INFO, getServer().getVersion());
LOGGER.log(Level.INFO, getServer().getBukkitVersion());
}
execTimer.mark("BukkitCheck");
try
{
//final EssentialsUpgrade upgrade = new EssentialsUpgrade(this);
//upgrade.beforeSettings();
//execTimer.mark("Upgrade");
reloadList = new ArrayList<IReload>();
settings = new SettingsHolder(this);
reloadList.add(settings);
execTimer.mark("Settings");
//upgrade.afterSettings();
//execTimer.mark("Upgrade2");
i18n.updateLocale(settings.getLocale());
userMap = new UserMap(this);
reloadList.add(userMap);
execTimer.mark("Init(Usermap)");
groups = new GroupsHolder(this);
reloadList.add((GroupsHolder)groups);
warps = new Warps(this);
reloadList.add(warps);
execTimer.mark("Init(Spawn/Warp)");
worth = new Worth(this);
reloadList.add(worth);
itemDb = new ItemDb(this);
reloadList.add(itemDb);
execTimer.mark("Init(Worth/ItemDB)");
kits = new Kits(this);
reloadList.add(kits);
commandHandler = new EssentialsCommandHandler(Essentials.class.getClassLoader(), "com.earth2me.essentials.commands.Command", "essentials.", this);
reloadList.add(commandHandler);
economy = new Economy(this);
reloadList.add(economy);
reload();
}
catch (YAMLException exception)
{
if (pm.getPlugin("EssentialsUpdate") != null)
{
LOGGER.log(Level.SEVERE, _("essentialsHelp2"));
}
else
{
LOGGER.log(Level.SEVERE, _("essentialsHelp1"));
}
LOGGER.log(Level.SEVERE, exception.toString());
pm.registerEvents(new Listener()
{
@EventHandler(priority = EventPriority.LOW)
public void onPlayerJoin(final PlayerJoinEvent event)
{
event.getPlayer().sendMessage("Essentials failed to load, read the log file.");
}
}, this);
for (Player player : getServer().getOnlinePlayers())
{
player.sendMessage("Essentials failed to load, read the log file.");
}
this.setEnabled(false);
return;
}
backup = new Backup(this);
//permissionsHandler = new PermissionsHandler(this);
final EssentialsPluginListener serverListener = new EssentialsPluginListener(this);
pm.registerEvents(serverListener, this);
reloadList.add(serverListener);
final EssentialsPlayerListener playerListener = new EssentialsPlayerListener(this);
pm.registerEvents(playerListener, this);
final EssentialsBlockListener blockListener = new EssentialsBlockListener(this);
pm.registerEvents(blockListener, this);
final EssentialsEntityListener entityListener = new EssentialsEntityListener(this);
pm.registerEvents(entityListener, this);
jails = new Jails(this);
reloadList.add(jails);
pm.registerEvents(tntListener, this);
final EssentialsTimer timer = new EssentialsTimer(this);
getServer().getScheduler().scheduleSyncRepeatingTask(this, timer, 1, 100);
execTimer.mark("RegListeners");
final String timeroutput = execTimer.end();
if (getSettings().isDebug())
{
LOGGER.log(Level.INFO, "Essentials load {0}", timeroutput);
}
}
@Override
public void onDisable()
{
i18n.onDisable();
Trade.closeLog();
}
@Override
public void reload()
{
Trade.closeLog();
for (IReload iReload : reloadList)
{
iReload.onReload();
execTimer.mark("Reload(" + iReload.getClass().getSimpleName() + ")");
}
i18n.updateLocale(settings.getLocale());
}
@Override
public boolean onCommand(final CommandSender sender, final Command command, final String commandLabel, final String[] args)
{
return commandHandler.handleCommand(sender, command, commandLabel, args);
//return onCommandEssentials(sender, command, commandLabel, args, Essentials.class.getClassLoader(), "com.earth2me.essentials.commands.Command", "essentials.", null);
}
@Override
public IJails getJails()
{
return jails;
}
@Override
public IKits getKits()
{
return kits;
}
@Override
public IWarps getWarps()
{
return warps;
}
@Override
public IWorth getWorth()
{
return worth;
}
@Override
public IBackup getBackup()
{
return backup;
}
@Override
public IUser getUser(final Player player)
{
return userMap.getUser(player);
}
@Override
public IUser getUser(final String playerName)
{
return userMap.getUser(playerName);
}
@Override
public World getWorld(final String name)
{
if (name.matches("[0-9]+"))
{
final int worldId = Integer.parseInt(name);
if (worldId < getServer().getWorlds().size())
{
return getServer().getWorlds().get(worldId);
}
}
return getServer().getWorld(name);
}
@Override
public void addReloadListener(final IReload listener)
{
reloadList.add(listener);
}
@Override
public Methods getPaymentMethod()
{
return paymentMethod;
}
@Override
public int broadcastMessage(final IUser sender, final String message)
{
if (sender == null)
{
return getServer().broadcastMessage(message);
}
if (sender.isHidden())
{
return 0;
}
final Player[] players = getServer().getOnlinePlayers();
for (Player player : players)
{
final IUser user = getUser(player);
if (!user.isIgnoringPlayer(sender.getName()))
{
player.sendMessage(message);
}
}
return players.length;
}
@Override
public int scheduleAsyncDelayedTask(final Runnable run)
{
return this.getServer().getScheduler().scheduleAsyncDelayedTask(this, run);
}
@Override
public int scheduleSyncDelayedTask(final Runnable run)
{
return this.getServer().getScheduler().scheduleSyncDelayedTask(this, run);
}
@Override
public int scheduleSyncDelayedTask(final Runnable run, final long delay)
{
return this.getServer().getScheduler().scheduleSyncDelayedTask(this, run, delay);
}
@Override
public int scheduleSyncRepeatingTask(final Runnable run, final long delay, final long period)
{
return this.getServer().getScheduler().scheduleSyncRepeatingTask(this, run, delay, period);
}
@Override
public TntExplodeListener getTNTListener()
{
return tntListener;
}
/*@Override
public PermissionsHandler getPermissionsHandler()
{
return permissionsHandler;
}*/
@Override
public IItemDb getItemDb()
{
return itemDb;
}
@Override
public IUserMap getUserMap()
{
return userMap;
}
@Override
public I18n getI18n()
{
return i18n;
}
@Override
public IGroups getGroups()
{
return groups;
}
@Override
public ICommandHandler getCommandHandler()
{
return commandHandler;
}
@Override
public void setGroups(final IGroups groups)
{
this.groups = groups;
}
@Override
public void removeReloadListener(IReload groups)
{
this.reloadList.remove(groups);
}
@Override
public IEconomy getEconomy()
{
return economy;
}
}

View File

@@ -1,316 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.*;
import com.earth2me.essentials.commands.EssentialsCommand;
import com.earth2me.essentials.commands.IEssentialsCommand;
import com.earth2me.essentials.commands.NoChargeException;
import com.earth2me.essentials.commands.NotEnoughArgumentsException;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.PluginCommand;
import org.bukkit.command.PluginCommandYamlParser;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
public class EssentialsCommandHandler implements ICommandHandler
{
private final transient ClassLoader classLoader;
private final transient String commandPath;
private final transient String permissionPrefix;
private final transient IEssentialsModule module;
private static final transient Logger LOGGER = Bukkit.getLogger();
private final transient Map<String, List<PluginCommand>> altcommands = new HashMap<String, List<PluginCommand>>();
private final transient Map<String, String> disabledList = new HashMap<String, String>();
private final transient Map<String, IEssentialsCommand> commands = new HashMap<String, IEssentialsCommand>();
private final transient IEssentials ess;
public EssentialsCommandHandler(ClassLoader classLoader, String commandPath, String permissionPrefix, IEssentials ess)
{
this(classLoader, commandPath, permissionPrefix, null, ess);
}
public EssentialsCommandHandler(ClassLoader classLoader, String commandPath, String permissionPrefix, IEssentialsModule module, IEssentials ess)
{
this.classLoader = classLoader;
this.commandPath = commandPath;
this.permissionPrefix = permissionPrefix;
this.module = module;
this.ess = ess;
for (Plugin plugin : ess.getServer().getPluginManager().getPlugins())
{
if (plugin.isEnabled())
{
addPlugin(plugin);
}
}
}
@Override
public boolean handleCommand(final CommandSender sender, final Command command, final String commandLabel, final String[] args)
{
boolean disabled = false;
boolean overridden = false;
ISettings settings = ess.getSettings();
settings.acquireReadLock();
try
{
disabled = settings.getData().getCommands().isDisabled(command.getName());
overridden = !disabled || settings.getData().getCommands().isOverridden(command.getName());
}
finally
{
settings.unlock();
}
// Allow plugins to override the command via onCommand
if (!overridden && (!commandLabel.startsWith("e") || commandLabel.equalsIgnoreCase(command.getName())))
{
final PluginCommand pc = getAlternative(commandLabel);
if (pc != null)
{
executed(commandLabel, pc.getLabel());
try
{
return pc.execute(sender, commandLabel, args);
}
catch (final Exception ex)
{
final ArrayList<StackTraceElement> elements = new ArrayList<StackTraceElement>(Arrays.asList(ex.getStackTrace()));
elements.remove(0);
final ArrayList<StackTraceElement> toRemove = new ArrayList<StackTraceElement>();
for (final StackTraceElement e : elements)
{
if (e.getClassName().equals("com.earth2me.essentials.Essentials"))
{
toRemove.add(e);
}
}
elements.removeAll(toRemove);
final StackTraceElement[] trace = elements.toArray(new StackTraceElement[elements.size()]);
ex.setStackTrace(trace);
ex.printStackTrace();
sender.sendMessage(ChatColor.RED + "An internal error occurred while attempting to perform this command");
return true;
}
}
}
try
{
IUser user = null;
if (sender instanceof Player)
{
user = ess.getUser((Player)sender);
LOGGER.log(Level.INFO, String.format("[PLAYER_COMMAND] %s: /%s %s ", ((Player)sender).getName(), commandLabel, EssentialsCommand.getFinalArg(args, 0)));
}
// Check for disabled commands
if (disabled)
{
return true;
}
final String commandName = command.getName().toLowerCase(Locale.ENGLISH);
IEssentialsCommand cmd = commands.get(commandName);
if (cmd == null)
{
try
{
cmd = (IEssentialsCommand)classLoader.loadClass(commandPath + commandName).newInstance();
cmd.init(ess, commandName);
cmd.setEssentialsModule(module);
commands.put(commandName, cmd);
}
catch (Exception ex)
{
sender.sendMessage(_("commandNotLoaded", commandName));
LOGGER.log(Level.SEVERE, _("commandNotLoaded", commandName), ex);
return true;
}
}
// Check authorization
if (sender != null && cmd.isAuthorized(sender))
{
LOGGER.log(Level.WARNING, _("deniedAccessCommand", user.getName()));
user.sendMessage(_("noAccessCommand"));
return true;
}
// Run the command
try
{
if (user == null)
{
cmd.run(sender, command, commandLabel, args);
}
else
{
user.acquireReadLock();
try
{
cmd.run(user, command, commandLabel, args);
}
finally
{
user.unlock();
}
}
return true;
}
catch (NoChargeException ex)
{
return true;
}
catch (NotEnoughArgumentsException ex)
{
sender.sendMessage(command.getDescription());
sender.sendMessage(command.getUsage().replaceAll("<command>", commandLabel));
if (!ex.getMessage().isEmpty())
{
sender.sendMessage(ex.getMessage());
}
return true;
}
catch (Throwable ex)
{
showCommandError(sender, commandLabel, ex);
return true;
}
}
catch (Throwable ex)
{
LOGGER.log(Level.SEVERE, _("commandFailed", commandLabel), ex);
return true;
}
}
@Override
public void showCommandError(final CommandSender sender, final String commandLabel, final Throwable exception)
{
sender.sendMessage(_("errorWithMessage", exception.getMessage()));
if (ess.getSettings().isDebug())
{
LOGGER.log(Level.WARNING, _("errorCallingCommand", commandLabel), exception);
}
}
@Override
public void onReload()
{
}
public final void addPlugin(final Plugin plugin)
{
if (plugin.getDescription().getMain().contains("com.earth2me.essentials"))
{
return;
}
final List<Command> commands = PluginCommandYamlParser.parse(plugin);
final String pluginName = plugin.getDescription().getName().toLowerCase(Locale.ENGLISH);
for (Command command : commands)
{
final PluginCommand pc = (PluginCommand)command;
final List<String> labels = new ArrayList<String>(pc.getAliases());
labels.add(pc.getName());
PluginCommand reg = ess.getServer().getPluginCommand(pluginName + ":" + pc.getName().toLowerCase(Locale.ENGLISH));
if (reg == null)
{
reg = ess.getServer().getPluginCommand(pc.getName().toLowerCase(Locale.ENGLISH));
}
if (reg == null || !reg.getPlugin().equals(plugin))
{
continue;
}
for (String label : labels)
{
List<PluginCommand> plugincommands = altcommands.get(label.toLowerCase(Locale.ENGLISH));
if (plugincommands == null)
{
plugincommands = new ArrayList<PluginCommand>();
altcommands.put(label.toLowerCase(Locale.ENGLISH), plugincommands);
}
boolean found = false;
for (PluginCommand pc2 : plugincommands)
{
if (pc2.getPlugin().equals(plugin))
{
found = true;
}
}
if (!found)
{
plugincommands.add(reg);
}
}
}
}
public void removePlugin(final Plugin plugin)
{
final Iterator<Map.Entry<String, List<PluginCommand>>> iterator = altcommands.entrySet().iterator();
while (iterator.hasNext())
{
final Map.Entry<String, List<PluginCommand>> entry = iterator.next();
final Iterator<PluginCommand> pcIterator = entry.getValue().iterator();
while (pcIterator.hasNext())
{
final PluginCommand pc = pcIterator.next();
if (pc.getPlugin() == null || pc.getPlugin().equals(plugin))
{
pcIterator.remove();
}
}
if (entry.getValue().isEmpty())
{
iterator.remove();
}
}
}
public PluginCommand getAlternative(final String label)
{
final List<PluginCommand> commands = altcommands.get(label);
if (commands == null || commands.isEmpty())
{
return null;
}
if (commands.size() == 1)
{
return commands.get(0);
}
// return the first command that is not an alias
for (PluginCommand command : commands)
{
if (command.getName().equalsIgnoreCase(label))
{
return command;
}
}
// return the first alias
return commands.get(0);
}
public void executed(final String label, final String otherLabel)
{
if (ess.getSettings().isDebug())
{
LOGGER.log(Level.INFO, "Essentials: Alternative command " + label + " found, using " + otherLabel);
}
disabledList.put(label, otherLabel);
}
public Map<String, String> disabledCommands()
{
return disabledList;
}
}

View File

@@ -1,82 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import com.earth2me.essentials.user.UserData.TimestampType;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import java.util.logging.Level;
import org.bukkit.entity.Player;
public class EssentialsTimer implements Runnable
{
private final transient IEssentials ess;
private final transient Set<IUser> onlineUsers = new HashSet<IUser>();
EssentialsTimer(final IEssentials ess)
{
this.ess = ess;
}
@Override
public void run()
{
final long currentTime = System.currentTimeMillis();
for (Player player : ess.getServer().getOnlinePlayers())
{
try
{
final IUser user = ess.getUser(player);
onlineUsers.add(user);
user.setLastOnlineActivity(currentTime);
user.checkActivity();
boolean mailDisabled = false;
ISettings settings = ess.getSettings();
settings.acquireReadLock();
try
{
mailDisabled = settings.getData().getCommands().isDisabled("mail");
}
finally
{
settings.unlock();
}
// New mail notification
if (user != null && !mailDisabled && Permissions.MAIL.isAuthorized(user) && !user.gotMailInfo())
{
final List<String> mail = user.getMails();
if (mail != null && !mail.isEmpty())
{
user.sendMessage(_("youHaveNewMail", mail.size()));
}
}
}
catch (Exception e)
{
ess.getLogger().log(Level.WARNING, "EssentialsTimer Error:", e);
}
}
final Iterator<IUser> iterator = onlineUsers.iterator();
while (iterator.hasNext())
{
final IUser user = iterator.next();
if (user.getLastOnlineActivity() < currentTime && user.getLastOnlineActivity() > user.getTimestamp(TimestampType.LOGOUT))
{
user.setTimestamp(TimestampType.LOGOUT, user.getLastOnlineActivity());
iterator.remove();
continue;
}
user.checkMuteTimeout(currentTime);
user.checkJailTimeout(currentTime);
}
}
}

View File

@@ -1,153 +0,0 @@
package com.earth2me.essentials;
import com.earth2me.essentials.storage.ManagedFile;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IItemDb;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.regex.Pattern;
import lombok.Cleanup;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
public class ItemDb implements IItemDb
{
private final transient IEssentials ess;
public ItemDb(final IEssentials ess)
{
this.ess = ess;
file = new ManagedFile("items.csv", ess);
}
private final transient Map<String, Long> items = new HashMap<String, Long>();
private final transient ManagedFile file;
private static final Pattern SPLIT = Pattern.compile("[^a-zA-Z0-9]");
@Override
public void onReload()
{
final List<String> lines = file.getLines();
if (lines.isEmpty())
{
return;
}
items.clear();
for (String line : lines)
{
line = line.trim();
if (line.length() > 0 && line.charAt(0) == '#')
{
continue;
}
final String[] parts = SPLIT.split(line);
if (parts.length < 2)
{
continue;
}
final long numeric = Integer.parseInt(parts[1]);
final long durability = parts.length > 2 && !(parts[2].length() == 1 && parts[2].charAt(0) == '0') ? Short.parseShort(parts[2]) : 0;
items.put(parts[0].toLowerCase(Locale.ENGLISH), numeric | (durability << 32));
}
}
public ItemStack get(final String id, final IUser user) throws Exception
{
final ItemStack stack = get(id.toLowerCase(Locale.ENGLISH));
@Cleanup
com.earth2me.essentials.api.ISettings settings = ess.getSettings();
settings.acquireReadLock();
final int defaultStackSize = settings.getData().getGeneral().getDefaultStacksize();
if (defaultStackSize > 0)
{
stack.setAmount(defaultStackSize);
}
else
{
final int oversizedStackSize = settings.getData().getGeneral().getOversizedStacksize();
if (oversizedStackSize > 0 && Permissions.OVERSIZEDSTACKS.isAuthorized(user))
{
stack.setAmount(oversizedStackSize);
}
}
return stack;
}
public ItemStack get(final String id, final int quantity) throws Exception
{
final ItemStack retval = get(id.toLowerCase(Locale.ENGLISH));
retval.setAmount(quantity);
return retval;
}
public ItemStack get(final String id) throws Exception
{
int itemid = 0;
String itemname = null;
short metaData = 0;
if (id.matches("^\\d+[:+',;.]\\d+$"))
{
itemid = Integer.parseInt(id.split("[:+',;.]")[0]);
metaData = Short.parseShort(id.split("[:+',;.]")[1]);
}
else if (id.matches("^\\d+$"))
{
itemid = Integer.parseInt(id);
}
else if (id.matches("^[^:+',;.]+[:+',;.]\\d+$"))
{
itemname = id.split("[:+',;.]")[0].toLowerCase(Locale.ENGLISH);
metaData = Short.parseShort(id.split("[:+',;.]")[1]);
}
else
{
itemname = id.toLowerCase(Locale.ENGLISH);
}
if (itemname != null)
{
if (items.containsKey(itemname))
{
long item = items.get(itemname);
itemid = (int)(item & 0xffffffffL);
if (metaData == 0)
{
metaData = (short)((item >> 32) & 0xffffL);
}
}
else if (Material.getMaterial(itemname) != null)
{
itemid = Material.getMaterial(itemname).getId();
metaData = 0;
}
else
{
throw new Exception(_("unknownItemName", id));
}
}
final Material mat = Material.getMaterial(itemid);
if (mat == null)
{
throw new Exception(_("unknownItemId", itemid));
}
final ItemStack retval = new ItemStack(mat);
retval.setAmount(mat.getMaxStackSize());
retval.setDurability(metaData);
return retval;
}
}

View File

@@ -1,301 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IJails;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.storage.AsyncStorageObjectHolder;
import java.io.File;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import lombok.Cleanup;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.block.BlockDamageEvent;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
import org.bukkit.plugin.PluginManager;
public class Jails extends AsyncStorageObjectHolder<com.earth2me.essentials.settings.Jails> implements IJails
{
private static final transient Logger LOGGER = Bukkit.getLogger();
public Jails(final IEssentials ess)
{
super(ess, com.earth2me.essentials.settings.Jails.class);
onReload();
registerListeners();
}
private void registerListeners()
{
final PluginManager pluginManager = ess.getServer().getPluginManager();
final JailBlockListener blockListener = new JailBlockListener();
final JailPlayerListener playerListener = new JailPlayerListener();
pluginManager.registerEvents(blockListener, ess);
pluginManager.registerEvents(playerListener, ess);
}
@Override
public File getStorageFile()
{
return new File(ess.getDataFolder(), "jail.yml");
}
@Override
public Location getJail(final String jailName) throws Exception
{
acquireReadLock();
try
{
if (getData().getJails() == null || jailName == null
|| !getData().getJails().containsKey(jailName.toLowerCase(Locale.ENGLISH)))
{
throw new Exception(_("jailNotExist"));
}
Location loc = getData().getJails().get(jailName.toLowerCase(Locale.ENGLISH)).getBukkitLocation();
if (loc == null || loc.getWorld() == null)
{
throw new Exception(_("jailNotExist"));
}
return loc;
}
finally
{
unlock();
}
}
@Override
public Collection<String> getList() throws Exception
{
acquireReadLock();
try
{
if (getData().getJails() == null)
{
return Collections.emptyList();
}
return new ArrayList<String>(getData().getJails().keySet());
}
finally
{
unlock();
}
}
@Override
public void removeJail(final String jail) throws Exception
{
acquireWriteLock();
try
{
if (getData().getJails() == null)
{
return;
}
getData().getJails().remove(jail.toLowerCase(Locale.ENGLISH));
}
finally
{
unlock();
}
}
@Override
public void sendToJail(final IUser user, final String jail) throws Exception
{
acquireReadLock();
try
{
if (!(user.isOnline()))
{
Location loc = getJail(jail);
user.getTeleport().now(loc, false, TeleportCause.COMMAND);
}
user.acquireWriteLock();
try
{
user.getData().setJail(jail);
}
finally
{
unlock();
}
}
finally
{
unlock();
}
}
@Override
public void setJail(final String jailName, final Location loc) throws Exception
{
acquireWriteLock();
try
{
if (getData().getJails() == null)
{
getData().setJails(new HashMap<String, com.earth2me.essentials.storage.Location>());
}
getData().getJails().put(jailName.toLowerCase(Locale.ENGLISH), new com.earth2me.essentials.storage.Location(loc));
}
finally
{
unlock();
}
}
private class JailBlockListener implements Listener
{
@EventHandler(priority = EventPriority.LOW)
public void onBlockBreak(final BlockBreakEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (user.getData().isJailed())
{
event.setCancelled(true);
}
}
@EventHandler(priority = EventPriority.LOW)
public void onBlockPlace(final BlockPlaceEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (user.getData().isJailed())
{
event.setCancelled(true);
}
}
@EventHandler(priority = EventPriority.LOW)
public void onBlockDamage(final BlockDamageEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (user.getData().isJailed())
{
event.setCancelled(true);
}
}
}
private class JailPlayerListener implements Listener
{
@EventHandler(priority = EventPriority.LOW)
public void onPlayerInteract(final PlayerInteractEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (user.getData().isJailed())
{
event.setCancelled(true);
}
}
@EventHandler(priority = EventPriority.HIGH)
public void onPlayerRespawn(final PlayerRespawnEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (!user.getData().isJailed() || user.getData().getJail() == null || user.getData().getJail().isEmpty())
{
return;
}
try
{
event.setRespawnLocation(getJail(user.getData().getJail()));
}
catch (Exception ex)
{
if (ess.getSettings().isDebug())
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()), ex);
}
else
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()));
}
}
}
@EventHandler(priority = EventPriority.HIGH)
public void onPlayerTeleport(final PlayerTeleportEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (!user.getData().isJailed() || user.getData().getJail() == null || user.getData().getJail().isEmpty())
{
return;
}
try
{
event.setTo(getJail(user.getData().getJail()));
}
catch (Exception ex)
{
if (ess.getSettings().isDebug())
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()), ex);
}
else
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()));
}
}
user.sendMessage(_("jailMessage"));
}
@EventHandler(priority = EventPriority.HIGH)
public void onPlayerJoin(final PlayerJoinEvent event)
{
@Cleanup
final IUser user = ess.getUser(event.getPlayer());
user.acquireReadLock();
if (!user.getData().isJailed() || user.getData().getJail() == null || user.getData().getJail().isEmpty())
{
return;
}
try
{
sendToJail(user, user.getData().getJail());
}
catch (Exception ex)
{
if (ess.getSettings().isDebug())
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()), ex);
}
else
{
LOGGER.log(Level.INFO, _("returnPlayerToJailError", user.getName(), ex.getLocalizedMessage()));
}
}
user.sendMessage(_("jailMessage"));
}
}
}

View File

@@ -1,90 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IKits;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.settings.Kit;
import com.earth2me.essentials.storage.AsyncStorageObjectHolder;
import java.io.File;
import java.io.IOException;
import java.util.*;
import org.bukkit.inventory.ItemStack;
public class Kits extends AsyncStorageObjectHolder<com.earth2me.essentials.settings.Kits> implements IKits
{
public Kits(final IEssentials ess)
{
super(ess, com.earth2me.essentials.settings.Kits.class);
onReload();
}
@Override
public File getStorageFile() throws IOException
{
return new File(ess.getDataFolder(), "kits.yml");
}
@Override
public Kit getKit(String kitName) throws Exception
{
acquireReadLock();
try
{
if (getData().getKits() == null || kitName == null
|| !getData().getKits().containsKey(kitName.toLowerCase(Locale.ENGLISH)))
{
throw new Exception(_("kitError2"));
}
final Kit kit = getData().getKits().get(kitName.toLowerCase(Locale.ENGLISH));
if (kit == null)
{
throw new Exception(_("kitError2"));
}
return kit;
}
finally
{
unlock();
}
}
@Override
public void sendKit(IUser user, String kitName) throws Exception
{
final Kit kit = getKit(kitName);
sendKit(user, kit);
}
@Override
public void sendKit(IUser user, Kit kit) throws Exception
{
final List<ItemStack> itemList = kit.getItems();
user.giveItems(itemList, true);
}
@Override
public Collection<String> getList() throws Exception
{
acquireReadLock();
try
{
if (getData().getKits() == null)
{
return Collections.emptyList();
}
return new ArrayList<String>(getData().getKits().keySet());
}
finally
{
unlock();
}
}
@Override
public boolean isEmpty()
{
return getData().getKits().isEmpty();
}
}

View File

@@ -1,117 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.bukkit.Location;
import org.bukkit.Server;
import org.bukkit.entity.CreatureType;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
public enum Mob
{
CHICKEN("Chicken", Enemies.FRIENDLY, CreatureType.CHICKEN),
COW("Cow", Enemies.FRIENDLY, CreatureType.COW),
CREEPER("Creeper", Enemies.ENEMY, CreatureType.CREEPER),
GHAST("Ghast", Enemies.ENEMY, CreatureType.GHAST),
GIANT("Giant", Enemies.ENEMY, CreatureType.GIANT),
PIG("Pig", Enemies.FRIENDLY, CreatureType.PIG),
PIGZOMB("PigZombie", Enemies.NEUTRAL, CreatureType.PIG_ZOMBIE),
SHEEP("Sheep", Enemies.FRIENDLY, "", CreatureType.SHEEP),
SKELETON("Skeleton", Enemies.ENEMY, CreatureType.SKELETON),
SLIME("Slime", Enemies.ENEMY, CreatureType.SLIME),
SPIDER("Spider", Enemies.ENEMY, CreatureType.SPIDER),
SQUID("Squid", Enemies.FRIENDLY, CreatureType.SQUID),
ZOMBIE("Zombie", Enemies.ENEMY, CreatureType.ZOMBIE),
WOLF("Wolf", Enemies.NEUTRAL, CreatureType.WOLF),
CAVESPIDER("CaveSpider", Enemies.ENEMY, CreatureType.CAVE_SPIDER),
ENDERMAN("Enderman", Enemies.ENEMY, "", CreatureType.ENDERMAN),
SILVERFISH("Silverfish", Enemies.ENEMY, "", CreatureType.SILVERFISH),
ENDERDRAGON("EnderDragon", Enemies.ENEMY, CreatureType.ENDER_DRAGON),
VILLAGER("Villager", Enemies.FRIENDLY, CreatureType.VILLAGER),
BLAZE("Blaze", Enemies.ENEMY, CreatureType.BLAZE),
MUSHROOMCOW("MushroomCow", Enemies.FRIENDLY, CreatureType.MUSHROOM_COW),
MAGMACUBE("MagmaCube", Enemies.ENEMY, CreatureType.MAGMA_CUBE),
SNOWMAN("Snowman", Enemies.FRIENDLY, "", CreatureType.SNOWMAN);
public static final Logger logger = Logger.getLogger("Minecraft");
private Mob(String n, Enemies en, String s, CreatureType type)
{
this.suffix = s;
this.name = n;
this.type = en;
this.bukkitType = type;
}
private Mob(String n, Enemies en, CreatureType type)
{
this.name = n;
this.type = en;
this.bukkitType = type;
}
public String suffix = "s";
final public String name;
final public Enemies type;
final private CreatureType bukkitType;
private static final Map<String, Mob> hashMap = new HashMap<String, Mob>();
static
{
for (Mob mob : Mob.values())
{
hashMap.put(mob.name.toLowerCase(Locale.ENGLISH), mob);
}
}
public static Set<String> getMobList() {
return hashMap.keySet();
}
public LivingEntity spawn(final Player player, final Server server, final Location loc) throws MobException
{
final LivingEntity entity = player.getWorld().spawn(loc, (Class<? extends LivingEntity>)this.bukkitType.getEntityClass());
if (entity == null)
{
logger.log(Level.WARNING, _("unableToSpawnMob"));
throw new MobException();
}
return entity;
}
public enum Enemies
{
FRIENDLY("friendly"),
NEUTRAL("neutral"),
ENEMY("enemy");
private Enemies(final String type)
{
this.type = type;
}
final protected String type;
}
public CreatureType getType()
{
return bukkitType;
}
public static Mob fromName(final String name)
{
return hashMap.get(name.toLowerCase(Locale.ENGLISH));
}
public static class MobException extends Exception
{
private static final long serialVersionUID = 1L;
}
}

View File

@@ -1,302 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ITeleport;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.commands.NotEnoughArgumentsException;
import com.earth2me.essentials.perm.Permissions;
import com.earth2me.essentials.user.CooldownException;
import com.earth2me.essentials.user.UserData.TimestampType;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.logging.Logger;
import org.bukkit.Location;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
public class Teleport implements Runnable, ITeleport
{
private static final double MOVE_CONSTANT = 0.3;
private static class Target
{
private final Location location;
private final Entity entity;
public Target(Location location)
{
this.location = location;
this.entity = null;
}
public Target(Entity entity)
{
this.entity = entity;
this.location = null;
}
public Location getLocation()
{
if (this.entity != null)
{
return this.entity.getLocation();
}
return location;
}
}
private IUser user;
private int teleTimer = -1;
private long started; // time this task was initiated
private long delay; // how long to delay the teleport
private int health;
// note that I initially stored a clone of the location for reference, but...
// when comparing locations, I got incorrect mismatches (rounding errors, looked like)
// so, the X/Y/Z values are stored instead and rounded off
private long initX;
private long initY;
private long initZ;
private Target teleportTarget;
private Trade chargeFor;
private final IEssentials ess;
private static final Logger logger = Logger.getLogger("Minecraft");
private TeleportCause cause;
private void initTimer(long delay, Target target, Trade chargeFor, TeleportCause cause)
{
this.started = System.currentTimeMillis();
this.delay = delay;
this.health = user.getHealth();
this.initX = Math.round(user.getLocation().getX() * MOVE_CONSTANT);
this.initY = Math.round(user.getLocation().getY() * MOVE_CONSTANT);
this.initZ = Math.round(user.getLocation().getZ() * MOVE_CONSTANT);
this.teleportTarget = target;
this.chargeFor = chargeFor;
this.cause = cause;
}
@Override
public void run()
{
if (user == null || !user.isOnline() || user.getLocation() == null)
{
cancel();
return;
}
if (Math.round(user.getLocation().getX() * MOVE_CONSTANT) != initX
|| Math.round(user.getLocation().getY() * MOVE_CONSTANT) != initY
|| Math.round(user.getLocation().getZ() * MOVE_CONSTANT) != initZ
|| user.getHealth() < health)
{ // user moved, cancel teleport
cancel(true);
return;
}
health = user.getHealth(); // in case user healed, then later gets injured
long now = System.currentTimeMillis();
if (now > started + delay)
{
try
{
cooldown(false);
user.sendMessage(_("teleportationCommencing"));
try
{
now(teleportTarget, cause);
if (chargeFor != null)
{
chargeFor.charge(user);
}
}
catch (Throwable ex)
{
ess.getCommandHandler().showCommandError(user.getBase(), "teleport", ex);
}
}
catch (Exception ex)
{
user.sendMessage(_("cooldownWithMessage", ex.getMessage()));
}
}
}
public Teleport(IUser user, IEssentials ess)
{
this.user = user;
this.ess = ess;
}
public void respawn(final Trade chargeFor, TeleportCause cause) throws Exception
{
final Player player = user.getBase();
final Location bed = player.getBedSpawnLocation();
final PlayerRespawnEvent pre = new PlayerRespawnEvent(player, bed == null ? player.getWorld().getSpawnLocation() : bed, bed != null);
ess.getServer().getPluginManager().callEvent(pre);
teleport(new Target(pre.getRespawnLocation()), chargeFor, cause);
}
public void warp(String warp, Trade chargeFor, TeleportCause cause) throws Exception
{
final Location loc = ess.getWarps().getWarp(warp);
teleport(new Target(loc), chargeFor, cause);
user.sendMessage(_("warpingTo", warp));
}
public void cooldown(boolean check) throws Exception
{
try
{
user.checkCooldown(TimestampType.LASTTELEPORT, ess.getGroups().getTeleportCooldown(user), !check, Permissions.TELEPORT_COOLDOWN_BYPASS);
}
catch (CooldownException ex)
{
throw new Exception(_("timeBeforeTeleport", ex.getMessage()));
}
}
public void cancel(boolean notifyUser)
{
if (teleTimer == -1)
{
return;
}
try
{
ess.getServer().getScheduler().cancelTask(teleTimer);
if (notifyUser)
{
user.sendMessage(_("pendingTeleportCancelled"));
}
}
finally
{
teleTimer = -1;
}
}
public void cancel()
{
cancel(false);
}
public void teleport(Location loc, Trade chargeFor) throws Exception
{
teleport(new Target(loc), chargeFor, TeleportCause.PLUGIN);
}
public void teleport(Location loc, Trade chargeFor, TeleportCause cause) throws Exception
{
teleport(new Target(loc), chargeFor, cause);
}
public void teleport(Entity entity, Trade chargeFor, TeleportCause cause) throws Exception
{
teleport(new Target(entity), chargeFor, cause);
}
private void teleport(Target target, Trade chargeFor, TeleportCause cause) throws Exception
{
double delay = ess.getGroups().getTeleportDelay(user);
if (chargeFor != null)
{
chargeFor.isAffordableFor(user);
}
cooldown(true);
if (delay <= 0 || Permissions.TELEPORT_TIMER_BYPASS.isAuthorized(user))
{
cooldown(false);
now(target, cause);
if (chargeFor != null)
{
chargeFor.charge(user);
}
return;
}
cancel();
Calendar c = new GregorianCalendar();
c.add(Calendar.SECOND, (int)delay);
c.add(Calendar.MILLISECOND, (int)((delay * 1000.0) % 1000.0));
user.sendMessage(_("dontMoveMessage", Util.formatDateDiff(c.getTimeInMillis())));
initTimer((long)(delay * 1000.0), target, chargeFor, cause);
teleTimer = ess.scheduleSyncRepeatingTask(this, 10, 10);
}
private void now(Target target, TeleportCause cause) throws Exception
{
cancel();
user.setLastLocation();
user.getBase().teleport(Util.getSafeDestination(target.getLocation()), cause);
}
public void now(Location loc, boolean cooldown, TeleportCause cause) throws Exception
{
if (cooldown)
{
cooldown(false);
}
now(new Target(loc), cause);
}
public void now(Location loc, Trade chargeFor, TeleportCause cause) throws Exception
{
cooldown(false);
chargeFor.charge(user);
now(new Target(loc), cause);
}
public void now(Entity entity, boolean cooldown, TeleportCause cause) throws Exception
{
if (cooldown)
{
cooldown(false);
}
now(new Target(entity), cause);
}
public void back(Trade chargeFor) throws Exception
{
user.acquireReadLock();
try
{
teleport(new Target(user.getData().getLastLocation().getBukkitLocation()), chargeFor, TeleportCause.COMMAND);
}
finally
{
user.unlock();
}
}
public void back() throws Exception
{
user.acquireReadLock();
try
{
now(new Target(user.getData().getLastLocation().getBukkitLocation()), TeleportCause.COMMAND);
}
finally
{
user.unlock();
}
}
public void home(IUser user, String home, Trade chargeFor) throws Exception
{
final Location loc = user.getHome(home);
if (loc == null)
{
throw new NotEnoughArgumentsException();
}
teleport(new Target(loc), chargeFor, TeleportCause.COMMAND);
}
}

View File

@@ -1,337 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.ChargeException;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.craftbukkit.InventoryWorkaround;
import com.earth2me.essentials.craftbukkit.SetExpFix;
import com.earth2me.essentials.perm.NoCommandCostPermissions;
import com.earth2me.essentials.perm.Permissions;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import lombok.Cleanup;
import org.bukkit.Location;
import org.bukkit.entity.Item;
import org.bukkit.inventory.ItemStack;
public class Trade
{
private final transient String command;
private final transient Double money;
private final transient ItemStack itemStack;
private final transient Integer exp;
private final transient IEssentials ess;
public Trade(final String command, final IEssentials ess)
{
this(command, null, null, null, ess);
}
public Trade(final double money, final IEssentials ess)
{
this(null, money, null, null, ess);
}
public Trade(final ItemStack items, final IEssentials ess)
{
this(null, null, items, null, ess);
}
public Trade(final int exp, final IEssentials ess)
{
this(null, null, null, exp, ess);
}
private Trade(final String command, final Double money, final ItemStack item, final Integer exp, final IEssentials ess)
{
this.command = command;
this.money = money;
this.itemStack = item;
this.exp = exp;
this.ess = ess;
}
public void isAffordableFor(final IUser user) throws ChargeException
{
final double mon = user.getMoney();
if (getMoney() != null
&& mon < getMoney()
&& getMoney() > 0
&& !Permissions.ECO_LOAN.isAuthorized(user))
{
throw new ChargeException(_("notEnoughMoney"));
}
if (getItemStack() != null
&& !InventoryWorkaround.containsItem(user.getInventory(), true, true, itemStack))
{
throw new ChargeException(_("missingItems", getItemStack().getAmount(), getItemStack().getType().toString().toLowerCase(Locale.ENGLISH).replace("_", " ")));
}
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
if (command != null && !command.isEmpty()
&& !NoCommandCostPermissions.getPermission(command).isAuthorized(user)
&& mon < settings.getData().getEconomy().getCommandCost(command.charAt(0) == '/' ? command.substring(1) : command)
&& 0 < settings.getData().getEconomy().getCommandCost(command.charAt(0) == '/' ? command.substring(1) : command)
&& !Permissions.ECO_LOAN.isAuthorized(user))
{
throw new ChargeException(_("notEnoughMoney"));
}
if (exp != null && exp > 0
&& SetExpFix.getTotalExperience(user) < exp)
{
throw new ChargeException(_("notEnoughExperience"));
}
}
public void pay(final IUser user)
{
pay(user, true);
}
public boolean pay(final IUser user, final boolean dropItems)
{
boolean success = true;
if (getMoney() != null && getMoney() > 0)
{
user.giveMoney(getMoney());
}
if (getItemStack() != null)
{
if (dropItems)
{
final Map<Integer, ItemStack> leftOver = InventoryWorkaround.addItem(user.getInventory(), true, getItemStack());
final Location loc = user.getLocation();
for (ItemStack dropStack : leftOver.values())
{
final int maxStackSize = dropStack.getType().getMaxStackSize();
final int stacks = dropStack.getAmount() / maxStackSize;
final int leftover = dropStack.getAmount() % maxStackSize;
final Item[] itemStacks = new Item[stacks + (leftover > 0 ? 1 : 0)];
for (int i = 0; i < stacks; i++)
{
final ItemStack stack = dropStack.clone();
stack.setAmount(maxStackSize);
itemStacks[i] = loc.getWorld().dropItem(loc, stack);
}
if (leftover > 0)
{
final ItemStack stack = dropStack.clone();
stack.setAmount(leftover);
itemStacks[stacks] = loc.getWorld().dropItem(loc, stack);
}
}
}
else
{
success = InventoryWorkaround.addAllItems(user.getInventory(), true, getItemStack());
}
user.updateInventory();
}
if (getExperience() != null)
{
SetExpFix.setTotalExperience(user, SetExpFix.getTotalExperience(user) + getExperience());
}
return success;
}
public void charge(final IUser user) throws ChargeException
{
if (getMoney() != null)
{
final double mon = user.getMoney();
if (mon < getMoney() && getMoney() > 0 && !Permissions.ECO_LOAN.isAuthorized(user))
{
throw new ChargeException(_("notEnoughMoney"));
}
user.takeMoney(getMoney());
}
if (getItemStack() != null)
{
if (!InventoryWorkaround.containsItem(user.getInventory(), true, true, itemStack))
{
throw new ChargeException(_("missingItems", getItemStack().getAmount(), getItemStack().getType().toString().toLowerCase(Locale.ENGLISH).replace("_", " ")));
}
InventoryWorkaround.removeItem(user.getInventory(), true, true, getItemStack());
user.updateInventory();
}
if (command != null && !command.isEmpty()
&& !NoCommandCostPermissions.getPermission(command).isAuthorized(user))
{
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
final double mon = user.getMoney();
final double cost = settings.getData().getEconomy().getCommandCost(command.charAt(0) == '/' ? command.substring(1) : command);
if (mon < cost && cost > 0 && !Permissions.ECO_LOAN.isAuthorized(user))
{
throw new ChargeException(_("notEnoughMoney"));
}
user.takeMoney(cost);
}
if (getExperience() != null)
{
final int experience = SetExpFix.getTotalExperience(user);
if (experience < getExperience() && getExperience() > 0)
{
throw new ChargeException(_("notEnoughExperience"));
}
SetExpFix.setTotalExperience(user, experience - getExperience());
}
}
public Double getMoney()
{
return money;
}
public ItemStack getItemStack()
{
return itemStack;
}
public Integer getExperience()
{
return exp;
}
private static FileWriter fw = null;
public static void log(String type, String subtype, String event, String sender, Trade charge, String receiver, Trade pay, Location loc, IEssentials ess)
{
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
if (!settings.getData().getEconomy().isLogEnabled())
{
return;
}
if (fw == null)
{
try
{
fw = new FileWriter(new File(ess.getDataFolder(), "trade.log"), true);
}
catch (IOException ex)
{
Logger.getLogger("Minecraft").log(Level.SEVERE, null, ex);
}
}
StringBuilder sb = new StringBuilder();
sb.append(type).append(",").append(subtype).append(",").append(event).append(",\"");
sb.append(DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL).format(new Date()));
sb.append("\",\"");
if (sender != null)
{
sb.append(sender);
}
sb.append("\",");
if (charge == null)
{
sb.append("\"\",\"\",\"\"");
}
else
{
if (charge.getItemStack() != null)
{
sb.append(charge.getItemStack().getAmount()).append(",");
sb.append(charge.getItemStack().getType().toString()).append(",");
sb.append(charge.getItemStack().getDurability());
}
if (charge.getMoney() != null)
{
sb.append(charge.getMoney()).append(",");
sb.append("money").append(",");
sb.append(settings.getData().getEconomy().getCurrencySymbol());
}
if (charge.getExperience() != null)
{
sb.append(charge.getExperience()).append(",");
sb.append("exp").append(",");
sb.append("\"\"");
}
}
sb.append(",\"");
if (receiver != null)
{
sb.append(receiver);
}
sb.append("\",");
if (pay == null)
{
sb.append("\"\",\"\",\"\"");
}
else
{
if (pay.getItemStack() != null)
{
sb.append(pay.getItemStack().getAmount()).append(",");
sb.append(pay.getItemStack().getType().toString()).append(",");
sb.append(pay.getItemStack().getDurability());
}
if (pay.getMoney() != null)
{
sb.append(pay.getMoney()).append(",");
sb.append("money").append(",");
sb.append(settings.getData().getEconomy().getCurrencySymbol());
}
if (pay.getExperience() != null)
{
sb.append(pay.getExperience()).append(",");
sb.append("exp").append(",");
sb.append("\"\"");
}
}
if (loc == null)
{
sb.append(",\"\",\"\",\"\",\"\"");
}
else
{
sb.append(",\"");
sb.append(loc.getWorld().getName()).append("\",");
sb.append(loc.getBlockX()).append(",");
sb.append(loc.getBlockY()).append(",");
sb.append(loc.getBlockZ()).append(",");
}
sb.append("\n");
try
{
fw.write(sb.toString());
fw.flush();
}
catch (IOException ex)
{
Logger.getLogger("Minecraft").log(Level.SEVERE, null, ex);
}
}
public static void closeLog()
{
if (fw != null)
{
try
{
fw.close();
}
catch (IOException ex)
{
Logger.getLogger("Minecraft").log(Level.SEVERE, null, ex);
}
fw = null;
}
}
}

View File

@@ -1,649 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.InvalidNameException;
import com.earth2me.essentials.external.gnu.inet.encoding.Punycode;
import com.earth2me.essentials.external.gnu.inet.encoding.PunycodeException;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.util.*;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import lombok.Cleanup;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.World;
import org.bukkit.block.Block;
import org.bukkit.entity.LivingEntity;
import org.bukkit.inventory.ItemStack;
import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionDefault;
import org.bukkit.plugin.PluginManager;
public final class Util
{
private Util()
{
}
private final static Pattern INVALIDFILECHARS = Pattern.compile("[^\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFC]");
private final static Pattern INVALIDCHARS = Pattern.compile("[^\t\n\r\u0020-\u007E\u0085\u00A0-\uD7FF\uE000-\uFFFC]");
public static String sanitizeFileName(String name) throws InvalidNameException
{
try
{
String r = name.toLowerCase(Locale.ENGLISH);
r = r.replace('.', (char)('\ue200' + '.'));
r = r.replace('\\', (char)('\ue200' + '\\'));
r = r.replace('/', (char)('\ue200' + '/'));
r = r.replace('"', (char)('\ue200' + '"'));
r = r.replace('<', (char)('\ue200' + '<'));
r = r.replace('>', (char)('\ue200' + '>'));
r = r.replace('|', (char)('\ue200' + '|'));
r = r.replace('?', (char)('\ue200' + '?'));
r = r.replace('*', (char)('\ue200' + '*'));
r = r.replace(':', (char)('\ue200' + ':'));
r = r.replace('-', (char)('\ue200' + '-'));
r = INVALIDFILECHARS.matcher(r).replaceAll("");
return Punycode.encode(r);
}
catch (PunycodeException ex)
{
throw new InvalidNameException(ex);
}
}
public static String decodeFileName(String name) throws InvalidNameException
{
try
{
String r = Punycode.decode(name);
r = r.replace((char)('\ue200' + '.'), '.');
r = r.replace((char)('\ue200' + '\\'), '\\');
r = r.replace((char)('\ue200' + '/'), '/');
r = r.replace((char)('\ue200' + '"'), '"');
r = r.replace((char)('\ue200' + '<'), '<');
r = r.replace((char)('\ue200' + '>'), '>');
r = r.replace((char)('\ue200' + '|'), '|');
r = r.replace((char)('\ue200' + '?'), '?');
r = r.replace((char)('\ue200' + '*'), '*');
r = r.replace((char)('\ue200' + ':'), ':');
r = r.replace((char)('\ue200' + '-'), '-');
return r;
}
catch (PunycodeException ex)
{
throw new InvalidNameException(ex);
}
}
public static String sanitizeKey(String name)
{
return INVALIDCHARS.matcher(name.toLowerCase(Locale.ENGLISH)).replaceAll("_");
}
public static String sanitizeString(final String string)
{
return INVALIDCHARS.matcher(string).replaceAll("");
}
public static String formatDateDiff(long date)
{
Calendar c = new GregorianCalendar();
c.setTimeInMillis(date);
Calendar now = new GregorianCalendar();
return Util.formatDateDiff(now, c);
}
public static String formatDateDiff(Calendar fromDate, Calendar toDate)
{
boolean future = false;
if (toDate.equals(fromDate))
{
return _("now");
}
if (toDate.after(fromDate))
{
future = true;
}
StringBuilder sb = new StringBuilder();
int[] types = new int[]
{
Calendar.YEAR,
Calendar.MONTH,
Calendar.DAY_OF_MONTH,
Calendar.HOUR_OF_DAY,
Calendar.MINUTE,
Calendar.SECOND
};
String[] names = new String[]
{
_("year"),
_("years"),
_("month"),
_("months"),
_("day"),
_("days"),
_("hour"),
_("hours"),
_("minute"),
_("minutes"),
_("second"),
_("seconds")
};
for (int i = 0; i < types.length; i++)
{
int diff = dateDiff(types[i], fromDate, toDate, future);
if (diff > 0)
{
sb.append(" ").append(diff).append(" ").append(names[i * 2 + (diff > 1 ? 1 : 0)]);
}
}
if (sb.length() == 0)
{
return "now";
}
return sb.toString();
}
private static int dateDiff(int type, Calendar fromDate, Calendar toDate, boolean future)
{
int diff = 0;
long savedDate = fromDate.getTimeInMillis();
while ((future && !fromDate.after(toDate)) || (!future && !fromDate.before(toDate)))
{
savedDate = fromDate.getTimeInMillis();
fromDate.add(type, future ? 1 : -1);
diff++;
}
diff--;
fromDate.setTimeInMillis(savedDate);
return diff;
}
public static long parseDateDiff(String time, boolean future) throws Exception
{
Pattern timePattern = Pattern.compile(
"(?:([0-9]+)\\s*y[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*mo[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*w[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*d[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*h[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*m[a-z]*[,\\s]*)?"
+ "(?:([0-9]+)\\s*(?:s[a-z]*)?)?", Pattern.CASE_INSENSITIVE);
Matcher m = timePattern.matcher(time);
int years = 0;
int months = 0;
int weeks = 0;
int days = 0;
int hours = 0;
int minutes = 0;
int seconds = 0;
boolean found = false;
while (m.find())
{
if (m.group() == null || m.group().isEmpty())
{
continue;
}
for (int i = 0; i < m.groupCount(); i++)
{
if (m.group(i) != null && !m.group(i).isEmpty())
{
found = true;
break;
}
}
if (found)
{
if (m.group(1) != null && !m.group(1).isEmpty())
{
years = Integer.parseInt(m.group(1));
}
if (m.group(2) != null && !m.group(2).isEmpty())
{
months = Integer.parseInt(m.group(2));
}
if (m.group(3) != null && !m.group(3).isEmpty())
{
weeks = Integer.parseInt(m.group(3));
}
if (m.group(4) != null && !m.group(4).isEmpty())
{
days = Integer.parseInt(m.group(4));
}
if (m.group(5) != null && !m.group(5).isEmpty())
{
hours = Integer.parseInt(m.group(5));
}
if (m.group(6) != null && !m.group(6).isEmpty())
{
minutes = Integer.parseInt(m.group(6));
}
if (m.group(7) != null && !m.group(7).isEmpty())
{
seconds = Integer.parseInt(m.group(7));
}
break;
}
}
if (!found)
{
throw new Exception(_("illegalDate"));
}
Calendar c = new GregorianCalendar();
if (years > 0)
{
c.add(Calendar.YEAR, years * (future ? 1 : -1));
}
if (months > 0)
{
c.add(Calendar.MONTH, months * (future ? 1 : -1));
}
if (weeks > 0)
{
c.add(Calendar.WEEK_OF_YEAR, weeks * (future ? 1 : -1));
}
if (days > 0)
{
c.add(Calendar.DAY_OF_MONTH, days * (future ? 1 : -1));
}
if (hours > 0)
{
c.add(Calendar.HOUR_OF_DAY, hours * (future ? 1 : -1));
}
if (minutes > 0)
{
c.add(Calendar.MINUTE, minutes * (future ? 1 : -1));
}
if (seconds > 0)
{
c.add(Calendar.SECOND, seconds * (future ? 1 : -1));
}
return c.getTimeInMillis();
}
// The player can stand inside these materials
private static final Set<Integer> AIR_MATERIALS = new HashSet<Integer>();
private static final HashSet<Byte> AIR_MATERIALS_TARGET = new HashSet<Byte>();
static
{
AIR_MATERIALS.add(Material.AIR.getId());
AIR_MATERIALS.add(Material.SAPLING.getId());
AIR_MATERIALS.add(Material.POWERED_RAIL.getId());
AIR_MATERIALS.add(Material.DETECTOR_RAIL.getId());
AIR_MATERIALS.add(Material.LONG_GRASS.getId());
AIR_MATERIALS.add(Material.DEAD_BUSH.getId());
AIR_MATERIALS.add(Material.YELLOW_FLOWER.getId());
AIR_MATERIALS.add(Material.RED_ROSE.getId());
AIR_MATERIALS.add(Material.BROWN_MUSHROOM.getId());
AIR_MATERIALS.add(Material.RED_MUSHROOM.getId());
AIR_MATERIALS.add(Material.TORCH.getId());
AIR_MATERIALS.add(Material.REDSTONE_WIRE.getId());
AIR_MATERIALS.add(Material.SEEDS.getId());
AIR_MATERIALS.add(Material.SIGN_POST.getId());
AIR_MATERIALS.add(Material.WOODEN_DOOR.getId());
AIR_MATERIALS.add(Material.LADDER.getId());
AIR_MATERIALS.add(Material.RAILS.getId());
AIR_MATERIALS.add(Material.WALL_SIGN.getId());
AIR_MATERIALS.add(Material.LEVER.getId());
AIR_MATERIALS.add(Material.STONE_PLATE.getId());
AIR_MATERIALS.add(Material.IRON_DOOR_BLOCK.getId());
AIR_MATERIALS.add(Material.WOOD_PLATE.getId());
AIR_MATERIALS.add(Material.REDSTONE_TORCH_OFF.getId());
AIR_MATERIALS.add(Material.REDSTONE_TORCH_ON.getId());
AIR_MATERIALS.add(Material.STONE_BUTTON.getId());
AIR_MATERIALS.add(Material.SUGAR_CANE_BLOCK.getId());
AIR_MATERIALS.add(Material.DIODE_BLOCK_OFF.getId());
AIR_MATERIALS.add(Material.DIODE_BLOCK_ON.getId());
AIR_MATERIALS.add(Material.TRAP_DOOR.getId());
AIR_MATERIALS.add(Material.PUMPKIN_STEM.getId());
AIR_MATERIALS.add(Material.MELON_STEM.getId());
AIR_MATERIALS.add(Material.VINE.getId());
AIR_MATERIALS.add(Material.NETHER_WARTS.getId());
AIR_MATERIALS.add(Material.WATER_LILY.getId());
for (Integer integer : AIR_MATERIALS)
{
AIR_MATERIALS_TARGET.add(integer.byteValue());
}
AIR_MATERIALS_TARGET.add((byte)Material.WATER.getId());
AIR_MATERIALS_TARGET.add((byte)Material.STATIONARY_WATER.getId());
}
public static Location getTarget(final LivingEntity entity) throws Exception
{
final Block block = entity.getTargetBlock(AIR_MATERIALS_TARGET, 300);
if (block == null)
{
throw new Exception("Not targeting a block");
}
return block.getLocation();
}
public static Location getSafeDestination(final Location loc) throws Exception
{
if (loc == null || loc.getWorld() == null)
{
throw new Exception(_("destinationNotSet"));
}
final World world = loc.getWorld();
int x = loc.getBlockX();
int y = (int)Math.round(loc.getY());
int z = loc.getBlockZ();
while (isBlockAboveAir(world, x, y, z))
{
y -= 1;
if (y < 0)
{
break;
}
}
while (isBlockUnsafe(world, x, y, z))
{
y += 1;
if (y >= 127)
{
x += 1;
break;
}
}
while (isBlockUnsafe(world, x, y, z))
{
y -= 1;
if (y <= 1)
{
y = 127;
x += 1;
if (x - 32 > loc.getBlockX())
{
throw new Exception(_("holeInFloor"));
}
}
}
return new Location(world, x + 0.5D, y, z + 0.5D, loc.getYaw(), loc.getPitch());
}
private static boolean isBlockAboveAir(final World world, final int x, final int y, final int z)
{
return AIR_MATERIALS.contains(world.getBlockAt(x, y - 1, z).getType().getId());
}
public static boolean isBlockUnsafe(final World world, final int x, final int y, final int z)
{
final Block below = world.getBlockAt(x, y - 1, z);
if (below.getType() == Material.LAVA || below.getType() == Material.STATIONARY_LAVA)
{
return true;
}
if (below.getType() == Material.FIRE)
{
return true;
}
if ((!AIR_MATERIALS.contains(world.getBlockAt(x, y, z).getType().getId()))
|| (!AIR_MATERIALS.contains(world.getBlockAt(x, y + 1, z).getType().getId())))
{
return true;
}
return isBlockAboveAir(world, x, y, z);
}
public static ItemStack convertBlockToItem(final Block block)
{
final ItemStack is = new ItemStack(block.getType(), 1, (short)0, block.getData());
switch (is.getType())
{
case WOODEN_DOOR:
is.setType(Material.WOOD_DOOR);
is.setDurability((short)0);
break;
case IRON_DOOR_BLOCK:
is.setType(Material.IRON_DOOR);
is.setDurability((short)0);
break;
case SIGN_POST:
case WALL_SIGN:
is.setType(Material.SIGN);
is.setDurability((short)0);
break;
case CROPS:
is.setType(Material.SEEDS);
is.setDurability((short)0);
break;
case CAKE_BLOCK:
is.setType(Material.CAKE);
is.setDurability((short)0);
break;
case BED_BLOCK:
is.setType(Material.BED);
is.setDurability((short)0);
break;
case REDSTONE_WIRE:
is.setType(Material.REDSTONE);
is.setDurability((short)0);
break;
case REDSTONE_TORCH_OFF:
case REDSTONE_TORCH_ON:
is.setType(Material.REDSTONE_TORCH_ON);
is.setDurability((short)0);
break;
case DIODE_BLOCK_OFF:
case DIODE_BLOCK_ON:
is.setType(Material.DIODE);
is.setDurability((short)0);
break;
case DOUBLE_STEP:
is.setType(Material.STEP);
break;
case TORCH:
case RAILS:
case LADDER:
case WOOD_STAIRS:
case COBBLESTONE_STAIRS:
case LEVER:
case STONE_BUTTON:
case FURNACE:
case DISPENSER:
case PUMPKIN:
case JACK_O_LANTERN:
case WOOD_PLATE:
case STONE_PLATE:
case PISTON_STICKY_BASE:
case PISTON_BASE:
case IRON_FENCE:
case THIN_GLASS:
case TRAP_DOOR:
case FENCE:
case FENCE_GATE:
case NETHER_FENCE:
is.setDurability((short)0);
break;
case FIRE:
return null;
case PUMPKIN_STEM:
is.setType(Material.PUMPKIN_SEEDS);
break;
case MELON_STEM:
is.setType(Material.MELON_SEEDS);
break;
}
return is;
}
private static DecimalFormat df = new DecimalFormat("#0.00", DecimalFormatSymbols.getInstance(Locale.US));
public static String formatCurrency(final double value, final IEssentials ess)
{
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
String str = settings.getData().getEconomy().getCurrencySymbol() + df.format(value);
if (str.endsWith(".00"))
{
str = str.substring(0, str.length() - 3);
}
return str;
}
public static double roundDouble(final double d)
{
return Math.round(d * 100.0) / 100.0;
}
public static boolean isInt(final String sInt)
{
try
{
Integer.parseInt(sInt);
}
catch (NumberFormatException e)
{
return false;
}
return true;
}
public static String joinList(Object... list)
{
return joinList(", ", list);
}
public static String joinList(String seperator, Object... list)
{
StringBuilder buf = new StringBuilder();
for (Object each : list)
{
if (buf.length() > 0)
{
buf.append(seperator);
}
if (each instanceof Collection)
{
buf.append(joinList(seperator, ((Collection)each).toArray()));
}
else
{
try
{
buf.append(each.toString());
}
catch (Exception e)
{
buf.append(each.toString());
}
}
}
return buf.toString();
}
public static void registerPermissions(String path, Collection<String> nodes, boolean hasDefault, IEssentials ess)
{
if (nodes == null || nodes.isEmpty())
{
return;
}
final PluginManager pluginManager = ess.getServer().getPluginManager();
Permission basePerm = pluginManager.getPermission(path + ".*");
if (basePerm != null && !basePerm.getChildren().isEmpty())
{
basePerm.getChildren().clear();
}
if (basePerm == null)
{
basePerm = new Permission(path + ".*", PermissionDefault.OP);
pluginManager.addPermission(basePerm);
Permission mainPerm = pluginManager.getPermission("essentials.*");
if (mainPerm == null)
{
mainPerm = new Permission("essentials.*", PermissionDefault.OP);
pluginManager.addPermission(mainPerm);
}
mainPerm.getChildren().put(basePerm.getName(), Boolean.TRUE);
}
for (String nodeName : nodes)
{
final String permissionName = path + "." + nodeName;
Permission perm = pluginManager.getPermission(permissionName);
if (perm == null)
{
final PermissionDefault defaultPerm = hasDefault && nodeName.equalsIgnoreCase("default") ? PermissionDefault.TRUE : PermissionDefault.OP;
perm = new Permission(permissionName, defaultPerm);
pluginManager.addPermission(perm);
}
basePerm.getChildren().put(permissionName, Boolean.TRUE);
}
basePerm.recalculatePermissibles();
}
private static transient final Pattern DOT_PATTERN = Pattern.compile("\\.");
public static Permission registerPermission(String permission, PermissionDefault defaultPerm)
{
final PluginManager pluginManager = Bukkit.getServer().getPluginManager();
final String[] parts = DOT_PATTERN.split(permission);
final StringBuilder builder = new StringBuilder(permission.length());
Permission parent = null;
for (int i = 0; i < parts.length - 1; i++)
{
builder.append(parts[i]).append(".*");
String permString = builder.toString();
Permission perm = pluginManager.getPermission(permString);
if (perm == null)
{
perm = new Permission(permString, PermissionDefault.FALSE);
pluginManager.addPermission(perm);
if (parent != null)
{
parent.getChildren().put(perm.getName(), Boolean.TRUE);
}
parent = perm;
}
builder.deleteCharAt(builder.length() - 1);
}
Permission perm = pluginManager.getPermission(permission);
if (perm == null)
{
perm = new Permission(permission, defaultPerm);
pluginManager.addPermission(perm);
if (parent != null)
{
parent.getChildren().put(perm.getName(), Boolean.TRUE);
}
parent = perm;
}
perm.recalculatePermissibles();
return perm;
}
private static transient final Pattern VANILLA_COLOR_PATTERN = Pattern.compile("\u00A7+[0-9A-FKa-fk]");
private static transient final Pattern EASY_COLOR_PATTERN = Pattern.compile("&([0-9a-fk])");
public static String stripColor(final String input)
{
if (input == null)
{
return null;
}
return VANILLA_COLOR_PATTERN.matcher(input).replaceAll("");
}
public static String replaceColor(final String input)
{
if (input == null)
{
return null;
}
return EASY_COLOR_PATTERN.matcher(input).replaceAll("\u00a7$1");
}
}

View File

@@ -1,152 +0,0 @@
package com.earth2me.essentials;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IWarp;
import com.earth2me.essentials.api.IWarps;
import com.earth2me.essentials.api.InvalidNameException;
import com.earth2me.essentials.commands.WarpNotFoundException;
import com.earth2me.essentials.settings.WarpHolder;
import com.earth2me.essentials.storage.StorageObjectMap;
import java.io.File;
import java.util.*;
import java.util.logging.Logger;
import org.bukkit.Bukkit;
import org.bukkit.Location;
public class Warps extends StorageObjectMap<IWarp> implements IWarps
{
private static final Logger logger = Bukkit.getLogger();
public Warps(IEssentials ess)
{
super(ess, "warps");
}
@Override
public boolean isEmpty()
{
return getKeySize() == 0;
}
@Override
public Collection<String> getList()
{
final List<String> names = new ArrayList<String>();
for (String key : getAllKeys())
{
IWarp warp = getObject(key);
if (warp == null)
{
continue;
}
warp.acquireReadLock();
try
{
names.add(warp.getData().getName());
}
finally
{
warp.unlock();
}
}
Collections.sort(names, String.CASE_INSENSITIVE_ORDER);
return names;
}
@Override
public Location getWarp(final String name) throws Exception
{
IWarp warp = getObject(name);
if (warp == null)
{
throw new WarpNotFoundException(_("warpNotExist"));
}
warp.acquireReadLock();
try
{
return warp.getData().getLocation().getBukkitLocation();
}
finally
{
warp.unlock();
}
}
@Override
public void setWarp(final String name, final Location loc) throws Exception
{
setWarp(name, new com.earth2me.essentials.storage.Location(loc));
}
public void setWarp(final String name, final com.earth2me.essentials.storage.Location loc) throws Exception
{
IWarp warp = getObject(name);
if (warp == null)
{
warp = new WarpHolder(name, ess);
}
warp.acquireWriteLock();
try
{
warp.getData().setLocation(loc);
}
finally
{
warp.unlock();
}
}
@Override
public void removeWarp(final String name) throws Exception
{
removeObject(name);
}
@Override
public File getWarpFile(String name) throws InvalidNameException
{
return getStorageFile(name);
}
@Override
public IWarp load(String name) throws Exception
{
final IWarp warp = new WarpHolder(name, ess);
warp.onReload();
return warp;
}
private static class StringIgnoreCase
{
private final String string;
public StringIgnoreCase(String string)
{
this.string = string;
}
@Override
public int hashCode()
{
return getString().toLowerCase(Locale.ENGLISH).hashCode();
}
@Override
public boolean equals(Object o)
{
if (o instanceof StringIgnoreCase)
{
return getString().equalsIgnoreCase(((StringIgnoreCase)o).getString());
}
return false;
}
public String getString()
{
return string;
}
}
}

View File

@@ -1,86 +0,0 @@
package com.earth2me.essentials;
import com.earth2me.essentials.api.IEssentials;
import com.earth2me.essentials.api.IWorth;
import com.earth2me.essentials.storage.AsyncStorageObjectHolder;
import com.earth2me.essentials.storage.EnchantmentLevel;
import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
import org.bukkit.material.MaterialData;
public class Worth extends AsyncStorageObjectHolder<com.earth2me.essentials.settings.Worth> implements IWorth
{
public Worth(final IEssentials ess)
{
super(ess, com.earth2me.essentials.settings.Worth.class);
onReload(false);
}
@Override
public double getPrice(final ItemStack itemStack)
{
this.acquireReadLock();
try
{
final Map<MaterialData, Double> prices = this.getData().getSell();
if (prices == null || itemStack == null)
{
return Double.NaN;
}
final Double basePrice = prices.get(itemStack.getData());
if (basePrice == null || Double.isNaN(basePrice))
{
return Double.NaN;
}
double multiplier = 1.0;
if (itemStack.getType().getMaxDurability() > 0) {
multiplier *= (double)itemStack.getDurability() / (double)itemStack.getType().getMaxDurability();
}
if (itemStack.getEnchantments() != null && !itemStack.getEnchantments().isEmpty())
{
final Map<EnchantmentLevel, Double> enchantmentMultipliers = this.getData().getEnchantmentMultiplier();
if (enchantmentMultipliers != null)
{
for (Map.Entry<Enchantment, Integer> entry : itemStack.getEnchantments().entrySet())
{
final Double enchMult = enchantmentMultipliers.get(new EnchantmentLevel(entry.getKey(), entry.getValue()));
if (enchMult != null)
{
multiplier *= enchMult;
}
}
}
}
return basePrice * multiplier;
}
finally
{
this.unlock();
}
}
@Override
public void setPrice(final ItemStack itemStack, final double price)
{
acquireWriteLock();
try {
if (getData().getSell() == null) {
getData().setSell(new HashMap<MaterialData, Double>());
}
getData().getSell().put(itemStack.getData(), price);
} finally {
unlock();
}
}
@Override
public File getStorageFile() throws IOException
{
return new File(ess.getDataFolder(), "worth.yml");
}
}

View File

@@ -1,7 +0,0 @@
package com.earth2me.essentials.api;
public interface IBackup extends Runnable
{
public void startTask();
}

View File

@@ -1,20 +0,0 @@
package com.earth2me.essentials.api;
import java.util.Map;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.Plugin;
public interface ICommandHandler extends IReload
{
Map<String, String> disabledCommands();
public void removePlugin(Plugin plugin);
public void addPlugin(Plugin plugin);
boolean handleCommand(CommandSender sender, Command command, String commandLabel, String[] args);
void showCommandError(CommandSender sender, String commandLabel, Throwable exception);
}

View File

@@ -1,21 +0,0 @@
package com.earth2me.essentials.api;
public interface IEconomy extends IReload
{
public double getMoney(String name) throws UserDoesNotExistException;
public void setMoney(String name, double balance) throws UserDoesNotExistException, NoLoanPermittedException;
public void resetBalance(String name) throws UserDoesNotExistException, NoLoanPermittedException;
public String format(double amount);
public boolean playerExists(String name);
public boolean isNPC(String name) throws UserDoesNotExistException;
public boolean createNPC(String name);
public void removeNPC(String name) throws UserDoesNotExistException;
}

View File

@@ -1,64 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.listener.TntExplodeListener;
import com.earth2me.essentials.register.payment.Methods;
import org.bukkit.World;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
public interface IEssentials extends Plugin
{
void addReloadListener(IReload listener);
IUser getUser(Player player);
IUser getUser(String playerName);
int broadcastMessage(IUser sender, String message);
II18n getI18n();
ISettings getSettings();
IGroups getGroups();
IJails getJails();
IKits getKits();
IWarps getWarps();
IWorth getWorth();
IItemDb getItemDb();
IUserMap getUserMap();
IBackup getBackup();
ICommandHandler getCommandHandler();
World getWorld(String name);
Methods getPaymentMethod();
int scheduleAsyncDelayedTask(Runnable run);
int scheduleSyncDelayedTask(Runnable run);
int scheduleSyncDelayedTask(Runnable run, long delay);
int scheduleSyncRepeatingTask(Runnable run, long delay, long period);
//IPermissionsHandler getPermissionsHandler();
void reload();
TntExplodeListener getTNTListener();
void setGroups(IGroups groups);
void removeReloadListener(IReload groups);
IEconomy getEconomy();
}

View File

@@ -1,25 +0,0 @@
package com.earth2me.essentials.api;
import java.text.MessageFormat;
public interface IGroups
{
String getMainGroup(IUser player);
boolean inGroup(IUser player, String groupname);
double getHealCooldown(IUser player);
double getTeleportCooldown(IUser player);
double getTeleportDelay(IUser player);
String getPrefix(IUser player);
String getSuffix(IUser player);
int getHomeLimit(IUser player);
MessageFormat getChatFormat(IUser player);
}

View File

@@ -1,9 +0,0 @@
package com.earth2me.essentials.api;
import java.util.Locale;
public interface II18n
{
Locale getCurrentLocale();
}

View File

@@ -1,13 +0,0 @@
package com.earth2me.essentials.api;
import org.bukkit.inventory.ItemStack;
public interface IItemDb extends IReload
{
ItemStack get(final String name, final IUser user) throws Exception;
ItemStack get(final String name, final int quantity) throws Exception;
ItemStack get(final String name) throws Exception;
}

View File

@@ -1,18 +0,0 @@
package com.earth2me.essentials.api;
import java.util.Collection;
import org.bukkit.Location;
public interface IJails extends IReload
{
Location getJail(String jailName) throws Exception;
Collection<String> getList() throws Exception;
void removeJail(String jail) throws Exception;
void sendToJail(IUser user, String jail) throws Exception;
void setJail(String jailName, Location loc) throws Exception;
}

View File

@@ -1,18 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.settings.Kit;
import java.util.Collection;
public interface IKits extends IReload
{
Kit getKit(String kit) throws Exception;
void sendKit(IUser user, String kit) throws Exception;
void sendKit(IUser user, Kit kit) throws Exception;
Collection<String> getList() throws Exception;
boolean isEmpty();
}

View File

@@ -1,17 +0,0 @@
package com.earth2me.essentials.api;
import org.bukkit.command.CommandSender;
import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionDefault;
public interface IPermission
{
String getPermission();
boolean isAuthorized(CommandSender sender);
Permission getBukkitPermission();
PermissionDefault getPermissionDefault();
}

View File

@@ -1,11 +0,0 @@
package com.earth2me.essentials.api;
import org.bukkit.command.CommandSender;
public interface IReplyTo
{
void setReplyTo(CommandSender user);
CommandSender getReplyTo();
}

View File

@@ -1,14 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.settings.Settings;
import com.earth2me.essentials.storage.IStorageObjectHolder;
public interface ISettings extends IStorageObjectHolder<Settings>
{
public String getLocale();
public boolean isDebug();
public void setDebug(boolean b);
}

View File

@@ -1,28 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.Trade;
import org.bukkit.Location;
import org.bukkit.entity.Entity;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
public interface ITeleport
{
void now(Location loc, boolean cooldown, TeleportCause cause) throws Exception;
void now(Entity entity, boolean cooldown, TeleportCause cause) throws Exception;
void back(Trade chargeFor) throws Exception;
void teleport(Location bed, Trade charge, TeleportCause teleportCause) throws Exception;
void teleport(Entity entity, Trade chargeFor, TeleportCause cause) throws Exception;
void home(IUser player, String toLowerCase, Trade charge) throws Exception;
void respawn(Trade charge, TeleportCause teleportCause) throws Exception;
void back() throws Exception;
public void warp(String name, Trade charge, TeleportCause teleportCause) throws Exception;
}

View File

@@ -1,104 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.storage.IStorageObjectHolder;
import com.earth2me.essentials.user.CooldownException;
import com.earth2me.essentials.user.UserData;
import java.util.List;
import org.bukkit.Location;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
public interface IUser extends Player, IStorageObjectHolder<UserData>, IReload, IReplyTo, Comparable<IUser>
{
Player getBase();
double getMoney();
void takeMoney(double value);
void takeMoney(double value, CommandSender initiator);
void giveMoney(double value);
void giveMoney(double value, CommandSender initiator);
void giveItems(ItemStack itemStack, Boolean canSpew) throws ChargeException;
void giveItems(List<ItemStack> itemStacks, Boolean canSpew) throws ChargeException;
void setMoney(double value);
void payUser(final IUser reciever, final double value) throws Exception;
void setLastLocation();
Location getHome(String name) throws Exception;
Location getHome(Location loc);
boolean isHidden();
ITeleport getTeleport();
void checkCooldown(UserData.TimestampType cooldownType, double cooldown, boolean set, IPermission bypassPermission) throws CooldownException;
boolean toggleAfk();
void updateActivity(boolean broadcast);
void updateDisplayName();
boolean checkJailTimeout(long currentTime);
boolean checkMuteTimeout(long currentTime);
boolean checkBanTimeout(long currentTime);
long getTimestamp(UserData.TimestampType name);
void setTimestamp(UserData.TimestampType name, long value);
void setLastOnlineActivity(long currentTime);
void checkActivity();
long getLastOnlineActivity();
boolean isGodModeEnabled();
boolean isIgnoringPlayer(String name);
void setIgnoredPlayer(String name, boolean set);
Location getAfkPosition();
boolean toggleGodModeEnabled();
void dispose();
void updateCompass();
List<String> getHomes();
void addMail(String string);
boolean toggleMuted();
boolean toggleSocialSpy();
void requestTeleport(IUser user, boolean b);
boolean isTeleportRequestHere();
IUser getTeleportRequester();
boolean toggleTeleportEnabled();
long getTeleportRequestTime();
boolean gotMailInfo();
List<String> getMails();
}

View File

@@ -1,23 +0,0 @@
package com.earth2me.essentials.api;
import java.io.File;
import java.util.Set;
import org.bukkit.entity.Player;
public interface IUserMap extends IReload
{
boolean userExists(final String name);
IUser getUser(final Player player);
IUser getUser(final String playerName);
void removeUser(final String name) throws InvalidNameException;
Set<String> getAllUniqueUsers();
int getUniqueUsers();
File getUserFile(final String name) throws InvalidNameException;
}

View File

@@ -1,9 +0,0 @@
package com.earth2me.essentials.api;
import com.earth2me.essentials.settings.Warp;
import com.earth2me.essentials.storage.IStorageObjectHolder;
public interface IWarp extends IStorageObjectHolder<Warp>
{
}

View File

@@ -1,21 +0,0 @@
package com.earth2me.essentials.api;
import java.io.File;
import java.util.Collection;
import org.bukkit.Location;
public interface IWarps extends IReload
{
Location getWarp(String warp) throws Exception;
Collection<String> getList();
void removeWarp(String name) throws Exception;
void setWarp(String name, Location loc) throws Exception;
public boolean isEmpty();
public File getWarpFile(String name) throws InvalidNameException;
}

View File

@@ -1,11 +0,0 @@
package com.earth2me.essentials.api;
import org.bukkit.inventory.ItemStack;
public interface IWorth extends IReload
{
double getPrice(ItemStack itemStack);
void setPrice(ItemStack itemStack, double price);
}

View File

@@ -1,10 +0,0 @@
package com.earth2me.essentials.api;
public class InvalidNameException extends Exception
{
public InvalidNameException(Throwable thrwbl)
{
super(thrwbl);
}
}

View File

@@ -1,12 +0,0 @@
package com.earth2me.essentials.api;
import static com.earth2me.essentials.I18n._;
public class NoLoanPermittedException extends Exception
{
public NoLoanPermittedException()
{
super(_("negativeBalanceError"));
}
}

View File

@@ -1,12 +0,0 @@
package com.earth2me.essentials.api;
import static com.earth2me.essentials.I18n._;
public class UserDoesNotExistException extends Exception
{
public UserDoesNotExistException(String name)
{
super(_("userDoesNotExist", name));
}
}

View File

@@ -1,55 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.entity.Player;
import org.bukkit.permissions.PermissionDefault;
public class Commandafk extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && Permissions.AFK_OTHERS.isAuthorized(user))
{
IUser afkUser = ess.getUser((Player)ess.getServer().matchPlayer(args[0]));
if (afkUser != null)
{
toggleAfk(afkUser);
}
}
else
{
toggleAfk(user);
}
}
private void toggleAfk(IUser user)
{
if (!user.toggleAfk())
{
//user.sendMessage(_("markedAsNotAway"));
if (!user.isHidden())
{
ess.broadcastMessage(user, _("userIsNotAway", user.getDisplayName()));
}
user.updateActivity(false);
}
else
{
//user.sendMessage(_("markedAsAway"));
if (!user.isHidden())
{
ess.broadcastMessage(user, _("userIsAway", user.getDisplayName()));
}
}
}
@Override
public PermissionDefault getPermissionDefault()
{
return PermissionDefault.TRUE;
}
}

View File

@@ -1,20 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import org.bukkit.Location;
import org.bukkit.entity.TNTPrimed;
public class Commandantioch extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
ess.broadcastMessage(user, "...lobbest thou thy Holy Hand Grenade of Antioch towards thy foe,");
ess.broadcastMessage(user, "who being naughty in My sight, shall snuff it.");
final Location loc = Util.getTarget(user);
loc.getWorld().spawn(loc, TNTPrimed.class);
}
}

View File

@@ -1,19 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Trade;
import com.earth2me.essentials.api.IUser;
public class Commandback extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final Trade charge = new Trade(commandName, ess);
charge.isAffordableFor(user);
user.sendMessage(_("backUsageMsg"));
user.getTeleport().back(charge);
throw new NoChargeException();
}
}

View File

@@ -1,17 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IBackup;
import org.bukkit.command.CommandSender;
public class Commandbackup extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
final IBackup backup = ess.getBackup();
backup.run();
sender.sendMessage(_("backupStarted"));
}
}

View File

@@ -1,31 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.command.CommandSender;
public class Commandbalance extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
sender.sendMessage(_("balance", Util.formatCurrency(getPlayer(args, 0, true).getMoney(), ess)));
}
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final double bal = (args.length < 1
|| !Permissions.BALANCE_OTHERS.isAuthorized(user)
? user
: getPlayer(args, 0, true)).getMoney();
user.sendMessage(_("balance", Util.formatCurrency(bal, ess)));
}
}

View File

@@ -1,173 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.textreader.ArrayListInput;
import com.earth2me.essentials.textreader.TextPager;
import java.text.DateFormat;
import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.locks.ReentrantReadWriteLock;
import org.bukkit.command.CommandSender;
public class Commandbalancetop extends EssentialsCommand
{
private static final int CACHETIME = 2 * 60 * 1000;
public static final int MINUSERS = 50;
private static ArrayListInput cache = new ArrayListInput();
private static long cacheage = 0;
private static ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
int page = 0;
boolean force = false;
if (args.length > 0)
{
try
{
page = Integer.parseInt(args[0]);
}
catch (NumberFormatException ex)
{
if (args[0].equalsIgnoreCase("force") && sender.isOp())
{
force = true;
}
}
}
if (!force && lock.readLock().tryLock())
{
try
{
if (cacheage > System.currentTimeMillis() - CACHETIME)
{
outputCache(sender, page);
return;
}
if (ess.getUserMap().getUniqueUsers() > MINUSERS)
{
sender.sendMessage(_("orderBalances", ess.getUserMap().getUniqueUsers()));
}
}
finally
{
lock.readLock().unlock();
}
ess.scheduleAsyncDelayedTask(new Viewer(sender, page, force));
}
else
{
if (ess.getUserMap().getUniqueUsers() > MINUSERS)
{
sender.sendMessage(_("orderBalances", ess.getUserMap().getUniqueUsers()));
}
ess.scheduleAsyncDelayedTask(new Viewer(sender, page, force));
}
}
private static void outputCache(final CommandSender sender, int page)
{
final Calendar cal = Calendar.getInstance();
cal.setTimeInMillis(cacheage);
final DateFormat format = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
sender.sendMessage(_("balanceTop", format.format(cal.getTime())));
new TextPager(cache).showPage(Integer.toString(page), "", "balancetop", sender);
}
private class Calculator implements Runnable
{
private final transient Viewer viewer;
private final boolean force;
public Calculator(final Viewer viewer, final boolean force)
{
this.viewer = viewer;
this.force = force;
}
@Override
public void run()
{
lock.writeLock().lock();
try
{
if (force || cacheage <= System.currentTimeMillis() - CACHETIME)
{
cache.getLines().clear();
final Map<String, Double> balances = new HashMap<String, Double>();
for (String u : ess.getUserMap().getAllUniqueUsers())
{
final IUser user = ess.getUserMap().getUser(u);
if (user != null)
{
balances.put(user.getDisplayName(), user.getMoney());
}
}
final List<Map.Entry<String, Double>> sortedEntries = new ArrayList<Map.Entry<String, Double>>(balances.entrySet());
Collections.sort(sortedEntries, new Comparator<Map.Entry<String, Double>>()
{
@Override
public int compare(final Entry<String, Double> entry1, final Entry<String, Double> entry2)
{
return -entry1.getValue().compareTo(entry2.getValue());
}
});
int pos = 1;
for (Map.Entry<String, Double> entry : sortedEntries)
{
cache.getLines().add(pos + ". " + entry.getKey() + ", " + Util.formatCurrency(entry.getValue(), ess));
pos++;
}
cacheage = System.currentTimeMillis();
}
}
finally
{
lock.writeLock().unlock();
}
ess.scheduleAsyncDelayedTask(viewer);
}
}
private class Viewer implements Runnable
{
private final transient CommandSender sender;
private final transient int page;
private final transient boolean force;
public Viewer(final CommandSender sender, final int page, final boolean force)
{
this.sender = sender;
this.page = page;
this.force = force;
}
@Override
public void run()
{
lock.readLock().lock();
try
{
if (!force && cacheage > System.currentTimeMillis() - CACHETIME)
{
outputCache(sender, page);
return;
}
}
finally
{
lock.readLock().unlock();
}
ess.scheduleAsyncDelayedTask(new Calculator(new Viewer(sender, page, force), force));
}
}
}

View File

@@ -1,66 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.Console;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import com.earth2me.essentials.user.Ban;
import lombok.Cleanup;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandban extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
@Cleanup
final IUser user = getPlayer(args, 0, true);
if (user.isOnline())
{
if (Permissions.BAN_EXEMPT.isAuthorized(user))
{
sender.sendMessage(_("banExempt"));
return;
}
}
else
{
if (Permissions.BAN_OFFLINE.isAuthorized(sender))
{
sender.sendMessage(_("banExempt"));
return;
}
}
user.acquireWriteLock();
String banReason;
user.getData().setBan(new Ban());
if (args.length > 1)
{
banReason = getFinalArg(args, 1);
user.getData().getBan().setReason(banReason);
}
else
{
banReason = _("defaultBanReason");
}
user.setBanned(true);
user.kickPlayer(banReason);
final String senderName = sender instanceof Player ? ((Player)sender).getDisplayName() : Console.NAME;
for (Player onlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(onlinePlayer);
if (Permissions.BAN_NOTIFY.isAuthorized(player))
{
onlinePlayer.sendMessage(_("playerBanned", senderName, user.getName(), banReason));
}
}
}
}

View File

@@ -1,39 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import lombok.Cleanup;
import org.bukkit.command.CommandSender;
public class Commandbanip extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
@Cleanup
final IUser player = ess.getUser(args[0]);
player.acquireReadLock();
if (player == null)
{
ess.getServer().banIP(args[0]);
sender.sendMessage(_("banIpAddress"));
}
else
{
final String ipAddress = player.getData().getIpAddress();
if (ipAddress.length() == 0)
{
throw new Exception(_("playerNotFound"));
}
ess.getServer().banIP(player.getData().getIpAddress());
sender.sendMessage(_("banIpAddress"));
}
}
}

View File

@@ -1,41 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import org.bukkit.Location;
import org.bukkit.TreeType;
public class Commandbigtree extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
TreeType tree;
if (args.length > 0 && args[0].equalsIgnoreCase("redwood"))
{
tree = TreeType.TALL_REDWOOD;
}
else if (args.length > 0 && args[0].equalsIgnoreCase("tree"))
{
tree = TreeType.BIG_TREE;
}
else
{
throw new NotEnoughArgumentsException();
}
final Location loc = Util.getTarget(user);
final Location safeLocation = Util.getSafeDestination(loc);
final boolean success = user.getWorld().generateTree(safeLocation, tree);
if (success)
{
user.sendMessage(_("bigTreeSuccess"));
}
else
{
throw new Exception(_("bigTreeFailure"));
}
}
}

View File

@@ -1,40 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.event.block.BlockBreakEvent;
public class Commandbreak extends EssentialsCommand
{
//TODO: Switch to use util class
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final Block block = user.getTargetBlock(null, 20);
if (block == null)
{
throw new NoChargeException();
}
if (block.getType() == Material.AIR)
{
throw new NoChargeException();
}
if (block.getType() == Material.BEDROCK && !Permissions.BREAK_BEDROCK.isAuthorized(user))
{
throw new Exception("You are not allowed to destroy bedrock."); //TODO: Translation
}
final BlockBreakEvent event = new BlockBreakEvent(block, user.getBase());
server.getPluginManager().callEvent(event);
if (event.isCancelled())
{
throw new NoChargeException();
}
else
{
block.setType(Material.AIR);
}
}
}

View File

@@ -1,19 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
public class Commandbroadcast extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
ess.broadcastMessage(null, _("broadcast", getFinalArg(args, 0)));
}
}

View File

@@ -1,24 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandburn extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 2)
{
throw new NotEnoughArgumentsException();
}
for (Player p : server.matchPlayer(args[0]))
{
p.setFireTicks(Integer.parseInt(args[1]) * 20);
sender.sendMessage(_("burnMsg", p.getDisplayName(), Integer.parseInt(args[1])));
}
}
}

View File

@@ -1,93 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandclearinventory extends EssentialsCommand
{
//TODO: Cleanup
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && Permissions.CLEARINVENTORY_OTHERS.isAuthorized(user))
{
//TODO: Fix fringe user match case.
if (args[0].length() >= 3)
{
List<Player> online = server.matchPlayer(args[0]);
if (!online.isEmpty())
{
for (Player p : online)
{
p.getInventory().clear();
user.sendMessage(_("inventoryClearedOthers", p.getDisplayName()));
}
return;
}
throw new Exception(_("playerNotFound"));
}
else
{
Player p = server.getPlayer(args[0]);
if (p != null)
{
p.getInventory().clear();
user.sendMessage(_("inventoryClearedOthers", p.getDisplayName()));
}
else
{
throw new Exception(_("playerNotFound"));
}
}
}
else
{
user.getInventory().clear();
user.sendMessage(_("inventoryCleared"));
}
}
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
if (args[0].length() >= 3)
{
List<Player> online = server.matchPlayer(args[0]);
if (!online.isEmpty())
{
for (Player p : online)
{
p.getInventory().clear();
sender.sendMessage(_("inventoryClearedOthers", p.getDisplayName()));
}
return;
}
throw new Exception(_("playerNotFound"));
}
else
{
Player u = server.getPlayer(args[0]);
if (u != null)
{
u.getInventory().clear();
sender.sendMessage(_("inventoryClearedOthers", u.getDisplayName()));
}
else
{
throw new Exception(_("playerNotFound"));
}
}
}
}

View File

@@ -1,59 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.Locale;
import lombok.Cleanup;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commanddelhome extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
@Cleanup
IUser user = sender instanceof Player ? ess.getUser((Player)sender) : null;
String name;
String[] expandedArg;
//Allowing both formats /sethome khobbits house | /sethome khobbits:house
final String[] nameParts = args[0].split(":");
if (nameParts[0].length() != args[0].length())
{
expandedArg = nameParts;
}
else
{
expandedArg = args;
}
if (expandedArg.length > 1 && (user == null || Permissions.DELHOME_OTHERS.isAuthorized(user)))
{
user = getPlayer(expandedArg, 0, true);
name = expandedArg[1];
}
else if (user == null)
{
throw new NotEnoughArgumentsException();
}
else
{
name = expandedArg[0];
}
//TODO: Think up a nice error message
/*
* if (name.equalsIgnoreCase("bed")) { throw new Exception("You cannot remove the vanilla home point"); }
*/
user.acquireWriteLock();
user.getData().removeHome(name.toLowerCase(Locale.ENGLISH));
sender.sendMessage(_("deleteHome", name));
}
}

View File

@@ -1,19 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
public class Commanddeljail extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
ess.getJails().removeJail(args[0]);
sender.sendMessage(_("deleteJail", args[0]));
}
}

View File

@@ -1,19 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
public class Commanddelwarp extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
ess.getWarps().removeWarp(args[0]);
sender.sendMessage(_("deleteWarp", args[0]));
}
}

View File

@@ -1,26 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
public class Commanddepth extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final int depth = user.getLocation().getBlockY() - 63;
if (depth > 0)
{
user.sendMessage(_("depthAboveSea", depth));
}
else if (depth < 0)
{
user.sendMessage(_("depthBelowSea", (-depth)));
}
else
{
user.sendMessage(_("depth"));
}
}
}

View File

@@ -1,83 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
import java.util.Locale;
import lombok.Cleanup;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandeco extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 2)
{
throw new NotEnoughArgumentsException();
}
EcoCommands cmd;
double amount;
try
{
cmd = EcoCommands.valueOf(args[0].toUpperCase(Locale.ENGLISH));
amount = Double.parseDouble(args[2].replaceAll("[^0-9\\.]", ""));
}
catch (Exception ex)
{
throw new NotEnoughArgumentsException(ex);
}
if (args[1].contentEquals("*"))
{
for (Player onlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(onlinePlayer);
switch (cmd)
{
case GIVE:
player.giveMoney(amount);
break;
case TAKE:
player.takeMoney(amount);
break;
case RESET:
@Cleanup
ISettings settings = ess.getSettings();
settings.acquireReadLock();
player.setMoney(amount == 0 ? settings.getData().getEconomy().getStartingBalance() : amount);
break;
}
}
}
else
{
final IUser player = getPlayer(args, 1, true);
switch (cmd)
{
case GIVE:
player.giveMoney(amount, sender);
break;
case TAKE:
player.takeMoney(amount, sender);
break;
case RESET:
@Cleanup ISettings settings = ess.getSettings();
settings.acquireReadLock();
player.setMoney(amount == 0 ? settings.getData().getEconomy().getStartingBalance() : amount);
break;
}
}
}
private enum EcoCommands
{
GIVE, TAKE, RESET
}
}

View File

@@ -1,94 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.Enchantments;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.EnchantPermissions;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.TreeSet;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
public class Commandenchant extends EssentialsCommand
{
//TODO: Implement charge costs: final Trade charge = new Trade("enchant-" + enchantmentName, ess);
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final ItemStack stack = user.getItemInHand();
if (stack == null)
{
throw new Exception(_("nothingInHand"));
}
if (args.length == 0)
{
final Set<String> enchantmentslist = new TreeSet<String>();
for (Map.Entry<String, Enchantment> entry : Enchantments.entrySet())
{
final String enchantmentName = entry.getValue().getName().toLowerCase(Locale.ENGLISH);
if (enchantmentslist.contains(enchantmentName) || EnchantPermissions.getPermission(enchantmentName).isAuthorized(user))
{
enchantmentslist.add(entry.getKey());
//enchantmentslist.add(enchantmentName);
}
}
throw new NotEnoughArgumentsException(_("enchantments", Util.joinList(enchantmentslist.toArray())));
}
int level = -1;
if (args.length > 1)
{
try
{
level = Integer.parseInt(args[1]);
}
catch (NumberFormatException ex)
{
level = -1;
}
}
final Enchantment enchantment = getEnchantment(args[0], user);
if (level < 0 || level > enchantment.getMaxLevel())
{
level = enchantment.getMaxLevel();
}
if (level == 0)
{
stack.removeEnchantment(enchantment);
}
else
{
stack.addEnchantment(enchantment, level);
}
user.getInventory().setItemInHand(stack);
user.updateInventory();
final String enchantmentName = enchantment.getName().toLowerCase(Locale.ENGLISH);
if (level == 0)
{
user.sendMessage(_("enchantmentRemoved", enchantmentName.replace('_', ' ')));
}
else
{
user.sendMessage(_("enchantmentApplied", enchantmentName.replace('_', ' ')));
}
}
public static Enchantment getEnchantment(final String name, final IUser user) throws Exception
{
final Enchantment enchantment = Enchantments.getByName(name);
if (enchantment == null)
{
throw new Exception(_("enchantmentNotFound"));
}
final String enchantmentName = enchantment.getName().toLowerCase(Locale.ENGLISH);
if (user != null && !EnchantPermissions.getPermission(enchantmentName).isAuthorized(user))
{
throw new Exception(_("enchantmentPerm", enchantmentName));
}
return enchantment;
}
}

View File

@@ -1,159 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import java.util.HashMap;
import java.util.Map;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandessentials extends EssentialsCommand
{
private transient int taskid;
private final transient Map<Player, Block> noteBlocks = new HashMap<Player, Block>();
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length == 0)
{
run_disabled(sender, args);
}
else if (args[0].equalsIgnoreCase("debug"))
{
run_debug(sender, args);
}
else if (args[0].equalsIgnoreCase("nya"))
{
run_nya(sender, args);
}
else
{
run_reload(sender, args);
}
}
private void run_disabled(final CommandSender sender, final String[] args) throws Exception
{
sender.sendMessage("Essentials " + ess.getDescription().getVersion());
sender.sendMessage("/<command> <reload/debug>");
sender.sendMessage(_("blockList"));
final StringBuilder disabledCommands = new StringBuilder();
for (Map.Entry<String, String> entry : ess.getCommandHandler().disabledCommands().entrySet())
{
if (disabledCommands.length() > 0)
{
disabledCommands.append(", ");
}
disabledCommands.append(entry.getKey()).append(" => ").append(entry.getValue());
}
sender.sendMessage(disabledCommands.toString());
}
private void run_debug(final CommandSender sender, final String[] args) throws Exception
{
ess.getSettings().setDebug(!ess.getSettings().isDebug());
sender.sendMessage("Essentials " + ess.getDescription().getVersion() + " debug mode " + (ess.getSettings().isDebug() ? "enabled" : "disabled"));
}
private void run_reload(final CommandSender sender, final String[] args) throws Exception
{
ess.reload();
sender.sendMessage(_("essentialsReload", ess.getDescription().getVersion()));
}
private void run_nya(final CommandSender sender, final String[] args) throws Exception
{
final Map<String, Byte> noteMap = new HashMap<String, Byte>();
noteMap.put("1F#", (byte)0x0);
noteMap.put("1G", (byte)0x1);
noteMap.put("1G#", (byte)0x2);
noteMap.put("1A", (byte)0x3);
noteMap.put("1A#", (byte)0x4);
noteMap.put("1B", (byte)0x5);
noteMap.put("1C", (byte)0x6);
noteMap.put("1C#", (byte)0x7);
noteMap.put("1D", (byte)0x8);
noteMap.put("1D#", (byte)0x9);
noteMap.put("1E", (byte)0xA);
noteMap.put("1F", (byte)0xB);
noteMap.put("2F#", (byte)(0x0 + 0xC));
noteMap.put("2G", (byte)(0x1 + 0xC));
noteMap.put("2G#", (byte)(0x2 + 0xC));
noteMap.put("2A", (byte)(0x3 + 0xC));
noteMap.put("2A#", (byte)(0x4 + 0xC));
noteMap.put("2B", (byte)(0x5 + 0xC));
noteMap.put("2C", (byte)(0x6 + 0xC));
noteMap.put("2C#", (byte)(0x7 + 0xC));
noteMap.put("2D", (byte)(0x8 + 0xC));
noteMap.put("2D#", (byte)(0x9 + 0xC));
noteMap.put("2E", (byte)(0xA + 0xC));
noteMap.put("2F", (byte)(0xB + 0xC));
if (!noteBlocks.isEmpty())
{
return;
}
final String tuneStr = "1D#,1E,2F#,,2A#,1E,1D#,1E,2F#,2B,2D#,2E,2D#,2A#,2B,,2F#,,1D#,1E,2F#,2B,2C#,2A#,2B,2C#,2E,2D#,2E,2C#,,2F#,,2G#,,1D,1D#,,1C#,1D,1C#,1B,,1B,,1C#,,1D,,1D,1C#,1B,1C#,1D#,2F#,2G#,1D#,2F#,1C#,1D#,1B,1C#,1B,1D#,,2F#,,2G#,1D#,2F#,1C#,1D#,1B,1D,1D#,1D,1C#,1B,1C#,1D,,1B,1C#,1D#,2F#,1C#,1D,1C#,1B,1C#,,1B,,1C#,,2F#,,2G#,,1D,1D#,,1C#,1D,1C#,1B,,1B,,1C#,,1D,,1D,1C#,1B,1C#,1D#,2F#,2G#,1D#,2F#,1C#,1D#,1B,1C#,1B,1D#,,2F#,,2G#,1D#,2F#,1C#,1D#,1B,1D,1D#,1D,1C#,1B,1C#,1D,,1B,1C#,1D#,2F#,1C#,1D,1C#,1B,1C#,,1B,,1B,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1B,,";
final String[] tune = tuneStr.split(",");
for (Player player : server.getOnlinePlayers())
{
final Location loc = player.getLocation();
loc.add(0, 3, 0);
while (loc.getBlockY() < player.getLocation().getBlockY() + 10 && loc.getBlock().getTypeId() != 0)
{
loc.add(0, 1, 0);
}
if (loc.getBlock().getTypeId() == 0)
{
noteBlocks.put(player, loc.getBlock());
loc.getBlock().setType(Material.NOTE_BLOCK);
}
}
taskid = ess.scheduleSyncRepeatingTask(new Runnable()
{
int i = 0;
@Override
public void run()
{
final String note = tune[i];
i++;
if (i >= tune.length)
{
Commandessentials.this.stopTune();
}
if (note.isEmpty())
{
return;
}
Map<Player, Block> noteBlocks = Commandessentials.this.noteBlocks;
for (Player onlinePlayer : server.getOnlinePlayers())
{
final Block block = noteBlocks.get(onlinePlayer);
if (block == null || block.getType() != Material.NOTE_BLOCK)
{
continue;
}
onlinePlayer.playNote(block.getLocation(), (byte)0, noteMap.get(note));
}
}
}, 20, 2);
return;
}
private void stopTune()
{
ess.getServer().getScheduler().cancelTask(taskid);
for (Block block : noteBlocks.values())
{
if (block.getType() == Material.NOTE_BLOCK)
{
block.setType(Material.AIR);
}
}
noteBlocks.clear();
}
}

View File

@@ -1,43 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandext extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
extinguishPlayers(sender, args[0]);
}
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
user.setFireTicks(0);
user.sendMessage(_("extinguish"));
return;
}
extinguishPlayers(user, args[0]);
}
private void extinguishPlayers(final CommandSender sender, final String name) throws Exception
{
for (Player matchPlayer : server.matchPlayer(name))
{
matchPlayer.setFireTicks(0);
sender.sendMessage(_("extinguishOthers", matchPlayer.getDisplayName()));
}
}
}

View File

@@ -1,47 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandfeed extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && Permissions.FEED_OTHERS.isAuthorized(user))
{
feedOtherPlayers(user, args[0]);
}
else
{
user.setFoodLevel(20);
user.setSaturation(10);
user.sendMessage(_("feed"));
}
}
private void feedOtherPlayers(final CommandSender sender, final String name)
{
final List<Player> players = server.matchPlayer(name);
if (players.isEmpty())
{
sender.sendMessage(_("playerNotFound"));
return;
}
for (Player player : players)
{
if (ess.getUser(player).isHidden())
{
continue;
}
player.setFoodLevel(20);
player.setSaturation(10);
sender.sendMessage(_("feedOther", player.getDisplayName()));
}
}
}

View File

@@ -1,23 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.api.IUser;
import org.bukkit.entity.Fireball;
import org.bukkit.entity.SmallFireball;
import org.bukkit.util.Vector;
public class Commandfireball extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
boolean small = false;
if (args.length > 0 && args[0].equalsIgnoreCase("small"))
{
small = true;
}
final Vector direction = user.getEyeLocation().getDirection().multiply(2);
final Fireball fireball = user.getWorld().spawn(user.getEyeLocation().add(direction.getX(), direction.getY(), direction.getZ()), small ? SmallFireball.class : Fireball.class);
fireball.setShooter(user.getBase());
}
}

View File

@@ -1,52 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.Locale;
import org.bukkit.GameMode;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandgamemode extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
gamemodeOtherPlayers(sender, args[0]);
}
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && !args[0].trim().isEmpty() && Permissions.GAMEMODE_OTHERS.isAuthorized(user))
{
gamemodeOtherPlayers(user, args[0]);
return;
}
user.setGameMode(user.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL);
user.sendMessage(_("gameMode", _(user.getGameMode().toString().toLowerCase(Locale.ENGLISH)), user.getDisplayName()));
}
private void gamemodeOtherPlayers(final CommandSender sender, final String name)
{
for (Player matchPlayer : server.matchPlayer(name))
{
final IUser player = ess.getUser(matchPlayer);
if (player.isHidden())
{
continue;
}
player.setGameMode(player.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL);
sender.sendMessage(_("gameMode", _(player.getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getDisplayName()));
}
}
}

View File

@@ -1,25 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.World;
import org.bukkit.command.CommandSender;
public class Commandgc extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
sender.sendMessage(_("gcmax", (Runtime.getRuntime().maxMemory() / 1024 / 1024)));
sender.sendMessage(_("gctotal", (Runtime.getRuntime().totalMemory() / 1024 / 1024)));
sender.sendMessage(_("gcfree", (Runtime.getRuntime().freeMemory() / 1024 / 1024)));
for (World w : server.getWorlds())
{
sender.sendMessage(
(w.getEnvironment() == World.Environment.NETHER ? "Nether" : "World") + " \"" + w.getName() + "\": "
+ w.getLoadedChunks().length + _("gcchunks")
+ w.getEntities().size() + _("gcentities"));
}
}
}

View File

@@ -1,50 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.Location;
import org.bukkit.command.CommandSender;
public class Commandgetpos extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && Permissions.GETPOS_OTHERS.isAuthorized(user))
{
final IUser otherUser = getPlayer(args, 0);
outputPosition(user, otherUser.getLocation(), user.getLocation());
}
else
{
outputPosition(user, user.getLocation(), null);
}
}
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
final IUser user = getPlayer(args, 0);
outputPosition(sender, user.getLocation(), null);
}
//TODO: Translate
private void outputPosition(final CommandSender sender, final Location coords, final Location distance)
{
sender.sendMessage("§7World: " + coords.getWorld().getName());
sender.sendMessage("§7X: " + coords.getBlockX() + " (+East <-> -West)");
sender.sendMessage("§7Y: " + coords.getBlockY() + " (+Up <-> -Down)");
sender.sendMessage("§7Z: " + coords.getBlockZ() + " (+South <-> -North)");
sender.sendMessage("§7Yaw: " + (coords.getYaw() + 180 + 360) % 360 + " (Rotation)");
sender.sendMessage("§7Pitch: " + coords.getPitch() + " (Head angle)");
if (distance != null && coords.getWorld().equals(distance.getWorld()))
{
sender.sendMessage("§7Distance: " + coords.distance(distance));
}
}
}

View File

@@ -1,74 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.GivePermissions;
import java.util.Locale;
import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.command.CommandSender;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
public class Commandgive extends EssentialsCommand
{
//TODO: move these messages to message file
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 2)
{
throw new NotEnoughArgumentsException();
}
final IUser giveTo = getPlayer(args, 0);
final ItemStack stack = ess.getItemDb().get(args[1], giveTo);
final String itemname = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace("_", "");
if (!GivePermissions.getPermission(stack.getType()).isAuthorized(sender))
{
throw new Exception(ChatColor.RED + "You are not allowed to spawn the item " + itemname);
}
if (args.length > 2 && Integer.parseInt(args[2]) > 0)
{
stack.setAmount(Integer.parseInt(args[2]));
}
if (args.length > 3)
{
for (int i = 3; i < args.length; i++)
{
final String[] split = args[i].split("[:+',;.]", 2);
if (split.length < 1)
{
continue;
}
final Enchantment enchantment = Commandenchant.getEnchantment(split[0], sender instanceof Player ? ess.getUser((Player)sender) : null);
int level;
if (split.length > 1)
{
level = Integer.parseInt(split[1]);
}
else
{
level = enchantment.getMaxLevel();
}
stack.addEnchantment(enchantment, level);
}
}
if (stack.getType() == Material.AIR)
{
throw new Exception(ChatColor.RED + "You can't give air.");
}
giveTo.giveItems(stack, false);
final String itemName = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace('_', ' ');
sender.sendMessage(ChatColor.BLUE + "Giving " + stack.getAmount() + " of " + itemName + " to " + giveTo.getDisplayName() + ".");
}
}

View File

@@ -1,49 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandgod extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
godOtherPlayers(sender, args[0]);
}
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && !args[0].trim().isEmpty() && Permissions.GOD_OTHERS.isAuthorized(user))
{
godOtherPlayers(user, args[0]);
return;
}
user.sendMessage(_("godMode", (user.toggleGodModeEnabled() ? _("enabled") : _("disabled"))));
}
private void godOtherPlayers(final CommandSender sender, final String name)
{
for (Player matchPlayer : server.matchPlayer(name))
{
final IUser player = ess.getUser(matchPlayer);
if (player.isHidden())
{
continue;
}
final boolean enabled = player.toggleGodModeEnabled();
player.sendMessage(_("godMode", (enabled ? _("enabled") : _("disabled"))));
sender.sendMessage(_("godMode", _(enabled ? "godEnabledFor" : "godDisabledFor", matchPlayer.getDisplayName())));
}
}
}

View File

@@ -1,64 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import com.earth2me.essentials.user.UserData.TimestampType;
import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandheal extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length > 0 && Permissions.HEAL_OTHERS.isAuthorized(user))
{
user.checkCooldown(TimestampType.LASTHEAL, ess.getGroups().getHealCooldown(user), true, Permissions.HEAL_COOLDOWN_BYPASS);
healOtherPlayers(user, args[0]);
return;
}
user.checkCooldown(TimestampType.LASTHEAL, ess.getGroups().getHealCooldown(user), true, Permissions.HEAL_COOLDOWN_BYPASS);
user.setHealth(20);
user.setFoodLevel(20);
user.sendMessage(_("heal"));
}
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
healOtherPlayers(sender, args[0]);
}
private void healOtherPlayers(final CommandSender sender, final String name)
{
final List<Player> players = server.matchPlayer(name);
if (players.isEmpty())
{
sender.sendMessage(_("playerNotFound"));
return;
}
for (Player p : players)
{
if (ess.getUser(p).isHidden())
{
continue;
}
p.setHealth(20);
p.setFoodLevel(20);
p.sendMessage(_("heal"));
sender.sendMessage(_("healOther", p.getDisplayName()));
}
}
}

View File

@@ -1,46 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.textreader.*;
import org.bukkit.command.CommandSender;
public class Commandhelp extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
IText output;
String pageStr = args.length > 0 ? args[0] : null;
String chapterPageStr = args.length > 1 ? args[1] : null;
final IText input = new TextInput(user, "help", false, ess);
if (input.getLines().isEmpty())
{
if (Util.isInt(pageStr) || pageStr == null)
{
output = new HelpInput(user, "", ess);
}
else
{
output = new HelpInput(user, pageStr, ess);
pageStr = chapterPageStr;
}
chapterPageStr = null;
}
else
{
output = new KeywordReplacer(input, user, ess);
}
final TextPager pager = new TextPager(output);
pager.showPage(pageStr, chapterPageStr, commandLabel, user);
}
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
sender.sendMessage(_("helpConsole"));
}
}

View File

@@ -1,33 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.logging.Level;
import org.bukkit.entity.Player;
public class Commandhelpop extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
final String message = _("helpOp", user.getDisplayName(), Util.stripColor(getFinalArg(args, 0)));
logger.log(Level.INFO, message);
for (Player onlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(onlinePlayer);
if (!Permissions.HELPOP_RECEIVE.isAuthorized(player))
{
continue;
}
player.sendMessage(message);
}
}
}

View File

@@ -1,91 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Trade;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.List;
import java.util.Locale;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
public class Commandhome extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
final Trade charge = new Trade(commandName, ess);
charge.isAffordableFor(user);
IUser player = user;
String homeName = "";
String[] nameParts;
if (args.length > 0)
{
nameParts = args[0].split(":");
if (nameParts[0].length() == args[0].length() || !Permissions.HOME_OTHERS.isAuthorized(user))
{
homeName = nameParts[0];
}
else
{
player = getPlayer(nameParts, 0, true);
if (nameParts.length > 1)
{
homeName = nameParts[1];
}
}
}
try
{
if ("bed".equalsIgnoreCase(homeName))
{
final Location bed = player.getBedSpawnLocation();
if (bed != null && bed.getBlock().getType() == Material.BED_BLOCK)
{
user.getTeleport().teleport(bed, charge, TeleportCause.COMMAND);
throw new NoChargeException();
}
}
user.getTeleport().home(player, homeName.toLowerCase(Locale.ENGLISH), charge);
}
catch (NotEnoughArgumentsException e)
{
Location bed = player.getBedSpawnLocation();
if (bed != null && bed.getBlock().getType() != Material.BED_BLOCK)
{
bed = null;
}
final List<String> homes = player.getHomes();
if (homes.isEmpty() && player.equals(user))
{
if (bed != null)
{
user.getTeleport().teleport(bed, charge, TeleportCause.COMMAND);
throw new NoChargeException();
}
user.getTeleport().respawn(charge, TeleportCause.COMMAND);
}
else if (homes.isEmpty())
{
throw new Exception(player == user ? _("noHomeSet") : _("noHomeSetPlayer"));
}
else if (homes.size() == 1 && player.equals(user))
{
user.getTeleport().home(player, homes.get(0), charge);
}
else
{
if (bed != null)
{
homes.add("bed");
}
user.sendMessage(_("homes", Util.joinList(homes)));
}
}
throw new NoChargeException();
}
}

View File

@@ -1,42 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
public class Commandignore extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
IUser player;
try
{
player = getPlayer(args, 0);
}
catch (NoSuchFieldException ex)
{
player = ess.getUser(args[0]);
}
if (player == null)
{
throw new Exception(_("playerNotFound"));
}
final String name = player.getName();
user.acquireWriteLock();
if (user.isIgnoringPlayer(name))
{
user.setIgnoredPlayer(name, false);
user.sendMessage(_("unignorePlayer", player.getName()));
}
else
{
user.setIgnoredPlayer(name, true);
user.sendMessage(_("ignorePlayer", player.getName()));
}
}
}

View File

@@ -1,20 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.textreader.IText;
import com.earth2me.essentials.textreader.KeywordReplacer;
import com.earth2me.essentials.textreader.TextInput;
import com.earth2me.essentials.textreader.TextPager;
import org.bukkit.command.CommandSender;
public class Commandinfo extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
final IText input = new TextInput(sender, "info", true, ess);
final IText output = new KeywordReplacer(input, sender, ess);
final TextPager pager = new TextPager(output);
pager.showPage(args.length > 0 ? args[0] : null, args.length > 1 ? args[1] : null, commandLabel, sender);
}
}

View File

@@ -1,52 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.user.Inventory;
import java.util.Arrays;
import org.bukkit.inventory.ItemStack;
public class Commandinvsee extends EssentialsCommand
{
@Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1 && user.getData().getInventory() == null)
{
throw new NotEnoughArgumentsException();
}
IUser invUser = user;
if (args.length == 1)
{
invUser = getPlayer(args, 0);
}
user.acquireWriteLock();
if (invUser == user && user.getData().getInventory() != null)
{
invUser.getInventory().setContents(user.getData().getInventory().getBukkitInventory());
user.getData().setInventory(null);
user.sendMessage(_("invRestored"));
throw new NoChargeException();
}
if (user.getData().getInventory() == null)
{
user.getData().setInventory(new Inventory(user.getInventory().getContents()));
}
ItemStack[] invUserStack = invUser.getInventory().getContents();
final int userStackLength = user.getInventory().getContents().length;
if (invUserStack.length < userStackLength)
{
invUserStack = Arrays.copyOf(invUserStack, userStackLength);
}
if (invUserStack.length > userStackLength)
{
throw new Exception(_("invBigger"));
}
user.getInventory().setContents(invUserStack);
user.sendMessage(_("invSee", invUser.getDisplayName()));
user.sendMessage(_("invSeeHelp"));
throw new NoChargeException();
}
}

View File

@@ -1,67 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.ItemPermissions;
import java.util.Locale;
import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
public class Commanditem extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
final ItemStack stack = ess.getItemDb().get(args[0], user);
final String itemname = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace("_", "");
if (!ItemPermissions.getPermission(stack.getType()).isAuthorized(user))
{
throw new Exception(_("cantSpawnItem", itemname));
}
if (args.length > 1 && Integer.parseInt(args[1]) > 0)
{
stack.setAmount(Integer.parseInt(args[1]));
}
if (args.length > 2)
{
for (int i = 2; i < args.length; i++)
{
final String[] split = args[i].split("[:+',;.]", 2);
if (split.length < 1)
{
continue;
}
final Enchantment enchantment = Commandenchant.getEnchantment(split[0], user);
int level;
if (split.length > 1)
{
level = Integer.parseInt(split[1]);
}
else
{
level = enchantment.getMaxLevel();
}
stack.addEnchantment(enchantment, level);
}
}
if (stack.getType() == Material.AIR)
{
throw new Exception(_("cantSpawnItem", "Air"));
}
user.giveItems(stack, false);
final String displayName = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace('_', ' ');
user.sendMessage(_("itemSpawn", stack.getAmount(), displayName));
}
}

View File

@@ -1,31 +0,0 @@
package com.earth2me.essentials.commands;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
public class Commanditemdb extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
ItemStack itemStack = null;
if (args.length < 1)
{
if (sender instanceof Player)
{
itemStack = ((Player)sender).getItemInHand();
}
if (itemStack == null)
{
throw new NotEnoughArgumentsException();
}
}
else
{
itemStack = ess.getItemDb().get(args[0]);
}
sender.sendMessage(itemStack.getType().toString() + "- " + itemStack.getTypeId() + ":" + Integer.toString(itemStack.getData().getData()));
}
}

View File

@@ -1,14 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.Util;
import org.bukkit.command.CommandSender;
public class Commandjails extends EssentialsCommand
{
@Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
sender.sendMessage("§7" + Util.joinList(" ", ess.getJails().getList()));
}
}

View File

@@ -1,35 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Trade;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import org.bukkit.Location;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
public class Commandjump extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
Location loc;
final Location cloc = user.getLocation();
try
{
loc = Util.getTarget(user);
loc.setYaw(cloc.getYaw());
loc.setPitch(cloc.getPitch());
loc.setY(loc.getY() + 1);
}
catch (NullPointerException ex)
{
throw new Exception(_("jumpError"), ex);
}
final Trade charge = new Trade(commandName, ess);
charge.isAffordableFor(user);
user.getTeleport().teleport(loc, charge, TeleportCause.COMMAND);
}
}

View File

@@ -1,39 +0,0 @@
package com.earth2me.essentials.commands;
import com.earth2me.essentials.Console;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandkick extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
final IUser user = getPlayer(args, 0);
if (Permissions.KICK_EXEMPT.isAuthorized(user))
{
throw new Exception(_("kickExempt"));
}
final String kickReason = args.length > 1 ? getFinalArg(args, 1) : _("kickDefault");
user.kickPlayer(kickReason);
final String senderName = sender instanceof Player ? ((Player)sender).getDisplayName() : Console.NAME;
for (Player onlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(onlinePlayer);
if (Permissions.KICK_NOTIFY.isAuthorized(player))
{
onlinePlayer.sendMessage(_("playerKicked", senderName, user.getName(), kickReason));
}
}
}
}

View File

@@ -1,25 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandkickall extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
for (Player onlinePlayer : server.getOnlinePlayers())
{
if (sender instanceof Player && onlinePlayer.getName().equalsIgnoreCase(((Player)sender).getName()))
{
continue;
}
else
{
onlinePlayer.kickPlayer(args.length > 0 ? getFinalArg(args, 0) : _("kickDefault"));
}
}
}
}

View File

@@ -1,33 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.entity.EntityDamageEvent;
public class Commandkill extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
throw new NotEnoughArgumentsException();
}
for (Player matchPlayer : server.matchPlayer(args[0]))
{
final EntityDamageEvent ede = new EntityDamageEvent(matchPlayer, sender instanceof Player && ((Player)sender).getName().equals(matchPlayer.getName()) ? EntityDamageEvent.DamageCause.SUICIDE : EntityDamageEvent.DamageCause.CUSTOM, 1000);
server.getPluginManager().callEvent(ede);
if (ede.isCancelled() && !sender.hasPermission("essentials.kill.force"))
{
continue;
}
matchPlayer.damage(1000);
matchPlayer.setHealth(0);
sender.sendMessage(_("kill", matchPlayer.getDisplayName()));
}
}
}

View File

@@ -1,144 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Mob;
import java.util.Collections;
import java.util.Locale;
import org.bukkit.Chunk;
import org.bukkit.World;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.*;
import org.bukkit.event.entity.EntityDeathEvent;
public class Commandkillall extends EssentialsCommand
{
//TODO: Tidy - missed this during command cleanup
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
String type = "all";
int radius = -1;
World world;
if (sender instanceof Player)
{
world = ((Player)sender).getWorld();
if (args.length == 1)
{
try
{
radius = Integer.parseInt(args[0]);
}
catch (NumberFormatException e1)
{
type = args[0];
}
}
else if (args.length > 1)
{
type = args[0];
try
{
radius = Integer.parseInt(args[1]);
}
catch (NumberFormatException e)
{
throw new Exception(_("numberRequired"));
}
}
}
else
{
if (args.length == 0)
{
throw new NotEnoughArgumentsException();
}
else if (args.length == 1)
{
world = ess.getWorld(args[0]);
}
else
{
type = args[0];
world = ess.getWorld(args[1]);
}
}
if (radius >= 0)
{
radius *= radius;
}
String killType = type.toLowerCase(Locale.ENGLISH);
boolean animals = killType.startsWith("animal");
boolean monster = killType.startsWith("monster") || killType.startsWith("mob");
boolean all = killType.equals("all");
Class<? extends Entity> entityClass = null;
if (!animals && !monster && !all)
{
if (Mob.fromName(killType) == null)
{
throw new Exception(_("invalidMob"));
}
entityClass = Mob.fromName(killType).getType().getEntityClass();
}
int numKills = 0;
for (Chunk chunk : world.getLoadedChunks())
{
for (Entity entity : chunk.getEntities())
{
if (sender instanceof Player)
{
if (radius >= 0 && ((Player)sender).getLocation().distanceSquared(entity.getLocation()) > radius)
{
continue;
}
}
if (entity instanceof LivingEntity == false || entity instanceof HumanEntity)
{
continue;
}
if (entity instanceof Wolf)
{
if (((Wolf)entity).isTamed())
{
continue;
}
}
if (animals)
{
if (entity instanceof Animals || entity instanceof NPC || entity instanceof Snowman || entity instanceof WaterMob)
{
EntityDeathEvent event = new EntityDeathEvent(entity, Collections.EMPTY_LIST);
ess.getServer().getPluginManager().callEvent(event);
entity.remove();
numKills++;
}
}
else if (monster)
{
if (entity instanceof Monster || entity instanceof ComplexLivingEntity || entity instanceof Flying || entity instanceof Slime)
{
EntityDeathEvent event = new EntityDeathEvent(entity, Collections.EMPTY_LIST);
ess.getServer().getPluginManager().callEvent(event);
entity.remove();
numKills++;
}
}
else if (all)
{
EntityDeathEvent event = new EntityDeathEvent(entity, Collections.EMPTY_LIST);
ess.getServer().getPluginManager().callEvent(event);
entity.remove();
numKills++;
}
else if (entityClass != null && entityClass.isAssignableFrom(entity.getClass()))
{
EntityDeathEvent event = new EntityDeathEvent(entity, Collections.EMPTY_LIST);
ess.getServer().getPluginManager().callEvent(event);
entity.remove();
numKills++;
}
}
}
sender.sendMessage(_("kill", numKills));
}
}

View File

@@ -1,60 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.Trade;
import com.earth2me.essentials.Util;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.KitPermissions;
import com.earth2me.essentials.settings.Kit;
import java.util.Collection;
import java.util.Locale;
public class Commandkit extends EssentialsCommand
{
@Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{
if (args.length < 1)
{
Collection<String> kitList = ess.getKits().getList();
if (kitList.isEmpty())
{
user.sendMessage(_("noKits"));
}
else
{
for (String kitName : kitList)
{
if (!KitPermissions.getPermission(kitName).isAuthorized(user))
{
kitList.remove(kitName);
}
}
user.sendMessage(_("kits", Util.joinList(kitList)));
}
throw new NoChargeException();
}
else
{
final String kitName = args[0].toLowerCase(Locale.ENGLISH);
final Kit kit = ess.getKits().getKit(kitName);
if (!KitPermissions.getPermission(kitName).isAuthorized(user))
{
throw new Exception(_("noKitPermission", "essentials.kit." + kitName));
}
//TODO: Check kit delay
final Trade charge = new Trade("kit-" + kitName, ess);
charge.isAffordableFor(user);
ess.getKits().sendKit(user, kit);
charge.charge(user);
user.sendMessage(_("kitGive", kitName));
}
}
}

View File

@@ -1,71 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
import lombok.Cleanup;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.LightningStrike;
import org.bukkit.entity.Player;
public class Commandlightning extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
IUser user = null;
if (sender instanceof Player)
{
user = ess.getUser(((Player)sender));
}
if (args.length < 1 & user != null)
{
user.getWorld().strikeLightning(user.getTargetBlock(null, 600).getLocation());
return;
}
if (server.matchPlayer(args[0]).isEmpty())
{
throw new Exception(_("playerNotFound"));
}
int power = 1;
if (args.length > 1)
{
try
{
power = Integer.parseInt(args[1]);
}
catch (NumberFormatException ex)
{
}
}
for (Player matchPlayer : server.matchPlayer(args[0]))
{
sender.sendMessage(_("lightningUse", matchPlayer.getDisplayName()));
if (power <= 0)
{
matchPlayer.getWorld().strikeLightningEffect(matchPlayer.getLocation());
}
else
{
LightningStrike strike = matchPlayer.getWorld().strikeLightning(matchPlayer.getLocation());
matchPlayer.damage(power - 1, strike);
}
if (!ess.getUser(matchPlayer).isGodModeEnabled())
{
matchPlayer.setHealth(matchPlayer.getHealth() < 5 ? 0 : matchPlayer.getHealth() - 5);
}
@Cleanup
final ISettings settings = ess.getSettings();
settings.acquireReadLock();
if (settings.getData().getCommands().getLightning().isWarnPlayer())
{
matchPlayer.sendMessage(_("lightningSmited"));
}
}
}
}

View File

@@ -1,163 +0,0 @@
package com.earth2me.essentials.commands;
import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.api.ISettings;
import com.earth2me.essentials.api.IUser;
import com.earth2me.essentials.perm.Permissions;
import java.util.*;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandlist extends EssentialsCommand
{
@Override
public void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{
boolean showhidden = false;
if (Permissions.LIST_HIDDEN.isAuthorized(sender))
{
showhidden = true;
}
int playerHidden = 0;
for (Player onlinePlayer : server.getOnlinePlayers())
{
if (ess.getUser(onlinePlayer).isHidden())
{
playerHidden++;
}
}
String online;
if (showhidden && playerHidden > 0)
{
online = _("listAmountHidden", server.getOnlinePlayers().length - playerHidden, playerHidden, server.getMaxPlayers());
}
else
{
online = _("listAmount", server.getOnlinePlayers().length - playerHidden, server.getMaxPlayers());
}
sender.sendMessage(online);
boolean sortListByGroups = false;
ISettings settings = ess.getSettings();
settings.acquireReadLock();
try
{
sortListByGroups = settings.getData().getCommands().getList().isSortByGroups();
}
finally
{
settings.unlock();
}
if (sortListByGroups)
{
Map<String, List<IUser>> sort = new HashMap<String, List<IUser>>();
for (Player OnlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(OnlinePlayer);
if (player.isHidden() && !showhidden)
{
continue;
}
final String group = ess.getGroups().getMainGroup(player);
List<IUser> list = sort.get(group);
if (list == null)
{
list = new ArrayList<IUser>();
sort.put(group, list);
}
list.add(player);
}
final String[] groups = sort.keySet().toArray(new String[0]);
Arrays.sort(groups, String.CASE_INSENSITIVE_ORDER);
for (String group : groups)
{
final StringBuilder groupString = new StringBuilder();
groupString.append(group).append(": ");
final List<IUser> users = sort.get(group);
Collections.sort(users);
boolean first = true;
for (IUser user : users)
{
if (!first)
{
groupString.append(", ");
}
else
{
first = false;
}
user.acquireReadLock();
try
{
if (user.getData().isAfk())
{
groupString.append(_("listAfkTag"));
}
}
finally
{
user.unlock();
}
if (user.isHidden())
{
groupString.append(_("listHiddenTag"));
}
groupString.append(user.getDisplayName());
groupString.append("§f");
}
sender.sendMessage(groupString.toString());
}
}
else
{
final List<IUser> users = new ArrayList<IUser>();
for (Player OnlinePlayer : server.getOnlinePlayers())
{
final IUser player = ess.getUser(OnlinePlayer);
if (player.isHidden() && !showhidden)
{
continue;
}
users.add(player);
}
Collections.sort(users);
final StringBuilder onlineUsers = new StringBuilder();
onlineUsers.append(_("connectedPlayers"));
boolean first = true;
for (IUser user : users)
{
if (!first)
{
onlineUsers.append(", ");
}
else
{
first = false;
}
user.acquireReadLock();
try
{
if (user.getData().isAfk())
{
onlineUsers.append(_("listAfkTag"));
}
}
finally
{
user.unlock();
}
if (user.isHidden())
{
onlineUsers.append(_("listHiddenTag"));
}
onlineUsers.append(user.getDisplayName());
onlineUsers.append("§f");
}
sender.sendMessage(onlineUsers.toString());
}
}
}

Some files were not shown because too many files have changed in this diff Show More