Commit Graph

711 Commits

Author SHA1 Message Date
Jesse Boyd
110f782a5c
Optimize entity get (lazy nbt) 2019-04-14 00:00:38 +10:00
NotMyFault
0781c762e6 Merge branch 'remove-auto_updater' into breaking 2019-04-13 12:30:54 +02:00
NotMyFault
c4dc39edbf Remove report system 2019-04-13 12:18:03 +02:00
Jesse Boyd
f9f6aead0f
Some optimizations for 1.13 2019-04-13 16:44:23 +10:00
Jesse Boyd
99c4c2f35d
Add option to disable commands 2019-04-12 10:51:18 +10:00
NotMyFault
fda8f56c5b *
Giving credit to translators 😉

Co-Authored-By: douwe265 <douwe265@gmail.com>
Co-Authored-By: NShoot <nshoot@users.noreply.github.com>
2019-04-11 22:13:39 +02:00
NotMyFault
bb20dd1e00 Update translations adapting latest translation changes
There are still some translations open, if anyone wants to update them as well. Unfortunately I'm not that good with them so I'll leave them up 😅
2019-04-11 21:58:22 +02:00
NotMyFault
dcfa436c64 Minors
- Make disallowed-blocks translatable
- Add more trnslatable messages
- Update WorldEdit messages missing a prefix
2019-04-11 19:49:09 +02:00
Jesse Boyd
7a88039711
Fixes #105 2019-04-12 01:04:54 +10:00
Jesse Boyd
524b24eeae
Fixes #114 (untested) 2019-04-12 01:00:03 +10:00
Jesse Boyd
c05cdb35d8
Don't use CommandContext here 2019-04-12 00:56:59 +10:00
Jesse Boyd
a831ae17b7
Merge pull request #110 from Mgazul/breaking
Fix fixLiquid
2019-04-12 00:55:59 +10:00
NotMyFault
d49be8047c Fix missing prefixes 2019-04-11 15:13:15 +02:00
Jesse Boyd
6996a97027
various minor
CFI works without PlotSquared
tab completion
biome tweaks
WIP on anvil
document disallowed-blocks in legacy config
2019-04-11 21:32:32 +10:00
Jesse Boyd
24590199c8
Fix disallowedBlocks 2019-04-11 14:05:29 +10:00
Jesse Boyd
f726c9afc4
fix //none for tools 2019-04-11 11:28:06 +10:00
Jesse Boyd
a7c5580db3
comment out forced key 2019-04-11 11:19:51 +10:00
Jesse Boyd
d61e5f33f1
some minor fixes
/br sspl - says to click same spot again to apply, clicked same spot and nothing happens
/br layer - gives an error message "there was an error handling a FAWE command: [See console]
/br clipboard - doesn't let me execute because of max radius of 5, however am unable to set a lower radius as there is no option for it
/br butcher - tried to kill some mobs, but didn't work (nothing happened)
/br splatter - tried to execute the command, nothing happened
2019-04-11 05:14:58 +10:00
Jesse Boyd
21be61f03a
fix block mask inverse 2019-04-11 03:25:19 +10:00
Jesse Boyd
2e1b7676eb
Just use instanceof 2019-04-11 02:17:45 +10:00
Jesse Boyd
f0d646a9a1
remove getSimpleName from FawePlayer 2019-04-11 02:11:14 +10:00
Jesse Boyd
c519c5ec38
some anvil fixes 2019-04-11 02:07:57 +10:00
Jesse Boyd
0ef97ccf28
fix cfi issues 2019-04-11 00:49:16 +10:00
Jesse Boyd
e03a43a1ab
finish MCAWriter 2019-04-10 22:04:22 +10:00
Jesse Boyd
808d32bc85
make bit mask protected
TODO same for BIT_OFFSET
2019-04-10 22:03:51 +10:00
Jesse Boyd
b24ebaf6f2
Delay command setup 2019-04-10 22:03:10 +10:00
Jesse Boyd
31797d4231
WIP on 1.13 CFI 2019-04-10 18:32:21 +10:00
Jesse Boyd
d7380781f4
Fix BlockTransformExtent 2019-04-10 02:31:05 +10:00
Mgazul
652f27c853 Fix fixLiquid 2019-04-09 11:29:43 +08:00
Jesse Boyd
093542c337
fix compile + use mutable vector for affine transform + fix bstats package 2019-04-07 20:43:59 +10:00
Jesse Boyd
1529c187d2
Merge branch 'breaking' of https://github.com/IntellectualSites/FastAsyncWorldEdit-1.13 into breaking 2019-04-07 17:41:51 +10:00
Jesse Boyd
31ac2b69d1
Fix block rotation 2019-04-07 17:41:26 +10:00
Jesse Boyd
c8529b0609
. 2019-04-07 10:52:30 +10:00
NotMyFault
ed9ae5a6ab
Update BBC.java 2019-04-07 01:26:34 +02:00
NotMyFault
ab3394c35e Add prefixes and make FAWE more translatable 2019-04-07 01:13:23 +02:00
Jesse Boyd
6558e549fd
Fix smooth brush 2019-04-06 06:52:12 +11:00
Jesse Boyd
39830046bc
Fix //none 2019-04-06 06:47:51 +11:00
Jesse Boyd
ee797219b4
Fix findFreePos 2019-04-06 06:13:15 +11:00
Jesse Boyd
501992dd20
Fix setPosition 2019-04-06 05:51:18 +11:00
Jesse Boyd
0afae082c2
Remove string switches for BlockType 2019-04-06 03:34:11 +11:00
Jesse Boyd
d49c5ebe74
translate a few utility commands 2019-04-06 03:04:27 +11:00
Jesse Boyd
386c8836cd
Fix registry 2019-04-06 02:52:27 +11:00
Jesse Boyd
144215c813
Don't construct new BaseBlock 2019-04-06 01:12:57 +11:00
Jesse Boyd
99db2d557a
optimize repeating extent pattern 2019-04-06 01:05:48 +11:00
Jesse Boyd
9e2832c273
Use BlockVectorSet 2019-04-06 01:01:05 +11:00
Jesse Boyd
f7cdae5e56
Disable undo if fastmode 2019-04-06 00:53:00 +11:00
Jesse Boyd
fd735a6f60
Fix property pattern 2019-04-05 19:22:50 +11:00
Jesse Boyd
ed83ef1aa7
disable transform test for now 2019-04-05 18:20:27 +11:00
Jesse Boyd
2143b9b5b7
finish block registry 2019-04-05 17:51:42 +11:00
Jesse Boyd
be5541b61b
revert some changes 2019-04-05 15:48:41 +11:00
Jesse Boyd
94d5d8df8e
Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
Jesse Boyd
140809c903
Working now 2019-04-05 15:15:10 +11:00
Jesse Boyd
33f5322fda
WIP merge (i'll finish this later) 2019-04-05 01:24:47 +11:00
Jesse Boyd
1beea3cd22
Some more upstream merge 2019-04-04 21:28:41 +11:00
Jesse Boyd
8897109dc4
wip upstream merge 2019-04-04 00:25:16 +11:00
Jesse Boyd
7086eb8b3e
continue with merge 2019-04-03 22:28:57 +11:00
Jesse Boyd
8aef06b29e
*
haven't done one of these in a while
*continuing with merge in previous commit
2019-04-03 17:00:59 +11:00
Jesse Boyd
4cd8d08134
merge with upstream (broken) 2019-04-03 16:53:58 +11:00
Jesse Boyd
f361619037
Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11:00
Jesse Boyd
9fbcbc7cea
<pattern> not <block>
As there are actual commands that will only accept blocks
2019-04-03 15:40:31 +11:00
matt
2407f9246f How did it compile locally? 2019-04-03 00:21:42 -04:00
matt
122236f6c7 Too lazy to write a commit message 2019-04-02 23:36:32 -04:00
matt
29692f3fbe Migrate to SLF4J 2019-04-02 18:21:02 -04:00
matt
47e66913e3 Selective upstream merge 2019-04-02 16:26:51 -04:00
matt
4af43eb84c WeatherTypes now matches upstream 2019-04-02 15:43:40 -04:00
matt
6ccd0eb58e Fixed deleted code due to IDE glitch 2019-04-02 15:22:54 -04:00
matt
1a19bc457f Added Nullable to BlockTypes 2019-04-02 15:03:59 -04:00
matt
3419bb6f30 Fixed stats issue. 2019-04-01 22:09:59 -04:00
matt
86ce762982 Minor performance tweaks and cleaning of metrics
Why were metrics so messed up in the first place?
2019-04-01 20:42:10 -04:00
Jesse Boyd
f87e31683e
don't use origin as the region bounds 2019-04-02 00:19:32 +11:00
Jesse Boyd
c9f1fed282
Fixes #88 2019-04-02 00:08:56 +11:00
Jesse Boyd
c820406e8c
Fix binding order 2019-04-01 23:55:15 +11:00
Jesse Boyd
64a134a9ee
Merge remote-tracking branch 'refs/remotes/origin/master' into new-vector-system
# Conflicts:
#	build.gradle
#	worldedit-core/build.gradle
#	worldedit-core/src/main/java/com/boydti/fawe/util/IncendoPaster.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/command/WorldEditCommands.java

#	worldedit-core/src/main/java/com/sk89q/worldedit/extent/clipboard/io/SpongeSchematicReader.java
2019-04-01 23:50:16 +11:00
Jesse Boyd
bf53194650
Again #47 2019-04-01 21:41:44 +11:00
Jesse Boyd
ff67f6343f
Binding improvements
WIP towards deprecating parsers and unifying the command bindings
Allow registering dynamic bindings
- Supports nesting bindings
2019-04-01 21:35:55 +11:00
Jesse Boyd
6e6a3f9035
Fix plotsquared schematic hook 2019-04-01 21:30:21 +11:00
Jesse Boyd
49e3102779
Fix lazy nbt reading for int/long arrays 2019-04-01 21:29:41 +11:00
Jesse Boyd
8afd96f03b
Fixes #87 oops 2019-04-01 18:48:14 +11:00
Jesse Boyd
603df92f79
Merge pull request #34 from Cygaan/master
Fix copying entities
2019-04-01 13:42:59 +11:00
Jesse Boyd
a44c38c170
Merge pull request #40 from Combustible/sponge_schematic_tweak
Fix sponge schematics not correctly setting dimensions if there are no entities
2019-04-01 13:42:47 +11:00
Jesse Boyd
49b2df1f2e
remove redundant methods 2019-04-01 05:06:03 +11:00
Jesse Boyd
92a7bd5e44
minor tweak for mutable vectors 2019-04-01 03:09:20 +11:00
Jesse Boyd
7b5230ad08
Fawe shouldn't default to have any dissallowed blocks 2019-03-31 22:36:34 +11:00
wizjany
a80420d14b Add biome storage to BlockArrayClipboard. 2019-03-30 00:42:28 -04:00
wizjany
4e66b9a336 Revert 6b3426e1.
Empty base blocks are always immutable. Fuzzy states don't have NBT.
2019-03-30 00:41:47 -04:00
wizjany
42d0d6e79a Use getTag instead of requireTag in a few places. 2019-03-29 23:44:18 -04:00
matt
7ae8d567f3 Cleaned a class 2019-03-28 20:41:16 -04:00
NotMyFault
cb482ccbd5 Remove auto updater and minors
- Remove Changelog command
- Remove Auto updater
2019-03-28 21:31:28 +01:00
matt
699783ba72 Another selective merge 2019-03-28 15:02:37 -04:00
wizjany
d7d2d03ee8 Clipboard offset pattern is now #copy@[x,y,z].
Since the parsers were changed around, unescaped commas are parsed as
separate blocks now.
2019-03-27 23:36:59 -04:00
matt
acc8eb0a99 Lambda's and References and Cleanups! Oh My! 2019-03-27 12:17:05 -04:00
matt
1424998327 Simplified switch statements and minor formatting 2019-03-27 11:36:26 -04:00
NotMyFault
67fd0668ee ocd 2019-03-27 15:40:53 +01:00
NotMyFault
8623dd0009 Fixes #80 2019-03-27 15:38:21 +01:00
matt
712479adbb Reverted incompatible EntityType upstream change 2019-03-27 00:16:54 -04:00
wizjany
74bff83e38 Don't let items types be null.
Better fail-fast if registry doesn't load? or why-ever else this happens
2019-03-26 22:30:46 -04:00
wizjany
6b3426e1de BaseBlock is technically mutable so that technically shouldn't use it. 2019-03-26 18:14:35 -04:00
wizjany
2a194b0434 Add pattern that randomly chooses states.
Also works with fuzzy states.

Syntax is `*type`, e.g. `//set *stone_slab` or with states,
`//set *oak_fence[waterlogged=false]`
2019-03-26 18:11:32 -04:00
matt
9fcf805148 Pattern doesn't need to be deprecated 2019-03-26 16:35:22 -04:00
NotMyFault
464719c02a Revert upstream change 2019-03-26 21:00:28 +01:00
matt
3420b8329b Remove most of PseudoRandom, a few minor cleaning changes, and an upstream change 2019-03-26 13:41:09 -04:00
matt
0d88a6bce2 Merging upstream changes 2019-03-26 13:27:09 -04:00
wizjany
8eccdc7444 Add -f flag to //count to allow fuzzy inputs.
Also re-implement //distr -c. And remove outdated help text on //copy.
2019-03-25 22:38:51 -04:00
matt
85bfd16d7c Code cleaning
Most notable change: Remove redundant type parameters and replaced with <>. This is a small step to bring us closer to upstream parity.
2019-03-25 19:55:32 -04:00
IronApollo
3236bdd78e Changes to NBT-handling in operations and extents, changes to match the widely supported setBlock functionality, minor code cleanup 2019-03-25 13:42:11 -04:00
Josh Knight
4c3b09895d
Merge pull request #76 from IntellectualSites/new-vector-system2
Revert "Make end tag singleton"
2019-03-25 06:09:13 -04:00
NotMyFault
68c8950cdc Add IncendoPaster
Co-Authored-By: Alexander Söderberg <citymonstret@hotmail.com>
2019-03-24 23:02:32 +01:00
NotMyFault
a64ff8f299 Make master build (probably) 2019-03-24 20:58:05 +01:00
wizjany
692ba6fda3 Checkstyle. 2019-03-22 14:03:43 -04:00
matt
456f821ce0 Revert "Make end tag singleton"
This reverts commit 13d2ae20
Why was this changed. I doubt it did much in terms of performance. It's better to stay as close as we can to the worldedit repo.
2019-03-22 12:51:44 -04:00
Sauilitired
44bfc2f753
Fixes #17, and an annoying typo in SnipeData :) 2019-03-21 07:20:47 +01:00
wizjany
9b473cecbd Fixes and changes to forest/forestgen.
* Sync up implementations of the two commands.
* Fix generating trees in spots with replaceable blocks.
* Make message when you mistype tree-type arg more correct.

Fixes WORLDEDIT-3869.
2019-03-20 21:05:11 -04:00
wizjany
1934006d14 Better enforce the Request lifetime.
Previously, the current request would just get a new EditSession when
one was created. Now, a Request is reset before and after:
 - a command is used and
 - an interact is fired with the platform
This means each action taken will get a single, non-reusable Request.

Note that this only applies to actions taken through the platform.
API users will not be using requests anyway, since things like Masks,
etc. will be constructed directly instead of being passed through the
platform's parsers and so on. (e.g. if a plugin loads a schematic into
the world with a mask, they should create the EditSession and mask it
directly, and not use that Mask again for another EditSession in another
World).

Also, get rid of a bunch of (some now-)unnecessary EditSession creation
during command dispatching.

Note that this also fixed the dynamic selection mask, which apparently
has been broken for some unknown amount of time.
2019-03-20 19:13:54 -04:00
wizjany
25631af31c Add RequestExtent to be used when a delayed EditSession is needed.
For example, if you set a mask that takes an extent (many of them),
and then move to another world, the mask will test blocks in the old
world and return bad results.
2019-03-20 19:13:54 -04:00
Josh Knight
83bdb3c8e8
Merge pull request #11 from IntellectualSites/incendo-paste
Make debugpaste use Incendo Paste Viewer, rather than Hastebin.
2019-03-19 10:36:21 -04:00
Matthew Miller
d186cce393 Merge remote-tracking branch 'origin/feature/slf4j-logging' 2019-03-19 20:32:21 +10:00
wizjany
9d2d43f0db Add -f to //schem save to confirm overwriting.
Overwriting existing schematics now checks delete perm.
Also allow delete to be run from console.

Fixes WORLDEDIT-3868.
2019-03-15 17:08:11 -04:00
wizjany
18414fe3b5 Fix symlink detection. 2019-03-15 09:10:51 -04:00
Kenzie Togami
d6804737cf
Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
wizjany
1c5d3368a0 Defer permissions check when making LocalSession.
Also use Java7 Paths to get rid of some funky logic.
2019-03-11 21:31:43 -04:00
Matthew Miller
a5cec7728d
Merge pull request #452 from EngineHub/forge-1.13
Added support for Forge 1.13
2019-03-11 22:52:30 +10:00
wizjany
a59d994d84 Hook up the biome registry. 2019-03-11 00:15:21 -04:00
wizjany
a22b5535fe Shh checkstyle, I'm a C# dev now. 2019-03-08 16:14:16 -05:00
wizjany
7c89ece96e Few tweaks to schematic loading and error fixes.
* Not all EntityTypes in Bukkit have the correct enum name.
* Don't read entire schematic files to list. Go off file extension only.
   (Reading in files is more accurate, but slow.)
* Enforce extensions. (Due to the above, while you can technically make a
   schematic called 'test.txt', it's better that we save it as
   'test.txt.schem'.)
* Fix a few minor warnings.
2019-03-08 16:00:49 -05:00
wizjany
de08c8b8c7
Add better control over expression timeouts. (#451)
Add better control over expression timeouts.
* //timeout command can be used to change player's current timeout.
* Config now also has a max timeout, can be bypassed with permission
* Timeout of < 0 will let expressions run indefinitely.
* Said expressions won't run on a separate thread, slightly reducing the
  overhead from context switching. For large //gen commands, for example,
  this can actually increase speed.
2019-03-06 19:58:32 -05:00
NotMyFault
8a528b26b6 Update P2 repo and minors 2019-03-06 17:35:42 +01:00
IronApollo
c98a311146 Update to working PlotSquared repo; Update to PlotSquared C>Captions class rename; Cleaning and minor modifications to SpongeSchematicReader 2019-03-06 03:06:47 -05:00
Kenzie Togami
4878f38250
Fix platform registration, config setup 2019-03-04 19:36:06 -08:00
wizjany
f84f3c6f85 Fix error when parsing hand/offhand/pos1 as blocks. 2019-03-03 19:51:49 -05:00
wizjany
aafb854e4f More useful names for block ItemTypes. 2019-03-02 12:26:26 -05:00
wizjany
c3ee926a2e Correctness improvement for legacy data in expression generation. 2019-03-02 11:55:03 -05:00
wizjany
e53962dadd Apply source function after source mask in ForwardExtentCopy.
The source function should only get applied to actually copied blocks.
2019-03-01 21:15:21 -05:00
wizjany
f46c70093c Fix the long-range build tool's ability to build mid-air. 2019-03-01 20:10:46 -05:00
wizjany
0656ef1920 Fix LayerVisitor stopping early instead of skipping covered columns. 2019-03-01 19:25:10 -05:00
wizjany
4bd6d73085 Fix some bad copy-pasta in expression environment queries. 2019-02-28 01:03:02 -05:00
IronApollo
0fa9d7a4a7 Changes to EditSession to improve upstream compatibility 2019-02-27 09:01:07 -05:00
IronApollo
3ffb5ff00d Changes to fix some PlotSquared compatibility issues, plus fix block Mask parsing 2019-02-27 08:09:04 -05:00
wizjany
243d6476ac Re-add smooth filtering via a mask.
Instead of trying to maintain a list of "natural terrain blocks", just
let the user specify a mask of blocks to use for the height map filter.

https://gfycat.com/severaljauntycondor
2019-02-26 23:54:53 -05:00
wizjany
9eeb0acffe Add radius checks to a few more utility commands. 2019-02-25 18:41:20 -05:00
wizjany
2f734d4570 Check radius instead of diameter for clipboard brush.
This brings it more in line with other brushes in terms of allowable size.
2019-02-25 18:41:19 -05:00
Matthew Miller
5de8e0852c Treat categories as empty when missing 2019-02-18 21:17:36 +10:00
IronApollo
24fbc86cdd INDEV -- Pushed for in-house testing and development 2019-02-17 03:47:32 -05:00
Matthew Miller
50a286b070 Update the block/item category registries - this won't build until a Spigot PR is merged though. 2019-02-17 13:30:40 +10:00
Matthew Miller
3683a0438a Use nonNull rather than !isNull 2019-02-16 19:58:06 +10:00
Matthew Miller
db1315e043 Refactor registries to entirely use the platform 2019-02-16 19:35:13 +10:00
Matthew Miller
1b101740fe Use a proper registry for biomes 2019-02-16 17:27:00 +10:00
Matthew Miller
d6bc85ccbe Speed up the BlockState hashCode method by caching (As it's Immutable). Allows some better optimisations in the future by using them as map keys 2019-02-16 12:46:10 +10:00
wizjany
de9d202681
Clear shaped brush material on command.
The initial material is held in the factory, but if a brush was previously bound, that pattern is used.
Now, using `//br set` will clear the previous material, allowing the OperationFactory's material to work.
This can be changed later with `/mat`, which will once again set the fill on the tool, overriding the factory's context.
2019-02-15 14:51:26 -05:00
wizjany
313cd20b14 Make legacy compat layer return straight stairs. 2019-02-14 17:53:30 -05:00
wizjany
88014b18a3 Added a few new things using block states.
* `//set ##*tag` sets all states in the tag (not just default state per type)
* `//set ^type` is a pattern changing block type but copying all valid existing states
* `//set ^[prop=val,...]` sets the property `prop` to `val` wherever the existing block has that property
* `//set ^type[prop=val,...]` does both of the above
Those work anywhere a pattern is taken, of course.

* The mask syntax `^[prop=val]` matches blocks with the property `prop` set to `val`, or blocks that don't have the property at all.
* The mask syntax `^=[prop=val]` only matches blocks that have the property.
Those work anywhere a mask is taken, of course. (`//mask`, `//gmask`, `//replace`, etc)

The `//drain` command now takes `-w` flag that removes the waterlogged state from blocks (in addition to removing water, as before).
2019-02-14 17:21:01 -05:00