Commit Graph

1509 Commits

Author SHA1 Message Date
tastybento
5755a19e3d Fix name too short and long locale reference
https://github.com/BentoBoxWorld/BentoBox/issues/508
2019-02-01 17:57:04 -08:00
tastybento
16e57dc757 Adds Residence plugin as a loadbefore
Work around for https://github.com/BentoBoxWorld/BentoBox/issues/503
2019-01-30 22:39:04 -08:00
tastybento
95efc7a66c Put in null check for item meta (missed one)
https://github.com/BentoBoxWorld/BentoBox/issues/492
2019-01-30 17:38:16 -08:00
tastybento
791c8b1de1 Put in null checks for item meta
https://github.com/BentoBoxWorld/BentoBox/issues/492
2019-01-30 17:37:16 -08:00
tastybento
8dbf7ec231 Admin team add command was not adding players correctly.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/506

Also, admin unregister was blocking unregistration of team players, but
that is an artificial constraint, so I enabled it. Without it, it would
not be possible to correct weird team issues like this one after they
happen.
2019-01-30 17:27:53 -08:00
tastybento
804d0f9878 Quarantines duplicate islands so they don't load continuously
https://github.com/BentoBoxWorld/BentoBox/issues/505
2019-01-30 16:46:51 -08:00
tastybento
271d6aa5e9 Adds json suffix to JSON database files
https://github.com/BentoBoxWorld/BentoBox/issues/502
2019-01-29 13:43:34 -08:00
Florian CUNY
7b79755d92
Merge pull request #496 from barpec12/master
Add possibility to load schems with non-lowercase names.
2019-01-29 06:12:35 +01:00
tastybento
46cc901c23 Adds support for ItemStack storage in non-YAML databases.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/501
2019-01-28 18:29:17 -08:00
barpec12
c5c2ae5fc1 Change imports 2019-01-28 13:47:55 +01:00
barpec12
c6b4a10634 Add possibility to load schems with non-lowercase names. 2019-01-28 11:11:07 +01:00
tastybento
8cddb1e69f Set user for potion splash event
https://github.com/BentoBoxWorld/BentoBox/issues/493
2019-01-27 19:59:00 -08:00
tastybento
04fa7fab80 Fixes issue with missing user assignment of potion thrown
Adds test for throwing potion class.

https://github.com/BentoBoxWorld/BentoBox/issues/493
2019-01-27 19:51:03 -08:00
tastybento
0280303058 Revert to fix Java 11 compatibility.
dfe7fc27e5 (commitcomment-32081178)
2019-01-27 09:17:54 -08:00
tastybento
873c12fe70 Revert "Fixed minor code smell in AddonClassLoader"
This reverts commit a392dbc8b3.
2019-01-27 09:08:41 -08:00
Florian CUNY
6fdf11f91e Version 1.2.0 🎉 2019-01-27 10:24:01 +01:00
Florian CUNY
9afb5c6382 Fixed HooksManager logging hook failures even if the target plugin is not available 2019-01-27 10:22:04 +01:00
Florian CUNY
aea057317b Added option to apply the reset cooldown when the player creates an island for the first time
Closes #456.
2019-01-27 10:10:25 +01:00
Florian CUNY
9551560593 Moved all command cooldown settings to "island.cooldown.time" node 2019-01-27 10:04:13 +01:00
Florian CUNY
30487beffc Improved some config comments 2019-01-27 09:59:31 +01:00
Florian CUNY
2a66598d2f Fixed bugs/vulnerabilities in YamlDatabaseConnector#removeStringFromFile(File) 2019-01-27 09:43:14 +01:00
Florian CUNY
5334caf7b5 Fixed AdminGetrankCommand for island members
Fixes #485
2019-01-27 09:32:16 +01:00
Florian CUNY
1c3ccba3ae Fixed probable NPEs in IslandsManager and IslandCache 2019-01-27 09:31:35 +01:00
Florian CUNY
e5170fc4b5 Updated since tags 2019-01-27 09:23:23 +01:00
tastybento
24806019b8 Addresses review issues. 2019-01-26 22:07:26 -08:00
tastybento
5bf6264e95 Fix since tag in GameModeAddon 2019-01-26 16:37:13 -08:00
tastybento
9968a8e083 Fixed Multiverse issues
Multiverse hookin wasn't working.
2019-01-26 16:33:59 -08:00
tastybento
daef788e65 Merge remote-tracking branch 'origin/develop' into startup 2019-01-26 15:33:35 -08:00
tastybento
db932dd836 Fix for LogEntry serialization.
https://github.com/BentoBoxWorld/BentoBox/issues/486

Includes an autofixer for corrupted files and test for the adapter.

LogEntry was changed to just store strings instead of arbitrary types.
Unless the log serializer were to store hints as to what type of data
was being stored, it is impossible to deseralize. To make it all
simpler, we just store strings. If the UUIDs need to be converted back
to players are some point, that can be done based on the type of the log
stored.
2019-01-26 15:32:52 -08:00
tastybento
5b2ad730df Adds getDefaultWorldGenerator method to BentoBox
This may help with Multiverse compatibility.
May fix https://github.com/BentoBoxWorld/BentoBox/issues/431

Adding as PR because GameMode addons will need changing to new
Interface.
2019-01-26 13:22:07 -08:00
tastybento
4e81baf45e Flags are requested from FlagManager not statically
Previous the Flags class was being used to grab all flags. This is wrong
because it may not contain all the flags that may exists, for example
ones registered by other addons. The correct way is to request flags
using the getFlag() method in the flags manager class.
This change was to prepare for the time when addons will register their
own flags with BentoBox.
2019-01-26 09:39:34 -08:00
Florian CUNY
afdfc285cc Fixed LogEntryListAdapter
Fixes #486
2019-01-26 16:05:55 +01:00
Florian CUNY
b07d7ba3af Load hooks before loading addons
Fixes #489.
2019-01-26 15:29:18 +01:00
Florian CUNY
6155a8cf80 Version 1.1.1-SNAPSHOT (develop)
Rather than releasing a minor version, we will release a bug-fix focused one.
2019-01-26 15:23:46 +01:00
tastybento
5f49e2b17b Runs /spawn command for player if no safe teleport spot
https://github.com/BentoBoxWorld/BentoBox/issues/479
2019-01-24 08:30:43 -08:00
Florian CUNY
f5f345a1ab Documented Flag.Type 2019-01-23 19:58:31 +01:00
Florian CUNY
ae246435ba Temporarily removed Expose annotation to 'history'
Should fix #482
2019-01-23 19:29:42 +01:00
Florian CUNY
0789ec0969
IslandBanCommand: added "banned", "bans" aliases 2019-01-23 15:40:25 +01:00
Florian CUNY
29d0cb6eb3
IslandCreateCommand: add "new" alias 2019-01-23 15:39:41 +01:00
tastybento
9e0772367a Fixes NPE caused by island delete of a null island
If a player is invited and has no island, the accept command was still
trying to delete it and causing an NPE.

Also, the island save was being done on the old island, not the new team
island.
https://github.com/BentoBoxWorld/BentoBox/issues/481
2019-01-22 12:53:33 -08:00
Florian CUNY
4958304aa5 Added "logs.clean-super-flat-chunks" to config
Closes #483
2019-01-22 14:39:44 +01:00
Florian CUNY
77f9f4869b Fixed typo in previous commit 2019-01-22 14:28:10 +01:00
Florian CUNY
eb8f25f319 Improved documentation in CleanSuperFlatListener 2019-01-22 14:26:00 +01:00
Florian CUNY
9af389ce1d Made BentoBox#logWarning(String) evaluating lazily the parameter 2019-01-22 14:18:06 +01:00
Florian CUNY
bfad54b7e3 Made CleanSuperFlat log regenerating as INFO instead of WARN
#483
2019-01-22 14:17:43 +01:00
tastybento
468ad4e83d Fix cycle click nullables 2019-01-20 10:04:32 -08:00
Florian CUNY
6cdde8ca5f Forgot to update javadoc 2019-01-20 18:32:12 +01:00
Florian CUNY
85119a0b06 Fixed some code smells 2019-01-20 18:21:46 +01:00
Florian CUNY
bb188cb8ff Release 1.1 2019-01-20 10:10:29 +01:00
Florian CUNY
819096eba9 Fixed usage of deprecated methods in CycleClicks and fixed a probable NPE 2019-01-20 09:47:15 +01:00
Florian CUNY
113335e60a Fixed code smells 2019-01-20 09:46:00 +01:00
Florian CUNY
5cbbbabcbf Fixed ejected players being stuck in SPECTATOR gamemode
If the player don't have an island, we try to teleport him to the "gamemode spawn".
If the "gamemode spawn" doesn't exist, we teleport it the hard way to the world's programmatic spawn and switch him back to the default gamemode.
That may not be the correct handling there, but at least it's working and it should prevent most of the cases.

Fixes #382.
2019-01-20 09:33:28 +01:00
Florian CUNY
dc61f06554 Added IslandSpawnCommand
#382
2019-01-20 09:22:46 +01:00
Florian CUNY
7525bc05e2 Added IslandsManager#spawnTeleport() and made #getSpawn(World) return an optional 2019-01-20 09:22:26 +01:00
Florian CUNY
7cbb0d6a87 Added PlayersManager#getPlayers()
#392
2019-01-20 09:01:38 +01:00
Florian CUNY
aad36c100f Added IslandsManager#getIslands()
#392
2019-01-20 08:57:19 +01:00
Florian CUNY
3f5736f555 Improved javadoc 2019-01-20 08:52:57 +01:00
tastybento
95b40841ba Adds all worlds to map in IWM
Fixes Multiverse world registration
2019-01-19 11:22:26 -08:00
tastybento
2df5d2a916 Added FlagAdapterTest and fixed deprecation 2019-01-19 08:30:42 -08:00
Florian CUNY
5ce8362fd5 Added addons metrics chart + added AddonDescription#isMetrics so that addons need to explicitely opt in
Deprecated AddonDescription.Builder#Builder(String, String) and AddonDescription.Builder#version(String).
Added AddonDescription.Builder#Builder(String, String, String).
Updated tests
2019-01-18 22:06:06 +01:00
Florian CUNY
0f5b5b5693 Fixed IslandResetCommand tests 2019-01-18 21:24:46 +01:00
Florian CUNY
a29bcd457e Updated FlagSerializers to use FlagsManager#getFlag(String) 2019-01-18 17:40:55 +01:00
Florian CUNY
c5f561c816 Reduced cognitive complexity in IslandResetCommand 2019-01-18 17:40:23 +01:00
Florian CUNY
755433e108 Added islands created count metrics
Made BStats class public
Added BentoBox#getMetrics()
2019-01-18 15:12:06 +01:00
Florian CUNY
7153378f5e Made LockAndBanListener extend FlagListener 2019-01-18 15:00:05 +01:00
Florian CUNY
a392dbc8b3 Fixed minor code smell in AddonClassLoader 2019-01-18 14:59:38 +01:00
Florian CUNY
dfe7fc27e5 Fixed code smell in AddonClassLoader 2019-01-18 12:32:32 +01:00
Florian CUNY
4d9a65151f Fixed code smells & added some more NonNull/Nullable annotations 2019-01-18 12:10:47 +01:00
Florian CUNY
d57f9544f3 Added NonNull/Nullable annotations to IslandsManager and IslandCache 2019-01-18 11:33:29 +01:00
Florian CUNY
d86b605057 Added Flags#POTION_THROWING
#468
2019-01-18 11:08:53 +01:00
Florian CUNY
3f9c917a2f Added IslandWorldManager#getWorlds()
#470
2019-01-17 20:49:54 +01:00
tastybento
ddb3fd63e6 Fix code smells. 2019-01-16 13:43:49 -08:00
Florian CUNY
9497066f44
Merge pull request #471 from BentoBoxWorld/locale-override
Adds ability for gamemodes to override locale references
2019-01-16 19:03:25 +01:00
Florian CUNY
eeda960d42
Use #getEnabledAddons() in AddonsManager#getGameModeAddons() 2019-01-16 18:53:11 +01:00
Florian CUNY
f381301b25
Added javadoc tags and NonNull/Nullable in GameModeAddon 2019-01-16 18:51:37 +01:00
tastybento
7d08a0db5a Enable main player and admin command declaration
See https://github.com/BentoBoxWorld/BentoBox/issues/448
2019-01-15 19:33:53 -08:00
tastybento
0636532bb4 Fixed code and tests.
Test failures in the User test were right - I had a bug in my code.
2019-01-15 15:23:17 -08:00
tastybento
e56928bef1 Adds ability for gamemodes to override locale references
The default BentoBox locale text is geared towards island games. When
writing the SkyGrid addon I am using the standard protection flags, but
I need to reference a "protection area" instead of an "island". This
enables me to do that by having the same reference but prefixed in the
locale file by the name of the addon (in lower case), as written in the
addon's addon.yml.
2019-01-15 13:23:36 -08:00
tastybento
3a9e969a86 Added JavaDoc comments 2019-01-15 11:47:10 -08:00
tastybento
2fa60d0e2d Added option to not paste a schem when creating a new island 2019-01-15 11:46:09 -08:00
tastybento
b48cc89f73 Added flag default setting for specific world. 2019-01-15 11:45:49 -08:00
tastybento
61481dee44 Added null protection against null world values 2019-01-15 08:33:14 -08:00
Florian CUNY
62d69b1022 Added NonNull/Nullable annotations to FlagListener, deprecated FlagListener#id(String), added FlagListener#getFlag(String) 2019-01-14 15:49:04 +01:00
Florian CUNY
80263d9751 Removed commented-out code in Clipboard 2019-01-14 15:48:16 +01:00
Florian CUNY
7fd6237280
Added comments to DeleteIslandChunks
I've also added a sonar suppresswarning to avoid the "issues" when calling regenerateChunk
2019-01-14 15:15:55 +01:00
tastybento
044c67ea28 Fixes bug with concurrent saving of files to the database.
Implemented a FIFO to queue async save requests for YAML and MySQL.

The assumption is that most database objects will be held in memory
because the ordering of object loading is not handled. That means that
it is theoretically possible to load something on the main thread before
it has been saved in the async thread if you are really quick. So, in
general, you should load objects once and ideally never load them again
unless there's a big span of time in between so the async can finish.
For most situations, this race condition should not occur, but I'm just
warning about it.

Saving on shutdown is not async and takes as long as it takes.

Also added some defensive code to disable the plugin if the database
connection info is wrong and print an error message instead of lots of
errors.

Changed CleanSuperFlatListener to use a LinkedList for its queue.
2019-01-13 22:17:36 -08:00
tastybento
5ed86ea271 Adds defensive code to avoid NPE with hiding clipboard 2019-01-13 15:57:45 -08:00
tastybento
fa8c0ec0c8 Implements async superflat cleaning
Should avoid crashes when there's a lot of cleaning to do.

https://github.com/BentoBoxWorld/BentoBox/issues/431
2019-01-13 15:53:12 -08:00
tastybento
ad3d044e88 Merge branch 'develop' of https://github.com/BentoBoxWorld/bentobox.git into develop 2019-01-13 14:19:31 -08:00
tastybento
96639792b8 Fixed random test failures.
Note: If using the User class in a test, you MUST set the mock plugin object using the User.setPlugin() method otherwise each test will use the wrong plugin object and verifications will not work.
2019-01-13 14:19:23 -08:00
Florian CUNY
8260728e9b Added NonNull/Nullable annotations to CommandsManager 2019-01-13 18:41:38 +01:00
Florian CUNY
a66bc90746 Fixed code smells 2019-01-13 18:27:14 +01:00
Florian CUNY
270e14167e Made IslandTeamInviteAcceptCommand require confirmation
Closes #464.
2019-01-13 17:35:32 +01:00
tastybento
d8eab7e397 Adds deleteID method to MariaDB 2019-01-13 08:14:08 -08:00
Florian CUNY
35883435e5 Merge branch 'develop' into IslandDelete 2019-01-13 10:33:50 +01:00
Florian CUNY
6f4d3aeaed Added some more javadoc 2019-01-13 10:28:49 +01:00
Florian CUNY
9cf63611e4 Added some NonNull/Nullable in database code 2019-01-13 10:27:36 +01:00
Florian CUNY
dc7d5b40f2 Renamed DeletedIslandDO to IslandDeletion 2019-01-13 10:21:06 +01:00
Florian CUNY
0f253c35ef Renamed IslandDeleteManager to IslandDeletionManager 2019-01-13 10:09:35 +01:00
Florian CUNY
165a70aec9 Added MariaDB minimum version in config comment 2019-01-13 10:06:32 +01:00
Florian CUNY
348704f3d9 Added javadoc and updated Settings for MARIADB
@barpec12
2019-01-13 10:05:24 +01:00
tastybento
7854187448 Added async saving to YAML and MYSQL
Both seem to work fine, but probably need more real-world testing.
2019-01-12 18:18:22 -08:00
tastybento
501c3257ed Island delete enhancements
Island deletion is done a few chunks at a time per tick. Current speed
is 5 chunks per tick per world (e.g., 15 chunks per tick if nether and
end islands are used).

Chunks are deleted based on the all-time maximum protection range of the
island. This is because the protection range can grow bigger or smaller
over the island's lifetime. To ensure all possible chunks are erased,
the largest every protection range is remembered and used.

Very large protection ranges will take a long time to fully delete.

Info on islands that are being deleted is stored in the database. If the
server shuts down mid-deletion, deletion will restart when the server
restarts.

While an island is being deleted, new islands cannot occupy that spot
and the spot cannot be reserved by the admin.

In addition, async approaches to island saving and player saving were
removed. Async will be implemented another way.

Now, instead of saving the full island or player database, individual
database entries are saved instead to be more efficient.
2019-01-12 17:12:30 -08:00
tastybento
7a4ca8b48d Fixed JavaDoc error 2019-01-12 17:04:53 -08:00
Florian CUNY
a1b6f97a1a
Merge pull request #460 from barpec12/master
MariaDB 10.2.3+ support.
2019-01-12 22:57:01 +01:00
tastybento
7c1e195eaf Switch to timer-based chunk deletion 2019-01-12 10:31:25 -08:00
Florian CUNY
457b296372 Fixed code smells 2019-01-12 18:29:20 +01:00
Florian CUNY
76d4edd19f Added NonNull/Nullable to FlagsManager; deprecated getFlagById(String)
Added getFlag(String) that will return an optional instead.
2019-01-12 18:03:19 +01:00
Florian CUNY
12619e79db Improved links in LogEntry's javadoc 2019-01-12 18:02:32 +01:00
Florian CUNY
c783fa8e16 Started to add Nullable/NonNull annotations 2019-01-12 17:30:47 +01:00
barpec12
961ca02fa1 MariaDB 10.2.3+ support. 2019-01-10 16:54:11 +01:00
tastybento
b51178518a Fixes admin setowner and info commands for team members
https://github.com/BentoBoxWorld/BentoBox/issues/452
2019-01-07 21:37:37 -08:00
tastybento
cd4f0c2561 Fixes Invincible Visitors Settings GUI bug
https://github.com/BentoBoxWorld/BentoBox/issues/450

Added enhanced test to this class too.
2019-01-07 21:03:02 -08:00
tastybento
8a63bf80f9 Added defensive code to avoid infinite loop
CleanSuperFlat can infinite loop if the generator isn't working.
2019-01-07 20:43:37 -08:00
tastybento
dc8b672286 Added check against duplicate Island UUIDs
May relate to https://github.com/BentoBoxWorld/BentoBox/issues/447
2019-01-07 08:03:38 -08:00
tastybento
acb6cd5650 Added defensive null checking code to DB
Relates to https://github.com/BentoBoxWorld/BentoBox/issues/447
2019-01-07 07:46:59 -08:00
Florian CUNY
9eec14ffb3
Merge pull request #445 from BONNe/patch-1
Unnecessary getPermissionPrefix()
2019-01-07 06:25:57 +01:00
BONNe
dbbfdaea7f
Unnecessary getPermissionPrefix()
Kryniowesegryderiusz <3 in Support noticed that Admin tp command has double bskyblock.bskyblock, and I found reason in code.
This getPermissionPrefix() is not necessary, as setPermission() will also add prefix.
2019-01-06 23:32:15 +02:00
Florian CUNY
fe101a6e01 Added "UNOWNED" log to Island 2019-01-06 11:46:25 +01:00
Florian CUNY
d7fbfdb784 Added Island#setRank(UUID, int) 2019-01-06 11:28:37 +01:00
Florian CUNY
55afa166cd Added some defensive code in some Island's methods 2019-01-06 11:03:32 +01:00
Florian CUNY
9387f65dbf Added IslandBanEvent and IslandUnbanEvent (cancellable) 2019-01-05 10:23:53 +01:00
Florian CUNY
e3574e5ee3 Added AdminSetspawnCommand
#441
2019-01-04 21:33:17 +01:00
Florian CUNY
85fac3112f Improved IslandsManager#setSpawn(Island) + Javadoc
Added some checks to improve the handling.
2019-01-04 21:33:02 +01:00
Florian CUNY
185082f261 Improved Island#isSpawn() and Island#setSpawn() Javadoc + improved handling of Island#setSpawn() and added logging to the Island history 2019-01-04 21:32:21 +01:00
Florian CUNY
c78efb8736 Fixed and improved error handling when loading addons
Fixes #440

* Added Addon#getState()
* Added LOADED in Addon.State
* Added AddonsManager#getLoadedAddons() and AddonsManager#getEnabledAddons()
* Improved the loading addons "workflow"
2019-01-04 11:33:35 +01:00
Florian CUNY
2b0ccb4099 Release 1.0 ( 🎉 ) 2019-01-03 20:53:18 +01:00
Florian CUNY
967ebccae1 Fixed 'banCooldown' config comment 2019-01-03 20:47:54 +01:00
Florian CUNY
ef96a01fc8 Fixed bug with the YAML Database when saving config containing hidden ConfigEntry 2019-01-03 20:45:51 +01:00
Florian CUNY
74a28963b4 Improved the "aborting bentobox enabling" message 2019-01-03 20:35:51 +01:00
Florian CUNY
d2f10d883d Set enableAutoOwnershipTransfer to false 2019-01-03 20:26:26 +01:00
Florian CUNY
81435c57f5 Delete GameWorld.puml 2019-01-03 20:26:10 +01:00
tastybento
d13ae470d5 Removed unused imports. 2019-01-03 10:25:03 -08:00
tastybento
2713f58ac5 Fix to fire Island events after an island is created.
Events were firing too early before the island had been fully pasted
async.
2019-01-03 10:24:50 -08:00
tastybento
8452a080f7 Merge branch 'develop' of https://github.com/BentoBoxWorld/bentobox.git into develop 2019-01-03 09:47:04 -08:00
tastybento
5351b162c5 Moved obsidian scooping to be a world flag in settings 2019-01-03 09:46:56 -08:00
Florian CUNY
000d556c7f Improved the "successfully-loaded" message 2019-01-03 18:12:32 +01:00
Florian CUNY
4b4ee1646e Added '@a' to AdminResetsResetCommand so that we can reset everyone 2019-01-03 17:43:00 +01:00
Florian CUNY
9545c74833 Removed since Javadoc tags 2019-01-03 17:28:18 +01:00
Florian CUNY
a5831947c2 Made automated ownership transfer settings hidden for now 2019-01-03 17:22:20 +01:00
Florian CUNY
4a6a109fa4 Added ConfigEntry#hidden() 2019-01-03 17:22:05 +01:00
Florian CUNY
9f676636e0 Fixed some code smells 2019-01-03 17:09:27 +01:00
Florian CUNY
160749c065 Merge branch 'develop' into 167-automated-island-ownership-transfer 2019-01-03 16:59:13 +01:00
Florian CUNY
2e2c7c69de Removed deprecated classes 2019-01-03 16:51:57 +01:00
Florian CUNY
bde91b7784 Fixed commands being registered with their main label as fallbackPrefix
This has been replaced by "bentobox" or the addon's name.
2019-01-03 16:40:51 +01:00
Florian CUNY
708c014d14 Moved allowObsidianScooping to WorldSettings and renamed ObsidianToLava to ObsidianScoopingListener
#432
2019-01-03 16:30:36 +01:00
Florian CUNY
915cd6f293 Made 'general.rank-command' experimental in config
#432
2019-01-03 16:19:08 +01:00
Florian CUNY
c549d969a4 Removed 'island.custom-ranks' from config
#432
2019-01-03 16:17:01 +01:00
Florian CUNY
369600e4d5 Renamed Island#addToBanList() and Island#removeFromBanList() + added log in them
They respectively got renamed to Island#ban() and Island#unban(). They now require the UUID of an issuer (which can be null, but it's better to provide one)
2019-01-03 15:59:24 +01:00
Florian CUNY
fa3dbc5519 Made LogEntry use the Builder pattern 2019-01-03 13:51:46 +01:00
Florian CUNY
245062b36e Removed the offline message "TODO" in User
Most of it will be handled by the Island history
2019-01-03 13:37:54 +01:00
Florian CUNY
0b62c7cf76 Made LogEntry#data a Map<String, Object> 2019-01-03 13:33:46 +01:00
Florian CUNY
265afaf345 Added history to island and Island#log(LogEntry) 2019-01-03 13:26:20 +01:00
Florian CUNY
a638b09ce3 Added LogEntry and its database adapter 2019-01-03 13:25:52 +01:00
tastybento
96bf67eb19 Added generic reload command for addons to use
This command just runs the onReload method so that individual addons can
reload their stuff.
2019-01-02 15:40:49 -08:00
Florian CUNY
396425a52d Started implementing automated island ownership transfer
#167
2019-01-02 23:02:52 +01:00
Florian CUNY
4ae36ef8e0 Fixed Island#getMemberSet() Javadoc 2019-01-02 23:01:39 +01:00
tastybento
b8312db655 Fixes double home teleport when resetting island. 2019-01-02 10:55:11 -08:00
tastybento
5f193b19f5 Merge remote-tracking branch 'origin/develop' into async-paste2 2019-01-02 10:44:50 -08:00
tastybento
81a0b3290f Adjustment to English locale file for addon reloading
https://github.com/BentoBoxWorld/BentoBox/issues/370
2019-01-02 10:22:39 -08:00
Florian CUNY
be91e137a8 Implemented Addons reloading
Relates (a bit) to #370
2019-01-02 17:49:37 +01:00
Florian CUNY
c7a85c2b5a Fixed AddonDescription to use a valid Builder pattern
AddonDescriptionBuilder has been renamed to AddonDescription.Builder ; and there is no longer public constructors in this class.

This change is obviously API breaking, but it's relatively "internal", so hopefully people didn't use it.
2019-01-02 17:28:11 +01:00
Florian CUNY
30c20216fa Metrics: added islands count line chart 2019-01-02 16:54:58 +01:00
Florian CUNY
6f0912e1d2 Added ITEM_FRAME flag
#391.
2019-01-02 15:29:27 +01:00
Florian CUNY
01b7ace0be Fixed code smells 2019-01-02 14:48:17 +01:00
Florian CUNY
c078d8dce6 Added ban limit (#getBanLimit() in WorldSettings)
Closes #423.

I had some trouble with unit testings, that's why I didn't update them to test the new features :(
2019-01-02 14:37:52 +01:00
Florian CUNY
efd0aba8e8 Improved WorldSettings Javadoc 2019-01-02 13:45:21 +01:00
Florian CUNY
2bef086db4 Improved some config comments in Settings 2019-01-02 13:45:09 +01:00
tastybento
5b6bd72370 Added null checking protection.
This may help if a database is becoming corrupted.
2019-01-01 17:47:25 -08:00
tastybento
f475ebf3d2 Putting the config saving back in. 2019-01-01 14:04:26 -08:00
tastybento
665ad1e0a4 Final touches 2019-01-01 14:01:01 -08:00
Florian CUNY
4a7a4ed7db Improved Javadocs in User 2019-01-01 21:50:20 +01:00
tastybento
d039bf0c10 Merge remote-tracking branch 'origin/develop' into async-paste2 2019-01-01 12:47:57 -08:00
Florian CUNY
3bc36b54c9 Updated default config.yml 2019-01-01 21:00:21 +01:00
Florian CUNY
80fccbab96 Removed general.starting-money from config
#432
2019-01-01 20:54:19 +01:00
tastybento
512fb8e544 2019 baby! 2019-01-01 08:45:11 -08:00
tastybento
0da0d6c6f7 Removed unneeded enum values. Improved const names. 2018-12-31 11:31:35 -08:00
tastybento
2528442d6b Rewrote using state approach to be easier to understand.
Backwards compatible with current schems. New schems required to avoid
torch popping etc. Look for updates to AcidIsland and BSB.
2018-12-31 11:24:24 -08:00
Florian CUNY
5601ffaf8a Added a server compatibility check that ensures BentoBox doesn't get run on incompatible server software / version. 2018-12-31 14:22:57 +01:00
tastybento
38e82ee617 WIP: Enables async-style pasting of schems.
Speed of schem pasting is in the config.yml of BentoBox.

Old schems will work and paste async, but attached blocks, e.g.,
torches, may fall off due to being pasted ticks before the supporting
block is pasted. Newer schems will not have this issue.

Further work is needed to optimize entity pasting.

Known issue: if a player logs out during the pasting, things go wrong
until the next reload. Needs investigation and mitigation.

There's no mitigation against the server shutting down or crashing
mid-paste.
2018-12-30 20:34:50 -08:00
tastybento
c4a5eb2c88 WIP pastes but attachments fall when split across paste boundaries 2018-12-30 18:09:56 -08:00
tastybento
cf0fdf45b9 Merge branch 'develop' into async-paste2 2018-12-30 16:48:54 -08:00
tastybento
597fc082be WIP Added staggered pasting 2018-12-30 14:54:37 -08:00
tastybento
9b478fbef6 Fixed NPE in IslandManager on startup 2018-12-30 14:49:04 -08:00
Florian CUNY
26c65f9b54 Moved the admin resets-related commands under their own node
Preparing #353.

AdminClearresetsallCommand is deprecated with no current alternative right now.
2018-12-29 10:52:13 +01:00
Florian CUNY
a17d946349 Fixed PlayersManager#setResets(World, UUID, int) Javadoc. 2018-12-29 10:47:33 +01:00
Florian CUNY
d339444feb Renamed CHEST flag to CONTAINER
#402
2018-12-28 11:14:52 +01:00
Florian CUNY
5cddfca3b7 Added en-US localization for DISPENSER and DROPPER flags 2018-12-28 10:56:14 +01:00
Florian CUNY
3e7c97c370 Added HOPPER flag
#401
2018-12-28 10:54:07 +01:00
Florian CUNY
b5620e25e7 Added DROPPER flag
#401
2018-12-28 10:49:40 +01:00
Florian CUNY
70d8d04ee5 Added DISPENSER flag
#401
2018-12-28 10:44:35 +01:00
Florian CUNY
a33fc82a4a Improved InventoryListener 2018-12-28 10:42:38 +01:00
tastybento
d289b51b35 Removed unneeded map 2018-12-27 18:28:19 -08:00
tastybento
b374096c6e WIP: Shifted to GameModeAddon for IWM 2018-12-27 17:25:14 -08:00
tastybento
23d97ec7b0 Merge branch 'develop' into gameworlds-and-gamemodes 2018-12-27 11:22:07 -08:00
Florian CUNY
146331d0fe Use the Flag#getHintReference() in the sendMessage()
That is to ensure an easier maintenance process.
2018-12-27 13:53:11 +01:00
Florian CUNY
460911c92b Fixed the condition for PREVENT_TELEPORT_WHEN_FALLING in IslandGoCommand 2018-12-27 13:46:18 +01:00
Florian CUNY
f662efc43e Added PREVENT_TELEPORT_WHEN_FALLING flag (WORLD_SETTING)
Closes #403
2018-12-27 11:47:11 +01:00
Florian CUNY
daa2992ba4 Made Flag.Builder#defaultSetting default to 'false'
And therefore, I've removed all calls of #defaultSetting(false) from the Flags. That makes the code a bit nicer :slight_smile:
2018-12-27 11:24:53 +01:00
tastybento
d7851b923e Fixes reload of locales from addons
This was a bigger job than expected. I moved the addon loading locale
stuff into the LocalesManager class from the AddonsManager and put a jar
file lister in Utils. There could be some more combining of plugin jar
and addon jar file finding there. Finally, I added a sophisticated test
that creates a temporary addon jar with a locale file and checks that it
is saved correctly. Phew!
2018-12-25 23:17:06 -08:00
tastybento
86c13fa60e Remove console debug. Improved comments and JavaDoc. 2018-12-24 21:10:49 -08:00
tastybento
e5c69e42a6 Fixes bugs with CompositeCommand world setting.
Removes debug from previous commit.

Relates to https://github.com/BentoBoxWorld/BentoBox/pull/415
2018-12-24 20:49:43 -08:00
tastybento
b82f59e948 Fixes bug where schems are not copied from jar.
Major bug. Caused by multi-schem PR. The resource in the jar was being
looked up wrongly because of a double parent folder, e.g.
'/schem/schem/island.schem' instead of '/schem/island.schem' so no
schems were found in the jar.
2018-12-24 20:23:03 -08:00
tastybento
17c087469b WIP - attempt at implementing GameModeAddon API
https://github.com/BentoBoxWorld/BentoBox/pull/415
2018-12-24 20:18:33 -08:00
Florian CUNY
e6293cb480 Created an UML Class Diagram as a template 2018-12-24 10:11:19 +01:00
Florian CUNY
d24d61480b
Merge pull request #409 from BentoBoxWorld/flag-builder-v2
Nesting Flag builder in Flag
2018-12-24 09:32:09 +01:00
tastybento
68d6b008f4 Fixed tests by fixing the default rank value.
Flag was marked as deprecated, which may be okay, but because it caused
a lot of warnings in the tests because they bypass the builder I removed
the deprecation but kept the warning in the JavaDoc.
2018-12-23 22:15:37 -08:00
tastybento
0adc2e3078 Uses current API to enable multiple schems.
This will load all schems in an add-on's schem folder if it exists and
associate them with this world set (overworld, nether and end). Schems
can be named anything, but the partner nether or end worlds must be
pre-fixed with "nether-" or "end-" in the filename.
Additional schems can be added by the admin into the schem folder, or
they can be stored in the jar file of the add-on. Both are supported.

No changes are required to current add-ons. I.e., there is no API
breakage here, but I would like to rename the SchemsManager method
loadIslands(World world) to be loadSchems(World world) in the future.

Related issues/PR:
https://github.com/BentoBoxWorld/BentoBox/issues/104
https://github.com/BentoBoxWorld/BentoBox/issues/207
https://github.com/BentoBoxWorld/BentoBox/issues/378
https://github.com/BentoBoxWorld/BentoBox/pull/408
2018-12-23 19:31:00 -08:00
Florian CUNY
cc15aa1956 Updated Flags to use the new syntax
And made the Flags class final, so it cannot be extended.
2018-12-23 16:40:09 +01:00
Florian CUNY
2e5cdc7453 Fixed Flag.Builder#usePanel(boolean) to be public 2018-12-23 16:39:31 +01:00
Florian CUNY
168f9ae8f1 Added Flag.Builder 2018-12-23 16:33:10 +01:00
Florian CUNY
0101ed86d3 Deprecated FlagBuilder 2018-12-23 16:24:33 +01:00
Florian CUNY
58541831b6 Only enable/disable addons if there is at least one addon loaded 2018-12-22 16:39:20 +01:00
Florian CUNY
bfa19dcec2 Added website to plugin.yml 2018-12-22 16:38:02 +01:00
Florian CUNY
f2bf453a7c Removed deprecated methods from Island 2018-12-22 11:45:11 +01:00
Florian CUNY
407e6bb510 Added database_type and default_language metrics 2018-12-22 11:37:10 +01:00
tastybento
d907506fda Adds ability for the start sign to use a locale file set by the addon
https://github.com/BentoBoxWorld/bentobox/issues/372

Signs must have [start] as their first line to be converted.
2018-12-20 14:01:42 -08:00
tastybento
a7365ef805 Fixes chunk deletion bug and corrects chunk calculations elsewhere.
https://github.com/BentoBoxWorld/bentobox/issues/405

Adds test class for DeleteIslandChunks class.
2018-12-19 22:15:38 -08:00
tastybento
8da55b6e21
Merge pull request #400 from HyKurtis/master
Added addon request system to request data from an addon in spigot plugins
2018-12-19 05:59:50 +09:00
HyKurtis
4dcca3d923 Added addon request system to request data from an addon in spigot plugins 2018-12-16 23:58:15 +00:00
Florian CUNY
2d533ed8ad Splited PORTAL flag to NETHER_PORTAL and END_PORTAL
#388
Remove the "silent" parameter when doing the check for the End portal: the Notifier will do the job to not spam the player.
2018-12-16 10:42:04 +01:00
Florian CUNY
3e18669abc Updated en-US for the new NAME_TAG flag
#390
2018-12-16 10:25:46 +01:00
Florian CUNY
532ae6ffdc Added NAME_TAG flag
Closes #390.
It was previously protected by PLACE_BLOCKS... o_O ???
2018-12-16 10:18:39 +01:00
tastybento
ee4a0d7cfc Added tests for LocalesManager
Covers https://github.com/BentoBoxWorld/bentobox/issues/385
2018-12-16 00:35:25 -08:00
tastybento
b556b7160e Fixes reload bug when locale folder is missing.
https://github.com/BentoBoxWorld/bentobox/issues/385
2018-12-15 23:38:20 -08:00
Florian CUNY
d3be8afb08 Put colors in Settings Panel's categories
Fixes #383
2018-12-15 11:22:41 +01:00
Florian CUNY
d80e690ad0 World Settings with sub-panel now have their name yellow
#383
2018-12-15 11:14:56 +01:00
Florian CUNY
84664b6f50 Added default white color to language names in the Language Panel
This will avoid the names to be italicized (which doesn't look that pretty).
2018-12-15 11:05:26 +01:00
Florian CUNY
7c7b66b6c0 Some line color fixes in jp-JP and pl-PL locales 2018-12-15 10:45:39 +01:00
Florian CUNY
5258a1486e Fixed settings description formatting in locales 2018-12-15 10:43:10 +01:00
Florian CUNY
42ab3999b2 Fixed ENDERMEN-related settings color inconsistency
Fixes https://github.com/BentoBoxWorld/bentobox/issues/383#issuecomment-447529338
2018-12-15 10:38:51 +01:00
Florian CUNY
45e682e258 Fixed Addon#onReload() Javadoc since tag 2018-12-15 10:37:39 +01:00
Florian CUNY
7dd06b9d9b Fixed tests
They were broken as of 8a16940e14
2018-12-15 10:30:17 +01:00
Florian CUNY
b6e8c19a86 Added Addon#onReload()
Related to #370.
It is currently unused.

Added Javadoc to #onEnable(), #onDisable(), #onLoad(), #onReload().
2018-12-14 15:57:07 +01:00
Florian CUNY
8a16940e14 Added 'commands.help.syntax-no-parameters' to avoid command help layout inconsistencies
Fixes #379
2018-12-14 15:44:33 +01:00
Florian CUNY
fa5c7905da Deprecated Island#showInfo() and Island#showMembers() that were using useless parameters
Replaced them with equivalents only requiring an User as parameter.
2018-12-13 10:10:05 +01:00
Florian CUNY
08be1e15d1 Revert "Removed unused World parameter in Island#showMembers()"
This reverts commit 4169ae9f16.
2018-12-13 10:00:14 +01:00
Florian CUNY
b88e93a61c Added IslandInfoCommand
#361
* Added IslandInfoCommand : "/is info" or "/is who". This is basically a copy/paste from AdminInfoCommand, and it uses the same methods.
* Updated en-US locale accordingly
2018-12-13 09:58:35 +01:00
Florian CUNY
4169ae9f16 Removed unused World parameter in Island#showMembers() 2018-12-13 09:47:19 +01:00
tastybento
01b0c2004b Added ExperiencePickupListener unit test. 2018-12-13 08:48:40 +09:00
tastybento
ca844f1727 Fixes some code smells. 2018-12-13 08:10:33 +09:00
Florian CUNY
f61b109060 Added EXPERIENCE_PICKUP flag
#217
* Added EXPERIENCE_PICKUP flag (as a PROTECTION flag)
* Created ExperiencePickupListener
* Updated en-US locale accordingly
2018-12-12 20:45:55 +01:00
Florian CUNY
486de0dc19 Added admin command to reset/set deaths
#76
* Added AdminDeathsCommand
* Added AdminDeathsResetCommand
* Added AdminDeathsSetCommand
* Updated en-US locale accordingly
* Added "general.errors.must-be-positive-number" to the en-US locale
* Fixed some formatting in the en-US locale
2018-12-11 14:51:05 +01:00
tastybento
7a888fce95 Report addon version in admin version command.
https://github.com/BentoBoxWorld/bentobox/issues/374
2018-12-11 16:14:57 +09:00
tastybento
d266deb790 Fixed code smell 2018-12-11 12:22:07 +09:00
tastybento
9c9490908e Fixes message to players about losing coop. 2018-12-10 15:44:29 -08:00
tastybento
1a1fe14775 Merge branch 'develop' of https://github.com/BentoBoxWorld/bentobox.git into develop 2018-12-09 22:54:44 -08:00
tastybento
3dd7126ca9 Added coop removal when all island members log out.
Needs to be tested.
2018-12-09 22:54:37 -08:00
tastybento
3e07554d3b Fixed bug where animals could be bred or fed to grow up.
https://github.com/BentoBoxWorld/bentobox/issues/366
2018-12-09 14:09:53 -08:00
Florian CUNY
83b5eb546f Made the "tried to paste schem" error less confusing 2018-12-09 21:37:56 +01:00
Florian CUNY
58ded638f2 Added FROST_WALKER flag
#183
It was previously protected by PLACE_BLOCKS.
2018-12-09 17:07:12 +01:00
Florian CUNY
8f0d40e0a4 Fixed minor code smells 2018-12-09 14:57:38 +01:00
Florian CUNY
1e679fdd85 Added defensive code in User#getPermissionValue() to avoid similar bugs 2018-12-09 14:53:06 +01:00
Florian CUNY
3ef784b14b Fixed max team size permission not working
Fixes #114.
2018-12-09 14:52:38 +01:00
Florian CUNY
76af2335e2 Finished max-islands (from WorldSettings) 2018-12-09 14:19:53 +01:00
Florian CUNY
260410a927 Added IslandsManager#getIslandCount(World) 2018-12-09 14:19:26 +01:00
Florian CUNY
16d1860f5f Removed forgotten DEBUG in BucketListener 2018-12-09 14:19:04 +01:00
Florian CUNY
b20ef00853 Updated locales to replace all references of "leader" to "owner"
The island owner is no longer both known as "owner" or "team leader" depending on the methods you're using : it's "owner" everywhere now. Period. 🎉
2018-12-09 13:41:09 +01:00
Florian CUNY
ae23ad913a Renamed general.errors.not-leader to general.errors.not-owner 2018-12-09 13:18:24 +01:00
Florian CUNY
a04a0cb3d0 Replace code referencing "teamleader" to "owner"
This will improve the consistency of the code, as well as the Javadocs.

Locales (and some other files) still need to be updated to remove these references to team leader.
2018-12-09 11:28:31 +01:00
Florian CUNY
f50f7dd48d Removed en-GB and fr-FR locales as they were outdated 2018-12-09 11:10:58 +01:00
Florian CUNY
f96b395538 BentoBoxLocale: made the UNKNOWN field static 2018-12-09 10:59:06 +01:00
Florian CUNY
ae162153a4 Removed deprecated code and classes 2018-12-09 10:55:19 +01:00
tastybento
ff7a43feea Fix code smell
Check for add-on existence before trying to adjust island range size.
2018-12-08 19:38:29 -08:00
tastybento
33c374c52d Fixed NPE on portal use when there is no Nether world
https://github.com/BentoBoxWorld/bentobox/issues/365
2018-12-08 19:24:31 -08:00
tastybento
68ec5e48cb Added helpful message for API authors
Helps debug issue for missing database object default constructors.
2018-12-01 21:25:58 -08:00
tastybento
e23818f73d Enables mixed case enums to still be read from yaml config files
https://github.com/BentoBoxWorld/addon-challenges/issues/33
2018-12-01 20:36:14 -08:00
tastybento
76483f7e39 Revert "Minor changes to deserialization in Yaml handler"
This reverts commit bce906d98e.
2018-12-01 20:28:51 -08:00
tastybento
3edfd62a6b Fixes class not found error.
https://github.com/BentoBoxWorld/bentobox/issues/360
2018-12-01 19:53:50 -08:00
tastybento
693c6ab17e Completes turtle protection update.
https://github.com/BentoBoxWorld/bentobox/issues/348
2018-12-01 10:51:20 -08:00
Florian CUNY
bce906d98e Minor changes to deserialization in Yaml handler 2018-12-01 15:39:41 +01:00
Florian CUNY
6977a31830 Slight optimization in YamlDatabaseHandler 2018-12-01 11:54:03 +01:00
Florian CUNY
a735bfdf5c Fixed some redundant Flag-related calls 2018-12-01 11:45:33 +01:00
Florian CUNY
f828f23c2f Fixed some code smells 2018-12-01 11:14:12 +01:00
Florian CUNY
7aec45dc97 MySQLDatabaseConnector: removed obsolete Class.forName() 2018-12-01 10:55:19 +01:00
Florian CUNY
8fc6267082
Merge pull request #356 from CNAmira/zhcn
Make the zh-CN locale updated again.
2018-12-01 09:27:08 +01:00
tastybento
46bb958a6d Added protection against turtle egg crushing.
Added test class for physical interactions.

EWR -> DEN
2018-11-30 18:49:58 -05:00
tastybento
c88ea31237 Fixes tab complete error with no island.
EWR ->  DEN
2018-11-30 17:39:24 -05:00
tastybento
0bd800ac09 Added test class for BentoBoxLocale
United flight LAS -> EWR almost in New York
2018-11-29 13:05:32 -08:00
Li Keqing
e034fd0b6d These lines should be removes. 2018-11-26 15:50:56 +08:00
Li Keqing
e11e3defb6 Make the zh-CN locale updated again. 2018-11-26 15:47:45 +08:00
tastybento
d9da30e866 Adds a generic event to expose addon info via K,V pairs.
https://github.com/BentoBoxWorld/bentobox/issues/352#issuecomment-441471105

See addon-event branch for Level addon.
2018-11-25 22:31:15 -08:00
tastybento
5f57417ccc Change log to logError, as it would be an exception. 2018-11-23 08:22:21 -08:00
tastybento
ff2983629d Fixes protection for scooping tropical fish.
https://github.com/BentoBoxWorld/bentobox/issues/349

Also added pagination to protection flags and localized alphabetical
sorting of the flags.

Also added defensive code should a flag enum be removed but it is still
in the island database. In this case it will just be ignored and at the
next database object save it will disappear.
2018-11-20 16:35:03 -08:00
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