Commit Graph

1025 Commits

Author SHA1 Message Date
tastybento
98264f03d0 Fixed armor stand moving by rods.
https://github.com/BentoBoxWorld/bentobox/issues/350

Added test cases, but more to add.
2018-11-20 14:29:56 -08:00
tastybento
ffd1af5867 Removes coop on logout of cooped player or server shutdown.
https://github.com/BentoBoxWorld/bentobox/issues/335
2018-11-20 12:52:12 -08:00
Florian CUNY
49f9784b61 Moved addon exception to exceptions package and deprecated old ones 2018-11-19 09:02:39 +01:00
Florian CUNY
a5cb49553a Removed de-DE and zh-CN locales: they are outdated
They basically come from a very, very, very early version (from the time where BentoBox was still known as BSkyBlock).

I removed them, because they're basically of no use.
2018-11-19 08:09:43 +01:00
Florian CUNY
64c9d549d8 Replaced %bsb_plugin_name% by BentoBox
This "placeholder" actually never existed, it just got put in the locale files in anticipation of the placeholders implementation
2018-11-19 08:07:53 +01:00
tastybento
e26d801cf2 Removed deprecated method and replaced with getOwner(). 2018-11-18 19:03:51 -08:00
tastybento
de45872c07 Creates generic IslandEvent that has the reason as an enum
Adds JavaDocs on the event reasons and when they are called.
Completed island Lock event. As locking is a rank and not a binary the
UNLOCK event is not really useful and can probably be removed.

https://github.com/BentoBoxWorld/bentobox/issues/346
2018-11-18 19:03:27 -08:00
Florian CUNY
0322ffe0ce Deprecated #getTeamLeader(...) methods
These have been deprecated in CompositeCommand, IslandCache and IslandsManager and they got replaced by #getOwner(...).
2018-11-18 11:12:54 +01:00
Florian CUNY
f0218d9f2a Added LocalesManager#get(String)
This is something I did in this commit 926473cd07 and I'm putting it back in develop branch
2018-11-17 11:48:08 +01:00
tastybento
d9528c6c9b Fix for PVP flame damage.
https://github.com/BentoBoxWorld/bentobox/issues/336
2018-11-11 17:39:05 -08:00
Florian CUNY
343ee51647 Preventively save the player to the database when creating a new island
Related to 68873e033f
2018-11-11 10:46:43 +01:00
Florian CUNY
c3ca82e12a Fixed the ENDER_CHEST flag not using the Notifier 2018-11-11 10:37:08 +01:00
Florian CUNY
23af6e7012 Few fixes to COARSE_DIRT_TILLING flag
#337
2018-11-11 10:22:18 +01:00
tastybento
2ca00969e7 Fills in protections.
Shulker box done. Pots done. Pufferfish are considered Monsters, not
animals because they can hurt visitors. Other fish protected. Bonemeal
prevented (place blocks). Name tags done.

https://github.com/BentoBoxWorld/bentobox/issues/336
2018-11-10 21:03:04 -08:00
tastybento
c2e9490bb0 Added min/max options for cycle click and restricted lock flag.
https://github.com/BentoBoxWorld/bentobox/issues/332
2018-11-10 19:28:46 -08:00
tastybento
c438f4a45d Fixes teleporting back from standard nether to island. 2018-11-10 11:57:46 -08:00
tastybento
37aa2e06f9 Protection checks not correctly taking into account std Nether and End
https://github.com/BentoBoxWorld/bentobox/issues/331

The isIslandNether(), isNether(), etc. methods need to check the
environment of the world.
2018-11-10 11:45:18 -08:00
tastybento
3b36ab8814 Fixes spaming in console when teleporting to non-BB worlds.
https://github.com/BentoBoxWorld/bentobox/issues/310

Also added comment to @return value in Addon API
2018-11-10 10:22:05 -08:00
tastybento
68873e033f Added defensive code to handle island adding to grid.
When an island cannot be added to the grid, it should show some helpful
console error.

Related to https://github.com/BentoBoxWorld/bentobox/issues/326
2018-11-10 10:04:37 -08:00
Florian CUNY
161975adde Fixed Multiverse registration throwing NPE on startup 2018-11-10 18:41:31 +01:00
Florian CUNY
6df262a14b Added COARSE_DIRT_TILLING World Setting flag 2018-11-10 14:31:36 +01:00
Florian CUNY
f8d1626ba5 Added Multiverse-Core Hook 2018-11-10 11:04:48 +01:00
Florian CUNY
3f62e2f367 Slight optimization in PlaceholdersManager 2018-11-10 11:04:10 +01:00
Florian CUNY
571e734aa9 Removed unused imports in PlaceholderAPIHook 2018-11-10 10:36:52 +01:00
Florian CUNY
d507efbe77 Fixed obsidian scooping replacing whole bucket stack with lava buckets
Fixes #338.
2018-11-10 10:04:10 +01:00
Florian CUNY
10270846b2 Improved BentoBox#isLoaded() javadoc 2018-11-10 10:03:15 +01:00
tastybento
74950b7a5d Fix for pasting double chests in certain orientations.
https://github.com/BentoBoxWorld/bentobox/issues/326

Error was that double chests get pasted in two single blocks but the
full inventory is stored for each block. This code just ignores any
inventory slots greater than what the chest can handle.
2018-11-04 09:16:55 -08:00
Florian CUNY
09905ab018 Renamed AbstractFlagListener to FlagListener 2018-11-04 16:40:20 +01:00
Florian CUNY
16329d9372 Fixed NoClassDefFoundError when loading PlaceholderAPI hook
#322
2018-11-04 11:25:14 +01:00
tastybento
c7f253fddd Add check for PlaceholderAPI before hooking into it.
https://github.com/BentoBoxWorld/bentobox/issues/322
2018-11-03 18:51:01 -07:00
Florian CUNY
3e284b90eb Fixed protection listeners not being registered to Bukkit
Basically removed the "plugin loaded" limitation.
2018-11-03 11:31:08 +01:00
Florian CUNY
6108277b3c Removed unused AbstractFlagListener#getWhy() 2018-11-03 11:22:49 +01:00
Florian CUNY
dcd8a4ea28 Added some javadoc in PlaceholdersManager 2018-11-02 15:44:36 +01:00
Florian CUNY
1571d8d033 Added BentoBox#getPlaceholdersManager() 2018-11-02 15:44:25 +01:00
Florian CUNY
7ef78d6ab1 Allow Hook#getFailureCause() to return null 2018-11-02 15:37:57 +01:00
Florian CUNY
856dcb8b3d Added PlaceholderAPI support 🎉 2018-11-02 15:37:24 +01:00
Florian CUNY
480d3f78d9 Added world condition in IslandsManager#userIsOnIsland
The world parameter was previously unused.
I also updated javadocs ; as well as the tests. Everything seems to be working fine.
2018-11-01 16:34:19 +01:00
Florian CUNY
c3d57acc11 Added convenience methods to VaultHook
VaultHook#getBalance(User) : double ;
VaultHook#withdraw(User, double) : EconomyResponse ;
VaultHook#deposit(User, double) : EconomyResponse
VaultHook#has(User, double) : boolean.

And made use of these nice new methods where it was needed.
2018-10-31 15:35:40 +01:00
tastybento
a6357ed157 Uses default enum values if invalid one used in a config. 2018-10-31 00:07:41 -07:00
tastybento
935704d7dd Added safety checking to config.yml
If there is an enum setting, e.g. FLATFILE instead of YAML in a config,
the config will not load and the resulting object will be null. This
adds a check to the main config.yml load and disables the plugin if
there is a problem.
2018-10-30 15:16:13 -07:00
tastybento
49fa079f13 WIP fix for comment version number 2018-10-30 14:30:07 -07:00
tastybento
d9783c8d73 Fix for issue where team members are sometimes not recognized.
https://github.com/BentoBoxWorld/bentobox/issues/318
2018-10-30 13:21:27 -07:00
Florian CUNY
0346ea8a23 Added resetting money when joining/leaving island (untested) 2018-10-30 18:22:26 +01:00
Florian CUNY
b1320906b0 Update default config.yml 2018-10-30 17:59:11 +01:00
Florian CUNY
538a34b0bd Added support for the "experimental" tag from ConfigEntry
Watch out ! "/!\ This feature is experimental and might not work as expected or might not work at all."
2018-10-30 17:58:50 +01:00
Florian CUNY
86b1d09653 Settings: renamed ""island.customranks" to "island.custom-ranks" and made it experimental 2018-10-30 17:56:28 +01:00
Florian CUNY
0c75e556b2 Implemented Vault support 🎉 2018-10-30 15:35:27 +01:00
Florian CUNY
c236e1a3bc Added Hook#getFailureCause() and fixed NPE in HooksManager 2018-10-30 15:33:16 +01:00
Florian CUNY
8fe4b16805 Finished Hooks API 2018-10-30 14:53:19 +01:00
Florian CUNY
66bbed48c6 Removed AddonInterface (useless) and moved methods to Addon 2018-10-30 09:27:59 +01:00
Florian CUNY
b9a86fd899 Made Hook an abstract class rather than an interface 2018-10-30 09:24:36 +01:00
Florian CUNY
493a525775 Fixed JSONDatabaseHandler to avoid memory leak
Thanks Sonarcloud ^^
2018-10-29 21:39:48 +01:00
Florian CUNY
2dd8fcb13c Avoid catching Error (dangerous behaviour) 2018-10-29 21:29:43 +01:00
Florian CUNY
5cdfe690f4 Implemented basic Hooks API
WIP
2018-10-29 21:29:07 +01:00
Florian CUNY
5b97d16a2d Made each DatabaseConnectors's constructors package-private 2018-10-29 20:55:18 +01:00
Florian CUNY
bf506a49b2 Fixed some code smells 2018-10-28 17:15:13 +01:00
Florian CUNY
37cb96f586 Fixed [label] text variable being replaced by "invite" in the invite notification
Fixes #315
2018-10-28 17:03:42 +01:00
Florian CUNY
7b2478cf33 Updated databaseType config comment 2018-10-28 16:51:51 +01:00
Florian CUNY
e8ba1805a5 Renamed FLATFILE databasetype to YAML 2018-10-28 16:51:38 +01:00
Florian CUNY
db5ac2d0e5 Added JSON (flatfile) database type 2018-10-28 16:34:43 +01:00
Florian CUNY
10000b71f6 Little optimization for AbstractJSONDatabaseHandler#getGson() 2018-10-28 16:02:54 +01:00
Florian CUNY
4f5009fe0e Moved DATABASE_FOLDER_NAME in AbstractDatabaseHandler 2018-10-28 16:02:23 +01:00
Florian CUNY
04e4f9a4aa Moved TypeAdapters and AbstractJSONDatabaseHandler in database/json package 2018-10-28 15:38:57 +01:00
Florian CUNY
dcba17f569 Made all DatabaseHandlers' constructors package-private 2018-10-28 15:34:02 +01:00
Florian CUNY
77258b2770 Added AbstractJSONDatabaseHandler<T> 2018-10-28 15:28:43 +01:00
Florian CUNY
f0c4cb710c Removed DatabaseConnector#loadYamlFile and DatabaseConnector#saveYamlFile
It was only used by FlatFileDatabaseHandler and therefore was useless for other DatabaseHandlers
2018-10-28 15:01:17 +01:00
Florian CUNY
0dc9de9c37 Fixed broken file renaming
Well... Hopefully it'll fix it
2018-10-28 14:33:36 +01:00
Florian CUNY
49c7d6b646 Renamed MONGO -> MONGODB in DatabaseType 2018-10-28 14:15:29 +01:00
Florian CUNY
2f7b8a6764 Simplified AddonsManager#sortAddons() 2018-10-28 14:09:35 +01:00
Florian CUNY
12d1909a22 Bunch of fixes to the AddonsManager
Renamed loader list to loaders.
Removed #loadAddonsFromFile().
Fixed the error handling when enabling an addon.
Fixed #disableAddons() disabling not-enabled addons.
Renamed #setLoader() into #setLoaders()
2018-10-28 13:42:13 +01:00
Florian CUNY
b87416d030 Removed YmlConfiguration and YmlCommentParser as they weren't used 2018-10-28 11:43:55 +01:00
Florian CUNY
b4e3079cf9 Removed unused imports in Util 2018-10-28 11:36:47 +01:00
Florian CUNY
3e34b4d11d Added a bit more logging in AddonsManager 2018-10-28 11:36:36 +01:00
Florian CUNY
6dd02a15b7 Made use of Addon.State
Fixes #281
Replaced Addon#setEnabled(boolean) with Addon#setState(Addon.State).

Now, if an exception gets thrown while enabling an addon, it'll automatically stop enabling it and set its state to "INCOMPATIBLE" or "ERROR". These values could later be get to be displayed in the version command.
2018-10-28 11:12:00 +01:00
Florian CUNY
75e5d29934 Replaced IslandTeamSetownerCommand label to "setowner" instead of "setleader" 2018-10-28 10:28:23 +01:00
Florian CUNY
89700c82cc Renamed TeamEvent.TeamSetOwnerEvent to TeamEvent.TeamSetownerEvent 2018-10-28 10:27:22 +01:00
Florian CUNY
14a794a5b1 Lowercased some command class names to better fit how they are actually working in game 2018-10-28 10:27:01 +01:00
Florian CUNY
14a3ed6792 Renamed TeamEvent.TeamMakeLeaderEvent to TeamEvent.TeamSetOwnerEvent 2018-10-28 10:19:55 +01:00
Florian CUNY
13c483e5eb Renamed AdminTeamMakeLeaderCommand to AdminTeamSetOwnerCommand 2018-10-28 10:19:14 +01:00
Florian CUNY
20b6c4a7cb Fixed tests and commands relying on previously broken API
Mistakenly pushed the previous changes on develop before committing these fixes.
2018-10-27 16:52:07 +02:00
Florian CUNY
a071f97538 Fixed island protection range not being updated after a login
Fixes #256.
2018-10-27 16:47:55 +02:00
Florian CUNY
f27b8aa003 More Javadoc fixes in IslandsManager & use the new Addon#getPermissionPrefix 2018-10-27 16:43:17 +02:00
Florian CUNY
b6230f2bdf ⚠️ removed CompositeCommand#setPermissionPrefix(String)
The permissionPrefix is now inherited from the addon's.
2018-10-27 16:42:29 +02:00
Florian CUNY
d9a15ceedd Added Addon#getPermissionPrefix 2018-10-27 16:41:24 +02:00
Florian CUNY
b286bb3296 ⚠️ Various changes to IslandsManager
Fixed some Javadoc.
Renamed #getCount() to #getIslandCount().
Renamed #makeLeader() methods to #setOwner().
Removed the permPrefix parameter from #setOwner() methods.
2018-10-27 16:32:06 +02:00
Florian CUNY
8b821e9f47 Fixed paramters -> parameters in en-US locale 2018-10-27 15:43:36 +02:00
Florian CUNY
3df4d4be30 Updated default config.yml 2018-10-25 10:30:27 +02:00
Florian CUNY
ec2793e6f8 Made IslandSethomeCommand a ConfirmableCommand
#237

It adds a bunch of WorldSettings and updates the en-US locale as well!
2018-10-25 09:43:36 +02:00
Florian CUNY
09ce51259d Fixed a mistake in IWM javadoc 2018-10-25 09:42:50 +02:00
Florian CUNY
5391544e9c Fixed "island.maxhomes" permission not being appended with the addon's permission prefix
This may help for #256.
2018-10-20 11:45:41 +02:00
Florian CUNY
95bfab916e Replaced Util#getPermValue(Player, String, int) with User#getPermissionValue(String, int) 2018-10-20 11:32:42 +02:00
Florian CUNY
3102195156 Fixed a bunch of code smells (again) 2018-10-20 10:59:19 +02:00
Florian CUNY
85ea4af1ad Readded User#spawnParticle(Particle, Particle.DustOptions, int, int, int) 2018-10-20 10:37:31 +02:00
Florian CUNY
7248fb3e14 Fixed some code smells 2018-10-14 10:09:04 +02:00
Florian CUNY
cae214f856 Added schem clipboard selection display using particles 2018-10-14 09:51:49 +02:00
Florian CUNY
3d763bddad Made User#spawnParticle use double instead of int 2018-10-14 09:50:15 +02:00
Florian CUNY
98487512f9 Fixed typo in AdminRangeDisplayCommand 2018-10-14 09:49:45 +02:00
Florian CUNY
42ffe34796
Rewrote schem main command parameters
#305
2018-10-14 08:12:30 +02:00
Florian CUNY
711db68448
Merge pull request #304 from BentoBoxWorld/why
Why admin command
2018-10-14 07:35:14 +02:00
tastybento
ebeaa650d9 Adds the addon name to the world list for version.
https://github.com/BentoBoxWorld/bentobox/issues/285
2018-10-14 12:22:27 +09:00