Commit Graph

733 Commits

Author SHA1 Message Date
RoboMWM b3a54e16dc Only call ClaimExpirationEvent if a player's claims are actually going to be expired
Fixes #380
2018-09-26 19:55:47 -07:00
RoboMWM bce2eaf6c4 remove DeniedMessageEvent
Was already not being called a while ago
2018-09-26 11:35:27 -07:00
RoboMWM 80876c9708 version 16.11.3 2018-09-24 04:07:28 -07:00
RoboMWM c04666b43d Fix NPE that occurs when repairing nextClaimID value
Very likely I was going to refactor this class, but then stopped since
it's abstract and thus can't have any constructor... but apparently I
forgot to revert that line.

Closes #377
2018-09-24 01:51:47 -07:00
RoboMWM abd97b1f5a remove the null entry (admin claims). Fixes #376 2018-09-23 11:22:46 -07:00
RoboMWM 77a011dd43 reverse ownerID comparison to account for administrative claims
Administrative claims leave the ownerID field null.
2018-09-23 11:19:30 -07:00
RoboMWM bda1c180ec add missing getHandlerList() in ClaimCreatedEvent 2018-09-22 23:32:49 -07:00
RoboMWM 4a9d62c78f also check for metadata in anonymous task in plaayerjoinevent 2018-09-22 13:26:22 -07:00
RoboMWM 82f17b89b6 Have CheckForPortalTrapTask check metadata existence first
If a player logs out then logs back in, and the task in the
PlayerJoinEvent rescues him first and the player has sat in the rescue
location for over 10 ticks (which should be within another portal), then
this task will also attempt to rescue the player. Because it was using
metadata in the log message though, it failed but also printed a
stacktrace since the player's metadata was already removed.
2018-09-22 12:30:49 -07:00
RoboMWM 5fc85097a7 typo 2018-09-22 06:30:28 -07:00
RoboMWM cf217e27c4 config for OfflinePlayer cache, closes #238
The OfflinePlayer cache holds players who have logged in within the last
X number of days (default 90).
2018-09-22 05:37:35 -07:00
RoboMWM f6b35d71bf Claim expiration: improvements+config option. Closes #24
- Claim expiration collects all players (uuids) that own claims, and
iterates this set instead of iterating through every single claim.
- Individual claims had a "last modified" timestamp, so this method was
valid before, but makes no sense now since expiration is based on player
inactivity instead of claim inactivity.

New config option under the advanced node allows controlling the
frequency each player in the aforementioned set is checked for
inactivity.
2018-09-22 05:21:00 -07:00
RoboMWM 93a36dd9e1 Remove old try-catch block, add metrics 2018-09-22 04:47:40 -07:00
RoboMWM 2ead578666 Make the version explicitely a string. Not sure if CB or yaml is at fault here
[20:58:37] RoboMWM: hmmm it's a bit annoying how CB cuts off the
trailing 0 in my versions
[20:58:49] RoboMWM: e.g. 16.10 displays as 16.1
[20:59:02] +Choco: That seems... stupid? lol
[20:59:12] RoboMWM: very
[20:59:27] RoboMWM: plugin.yml inside jar reveals it to be correct
[20:59:43] RoboMWM: and afaik this is supposed to be a string so idk why
it's doing that
[21:00:49] RoboMWM: apparently wrapping it with single quotes does the
job
[21:01:33] +Choco: Maybe it assumes it's a double then converts it to a
String
[21:02:04] RoboMWM: I guess >_> since I stuck a test.16.10 without
quotes and it's all there
[21:02:09] RoboMWM: thank you yaml
[21:02:22] +Choco: What if you were to do 1.1.10?
[21:02:30] +Choco: Because that's not a valid number, maybe it would
assume String
[21:02:33] RoboMWM: the second dot probably makes it a string
[21:02:51] RoboMWM: maybe I should do 16.1O
[21:02:57] +Choco: lol that's cheating
2018-09-19 21:05:42 -07:00
RoboMWM 5bb3c70b77 Prevent drivers in unauthorized claims from destroying lilypads. Fixes #250 2018-09-19 01:02:37 -07:00
RoboMWM cb6a42cbc6 Don't "reload" the database when migrating to SQL
FYI, I do not recommend migrating to SQL for GP.
Fixes #369
2018-09-19 00:57:14 -07:00
RoboMWM 5e2f128a8d sieged claims are never pvp-safe zones. Fixes #199 2018-09-19 00:36:21 -07:00
RoboMWM 59196f4742 Also protect pets from cacti, drowning in non-PvP worlds.
Closes #213, #79
2018-09-19 00:28:29 -07:00
RoboMWM e21a781536 Cancel item merging with protected drops. Closes #255 2018-09-19 00:02:40 -07:00
RoboMWM ad1f32ec8e don't send message when canceling trampling of turtle eggs, closes #373 2018-09-18 23:51:04 -07:00
RoboMWM d31c62e233 catch more instances of people using outdated worldguard versions 2018-09-18 23:49:05 -07:00
ArchdukeLiamus 393aa27329 fire/lava near players config can be changed in non-PvP worlds (#371)
Also allows this feature to be disabled in worlds where PvP rules aren't applied.
2018-09-15 15:12:41 -07:00
RoboMWM a764eea215 add syncronized keyword to hopefully fix plugins that insist on calling this method asynchronously
May close #279
2018-09-07 16:59:47 -07:00
RoboMWM 35a80407be Breaking turtle eggs only seem to fire a PlayerInteractEvent. Closes #364 2018-09-04 13:18:33 -07:00
RoboMWM ebd7e1b0d0 Check if claim owner is abandoning claim before adjusting accrued claim blocks. Closes #322 2018-09-04 13:11:26 -07:00
jacob1 42cf84f6b0 Include new 1.13 damaged anvil types (#361)
Add an optional extended description…
2018-08-30 10:24:55 -07:00
RoboMWM bea2fa3d7f Disallow interaction with Fish in claims, closes #353 2018-08-19 11:36:19 -07:00
RoboMWM 59d0cfc56c Avoid unnecessary call to setAccruedClaimBlocks when AbandonReturRatio is set to 1.0 2018-08-17 17:25:46 -07:00
RoboMWM d1adf26573 prepend explanation for failed claim and playerdata loads 2018-08-17 10:17:56 -07:00
RoboMWM e17403feb2 Perform sanity check on nextClaimID, closes #207 2018-08-17 10:15:35 -07:00
RoboMWM d8e0a094e4 fix wrong parameter used in /gpblockinfo, closes #313 2018-08-17 09:45:44 -07:00
RoboMWM 0581f7314a Don't destroy tridents, mitigates #330 2018-08-17 09:20:41 -07:00
RoboMWM e2883ce7b1 Prevent TNT ignition in areas with no build access. Closes #356 2018-08-17 09:08:34 -07:00
Narimm 643ad8a7f7 Add ClaimCreatedEvent and ClaimModifiedEvent (#344)
1. Claim creation event... this is fired once all the claim creation checks have been passed.  It can be cancelled. It contains the claim and the creating player
2. Claim modification event - this is fired as the claim is modified - it cannot be cancelled. It contains the claim and the modifier...which can be null.

Use Case:
This could be used so other plugins can hook gp and perform an action if a claim is created or changed. Something as simple as logging claim creations/modifications and deletions.
2018-08-13 07:09:05 -07:00
Miroslav Marchev 31c1581ca2 Update WorldGuard dependency to 7.0.0-SNAPSHOT (#343) 2018-08-13 07:02:50 -07:00
Javacraft e7495011aa Minor Maven Project Housekeeping (#334)
* Ignore Eclipse build/project artifacts.

* Fix Maven convention: rename src/tests/* to src/test/*

* Update Maven test dir. Remove directory specs for src, test, & rsrc.

${project.basedir} is the default directory. Only add directory
spec if different from convention.
2018-08-13 06:59:06 -07:00
zedwick 19c0f3220f The 1.13 PR (#320)
- Removes all code and config pertaining to the "mods" config section

- RestoreNature has issues in oceans
2018-08-13 06:53:14 -07:00
jacob1 ad07915664 Fix /rsc in admin claims (#300)
* Fix restrictsubclaim in admin claims

* Allow players with /ignoreclaims on to toggle restrictsubclaim flag
2018-07-24 17:38:46 -07:00
jer3m01 f84ff64c24 Fixed typo for Messages.BuySellNotConfigured (#305)
`anhd`--> `and`
2018-06-22 17:42:06 -07:00
Kris 2f5a2eea9c Allow wither to break blocks in claims that have temporarily allowed explosions 2018-06-17 16:50:57 -07:00
RoboMWM 03f2ff5568
Add hyperconomy to softdepend
According to #97 hyperconomy loads after GP. See #97 for discussion and etc. on a proper way to fix/avoid requiring this for any other economy plugins that happen to load before GP does.
2018-06-11 23:25:48 -07:00
Narimm b38e4aedb6 Refactor to maven standard layout (#270) 2018-06-11 23:11:37 -07:00
RoboMWM 92299d683b make sendMessage public
Allows tighter integration with addons that wish to augment core GP
features/commands.
2018-01-01 15:44:13 -08:00
RoboMWM 05497b7b6a ensure worldguard warning is printed to server console 2017-12-23 08:41:43 -08:00
RoboMWM 9c5c7523a2 add fallback to old id-based system for chunk snapshots 2017-12-23 08:28:12 -08:00
RoboMWM fd0ddbf405 handle case of server not having ChunkSnapshot#getBlockType
i.e. tell server owner to update and handle conservatively.
2017-12-20 09:57:19 -08:00
RoboMWM 9414700d40 ignore vanilla teleports. Fixes #210 2017-12-20 09:26:31 -08:00
RoboMWM 7aa9680876
Add option to disable negative claim block amount fixing (#236) 2017-12-19 14:05:27 -08:00
md-5 8040a17e5d Remove block ID usage (#234)
Also updates AutoExtendClaimTask with new API, will need to ensure users are using a recent build of CB
2017-12-18 21:26:31 -08:00
David Precious 5f6b541af8 Configurable siege resecure time (#203)
* Configurable time until sieged claim is resecured

Fixes #113.

Makes the five minute period after winning a siege, during which the claim is
not secured, customizable.
2017-08-31 15:49:33 -07:00
Ceees2 a23703707b Using PreparedStatements instead of normal Statements (#99) 2017-08-23 08:37:25 -07:00
David Precious 72504941df Configurable trapped words (#186)
* Make trapped words fully configurable.

Before, it contained hardcoded checks; the value of
`Messages.TrappedChatKeyword` was in addition to the hardcoded ones.

Make it more flexible, so you can override them entirely (and provide as many as
you want, comma-separated), and an empty value disables the message totally.

(Default value is 'trapped;stuck' to provide the same behaviour the hardcoded
checks did.)
2017-08-18 02:04:09 -07:00
RoboMWM 452a6a1c7e Add a delay before immediately rescuing players trapped in nether portals
In case they actually aren't and lagged out (perhaps due to chunk
loading), they'll have a few seconds to be able to walk out before being
automatically rescued on reconnect.

Also logs when a player has been rescued
2017-07-23 14:48:16 -07:00
RoboMWM 92a0adcfc0 Avoid hidden files as well when migrating to MySQL
Related to #158
2017-07-22 00:25:56 -07:00
RoboMWM 04bc32336c Implement #114 2017-07-22 00:19:09 -07:00
RoboMWM d079fcf379 Warn server owners about use of out-of-date Worldguard
closes #162
2017-07-21 23:24:52 -07:00
RoboMWM 4cb2abefeb Add a code comment explaining why we do this
Fixes #85
2017-07-21 23:15:48 -07:00
RoboMWM 9a642205d7 Revert "Always schedule SendPlayerMessageTask"
This reverts commit 39e1e13dda.
2017-07-21 23:12:35 -07:00
Simon 7efaa3b0fd Change worldguard-checking behaviour. (#160)
Prevent players from creating a claim if _any_ part of their claim includes a worldguard region they cannot build in. (Previous behavior only prevented claiming if the entire claim was within a worldguard region the player could not build inside.)
2017-07-21 18:59:41 -07:00
jacob1 5d474e51f5 add /restrictsubclaim (#135)
Will update databases - warn server owners to backup when releasing (they should be backing up anyways...)
2017-07-21 18:54:24 -07:00
RoboMWM f918ee18bc Disable DeniedMessageEvent
I don't know if this is the problem regarding another similar issue, but
I'd rather not risk it + it's likely not being used
2017-06-15 22:44:02 -07:00
RoboMWM f439ea62c0 Use banlist
because offlineplayer methods for setting ban have been long deprecated
and are now removed.
2017-05-14 22:17:58 -07:00
RoboMWM cefa66767c remove unused import 2017-05-14 21:53:29 -07:00
RoboMWM 37198d09b1 Use wood pickup stat instead of achievement
1.12 removed achievements
2017-05-14 21:45:48 -07:00
zhro e2609b8973 Don't warn players about unclaimed land if they do not have the 'griefprevention.createclaims' permission. (#112)
Add an optional extended description…
2017-04-04 13:26:49 -07:00
BillyGalbreath 8fdb6e07ee Add PlayerKickBanEvent (#103) 2017-03-22 11:26:22 -07:00
David Precious 73fcd9a674 add new permission to show claim dimensions
Show the claim size to those with griefprevention.seeclaimsize when right-clicking with the investigation tool
(stick by default) - it's not exactly private information, the claim boundaries
are visualised so it would be easy to just count the blocks or compare the
coords of the corners to find out.
2017-03-17 09:37:58 -07:00
BillyGalbreath 3837794c56 Make sure the visualization event is called when auto reverting visuals (#104) 2017-03-12 23:50:02 -07:00
RoboMWM 8392069960 Merge branch 'master' of https://github.com/TechFortress/GriefPrevention 2017-02-24 14:24:10 -08:00
RoboMWM ec08a8b52b a tad more debug messages
Basically to help diagnose #95 and any future related issues.
2017-02-24 14:24:03 -08:00
RoboMWM 261620747e more debug logging 2017-02-24 12:48:59 -08:00
Rodzynus 678f442cda Account for 1.11 Horse class changes (#93) (#94)
* Fixed issue #93, this time using AbstractHorse entity.
2017-02-24 09:14:43 -08:00
RoboMWM 82e7f9fc3f Don't let TNT be dropped in end portals
Necessarily this shouldn't be an issue anyways since the platform is
obsidian.

Also, if you have claims enable in the end, you should theoretically be
already protected.
2017-02-23 10:23:38 -08:00
Erik1988 b81e802b79 Option to globaly allow use of spawner egg (#91)
If enabled, players are allowed to place mob spawn eggs inn all claims (including admin claims).
2017-02-19 11:32:33 -08:00
BillyGalbreath b8a5cb79d1 Add idle claim block accruals percentage (#90)
(defaults to 0 for legacy behavior)

* Math fix :S
2017-02-18 19:23:13 -08:00
BillyGalbreath daf34703e4 Add configuration option for silencing login and logout notifications (#89) 2017-02-18 19:11:39 -08:00
RoboMWM 3043298640 v16.6 Compatibility with custom biomes that don't set a temperature 2017-02-04 13:13:07 -08:00
BillyGalbreath ac319f4e1c add configurable threshold for idle detection (#75)
Also fixes the no-movement idle detection.
2017-01-27 07:43:17 -08:00
BillyGalbreath 70469d1b4c Fix idle detection when other plugins handle AccrueClaimBlocksEvent (#71) 2017-01-21 16:34:44 -08:00
RoboMWM e5d81e76a2 ok I didn't catch them all
yea this needs to be rewritten
2017-01-20 07:13:38 -08:00
RoboMWM 39e1e13dda Always schedule SendPlayerMessageTask 2017-01-20 06:15:52 -08:00
RoboMWM 208c8f0c72 Temporarily fix #62
Potentially related: #53
2017-01-18 11:09:17 -08:00
RoboMWM 0d26d6c65b Implement DeniedMessageEvent
Partially addresses #57
2017-01-04 13:17:59 -08:00
BillyGalbreath 9e4db8fb3e Add VisualizationEvent (#48)
* Add VisualizationEvent

Need to know if subdivides are showing or not

* Javadocs for VisualizationEvent
2016-12-04 17:23:35 -08:00
RoboMWM a8e9290cd8 Use a switch instead 2016-12-03 20:00:29 -08:00
RoboMWM eeadbfa568 API: per-player claim limits
Note: this is not persistent.
2016-11-20 18:56:00 -08:00
RoboMWM 514b0e5949 Add negative value check when accruing claim blocks
to prevent plugins from doing nasties
2016-11-20 17:40:26 -08:00
RoboMWM 11d6d3cf13 v16.3: Fix debug message variable 2016-11-20 17:34:00 -08:00
RoboMWM f173ae9ddc Let's not deliver 6 times the intended claim blocks
Thanks Billy
2016-11-20 17:29:53 -08:00
RoboMWM 409f2f7b33 Remove redundant call
Also remove todo, since it's possible to use the bonus claim blocks to
"extend" the claim block limit via an addon:
https://github.com/TechFortress/GriefPrevention/issues/41#issuecomment-261471314
2016-11-20 17:18:38 -08:00
RoboMWM 72070c8df3 Protect flower pots 2016-11-20 15:02:35 -08:00
RoboMWM 410dc3c3da v16.1: don't protect villagers from new mobs 2016-11-20 14:31:10 -08:00
RoboMWM 2fac38aa7e No need to give benefit of doubt since we now have one global accrual limit
- Might also be related to #41, #36, #28
2016-11-17 23:58:37 -08:00
RoboMWM 12758b5a03 Close #25
- Witches can no longer apply potions to claimed animals (as if they
were an untrusted player)
- Protect claimed villagers as well

- Don't cancel entire event when we're protecting a single animal.
2016-11-17 23:20:08 -08:00
RoboMWM d6caffb2e2 Use 1.11 API, commented on code to possibly remove 2016-11-17 02:14:47 -08:00
RoboMWM 554bb94832 Some documentation on the new event 2016-11-15 13:10:04 -08:00
RoboMWM 201ba58c3e Remove custom accrual limits and rates
Related to #18

Will likely make an API/custom event for accrual limit(?)
2016-11-15 13:04:29 -08:00
RoboMWM 3a3d3632a9 Implement AccrueClaimBlocksEvent. Closes #18 2016-11-15 12:36:59 -08:00
RoboMWM 17854cf2d5 Removed unimplemented message 2016-11-06 11:45:58 -08:00
RoboMWM e565b433be use entity type vs. instanceof where possible 2016-10-23 05:44:46 -07:00