Commit Graph

2815 Commits

Author SHA1 Message Date
da35b3c174 Switch to using local maven for Piston 2019-04-14 01:53:04 -07:00
f8c4f23658 Partial work on biome commands, need logging replacement 2019-04-14 01:30:40 -07:00
8ab6585815 Patch new cmds system into old system 2019-04-04 16:16:04 -07:00
1966e5a8a2 Initial Piston conversion test. Non-functional. 2019-04-04 15:50:45 -07:00
4de5487c51 Change Vector hash codes (#456)
And add additional unit vectors where needed.
2019-04-04 08:36:19 -04:00
35bb4deee9 Merge pull request #457 from boy0001/platform-tweak
swap order of checks
2019-04-04 10:52:04 +11:00
9ba1121592 swap order of checks
since a boolean check is faster than getting inventory item + string
comparison
2019-04-04 10:45:21 +11:00
3d2054aa0a WorldEdit accepts a pattern for these commands
update the message to reflect that.
2019-04-03 19:39:12 -04:00
961da1b93f Add BukkitPlayer constructor without plugin.
tbh I don't know why we even need to keep the plugin object around.
2019-03-30 17:32:10 -04:00
a80420d14b Add biome storage to BlockArrayClipboard. 2019-03-30 00:42:28 -04:00
4e66b9a336 Revert 6b3426e1.
Empty base blocks are always immutable. Fuzzy states don't have NBT.
2019-03-30 00:41:47 -04:00
42d0d6e79a Use getTag instead of requireTag in a few places. 2019-03-29 23:44:18 -04:00
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
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
6b3426e1de BaseBlock is technically mutable so that technically shouldn't use it. 2019-03-26 18:14:35 -04:00
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
4629c1f7e4 Few fixes for the Forge version. 2019-03-26 21:09:41 +10:00
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
692ba6fda3 Checkstyle. 2019-03-22 14:03:43 -04:00
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
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
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
d186cce393 Merge remote-tracking branch 'origin/feature/slf4j-logging' 2019-03-19 20:32:21 +10:00
d1c2a029bf Move some platform stuff to load, put enable back to postworld. 2019-03-15 23:43:57 -04:00
678a78a982 Update adapters.
Don't update unchanged blocks, do change NBT, no need to light.

Also clean up the forge side a bit.
2019-03-15 20:56:49 -04:00
c885f70c7b Load Bukkit plugin at startup.
This should allow plugins that use WorldEdit to do things on world load.
2019-03-15 18:38:06 -04:00
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
18414fe3b5 Fix symlink detection. 2019-03-15 09:10:51 -04:00
fba12b1282 More shading fixes 2019-03-13 20:15:01 -07:00
4be72fb983 Shade logger bridges as well 2019-03-13 19:56:58 -07:00
d6804737cf Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
4191f017f1 [Forge] Fix sub-commands by registering even less 2019-03-13 18:54:23 -07:00
4f0506ec8b Fix versions in toml. Use internalversion (with git hash). 2019-03-12 17:30:45 -04:00
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
a5cec7728d Merge pull request #452 from EngineHub/forge-1.13
Added support for Forge 1.13
2019-03-11 22:52:30 +10:00
6e24472af5 Bump to latest forge and cleanup some old files. 2019-03-11 22:45:41 +10:00
a59d994d84 Hook up the biome registry. 2019-03-11 00:15:21 -04:00
6192ba8dc1 Checkstyle fixes and warnings.
Should get 'working' builds now.
2019-03-11 00:02:51 -04:00
6937cfc9a9 Need internal ID for EntityType here too. 2019-03-09 10:46:40 -05:00
a22b5535fe Shh checkstyle, I'm a C# dev now. 2019-03-08 16:14:16 -05:00
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
eebba8e324 Move vault to permscompat. 2019-03-07 23:55:58 -05:00
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
bb33897221 Handle all commands like pre-1.13 for now 2019-03-04 19:57:22 -08:00
4878f38250 Fix platform registration, config setup 2019-03-04 19:36:06 -08:00
f719063aca Merge branch 'master' into forge-1.13 2019-03-04 18:31:52 -08:00
9ee0f00030 Initial command registration setup. Pretty hacky, subcommands do not work, some arguments missing. 2019-03-04 18:31:20 -08:00
f84f3c6f85 Fix error when parsing hand/offhand/pos1 as blocks. 2019-03-03 19:51:49 -05:00
aafb854e4f More useful names for block ItemTypes. 2019-03-02 12:26:26 -05:00
c3ee926a2e Correctness improvement for legacy data in expression generation. 2019-03-02 11:55:03 -05:00