Commit Graph

2496 Commits

Author SHA1 Message Date
Aurélien
e942175559
Improve `MainUtil#copyFile` (#1888) 2022-08-02 11:25:56 +02:00
Alexander Brandes
7a498497c5
chore: Use 1.19.1 asset URL (#1889) 2022-08-01 09:50:27 +02:00
Alexander Brandes
8414e64bab
build: Release 2.4.2 2022-07-28 10:29:59 +02:00
Alexander Brandes
e10774598e
chore: Reword light command messages (#1885) 2022-07-25 18:49:18 +02:00
dordsor21
a1babd5ec9
biomes is now an two-dimensional array in CharSetBlocks
- Fixes #1878
2022-07-17 17:33:51 +01:00
Alexander Brandes
4fc2a25a9a
Update Upstream
d7b3c4c Clone the returned getRegion on BlockArrayClipboard (2144)
2022-07-16 11:08:42 +02:00
Aeliios
92518f71be
Correct return type for CuboidRegion#getFaces() upstream compatibility (#1866) 2022-07-03 12:43:13 +01:00
Aeliios
902f153929
Getting correct String from CompoundTag (#1867) 2022-07-03 12:43:03 +01:00
dordsor21
3212dddb2d
Fix BlendBall for no mask 2022-06-27 13:38:22 +01:00
Alexander Brandes
f812fc14ab
build: Release 2.4.0 2022-06-27 13:52:50 +02:00
Jordan
34ea713d29
Fix walls command on 1D/2D selection (#1821) 2022-06-24 15:04:11 +01:00
dordsor21
38d1a64bf5
Correctly recycle CharSetBlocks 2022-06-24 15:03:48 +01:00
Jordan
8094b68967
Actually implement ChunkHolder/ChunkSet pools (#1840) 2022-06-24 10:13:58 +01:00
Jordan
800988aae7
Assume a file not being in a subdirectory of root means a symlink is used (#1838) 2022-06-23 17:32:21 +01:00
dordsor21
010611c4ac
Don't hide ChunkHolder generic "T" type paramter 2022-06-23 16:10:30 +01:00
Jordan
704f87da23
Re-implement incremental schematic names in a folder (#1833)
* Re-implement incremental schematic names in a folder
 - Fixes #1545

* Move fawe end comment

* Slight cleanup
2022-06-23 10:23:22 +02:00
Jordan
100288ada5
Implement a "sensitivity" setting, a mask, and an option to only distinguish air vs blocks to blendball (#1832) 2022-06-22 12:50:22 +01:00
Jordan
d498996cbd
Use Material rather than legacy int/data when specifying block break effect type (#1829) 2022-06-22 12:50:09 +01:00
Jordan
968799503f
Re-implement full Entity support in history, entity removal, entity creation, etc. (#1812)
Co-authored-by: Alexander Brandes <mc.cache@web.de>
2022-06-21 14:52:02 +01:00
dordsor21
d62c88a2ca
Remove unused import 2022-06-21 13:00:19 +01:00
dordsor21
8b05738929
Remove P2 apidescription annotation 2022-06-21 12:58:21 +01:00
Jordan
c5073d79e7
Account for use of MutableBlockVector3 in Spline Brush (#1831) 2022-06-21 12:56:02 +01:00
Jordan
3f103eea9b
Set the correct delegate to the ChunkHolder when using get or set in NULL delegate (#1830) 2022-06-21 12:55:51 +01:00
Jordan
dacb89a480
Bring stack in line with upstream using offset rather than direction (#1822)
Co-authored-by: Alexander Brandes <mc.cache@web.de>
2022-06-20 10:46:19 +02:00
Jordan
396faf6732
Support using //distr on console properly (#1827) 2022-06-19 22:35:36 +01:00
Jordan
dac3610bcf
Implement generation of biome decorations to //regen <biome> and add option for a random seed to be used (#1819) 2022-06-19 22:33:16 +01:00
Jordan
692a010c39
Actually apply source mask when using //paste -m <mask> (#1810) 2022-06-19 22:33:01 +01:00
Jordan
84f6039f41
Fix #fullcopy -r (#1816) 2022-06-19 00:59:11 +01:00
Jordan
aadd35c0c4
Don't limit split size for extra block data (signs, spawner, etc.) (#1818) 2022-06-19 00:58:59 +01:00
Jordan
8e5204c311
Allow editing solely of tiles/entities/heightmaps (#1817) 2022-06-19 00:58:54 +01:00
Jordan
003cec30be
Fix saving entities in DiskOptimizedClipboard when no tiles are present (#1815) 2022-06-19 00:58:47 +01:00
Jordan
907ad8528e
Don't do the unbelievable bad use of a MutableBlockVector2 in the creation of a set (#1825)
* Don't do the unbelievable bad use of a MutableBlockVector2 in the creation of a set
 - Fixes IntellectualSites/PlotSquared#3683

* Clean up remnants of the use of MutableBlockVector2
2022-06-17 23:41:25 +02:00
Jordan
d2b4154cc0
Properly support extended world heights (y > 255) in tripleBlockCoord (#1805) 2022-06-17 15:39:27 +01:00
Jordan
fd00635533
Fixes to BlockMask and "char" masks (#1787)
* If a char mask  is successfully created from the full input, return it

* Don't double-up adding a block to a BlockMaskBuilder (if adding by regex is successful)
 - InputParseException is thrown if unsuccessful

* Fix optimisation of BlockMask for negation of a single block type
 - Fixes #1755

* Allow early returning of an optimized MaskIntersection to avoid unnecessary work

* Actually allow underscore in isAlphanumericUnd
 - Fixes #1626

* Replace a few more hard-coded air internal IDs

* Don't fail silently if BlockMaskBuilder#addRegex doesn't work when testing all block types

* Remove unused import
2022-06-16 16:24:48 +02:00
Jordan
f2bab901f4
The extent minY check in clipboard paste is un-needed as it is handled gracefully by FAWE (#1806)
- Fixes #1771
2022-06-16 16:24:00 +02:00
Jordan
1da987d594
Fix PNGWriter exporting blank PNGs (#1807)
* Fix horrendous variable assignment in PNGWriter
 - Fixes #1679

* More detailed information on PNG format

* Avoid a larger number of blocks that do nto have a color assigned in TextureUtil

* Don't error in PNGWriter if biomes aren't saved to clipboard and grass is present
2022-06-16 16:23:52 +02:00
Jordan
ac11da855a
Processor should be added to queue, not extent (#1809)
- Fixes #1559 root cause
2022-06-16 16:23:45 +02:00
Jordan
9395b3c575
Prevent unhinged tree generation by doing a sanity check on the block below/block of the tree placement (#1811) 2022-06-16 16:23:37 +02:00
Jordan
cb6e200ca6
Use the correct CuboidRegion constructor to prevent clipboard height being limited when loading schematics (#1798)
Use the correct CuboidRegion constructor to prevent clipboard height being limited when loading schematicsd
 - Fixes #1757
2022-06-15 13:37:32 +02:00
Jordan
ea434163c4
Only create entities during a restore if they are contained by the region and the editsession's mask (#1800) 2022-06-15 13:37:20 +02:00
dordsor21
111d604075
Follow up to 39e1a811f7 to fix DOC loading 2022-06-14 17:20:59 +01:00
Owen
39e1a811f7
Don't apply offset to SimpleClipboard (#1751)
* Fix offset

* Don't apply offset in SimpleClipboard

Co-authored-by: Alexander Brandes <mc.cache@web.de>
2022-06-13 23:42:50 +02:00
Jordan
b797655d0c
Only implement cache to MaskingExtent when off main thread (#1789)
* Only implement cache to MaskingExtent when off main thread
 - It's possible for a [Chunk/Char]FilterBlock to be used multiple times in the same "tree" of method calls meaning the mutable paramets (particularly index) get increased within a loop, causing AIOOBs and other issues
 - This is only possible on the main thread due to the handling of submissions in SingleThreadQueueExtent, as it ensures all operation remains on the main thread to prevent deadlocks
 - Therefore safe usage of FilterBlocks requires that main-threaded operation create a new [Chunk/Char]FilterBlock instance each time
 - Further fixes #1681

* Fix typos

* Switch to LongFunction
2022-06-13 23:42:40 +02:00
Jordan
63f031b01a
Only synchronise tree generation at the very lowest level (#1788)
* Only synchronise tree generation at the very lowest level
 - Fixes #1681

* Perform the generate inside try-finally and actually use the resultant copied map to place blocks to the editsession

* Check result of generateTree and return null if failed
2022-06-13 09:05:18 +02:00
Jordan
02a6bb9b27
Implement limits to image size and load times (#1790)
* Implement limits to image size and load times
 - Prevents issues caused by users attempting to load large images
 - Implements #1729

* Check dimensions given before attempting to load image
2022-06-13 09:04:59 +02:00
Alexander Brandes
e54cae33f1
build: Release 2.3.0 2022-06-10 23:34:05 +02:00
Alexander Brandes
aa94612b70
feat: Add support for 1.19 (#1783)
* feat: Add support for 1.19

* build: Update paperweight version

* fix: obfuscated names, invalid method signatures

* avoid NPE on config access

* build: Update paperweight

* implement no-op light engine to avoid stalled tasks that never complete

* Apply DelegateSemaphore fixes to 1.19 (#1782)

* Apply DelegateSemaphore fixes to 1.19

* Fixes

* Avoid using PalettedContainerRO#recreate as much as possible. Show an error or warning when we're forced to use it to help fix (#1784)

Co-authored-by: Pierre Maurice Schwang <mail@pschwang.eu>
Co-authored-by: SirYwell <hannesgreule@outlook.de>
Co-authored-by: Jordan <dordsor21@gmail.com>
2022-06-10 23:22:06 +02:00
Alexander Brandes
3ec17f3507
chore: Drop WEManager#cancelEditSafe() logger (#1779) 2022-06-10 01:26:59 +02:00
Alexander Brandes
d7d43869e6
chore: Update upstream
31e5298 Fixed //stack erroring when given a count of 0 (2108)
2022-06-10 01:05:51 +02:00
Jordan
0b33fa8757
Allow NBT stored in DiskOptimizedClipboards to be written to disk as a compressed byte array at the end of the file (#1745)
* Allow NBT stored in DiskOptimizedClipboards to be written to disk as a compressed byte array at the end of the file

* Add some deprecations/javadocs and provide the expected clipboard version on error

* Javadoc since tags and add location of clipboard folder to error

* Refactor load-from-file method into DOC class

* Refactor nbt loading code into separate method in DOC
2022-06-09 12:48:35 +02:00
Owen
af234b284b
Add block break effect to area pickaxe (#1770)
* Add block break effect to area pickaxe

* Create pos lower

* Check before queueing block effect

* comment
2022-06-09 12:48:24 +02:00
Owen
a16074cbe4
Fix //snowsmooth not working below Y0 (#1769)
* Use min y instead of 0 for SnowHeightMap

* Correctly handle rounding for height

* Revert old fix

* Use y instead of newHeight

* Remove line diff
2022-06-07 12:06:03 +02:00
Jordan
32231b48fe
Avoid int overflow when using fillr in negative coords (#1711)
Fix int overflow when using fill and fillr in negative y-coordinates
2022-06-05 20:52:36 +02:00
Jordan
198c6b7800
Some fixes and improvements to internal queuing (#1715)
* the set array given in NMSAdapter should have get data written to it
 - Fixes #1664
 - May fix #1700

* Having target size >= 2* parallel threads allows for adjacent chunks to be loaded with issues

* "empty" chunk section doesn't need to be localised to the chunk and may be static

* Switch to slightly more performant stream method for testing for non-empty sections

* Implement lock into ChunkHolder preventing any modification to occur whilst the edit is being applied to the world
 (when ChunkHolder is called)

* Add config note about target-size

* set ordinal equal to air if both set and get are `__reserved__`

* Add note to checkAndWaitOnCalledLock method of its use

* Don't print exception and throw

* Switch to a wrapped StampedLock allowing reentrant behaviour
 - StampedLock is not reentrent
 - Allow unlock from a different thread only if it provides the correct stamp
 - This stamp can only be retrieved by the thread owning the lock

* Avoid some "doubling-up" of using checkAndWaitOnCalledLock

* Unbloat `checkAndWaitOnCalledLock`

* Add since tags
2022-06-05 20:52:28 +02:00
Jordan
8228b798e5
Implement biomes to filter blocks and use in Clipboard pasting (#1743)
- Fixes #1741
2022-06-05 20:52:14 +02:00
Alexander Brandes
3a65c64977
chore: Use correct since annoation dates 2022-05-18 21:50:20 +02:00
Alexander Brandes
3c4695bb73
build: Release 2.2.0 2022-05-18 21:46:22 +02:00
Pierre Maurice Schwang
39d77091d9
Don't error when loading a schematic fails (#1744)
fix: Throwable#getMessage may be null
2022-05-16 13:23:21 +01:00
Jordan
deaf5ad2d6
Respect clipboard settings (disk vs memory) when loading a schematic (#1742) 2022-05-14 21:10:13 +01:00
Jordan
1c7643bb58
Allow use of BlockVectorSet for large //line selections instead of LocalBlockVectorSet (#1713) 2022-05-11 13:22:10 +01:00
dordsor21
059c5f046d
"Empty" side effects is default, and default does "apply" side effects 2022-05-10 17:28:09 +01:00
Jordan
b237ddf076
Cherry pick upstream commits to fix SideEffectSet (#1737)
* Fix SideEffectSet.none() being the default set (#1620)

* Fix SideEffectSet.none() being the default set

* Remove the unnecessary private empty constructor for SideEffectSet

* Back to ImmutableMap.of

* Speed up Fast Reorder Mode and make it default (#1653)

* Speed up Fast Reorder Mode and make it default

* Make non-exposed side effects internal

* Docs on isExposed

Co-authored-by: Matthew Miller <mnmiller1@me.com>
2022-05-10 10:11:12 +02:00
Jordan
267dc153f0
Don't initialise a DiskOptimisedClipboard before checking for an existing one in the LocalSession when using loadClipboardFromDisk (#1731) 2022-05-09 12:50:19 +01:00
Jordan
210ee9f2ef
Implement getNameUnsafe method to allow an unloaded world's name to be accessed (#1712)
* Implement getNameUnsafe method to allow an unloaded world's name to be accessed
 - Fixes #1671 and #504

* Add javadoc since tag

Co-authored-by: Alexander Brandes <mc.cache@web.de>

Co-authored-by: Alexander Brandes <mc.cache@web.de>
2022-05-05 21:39:45 +02:00
Jordan
e294245ec4
Fix some horrendous code where methods supposed to return a boolean only ever return true (#1718) 2022-04-24 18:03:40 +02:00
dordsor21
82ba96bf71
Add constraints to //asc and //desc 2022-04-24 00:11:57 +01:00
dordsor21
f5ef0cadb6
Clean up remaining byte casts from 39081e62c9 2022-04-20 23:47:09 +01:00
Orlaando
3610af15e8
Show number of affected blocks in //set command (#1703)
* Show # of blocks affected in //set

* Fix typo

* fix: Add amount of blocks affected to strings.json

Co-authored-by: NotMyFault <mc.cache@web.de>
2022-04-19 08:55:19 +02:00
Pierre Maurice Schwang
6e26741fdc
fix: respect block categories in RichMaskParser (#1694) 2022-04-11 13:59:54 +02:00
NotMyFault
4970db0405
chore: Use assets for 1.18.2 2022-03-29 12:53:19 +02:00
Pierre Maurice Schwang
d1588f9207
Fix tabcomplete for random pattern / multiple pattern (#1675)
* Merge RandomPatternParser#getSuggestions with upstream

* fix: don't throw AIIBE if patterns are empty

shouldn't be the case in the first place
2022-03-27 09:46:36 +02:00
NotMyFault
d400a470a1
Update upstream
5843aa5 Change vector command converter wording. (2059)
2022-03-13 19:19:59 +01:00
Jordan
5a97b23347
Don't error when adding processors to NullExtent, simply do nothing (#1654) 2022-03-13 18:35:27 +01:00
NotMyFault
95512a4c0b
build: Release 2.1.0 2022-03-10 22:57:23 +01:00
Jordan
e9db749e2f
Add fluid ticking and refactor post-processing a bit (#1554)
* Make postProcessSet a default method and change to void

* Throwable#getMessage is nullable

* Move (re-)ticking to a post-processor per "platform"
 - Add fluid ticking

* chore: Ignore (for us) irrelevant rules

* chore: Fix correct toml syntax?

* Re-add removed method for API-compliance and refactor it to have a use

* Switch to javax annotations

* Switch to recalcBlockCounts for ticking blocks.

* No need to set air count anymore either

* We can still "not tick" in fast mode in 1.17.2

* update adapters

* Let paper create the chunk section if biomes are null

* Adjust notes to settings

* 1.17.2 didn't exist

* Add 1.18.2

* Don't attempt to cache plains biome ID

* Use correct annotation

Co-authored-by: NotMyFault <mc.cache@web.de>
2022-03-10 15:27:25 +01:00
Alex
5d18e15128
Replace JB occurrences with JSR 305 (for now) (#1651)
* refactor: Replace JB occurrences with JSR 305 (for now)

* chore: Update adapter jar
2022-03-10 14:24:44 +01:00
Alex
345785a25e
feat: Support for 1.18.2 (#1641)
* feat: Preliminary work for 1.18.2

* Update SpigotNames to 1.18.2 (#1642)

* 1.18.2 / Biome-Holders, regeneration (#1645)

* 1.18.2 / Biome-Holders, regeneration

* fix: reuse old structure sets

* build: Update dev bundles

* fix: Don't log regen world generation

* fix: Run DataConverter with CBT

* fix: Override `#toNativeBinary`

* fix: Exception on regen

Co-Authored-By: Pierre Maurice Schwang <mail@pschwang.eu>

* refactor: Minor cleanup

Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Pierre Maurice Schwang <mail@pschwang.eu>
2022-03-07 15:20:05 +01:00
Jordan
dec0373081
Fix 1.17 snapshot restoration (#1632) 2022-02-27 21:20:16 +00:00
Jordan
b8ab2a5204
Don't allow heightmap-based brushes to edit the entire world "depth" (#1617)
Fixes #1614

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:33:37 +01:00
Jordan
fc2662e51e
Fix //snapshot in 1.18 and re-implement biome/entity restoration (#1620)
* Re-add "//snap" and "//snapshot"

* Place code in correct method

* Use CompoundBinaryTags in AnvilChunk18 and implement biome/entity restoration

* Address comments

* Fix biome reading

* Fix retrieval of entities from zipped snapshot world

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:33:25 +01:00
Jordan
28a0239437
Fix clipboards to allow proper heights by allowing extended CuboidRegion heights (#1624)
* Fix clipboards to allow proper heights by allowing extended CuboidRegion heights
Fixes #1534

* Add @since

* Fix javadoc comment

Co-authored-by: Alex <mc.cache@web.de>
2022-02-24 10:32:45 +01:00
NotMyFault
f8e6feb1f2
Update upstream
17b9f00 Move tinyurls to ehub.to (2033)
76ec878 Allow biome commands to be used from non-player actors (2034)
2022-02-20 14:18:58 +01:00
Jordan
39081e62c9
byte cannot be used to represent height anymore (#1618)
Fixes #1593
2022-02-17 19:34:25 +01:00
Jordan
f7a0c14a1b
Correctly use getNearestSurfaceTerrainBlock in SurfaceSpline and SchemGen (#1616)
Fixes #1609
2022-02-17 19:34:07 +01:00
dordsor21
3f28a5759d
Make slope method slightly more readable in AngleMask 2022-02-16 18:18:58 +00:00
dordsor21
a40d1ccf51
Better naming for min position in HeightMap 2022-02-16 18:13:04 +00:00
dordsor21
fbe0c08c26
FAWE HeightMap constructor shouldn't be deprecated 2022-02-16 18:02:20 +00:00
dordsor21
05bd84b504
Don't crazily initialise HeightMapFilter...?? 2022-02-16 17:47:43 +00:00
dordsor21
3e85369765
Make angle pattern slope a little more readable 2022-02-16 17:42:22 +00:00
Pierre Maurice Schwang
f657a80dc6
fix: set size of MappedByteBuffer accordingly (#1608) 2022-02-13 13:57:19 +01:00
Pierre Maurice Schwang
646a683f22
fix: add coordinates to tile-entity nbt component (#1607) 2022-02-12 13:38:37 +01:00
NotMyFault
d80bfc7495
docs: Update wiki link 2022-02-04 11:16:23 +01:00
NotMyFault
38b0dcf7e4
Update upstream
e485433 Fix legacy error message output for WorldGuard commands (2023)
2022-01-30 19:54:50 +01:00
Alex
e8f72d6521
fix: Deduplicate error messages (#1557)
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1535
2022-01-24 12:52:33 +01:00
Alex
016b4ba81d
fix: Unify superpickaxe behavior (#1553)
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1547
2022-01-21 14:41:24 +01:00
NotMyFault
d17e3a6555
chore: Add missing Fawe annotations to //regen command 2022-01-19 13:58:52 +01:00
dordsor21
d3696f91d4
Synchronise access to the PriorityQueue used for effect queuing in AbstractWorld
- Makes it thread-safe
2022-01-15 17:09:49 +00:00
Jordan
6a972e7b99
Heightmaps used for brushes etc. should be normalised to zero. (#1522)
* Heightmaps used for brushes etc. should be normalised to zero.
Fixes #1508

* chars are unsigned

* Add scale paramer to javadoc
2022-01-14 10:49:23 +01:00
Alex
9e40b972b1
refactor: Put Fawe version information at debugpaste to (#1533) 2022-01-12 01:22:24 +01:00
Alex
9ba90d8c83
refactor: Drop custom snakeyaml implementation (#1523)
* refactor: Drop custom snakeyaml implementation

* Merge branch 'main' into chore/main/remove-snakeyaml-wannabe-abstraction
2022-01-09 10:55:16 +01:00
dordsor21
c2f3c13a09
Fix #1510 2022-01-08 18:10:14 +00:00
dordsor21
4754f660c7
Fix #1524
Also brings in line with upstream
2022-01-08 17:46:28 +00:00
Alex
64442a8051
refactor: Tackle a few Semgrep and ErrorProne violations (#1520)
* refactor: Tackle a few Semgrep and ErrorProne violations

* Address comments
2022-01-07 12:45:53 +01:00
dordsor21
722c411219
Add workaround for when expressions are parsed in masks/patterns where '&&' is used
Fixes #1517
2022-01-05 17:46:18 +00:00
Owen1212055
c27a34ce40
feat: Add worldedit.schematic.list.other permission and functionality (#1507)
* Add worldedit.schematic.list.other permission and functionality

* Implement StringMan#containsUuid

* Javadocs

* chore: Add since annotation

Co-authored-by: NotMyFault <mc.cache@web.de>
2022-01-05 16:21:44 +01:00
NotMyFault
ef686af8dd
Update upstream
fb5ec19 Fix error for snapshot restore missing chunk
2022-01-04 21:01:49 +01:00
NotMyFault
b8399abfe1
refactor: Deprecate tick limiter API for public use 2022-01-04 20:33:05 +01:00
NotMyFault
7e96853b89
docs: Fix deprecation tag 2022-01-01 18:46:28 +01:00
dordsor21
0994ea1e67
Fix issue with offset/origin when pasting a clipboard via API without wrapping into a BlockArrayClipboard 2021-12-30 16:05:16 +00:00
dordsor21
f30ea96268
Refactor: add javadoc to Clipboard#create and improve variables when delegating to another paste method 2021-12-30 16:04:38 +00:00
NotMyFault
122cba677a
docs: Put since annotation on newly introduced API 2021-12-29 18:14:18 +01:00
dordsor21
235d0360da
Don't wrap Exception thrown upon invalid schematic path inside a RuntimeException
Fixes #1506
2021-12-29 16:55:32 +00:00
dordsor21
52fa44516e
Throw, catch, and rethrow our own exception to make sure we're finding the culprit to a possible shaded-FAWE. 2021-12-29 16:47:34 +00:00
dordsor21
9e8f0e7325
Refactor: getVersionMin/MaxY -> versionMin/MaxY 2021-12-29 16:44:41 +00:00
dordsor21
f505828af1
More enhanced switches 2021-12-29 16:44:18 +00:00
NotMyFault
19de815ab4
chore: Format our loggers properly 2021-12-29 17:13:20 +01:00
dordsor21
f38859237a
Move to BinaryTags where appropriate in adapters 2021-12-29 16:00:49 +00:00
Jordan
177d731957
Add back statically-set reserved IDs for air blocks only, make it clear they're "reserved" (#1502)
* Add back statically-set reserved IDs for air blocks only, make it clear they're "reserved"
Also:
 - Ensure that reserved is never returned in GET block operations
 - "empty" thus doesn't exist in the GET update methods; remove the needless checks
 - Allow GET/SET chunks to determine their own default values for non-present blocks/sections

* Add comments
2021-12-29 16:17:20 +01:00
JOO200
5d4a2a4a0d
Use Math.floor instead of int cast 757bef1f7d2b16317ab3d18427ad22183344e28d 2021-12-29 12:42:19 +00:00
dordsor21
c28a5ee66e
Merge branch 'main' into major/2.0.0/1.18 2021-12-29 00:19:25 +00:00
dordsor21
36857a5064
Fix #1490 2021-12-28 23:02:48 +00:00
dordsor21
f236934a39
Add get default version min/max world height to platform
- Fixes #1500
2021-12-28 22:46:19 +00:00
dordsor21
46fdceaea6
add missing annotation to Region 2021-12-28 22:05:40 +00:00
NotMyFault
596356a936
refactor: Shift FileAlreadyExistsException catch to a higher level 2021-12-27 00:00:49 +01:00
NotMyFault
0c8db1e1fe
feat: Add a bunch of new types to the flora generator 2021-12-25 19:03:30 +01:00
NotMyFault
42035bdb87
chore: Lazily prepare update checker for future job
Future versions of Fawe use a version agnostic job. This commit will remain unmerged to any other branch but warrant a working update checker.
2021-12-25 17:24:26 +01:00
NotMyFault
3b24a8ae8a
Merge branch 'main' into major/2.0.0/1.18 2021-12-25 17:20:52 +01:00
Hannes Greule
96ca83704a
fix: Backport fixing delay closing of clipboards on quit (#1493) 2021-12-25 17:18:39 +01:00
NotMyFault
28079e8129
refactor: Also deprecated IMP for DBHandler 2021-12-23 15:59:05 +01:00
Aurélien
ca5ad58f01
Fix WEManager (#1487)
* Fix WeManager?

* Fix WeManager?

* Also register WEManager if not available, like TaskManager.
2021-12-23 12:39:11 +01:00
NotMyFault
7da921e075
refactor: Deprecate IMP initializors in favor of builders 2021-12-22 20:58:23 +01:00
NotMyFault
1715f35341
refactor: Do prepared statements properly
- Update TextureUtil client jar to 1.18.1
- Limit the update checker to our domain
2021-12-22 13:10:04 +01:00
dordsor21
77802758a9
Fix parsing of build in FaweVersion 2021-12-22 11:44:37 +00:00
Jordan
6b6c94556a
refactor! Remove deprecations marked for removal that are not present in upstream (#1483) 2021-12-22 01:53:45 +01:00
NotMyFault
94b392dd39
refactor: Address a few TODO 1.18's
(cherry picked from commit 0b77932b6e46c825d78b8c7ccae2a68ad890564e)
2021-12-21 18:02:20 +00:00
NotMyFault
7453f12e66
chore: Lazily change build delimiter 2021-12-21 16:27:46 +01:00
dordsor21
e9d97fc7b1
Update version (checking) for semver 2021-12-20 21:18:26 +00:00
Jordan
d6e3c331d4
Make 1.18 to be effectively in a usable state (#1452)
* Update swathes of easy-to-update-sort-of-code.
 - Untested
 - Should compile but NMF broken something
 - Several todos:
  - biome history//better support (move to biome sections in core)
  - regen (haha lol no thanks, someone else can do that)
  - probably actually do the palette stuff that probably won't work in PaperweightPlatformAdapter

* ci: Provide basic Jenkinsfile for ghprb pipeline

* build: Update paperweight

* upstream: Update Upstream

de6fa17 Add getBrush helper for use with instanceof pattern matching (1926)

* FAWE will now load on startup

* it....works?

* Begin to allow biome edits (and fix biomes reverting to plains upon editing blocks)

* Add new blocks/block properties

* Only create biome palette if supplies is null

* Fix biome operations

* Finally get removing BlockID done (major version change allows it)

* refactor!: Drop PlotSquared v4

Fawe 2.0.0 and newer requires Java 17, PlotSquared v4 supports 1.13 and 1.14, Fawe wont work on these versions nevertheless and refuses to load due Java version incompatiblities with older versions. Newer versions can use PlotSquared v6.

* docs: Update readme

* Added and removed some comments

* Added and removed some comments

* refactor: Rename worldedit configuration

* build: Re-add 1.17 module

This the a very nasty commit

* chore: Implement missing methods

* build: Update paperweight

* upstream: Update upstream

6df194e Remove finalize, use a Cleaner instead (1943)
9843a4f Fix snapshots in 1.18 (1959)

* ci: Escape workflows

* build: Update paperweight to 1.18.1

* build: Update Paster

* Fix compilation

* Bump to 1.18.1

* Do both 1.18 and 1.18.1

Co-authored-by: Alex <mc.cache@web.de>

* Fix single-block lookups

* Reserve ordinals 0 through 3 for air/"reserved"

* Create block palette data with values

* Fix classpath for testing for starlight

* Correctly use block rather than sky light layer [not used in paper]

Co-authored-by: NotMyFault <mc.cache@web.de>
Co-authored-by: Matt <4009945+MattBDev@users.noreply.github.com>
2021-12-20 21:12:04 +00:00
dordsor21
c697eb8d41
Merge branch 'main' into major/2.0.0/1.18 2021-12-20 20:28:15 +00:00
Owen1212055
781bfc542f
fix: Properly delete ChangeSets on history clear (#1413)
Fixes #1347

Co-authored-by: Jordan <dordsor21@gmail.com>
Co-authored-by: Alex <mc.cache@web.de>
2021-12-06 14:31:46 +01:00
NotMyFault
1f975ac044
Update templates, address JEP deprecations and place a few TODOs 2021-11-30 21:30:46 +01:00
NotMyFault
0b45248b8c
style: Use minimized version output 2021-11-29 22:15:41 +01:00
Alex
11e25911d5
upstream: Update upstream (#1430)
* upstream: Update upstream

c407471 Re-add class shutter with tweaks. (1947)

* upstream: Update Upstream

29f1c66 If a trace hits the world limit, cancel it (1942)

* upstream: Update upstream

511daa5 Update paperweight dev bundle
2021-11-26 23:31:27 +01:00
Alex
4c6e707fcf
fix: Error when setting PS v4's config option (#1427)
Fixes https://github.com/IntellectualSites/FastAsyncWorldEdit/issues/1372
2021-11-19 09:42:33 +00:00
dordsor21
ef61ecccaa
Fix tab completion when *not* using %.
- Also allow tab-completion of % pattern when it's the first/only pattern being used
 - Also don't error when attempting to tab complete an invalid percent value
2021-11-18 18:42:19 +00:00
dordsor21
9bf9885ffb
Fix tab completion of % (random) pattern removing the % part of the input 2021-11-16 14:54:43 +00:00
dordsor21
5692ec54dd
Parse with square brackets after a % modifier
- Fixes #1409
2021-11-16 14:32:25 +00:00
dordsor21
66357b8adb
Fix RichParser assuming it should be used if its prefix is short than, and contained by, the input 2021-11-16 12:49:54 +00:00
dordsor21
575b0035df
Should be equals in checking if valid prefix when not shorter and with no arguments 2021-11-16 12:48:09 +00:00
dordsor21
cf6f54bd28
Fix RichParser suggestion sometimes giving a different pattern/mask when specifying arguments 2021-11-16 12:19:08 +00:00
dordsor21
527b7141a3
RandomPatternParser is an upstream class 2021-11-15 18:02:43 +00:00
Desjardins Jérôme
a2df590fae
feat: Add worldedit.schematic.save.global permission (#1406) 2021-11-12 14:21:06 +00:00
Jordan
6df16cfe96
refactor: Alter handling of errors in bindings (#1395)
* Alter handling of errors in bindings
 - Fixes #1384

* Arbitrarily use TextComponent#of for InputParseException
2021-11-11 17:37:25 +00:00
dordsor21
806ea14ad2
Unfix #826 in favour of allowing toggling the wand
- #826 is a pretty niche requirement, usually permissions do not change without a world change, relog, etc. very frequently
 - Allowing //toggleeditwand and /tool none on the wand feels more important
2021-11-10 22:13:44 +00:00
dordsor21
f04e891e0c
Allow schematics with empty, but present, biome data 2021-11-10 19:45:49 +00:00
dordsor21
7a9549b75a
Unmerge wall/"besides / |" masks 2021-11-08 15:49:43 +00:00
Lilly Tempest
971ae04020
Fix incompatibility between WorldEdit and FAWE for LocalSession#getTool (#1399) 2021-11-04 20:29:40 +00:00
dordsor21
21b6f582e1
Switch some Caption#of to TextComponent#of 2021-11-03 18:33:19 +00:00
dordsor21
d91a971e85
Allow extent to be used down the pipeline in BlockReplace
- It's quite likely for this to be required given BlockReplace use in replacenear
 - Fixes #1390
2021-11-02 20:53:14 +00:00
JayemCeekay
2c56e480c3
Expand certain FAWE limits to use Long instead of Integer. (#1382) 2021-11-02 16:38:39 +00:00
dordsor21
0674f39600
Synchronise chunk filtering 2021-11-02 13:34:37 +00:00
Arcaniax
ee0d1b5a5b
fix: Add missing Gray Candle types (#1383)
* Added Gray Candle types

Added GRAY_CANDLE & GRAY_CANDLE_CAKE

* Added Gray Candle to the ItemTypes
2021-10-29 14:57:58 +00:00
dordsor21
1b1f3bbcbe
Fix #1375 2021-10-25 15:04:59 +01:00
dordsor21
47f25c4f31
Slight cleanup of region parsing in EditSessionBuilder 2021-10-25 14:13:26 +01:00
dordsor21
f7e94fd450
Only add backupregions if whitelisting 2021-10-25 14:12:36 +01:00
NotMyFault
c55bc8c05f
refactor: Move update checker to core
feat: Add permission for tracing
2021-10-23 19:36:59 +02:00
dordsor21
3d70d9e496
RegionIntersection requires List constructor 2021-10-23 14:09:01 +01:00
dordsor21
ae949d607b
Move paperweight to BinaryTag
- Upstream put paperweight into master branch, which doesn't have BinaryTags
 - Fixes #1374
2021-10-22 16:00:51 +01:00
dordsor21
857090bdde
Add meaningful default methods to getMask for region protection 2021-10-21 18:25:36 +01:00
NotMyFault
d4eda78818
refactor: Remove redundant loggers 2021-10-21 17:26:16 +02:00
NotMyFault
c07ba4e88e
Merge branch 'feature/region-blacklist' 2021-10-21 17:13:13 +02:00
NotMyFault
e7a6c3e58c
Merge branch 'chore/main/deprecate-unsafe-utils' 2021-10-19 22:09:01 +02:00
dordsor21
37eb4a1008
Regress to upstream for (Binary)Tags in data fixers 2021-10-19 14:12:02 +01:00
NotMyFault
bd9476a175
refactor: Address .editorconfig violations 2021-10-18 23:09:21 +02:00
NotMyFault
f1e8a1a29a
refactor: Move Unsafe to reflection class 2021-10-18 22:01:54 +02:00
Pierre Maurice Schwang
c7a490fa03
Fix paperweight changes (#1364) 2021-10-18 20:38:43 +01:00
dordsor21
8fe610311d
Comments 2021-10-17 15:53:19 +01:00
dordsor21
7d894228d0
Implement region blacklisting 2021-10-17 15:53:04 +01:00
NotMyFault
f0880a27a0
feat: Paperweight support (#1362)
* Initial work towards paperweight

* feat: Port Fawe classes to paperweight

- Hide UnsafeUtilities in javadocs
- Fix typo in Regenerator
- Create fawe tmp directory for fawe regen

* Update adapters

* chore: Update MiniMessage

* Address todos

* Fix leftover Tuinity loggers
2021-10-17 16:32:36 +02:00
Jordan
9c1c8bfdf2
Implement restoring biomes, entities, and extended world heights (#1316) 2021-10-17 13:40:55 +00:00
NotMyFault
27865dc785
chore: Exchange debug log levels & component-ify a few messages (#1342) 2021-10-17 14:50:42 +02:00
NotMyFault
5db9a601b1
feat: (Re-) Add update notifications (#1361)
* feat: (Re-) Add update notifications

Fixes #1348

* Move update notification to seperate class

- Add a couple of linebreaks to the chat messages
2021-10-17 09:55:25 +02:00
NotMyFault
99b45c13fb
fix: Invalid yaml syntax of new config values
Follow up from 6839fa5567
2021-10-09 17:22:16 +02:00
dordsor21
6839fa5567
Add configurable disallowed states for limits, global disallowed blocks (#1312) 2021-10-09 11:02:26 +00:00
Pierre Maurice Schwang
2eb6451810
fix: Add dummy constructor for CraftBook5 support (Fixes #1334) (#1344)
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-10-07 17:18:10 +00:00
NotMyFault
e2924f4cba
feat: Improve wording of allowed-plugins message (#1341)
Fixes #1319
2021-10-07 17:12:17 +00:00
dordsor21
6895234815
Don't allow edits on plots when owner is offline and player is only added (#1313) 2021-10-04 12:34:40 +00:00
dordsor21
d44f297068
Fully fix #1331 2021-10-01 13:27:05 +01:00
dordsor21
3a45a31e65
Better error message for LocalBlockVectorSet 2021-09-30 13:17:28 +01:00
dordsor21
f886320c44
SurfaceMask should be copied properly.
#1331
2021-09-30 13:17:15 +01:00
dordsor21
7a6a0f68fe
Don't allow area pickaxe outside max y
#1331
2021-09-30 13:16:15 +01:00
dordsor21
0ed98729f8
Allow console to execute commands now that editsessions etc. accept actors
- Fixes #724
 - Fixes #1044
2021-09-28 15:59:52 +01:00
dordsor21
fa2f50dea8
Sometimes an overlay position may not be able to be found. Attempt to resolve or fail nicely. 2021-09-28 14:39:14 +01:00
dordsor21
a3365a12bc
Fix #1327 2021-09-28 14:27:36 +01:00
dordsor21
848eac8623
Fix schematic offset when loaded to clipboard 2021-09-28 13:16:26 +01:00
dordsor21
56999fd1e0
Drain bubble columns as well
Fixes #1326
2021-09-27 14:42:43 +01:00
dordsor21
1cf5899586
Allow deletion of DOC
Fixes #1325
2021-09-27 14:39:21 +01:00
dordsor21
b73db47e01
Add switch to schem loadall to replace existing clipboard(s) 2021-09-27 14:15:26 +01:00
dordsor21
5155055446
Add deprecation message to fawe EditSessionBuilder 2021-09-26 22:10:59 +01:00
dordsor21
e6675f1656
Default per player schematics to false 2021-09-26 22:07:25 +01:00
NotMyFault
ca15e93102
refactor: Remove lz4-stream
LZ4-Java contains a modern version & delegate for lz4-java-stream.
2021-09-26 00:48:50 +02:00
dordsor21
6b5f21d67b
Support old, corrupt, schematics 2021-09-24 16:41:09 +01:00
dordsor21
e97c945b2f
Big fix to clipboards when relogging/restarting server etc.
- Refactor the way FAWE clipboards work slightly with regards to offsets (FAWE-added) and origin (upstream-present)
 - Better error messages when exceptions are thrown attempting to load DOC
 - No longer attempt to resolve old clipboard versions. Attempt to give informative error instead
 - Don't always delete clipboards held in memory on player logout unless configured to do so
 - Go back to fully closing the DOC on logout. We now attempt to lock the file which will hopefully help with debugging shared clipboard folders
2021-09-24 12:22:01 +01:00
dordsor21
bfd9e5b347
Don't stop edits for old clipboards, attempt to load them anyway (for now) 2021-09-24 09:32:49 +01:00
dordsor21
8593c2df9f
Rearrange DOC methods 2021-09-23 12:42:51 +01:00
dordsor21
07c02b5825
Remove import static org.apache.logging.log4j.LogManager.getLogger 2021-09-23 12:34:22 +01:00
dordsor21
6c56fa29aa
Fix #1317 2021-09-22 22:22:39 +01:00
NotMyFault
a5795461f2
Improve a few dependency scopes 2021-09-22 23:00:12 +02:00
dordsor21
663d0139b7
default to a meaningful preload chunk count 2021-09-22 15:58:20 +01:00
dordsor21
3376baa3c5
Remove needless EditSession#getWorld for setting blocks/biomes in a couple of cases
#32 IntellectualSites/FastAsyncWorldEdit-Adapters#7
2021-09-22 15:04:12 +01:00
dordsor21
d25a85e0d4
Fix expression evaluation method used for generatebiome
#32
2021-09-22 15:03:03 +01:00
dordsor21
4400b0f83e
Fix #1114
- Ensure short is correctly cast to int, as we're using it as if it were unsigned
2021-09-22 14:32:49 +01:00
dordsor21
a241e594c1
Slight adjustment to DOC 2021-09-22 13:14:10 +01:00
dordsor21
268d8cff49
Apply list of properties everywhere 2021-09-21 18:53:37 +01:00
dordsor21
b8ec4be95c
Revert "Slightly preferable messages on UsageException thrown by piston"
This reverts commit e9adf0f30d.
2021-09-21 17:30:32 +01:00
dordsor21
c805102819
Fix #1143 2021-09-21 17:18:49 +01:00
NotMyFault
3617a29ba8
Address javadoc violations 2021-09-21 17:40:53 +02:00
dordsor21
1de3a6b54a
Don't return "=" pattern early either 2021-09-21 15:07:58 +01:00
dordsor21
70f7f00abf
Do the same for "=" mask 2021-09-21 15:06:46 +01:00
dordsor21
c26977f578
Fix very specific issue where charmasks (< > $ etc.) are used with other masks, but only the charmask is used 2021-09-21 15:05:43 +01:00
dordsor21
57b47d2451
Use a MaskTraverser to set extent where it will be a WorldWrapper otherwise 2021-09-21 14:59:49 +01:00
dordsor21
23ca345a2e
Don't setextent twice in replace 2021-09-21 14:51:39 +01:00
dordsor21
971977a66a
Fix //sel list 2021-09-21 14:51:05 +01:00
dordsor21
d0056870be
Fix fuzzy region 2021-09-21 14:31:03 +01:00
dordsor21
69ae4a7121
Fix ellipsoid selection 2021-09-21 14:07:10 +01:00
dordsor21
e9adf0f30d
Slightly preferable messages on UsageException thrown by piston 2021-09-20 23:35:04 +01:00
dordsor21
9d26f030dc
Fix some command errors being hidden by a usage message 2021-09-20 23:18:38 +01:00
dordsor21
040edc8fd0
Adjust exception catch slightly 2021-09-20 23:07:58 +01:00
dordsor21
bb06492091
Fix -f flag 2021-09-20 18:10:37 +01:00
dordsor21
017a28b3dd
Implement getAllProperties to code and adapters 2021-09-20 16:00:50 +01:00
dordsor21
17a97f2f19
Fix lack of handling of custom world heights in CharFilterBlock 2021-09-20 14:15:08 +01:00
dordsor21
7a9cbe5d77
Correct description of strip nbt 2021-09-20 01:54:49 +01:00
dordsor21
aba147f787
Minor spring clean 2021-09-19 21:40:15 +01:00
dordsor21
8a4f28a7cc
StripNBT processor rather than extent 2021-09-19 21:39:00 +01:00
dordsor21
b11a67e435
Fix #1311 2021-09-19 21:20:18 +01:00
Matt
4f68fb0e26
Add tracing feature to EditSessions (Upstream 1301) (#1112)
Co-authored-by: Octavia Togami <octavia.togami@gmail.com>
Co-authored-by: dordsor21 <dordsor21@gmail.com>
Co-authored-by: NotMyFault <mc.cache@web.de>
2021-09-19 20:02:41 +00:00
dordsor21
f405994346
Improve fullycopy pattern parsing
- Don't attempt ClipboardFormats#loadAllFromInput if the user is typing #copy or #clipboard to avoid needless "File dialogs are not supported in your environment." message
2021-09-19 20:47:40 +01:00
dordsor21
abaa98d2a9
Fix #403 2021-09-19 20:47:21 +01:00
NotMyFault
5f7411114e
Fixes #1310 2021-09-19 21:42:53 +02:00
dordsor21
0a48765c98
Add //blob command equivalent to //br rock 2021-09-18 17:42:58 +01:00
dordsor21
7d032ba69f
Scattercommand should use the same editsession for all commands, make it "silent" by default and allow players to see output if wanted. 2021-09-18 17:42:40 +01:00
dordsor21
34301b446a
Allow scatter command brush to use FAWE commands. Best for scatter sphere, etc. 2021-09-18 17:08:03 +01:00
dordsor21
51aa500857
move yscale earlier in br height for people that can't work it out themselves 2021-09-18 16:20:28 +01:00
dordsor21
7a0c0d5d41
Fix #990 2021-09-18 16:15:31 +01:00
dordsor21
fad1fcd8ee
Fix RichParser suggestions 2021-09-18 15:07:41 +01:00
dordsor21
54398ebe1c
Add timeout to regex masking 2021-09-18 15:01:09 +01:00
dordsor21
dbbb450172
Flush clipboards before writing schematics.
#1286
2021-09-18 03:19:49 +01:00
dordsor21
bd95d5a86d
Adjust mask managers
- Add list of "exclusive" managers to config to aid users in having some sort of prioritisation.
 - Fixes #960 if PlotSquared is added to exclusive managers, otherwise, there's no particularly sane way of adding prioritisation without requiring a treemap be added to YAML config, or for us to decide upon it ourselves
2021-09-18 03:19:27 +01:00
dordsor21
1cc6ad1481
Fix #1049 2021-09-17 17:26:41 +01:00
dordsor21
90aeb48040
Fix #1297 2021-09-17 17:12:14 +01:00