Commit Graph

2759 Commits

Author SHA1 Message Date
Florian CUNY
2773c4a104 Added BREAK_HOPPERS protection flag
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1331
2020-06-29 17:44:13 +02:00
tastybento
89849442a9 Protected hoglin and strider breeding
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1419
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1418
2020-06-28 15:05:48 -07:00
tastybento
a1a3913fe7 Refactor to use computerIfAbsent instead of putIfAbsent 2020-06-28 09:16:05 -07:00
tastybento
23fecdea54 Improves HeadGetter and Panel
Will replace more than one head in a panel if found.
2020-06-28 09:15:42 -07:00
tastybento
b87533fffb
Introducing (limited) 1.16.1 support (#1416)
* 1.16.1 changes

* Fixed failing tests in PhysicalInteractionListener
HOWEVER, the code somehow no longer protects the pressure plates... I'm investigating that.

* Implemented future-proof buttons, doors, fence gates, trapdoors protection

* Protected REDSTONE_WIREs under "REDSTONE" flag
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1421

* Fixed bug with pressure plates

* Fixed params order in assertEquals in PhysicalInteractionListenerTest

* Fixed EnderChestListenerTest errors

* Fixed most errors in BlockInteractionListenerTest

* Added 1.16.1 to ServerCompatibility

* Fixed BlockInteractionListenerTest

* Fixed backwards compatibility in BlockInteractionListener
Also made use of existing Tags (ANVIL, BEDS, SHULKER_BOXES)

* Fixed BlockInteractionListenerTest (again)

* Fixed backwards compatibility in PhysicalInteractionListener

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-06-26 22:09:33 +02:00
Florian CUNY
51c69f34af Added some basic javadoc header to HeadCache 2020-06-26 17:15:15 +02:00
tastybento
4e56ff8c92 Keeps heads for 3 minutes in cache
It appears that heads are being "forgotten" by the server after a few
minutes (not sure how long) so caching forever doesn't help. This causes
blocking calls when the head is set.

https://github.com/BentoBoxWorld/Level/issues/159
2020-06-26 07:47:19 -07:00
Florian CUNY
0e3535d0cc Added language selection using command (as alternative to GUI)
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1411
The IslandLanguageCommand now have tab-completion.
Added LocalesManager#isLocaleAvailable(Locale).
2020-06-22 18:52:16 +02:00
Florian CUNY
360a417a4a Tweaked spanish translation to disambiguate "roca de base" into "bedrock" 2020-06-22 10:15:09 +02:00
tastybento
1ebae9b1a4
Uses completablefutures to paste islands sequentially (#1410)
* Uses completablefutures to paste islands sequentially

* Removes debug
2020-06-22 00:01:30 +02:00
tastybento
9f5fb590e0 Fixes test broken by old flag name being used
cbbd361b03
2020-06-21 13:41:42 -07:00
Florian CUNY
cffa294f0e Removed credits for non-installed addons
It causes a lot of unnecessary GitHub API calls which can cause rate-limits.
2020-06-21 17:51:19 +02:00
Florian CUNY
ad0b01fbc8 Added javadoc about deprecated flags on Flags#values 2020-06-21 17:47:48 +02:00
Florian CUNY
cbbd361b03 Split the animal/monster spawn flags to "natural" and "spawners"
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1351
2020-06-21 17:47:01 +02:00
Florian CUNY
aa9a4d16f1 Added ability to replace [name] by the island owner's name when pasting an entity from a blueprint 2020-06-17 21:28:00 +02:00
tastybento
7ee706c982 Fixes elytra protection. Adds test class.
https://github.com/BentoBoxWorld/BentoBox/issues/1403
2020-06-16 19:12:07 -07:00
tastybento
2cefdcca3f
Adds stack trace to onLoad if there's a LinkageError (#1399)
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1362

There was already one for onEnable. This just adds the same to onLoad,
which was missing.
2020-06-14 11:13:15 +02:00
tastybento
09072282bb
Replaces command running with single Util method (#1374)
Adds respawn commands.
2020-06-13 18:51:05 -07:00
tastybento
0fec5aec51 Added insufficient rank error and fixed tests.
The no permission error was being added, but thats wrong because it's
not lack of permission but lack of rank that is the issue. This adds a
new error and shows it in the various commands.
2020-06-06 17:01:09 -07:00
Florian CUNY
9a7ded8136 Fixed typo in en-US.yml 2020-06-06 10:46:16 +02:00
tastybento
593ee69c5b Prevents fires from lightning if FIRE_IGNITE is not set for visitors
https://github.com/BentoBoxWorld/BentoBox/issues/1383
2020-06-02 18:28:56 -07:00
Florian CUNY
73ab103098 Fixed some code smells 2020-06-02 14:22:46 +02:00
Florian CUNY
5d08f15d5f Removed Schem to Blueprint conversion
It was introduced in BentoBox 1.5.0 and bStats shows that all the servers are using BentoBox 1.5.3+. We can therefore safely remove this from BentoBox.
2020-06-02 14:01:35 +02:00
Florian CUNY
2e04619cd9 Got rid of a null-check for blueprints' names
Blueprints' names can no longer be null
2020-06-02 10:29:05 +02:00
Florian CUNY
f4e3eda98c Removed deprecated (as of 1.6.0) SafeSpotTeleport.Builder.overrideGamemode() 2020-06-02 10:25:40 +02:00
tastybento
38db699801
Uses async location loading for home teleporting (#1381)
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1241

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-06-02 10:22:35 +02:00
tastybento
a6d6895676 Fixes admin blueprint delete command
https://github.com/BentoBoxWorld/BentoBox/issues/1382
2020-06-01 12:15:49 -07:00
tastybento
9df54ff07f
Show unknown versions (#1379)
Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-05-30 21:59:16 +02:00
tastybento
6fa89b0b4d
Uses Locale.ENGLISH for toLowerCase and toUpperCase (#1378)
The locale should be explicitly declared otherwise the default locale of
the operating system will be used, which may result in unexpected bugs.
2020-05-30 21:52:05 +02:00
tastybento
d6b2a88b32 Fixes rank checking for team invites
Only owners could invite players successfully. This now checks based on
rank.
Added a method to allow rank checking on UUID. Had to make tests be
specific to the User.class.

https://github.com/BentoBoxWorld/BentoBox/issues/1377
2020-05-30 11:22:05 -07:00
tastybento
0e10563ae6 Explicitly use UTF-8 when scanning file for YAML comments
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1372
2020-05-27 16:32:20 -07:00
tastybento
7b28c67db0 Remove slash from front of perform command
https://github.com/BentoBoxWorld/BentoBox/issues/1369
2020-05-26 12:31:56 -07:00
tastybento
502aaa87a4
Enables game modes addons first (#1368) 2020-05-26 10:04:53 +02:00
tastybento
fdb4df3d93 Show correct missing permission for multi sethome command
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1367
2020-05-25 16:44:22 -07:00
tastybento
2e0ca14729
Uses perform command instead of direct call. (#1359)
* Uses perform command instead of direct call.

Goal is to enable 3rd party alias plugins to catch the command.

* Fires PlayerCommandPreprocessEvent before performCommand

Adds a / to the front of the default player commands.

Fixes issue with MyCommand plugin.

* Fixes tests
2020-05-23 19:53:55 -07:00
Florian CUNY
b9915dba98 Renamed a variable in WebManager to make it less confusing 2020-05-19 17:56:10 +02:00
Florian CUNY
4209afaf20 Fixed Flags being sorted due to their text color
Colors are now stripped, so that all Flags are properly alphabetically sorted
2020-05-19 17:40:51 +02:00
Florian CUNY
7dc39946f1 Improved paging layout for TabbedPanels 2020-05-19 17:29:45 +02:00
tastybento
64b5675bf0 Adds %gamemode_owns_island% placeholder
https://github.com/BentoBoxWorld/BentoBox/issues/1355
2020-05-15 17:53:22 -07:00
tastybento
48310e858f Add softdepend for BsbMongo 2020-05-15 08:07:39 -07:00
tastybento
0283d5445c Improved creeper damage and creeper griefing protection locale. 2020-05-14 16:32:59 -07:00
tastybento
5e1f095b9d Use try-with-resources to close ResultSet in SQLite handler. 2020-05-13 18:02:06 -07:00
tastybento
72bbac2594 Remove unused import 2020-05-13 17:58:02 -07:00
Florian CUNY
7b476d6bd8 Play a sound when resetting the island flags to default 2020-05-13 18:18:46 +02:00
Florian CUNY
f66fafd0aa Added config option to define the item to use to fill gaps in Panels
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1344
Addons should also use this setting as much as possible when dealing with Panels
2020-05-13 18:06:15 +02:00
Florian CUNY
321637b9b9 Added comment in config for close-on-click-outside 2020-05-13 17:46:32 +02:00
Florian CUNY
805b376de3 Fixed glass panes in header not having an "empty" name
Relates to https://github.com/BentoBoxWorld/BentoBox/issues/1344
2020-05-13 17:36:19 +02:00
Florian CUNY
32e174daed Fixed a small code smell in LocalesManager 2020-05-13 16:44:22 +02:00
Florian CUNY
ee06a55d02 Better handling of InvalidConfigurationExceptions when updating locale files
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1290
2020-05-13 16:41:05 +02:00
Florian CUNY
783a68a757 Call the TeamSetownerEvent before making the change in AdminTeamSetownerCommand
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1349
Also call one of the two "RankChange" event before the change (not doing the latter was a bug, actually).
2020-05-13 16:17:29 +02:00
tastybento
feab01cde8
Add ability for DataObjects to specify custom db table name (#1348)
Automated migration for existing databases is supported.
2020-05-13 10:49:42 +02:00
Florian CUNY
de124ab182 Call a RankChange event for the old island owner in Setowner commands
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1342
2020-05-09 11:39:17 +02:00
Florian CUNY
937052d378 Fixed addon api-version compatibility check
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1346
Added a unit test to prevent regressions

Newer BentoBox releases are now properly considered "compatible" to addons expecting an older patch release
2020-05-09 11:26:00 +02:00
tastybento
11510b15fc Add addon top level commands to BentoBox help
This enables admins to see which top level commands have been registered
under BentoBox. As these commands can be defined in config files, it is
not always obvious which one should be used so this help will be useful.
2020-05-08 14:19:50 -07:00
tastybento
9a517446c8 Panel should ignore color codes when checking player name for heads
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1343
2020-05-07 16:19:09 -07:00
tastybento
2c004ce504 Clear user cache on login.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1341

Server calls PlayerTeleportEvent if player is mounted on quit, which
inserts player back into cache. By clearing the cache on login, the
stale player object will be cleared.
2020-05-05 16:26:51 -07:00
tastybento
4a3c9ad8ae Added null checking for world when changing worlds
https://github.com/BentoBoxWorld/BentoBox/issues/1336
2020-05-02 18:54:06 -07:00
tastybento
304867c1f8 Prevents duplicate addon loading.
https://github.com/BentoBoxWorld/BentoBox/issues/1339
2020-05-02 18:51:32 -07:00
tastybento
e39db644b9 Adds better checking for on-join commands
https://github.com/BentoBoxWorld/BSkyBlock/issues/315
2020-05-02 16:57:42 -07:00
tastybento
61fe218a16 Purge was not calculated player logins correctly.
https://github.com/BentoBoxWorld/BentoBox/issues/1333
2020-05-02 16:14:03 -07:00
tastybento
3b50b01eef SafeSpotTeleport was setting home location async
This could cause a race condition setting home to null.

If home was null during a new island creation, then the new island tasks
would not be run because SafeSpotTeleport was not given the runnable.

May be related to:
https://github.com/BentoBoxWorld/BSkyBlock/issues/312
2020-05-02 14:11:37 -07:00
Florian CUNY
31de515b3e Changed the Setting Flags category's icon to COMPARATOR 2020-05-02 14:45:20 +02:00
tastybento
f0564b7c78 Puts a null check on player UUID
It's possible for fake players to have null UUIDs apparently. So this
check avoids an NPE.
2020-05-01 20:48:04 -07:00
Florian CUNY
c4e28b7937 Release 1.13.1 2020-05-02 02:13:45 +02:00
tastybento
7bfbfe78a3 Return true if database save executed.
Fixes bug where if no change was made it was reporting an error.
2020-05-02 02:13:45 +02:00
Clément P
6a28ba0b1d
Add support for MongoDB URI (#1330)
Implements #1311
2020-05-01 21:28:52 +02:00
Florian CUNY
faba022a7b Fixed some code smells 2020-05-01 20:51:47 +02:00
Florian CUNY
a764e9e232 Release 1.13.0 2020-05-01 18:14:03 +02:00
Florian CUNY
92ca54cb46 Added jAvEE_fr as an author of the French translation 2020-05-01 18:06:21 +02:00
Florian CUNY
b8e0282057 Some more work on the French translation
Keeps getting issues with GitLocalize though...
2020-05-01 17:50:56 +02:00
BONNe
d47216f2c8
Add AdminSetSpawnPointCommand to DefaultAdminCommand (#1329) 2020-05-01 15:40:54 +02:00
Florian CUNY
d45be091bd Fixed the confirmation warning message showing twice in AdminRegisterCommand
It will now only be sent once, when asking for confirmation
2020-05-01 14:21:25 +02:00
Florian CUNY
c29b376d3b Made some minor tweaks to en-US.yml 2020-04-29 21:50:58 +02:00
gitlocalize-app[bot]
70babfcd68
Some more work on the French translation (#1326) 2020-04-29 21:49:03 +02:00
Florian CUNY
314fddc400 Fixed tests 2020-04-29 18:51:07 +02:00
gitlocalize-app[bot]
1ed4773199
Some additional work on the French translation (#1322) 2020-04-29 13:31:28 +02:00
tastybento
f9906fa2f5 Fixed broken build. Fixed failed tests. 2020-04-27 18:58:14 -07:00
Florian CUNY
4e7a31b0a3 Added some [name] text variables in register/unregister messages
and made some minor tweaks in en-US.yml
2020-04-27 01:31:10 +02:00
gitlocalize-app[bot]
1a4e56b4f8
Updated French translation (still WIP) (#1318)
and another wip french locale update. We're still working on it!
2020-04-27 01:28:20 +02:00
gitlocalize-app[bot]
344db775bc
Started working on French translation (#1317)
There's a lot of machine translation as well as a lot of bad stuff, but I want to get that first part of the job saved in Git, in order to avoid GitLocalize wiping everything in the night.
2020-04-26 23:59:15 +02:00
tastybento
e381d61c3c Fixes issue where addon has no perms in addon.yml
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1312
2020-04-26 10:08:45 -07:00
tastybento
17186dd791 Remove unused imports 2020-04-26 08:32:52 -07:00
Florian CUNY
c9298c3ae6 Added BentoBoxReloadLocalesCommand
Implements #1245
2020-04-26 13:18:37 +02:00
Florian CUNY
a5c710ce3a Fixed tests 2020-04-26 13:17:22 +02:00
Florian CUNY
a1af25b98c Removed tab completion in BentoBoxReloadCommand (unused) 2020-04-26 13:07:48 +02:00
Florian CUNY
b558c905a4 Fixed ConcurrentModificationException on startup
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1312
Was introduced by 1f3a79127a
2020-04-26 11:45:44 +02:00
tastybento
1f3a79127a
Implements placeholder permissions for addons (#1305)
Implements #1303. 

Addons will no longer need to see their permissions updated each time there is a new gamemode. They can use [gamemode] in their permissions to automatically register the permissions on all available gamemodes.
2020-04-26 01:20:48 +02:00
tastybento
fe58159db3
Adds saveObjectAsync with a CompletableFuture return for databases (#1308)
Deprecates the saveObject() method
2020-04-26 01:00:49 +02:00
BONNe
97341ce657
Add DefaultPlayerCommand and DefaultAdminCommand (#1293)
Helps to implement #498.

Also added 4 new WorldSettings methods:
* getAdminCommandAliases()
* getPlayerCommandAliases()
* getDefaultPlayerAction()
* getDefaultNewPlayerAction()

Co-Authored-By: Florian CUNY <poslovitch@bentobox.world>
2020-04-26 00:57:14 +02:00
YellowZaki
f08c7dece3
Added Addon#reloadConfig() (#1302) 2020-04-26 00:37:03 +02:00
Florian CUNY
46ba40b70d Fixed IslandsManager#getSafeHomeLocation throwing NPE if world is not an island world
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1306
The method now properly returns null if the world is not an island world.
2020-04-25 14:40:47 +02:00
BONNe
40240c7225
Add AdminSetSpawnPointCommand to change an island's spawn point (#1295)
Implements #937.
2020-04-24 14:33:44 +02:00
tastybento
ae63125f50
Enables UUIDs to be used in admin commands as well as names (#1298)
Implements a solution for #1297.

Adds Util#getUUID(String nameOrUUID)
2020-04-23 21:16:09 +02:00
BONNe
5734709594
Implement ability to change PanelItem amount. (#1299)
Adds #getAmount() and #setAmount(int) in PanelItemBuilder
2020-04-23 20:57:16 +02:00
tastybento
b1dcec2160
Adds API to enable commands to be hidden from help and tab (#1301)
Implements #1300.

Adds CompositeCommand#setHidden(boolean).
2020-04-23 20:54:45 +02:00
tastybento
eee8709636 Combined safe spot checking into one place.
We had two sets of checking with different criteria. This consolidates
them.

Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1296
2020-04-22 18:25:10 -07:00
Florian CUNY
4aba4e1137 Use the "spawn protected" message when the island is a spawn 2020-04-21 20:37:22 +02:00
tastybento
88b331d1e4 MySQL databases were not saving properly on shutdown.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1292
2020-04-20 18:37:42 -07:00
Florian CUNY
91ccf51a54 Added option to keep old islands when resetting
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1188
2020-04-20 17:20:12 +02:00
tastybento
b6dd7d114e Revert "Fixed BentoBox not properly disabling if errors at startup (#1285)"
This reverts commit ee2f86ae3b.
2020-04-20 07:26:34 -07:00
Krystian
8c4b9380d3
Update Polish translation (#1289) 2020-04-20 13:18:49 +02:00
tastybento
ee2f86ae3b
Fixed BentoBox not properly disabling if errors at startup (#1285)
Fixes #1281
2020-04-20 13:15:55 +02:00
tastybento
85d5a3a6ac
Adds a single character prefix to database tables (#1278)
* Adds a single character prefix to database tables

https://github.com/BentoBoxWorld/BentoBox/issues/1277

* Fix tests

* Fix bug with substring
2020-04-18 14:16:36 -07:00
tastybento
b94f9db0a9 Emphasize that natural spawning is toggled for mobs and animals
https://github.com/BentoBoxWorld/BentoBox/issues/1284
2020-04-18 11:59:21 -07:00
tastybento
f5f2d7ac39 Fixes IslandTeamKickCommand test (commands.island.team.kick.cannot-kick) 2020-04-17 07:14:13 -07:00
Florian CUNY
0f6852dac6
Fixed reference "cannot-kick" showing up in IslandTeamKickCommand 2020-04-17 15:03:49 +02:00
tastybento
80285b71df Added error message info to Addon config save error 2020-04-15 07:39:37 -07:00
tastybento
9ea672b8e7 Do not run new island clearing jobs if player cannot teleport
https://github.com/BentoBoxWorld/BentoBox/issues/1280
2020-04-13 08:20:36 -07:00
tastybento
f0c50a5211 Remove debug 2020-04-09 22:10:28 -07:00
tastybento
d327ea4a89 Protect paintings from projectiles and being placed.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1273
2020-04-09 16:02:51 -07:00
tastybento
b6b9b11f53 Removed unused imports 2020-04-07 13:42:42 -07:00
tastybento
b29da53f43 Revert "Made BentoBoxCommand#setup() default (#1258)"
This reverts commit 7de842e284.
2020-04-07 13:38:44 -07:00
Florian CUNY
5b01f39f9e Fixed tests and logic with coop/trust limits 2020-04-05 15:15:26 +02:00
Clément P
0f2ba0e202
Added coop and trust limits (with permissions) (#1267)
Implements #1065.

Added two new permissions:
* [gamemode].trust.maxsize.[NUMBER]
* [gamemode].coop.maxsize.[NUMBER]

Added two new WorldSettings and related methods in IWM:
* getMaxCoopSize() (defaults to 4)
* getMaxTrustSize() (defaults to 4)

* Add limit for coop players #1065

* Edit comparison sign

* Add limit for trust players #1065

* Add default value and add since javadoc tags

* improved messages

* readded missing "

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-04-05 14:28:59 +02:00
Florian CUNY
e0d5c7b8bd Fixed the since javadoc tags for the previous commit 2020-04-05 10:34:06 +02:00
Florian CUNY
71fb955114 Implemented prefixes in localizations and a default prefix for BentoBox
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1086

started working on prefixes

added BentoBox prefix
2020-04-05 10:28:16 +02:00
Florian CUNY
e7b1f51a83 Fixed tests 2020-04-05 00:38:30 +02:00
Clément P. (Cleymax)
3bd0ff4a69 Added IslandRankChangeEvent (#1260)
Implements #1135

changed name of the event to append Event to it

Call the event in proper places
2020-04-04 21:57:59 +02:00
NotMyFault
74007a7a9f
Add break-spawner flag (#1263)
* Implements #1130

* Add proper styling to spawner-flag

Co-Authored-By: Florian CUNY <poslovitch@bentobox.world>

* Enforce yaml style

Co-Authored-By: Florian CUNY <poslovitch@bentobox.world>

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-04-04 21:32:59 +02:00
tastybento
f3220e1fda Merge branch 'develop' of https://github.com/BentoBoxWorld/BentoBox.git into develop 2020-04-04 12:31:58 -07:00
tastybento
c987b0ce5c Update copyright info in about command 2020-04-04 12:31:48 -07:00
Clément P
024e5803b5
Add %[gamemode]_on_island% placeholder (#1259)
Implements #1168

* Add 'on_island' placeholder #1168

* removed hard dependency to PAPI's booleans methods

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-04-04 20:45:10 +02:00
Florian CUNY
7de842e284
Made BentoBoxCommand#setup() default (#1258)
* Made BentoBoxCommand#setup() "default" and deprecated it

* Undeprecated BentoBoxCommand#setup() and changed its javadoc

* Put back setup in IslandGoCommand and IslandSethomeCommand

* Removed setup in AdminPurgeStatusCommand
2020-04-04 20:40:14 +02:00
NotMyFault
8566b2161f
Updated license dates in startup message (#1266) 2020-04-04 20:27:55 +02:00
NotMyFault
63cca31de1
Improved description of Creeper griefing flag (#1264)
Fixes #1201 regarding to https://github.com/BentoBoxWorld/BentoBox/issues/1201#issuecomment-588735557
2020-04-04 20:25:19 +02:00
tastybento
63e6f244bd Remove incorrect JavaDoc and forced use of SafeSpotTeleport builder 2020-04-04 08:20:32 -07:00
tastybento
a0dcb15026 Removed unused import 2020-04-04 08:20:06 -07:00
Florian CUNY
962b7d734a Removed MVdWPlaceholderAPIHook and all related methods
It was increasingly causing issues, ranging from long start times, unreliability with some of our placeholders, to much more...
There's a way for MVdWPAPI users to get PAPI's placeholders, so they should definitely use that instead.
2020-04-04 15:38:29 +02:00
Florian CUNY
2c7316ba21 Added AdminPurgeStatusCommand and improved some purge-related messages
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1254
2020-04-04 15:31:22 +02:00
Florian CUNY
c1741aa37f Improved colors in purge-related messages 2020-04-04 14:32:33 +02:00
Florian CUNY
960a8a7a00 IslandResetCommand now requires "[gamemode].island.reset" permission
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1207
2020-04-03 09:34:57 +02:00
tastybento
02b16c233c Fixes tests. 2020-04-02 14:49:45 -07:00
tastybento
425fb96b90 Use Util version of PaperLib to fix 323 test failures 2020-04-02 13:22:09 -07:00
tastybento
c724b6bbf2 Remove unused import 2020-04-02 13:21:26 -07:00
tastybento
eafeacd739 Annotated loadObject as Nullable
If the table exists but has no data in it, then the return value will be
null.
2020-04-02 12:52:42 -07:00
Nassim
a36ddf5a73
Improved/Fixed experience pickup flag on Paper servers (#1256)
* Fixed experience pickup flag

* Added since and author javadoc tags

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-04-02 10:43:49 +02:00
Florian CUNY
9e620cbbac Fixed spawn islands that could be purged as unowned
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1255
Also added a few more tests to prevent regression
2020-03-31 14:30:27 +02:00
Nassim
3125885bf3
Fixed player-not-cooped message key (#1251) 2020-03-30 15:26:09 +02:00
gitlocalize-app[bot]
1a173818a1
Updated Spanish localization (#1239)
* Translate es.yml via GitLocalize

* Update es.yml

Co-authored-by: SrAcosta <gerardo.gomez.acosta@gmail.com>
Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-03-30 15:24:17 +02:00
Florian CUNY
7966146304 Added %[gamemode]_visited_island_members_list% placeholder
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1246
2020-03-30 15:19:12 +02:00
Florian CUNY
d7dd37b85c Made some tweaks to en-US locale 2020-03-30 14:48:14 +02:00
tastybento
25d43c4f9f Removes velocity on teleporting
https://github.com/BentoBoxWorld/BentoBox/issues/1248
2020-03-28 09:42:55 -07:00
tastybento
aa708c4bdb Removed unused [nether_color] and [end_color]
https://github.com/BentoBoxWorld/BentoBox/issues/1248
2020-03-28 09:08:18 -07:00
Florian CUNY
1afd6ad014
Fixed enum reference of the "island_members_list" placeholder 2020-03-26 09:27:41 +01:00
tastybento
f7a6eb718c Adds bskyblock_island_members_list placeholder
https://github.com/BentoBoxWorld/BentoBox/issues/1243
2020-03-25 21:18:58 -07:00
Florian CUNY
a9fdda9ba1 Updated api version to 1.15 2020-03-22 16:17:48 +01:00
Florian CUNY
5c9cb4b4a4 Release 1.12.0 2020-03-21 13:10:51 +01:00
Florian CUNY
db9d2acf18 Fixed minor code smells 2020-03-21 11:29:33 +01:00
Florian CUNY
e322f4047a Moved BSTATS_ID to the BStats class 2020-03-21 10:49:58 +01:00
Florian CUNY
979fc021d0 Removed unused field in IslandPreclearEvent and fixed typo in docs 2020-03-21 10:47:29 +01:00
Florian CUNY
3f3ea689e6 Improved useSSL config comment 2020-03-21 10:45:44 +01:00
Florian CUNY
9aa6122a83
Fixed 'useSSL' option path in Settings 2020-03-20 10:23:25 +01:00
tastybento
8e77dc95df Fix perm tests in JoinLeaveListener. 2020-03-18 16:35:20 -07:00
tastybento
1933d498f6 Fixes handling of negative perms for value setting
https://github.com/BentoBoxWorld/Limits/issues/73#issuecomment-600748928
2020-03-18 14:18:38 -07:00
tastybento
1429c0a763 Add protection for bee nests and hives
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1237
2020-03-18 14:10:53 -07:00
tastybento
71c923975b Fixes tests for PVPListener class.
Were broken by PR https://github.com/BentoBoxWorld/BentoBox/pull/1230
2020-03-18 08:50:10 -07:00
Nassim
706bed62ec
Fixes potion splash pvp check (#1230)
Before this change, the entire potion splash would be cancelled if a single protected player would have been affected. Now, it will only remove the protected players themselves from the affected list.
2020-03-18 08:36:03 +01:00
Florian CUNY
c57b56f1f0
Fixed typo in updated playerPerServer bStats chart 2020-03-18 08:34:19 +01:00
NotMyFault
530a76b0a8
Improve bStats playersPerServer chart (#1225)
Updated bStats to 1.7.
Removed the "metrics" config option as it is now part of bStats's own `config.yml`.
2020-03-18 08:32:35 +01:00
tastybento
41e9bccc67 Load chunks async for every block pasted.
This loads every chunk async based on the block or entity being pasted.
2020-03-17 23:14:43 -07:00
tastybento
cf986925a0 Added protection in against a misnamed default language tag. 2020-03-17 23:13:38 -07:00
tastybento
5ca51f244e Sets spawn island protection ranges to be the max by default. 2020-03-17 18:20:02 -07:00
tastybento
3f4bd2418f Log error if hook is unsuccessful 2020-03-17 18:18:12 -07:00
tastybento
b67dbf0cb9 More robust method to unload classes.
In some situations there can be a concurrent modification error that
occurs when unloading the classes.
2020-03-13 19:47:26 -07:00
tastybento
0a86ddd0ab Fixes island creation on joining.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1221

The original code could actually never work because the check for
whether a player had played before or not was occuring immediately after
addPlayer, which added the player to the server. Also, the code to run
was running in a thread and not on the main thread, so if it had run
could have caused errors.
2020-03-10 18:30:50 -07:00
BONNe
f111bb9244
Implement option to enable SSL connection for MongoDB, MariaDB, MySQL and PostgreSQL connectors. (#1206) 2020-03-08 19:35:31 -07:00
tastybento
9f046be8f6 Fixes bug where any player can reset island settings.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1219
2020-03-08 19:32:49 -07:00
tastybento
34ce9d3fc2 Speed up new island spot search.
Relates to https://github.com/BentoBoxWorld/CaveBlock/issues/44
Added a test case to benchmark search algorithms.
2020-03-06 18:04:38 -08:00
tastybento
30d9ed3887 Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1216 2020-03-05 16:47:52 -08:00
tastybento
669986b422 Added IslandEventTest class and fixed bugs with IslandEvent
IslandReserveEvent was missing.
2020-03-04 19:02:50 -08:00
tastybento
b99be85bad Removed unused comments 2020-03-04 18:50:23 -08:00
tastybento
ca3fdf81e1 Preclear event was not using oldIsland argument. 2020-03-04 18:49:41 -08:00
tastybento
7d534d7617 Changed Island copy constructor to use getters to fix tests. 2020-03-04 18:48:35 -08:00
tastybento
f7a3da1502 Fixes IslandResetCommandTest failure 2020-03-04 18:47:37 -08:00
tastybento
aad7f1c482 Fixed IslandPrelearEvent so it is generated. 2020-03-04 17:33:36 -08:00
tastybento
a4362ce859 Addon saveResource overwriting was not working
The method saveResource can take a boolean as an argument to indicate
that the resource should be overwritten from the jar. This was not
working and is fixed.
2020-03-01 21:55:16 -08:00
tastybento
b4a1398fcb Limits island height to value values only.
Relates to https://github.com/BentoBoxWorld/SkyGrid/issues/39
2020-02-29 15:29:24 -08:00
tastybento
8393784498 Fixes projectile damage by block bug
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1211
2020-02-29 10:04:59 -08:00
tastybento
b189ebde65 Ignores colors when checking panel names
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1202

Black is a default color so there can be a mismatch between the
inventory title and the expected title if colors are used. In general,
it is safer not to check colors for GUIs.
2020-02-21 18:53:20 -08:00
tastybento
65dbd530d5 Added IslandPreclearEvent
This event gets called prior to an island being cleared of players and
other data. This can happen before a reset or an admin delete. It is
there so addons can perform tasks on the players before the island is
cleared.

Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1200
2020-02-20 16:56:35 -08:00
tastybento
d3a7a908f1 Fixes tests for NewIsland class
Broken by https://github.com/BentoBoxWorld/BentoBox/pull/1179
2020-02-19 19:46:49 -08:00
Draww
1e71d67a9b
Added #getOldIsland() in island reset-related events (#1179)
* Reaching Old Island information in Island reset events

* Added javadocs since tags

* added javadoc since tags for new field/method in builder

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-02-19 22:36:05 +01:00
Florian CUNY
795925f0cd Added %[gamemode]_deaths% placeholder
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1197
2020-02-19 00:58:36 +01:00
Florian CUNY
5cd2287d3a Added ConfigEntry#needsRestart()
It prints a comment in the config telling that the server must be restarted in order to take the changes into account.
2020-02-17 19:37:53 +01:00
gitlocalize-app[bot]
f620601caa
Updated Turkish translations (#1196)
Co-authored-by: Over_Brave <47111280+OverBrave@users.noreply.github.com>
2020-02-17 19:22:21 +01:00
Florian CUNY
4921056fc8 Added 'ver' alias to version commands 2020-02-17 17:40:04 +01:00
Florian CUNY
f3f81a52ea Merge remote-tracking branch 'origin/develop' into develop 2020-02-17 16:30:47 +01:00
gitlocalize-app[bot]
44f218a94d
Updated italian language (#1194)
Co-authored-by: Malachiel <xion87@users.noreply.github.com>
2020-02-17 16:25:06 +01:00
Florian CUNY
7bb65346b8 Added nullability annotations in LocalesManager 2020-02-16 14:33:22 +01:00
tastybento
06b5aac36f
Added LIMIT_MOBS flag (WORLD_SETTING) (#1155)
It provides a way to prevent selected EntityTypes from spawning at all.
Partially implements https://github.com/BentoBoxWorld/BentoBox/issues/1133
2020-02-16 13:12:32 +01:00
Florian CUNY
ada1909973 Increased declared Spigot API-version to 1.14 2020-02-15 13:49:54 +01:00
Florian CUNY
273893c227 Release 1.11.1 2020-02-15 11:15:33 +01:00
tastybento
295d985024 Removed unused import. 2020-02-14 08:13:20 -08:00
tastybento
77a2a7add5 Added exception catch for getClass in AddonsManager. 2020-02-14 08:12:49 -08:00
gitlocalize-app[bot]
8e994ffae9
French translation: added missing translations and improvements (#1189)
Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-02-14 11:27:40 +01:00
Florian CUNY
9abf65709d Added a message sent to all players on an island when PvP is toggled
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1081

Also removed the "protection.flags.PVP_OVERWORLD.active" message as it seemingly wasn't used.
2020-02-13 10:25:18 +01:00
Florian CUNY
f04a4fb522 Added a message if scooping obsidian into lava fails due to nearby obsidian blocks
Improved messages related to obsidian scooping
2020-02-12 20:31:06 +01:00
Florian CUNY
f383c196a5 Updated FLINT_AND_STEEL flag description to also tell about campfires 2020-02-12 13:39:01 +01:00
Florian CUNY
120be13b36 Fixed and improved Breeding protection
It wasn't catching breeding with some newer animals (Pandas, Foxes...), was a bit overprotective (it could prevent feeding some animals), or wasn't catching some breeding items (Golden Carrots, ...).
I rewrote it so that every animal is now protected with the foods that actually make them breed (based off the MC wiki page about Breeding).
Once we will move to 1.15 API, we will have to add BEES in that.
2020-02-12 11:36:08 +01:00
Florian CUNY
cc0d981e62 Added javadoc to BlueprintPaster's chunkLoadTime field 2020-02-11 16:02:39 +01:00
Florian CUNY
c5eb8ac7e7 Fixed some code smells 2020-02-11 11:28:15 +01:00
Florian CUNY
a240a6598d Fixed DYE protection being always called when interacting with sheeps 2020-02-11 11:14:55 +01:00
tastybento
9f65537ab8 Load chunks before pasting islands. Runs async.
1.15.2 can take a looooong time to load a chunk, sometimes up to 10
seconds.

https://github.com/BentoBoxWorld/BentoBox/issues/1180
2020-02-10 20:14:43 -08:00
Florian CUNY
5e02954a54 Fixed NoClassDefFoundError caused by changes to the addon version compatibility algorithm
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1177.
It was introduced in 332967950f.
2020-02-08 09:55:55 +01:00
tastybento
05a4b2d2c7 Adds new perm for bypassing delayed commands.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1136
2020-02-07 18:42:39 -08:00
tastybento
332967950f Fixes the API checking algorithm.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1176
2020-02-07 18:25:40 -08:00
tastybento
d972dd10c1 Change priority of PlayerPortalEvent in PortalTeleportationListener
https://github.com/BentoBoxWorld/BentoBox/issues/1101
2020-02-07 14:07:12 -08:00
tastybento
898e310e4f Handle null itemInHand for BlockPlaceEvent
Officially, null is invalid as an in-hand item. It should be AIR.

Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1172
2020-02-07 11:52:01 -08:00
tastybento
559578002b Add WorldBorderAPI as a softdepend to benefit Border addon 2020-02-07 11:48:41 -08:00
gitlocalize-app[bot]
008a158fd4
Translate lv.yml via GitLocalize (#1171)
Co-authored-by: BONNe <bonne@bonne.id.lv>
2020-02-06 07:44:27 +01:00
tastybento
2b997d46e1 Corrects language for piston push protection.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1162
2020-02-04 13:34:35 -08:00
tastybento
ab89e4835e Fixes island center startx/z correction.
https://github.com/BentoBoxWorld/BentoBox/issues/1169
2020-02-04 12:20:31 -08:00
tastybento
2a4522d7c3 Merge branch 'develop' of https://github.com/BentoBoxWorld/BentoBox.git into develop 2020-02-02 11:54:56 -08:00
Florian CUNY
2e3b9962c8 Fixed "PVP disabled in ..." messages not using world-specific messages.
No matter which dimension the player was in, in some cases, it was telling "PVP disabled in the Overworld".
2020-02-02 11:07:27 +01:00
Florian CUNY
61fde3bceb Made AdminWhyCommand send debug messages to the issuer (if it is a player)
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1126
2020-02-01 23:42:52 +01:00
Florian CUNY
6c5df58e2c Added specific success messages for Island(Re)SetnameCommand
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1164
2020-02-01 17:03:52 +01:00
tastybento
15014c8e01 Delay velocity setting for one tick after entering end portal. 2020-01-31 15:41:47 -08:00
tastybento
56fb7391da Toggle priority of tree listener to wait for other events to occur. 2020-01-31 15:41:23 -08:00
Florian CUNY
8630c326a5
Credited CZghost and added flag in Czech translation 2020-01-31 14:16:23 +01:00
tastybento
8ef9312c83 Czech translation. Credit @Polda18 2020-01-30 10:19:35 -08:00
tastybento
07706d78e1 Enables tp commands to work from console.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1158
2020-01-30 10:12:31 -08:00
Florian CUNY
a37df2325b
Added WorldEdit to the softdependencies
Fixes #1152
2020-01-27 07:56:58 +01:00
Florian CUNY
c0a7b89722 Release 1.11.0 2020-01-26 13:46:46 +01:00
Florian CUNY
64fbbf8815 Fixed typos in config comments 2020-01-25 09:37:29 +01:00
tastybento
6e81af47b4 Adds explicit permissions to team commands (#1146)
https://github.com/BentoBoxWorld/BentoBox/issues/1144

Also fixes a bug where the untrust was using the coop perm.

Co-authored-by: Florian CUNY <poslovitch@bentobox.world>
2020-01-25 09:12:12 +01:00
Florian CUNY
093373550d Fixed tests (again) for IslandTeamInviteAcceptCommand 2020-01-25 08:45:06 +01:00
Florian CUNY
1bcb12a51f Fixed tests for IslandTeamInviteAcceptCommand 2020-01-24 21:56:18 +01:00
Florian CUNY
7e17474e83 Fixed the island untrust command not using the trust permission
It was using the coop permission instead
2020-01-24 21:19:13 +01:00
Florian CUNY
3b0f023fac Fixed subcommands not inheriting permissions from parent commands (mostly admin commands) 2020-01-24 21:18:33 +01:00
Florian CUNY
3147357bad Added an optional argument to AdminTeleportCommand to teleport another player
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1120
2020-01-24 19:34:47 +01:00
Florian CUNY
12f483663c Added 1.15.2 to the compatible versions
https://github.com/BentoBoxWorld/BentoBox/issues/1150
2020-01-24 14:41:26 +01:00
tastybento
5ab5954f47
Postgres implementation (#1142)
* WIP for https://github.com/BentoBoxWorld/BentoBox/issues/1093

* JSON based PostGresql

* Completes PostgreSQL suport

* Changed Postgres connector comments

* Put back rest of Postgres jdbc URL

* Update PostgreSQLDatabaseHandler.java
2020-01-23 07:56:30 -08:00
tastybento
ac850907cc Zero fall velocity when going through end portals
https://github.com/BentoBoxWorld/BentoBox/issues/1118
2020-01-22 14:43:32 -08:00
tastybento
6ac51453a0 Removed Postgres DB from config until it is implemented.
Put minimum version numbers into config for databases.
https://github.com/BentoBoxWorld/BentoBox/issues/1149
2020-01-21 13:29:51 -08:00
tastybento
97f7b2c563 Deleted islands could not be used as new islands
Added test class for DefaultNewIslandLocationStrategy to cover the
cases.

https://github.com/BentoBoxWorld/BentoBox/issues/1147
2020-01-21 13:15:55 -08:00
AFGAME
5b8d854334 Updated French locale
Implements https://github.com/BentoBoxWorld/BentoBox/issues/639
Seemingly used a lot of machine translation, but it's a good start.
2020-01-19 11:03:18 +01:00
tastybento
a5503851c3 Change to island range perm check on ownership change.
If owner has no perms, then this check will not be done and the range
will not change. Previously, it was always reseting to the default
range.

https://github.com/BentoBoxWorld/BentoBox/issues/1145
2020-01-18 22:36:38 -08:00
tastybento
ea08bab01d Typo fix DYING -> DYEING 2020-01-18 08:50:58 -08:00
tastybento
e6e5c901b7 Strengthens to error when not loading addon for API reasons.
Relates to
2f35f1145d
2020-01-18 08:46:30 -08:00
tastybento
013e17d73a Removed unused import. 2020-01-18 08:43:47 -08:00
Florian CUNY
2f35f1145d Made on-the-fly addon incompatibility detection logging as warning instead of default 2020-01-18 13:53:34 +01:00
Florian CUNY
d8d9061f84 Added 'api-version' parameter to addon.yml to allow specifying a minimum required BentoBox version
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1131
API: added InvalidAddonDescriptionException, AddonDescription#getApiVersion()
2020-01-18 13:52:26 +01:00
Florian CUNY
d8dda75ca5 Improved '/bentobox version' gameworld layout to convey information through color-stripped text
The previous design had a flaw: if the output was pasted as text, we would not be able to tell if the dimension was disabled or if islands were disabled in that dimension.
2020-01-18 11:41:31 +01:00
Florian CUNY
01df19c424 Slightly improved the Blueprint Bundle Editor panel
Added icons for world's dimensions, and made the "separator" glass panes have an empty name instead of a '-'.
2020-01-18 11:24:50 +01:00
Florian CUNY
44354175e4 Moved world dimensions names to 'general.worlds' in en-US 2020-01-18 11:21:11 +01:00
Florian CUNY
0559a86e8d Implemented optional argument to AdminGetrankCommand to specify which island to perform the check on.
Implements https://github.com/BentoBoxWorld/BentoBox/issues/1106
Updated en-US + added 'general.errors.player-is-not-owner' message.
2020-01-18 10:47:08 +01:00
Florian CUNY
abf5e1f071 Fixed failing test in JoinLeaveListener (erroneous) 2020-01-18 09:58:16 +01:00
Florian CUNY
e17056376a Fixed erroring tests 2020-01-18 09:52:02 +01:00
Florian CUNY
0ffa1ab86a Improved help for admin resets commands
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1140
2020-01-17 13:48:42 +01:00
BONNe
2192e3fa4e Add new IslandEvent: IslandProtectionRangeChange (#1109)
* Add new IslandEvent: IslandProtectionRangeChange.

This event is fired when island protection range is updated. It contains new and old protection range values.
Event implements cancellable as other IslandEvent, but cancelling (or changing event values) is not implemented.

* Fix extended class.
IslandProtectionRangeChangeEvent should extend IslandBaseEvent.
2020-01-17 13:42:53 +01:00