Commit Graph

5188 Commits

Author SHA1 Message Date
04803de8b1 Fixed some NPE's for block types not in BlockType. 2011-11-02 22:51:48 -07:00
4c05050d73 Improved /we version output for dev builds. 2011-11-02 17:23:45 +01:00
a51bc28756 Added true and false constants to the expression parser. 2011-11-02 15:29:55 +01:00
c2cd587a9b Added support for functions that take LValues and added rotate(x&,y&,angle) 2011-11-02 03:41:35 +01:00
ff03d03fd7 Cleanup 2011-11-02 03:41:22 +01:00
187896c5ed Made //deform round the results before lookup and fixed some potential issues. 2011-11-02 03:39:02 +01:00
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
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
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
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
c5c68f481b Moved all command-implementing methods to the bottom of the file. 2011-11-01 14:54:32 +01:00
478d6f6e54 Added support for type/data to //generate. 2011-11-01 14:31:33 +01:00
8a83f7f70e Added support for custom materials to ArbitraryShape and adjusted //generate accordingly. 2011-11-01 14:28:03 +01:00
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
8610dc2c89 Added .gitignore to ignore some eclipse files. 2011-10-31 21:56:32 +01:00
6b0f237a46 Removed extra fastLighting flag.
Fast lighting is now used when available.
2011-10-31 03:28:05 +01:00
d3822ee345 Fixed postfix operator evaluation order. 2011-10-31 00:42:57 +01:00
d5328e34ba This might fix problems people have been having with dinnerperms. 2011-10-30 15:16:00 -07:00
8e0539adf1 Parser improvements
- After a closing brace or a semicolon, a new expression starts. This fixes "{}-1" and ";-1" returning an error.
- Empty statements and empty block statements are now fully supported
- Renamed PrefixOperator to UnaryOperator
- Added postincrement(x++), postdecrement(x--) and factorial(x!) operators
2011-10-30 06:04:49 +01:00
77d1317964 Added support for temporary variables 2011-10-29 21:07:31 +02:00
2719308ada Made //fast display a different message if the argument matches the current mode 2011-10-29 13:32:51 -04:00
2b9f0be8df Updated to 1.9 2011-10-29 13:32:51 -04:00
699807665d Cleanup 2011-10-29 11:57:45 -04:00
8797d8ac3c Added element comments to all classes of the expression parser.
Also fixed some id() implementations.
2011-10-29 17:24:11 +02:00
e70446e82e Renamed RValue.invoke() to getValue. 2011-10-29 16:03:55 +02:00
93f073f264 Renamed Assignable to LValue and Invokable to RValue 2011-10-29 16:01:55 +02:00
0ba3da2641 Reverted to old manual lighting system that doesn't call notch's block lighting functions directly. 2011-10-29 05:27:17 +02:00
8ce3f4d77a Moved some code around in ParserProcessors.java 2011-10-29 04:20:13 +02:00
79039c2b81 Updated changelog with even more changes since 4.7. 2011-10-28 21:12:37 +02:00
f28401aecc Moved the sub-processors into a new class, ParserProcessors. 2011-10-28 20:34:48 +02:00
58be9d9be4 Added support for stretched cylinders and brought their profile in line with that of the central layer of a sphere of the same x/z radius. 2011-10-28 20:34:08 +02:00
318e81886c Removed -q flag from //[h]sphere and the code to back it.
The speed difference between the "flexible" and the "quick" variant is so minor that it doesn't justify the aditional code complexity.
2011-10-28 15:10:14 +02:00
d9b86025d3 Parser refactorings
- Made all sub-processors static
- Made statement (combined) assignment parsing right-associative
- Added a stub for the ternary operator
- Fixed position value on Sequences
2011-10-28 00:37:18 +02:00
f6f08da620 Cleanup 2011-10-27 19:29:02 +02:00
ee79abff67 The expression parser can now parse more than a simple expression
- Added sequencing (; and {}).
- Added =, +=, -=, *=, /=, %=, ^= to the expression parser. (left-associative for now, will change later)
- Added pre-increment(++) and pre-decrement(--) operators.
- Adjusted/added tests.
2011-10-27 19:16:46 +02:00
9c070c323f Added ternary versions of min and max. 2011-10-27 19:06:27 +02:00
ef5fba0f05 Improved accuracy of Function.getPosition() after optimization. 2011-10-27 19:06:26 +02:00
0ca66ce350 Moved check for fastLightingAvailable from BukkitWorld.fixAfterFastMode to fixLighting and adjusted the description for //generate. 2011-10-26 23:24:23 +02:00
dbc3053195 Fixed & updated BlockType.usesDamageValue 2011-10-26 16:50:46 -04:00
906b6dd832 Forgot to save... 2011-10-25 23:26:25 +02:00
9fa5c4030b Added a //g[en[erate]] command, which generates a shape according to a mathematical formula.
(result > 0) = true = inside
(result <= 0) = false = outside.
2011-10-25 18:46:14 +02:00
d4c2832437 Added an ArbitraryShape class which can be used to generate hollow and solid shapes based on an in/out condition. 2011-10-25 18:46:12 +02:00
c2191f4fc7 Generalized the Lexer a bit more and renamed a function in the parser. 2011-10-25 18:45:52 +02:00
7dfc2a34e5 Improved fast mode.
BukkitWorld's fast lighting mode now also does what the old fast mode did.
In addition, both fast lighting mode and the fallback resend all modified chunks when done.
This should prevent display issues.
2011-10-25 18:41:07 +02:00
3ed867ed53 Added left, right, back and forward directions to all directional commands. 2011-10-25 01:07:08 +02:00
2d654b59c5 Reduced code duplication in the WorldEdit.get*Direction methods. 2011-10-25 01:06:18 +02:00
3962e6c9d8 Added LocalPlayer.getCardinalDirection(int yawOffset) 2011-10-25 01:02:50 +02:00
a1fb1fd4e4 Using Notch's block lighting functions now.
Also removed some debug messages
2011-10-24 23:42:04 +02:00
a0461aeb2c BukkitWorld.fixLighting now also fixes block light. 2011-10-24 20:49:17 +02:00
b31d77536a Added some new functions to BlockType.
- emitsLight which returns whether the given block type emits light
- isTranslucent, which returns whether the block lets any light pass
2011-10-24 20:49:17 +02:00