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
9b44dbb113
Fixes tests.
...
I made pasting the clipboard async as well so this affected the test.
2019-01-01 14:11:41 -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