Commit Graph

306 Commits

Author SHA1 Message Date
MattBDev
8108d0a936 Major command changes that don't work yet. 2019-07-16 23:44:34 -04:00
MattBDev
ffc2092d93 toggles and timeouts 2019-06-30 14:56:32 -04:00
wizjany
c0f2557f15
Make the selection wand and navigation wand normal tools. (#493)
This means users can bind and unbind them to any item, like other tools.
By default, the items in config will be automatically bound. After
setting a different item via `//selwand` or `//navwand`, that item will
subsequently be used for that user.

Also add -n to //wand to get a navwand.

Also various other tool-related cleanup.
2019-06-28 15:45:16 -04:00
Jesse Boyd
d9906c9026
229182aa63 2019-06-29 01:19:58 +10:00
MattBDev
d0a31691e1 Small changes 2019-06-26 20:14:00 -04:00
MattBDev
0313320816 As Jesse would say... * 2019-06-20 20:05:18 -04:00
MattBDev
1f14d4652e Upstream changes, prefix changes, formatting changes, variable name changes
I think that draining waterlogged items also works now?
2019-06-12 17:13:53 -04:00
NotMyFault
ec001b8d3b Revert "Upstream, generics, formatting"
This reverts commit cd88e513a8.
2019-06-12 15:45:41 +02:00
MattBDev
cd88e513a8 Upstream, generics, formatting 2019-06-11 20:31:56 -04:00
wizjany
f2f9c26602 Expanded the scope of item brushes (/br apply item, /br paint item).
They now additionally take a direction in which the simulated item usage
should be facing.
Also allow the item parser to parse "hand" and "offhand" as items, to
allow platforms with NBT item support return items with NBT (since
parsing is a slightly more complex task).
2019-06-09 20:44:30 -04:00
MattBDev
229182aa63 Remove CUI and other cleaning 2019-06-06 18:39:51 -04:00
MattBDev
b42553116c Removal of many prefixes and deprecation of FaweLocation
- Removed some prefixes to help make upstream merging a bit easier.
- Replaced reflection code for titles with the regular bukkit api.
- Removed FAWELocation and FAWEPlayer where it wasn't needed.
- Deprecated FaweLocation since having it in the first place is very stupid.
- FAWEPlayer should also be deprecated soon because the majority of that code is redundant.
2019-06-05 21:28:02 -04:00
wizjany
d7c11cbb69 Handle sub-commands without permissions. 2019-06-04 22:13:16 -04:00
wizjany
a904ff9fb9 Check sub-command permissions.
This ensures root commands aren't sent to the client/suggested unless
a player has at least one subcommand available to them.
2019-06-04 22:13:16 -04:00
MattBDev
6c94cca15e Selective upstream merge
Signed-off-by: MattBDev <4009945+MattBDev@users.noreply.github.com>
2019-06-04 12:40:11 -04:00
wizjany
a3afd9d5b3 Make suggestions more robust.
And fix potential errors in the ^[] pattern parser.
2019-06-01 12:39:24 -04:00
wizjany
1e7c074217 Few misc command fixes. 2019-06-01 09:35:27 -04:00
wizjany
9099a17fe5 Some command refactoring. Switch usages of page args to -p flag. 2019-06-01 07:04:07 -04:00
wizjany
7b47d9a945
Add /tracemask. (#474)
Allows setting a mask used for block traces. This allows brush tools to
pass through various materials, such as water (e.g. `/tracemask #solid`
or `/tracemask !air,water`) before starting to build.
By default, a null mask is equivalent to #existing (original behavior).

https://gfycat.com/ImmaculateFrayedCockatiel
2019-05-23 21:12:31 -04:00
wizjany
334d5cfaab The "spawner|mobType" syntax once again makes functional mob spawners.
Also fix block parser context not being restricted.
2019-05-18 10:16:08 -04:00
Kenzie Togami
3173e26109
Fix //expand, improve //help 2019-05-17 22:24:31 -07:00
wizjany
f9d0d340e7 Add DFUs. Currently used by //restore. 2019-05-13 23:07:53 -04:00
wizjany
10f7fb6a26 Add //br and //brush as aliases. 2019-05-13 18:49:43 -04:00
wizjany
e2e903ca5e Pass service to brush sub-commands too. 2019-05-09 11:14:10 -04:00
wizjany
c169d8f258 Re-use command manager service. 2019-05-09 10:28:08 -04:00
wizjany
31d4daf474 Don't compare null BlockStates. 2019-05-06 19:59:58 -04:00
Kenzie Togami
067a570df0 Implement basic Forge suggestions 2019-05-05 23:06:20 -07:00
Kenzie Togami
8a3e6a12b9 Implement suggestions for Bukkit + Sponge 2019-05-05 23:06:20 -07:00
Kenzie Togami
4355f8cbf7 Update Piston for suggestions, add hacky-pseudo-suggestions 2019-05-05 23:06:20 -07:00
wizjany
f279907616 Create CommandManagerService directly instead of service loading it. 2019-05-04 17:06:19 -04:00
Kenzie Togami
13a8c480e3 Insert Locale.ROOT into all case change methods 2019-05-01 15:24:32 -07:00
Kenzie Togami
fb4fb980e0
Condense some command packages 2019-04-30 15:03:18 -07:00
Kenzie Togami
743d7f08ab
Purge intake-like command system 2019-04-30 14:59:45 -07:00
wizjany
3c04a83852 Add nicer error when using player commands as console.
Also fix slash counts for Bukkit.
2019-04-29 17:39:30 -04:00
Kenzie Togami
82c4846436
Add more variable args for expressions, quoting 2019-04-28 22:03:54 -07:00
Kenzie Togami
6255ccce38
Minor bug fixes 2019-04-28 17:27:33 -07:00
wizjany
b3053f19ce Pagination changes and cleanup.
Refactored PaginationBox to be abstract. Implementations can generate individual components as needed now.
Add lots of Component usage to schematic list, help listings, etc.
Fix a few schematic and file resolution issues.
2019-04-28 01:12:05 -04:00
Matthew Miller
62353a46db Added a pagination box and use it in Biome List and Chunk List 2019-04-27 21:57:45 +10:00
Kenzie Togami
0960f70e6b
Update to latest Piston changes 2019-04-27 03:35:44 -07:00
Matthew Miller
f94093239f Setup a registry converter 2019-04-27 16:46:13 +10:00
Kenzie Togami
23279c007e
Fix intialization, rework registration 2019-04-26 01:38:06 -07:00
Kenzie Togami
7ff537138a
Merge master again 2019-04-26 01:25:42 -07:00
Kenzie Togami
b8c120e0c4
Finish porting commands 2019-04-26 01:18:02 -07:00
wizjany
17fba54305 Update SpongeSchematic format to version 2.
Allows saving and loading entities and biomes.
2019-04-26 16:41:39 +10:00
Kenzie Togami
46e0a7ba48
Port //set 2019-04-25 23:16:18 -07:00
Kenzie Togami
853bfab022
Merge master, update to texts 2019-04-25 22:11:46 -07:00
Kenzie Togami
d8290cbd8f
Port worldedit commands 2019-04-25 21:03:28 -07:00
Kenzie Togami
9b0fda9f83
Port utility commands 2019-04-25 19:36:22 -07:00
Kenzie Togami
8c2b725f42
Port toll / tool util commands, add more enums 2019-04-25 12:49:03 -07:00
Kenzie Togami
e447ac55db
Port super pickaxe commands 2019-04-24 00:00:56 -07:00
Kenzie Togami
2ea30dc70e
Port snapshot commands, update some time stuff to new time 2019-04-23 23:47:22 -07:00
Kenzie Togami
e07e0d10b0
Port selection commands 2019-04-23 22:58:30 -07:00
Kenzie Togami
c95fc06b82
Port scripting commands 2019-04-23 19:32:27 -07:00
Kenzie Togami
f81ffdde0c
Port region commands 2019-04-23 18:46:46 -07:00
Kenzie Togami
f2283e8ad0
Port navigation commands 2019-04-23 16:14:21 -07:00
Kenzie Togami
6d4982f23a
Fix checkstyle/license/gen code 2019-04-23 15:44:33 -07:00
Kenzie Togami
20da6227d4
Port history commands 2019-04-23 15:35:05 -07:00
Kenzie Togami
31486cd473
Port generation commands 2019-04-23 10:11:54 -07:00
Matthew Miller
c52eb59d7f Get it all working 2019-04-22 22:05:20 +10:00
Kenzie Togami
51be16ad81
Port GeneralCommands 2019-04-21 13:10:20 -07:00
Kenzie Togami
1e7b4fc835
Move shaded libraries to their own artifacts 2019-04-20 23:11:39 -07:00
Matthew Miller
5b1573a24e Replace the message system 2019-04-19 23:06:00 +10:00
Matthew Miller
55348346e9 Shade in Kashike's lib 2019-04-19 14:49:29 +10:00
Kenzie Togami
f481f7d26d
Handle lack of global injected value store 2019-04-18 19:59:53 -07:00
Kenzie Togami
ac03de89cc
Work on adding converters for some arguments 2019-04-18 19:11:57 -07:00
Kenzie Togami
37c993be16
Port ClipboardCommands, update to new Key 2019-04-18 12:34:57 -07:00
Kenzie Togami
f33140b327
Port ChunkCommands, fix up injection, simplify registration 2019-04-16 23:02:23 -07:00
Jesse Boyd
69e2ce6165
Avoid block vector creation for combine stages = false 2019-04-15 19:56:38 +10:00
Kenzie Togami
e4d8091432
Convert part of the brush commands 2019-04-15 02:01:25 -07:00
Kenzie Togami
267ccf2298
First attempt at integrating Piston as the only command system 2019-04-15 01:21:15 -07:00
Matthew Miller
3e4004ad9e Start work on improving the formatting system. May switch to Kashike's as Bukkit is shit 2019-04-14 19:33:44 +10:00
Kenzie Togami
f8c4f23658
Partial work on biome commands, need logging replacement 2019-04-14 01:30:40 -07:00
Jesse Boyd
99c4c2f35d
Add option to disable commands 2019-04-12 10:51:18 +10: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
2e1b7676eb
Just use instanceof 2019-04-11 02:17:45 +10:00
Jesse Boyd
b24ebaf6f2
Delay command setup 2019-04-10 22:03:10 +10:00
NotMyFault
ab3394c35e Add prefixes and make FAWE more translatable 2019-04-07 01:13:23 +02: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
94d5d8df8e
Merge branch 'master' into breaking 2019-04-05 15:47:04 +11:00
Kenzie Togami
8ab6585815
Patch new cmds system into old system 2019-04-04 16:16:04 -07:00
Jesse Boyd
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
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
f361619037
Merge remote-tracking branch 'upstream/master' into breaking 2019-04-03 16:53:34 +11: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
Jesse Boyd
92a7bd5e44
minor tweak for mutable vectors 2019-04-01 03:09:20 +11:00
matt
699783ba72 Another selective merge 2019-03-28 15:02:37 -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
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
Kenzie Togami
d6804737cf
Switch to SLF4J logging. 2019-03-13 19:51:48 -07:00
Kenzie Togami
8f11d0469b Clarify state when asking for caps with no platforms (+ fuzzy system changes) 2019-02-03 07:30:18 -05:00
Kenzie Togami
590b7e23a9 Remove all raw usages of BSH, improve API generics 2019-02-03 05:01:39 -05:00
Matthew Miller
c935e381b7 Added a method to teleport entities across worlds. 2019-02-02 11:23:02 -05:00
Matthew Miller
54142c8669 Added a display name to Actors 2019-02-02 09:37:14 -05:00
Matthew Miller
f3c633582e Finish removal of PlayerDirection, and partially added diagonal support back to commands. (Other minor changes to WorldEdit-Sponge and FAVS) 2019-02-02 08:43:57 -05:00
IronApollo
e53535319d Plenty of changes to core block behavior to become more compatible with upstream WorldEdit (still more to be done!) 2019-01-31 10:08:58 -05:00
IronApollo
f74381b93f Merge remote-tracking branch 'refs/remotes/isfawe/new-vector-system' into new-vector-system 2019-01-13 02:00:14 -05:00
Matthew Miller
628c9cc0b7 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2019-01-10 09:54:21 -05:00
Kenzie Togami
4d6045813c Move vectors to static creators, for caching 2019-01-10 07:17:04 -05:00
Byron Marohn
ab6aed703d Merge current FAWE master (227d6d91) into new-vector-system
Signed-off-by: Byron Marohn <combustible@live.com>
2019-01-09 22:35:26 -08:00
IronApollo
842b1307c7 Current Progress #3 2019-01-09 02:13:44 -05:00
Kenzie Togami
2f8bdccf65
Clarify state when asking for caps with no platforms 2018-12-28 22:20:12 -08:00
Kenzie Togami
3fefcbf971
Remove all raw usages of BSH, improve API generics 2018-12-26 16:39:10 -08:00
IronApollo
d4157b7e0e Current progress with update 2018-12-23 11:19:33 -05:00
Matthew Miller
c949b07df1 Added a method to teleport entities across worlds. 2018-12-21 16:56:10 +10:00
Byron Marohn
c0fa1602ad Restore the formatting of many things to upstream WorldEdit - no code changes
This patch touches many files but changes absolutely no functionality.
The goal here is to make future merges with worldedit produce fewer
conflicts that have to be resolved.

This patch was made by painstakingly diff'ing files and copying changes
over from the last upstream merge commit (02c6f11b) into this codebase.

Signed-off-by: Byron Marohn <combustible@live.com>
2018-12-20 11:33:56 -08:00
Matthew Miller
8f236afae9 Added a display name to Actors 2018-12-18 17:36:53 +10:00
Matthew Miller
24800a662a Finish removal of PlayerDirection, and partially added diagonal support back to commands. 2018-11-12 12:38:13 +10:00
Kenzie Togami
2c8b2fe089
Move vectors to static creators, for caching 2018-11-03 23:00:24 -07:00
Kenzie Togami
399e0ad5fa
Refactor vector system to be cleaner
- Move Vector, etc. into `.math` package
- Drop many methods that will be auto-promoted anyways, eg. with
`divide(int)` and `divide(double)` the first is now gone.
- Take Block vectors into their own class hierarchy
- Make it clear throughout the API what takes blockvectors
- many more improvements
2018-11-03 23:00:23 -07:00
Kenzie Togami
1fa1ff895b
Flush or disable buffers in tools 2018-10-20 19:47:17 -07:00
Jesse Boyd
1a12c065a1
Various minor fixes
Fix drain
Fix some messages lacking prefix
Fix non persistent brushes
2018-10-13 15:15:38 +11:00
Jesse Boyd
277ff8f787
Fix command confirmation session 2018-09-08 09:10:36 +10:00
Jesse Boyd
a61c856adc
Allow certain commands to bypass queuing 2018-08-24 19:33:52 +10:00
Jesse Boyd
dbd31ea347
Fixes boy0001/FastAsyncWorldedit#1090 2018-08-24 01:22:30 +10:00
Jesse Boyd
c55353e5b1
Various command (use es6 if java9 + nashorn) 2018-08-22 03:22:37 +10:00
Matthew Miller
d3b3d57041
Merge pull request #420 from sk89q/server-side-cui
Added a server side version of WorldEditCUI with limited functionality
2018-08-20 14:46:08 +10:00
Matthew Miller
7b83f97c35 Fixed NotABlockException not getting thrown 2018-08-19 14:41:09 +10:00
Matthew Miller
7f419618cc Switch to using fake blocks, no more world pollution 2018-08-18 15:22:49 +10:00
Jesse Boyd
36ede1b27d
Fixes boy0001/FastAsyncWorldedit#1078 2018-08-17 18:27:48 +10:00
Matthew Miller
bc5609114b Add a material to check if air is air, because there are now 3 types of air. 2018-08-16 15:42:11 +10:00
Jesse Boyd
a67441bbff
Merge remote-tracking branch 'refs/remotes/sk89q/master'
# Conflicts:

#	worldedit-bukkit/src/main/java/com/sk89q/worldedit/bukkit/BukkitWorld.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/blocks/BaseBlock.java
#	worldedit-core/src/main/java/com/sk89q/worldedit/world/NullWorld.java
2018-08-15 14:02:51 +10:00
Jesse Boyd
1740c845d2
What are the dud BlockCategories? 2018-08-14 11:00:44 +10:00
Jesse Boyd
1601ea07a8
Clear the command/method map after registration 2018-08-14 00:39:19 +10:00
Jesse Boyd
0632a9ce96
Fix some merge issues 2018-08-14 00:38:33 +10:00
Jesse Boyd
7fb3899bb7
Use BlockState for player inventory getBlock 2018-08-13 03:31:26 +10:00
Jesse Boyd
e7c27b08bf
Remove stub injector methods 2018-08-13 02:36:39 +10:00
Jesse Boyd
a629d15c74
Copy paste/merge FAWE classes to this WorldEdit fork
- so certain people can look at the diff and complain about my sloppy code :(

Signed-off-by: Jesse Boyd <jessepaleg@gmail.com>
2018-08-13 00:03:07 +10:00
Matthew Miller
f54d6afb65 Make BaseBlock more memory efficient, and make it clear in the API that it's not intended to be used for every single block. 2018-08-10 20:29:06 +10:00
Matthew Miller
5f4cc3e694 Cleanup a little bit more code. 2018-08-06 19:08:15 +10:00
Matthew Miller
1480606b52 Fixed a few more issues found looking over the changeset. 2018-08-04 11:43:42 +10:00
Matthew Miller
663dd1f4d8 Added an entity, weathertype, and gamemode registry. 2018-08-04 11:43:41 +10:00
Matthew Miller
6b5f218809 Basically finish the state system. Just 1 more bug that I'm encountering. 2018-08-04 11:43:41 +10:00
kashike
a48c319e7e package move 2018-08-04 11:43:40 +10:00
Matthew Miller
93b225ca3c Expose a way of switching between ItemType and BlockType for ItemBlocks. 2018-08-04 11:43:39 +10:00
Matthew Miller
416480c16d Separated out fluids and blocks - they're different now 2018-08-04 11:43:39 +10:00
Matthew Miller
70aceb3837 Use default state a bit more. 2018-08-04 11:43:39 +10:00
Matthew Miller
282eca7663 Added a category system and refactored registries 2018-08-04 11:43:39 +10:00
Matthew Miller
484687a49d Further work on BlockState transition 2018-08-04 11:43:39 +10:00
Matthew Miller
e99190225e Further BaseBlock modernisation 2018-08-04 11:43:39 +10:00
Matthew Miller
5f5a1797ad Remove legacy ServerInterface 2018-08-04 11:43:39 +10:00
Matthew Miller
e2608bc0c9 Further modernise and remove legacy item classes 2018-08-04 11:43:39 +10:00
Matthew Miller
aaaf2d5678 More deprecation removal 2018-08-04 11:43:38 +10:00
Matthew Miller
20bf6e079b Continue the great purge 2018-08-04 11:43:38 +10:00
Qveshn
f680635ded Added customizable command log format (Date+Time are now available)
Added the option format to config files (config.yml + worldedit.properties). By default, current date and time are displayed.
The formatting function is implemented by analogy with the class java.util.logging.SimpleFormatter
2018-05-19 18:47:45 +03:00
Wyatt Childers
a091853385 Made the CommandManager responsible for exception converters as apposed to individual dispatchers
Previously some exceptions were being handled only in the ParametricCallable, which lead to other dispatchers throwing the exception, and requesting that users report them.

Fixes WORLDEDIT-3386
2016-06-28 19:37:10 -04:00
sk89q
0e200df5be Replace //set with new command version. 2015-10-29 18:20:27 -07:00
Albert Pham
86c6de7105 Add shortcut forest brush. 2015-10-29 13:16:22 -07:00
Albert Pham
fdfc3cdb33 Reorganize and further unify the new commands. 2015-10-29 13:05:04 -07:00
Albert Pham
cba32732a3 Add /br raise and /br lower as shortcuts for /br deform. 2015-10-28 13:50:07 -07:00
Albert Pham
f4bb5272e1 Update new commands with suggestion and help support. 2015-10-27 13:51:45 -07:00
sk89q
935de4c93d Add some experimental brush commands.
/br set <shape> <radius> <pattern>
/br deform <shape> <expression>
/br scatter <shape> <density> <generator>
/br apply <shape> <generator>

<shape> can be: cuboid, cyl[inder], sphere

<density> is 0-100

<generator> can be:
forest|tree <type>
item <item>[:<data>] (ONLY WORKS ON FORGE)

Examples:

/br deform cuboid 5 y-=0.2
/br scatter sphere 5 100 minecraft:dye:15
2015-10-26 23:14:30 -07:00
sk89q
052addbc05 [Forge] Add creative use mode and cheat mode and fix config overwrite. 2014-11-14 18:23:43 -08:00
sk89q
7192780251 Switch to Gradle. Use git log --follow for history.
This converts the project into a multi-module Gradle build.

By default, Git does not show history past a rename, so use git log
--follow to see further history.
2014-11-14 11:27:39 -08:00