Commit Graph
100 Commits
Author SHA1 Message Date
TomyLobo c099ae5eb5 Added floor, ceil and round to Vector and Vector2D. 2012-01-03 03:54:01 +01:00
TomyLobo e598f8eaa0 Made the fields of Polygonal2DRegionSelector private. 2012-01-03 03:42:39 +01:00
TomyLobo b05a72fea1 Made the fields in Polygonal2DRegion private. 2012-01-03 03:20:19 +01:00
TomyLobo 978d499282 Added various methods to Vector2D.
- Several overloads of add, subtract, multiply and divide
- length, lengthSq, distance, distanceSq, normalize, dot, containedWithin, containedWithinBlock and transform2D
- static methods getMinimum and getMaximum
2012-01-03 01:13:10 +01:00
TomyLobo 9ddbcf0395 Improved Vector.getMinimum and Vector.getMaximum. 2012-01-03 01:13:09 +01:00
TomyLobo 6bbf167cb4 Moved Vector.dot further up in the file and added Vector.cross. 2012-01-03 01:06:15 +01:00
TomyLobo 4500f93a1b Fixed Vector.containedWithinBlock(min, max) and Vector2D.equals(Vector2D) 2012-01-03 00:58:00 +01:00
TomyLobo f11415f451 Added Vector.toVector2D and Vector2D.toVector. 2012-01-03 00:41:25 +01:00
TomyLobo f2e26b07ec Some region selection fixes
- CuboidSelection no longer deals with IncompleteRegionExceptions
- Fixed Polygonal2DSelection not passing its region to the selector
- Fixed Polygonal2DRegion not cloning the list it receives in its constructor
- Gave PolygonalRegionSelector a new constructor where it takes a list of points
2012-01-01 14:50:26 +01:00
TomyLobo 616f9a2360 Added support for ellipsoid and sphere selections.
//sel ellipsoid, //sel sphere.
2011-12-30 12:02:15 +01:00
TomyLobo 45655e1189 Added a legacy type id system to CUI.
Selection types can send fallback typeids and information now, for older WECUI versions to use.
2011-12-30 12:02:15 +01:00
TomyLobo 0b5c8748b5 Fixed some warnings. 2011-12-30 10:46:12 +01:00
TomyLobo 48f529bc7a Added Vector.lengthSq() 2011-12-27 23:25:37 +01:00
TomyLobo 370ca96a44 Fixed //sel selection clearing not being dispatched to CUI. 2011-12-27 12:23:09 +01:00
TomyLobo 7d503fdc5c //sel poly now keeps the previous selection, converting its outline into a polygon if necessary.
This loses some blocks, if anyone cares
2011-12-27 12:07:11 +01:00
TomyLobo cc256aa246 Added license blocks to some files that were still missing them.
Copied from files from the same directory.
2011-12-26 00:57:26 +01:00
TomyLobo 324a041e38 Split up some external .* imports. 2011-12-26 00:36:23 +01:00
TomyLobo 4b47200f27 Fixed some warnings. 2011-12-26 00:06:50 +01:00
TomyLobo 376d3c8727 Added "and contributors" to all Copyright statements on the com.sk89q.worldedit.expression package. 2011-12-25 23:27:19 +01:00
TomyLobo 479253821e Fixed //help and /we help after zml2008 broke it :) 2011-12-22 11:38:12 +01:00
TomyLobo 050442fac3 Added a -l flag to /butcher, which spawns fake lightning on all killed entities. 2011-12-21 19:03:21 +01:00
TomyLobo 09a92fa76c Added a block/pattern parameter to //hollow.
Also made a few variables final and optimized the thickness algo a bit.
2011-12-20 12:53:26 +01:00
TomyLobo 633f6643a5 Added a thickness parameter to //hollow. 2011-12-19 11:58:38 +01:00
TomyLobo 936aff06b2 Fixed //stack -s (again). 2011-12-18 22:46:09 +01:00
TomyLobo 4b3564a9ac Fixed a warning. 2011-12-18 09:31:47 +01:00
TomyLobo ba5010a272 Set required CraftBukkit version back to 1.0.1-R1 (i.e. RB 1597) 2011-12-18 09:27:52 +01:00
TomyLobo a4d82be697 Made /butcher, /searchitem and /worldedit work on the console and added /we help as an alias for //help. 2011-12-15 15:46:32 +01:00
TomyLobo 370ddeb9ff Added support for console commands to WorldEditPlugin. 2011-12-15 15:45:34 +01:00
TomyLobo 3bec3c169c Added BukkitCommandSender and WorldEditPlugin.wrapCommandSender. 2011-12-15 15:45:34 +01:00
TomyLobo 6d4b4718db Added ServerInterface.getWorlds. 2011-12-15 15:45:33 +01:00
TomyLobo 32bb810ce7 Changed all instances of new BukkitWorld to BukkitUtil.getLocalWorld, except for the one in that function. 2011-12-15 15:45:32 +01:00
TomyLobo 88dd420d1f Removed LocalCommandSender again. Didn't lead to anything. 2011-12-15 11:30:10 +01:00
TomyLobo af6455ea6b Made //help sort // commands ignoring prefixed slashes. 2011-12-15 06:28:09 +01:00
TomyLobo caeab76abb Fixed a NullPointerException in conjunction with CraftBook.
Thanks FearThe1337.
2011-12-14 10:51:02 +01:00
TomyLobo 05404b005d Added a //help command. 2011-12-13 09:43:39 +01:00
TomyLobo 1ce9d39f45 Removed fast lighting completely for the release. 2011-12-13 06:00:08 +01:00
TomyLobo e01aad00d8 Updated changelog with additional changes since 4.7. 2011-12-13 04:35:45 +01:00
TomyLobo 87940c9eae Added an asPlayer method to LocalCommandSender, which casts the object to LocalPlayer if possible and throws an exception otherwise. 2011-12-13 04:13:48 +01:00
TomyLobo 3960726d7a Installed a LocalCommandSender class atop LocalPlayer in the hierarchy and moved the relevant methods there.
Also changed equals to work on LocalCommandSender instead of LocalPlayer.
2011-12-13 03:43:02 +01:00
TomyLobo f5c6678da6 Added an extending cuboid selector.
It can be used with //sel extend.
Also made //sel carry over some information about the selection into the new selection mode.
Also cleaned up the source of the RegionSelectors and the //sel command a bit.
2011-12-12 05:27:33 +01:00
TomyLobo 3dabcdacd1 Made /green break on liquids. 2011-12-10 12:16:57 +01:00
TomyLobo 2e1087a49a Added a //hollow command, which hollows out the object contained in the selection. 2011-12-08 11:54:49 +01:00
TomyLobo 90b062a9d8 Fixed some warnings 2011-12-08 11:54:35 +01:00
TomyLobo d69863db59 Fixed unimportant typos. 2011-12-06 13:59:41 +01:00
TomyLobo c21c380bba Added a -a flag to /butcher to kill animals. Its now disabled by default. 2011-12-06 07:10:15 +01:00
TomyLobo bc3a4377ec The /butcher command no longer kills NPCs, except when the -n flag is passed.
Also:
- Moved some code from BukkitWorld to LocalWorld.
- Replaced the "boolean killPets" argument by an "int flags" to provide extensibility
- Made the radius argument a double
- Basically rewrote the entire function
- Deprecated all old versions of killMobs
2011-12-06 06:50:11 +01:00
TomyLobo 4c9e0a629f Added help text for most commands that take flags.
//generate, //regen, //deform, //[h]cyl, //[h]sphere, //chunk, //outset, //inset, //stack, //move, //smooth, //paste, //flip, /search //distr /butcher, //brush sphere/cyl/clipboard/smooth
Only //replace and /replacenear are still missing.
2011-12-06 06:50:10 +01:00
TomyLobo 6764704c22 Added support for help text to be shown on syntax errors and such. 2011-12-06 06:50:10 +01:00
TomyLobo 258bdc11b0 Fixed //stack -s only shifting by 1 block, regardless of the selection size. 2011-12-05 23:23:52 +01:00
TomyLobo a5a761a126 Added Vector.dot(Vector). 2011-12-05 23:23:51 +01:00
TomyLobo 274ecaadf2 Changed a usage string. 2011-12-05 23:23:51 +01:00
TomyLobo 3ccb152350 Added support for line breaks to BukkitPlayer.print* 2011-12-05 10:33:13 +01:00
TomyLobo 11dadd7417 Simplified CommandsManager.getUsage. 2011-12-05 10:18:30 +01:00
TomyLobo 259003d030 Corrected a command description. 2011-12-05 08:56:49 +01:00
TomyLobo f74d37c97b Updated changelog with yet more changes since 4.7. 2011-12-05 04:43:32 +01:00
TomyLobo 50bdb2332a Removed LegacyPluginPermissionsResolver.
Wrapping at the PermissionsProvider level instead, which removes some code duplication and fixes 2 warnings :)
2011-12-05 04:25:56 +01:00
TomyLobo cd2f56918d Renamed WEPIFRutimeException to WEPIFRuntimeException and gave it a serialVersionUID. 2011-12-05 03:41:24 +01:00
TomyLobo 09589e2a79 Fixed switch treating continue like break. 2011-12-05 03:23:22 +01:00
TomyLobo 04a08e7e0c Improved Switch's optimizer. 2011-12-04 21:00:03 +01:00
TomyLobo d55376e8a6 Added an optimizer and license/element comments for Switch. 2011-12-04 20:26:14 +01:00
TomyLobo 7a429e9932 Made Node.getPosition final and fixed some whitespace in LocalWorld. 2011-12-04 20:06:23 +01:00
TomyLobo a8e64fd8bc Added switch/case to the expression parser.
Also added a test case.
2011-12-04 09:25:56 +01:00
TomyLobo 61b2ea4007 Added "switch" and "case" to the list of keywords so they can't be used as variable names. 2011-12-04 06:40:09 +01:00
TomyLobo 4753574bae Basically rewrote the tree remover tool to use breadth-first search to get rid of deep recursions.
Also changed a message to be more precise.
2011-12-03 02:11:10 +01:00
TomyLobo 771d068826 Reduced indentation on a piece of code. 2011-12-01 20:20:49 +01:00
TomyLobo af9e2da6d3 Simplified the statement parser, fixed a few quirks and adjusted a test case. 2011-11-30 09:18:53 +01:00
TomyLobo 9cdac001e3 Added a megabuf function to the expression parser, which works like gmegabuf, except that there is one buffer per Expression instance. 2011-11-30 05:27:11 +01:00
TomyLobo c6518a9243 Added a way to retrieve the current expression instance. 2011-11-30 05:20:16 +01:00
TomyLobo 662e597f1a Moved temporary variable creation from Parser to Expression. 2011-11-30 04:45:48 +01:00
TomyLobo 36e4b99ade Added particle effects to area and recursive pickaxe. 2011-11-29 09:15:41 +01:00
TomyLobo 6be514cdf9 Added LocalWorld.queueBlockBreakEffect. 2011-11-29 09:15:29 +01:00
TomyLobo a4ccadacdc Added ServerInterface.schedule(delay, period, task). 2011-11-29 09:09:04 +01:00
TomyLobo cc0e39b493 Added particle and sound effects to the single super pickaxe. 2011-11-28 07:36:42 +01:00
TomyLobo 36fbfa409f Added LocalWorld.playEffect and an implementation for Bukkit. 2011-11-28 07:13:19 +01:00
TomyLobo a6f0a48f84 Added a swap function to the expression parser. 2011-11-28 00:30:52 +01:00
TomyLobo 5d59dd764e Changed getSafe*File to accept varargs instead of arrays. 2011-11-27 05:29:49 +01:00
TomyLobo c8180e641f Reverting part of a cleanup that made java cry for some obscure reason. 2011-11-25 06:34:10 +01:00
TomyLobo 6aec096709 Fixed a comment. 2011-11-24 21:20:44 +01:00
TomyLobo 77bd86a203 Whitespace police 2011-11-24 21:07:14 +01:00
TomyLobo 5ec6276674 Made ExpressionTest invoke the optimizer every time it evaluates an expression.
This way that thing at least gets SOME coverage.
2011-11-24 21:00:09 +01:00
TomyLobo c1e151ac19 Improved the expression parser's optimizer.
Added optimizers for Conditional, For, SimpleFor and While.
Improved the Sequence optimizer.
Removed the optimizer TODOs from Break and Return.
2011-11-24 21:00:09 +01:00
TomyLobo 05b427316d Changed signature of the optimize() method to return an RValue. 2011-11-24 20:50:07 +01:00
TomyLobo 7cbb7da80b Added the ternary operator. 2011-11-24 20:04:42 +01:00
TomyLobo 9456c9e58f Expression parser improvements
- Fixed calling nullary functions.
- Improved error reporting for missing functions
- Added random() and randint(max)
- Improved Sequence.optimize() to eliminate statements with no effect
- Adjusted a comment
2011-11-24 11:05:41 +01:00
TomyLobo adf326e2bf Renamed some variables and adjusted some comments in ArbitraryShape. 2011-11-24 11:01:24 +01:00
TomyLobo d69b04caf5 Added some element comments to ArbitraryShape. 2011-11-24 04:06:14 +01:00
TomyLobo dfb729d5f1 Added license blocks and element comments to all expression parser classes.
Also updated some terminology
2011-11-24 03:55:06 +01:00
TomyLobo 71287299b5 Added a simple for loop to the expression parser.
Syntax: for (counter = first, last) { body }
Also added a test case.
2011-11-24 02:35:19 +01:00
TomyLobo 7e13b60a51 Cleanup 2011-11-23 04:48:40 +01:00
TomyLobo 1a57f6e95d Added return, break and continue. 2011-11-22 18:51:19 +01:00
TomyLobo efc2209c0f Prevented overwriting built-in constants. 2011-11-22 17:47:44 +01:00
TomyLobo 5ef9df7feb Made it possible to leave parts of a for statement empty. 2011-11-22 16:56:41 +01:00
TomyLobo e6e31d0b93 Moved some code around 2011-11-22 16:35:56 +01:00
TomyLobo effbf9f79c Added for loops to the expression parser, java style.
Also:
- Added a test case for for
- Fixed Identifiable.id() for the runtime Nodes and added missing elements to the list in Identifiable.java.
- Factored keyword and character consumption into a common function.
2011-11-22 16:08:15 +01:00
TomyLobo f217be0bdf Added while loops to the expression parser.
Also added a test case.
Iterations are currently limited to 256 maximum.
2011-11-22 06:16:23 +01:00
TomyLobo aa43975e34 Added support for if/else to the expression parser. Basically same syntax as Java.
Also added a test case.
2011-11-22 05:12:32 +01:00
TomyLobo 5071885d10 Expression parser: Extended the index range of the megabuf function and renamed it to gmegabuf 2011-11-22 02:33:01 +01:00
TomyLobo c6fee413dc Changed BukkitWorld.killMobs, so it compiles with the latest RB again.
Also increased forward compatibility as a side-effect.
2011-11-21 06:21:21 +01:00
TomyLobo 0c9c213e4e Added support for assignable function results.
Also:
- Added megabuf(index) as a first, temporary example
- Introduced a new Node class at the top of the hierarchy for the runtime.
- RValue and LValue are now interfaces
- Narrowed down some exception declarations
- Optimized the optimizer for functions
2011-11-20 17:41:38 +01:00
TomyLobo 7812d8f5f8 Cleanup and refactorings 2011-11-20 06:02:54 +01:00