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
zml2008
fcb7e62cb0
Formatting.
2011-12-05 20:02:41 -08:00
zml2008
745716426f
Removed some unnecessary checks and fixed compatibility with CraftBook and other plugins that load() before registering the server listener
2011-12-05 19:59:10 -08: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
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
zml2008
deea1f7655
Moved PermissionsResolverServerListener into PermissionsResolverManager and got rid of some unnecessary methods.
2011-12-04 19:06:41 -08: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
zml2008
daf1dde701
Moved WEPIF to the com.sk89q.wepif package and made PermissionsResolverManager a singleton
...
Added OfflinePlayer permissions fetching methods to WEPIF
2011-12-04 17:42:46 -08: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
sk89q
11245014c8
Added @Override annotations.
2011-11-29 20:17:50 +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
zml2008
255e342353
Added enchantment support
2011-11-27 15:29:51 -08:00
zml2008
51dd7a0c9c
Improved handling of valid blocks not in BlockType and added dragon egg to BlockType
2011-11-27 15:29:26 -08: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
Wizjany
19194ccb88
Made //butcher apply to enderdragons
2011-11-20 19:31:13 -05: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
TomyLobo
feee529095
Improved error reporting for number format errors.
2011-11-20 05:31:18 +01:00
TomyLobo
cf30a63018
Further cleanup of input handlers.
...
Slight deviation from previous behaviour:
Wand and navigation wand can no longer be used as ordinary tool binds.
However, these are already blocked elsewhere anyway, so it is unimportant.
2011-11-20 02:00:12 +01:00
TomyLobo
71d302c893
Removed fix for issue #376 , since the problem appears to have been fixed on the CraftBukkit side now.
...
Also cleaned up the input handlers a bit.
2011-11-20 01:45:25 +01:00
TomyLobo
1194f4448e
Fixed the unused Polygonal2DSelection(List, int, int) constructor.
2011-11-19 15:09:28 +01:00
TomyLobo
13f36757c2
Fixed compass teleporting twice on cliff edges
2011-11-16 16:54:05 +01:00
zml2008
927cab001e
Fixed a few bugs with permissions resolver loading.
2011-11-15 20:38:23 -08:00
TomyLobo
86dfa3dce8
Cleaned up WorldEditPlayerListener.onPlayerInteract.
2011-11-13 15:17:08 +01:00
TomyLobo
a3946dc8c4
Typo fix.
...
Thanks, Moo0
2011-11-13 15:00:41 +01:00
zml2008
c29856f5a8
Added a registration method that returns information about successfully registered commands
2011-11-11 15:47:50 -08:00
zml2008
256897f473
Added seperate permissions for jumpto/thru commands and tools
2011-11-11 15:39:42 -08:00
zml2008
0a4cbd435f
The permissions resolver needs to be loaded!
2011-11-10 19:36:57 -08:00
TomyLobo
ae3adae8a8
Disabled fast lighting until the issues are resolved.
2011-11-09 02:49:24 +01:00
TomyLobo
04b7f40f46
Renamed some local variables in WorldEdit.getblock.
...
Also added a note about a potential concurrency problem i stumbled upon.
2011-11-05 18:09:50 +01:00
TomyLobo
af1c600fc9
Non-leaf blocks should no longer show up as leaves in the inventory when using block bags.
2011-11-05 17:58:51 +01:00
TomyLobo
e72f84f08f
Leaves can now be stored in a block bag.
2011-11-04 19:39:05 +01:00
TomyLobo
3ed5841863
The block bag fetch/place mapping is now taken from BlockType.getBlockBagItem.
2011-11-04 16:56:53 +01:00
TomyLobo
7beac92232
Added a deprecated delegate for storeDroppedBlock.
2011-11-04 16:39:56 +01:00
TomyLobo
2d0880e38d
Piston extension and moving piece now put nothing into the blockbag.
2011-11-04 13:53:21 +01:00
TomyLobo
8e368ceef1
Employed a set of consistent rules for getDroppedBlock(type, data) and renamed it to getBlockBagItem.
2011-11-04 13:27:51 +01:00
TomyLobo
d9b8285a35
Made ItemType.usesDamageValue a bit more sane.
2011-11-03 18:34:20 +01:00
TomyLobo
ff39121fc8
Begun adding support for data/damage values to the blockbag.
2011-11-03 15:51:23 +01:00
TomyLobo
429bfe9faa
Added BlockType.getDroppedBlock(int type, int data)
...
It currently still ignores the data value, but there's a framework in place to add data values.
2011-11-03 15:51:22 +01:00
zml2008
04803de8b1
Fixed some NPE's for block types not in BlockType.
2011-11-02 22:51:48 -07:00
TomyLobo
4c05050d73
Improved /we version output for dev builds.
2011-11-02 17:23:45 +01:00
TomyLobo
a51bc28756
Added true and false constants to the expression parser.
2011-11-02 15:29:55 +01:00
TomyLobo
c2cd587a9b
Added support for functions that take LValues and added rotate(x&,y&,angle)
2011-11-02 03:41:35 +01:00
TomyLobo
ff03d03fd7
Cleanup
2011-11-02 03:41:22 +01:00
TomyLobo
187896c5ed
Made //deform round the results before lookup and fixed some potential issues.
2011-11-02 03:39:02 +01:00
TomyLobo
2edf3559d8
EditSession: Split off a queueFinal, which contains only blocks that can be attached to other attached blocks.
...
This a speed improvement, since the recursive attachment checker turned out to be quite slow.
2011-11-01 21:58:50 +01:00
TomyLobo
2ee36f7484
//generate and //deform no longer behave oddly with selections that are only one block thick in either direction.
2011-11-01 16:32:56 +01:00
TomyLobo
4f1196ce2d
Added a //deform command, which deforms a region given an expression that operates on the x/y/z variables.
2011-11-01 15:27:13 +01:00
TomyLobo
a5e5880064
Moved shape generation to EditSession.
...
Also refactored it to get rid of the 3 different anonymous classes.
2011-11-01 15:27:12 +01:00
TomyLobo
c5c68f481b
Moved all command-implementing methods to the bottom of the file.
2011-11-01 14:54:32 +01:00
TomyLobo
478d6f6e54
Added support for type/data to //generate.
2011-11-01 14:31:33 +01:00
TomyLobo
8a83f7f70e
Added support for custom materials to ArbitraryShape and adjusted //generate accordingly.
2011-11-01 14:28:03 +01:00
TomyLobo
02a70cca4a
Added Pattern.next(int, int, int).
...
This method can be used to avoid creating short-lived vectors in tight loops.
2011-11-01 14:25:41 +01:00
TomyLobo
6b0f237a46
Removed extra fastLighting flag.
...
Fast lighting is now used when available.
2011-10-31 03:28:05 +01:00