Commit Graph

1075 Commits

Author SHA1 Message Date
Alexander Söderberg
43d058d3db Address comments 2020-07-17 17:53:30 +02:00
Alexander Söderberg
020b030667 More fixes 2020-07-17 17:53:30 +02:00
Alexander Söderberg
5a3eacde0b Replace method synchronization logic 2020-07-17 17:53:30 +02:00
Alexander Söderberg
7f412f5472 Begin work on the task system 2020-07-17 17:53:30 +02:00
Alexander Söderberg
33b6ef66d6 Delombok + import organisation 2020-07-17 17:24:45 +02:00
dordsor21
9fefe57c90
Switch to using QueueCoordinators everywhere 2020-07-17 15:41:06 +01:00
dordsor21
ed77522c08
Add wna block setting, use WorldEdit worlds rather than Strings. 2020-07-17 14:38:50 +01:00
dordsor21
09aca839a8
Add back changes to ChunkCoordinator 2020-07-17 14:00:01 +01:00
dordsor21
def9a1bcf8
begin new block setting/chunk pipeline
This will ultimately replace both the GlobalBlockQueue and the ChunkTask stuff
2020-07-17 13:22:33 +01:00
dordsor21
57435fdf34
verbosely ensure items cannot be duplicated when keeping inventory on death
Seemingly there's duplication issues on some servers (and apparently even when only PlotSquared is installed). Likely a Spigot issue, but there's nothing to be done for Spigot on 1.13/14/15
2020-07-16 23:24:11 +01:00
N0tMyFaultOG
01ff9a34c2 Merge branch 'features/v5/placeholders' into v5 2020-07-16 18:48:45 +02:00
Hannes Greule
97a356c4a0 Very attentive reviewers, can recommend 2020-07-16 18:13:02 +02:00
Hannes Greule
10ab28c1ec Add missing license headers 2020-07-16 18:08:00 +02:00
Hannes Greule
2d9cf8b759 Get placeholders working 2020-07-16 18:04:17 +02:00
N0tMyFaultOG
4996d8bcd1 Remove left over debugs 2020-07-15 14:05:15 +02:00
NotMyFault
e5963a8590
Merge pull request #2877 from IntellectualSites/features/v5/split-bukkit-listeners
Clean up bukkit listeners by splitting them up
2020-07-15 13:35:38 +02:00
N0tMyFaultOG
e8c155763b Register placeholders 2020-07-15 12:44:07 +02:00
Alexander Söderberg
34655b8d41
Add (untested) MVdWPlaceholderAPI support 2020-07-14 20:41:08 +02:00
Alexander Söderberg
c0a0d36e5d
Remove remaining jetbrains imports 2020-07-14 19:40:47 +02:00
Alexander Söderberg
b68d7150f1
Manually fix some merge conflicts 2020-07-14 19:34:44 +02:00
Alexander Söderberg
198bcfdf4d
Merge branch 'v6' into feature/v6/json
# Conflicts:
#	Bukkit/build.gradle
#	Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/player/BukkitPlayer.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitUtil.java
#	Core/build.gradle
#	Core/src/main/java/com/plotsquared/core/PlotPlatform.java
#	Core/src/main/java/com/plotsquared/core/PlotSquared.java
#	Core/src/main/java/com/plotsquared/core/command/Add.java
#	Core/src/main/java/com/plotsquared/core/command/Area.java
#	Core/src/main/java/com/plotsquared/core/command/Auto.java
#	Core/src/main/java/com/plotsquared/core/command/Command.java
#	Core/src/main/java/com/plotsquared/core/command/ListCmd.java
#	Core/src/main/java/com/plotsquared/core/configuration/Caption.java
#	Core/src/main/java/com/plotsquared/core/listener/PlotListener.java
#	Core/src/main/java/com/plotsquared/core/player/ConsolePlayer.java
#	Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java
#	Core/src/main/java/com/plotsquared/core/plot/message/PlotMessage.java
#	Core/src/main/java/com/plotsquared/core/setup/CommonSetupSteps.java
#	Core/src/main/java/com/plotsquared/core/util/MainUtil.java
#	Core/src/main/java/com/plotsquared/core/util/WorldUtil.java
2020-07-14 19:25:14 +02:00
Alexander Söderberg
8eb903ad72
Merge branch 'v5' into v6
# Conflicts:
#	Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java
2020-07-14 19:18:08 +02:00
Alexander Söderberg
0294397021
Manually resolve a bunch of merge issues 2020-07-14 19:10:52 +02:00
Alexander Söderberg
97fed21811
Merge branch 'v6' into feature/v6/platform
# Conflicts:
#	Bukkit/build.gradle
#	Bukkit/src/main/java/com/plotsquared/bukkit/BukkitPlatform.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/listener/ChunkListener.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitRegionManager.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/util/BukkitUtil.java
#	Bukkit/src/main/java/com/plotsquared/bukkit/uuid/SquirrelIdUUIDService.java
#	Core/build.gradle
#	Core/src/main/java/com/plotsquared/core/PlotSquared.java
#	Core/src/main/java/com/plotsquared/core/command/Claim.java
#	Core/src/main/java/com/plotsquared/core/command/Debug.java
#	Core/src/main/java/com/plotsquared/core/command/DebugExec.java
#	Core/src/main/java/com/plotsquared/core/command/Purge.java
#	Core/src/main/java/com/plotsquared/core/command/Trim.java
#	Core/src/main/java/com/plotsquared/core/components/ComponentPresetManager.java
#	Core/src/main/java/com/plotsquared/core/database/SQLManager.java
#	Core/src/main/java/com/plotsquared/core/generator/HybridPlotWorld.java
#	Core/src/main/java/com/plotsquared/core/generator/HybridUtils.java
#	Core/src/main/java/com/plotsquared/core/generator/SquarePlotManager.java
#	Core/src/main/java/com/plotsquared/core/generator/SquarePlotWorld.java
#	Core/src/main/java/com/plotsquared/core/listener/ProcessedWEExtent.java
#	Core/src/main/java/com/plotsquared/core/player/ConsolePlayer.java
#	Core/src/main/java/com/plotsquared/core/player/PlotPlayer.java
#	Core/src/main/java/com/plotsquared/core/plot/Plot.java
#	Core/src/main/java/com/plotsquared/core/plot/PlotArea.java
#	Core/src/main/java/com/plotsquared/core/plot/PlotInventory.java
#	Core/src/main/java/com/plotsquared/core/plot/expiration/ExpireManager.java
#	Core/src/main/java/com/plotsquared/core/plot/expiration/PlotAnalysis.java
#	Core/src/main/java/com/plotsquared/core/plot/flag/FlagContainer.java
#	Core/src/main/java/com/plotsquared/core/plot/flag/types/BlockTypeWrapper.java
#	Core/src/main/java/com/plotsquared/core/plot/message/PlotMessage.java
#	Core/src/main/java/com/plotsquared/core/util/LegacyConverter.java
#	Core/src/main/java/com/plotsquared/core/util/MainUtil.java
#	Core/src/main/java/com/plotsquared/core/util/RegionManager.java
#	Core/src/main/java/com/plotsquared/core/util/SchematicHandler.java
#	Core/src/main/java/com/plotsquared/core/uuid/UUIDPipeline.java
2020-07-14 19:05:05 +02:00
Alexander Söderberg
510ea56431
Finalize DI stuff 2020-07-14 18:49:40 +02:00
Alexander Söderberg
55eefd09da
Merge branch 'v6' into feature/v6/json 2020-07-14 16:52:40 +02:00
Alexander Söderberg
1dc4da8beb
Fix issues from previous merge 2020-07-14 13:21:59 +02:00
Alexander Söderberg
1908588fcb
Change expansion author and version 2020-07-14 13:17:21 +02:00
Alexander Söderberg
af7db08036
Add new placeholder system 2020-07-14 13:14:02 +02:00
Alexander Söderberg
33f2ff7e6d
Merge branch 'v6' into feature/v6/slf4j 2020-07-13 23:11:40 +02:00
Alexander Söderberg
6664d49928
Prefix all log messages 2020-07-13 23:04:27 +02:00
Alexander Söderberg
a1f262b5b2
Fix gradle setup and replace all debug calls 2020-07-13 22:51:57 +02:00
N0tMyFaultOG
c6962ef4d2 Shift a few more messages to debug 2020-07-13 19:56:34 +02:00
Alexander Söderberg
0fa5a16cd0 replace remaining debug calls 2020-07-12 21:49:05 +02:00
Alexander Söderberg
e88da3cea9 Add chunk coordinator 2020-07-12 20:58:48 +02:00
dordsor21
14b6f84816
fix typos that were c/p over 2020-07-12 18:50:04 +01:00
N0tMyFaultOG
ac8841447c 6cf2c0ad97 (r40542418) 2020-07-12 17:11:25 +02:00
Alexander Söderberg
6cf2c0ad97
Disable the paper uuid service for offline mode servers and add toggles for all third party uuid services 2020-07-12 17:04:30 +02:00
dordsor21
c045ef698c
Add license headers and fix method change in PlotSquared.java 2020-07-12 11:42:45 +01:00
Alexander Söderberg
5cdb3f4fd5 Add missing injection points 2020-07-12 12:25:44 +02:00
dordsor21
3a11ffc77a
Clean up bukkit listeners by splitting them up 2020-07-11 19:03:55 +01:00
Alexander Söderberg
916675fb08
Guice progress 2020-07-11 17:19:19 +02:00
Alexander Söderberg
6f6cb4b630 More DI progress 2020-07-11 05:29:41 +02:00
Alexander Söderberg
c0f69f321d
Guice progress 2020-07-10 22:12:37 +02:00
Alexander Söderberg
55bf41d2da
Remove dumdum static access 2020-07-10 19:25:05 +02:00
Alexander Söderberg
21ad9a36c8
Merge branch 'v6' into feature/v6/platform
# Conflicts:
#	Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEvents.java
#	Core/src/main/java/com/plotsquared/core/PlotSquared.java
#	Core/src/main/java/com/plotsquared/core/generator/HybridUtils.java
#	Core/src/main/java/com/plotsquared/core/location/Location.java
2020-07-10 18:37:18 +02:00
dordsor21
afb72aa102
Don't include eggs with spawn*_eggs* 2020-07-10 17:31:46 +01:00
Alexander Söderberg
d00dc658df Inject EventDispatcher and PlotListener 2020-07-10 18:17:44 +02:00
Alexander Söderberg
2dab7c8dda Inject PlotAreaManager 2020-07-10 17:32:07 +02:00
Alexander Söderberg
c37cc40ad9 Move annotation in BukkitWorld 2020-07-10 12:27:26 +02:00
Alexander Söderberg
5341015cb1 Finalize immutable locations and add a platform world implementation 2020-07-10 12:21:29 +02:00
dordsor21
5e44bb60c6
Merge branch 'v5' of github.com:IntellectualSites/PlotSquared into v5 2020-07-09 22:14:38 +01:00
dordsor21
96740fd282
Couple of fixes to road flag logic 2020-07-09 21:52:51 +01:00
Alexander Söderberg
b36c6427d1 Split failed UUID batches into individual requests in order to identify the invalid UUIDs 2020-07-09 20:37:14 +02:00
Traks
cfd389883b Improve piston interaction with area border 2020-07-09 20:14:06 +02:00
Traks
4576cfd961 Improve piston interaction with plot border
Fixes retracting pistons being able to modify plot borders. Prevents
piston heads from sticking outside plots.
2020-07-09 20:14:06 +02:00
Alexander Söderberg
699eb71e2a
Fix kill-road-mobs. Fixes PS-73 2020-07-09 19:46:17 +02:00
Alexander Söderberg
6b07f38cff
Send teleportation cancellation message immediately on movement, rather than after the timer has finished. This fixes PS-33. 2020-07-09 16:45:25 +02:00
Alexander Söderberg
904f5485ab
Merge remote-tracking branch 'origin/v5' into v5 2020-07-09 16:38:53 +02:00
Alexander Söderberg
e05d817482
Fix plot owner placeholder. Fixes PS-62. 2020-07-09 16:38:46 +02:00
Alexander Söderberg
db37077af7
Make signs able to use captions 2020-07-09 12:58:28 +02:00
Traks
61de18190f More dispense blocking on roads 2020-07-09 12:33:23 +02:00
dordsor21
2936b806f3
Allow players to interact on their own plot 2020-07-08 17:10:09 +01:00
Alexander Söderberg
3fa532a3c0
Move message sending into PlotPlayer to make it platform independent 2020-07-08 15:35:58 +02:00
Alexander Söderberg
090bd69be5
Merge branch 'v6' into feature/v6/json
# Conflicts:
#	Bukkit/src/main/java/com/plotsquared/bukkit/chat/FancyMessage.java
2020-07-08 15:22:02 +02:00
Alexander Söderberg
c36e311520
Continue cleaning up PlotSquared.java 2020-07-08 15:09:25 +02:00
Alexander Söderberg
51bd21a464
Merge branch 'v6' into feature/v6/platform
# Conflicts:
#	Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEvents.java
2020-07-08 13:57:33 +02:00
dordsor21
e826836c36
Merge branch 'v5' into features/v5/road-respect-flags 2020-07-07 17:48:46 +01:00
Alexander Söderberg
196df855ac
Clean up PlotAreaManager and move a bunch of plot area related logic out of PlotSquared 2020-07-07 13:37:03 +02:00
Alexander Söderberg
d76c9dad52
Remove access to PlotSquared#IMP and rename IPlotMain to PlotPlatform, then rename PlotSquared#imp() to PlotSquared#platform() 2020-07-07 12:56:43 +02:00
Alexander Söderberg
298e65a394
Replace remaining references to PlotSquared#log 2020-07-06 17:17:46 +02:00
Alexander Söderberg
078b776f60
Implement console messages 2020-07-05 18:14:29 +02:00
Alexander Söderberg
4d61a345c6
Small documentation fixes 2020-07-05 18:06:10 +02:00
Alexander Söderberg
dc0358957e
Add prefix replacement to messages and skip sending empty messages 2020-07-05 18:02:43 +02:00
Alexander Söderberg
42d648e338
Use adventure for titles 2020-07-05 17:57:58 +02:00
Alexander Söderberg
1c254984c1
Replace logging references in Bukkitmain 2020-07-05 13:56:54 +02:00
Alexander Söderberg
f287cc34e7
Remove json message stuff 2020-07-05 13:46:25 +02:00
Alexander Söderberg
c8a8806e7d
Component progress. The plugin is **very** broken right now. 2020-07-05 13:41:40 +02:00
Hannes Greule
b5818bfefc Lazy fix for FancyMessage 1.16 2020-07-04 20:25:49 +02:00
Alexander Söderberg
c784c69eb3
progress 2020-07-04 18:53:03 +02:00
Alexander Söderberg
429f5e55c3
Add option to disable background caching 2020-07-03 13:50:12 +02:00
Alexander Söderberg
0e7a6d7a62
Fix typo 2020-07-03 13:47:50 +02:00
dordsor21
580212d66d fix build 2020-07-01 21:49:53 +01:00
dordsor21
2910176b97
Add road flag container 2020-07-01 14:53:57 +01:00
dordsor21
c5ec8e1931
actually fix all conflicts 2020-07-01 14:21:18 +01:00
dordsor21
82a887fd3b
Merge branch 'v5' into features/v5/road-respect-flags
# Conflicts:
#	Bukkit/src/main/java/com/plotsquared/bukkit/listener/PlayerEvents.java
2020-07-01 14:12:16 +01:00
NotMyFault
eff410d1da
Merge pull request #2862 from IntellectualSites/bukkit/1.16.1
Update to 1.16.1
2020-07-01 12:02:57 +02:00
MattBDev
49c35ec084 Resolve NMF's concerns 2020-06-29 22:05:32 -04:00
MattBDev
3a2e932d17 Add missing mobs from 1.13.2+ 2020-06-28 18:45:40 -04:00
MeFisto94
bd9bdc9e03 Separate the Vault Permission Handling from the Economy Handling 2020-06-28 14:28:11 +02:00
MeFisto94
9c3d2cfb02 Move the caching and static accessors from EconHandler to PlotMain 2020-06-27 06:26:00 +02:00
MattBDev
cb04c183a8 Update to 1.16.1 2020-06-26 20:38:30 -04:00
Hannes Greule
d1ecf9232e
Merge pull request #2859 from FreebuildFR/feature/flag_placeholder
Add placeholders to get the value of a plot flag
2020-06-26 02:22:59 +02:00
EpiCanard
e833403e3c Replace split with substring for placeholders 2020-06-25 14:08:44 +02:00
Alexander Söderberg
f64026af1a Only initialise EconHandler when economy is enabled and stop accessing the static instance directly. 2020-06-24 15:26:06 +02:00
Alexander Söderberg
159b35c717
Fix OfflinePlayerUUIDService breaking when no worlds have been loaded. 2020-06-24 08:05:06 +02:00
EpiCanard
7fbac4f286 Add a second placeholder to support only local flag of current plot 2020-06-24 00:51:27 +02:00
Alexander Söderberg
55cf34508a
Fix issue where old player objects were not cleaned up properly.
This is caused by an issue with the event order in Spigot (and Spigot derivatives), so the fix is rather hacky.
2020-06-23 18:36:53 +02:00
Alexander Söderberg
2b4e2fc793
Add plot debugging and make tab completable aliases configurable 2020-06-23 11:39:45 +02:00
EpiCanard
14baead342 Add placeholder to get the value of a plot flag 2020-06-23 01:20:17 +02:00
Alexander Söderberg
2d6e6ceaeb
Improve documentation of BukkitMain#wrapPlayer and improve generic types 2020-06-22 15:45:57 +02:00
Alexander Söderberg
1dcf8d3995
Progress on the debug logging API 2020-06-21 15:50:49 +02:00
PureGero
cb969e37a6 Don't teleport players; Fixes PS-14 2020-06-19 11:36:35 +02:00
Hannes Greule
3e2e61d2be Re-introduce online mode 2020-06-13 15:53:03 +02:00
Hannes Greule
b6f1610a7e Provide no suggestions instead of player names for commands 2020-06-11 01:01:00 +02:00
Hannes Greule
e3fbb32399 Formatting and documentation 2020-06-11 01:01:00 +02:00
Hannes Greule
ae1427b189 Remove usage of SetupObject 2020-06-11 01:01:00 +02:00
Hannes Greule
5165c439fc Add tab completion and fix minor bugs 2020-06-11 01:01:00 +02:00
N0tMyFaultOG
d12ecc8616 Softdepend on new complementary UUID services 2020-06-04 11:41:20 +02:00
N0tMyFaultOG
950640a557 Revert "Don't send chat spy to message sender"
This reverts commit a37ab10414.
Let's not break plotchat when plotspy is enabled
2020-06-04 11:29:02 +02:00
N0tMyFaultOG
86746e7843 Fixed https://issues.intellectualsites.com/issue/PS-26 2020-06-03 21:18:46 +02:00
NotMyFault
2c74d2479f
Exchange website url 2020-06-02 17:06:33 +02:00
Alexander Söderberg
6442922d86 Implement some more generic types to make the player objects easier to work with and also create wrapper objects for fake players (NPCs). Potentially fixes PS-27 2020-05-27 14:08:48 +02:00
NotMyFault
09327b0128
Merge branch 'v5' into features/v5/uuid 2020-05-25 13:13:29 +02:00
Alexander Söderberg
28a7d027f6
Merge branch 'v5' into features/v5/uuid 2020-05-24 21:14:56 +02:00
Alexander Söderberg
46b68e489d
Tab complete /p list 2020-05-24 21:08:11 +02:00
Aurora
98322d5d11 Add BungeePerms UUID service. This should probably work. 2020-05-24 14:32:34 +02:00
Alexander Söderberg
7b97130af7
Add option to disable legacy cache, also add an option to return "Unknown" when a request cannot be fulfilled (old behaviour)
This should fix issues where lowercase offline mode UUIDs don't have access to their old cache.
2020-05-24 05:00:36 +02:00
Alexander Söderberg
cc168d5ae9
Fix SQLite table creation statement and add legacy SQLite uuids as a provider 2020-05-24 04:48:19 +02:00
Alexander Söderberg
d19df3b6eb
Fix offline mode UUIDs 2020-05-24 04:28:29 +02:00
Alexander Söderberg
75dbc2db98
Fix offline mode UUIDs 2020-05-24 04:27:20 +02:00
Alexander Söderberg
2875b050c5
Add plugin UUID services. They probably work. 2020-05-23 19:43:32 +02:00
Alexander Söderberg
6c6c2b57a1
Add options to disable tab completion and extend username completion, also limit the total number of username suggestions to 200 per request 2020-05-23 17:20:09 +02:00
Alexander Söderberg
32a55127f1
Fix partial area regeneration when using PlotSquared generation.
Also fix issues with region height and road width.
2020-05-23 14:32:02 +02:00
Alexander Söderberg
3b7057ad4f
do a second attempt at fetching uuid batches even if it errors 2020-05-21 21:24:55 +02:00
Alexander Söderberg
2417dace2d
Add UUID caching 2020-05-20 15:12:09 +02:00
Alexander Söderberg
f82a111518
Merge branch 'v5' into features/v5/uuid
# Conflicts:
#	Bukkit/pom.xml
#	Core/src/main/java/com/plotsquared/core/util/SchematicHandler.java
2020-05-20 11:27:11 +02:00
Alexander Söderberg
ea41c842bc
Fix a bunch of minor issues 2020-05-20 00:31:59 +02:00
Alexander Söderberg
8efc78e1c9
IT COMPILES! 2020-05-19 23:05:36 +02:00
dordsor21
7aba70ea65 Make plot clears/sets less crashy.
There's still the issue of Spigot's (or paper's) terrible GC that does nothing and stores everything in PS old gen memory so the server just numpties itself though.
2020-05-19 16:54:12 +01:00
Alexander Söderberg
123ca8efe9
Update more commands and add proper request timeouts 2020-05-19 17:33:59 +02:00
dordsor21
22c26fe962 Add PlotArea#getFlag 2020-05-19 13:07:50 +01:00
dordsor21
761803f777 Add option for roads to respect a plot area's flags and implement to PlayerEvents 2020-05-19 12:41:51 +01:00
dordsor21
d5d18a60fb Fix #2836
getCompoundTag can also be in Core since we're using WorldEdit.
2020-05-19 11:53:18 +01:00
Alexander Söderberg
37b065a097
Progress. 2020-05-19 00:28:52 +02:00
Alexander Söderberg
fdfc61cf97
Update username on async pre login event 2020-05-18 20:45:51 +02:00
Alexander Söderberg
31c84ab18f Basic pipeline setup 2020-05-18 00:22:34 +02:00
Alexander Söderberg
a47527857c Fix wonky annotation placement in SQLiteUUIDService 2020-05-17 23:58:39 +02:00
Alexander Söderberg
67bf90e92f Create the SQLite UUID service and cache 2020-05-17 23:41:59 +02:00
Alexander Söderberg
64cfe240f9
Port OfflinePlayerUUIDService to the new system 2020-05-17 17:36:12 +02:00
Alexander Söderberg
29f2863cf4
Progress 2020-05-17 17:26:48 +02:00
Alexander Söderberg
7591c440c2 Begin working on the new UUID service API 2020-05-17 12:40:25 +02:00
Alexander Söderberg
5ae70743b1 Always set the generator 2020-05-16 21:37:14 +02:00
Alexander Söderberg
441a73839e Add /plot components 2020-05-16 21:37:14 +02:00
Alexander Söderberg
ff8f7a0867 Actually create the world managers 2020-05-16 21:37:14 +02:00
Alexander Söderberg
31edffcb63 Begin working on a platform specific world management system
This should make world management a fair bit cleaner
2020-05-16 21:37:14 +02:00
Alexander Söderberg
86edb20c15
Add a FAWE/WE chart 2020-05-14 16:33:26 +02:00
dordsor21
5f896dd39a Properly copy NBT data in containers 2020-05-14 14:19:33 +01:00
dordsor21
8fb9f29ab7 Fixes #2827
If existing blocks are an instance of container, clear the inventory.
2020-05-14 12:57:26 +01:00
Alexander Söderberg
1fa41e6209
Merge branch 'v5' into tile-entity-cap 2020-05-14 13:17:41 +02:00
dordsor21
617abf89e6 Split ChunkManager to Chunk and Region Managers
- Having not chunk-specific code in ChunkManager felt wrong.
- Also allow FAWE to replace setbiome code
- Also improve performance (proper usage of chunk loading) for setbiome
2020-05-14 11:27:35 +01:00
Alexander Söderberg
e6a9daf31a
Make the tile entity limit in ProcessedWEExtent apply per chunk rather than per edit 2020-05-13 14:54:54 +02:00
Alexander Söderberg
8c0f7b207e
Make the chunk listener NOT delete all tile entities in the chunk 2020-05-13 14:39:58 +02:00
Alexander Söderberg
ec347f8738
Add missing blocks and block tile entities from /plot set if the chunk processor is enabled 2020-05-13 14:24:04 +02:00
Alexander Söderberg
19fe2efb6e
Fix the WE extent and add our own tile entity list 2020-05-13 14:11:17 +02:00
Alexander Söderberg
435d877262
Make the tile entity check respect the chunk processor status 2020-05-13 12:25:48 +02:00
Alexander Söderberg
3deff629b0
Add paper specific listener for limiting the amount of tile entities in a chunk during build, instead of just doing it during chunk unloading 2020-05-12 23:01:14 +02:00
dordsor21
a038cb6d1b Merge branch 'v5' of https://github.com/IntellectualSites/PlotSquared into v5 2020-05-12 18:53:57 +01:00
dordsor21
637dd7d0c2 correct update messaging 2020-05-12 18:53:26 +01:00
Alexander Söderberg
d20fa39cf5
Add flag that prevents people from copying NBT data in the plot unless they're added as members 2020-05-12 19:25:06 +02:00
Alexander Söderberg
10dbcbcdbd Prevent NPE in entityDamage
This is done by creating a fake (WE) entity type in the case that the entity type name is null. In these cases, WE has no equivalent.

By doing this, all entity category contains check will fail, and it will default to the PVE check at the bottom of the if-else if chain.
2020-05-12 10:05:47 +02:00
Alexander Söderberg
e20319f4e1
Merge branch 'v5' into backups
# Conflicts:
#	Core/src/main/java/com/plotsquared/core/configuration/Captions.java
2020-05-11 20:15:48 +02:00
Alexander Söderberg
3c17b76b1c
Remove dum-dum line break 2020-05-11 11:21:32 +02:00
Alexander Söderberg
7a6909dab1
Merge branch 'v5' into backups 2020-05-11 11:19:59 +02:00
Alexander Söderberg
3064ae80d1
Add a keep-inventory flag 2020-05-11 11:19:36 +02:00
Alexander Söderberg
8ed5a21b36
Merge branch 'v5' into backups 2020-05-10 17:03:36 +02:00
Alexander Söderberg
723e29cdd0
Continue working on the backup system 2020-05-10 14:02:25 +02:00
dordsor21
667098268f Almost fix slime pathing?
This almost works, there's no real way to do it gracefully because you can't set where the slime should be travelling to nicely, nor can you set rotation etc. Seems to be a fairly large part of the event capability missing from paper.
2020-05-10 12:18:55 +01:00
Alexander Söderberg
a37ab10414
Don't send chat spy to message sender 2020-05-03 18:13:54 +02:00
dordsor21
daee26681a use strings for spawn reasons to be safe 2020-05-02 12:13:00 +01:00
dordsor21
729469e030 Add config options for all paper events. 2020-05-02 11:58:32 +01:00
dordsor21
c6dc9ee189 Add some more listeners
- Also use setShouldAbortSpawn so it doesn't just try forever
 - Add config to enable or disable all paper listeners
2020-05-02 11:58:32 +01:00
dordsor21
8ec8b8d803 Add some paper-specific listeners 2020-05-02 11:58:32 +01:00
MeFisto94
d864792d09 Fixes #2800 Allow to wrap OfflinePlayers in 1.15.2 2020-05-02 11:28:06 +01:00
dordsor21
17698065a0 Add extra SpawnReasons to spawn listener 2020-04-30 17:00:35 +01:00
dordsor21
e7216d4aef Merge branch 'v5' into reformat 2020-04-30 11:33:31 +01:00
dordsor21
0751e9cea3 Make LiquidFlowFlag an enum 2020-04-30 11:18:28 +01:00
dordsor21
0091580ae0 Reformat it all. 2020-04-30 11:01:52 +01:00
dordsor21
4a16f9c1a7 LiquidFlow true will override BlockPhysics false 2020-04-30 10:59:43 +01:00
dordsor21
577fe3037f Update checker improvements and 5.10.4
- Add config option to disable poll once it's found an update (true by default)
 - Better PlotVersion stuff can now detect if you're using a later version than the spigot API, and not tell you about it
2020-04-30 10:17:19 +01:00
NotMyFault
670f6d9f8b
Fix coral-dry flag not respecting horn coral blocks 2020-04-29 21:55:55 +02:00
N0tMyFaultOG
51b6f41eff Update papi hook message 2020-04-25 23:54:30 +02:00
dordsor21
ccb43d0661 Do placeholders better.
- Still allow parsing of placeholder if no plot is required and plot is null.
- Properly check if the player is null before getting the plot, and if the plot is null
- These were still issues before my initial "fix" city
2020-04-23 14:16:06 +01:00
dordsor21
caa4a08b26 getOfflinePlayer once 2020-04-23 09:21:52 +01:00
dordsor21
0fa99d7940 Never return null in Placeholder. Also slight cleanup. 2020-04-23 09:06:37 +01:00
dordsor21
73dae7842d Only poll for updates every 30 mins.
- Don't do GET requests on player join (bad idea, it was sync...)
 - If there's an update it will notify the player still, it just caches the update status
2020-04-22 12:09:00 +01:00
dordsor21
92a18d810c Correct usage of Json.
I'm dumb and forgot toString doesn't work. Repalce with getAsString
2020-04-22 09:57:46 +01:00
NotMyFault
8ff4566905
Change misleading information 2020-04-21 23:42:31 +02:00
N0tMyFaultOG
c8d8fb6aff Reformat premium information 2020-04-21 23:38:56 +02:00
dordsor21
5b30711470 Cant use bar chart 2020-04-21 12:39:48 +01:00
dordsor21
336f27f078 Only check update if premium. Add bstats bars for premium vs not. 2020-04-21 12:39:48 +01:00
dordsor21
8d61e6f111 Fix update checker
- No more NPEs
 - Use the better spigot API
 - No obnoxious tooltip displaying the link without being clickable
2020-04-21 08:56:23 +01:00
Alexander Söderberg
59f8f2fdff
Fix biome setting in 1.13 and 1.14 2020-04-20 23:40:04 +02:00
Alexander Söderberg
5c6175badb
Merge remote-tracking branch 'origin/v5' into v5 2020-04-20 23:37:02 +02:00
Alexander Söderberg
8db8a30455
Fix biome setting 2020-04-20 23:36:56 +02:00
NotMyFault
cbe8fda1df
Fix update notification 2020-04-20 23:24:28 +02:00
N0tMyFaultOG
558df450b5 Update spigot updater 2020-04-20 21:04:30 +02:00
Cheezybo99
f1d10c96bc Added PERMISSIONS_ADMIN_CHAT_BYPASS enum for the permission plots.admin.chat.bypass allowing users to bypass the plot chat security feature. 2020-04-20 18:55:28 +02:00
Cheezybo99
4d1b08a628 Updated to properly use the permissions system from com.plotsquared.core.util.Permissions and com.plotsquared.core.configuration.Captions 2020-04-20 18:55:28 +02:00
Cheezybo99
2eda56bc1f If all players are denied from a plot, this will allow administrators with permission to see chatspy, talk in plots they have been denied from. 2020-04-20 18:55:28 +02:00
Lennart ten Wolde
bb291b947f Use primite int type for setBiome 1.13 workaround 2020-04-20 17:27:46 +02:00
Alexander Söderberg
bf5862942a
Disable prefixes for flag info headers and footers and suppress NPE in the update utility 2020-04-18 22:26:13 +02:00
N0tMyFaultOG
546c4defb7 Add SirYwell to authors list
Thanks for all your hard work regarding v5 ❤️
2020-04-16 23:49:08 +02:00
dordsor21
3ee29297e0 Add option to force plot chat in plot areas. 2020-04-16 16:55:14 +01:00
dordsor21
714b8dad87 Implement IntellectualSites/PlotSquaredSuggestions/96
Also make Plot Chat work properly. Not sure what was going on there before...
2020-04-16 11:54:32 +01:00
Alexander Söderberg
ee2ed8222d
Merge config packages 2020-04-16 06:14:33 +02:00
Alexander Söderberg
edaf396894
Merge features/v5/internal-updates into api/v5/packages 2020-04-16 06:11:03 +02:00
Alexander Söderberg
6f052f0001
Remove extra line from HEADER 2020-04-16 05:05:58 +02:00
Alexander Söderberg
ba40a56c32
Add GPLv3 License headers to all source files. 2020-04-16 04:52:39 +02:00
MattBDev
780be3776a Addressed some comments 2020-04-15 15:26:54 -04:00
Alexander Söderberg
79bd69e599 Make the entity counting code use the new entity categories, remove usage of magic numbers and add /plot caps 2020-04-12 19:30:50 +02:00
Alexander Söderberg
5772af37fe Reclassify shulker as a hostile mob 2020-04-12 04:46:51 +02:00
Alexander Söderberg
6324bb1134 Use entity categories in events 2020-04-12 01:47:56 +02:00
Alexander Söderberg
658f2a3fc3 Finalize entity type categorisation 2020-04-12 01:23:13 +02:00
Hannes Greule
6e536f81ac Add more entity categories 2020-04-12 00:57:50 +02:00
Alexander Söderberg
dd9450d36a Add entity category loading code to WorldUtil (implemented in BukkitUtil) 2020-04-11 22:26:31 +02:00
Hannes Greule
4a249843eb Workaround to accept Slimes and EnderDragons as Monsters 2020-04-11 21:42:52 +02:00
Alexander Söderberg
5c1f0f51df Add a custom bStats chart tracking terrain types 2020-04-11 20:56:34 +02:00
Alexander Söderberg
2377ce1123 Relocate metrics properly 2020-04-11 19:52:45 +02:00
MattBDev
dfa977a020 Moved more packaged based on feedback 2020-04-10 20:19:18 -04:00
MattBDev
5be2dfa747 Package Changes 2020-04-10 19:26:07 -04:00
Alexander Söderberg
f9ea99fa1d
Merge pull request #2754 from IntellectualSites/features/v5/owners
Remove all direct access to Plot.owner
2020-04-10 19:52:41 +02:00
Alexander Söderberg
280ced7904 Add GPLv3 License headers to all source files.
Reason: "            How to Apply These Terms to Your New Programs

           If you develop a new program, and you want it to be of the greatest
         possible use to the public, the best way to achieve this is to make it
         free software which everyone can redistribute and change under these terms.

           To do so, attach the following notices to the program.  It is safest
         to attach them to the start of each source file to most effectively
         state the exclusion of warranty; and each file should have at least
         the "copyright" line and a pointer to where the full notice is found."
2020-04-10 18:09:01 +02:00
Alexander Söderberg
ce756411cf Remove all direct access to Plot.owner
New methods were added for access to the absolute owner of a plot, and the documentation of the owner getters to clarify the purpose of the methods.
2020-04-10 14:05:01 +02:00
Alexander Söderberg
0d26111fa7 Include golems (snowmen, iron golems and shulkers) in the animal-interact flag. 2020-04-09 21:38:24 +02:00
Alexander Söderberg
f717589074 Fix typo in MainUtil and switch out Consumer<Integer> to IntConsumer 2020-04-09 11:23:39 +02:00
Alexander Söderberg
254a0541cc Fix OfflinePlayerUtil runtime exception 2020-04-08 22:52:13 +02:00
Alexander Söderberg
271109a726 Fix dumdum async getLoadedChunks call, but only because Aikar broke everything. 2020-04-08 21:49:41 +02:00
Alexander Söderberg
38de74c4ff Make sure PlayerEvents#logout is called 2020-04-08 17:53:11 +02:00
Alexander Söderberg
ebba9a2290 Fix interval flags 2020-04-08 17:22:53 +02:00
Alexander Söderberg
bc45b8b695 Merge branch 'features/v5/internal-updates' into features/v5/async-load 2020-04-08 17:17:17 +02:00
Alexander Söderberg
7ac389b698 Fix block ignition location check 2020-04-08 17:15:17 +02:00
Alexander Söderberg
616d22ceac Fix liquid-flow 2020-04-08 17:01:41 +02:00
Alexander Söderberg
ef04ed9151 Fix augmented generation 2020-04-08 04:10:22 +02:00
Alexander Söderberg
1522632f5a Don't replace blocks if they have identical states already 2020-04-08 02:02:20 +02:00
Alexander Söderberg
be6bcafccc Make sure augmented generation doesn't crash the server 2020-04-08 01:23:22 +02:00
Alexander Söderberg
283ff945f3 Fix /plot auto performance and remove sign-guessing 2020-04-07 23:39:56 +02:00
Alexander Söderberg
7fdb7961ce Merge branch 'features/v5/internal-updates' into features/v5/async-load 2020-04-07 22:13:42 +02:00
Alexander Söderberg
5e2e4a8631 Revert testCreate change 2020-04-07 21:43:32 +02:00
Alexander Söderberg
e4a6bd0ca5 Don't try to remove players. Fixes #2742. 2020-04-07 20:56:43 +02:00
Alexander Söderberg
5547185b3f Prevent synchronous chunk loading whenever possible 2020-04-07 20:19:39 +02:00
Hannes Greule
099a680c85
Encapsulation and Magic Values (#2711)
* Encapsulate attributes of PlotArea using lombok Getters/Setters

* Limit access to collections, don't expose implementation details

* Better naming for some boolean attributes

* Replace magic type value with PlotAreaType enum

* Replace magic terrain value with PlotAreaTerrainType enum

* Fix remaining rebase conflicts

* Reduce code duplication

Co-authored-by: Alexander Söderberg <Sauilitired@users.noreply.github.com>
2020-04-02 13:34:38 +01:00
NotMyFault
3a3a06631d Add coral-dry flag 2020-03-25 21:14:58 +01:00
dordsor21
412a3ee344
Support v2 schematics properly. No 3D biomes are supported by it as yet. (#2716) 2020-03-24 09:08:56 +01:00
dordsor21
3d47d7e73f
Use worldedit to regenerate chunks. (#2708)
* Use worldedit to regeneration chunks. It's very slow, but it works.

* Use the AutoClose-ness of EditSession
2020-03-20 13:05:13 +01:00
Alexander Söderberg
d9f9d7dc34
Features/v5/event results (#2706)
* Begin events rewrite using Guava EventBus:
- moved events to within core
- removed BukkitEventUtil
- EventUtil in core is now the implementation
- Refactor any event calls

TODO:
- Test :)
- Implement changes to PlotSquared's own listeners
- Other

* Correct code style for annotations and refactor EventUtil to EventDispatcher

* Make getEventResultRaw default method and remove empty PlotEventListener file

* not raw map

* Remove PlotPlusListener

* Add listener registration to PlotAPI. Add documentation and refactor Result enum

* Add reason for the Event Result. Change how the claim event is called
TODO: better auto event somehow. Possible re-write of auto required..?

* Implement changes to events properly
Add PlayerAutoPlotEvent
Add PlotDoneEvent
Add schematic variable to Claim event and allow it to be changed
Add reason for plot unlink to unlink event
Add pattern to component set event and allow it to be changed
Allow component of component set event to be changed
Add player to plot merge event

* Fix compile

* Correct formating

* Various cleanup
 - Correct formatting in places
 - Add feedback to Desc command cancellation
 - Correct use of flag API
 - Add FlagRemove event to flagcommand where required

* Replace reason with caption

* Switch colours in Event Deny caption

Co-authored-by: dordsor21 <dordsor21@gmail.com>
2020-03-15 12:22:49 +01:00
Alexander Söderberg
05626c2c8f
Features/v5/move swap fixes + some other important commits (comments, etc) (#2699)
* Use generics instead of the raw class

* Add Gradle wrapper verification

* Fix biome setting in versions prior to 1.15

* Fixes #2654

* Document area getters in PlotAreaManager, and replace y-value with z in the area contains check.

* Remove update notifications

* Remove unused dependencies

* Do not kick plot owners on "/p deny *"

* Do not kick any added players on /p deny *

* Allow redstone to be used in server plot with `redstone.disable-offline` enabled.

Potentially fixes #2613

* Disallow swapping ,erged plots

* Fix legacy converter.

* Fix blockbucket pattern generation

* Prevent pasting schematics onto merged plots.

* Cancel claim event correctly

* Revert "Cancel claim event correctly"

This reverts commit 0f786155
Further investigation required

* Fix plot swapping messing up owners. Fixes #2282

* Fix plot move

* Prevent plot swapping form changing the database unless the swap was successful.

* Update signs after swap.

* Only send move success message if the move was successful.

Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Daniel <admin@hywse.eu>
Co-authored-by: Hannes Greule <SirYwell@users.noreply.github.com>
2020-02-28 22:15:04 +01:00
Alexander Söderberg
9868648fcb
Pull/2693 (#2694)
* Commit WIP flag work.

* More ported flag types, and additions to the flag API.

* Make PlotFlag more generic to allow generic flag creation

* Pull Captions methods into a Caption interface.

* Port MusicFlag

* Port flight flag

* Port UntrustedVisitFlag

* Port DenyExitFlag

* Remove paper suggestion

* Make ListFlag lists immutable

* Update Flag containers. Add javadocs. Add missing methods.

* Port description flag

* Port greeting and farewell flags

* Port weather flag

* Move getExample implementation to BooleanFlag

* Port reserved flags

* Port all boolean flags.

* Remove unused flag types

* Invert liquid-flow flag

* Find the real (legacy) flag name

* Change NOITFY -> NOTIFY in Captions

* Make IntegerFlag extendable

* Port integer flags

* Update Flag command to current API state

* Begin remaking flag command

* Create DoubleFlag + extract common parsing stuff

* Supply arguments in flag parse exceptions

* Implement missing flag subcommands

* Update Flag command to current API state

* Implement PriceFlag

* Port deny-teleport

* Port gamemode flags

* Port BreakFlag

* Port PlaceFlag

* Port UseFlag

* Remove old unused flag constants

* Port blocked-cmds flag

* Fix entity util

* Port TimeFlag

* Use CaptionUtility for formatting

* Port keep flag

* Fix imports

* Reformat code

* Remove unused classes

* Fix MainUtil.java

* Remove FlagCmd

* Add flag info header and footer

* Comment out flag related stuff in SchematicHandler

* Remove FlagManager

* Finalize Plot.java

* Finalize PlotArea.java

* Finalize PlotListener

* Fix API issues

* Fix a bunch of compile errors

* Fix `/plot flag remove`

* Fix initialization of GlobalFlagContainer

* Apply API changes to events

* Update SQLManager to new API

* Invert default value for DenyExitFlag

* Replace flag.getValue().toString() with flag.toString()

* Make FlagContainer instance in Plot final

* Fix various command issues

* Clean up PlotSettings

* Don't show internal flags in flag list

* Fix `/plot flag add`

* Remove the info inventory as it's 100% broken

* Add plot info entries and fix up the default format

* Fix default flag state in Captions

* 781c200 part 2

* Fix odd grammar in captions

* Fix odd grammar in captions v2

* Add create table statements for plot_flags

* Remove old flag references in SQLManager

* Use the new plot_flags table

* Add tab completion to `/plot flag`

* Improve parse error handling

* Make flag permission check recognize parse exceptions

* Initial progress towards flag conversion

* Fix minor issues

* Don't validate flags during flag conversion

* Allow unrecognized flags to be parsed

* Filter out internal flags from command sugguestions

* Use the wrong caption when there's no plot description set

* Limit command suggestions for boolean flags

* Make blocktypelistflags accept blockcategories

* Require categories to be prefixed with '#' and fix some minor display issues

* Fix plot database conversion

* Update PlotFlagEvent.java

Updated return description

* Fix command annotation wrapping

* Add FLAG_UPDATE event for FlagContainer listeners

* Make getParentContainer nullable

* Document castUnsafe in FlagContainer

* Document FlagContainer constructors

* Add missing documentation to FlagContainer

* Document FlagParseException

* Fix wording in FlagContainer javadoc

* Document InternalFlag

* Document PlotFlag

* Minor changes

* Remove revisit comments

Co-authored-by: Hannes Greule <SirYwell@users.noreply.github.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2020-02-24 18:42:02 +01:00
Alexander Söderberg
b99631f1bd Fix regen. Fixes #2692 2020-02-24 14:00:45 +01:00
Alexander Söderberg
6be26e8047 Also consider negative locations when cancelling liquid flow 2020-02-24 12:11:22 +01:00