Commit Graph

3107 Commits

Author SHA1 Message Date
tastybento
7e52a5f641 Added an isChanged() method to Island
The island will only be saved if isChanged() is true. It is set to true
if any setter is used or a field is changed.

This should help servers shutdown a lot faster and background database
saves go quicker. Only applies to Islands!

https://github.com/BentoBoxWorld/BentoBox/issues/1629
2021-01-08 20:55:43 -08:00
tastybento
2701eb92d7 Do not use orElse as it ignores the reservation.
https://github.com/BentoBoxWorld/BentoBox/issues/1636
2021-01-08 20:06:21 -08:00
tastybento
2c7f54fe10 Use orElseGet instead of orElse
orElse is a trap because it evaluates even if the Optional is empty.
orElseGet is the correct way.
2021-01-08 20:05:23 -08:00
tastybento
86af7b568c Fix test for clearArea 2021-01-04 22:53:11 -08:00
tastybento
78b10cb7bf Do not remove entities that have getRemoveWhenFarAway() false.
If an entity has this set to false, then the area clear will not affect
it. @BONNe FYI
2021-01-04 22:50:16 -08:00
tastybento
be683f8e21 Version 1.16.0 2021-01-03 18:03:21 -08:00
tastybento
4f0ef8feb0
Better island meta data api (#1630)
* Improves the meta data API for Island

* Unified API into MetaDataAble Interface

All classes now use the same interface and Optionals. Reduces code
duplication and makes the API the same across the board.

* Version 1.15.6

Fixed since JavaDocs
2021-01-03 11:31:34 -08:00
tastybento
c465fd1fed
Enables Java 11 code to run on Java 8 (#1631) 2021-01-03 09:08:35 -08:00
tastybento
13b2551a38 Version 1.15.5 2020-12-31 09:55:52 -08:00
tastybento
054ed30577
Revert "Persistent entities should never be removed. (#1608)" (#1626)
This reverts commit 0e4b3b40fa.
2020-12-31 09:51:09 -08:00
gitlocalize-app[bot]
93cb2d64d9
Translate tr.yml via GitLocalize (#1625)
Co-authored-by: Over_Brave <soncesurlar@gmail.com>
2020-12-31 09:47:36 -08:00
tastybento
d7c7559546 Adds a persistent metadata API to User and Island classes.
This is modeled after the Bukkit metadata API with the difference that
it is persistent, i.e., metadata is stored to the database. Metadata can
be placed on Islands or Users.

This API should be useful for addons that do not want or need to create
their own database tables and instead just want to tag the user with
some data, or tag the island with some data. It is intended for small
amounts of data, like boolean tags or other values.
2020-12-28 20:39:08 -08:00
tastybento
e84b1f1830 Fix tests that failed due to timezone 2020-12-28 16:35:44 -08:00
tastybento
72de0301e6 Added visited island UUID placeholder
Added test class for game mode placeholders.

Removed duplicated code for visited island placeholders.
2020-12-28 12:18:17 -08:00
tastybento
20ba8347a1 Added %[gamemode]_island_uuid% placeholder.
https://github.com/BentoBoxWorld/BentoBox/issues/1548
2020-12-27 18:11:55 -08:00
tastybento
e5485dcbbc Fixes history log in databases.
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1624
2020-12-27 11:48:32 -08:00
tastybento
385345f493 Remove duplicated dependency 2020-12-27 11:44:26 -08:00
tastybento
be40bd2c54 Fixes new island event casting bug 2020-12-27 11:43:37 -08:00
tastybento
999d196e8e
Event fix with deprecation (#1623)
* Break out events and add individual handlers

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

* Corrected AddonEvents to have proper static handlers

* Made constructors protected.

Abstract classes should not have public constructors. Constructors of
abstract classes can only be called in constructors of their subclasses.
So there is no point in making them public. The protected modifier
should be enough.
2020-12-27 10:35:49 -08:00
gitlocalize-app[bot]
f281d37a8d
Updated Turkish translation (#1620)
* Translate tr.yml via GitLocalize

* Translate tr.yml via GitLocalize

Co-authored-by: tastybento <tastybento@wasteofplastic.com>
Co-authored-by: ZyXpe <thechefsmaster@gmail.com>
2020-12-27 10:27:15 -08:00
tastybento
2190295c68 Merge branch 'develop' of https://github.com/BentoBoxWorld/BentoBox.git into develop 2020-12-25 17:36:26 -08:00
tastybento
0e7ab3438e Added deprecation JavaDoc to events that are moving to own class 2020-12-25 17:36:16 -08:00
tastybento
d774124d89 Fixed/removed tests
These are no longer relevant as this function is now in the
PlayersManager and tested there.
2020-12-24 21:56:02 -08:00
tastybento
c7d7871f94 Player clean up
Moved per removal to PlayersManager

Added cleanup to IslandResetCommand

Added test class for clean up method.
2020-12-24 15:30:52 -08:00
tastybento
372f149f3d Remove code duplication between kick and leave command 2020-12-24 14:24:42 -08:00
tastybento
f5b2b136e9 Mark BentoBoxEvent getHandler methods as deprecated.
See https://github.com/BentoBoxWorld/BentoBox/pull/1615
2020-12-24 12:06:30 -08:00
tastybento
aec2e115eb Removes tamed animal ownership on new island
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1450
2020-12-24 10:15:14 -08:00
tastybento
267387af7a Fix copy-n-paste javadoc error 2020-12-24 10:09:36 -08:00
tastybento
065ddfb93f Simplified newIsland method in preparation for additional user cleaning 2020-12-24 09:35:43 -08:00
tastybento
dcbc1c1839 Added JavaDoc to checkTeams method 2020-12-24 09:14:21 -08:00
tastybento
98697b1686
Delete experiment (#1589)
* Try loading adjacent chunks, but too slow.

* NMS void delete

* Revert the extra chunk in IslandDeletion.

That was for another deletion approach.

* Added NMS abstraction.

* Debug

* Clearer code.

* Clarify exceptions
2020-12-19 10:29:26 -08:00
tastybento
9570f342ee
Add try catch around second stage plugin loading task. (#1609)
https://github.com/BentoBoxWorld/BentoBox/issues/1281
2020-12-19 10:28:46 -08:00
BONNe
0e4b3b40fa
Persistent entities should never be removed. (#1608)
* Persistent entities should never be removed.

There is no valid reason why BentoBox should remove the Persistent entity. Otherwise, what is the point of being persistent if someone can just remove it?

* Changes which mobs can be removed outside island

Protect renamed and persistent entities from being removed if they wander outside island bounds.
Except for animals, as they cannot be removed only if they are renamed.
2020-12-19 08:56:29 -08:00
tastybento
e608a95442 Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1602 2020-12-14 19:08:04 -08:00
tastybento
d9e3d818ea Version 1.15.4 2020-12-06 09:26:15 -08:00
Gabriele C
b74eeb95d8
Prevent save task overlaps (#1588) 2020-11-27 10:21:39 -08:00
Gabriele C
232d9097cf
Limit island/player saves per tick (#1578)
* limit island/player saves per tick

* Whoops

* 20 players/islands per tick should be enough

20 players/islands * 20 tick * 60 seconds * 5 minutes (default interval) = 120000 saved entries :)
2020-11-27 10:12:10 -08:00
tastybento
2e00602371 Remove updateInventory from noGo
There was not specific reason why this was being done and in testing, I
cannot find a reason why it is needed (yet) so I am removing it due to
the lag reported in
https://github.com/BentoBoxWorld/BentoBox/issues/1580
2020-11-26 18:37:48 -08:00
tastybento
2cb1e7c306 Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1579 2020-11-26 18:05:26 -08:00
tastybento
caed56f16e Load initial tp location async
Fixes https://github.com/BentoBoxWorld/BentoBox/issues/1584
2020-11-26 17:25:17 -08:00
BONNe
93d7fad860
Fixed parsing [gamemode] in placeholders (#1574) 2020-11-17 00:58:58 +01:00
tastybento
5321e1dda6 Prevent exposing vanished players with expel
https://github.com/BentoBoxWorld/BentoBox/issues/1573
2020-11-14 11:59:38 -08:00
tastybento
dd3622cd23 Rank check was in the wrong place so the no-arg command could be blocked 2020-11-14 11:10:33 -08:00
tastybento
e9c35b8548 Version 1.15.3 2020-11-14 11:10:02 -08:00
tastybento
af5f389587 Remove sonarcloud from github build 2020-11-08 17:31:16 -08:00
tastybento
6a6a359ef7 Run sonar without building 2020-11-08 17:08:12 -08:00
tastybento
f121287ab4 Merge branch 'develop' of https://github.com/BentoBoxWorld/BentoBox.git into develop 2020-11-08 16:48:14 -08:00
tastybento
79f6600fd2 Fixed tests and other small code smells 2020-11-08 16:48:08 -08:00
tastybento
2be4cb9e2a
Update build.yml 2020-11-08 15:35:38 -08:00
tastybento
2c1d1b1604 Add GitHub action 2020-11-08 15:26:11 -08:00