Matthew Miller
33adba4a6f
Use a long to refer to the volume of a region to prevent overflow ( #1350 )
...
* Use a long to refer to the volume of a region, and rename the method to getVolume
* Fixed issues noted in review
* Forgot to floor
* Fixed review notes
* Can use a long here rather than BigDecimal
* Improve javadocs
* style
(cherry picked from commit 328030fd6281e58a4ea1d0cdd0a2e274da90afbe)
2020-06-12 21:45:49 -04:00
MattBDev
9f6e0ebd5c
Minor changes to NMS logic
2020-06-12 21:45:48 -04:00
aurorasmiles
6965fe2b90
Update PlotSquaredFeature.java
2020-05-30 10:46:05 +02:00
Aurora
5602b33b78
Fix a few links
2020-05-30 09:17:21 +02:00
dordsor21
75153d8da8
Fix getLightOpacity
2020-05-27 17:25:03 +01:00
dordsor21
bdc14c10c7
Fix relight and removelight ( #475 )
...
* Start work on lighting engine (does not build)
* Implement getLighting
* Setting, flushing light etc works. Getting light should be working..?
* Better queue/chunk handling
* Use correct location for lighting update
* Correct set location, remove debug
* cleanup a little
* Fix fixlight
* Apply to all versions for the numpties
* Remove lighting extent if not using
* Actually bitmask blocks when setting in chunks
* Initialise Maps and Dequeues with inital size
* format
* Documentation maybe
2020-05-27 11:45:08 +01:00
Aurora
1f898cd0d1
Negate "hasCollision" for isTranslucent() also for 1.15.0 and 1.14
2020-05-25 19:00:16 +01:00
Aurora
d9240c5626
Negate "hasCollision" for isTranslucent()
2020-05-25 19:00:16 +01:00
dordsor21
4e4b812fdd
dum
2020-05-20 09:47:57 +01:00
dordsor21
9085365165
Override P2's /plot set
2020-05-20 09:44:59 +01:00
dordsor21
a6514f8a78
Ultimately the Striped locks will have no affect, even if kinda cool.
2020-05-20 07:58:14 +01:00
dordsor21
fd3604beba
replace synchronisation with Striped access semaphore locks
2020-05-18 16:52:33 +01:00
dordsor21
31cc5e0b60
Synchronise on the nmsWorld so we're not attempting to load two chunks at the same time.
...
Possibly fixes #471
2020-05-18 16:04:10 +01:00
dordsor21
5be11c541b
Put the synchronisation higher up the food chain
2020-05-14 22:32:32 +01:00
dordsor21
3a7c23be45
Fix #443
...
Temp as it's performance-degrading, but works well enough for now
2020-05-14 22:10:09 +01:00
dordsor21
35169230ad
Sort of fix biome getting
...
It seems to want to put random blocks where the biome isn't
2020-05-14 16:27:24 +01:00
dordsor21
bdc129cf7b
Update to latest p2 v5
...
(implement FAWE biome setting)
2020-05-14 16:20:17 +01:00
dordsor21
5225099ec0
Fix biome setting in 1.15
2020-05-14 16:17:29 +01:00
dordsor21
be58cd42ac
Add option to disable ticking existing blocks when not fastmode
2020-05-11 16:09:31 +01:00
dordsor21
36faf107e6
Allow fastmode to be used in a lot more places
...
- Option to stop fastmode from bothering to fix existing ticking blocks
2020-05-11 15:36:52 +01:00
MattBDev
a813cbfcdf
Update world interface
2020-05-10 20:57:24 -04:00
dordsor21
0dee452e1a
Don't attempt to set field on null ChunkSection
2020-05-09 17:42:40 +01:00
dordsor21
56175ffe0f
Revert this so it compiles on the ci for now.
2020-05-09 16:30:28 +01:00
dordsor21
b1f1c0f4f0
Possible fix for #331
...
- Should ensure the server doesn't tick the chunksection while we're editing it
- Basically using the old issue with FAWE breaking block ticking by setting this to zero :)
2020-05-09 16:23:38 +01:00
dordsor21
8f60544aad
Override some methods in AsyncWorld
2020-05-09 15:11:40 +01:00
dordsor21
56c720914e
Settings.IMP is terrible. Don't initialise it thousands of times.
2020-05-08 18:17:47 +01:00
dordsor21
c757b01803
By default only allow existing blocks to tick.
...
- Revert back to default FAWE behaviour where placed blocks do not tick by default (until a restart, or another edit is done in the same chunksection without changing the block)
2020-05-08 16:16:08 +01:00
dordsor21
56972ee40b
Trim performance ( #451 )
...
* Increase performance slightly when trimming.
If the chunk section is all one blocks (common in plotworlds) it'll be a nice little boost.
* Cache whether blocks are ticking or not. Greatly reduces the time required to create a palette
* collapse 5 lines to 2.
* Also apply to 14 and 15 for the numpties
* Cleanup
Actually ignore the exception - remove my debug print.
Remove double semi-colon
* Apparently 1.14/15 matter too still.
2020-05-07 23:00:13 +01:00
IronApollo
65afa79c17
Remove WorldguardFlag.java
...
The main functionality of WorldguardFlag.java was ported to Worldguard.java. This *shouldn't* break functionality of either the Worldguard or WorldguardFlag features, but users should be cautious and provide prompt feedback if any unintended changes are found.
2020-05-03 19:45:04 -04:00
dordsor21
0ca81e9d67
Fix FAWE killing chunk ticks. Also allow ticking for set blocks. ( #439 )
...
* Fix FAWE killing chunk ticks. Also allow ticking for set blocks.
* Reduce for-loop to being one loop in createPalette
* set the value in the set array and break so we don't continue onwards in the set's ordinal switch statement
2020-05-03 17:50:09 +01:00
MattBDev
5fb18259d5
Merge remote-tracking branch 'origin/1.15' into 1.15
2020-04-30 16:27:08 -04:00
MattBDev
ef3642d521
Small spring cleaning
...
I changed really small bits and pieces of code. If you have questions just comment and I'll answer them.
2020-04-30 16:26:52 -04:00
dordsor21
9869cf09c6
Apply fda7d00747
to other versions so numpties that use old versions for no reason stop complaining too
2020-04-30 15:14:59 +01:00
Pierre Grimaud
f9a40599fb
Fix typos
2020-04-29 19:36:34 +02:00
dordsor21
fda7d00747
A more verbose fix to #329 and similar issues.
...
- Re-read chunksections the first time they're "loaded" for an operation
- Reset the chunksection if there are block changes when setting blocks via reflection
- These are maybe gonna affect performance a bit? Idk. Seems to be alright for me
- These are maybe gonna make more issues? Yeah maybe, but I couldn't find any
2020-04-29 18:17:21 +01:00
MattBDev
600a1a5daa
Implement previously unsupported methods in DelegateLock
2020-04-29 11:29:02 -04:00
MattBDev
3265a9e794
Remove unused regenerate method
2020-04-28 11:16:51 -04:00
MattBDev
491be025cc
Minor changes to urls and todo's
2020-04-27 17:35:04 -04:00
Josh Knight
915fa5f00c
Merge pull request #416 from Sauilitired/tile-entity
...
Properly remove tile entities in BukkitGetBlocks_1_15_2
2020-04-22 14:57:49 -04:00
dordsor21
8bde932354
Add p2 v4 compat.
...
Anyone that hasn't built FAWE before won't be able to build it again as the v4 repo doesn't exist - it relies on local gradle cache.
2020-04-22 08:10:17 +01:00
Alexander Söderberg
c478dbd249
Backport changes
2020-04-21 23:58:14 +02:00
Alexander Söderberg
8a19c4c38c
Don't mark the chunk as dirty.
2020-04-21 15:40:53 +02:00
Alexander Söderberg
2c85ff1673
Properly remove tile entities in BukkitGetBlocks_1_15_2
2020-04-21 15:23:23 +02:00
dordsor21
952aaf8b43
Fix p2 compatibility and replace empcraft.com/maven2
2020-04-21 11:39:42 +01:00
Octavia Togami
ff47e6f717
Cherry-pick to fix EntryMaker issue
2020-04-16 20:26:55 -04:00
MattBDev
8d1efcfb21
Update Bukkit Interfaces to allow for compilation
2020-04-10 13:25:56 -04:00
IronApollo
16df4abd18
Reflection field name changes
...
Old ones were outdated. Brush visualization is still WIP and can result in client being kicked from the server for bad packets.
2020-04-01 00:20:25 -04:00
MattBDev
6e1cb4cfbc
Remove more useless messages
2020-03-31 19:39:37 -04:00
dordsor21
a6a4400317
Port fixed for #389 from 1.15.2 adapter to other adapters.
2020-03-31 10:26:23 +01:00
dordsor21
318e367cf0
Correctly unregister player on quit and close clipboard if using disk.
2020-03-30 17:41:41 +01:00
Marco
342da647d7
Fixing that the PlayerDropItemEvent was not fired
2020-03-29 11:53:31 +02:00
dordsor21
8ffdd8a9e9
Better reading of schematic biomes.
...
Use biomes in the P2 schematic handler and save as a .schem not .schematic (when it's enabled again)
2020-03-28 10:44:51 +00:00
MattBDev
8d61f84466
Stop messing with the PlotSquared queue system
...
Stops synchronized chunk loading on PlotSquared and our queue didn't really do anything better than what PlotSquared did.
2020-03-27 12:28:09 -04:00
IronApollo
46d24fff0f
Update AsyncWorld.java
2020-03-26 17:11:07 -04:00
IronApollo
fa738504a8
Fix some important chunk issues
...
This commit should properly synchronize the initialization of the adapter's ibdToStateOrdinal (the char array FAWE uses to convert NMS IBlockData objects to an internal ordinal for chunk operations) so references to this array do not push incorrect characters down the line.
Potentially fixes #373
Fixes #363
Fixes #332
2020-03-26 16:08:36 -04:00
MattBDev
e648b35b95
Small code quality changes
2020-03-24 12:32:36 -04:00
Octavia Togami
692caeea8a
Read WE version from manifest ourselves
...
(cherry picked from commit 947775b5e54aa9dd89d68ee0b382939796301902)
2020-03-23 19:31:56 -04:00
Octavia Togami
989680d159
Only add adapters to dist jar
...
(cherry picked from commit 20d630ce5b217799811779d7581d5878ddc83a6d)
2020-03-23 16:27:03 -04:00
MattBDev
89ee1cb21a
Merge remote-tracking branch 'origin/1.15' into 1.15
2020-03-22 14:10:13 -04:00
MattBDev
7ef02dfbde
Lighting in AyncBlock is set to 15 (at least for now)
2020-03-22 14:05:51 -04:00
Matt
8f2c3df61b
Merge pull request #359 from tsao-chi-fork/patch-1
...
use JavaPlugin.getResource() instead of JarFile.getEntry()
2020-03-21 17:32:14 -04:00
MattBDev
45ac55185f
Merge remote-tracking branch 'origin/1.15' into 1.15
2020-03-20 21:19:37 -04:00
MattBDev
a49a09a042
Added clarification for debugging message because of people thinking it is an error.
2020-03-20 20:04:31 -04:00
thislooksfun
a22bcb1c2a
Fix tab completion
2020-03-19 17:23:11 -05:00
MattBDev
9f07894f28
Performance improvement based on case study by @me4502
2020-03-19 13:08:25 -04:00
MattBDev
8a70f97445
Mask and Pattern modifications
2020-03-17 23:05:52 -04:00
MattBDev
1df5853f33
Remove unnecessary reflection
2020-03-17 22:27:41 -04:00
ㄗㄠˋ ㄑㄧˊ
dcee873b57
fix typo
2020-03-11 13:35:37 +08:00
ㄗㄠˋ ㄑㄧˊ
39e1026400
use try-with-resources
2020-03-11 13:34:11 +08:00
MattBDev
f63782f2f4
Fix Metrics
2020-03-10 17:31:36 -04:00
MattBDev
325d90fe39
Add stubs for new Bukkit API
2020-03-10 17:29:37 -04:00
MattBDev
14d2c9a5c3
Update BlockStateIdAccess and added a debug message
2020-03-10 17:22:53 -04:00
ㄗㄠˋ ㄑㄧˊ
bd692917e6
remove unnecessary import
2020-03-10 12:36:16 +08:00
ㄗㄠˋ ㄑㄧˊ
fbb1078569
use JavaPlugin.getResource() instead of JarFile.getEntry()
2020-03-09 13:14:16 +08:00
MattBDev
35538e7d61
Update Metrics.java
2020-03-05 19:01:06 -05:00
MattBDev
e32e17b15c
Fixed an NullPointerException with PlotSquared
2020-03-05 18:05:33 -05:00
MattBDev
915ab43f6e
Cleanup unused code.
2020-03-05 16:07:20 -05:00
Octavia Togami
f18cb1a0e1
Update gradle
2020-03-02 19:40:36 -05:00
IronApollo
d2bcc6dd35
Fix #346 , minor hook changes
...
- Removed deprecated FaweMaskManager#getMask(Player)
- Removed deprecated constructor FaweMask(BlockVector3, BlockVector3)
2020-02-26 10:17:11 -05:00
MattBDev
0918396ab6
Update bukkit gradle
2020-02-25 23:21:01 -05:00
MattBDev
c52db75976
Delete unused file
2020-02-25 18:26:04 -05:00
MattBDev
f3d19cf87d
Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15
2020-02-23 12:49:41 -05:00
MattBDev
bfcf24b27b
Small quality of code changes
2020-02-23 12:48:22 -05:00
Spottedleaf
7388d3310f
Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit into workaround-visiblechunks
2020-02-22 20:11:28 -08:00
Spottedleaf
f6675160f1
Also target 1.15 & 1.14 adapters
2020-02-22 20:11:23 -08:00
IronApollo
14ac3205ce
Check for PlotSquared before initializing the feature class
...
Some users are experiencing issues during startup with FAWE not finding PlotSquared resulting in errors.
2020-02-22 21:02:12 -05:00
Spottedleaf
0d18b15393
Workaround for replacing PlayerChunkMap#visibleChunks field
...
I run a fork of paper which replaces the visibleChunks and updatingChunks
field for gc performance reasons - visibleChunks is updated via
cloning updatingChunks, and at high chunk counts this causes gc issues
due to the humongous allocation. Unfortunately the only solution is to
not clone the map - which is why the field is removed.
Instead of BukkitAdapter#getPlayerChunk using the visibleChunks field,
it now uses a MethodHandle for PlayerChunkMap#getVisibleChunk. This method is
present on spigot & paper (only protected on spigot - which is why reflection is required),
and I preserve the same thread-safety it provides in my fork - so this solution
will not break compatibility with craftbukkit, spigot, and paper.
2020-02-22 07:07:40 -08:00
MattBDev
62cb04b8ca
Remove CFI redirect and other minor changes.
2020-02-21 14:56:21 -05:00
MattBDev
516e7e4ca6
Merge remote-tracking branch 'origin/1.15' into 1.15
2020-02-21 00:00:11 -05:00
MattBDev
99f7b23a8c
Changes to API and something else I forgot because I got distracted
2020-02-20 23:59:57 -05:00
IronApollo
c9aebf17d8
Fix #320 ; optimize adapter imports
2020-02-20 21:28:28 -05:00
MattBDev
e0bb1ce853
Revert "More minor cleanup"
...
This reverts commit 38435d50
2020-02-18 18:06:08 -05:00
MattBDev
38435d50b4
More minor cleanup
2020-02-18 18:00:39 -05:00
MattBDev
49dbd4b76b
Minor changes
2020-02-14 14:29:08 -05:00
MattBDev
647665c3b0
Upstream is better than downstream
2020-02-13 20:19:45 -05:00
MattBDev
73c5e34040
Fixed AsyncWorld for real
2020-02-13 13:12:11 -05:00
MattBDev
4d4709b2f6
Removed ChunkListener8 and resolved compiling issues
2020-02-13 13:07:30 -05:00
MattBDev
e56e9e39ee
Implement new World interface methods
2020-02-12 18:19:12 -05:00
MattBDev
b1c11c9597
Implement new World interface methods
2020-02-12 17:46:07 -05:00
MattBDev
0723620722
Remove remaining BlocksHub references from the code.
2020-02-12 17:09:28 -05:00