Commit Graph

700 Commits

Author SHA1 Message Date
dordsor21
4243e8e86b
Begin working on improved lighting to better match 1.14's "new" light… (#611)
* Begin working on improved lighting to better match 1.14's "new" lighting engine
I guess the "new" lighting engine is somewhat old now lol
Also implement the remove first stuff to fixlight

* And then make it work
2020-09-13 15:36:36 +01:00
Matt
d00899e177
More support for 3D biomes (#608)
* More support for 3D biomes

* Resolved merge conflicts
2020-09-12 15:31:42 +02:00
Matt
de199a0e59
More work on masks (#607)
* Add a #air mask, the opposite of #existing (#1511)

(cherry picked from commit 84fa2bbbc63de7bece01f41c0d5cb7d85cf129e6)

* Remove unused methods in Mask.java

* Remove `test(Extent, BlockVector3)` from Masks.

This was a poorly planned idea. This should save some memory too.

Authored-by: Matthew Miller <mnmiller1@me.com>
2020-09-11 21:13:31 +02:00
IronApollo
1fa0777d3b Fix erosion and pull brushes
Fixes #559
2020-09-11 20:58:27 +02:00
IronApollo
dc465f7d3c Reformat, fix RichParser suggestions 2020-09-07 21:46:54 -04:00
IronApollo
6807ccd960 Reimplement Masks + Fixes
Masks Reimplemented:
    - Adjacent (~): Adjacent to a specific number of other blocks.
        - Example: ~[oak_log][1][4]
    - Extrema (#extrema): Restrict to near specific terrain extrema. The "-o" flag will only overlay existing terrain.
        - Example: #extrema[0d][45d][-o]
    - ROC Angle (#roc): Restrict to near specific terrain slope rate of change. The "-o" flag will only overlay existing terrain.
        - Example: #roc[0d][45d][-o]
    - Surface (#surface): Restrict to surfaces (any solid block touching air).
        - Example: #surface
    - Wall (#wall): Restrict to walls (any block n,e,s,w of air).
        - Example: #wall

Other Changes:
    - Minor logic change to angle mask's overlay.
    - Fixed negating air mask.
    - Added overlay flag to angle (/) mask.
2020-09-06 18:42:43 -04:00
MattBDev
02886b0387 Updated the WorldEdit license using find and replace 2020-08-24 21:31:47 -04:00
MattBDev
ce078aad70 Updated many exception classes 2020-08-24 21:29:34 -04:00
NotMyFault
1e070b3a71
Merge pull request #518 from aurorasmiles/fixEntities
start reimplementing entities
2020-08-21 18:27:25 +02:00
NotMyFault
75cbae8261
Merge pull request #568 from HazelTheWitch/fix-spline-sweep
Fixed NullPointerException in Spline and Sweep brush
2020-08-21 18:25:09 +02:00
NotMyFault
c8a9919c63
Merge pull request #569 from IntellectualSites/feature/better-noise
Feature/better noise
2020-08-21 18:20:30 +02:00
Hazel Trinity
c725dd0b18 Uses setDirection
SweepBrush.java should be correct
2020-08-19 10:13:41 -07:00
MattBDev
79b5612311 Upstream merge of the region package and things that may have broken with it. 2020-08-18 15:48:31 -04:00
Hazel Trinity
73d70527f3 Signed angles 2020-08-16 16:05:09 -07:00
Hazel Trinity
5a482f4d38 Fixed argument exception
If someone knows better please tell
2020-08-16 15:40:53 -07:00
Aurora
3aa041aa7e Merge remote-tracking branch 'upstream/1.16' into fixEntities 2020-08-16 17:01:45 +02:00
Hazel Trinity
054e60729b Slightly better angle calculation 2020-08-16 02:15:05 -07:00
Hazel Trinity
5c32cc17a2 Used Reparameterized Interpolation 2020-08-16 01:11:12 -07:00
Hazel Trinity
e5f092c3ef Updated ClipboardSpline paste 2020-08-16 01:10:51 -07:00
Hazel Trinity
e51f6e562d Sweep brush semi-fix 2020-08-15 14:20:47 -07:00
Hazel Trinity
da9c4ad543 Handle null case in equality checking BlockVector3+DFSNode 2020-08-15 09:28:39 -07:00
Hannes Greule
da9d85e427 Point out API usage of RandomCollection 2020-08-15 18:05:26 +02:00
Hannes Greule
6fb202443b Clean up RandomCollection architecture 2020-08-15 13:18:14 +02:00
Hannes Greule
bb05bd24d9 Implement more noise patterns 2020-08-15 13:17:44 +02:00
Hazel Trinity
b7e9547cd5 Fixed NullPointerException in Spline and Sweep brush 2020-08-14 19:04:11 -07:00
N0tMyFaultOG
bbff5c60b2 Fix metrics 2020-08-14 15:04:06 -04:00
N0tMyFaultOG
b01e1be21b Add more information to the debugpaste 2020-07-31 20:16:01 +02:00
wea_ondara
bf09d6922c fix //move -e 2020-07-30 14:19:04 +02:00
wea_ondara
ae95ad8fe7 cleanup 2020-07-29 22:45:55 +02:00
wea_ondara
ae23794b43 fix //cut -e 2020-07-29 22:43:52 +02:00
wea_ondara
26110d336b cleanup 2020-07-27 23:54:41 +02:00
wea_ondara
84d2c8f2ce fix redo exception; fix positioning of entities in redo 2020-07-26 19:52:03 +02:00
wea_ondara
51cdd66c62 fix imports 2020-07-26 19:08:35 +02:00
wea_ondara
f24ad69f8f fix entity paste location offsets 2020-07-26 19:05:32 +02:00
Aurora
b411ea9af4 Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into fixEntities 2020-07-26 19:03:46 +02:00
wea_ondara
a38c82304a fix rotation of entities in clipboard 2020-07-26 18:26:21 +02:00
wea_ondara
50971ee311 fix entity undo 2020-07-26 15:52:51 +02:00
MattBDev
db3718e092 Merge remote-tracking branch 'origin/1.16' into 1.16 2020-07-14 19:18:06 -04:00
Hannes Greule
eb74c7307c Fix blob brush doing weird things due to mutable vectors 2020-07-14 21:32:16 +02:00
MattBDev
3bc692ff11 Part 1 of upstream merge and format 2020-07-13 22:50:59 -04:00
NotMyFault
c82fec931a
Update discord link at debugpaste 2020-07-09 23:43:48 +02:00
dordsor21
33b2b634ac
Allow specific P2 queue hooks to be disabled 2020-07-09 22:14:24 +01:00
Hannes Greule
6fb10c3879 Make surface brush not replacing the whole world 2020-07-06 02:30:08 +02:00
dordsor21
704e76eb6d
Fixes #519
Use regex for finding colour codes
Merge styles rather than replacing and undoing our work sometimes.
2020-07-04 14:15:49 +01:00
Hannes Greule
9da4bbef5f Fix scatter/splatter brush 2020-07-03 20:43:34 +02:00
aurorasmiles
05ef46994e
Update IChunkExtent.java
fix Indentation
2020-07-03 20:03:34 +02:00
Aurora
bc45a112ee Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into fixEntities 2020-07-03 19:54:08 +02:00
Aurora
94b1233d98
implement entities in paste -e 2020-07-03 19:52:55 +02:00
dordsor21
fae528ab64
add a couple more changes++
Fixes #508
2020-07-03 13:18:09 +01:00
dordsor21
f1d4104480
Bunch of changes to help masks 2020-07-02 22:09:12 +01:00
dordsor21
18c9da372c
GetBlocks should default to air not reserved 2020-07-02 18:16:15 +01:00
Aurora
34298f7dee
Add back the getEntity Stuff since it seems to work fine 2020-07-01 19:28:38 +02:00
MattBDev
0fb564be0c Merge branch '1.16' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.16
 Conflicts:
	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/AsyncWorld.java
	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/state/AsyncDataContainer.java
2020-07-01 12:48:12 -04:00
Aurora
9fc2387f11
Revert "start reimplementing entities"
This reverts commit aac02ceea1.
2020-07-01 14:54:11 +02:00
Aurora
b96d45e4e6
merge 1.16 2020-07-01 14:46:25 +02:00
dordsor21
efc1a888d8
update links, versions, etc 2020-07-01 13:17:19 +01:00
dordsor21
3b19738ea0
Merge branch '1.15' into 1.16
# Conflicts:
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/AsyncWorld.java
#	worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/wrapper/state/AsyncDataContainer.java
2020-07-01 12:47:04 +01:00
dordsor21
3f3c49c0a8
Looks like working block setting and removal 2020-07-01 12:41:20 +01:00
dordsor21
f84958957c
Fix various lighting issues
fixes #496
possibly fixes #497
2020-06-30 13:44:26 +01:00
Matthew Miller
4604aa5920 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-29 22:08:16 -04:00
MattBDev
2517aca66f Removed some unnecessary code. 2020-06-28 17:31:13 -04:00
Matthew Miller
82adab77b4 Additional work towards 1.16 compatibility
- Very basic implementation of the SideEffects system. Will definitely need fine tuning for it to be functional, but is not considered a priority in my opinion.
- Minor changes to the World interface and World implementations related to the SideEffects system. Shouldn't be the cause of any new bugs but be on the lookout.
- Included debug in BukkitImplLoader.java to assist contributors in understanding what needs to be implemented for the adapter to load properly.

Still very WIP but we're a few steps closer. So far, this is coming along better than I anticipated. Hopefully we can keep the momentum.
2020-06-26 22:14:19 -04:00
MattBDev
b7debce4d4 1.16.1 Prep work 2020-06-25 20:29:09 -04:00
Aurora
aac02ceea1
start reimplementing entities 2020-06-25 22:13:34 +02:00
NotMyFault
3d40336045
Fixes #500, Fixes #513 2020-06-19 09:12:58 +02:00
MattBDev
437d5a2a43 Minor image brush changes 2020-06-17 22:34:55 -04:00
IronApollo
33c3cb2f33 Revert portion of "Minor cleanup" to fix history bugs 2020-06-13 14:54:07 -04:00
IronApollo
238c56a3c6 Revert "Revert matt's changes"
This reverts commit bfcc6184ad.
2020-06-13 14:41:36 -04:00
N0tMyFaultOG
bfcc6184ad Revert matt's changes
Let's not break Fawe, thanks
2020-06-13 18:48:57 +02:00
MattBDev
8105088d60 Minor cleanup 2020-06-12 21:45:49 -04:00
MattBDev
1eacb91267 Make extent public (unsafe) 2020-06-12 21:45:49 -04:00
MattBDev
35c2a74c52 Implement more masks 2020-06-12 21:45:49 -04:00
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
MattBDev
3caf53987f Minor upstream changes 2020-06-12 21:45:48 -04:00
Aurora
5602b33b78
Fix a few links 2020-05-30 09:17:21 +02: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
e23c76511d correclty implement findFreePosition and setOnGround to fix navigation wand teleport issues 2020-05-24 20:01:28 +01:00
NotMyFault
8fa493cf9f
Update IncendoPaster.java 2020-05-21 18:30:59 +02:00
NotMyFault
10ec476239
Set debug to false by default
No need to enable it unless you are actually debugging something
2020-05-18 21:50:03 +02: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
dordsor21
42d7419b4b Fixes #402
- Similar to previous commit. If the chunksection was empty, then __reserved__ was parsed to the clipboard, and then not correctly identified as air
- Now assume all __reserved__ is air when writing to clipboards
2020-05-09 13:56:41 +01:00
dordsor21
ffa25b1d9a Fixes #452
- ChunkSections containing only air are technically null according to NMS Chunks
- Therefore if we're replacing air, we should ignore the result of get.hasSection(layer) by using "full = true" as it returns false if the chunksection is only air
- We also then need to ensure that the masks correctly identify that the block is "air"
2020-05-09 13:39:41 +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
8b1a0bbc34 Fix #417
This commit aims to fix existing issues regarding the "0/-1 blocks affected" bug. Introducing the new LinkedFilter class allows us to use multiple filters for single-filter operations, e.g. applying a pattern to blocks while also counting the amount of blocks applied to. SetFilter.java was also removed due to not being used.
2020-05-07 12:29:18 -04:00
dordsor21
afba834b83 Don't commit murder to console or log files 2020-05-06 20:55:30 +01: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
508d595b8d Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit into 1.15 2020-04-29 21:30:28 +01:00
dordsor21
847d22f7d6 This seems to fix #429
- the undo remove or add block removal adding thing.
2020-04-29 21:30:15 +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
dordsor21
058990f6fe schem.intellectualsites.com (points to athion.net but cnamed) 2020-04-28 11:25:24 +01:00
MattBDev
b13dea19c5 Add debug messages 2020-04-27 19:04:20 -04:00
MattBDev
491be025cc Minor changes to urls and todo's 2020-04-27 17:35:04 -04:00
dordsor21
004a60d145 allow parallel threads to be changed.
- Interesting behaviour with forwardextendcopy stuff (move, stack etc) though.
2020-04-25 11:57:59 +01:00
dordsor21
820ae19dc2 Read processors in reverse order.
- EditSessionBuilder always assigns the history processors before the limit extents, meaning the limit did not get properly flushed to history, but because spigot is notified of the changes after the processes have taken place, the correct edit was displayed to the player and placed into the world.
 - This might break other stuff...
2020-04-23 23:46:43 +01:00
NotMyFault
9636f35e45
Fix typo 2020-04-21 16:43:25 +02:00
dordsor21
330fc39dde Further non-standard selection fixes as per #393
- Fix incorrect usage of initChunk (it's run in the right place now)
 - Fix poorly implemented //sel sphere "improvements"
2020-04-19 19:46:41 +01:00
dordsor21
b52fc46f19 Regarding #393
- Fix CharFilterBlock not being properly created (the chunk X and Z were never set)
 - Replace BlockVector3#divide with bitshift because you can't divide down and then bitshift back up with the correct results for negative values
2020-04-19 13:56:02 +01:00
MattBDev
5cc7a09769 Fixes #366
That issue was actually a NoSuchElementException.
2020-04-02 15:51:55 -04:00
MattBDev
b2752a511a Add logging messages for CPU checking. 2020-04-01 13:10:25 -04:00
MattBDev
e223f77825 Merge remote-tracking branch 'origin/1.15' into 1.15 2020-04-01 13:09:15 -04:00
MattBDev
dbd3cfbef6 Add logging messages for CPU checking. 2020-04-01 13:08:16 -04:00
IronApollo
110347214e Update SingleThreadQueueExtent.java 2020-03-31 20:29:03 -04:00
dordsor21
3cd30ebbff Fix DiskOptimisedClipboard not closing 2020-03-30 17:00:41 +01:00
dordsor21
3d8303a227 Remove my debug 2020-03-30 12:13:39 +01:00
dordsor21
5197ed04ec Fix MemoryOptimizedClipboard 2020-03-30 12:06:15 +01:00
Samuel J Voeller
63d594a069
Fix #355 2020-03-29 17:47:32 -05:00
MattBDev
62165250ce Remove FAWE language option in config 2020-03-27 19:08:32 -04:00
MattBDev
7db61be075 Started stripping apart EditSessionBuilder 2020-03-26 22:26:11 -04:00
MattBDev
e648b35b95 Small code quality changes 2020-03-24 12:32:36 -04:00
MattBDev
b2e3d40be2 Rename uploadAnonymous to upload 2020-03-23 20:48:58 -04:00
MattBDev
752a2624f8 Added warnings in DiskOptimizedClipboard to help resolve non-closed file issue 2020-03-23 18:45:23 -04:00
MattBDev
221500e7db Remove assetpacks 2020-03-23 18:38:07 -04:00
MattBDev
ae57dd5d61 fixed compile errors 2020-03-20 21:39:40 -04:00
MattBDev
91f0e03ab4 Update links in settings 2020-03-20 20:06:27 -04:00
MattBDev
9f07894f28 Performance improvement based on case study by @me4502 2020-03-19 13:08:25 -04:00
MattBDev
2f8c2666df Removed LightingExtent and organized some classes. 2020-03-18 12:58:18 -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
MattBDev
ecedc1ff12 New masks 2020-03-17 22:23:03 -04:00
MattBDev
6f9babe55e Remove metrics from settings file 2020-03-10 17:32:28 -04:00
MattBDev
ef6a5fd442 Code removal in EditSessionBuilder 2020-03-05 19:01:29 -05:00
MattBDev
c1fe16b0e9 Generics improvements 2020-03-05 16:43:26 -05:00
MattBDev
50ceb4d715 More cleanup 2020-03-05 16:10:38 -05:00
MattBDev
58eae73040 Grammar fix 2020-03-05 16:10:17 -05:00
MattBDev
915ab43f6e Cleanup unused code. 2020-03-05 16:07:20 -05:00
MattBDev
417cbd585f Remove unused setting 2020-03-04 22:50:05 -05:00
MattBDev
8eab3d098c Close at least one of the streams in IBlocks.java 2020-03-04 00:52:42 -05:00
MattBDev
b818c03f84 Various minor changes 2020-03-03 23:21:10 -05:00
MattBDev
e2d7a5918d Remove PE/PC remapping 2020-03-03 17:03:47 -05:00
MattBDev
57a4c993a1 Avoid reflection in MaskTraverser if possible 2020-03-02 22:53:50 -05:00
MattBDev
dd4d405b36 Use INSTANCE instead of legacy() due to shading issues 2020-03-02 22:32:47 -05:00
MattBDev
9241e2d018 Migrate EmptyClipboard to Kotlin 2020-03-02 21:18:36 -05:00
MattBDev
0acbcdd6e5 Rename .java to .kt 2020-03-02 21:18:34 -05:00
MattBDev
b7b11cc478 Gradle Upgrades and Clipboard Refactoring 2020-03-02 17:43:27 -05:00
Matt
589c59768f
Merge pull request #343 from mathiascode/openj9-13
Add support for OpenJ9 13
2020-03-02 10:45:18 -05:00
MattBDev
0bf0848758 Started refactoring Clipboards 2020-02-27 21:35:59 -05:00
MattBDev
6e7cc2d2bc Merge remote-tracking branch 'origin/1.15' into 1.15 2020-02-27 20:28:01 -05:00
MattBDev
2edc3bc344 Revert recent changes to DiskOptimizedClipboard 2020-02-27 20:26:23 -05:00
NotMyFault
df8a2c314b
Fix schematic interface 2020-02-28 00:29:45 +01:00
IronApollo
8535bc859a Fix #347 2020-02-27 14:14:01 -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
IronApollo
12431e7b7a Merge branch '1.15' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into 1.15 2020-02-26 09:35:47 -05:00
IronApollo
de4cb586eb Fix PlotSquared hook 2020-02-26 09:35:41 -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
mathiascode
4095786bbe Add support for OpenJ9 13 2020-02-22 06:02:18 +02:00