Commit Graph

1190 Commits

Author SHA1 Message Date
sk89q
2258513104 Made Dispatcher implement CommandCallable.
This simplifies things a bit.
2014-06-28 01:42:59 -07:00
sk89q
f64107c2c0 Removed LocalPlayer from commands and removed various uses of old Mask and Pattern classes. 2014-06-28 01:01:49 -07:00
sk89q
ec28cd626c Removed use of @Nullable in ParametricCallable. 2014-06-27 20:24:02 -07:00
sk89q
de0f283656 Call createProxyActor() on command Actors. 2014-06-27 20:23:53 -07:00
sk89q
b8b097ce68 Fixed 'break' being 'return' in LegacyCommandsHandler. 2014-06-27 20:10:48 -07:00
sk89q
109150f348 Changed CommandPermissionsHandler to use Actor. 2014-06-27 20:09:18 -07:00
sk89q
5347cd4e34 Fixed issue where the use of non-existent subcommands had no response. 2014-06-27 20:00:02 -07:00
sk89q
d96d3cf8bc Changed instances of Pattern, Mask, etc. to newer versions.
Most affected is the brush code.
2014-06-27 19:55:38 -07:00
sk89q
9381beb417 Actor should not have getWorld(). 2014-06-27 18:34:58 -07:00
sk89q
23ce159ccf Moved other command handler related classes to the internal package. 2014-06-27 18:29:43 -07:00
sk89q
47076b313e Fixed command logging regression caused by merge. 2014-06-27 18:29:43 -07:00
sk89q
1431cd2a67 Cleaned up BiomeCommands and made better use of new command framework. 2014-06-27 18:29:43 -07:00
sk89q
b7e0821b97 Removed command binding classes to internal package. 2014-06-27 18:29:43 -07:00
sk89q
ebe2bc6ae2 Changed command pipeline to use Actor over LocalPlayer. 2014-06-27 18:29:42 -07:00
sk89q
8f1943fd84 Merge commit '142f5c8e5c889ee5098c05ba2fde20b52467c1df' into feature/platform-caps 2014-06-27 16:03:29 -07:00
sk89q
c9e60f1f60 Updated /we version with platform information. 2014-06-27 13:14:55 -07:00
sk89q
9bb70ad335 Updated events to choose the best platform for certain tasks. 2014-06-27 13:14:44 -07:00
sk89q
e52ca6661f Added support for platforms to declare capabilities.
Platforms can declare certain capabilities and a suggested preference
for the platform for each capability. WorldEdit can then choose
the best platform for a given capability.

Examples of capabilities include providing configuration, registering
game hooks/events, performing changes to the world, or checking
permissions/authorization.
2014-06-27 01:11:35 -07:00
sk89q
d9cea950b0 Added events for the other WorldEdit.handle*() methods. 2014-06-26 20:07:04 -07:00
sk89q
7827dfea9e Put in a tip about setting //limit. 2014-06-26 17:43:25 -07:00
sk89q
fc50831cc0 Changed right click to use the event as well. 2014-06-26 17:07:08 -07:00
sk89q
ff7d5aad1a Only handle primary input in block interact event handler. 2014-06-26 16:58:54 -07:00
sk89q
900c9b5258 Added BlockInteractEvent to replace handleBlockLeftClick().
Needed quite a shim for tools/brushes for now.
2014-06-26 16:56:40 -07:00
wizjany
38ac5c9ad1 Move a bukkit-specific file from #287 to bukkit folder as not to break API/other platform compilation. 2014-05-03 23:12:22 -04:00
sk89q
07d99f32d9 Merge remote-tracking branch 'origin/master' into mapping 2014-05-01 18:03:53 -07:00
sk89q
c8246ec962 Merge pull request #239 2014-05-01 18:01:12 -07:00
sk89q
b3f5136a59 Merge pull request #287 2014-05-01 17:52:33 -07:00
sk89q
996438ff91 Merge pull request #282
Add support for listing schematics inside subdirectories

Conflicts:
	src/main/java/com/sk89q/worldedit/command/SchematicCommands.java
2014-05-01 17:45:13 -07:00
sk89q
a3c542b74f The /butcher command no longer kills mobs with a name tag.
PR: https://github.com/sk89q/worldedit/pull/292

Conflicts:
	src/bukkit/java/com/sk89q/worldedit/bukkit/BukkitWorld.java
	src/main/java/com/sk89q/worldedit/command/BrushCommands.java
	src/main/java/com/sk89q/worldedit/command/UtilityCommands.java
2014-05-01 17:36:11 -07:00
sk89q
8d6f5bf335 Improves CUI support.
1. Allows CUI handshake package to overwrite protocol version.
2. Sends the current selection on handshake.
3. Removed redundant SelectionShapeEvents.

Conflicts:
	src/main/java/com/sk89q/worldedit/regions/selector/ConvexPolyhedralRegionSelector.java
	src/main/java/com/sk89q/worldedit/regions/selector/CylinderRegionSelector.java
2014-05-01 17:29:51 -07:00
Albert Pham
8518f371b2 Merge pull request #242 from vu1p3n0x/master
Access to CommandManager registration with parent
2014-05-01 14:18:23 -07:00
sk89q
65ee8bfd2a Allow use of InputStream to load schematics
Conflicts:
	src/main/java/com/sk89q/worldedit/schematic/MCEditSchematicFormat.java
2014-05-01 13:57:30 -07:00
sk89q
c4c19017bb Added incomplete entity support to all Extents.
The Bukkit implementation supports the new entity API, but it has
not yet been tested. The Forge implementation does not support the
entity API yet.

At the moment, an UnsupportedOperationException is thrown for
Entity.getState() in some implementations, but use of an exception
should probably not be allowed.

BaseEntity is now an interface. It should not be possible to create
instances of BaseEntity because it may be implementation-specific.
2014-04-27 23:34:39 -07:00
sk89q
a5c3238876 Added Creature metadata interface. 2014-04-27 23:31:42 -07:00
sk89q
354d819872 Added a new preliminary mapping + metadata framework.
The eventual goal is to add:

1. Support for mapping block, etc. names (minecraft:stone, etc.)
2. Proper support for entities in WorldEdit
3. Support for querying for metadata about a block, entity, etc.
4. Extent support to biomes, structures, and so on
2014-04-26 21:57:45 -07:00
sk89q
19c43a2834 Added NBT field to BaseEntity. 2014-04-26 19:59:59 -07:00
sk89q
33e641d5f2 Added a new Location and added Entity.getLocation(). 2014-04-26 19:48:30 -07:00
wizjany
b0a52a4cf7 Revert a breaking change to fuzzy item/block lookup. 2014-04-26 00:22:39 -04:00
wizjany
5ed9239e14 Fixed listing schematics with directories in the folder. 2014-04-25 23:45:49 -04:00
sk89q
e69e72c410 Moved annotation package to internal package.
Closes WORLDEDIT-3055.
2014-04-25 15:23:43 -07:00
sk89q
f94be80923 Changed Super Pickaxe to use EditSession.
This fixes WORLDEDIT-3102 and allows the logging of Super Pickaxe
usage via the EditSession Extent pipeline.
2014-04-23 00:33:00 -07:00
sk89q
bf062298f1 Moved EditSession BlockQuirkExtent upward.
Should fix WORLDEDIT-3101.
2014-04-22 01:19:49 -07:00
Wizjany
33d4285f1a Fix mask parser incorrectly parsing block lists.
i.e. not parsing the list at all
2014-04-13 17:12:10 -04:00
sk89q
4a6614f34f Cleaned up ForgeWorld, AbstractWorld.
Change block setting method in Forge to a more proper one.
2014-04-06 15:06:38 -07:00
sk89q
f3e107da90 Handle running multiple platforms at a time better. 2014-04-05 23:27:10 -07:00
sk89q
d1a69fd985 Raised level for platform registration log message. 2014-04-05 22:05:58 -07:00
sk89q
d85c0096a9 Fixed console commands not working due to null Worlds. 2014-04-05 21:49:25 -07:00
sk89q
b941e21d4d Added NullExtent that drops changes. 2014-04-05 21:49:03 -07:00
sk89q
69460094b8 Handle null World cases for EditSession when actor is console.
It actually should never be null, but old code does it.
2014-04-05 20:09:52 -07:00
sk89q
e0a2873c99 Removed use of Guava's Cache because Bukkit uses an ancient version of Guava. 2014-04-05 14:44:41 -07:00
sk89q
24f8fbc92a Converted API over to use new World.
This breaks backwards compatibility for all getWorld() methods, but
shim methods were added for binary compatibility with method calls that
use LocalWorld.
2014-04-05 03:04:21 -07:00
sk89q
63a2ca824d Fixed Javadocs in LocalSession. 2014-04-04 22:43:33 -07:00
sk89q
7ed1718d21 Moved LocalWorld's members upwards to AbstractWorld and World. 2014-04-04 22:40:29 -07:00
sk89q
d4c910a012 Created AbstractPlatform and deprecated ServerInterface. 2014-04-04 21:15:37 -07:00
sk89q
52b828ae17 Clean up WorldEdit main class. 2014-04-04 21:02:56 -07:00
sk89q
8fb73347e4 Implemented PlatformManager, Platform over old platform registration method. 2014-04-04 20:53:58 -07:00
sk89q
bed5fa8fdc Added Actor, Player, Entity, BaseEntity. 2014-04-04 17:54:14 -07:00
sk89q
db48f64585 Added Maven checkstyle plugin. 2014-04-04 16:09:22 -07:00
sk89q
ae8becafdd Code cleanup. 2014-04-04 16:09:05 -07:00
sk89q
e0fd804f70 Standardized file headers. 2014-04-04 15:23:11 -07:00
sk89q
b9c1dc6231 Fixed equals() without hashCode(). 2014-04-04 14:40:51 -07:00
sk89q
478ce3f627 Fixed utility classes having constructors. 2014-04-04 14:35:12 -07:00
sk89q
2b0ee84952 Code convention cleanup of right braces. 2014-04-04 14:26:08 -07:00
sk89q
cbf58103e6 Replaced tabs with spaces in .java files. 2014-04-04 14:11:48 -07:00
sk89q
224bfef50c Throw old DataExceptions in schematic related classes.
The schematic related classes are slated for deprecation at some point.
2014-04-04 13:59:28 -07:00
sk89q
3294431e00 Added back old region selector classes as deprecated. 2014-04-04 13:57:27 -07:00
sk89q
144302a487 Added shims for old EditSession constructors. 2014-04-03 20:48:42 -07:00
sk89q
16e89c23f5 Added sanity check to DataValidatorExtent. 2014-04-03 20:09:01 -07:00
sk89q
0ed62b8f90 Moved RegionSelector back to regions package to reduce API breakage. 2014-04-03 19:50:05 -07:00
sk89q
71ee350172 Ensure that air blocks always have data = 0. 2014-04-03 19:15:34 -07:00
sk89q
8e2fc8b0d4 Moved session code into SessionManager. 2014-04-03 19:12:30 -07:00
sk89q
d696bf9b03 Renamed ExtentDelegate -> AbstractDelegateExtent. 2014-04-03 18:41:36 -07:00
sk89q
1fd1e7aaf8 Moved RegionSelectors and RegionIterators into subpackages. 2014-04-03 18:32:51 -07:00
sk89q
2e904577b7 Added events for each stage of EditSession Extent creation. 2014-04-03 18:24:06 -07:00
sk89q
c8e455cd6f Removed binary-incompatible changes to EditSessionFactory. 2014-04-03 17:56:21 -07:00
sk89q
9d08f266bf Created pattern, mask, and block registries.
Deprecated getBlock, getBlockPattern, and so-on in WorldEdit.
2014-04-03 17:52:53 -07:00
sk89q
589c3e9629 Added InputExtent and OutputExtent.
Suggested by TomyLobo
2014-04-02 23:42:11 -07:00
sk89q
08900cbfc2 Removed foundation.* package. 2014-04-02 21:23:14 -07:00
sk89q
6c460f02c5 Split up source files into several source directories. 2014-04-02 20:03:52 -07:00
sk89q
469cb8c8b3 (Breaking) Moved some packages around.
Most of the changes should not break *most* WorldEdit-using plugins,
but implementations of WorldEdit are broken by this change.
2014-04-02 19:20:12 -07:00
sk89q
6e70e8c862 Removed EditSessionFactory in favor of event-based system. 2014-04-02 18:57:25 -07:00
sk89q
a7d83958ac Added event bus implementation. 2014-04-02 18:53:06 -07:00
sk89q
b78b086f2e Added RunContext parameter to Operation.resume(). 2014-04-01 16:35:28 -07:00
sk89q
9b564a460e Added Javadocs to ChangeSetExecutor. 2014-04-01 16:23:13 -07:00
sk89q
1667fa5c79 OperationHelper -> Operations 2014-04-01 16:21:27 -07:00
sk89q
2d67ae9e65 Merge remote-tracking branch 'refs/remotes/origin/master' into visitor 2014-04-01 16:13:18 -07:00
sk89q
21fca251fc Updated to MC 1.7.5 for Bukkit. 2014-04-01 12:30:30 -07:00
sk89q
76b679caad Added EditSession Extent wrapping callbacks. 2014-03-31 20:46:57 -07:00
sk89q
8ff09d6391 Added AbstractLoggingExtent for block loggers. 2014-03-31 20:36:17 -07:00
sk89q
302e493538 Fixed BlockBagExtent using getBlockType/Data() 2014-03-31 20:32:56 -07:00
sk89q
dbf1f3b9cb Fixed BlockQuirkExtent calling getBlockType(). 2014-03-31 20:31:25 -07:00
sk89q
761904e496 General code cleanup. 2014-03-31 20:29:05 -07:00
sk89q
8bec48dc9e Moved DoubleArrayList to util.collection. 2014-03-31 20:11:23 -07:00
sk89q
7f7b0b0daf Changed BlockOptimizedHistory to use TupleArrayList and FastListIterator. 2014-03-31 20:10:09 -07:00
sk89q
031d40f9e6 Changed SimpleBlockReorder to TupleArrayList. 2014-03-31 19:48:10 -07:00
sk89q
0c14737891 Renamed BlockMapEntryVisitor to BlockMapEntryPlacer. 2014-03-31 18:51:12 -07:00
sk89q
6985ff5250 Bypass history for undo/redo. 2014-03-31 18:49:39 -07:00
sk89q
b2d1562595 Implemented last-access-caching for getLazyBlock(). 2014-03-31 18:43:47 -07:00
sk89q
fa24eb60fa Added getLazyBlock() to Extent for performance. 2014-03-31 18:22:44 -07:00
sk89q
dcf35e5312 Fixed FastModeExtent not properly handling dirty chunks. 2014-03-31 17:43:21 -07:00