Commit Graph

834 Commits

Author SHA1 Message Date
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
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
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
4f7e1a6b31 Improved speed greatly by deferring lighting until after all blocks are in place.
This needs CraftBukkit to work.
2011-10-24 13:44:22 +02:00
e8dcee1acf Added LocalWorld.fixLighting(Set<BlockVector2D>)
This method redos lighting in the given chunks.
BukkitWorld's current implementation introduces some slight errors and doesn't redo torch light, but it's better than nothing.
2011-10-24 13:35:48 +02:00
ef88c04550 Gave //fast an on|off parameter and adjusted its message to reflect a future change. 2011-10-24 04:33:19 +02:00
542aed6ffd Fixed warnings. 2011-10-24 04:32:02 +02:00
ffe5f89afc EditSession.flushQueue(): queueLast is now ordered with attachments in mind. 2011-10-24 04:31:34 +02:00
bd5c78bb40 Fixed bug in PermissionsEx resolver when PermissionsEx is not found. 2011-10-23 09:19:29 -07:00
52982c7c0f Moved YAML classes from RegionBook from WorldGuard into WorldEdit and made everything use those. 2011-10-22 23:48:15 -07:00
a928349b1a Fixed bug in NijiPermissionsResolver.isFakePerms() 2011-10-22 08:07:02 -07:00
0e6597fb86 Added configurable detection order of permissions resolvers, restored old default order, and updated configurations to the new Configuration 2011-10-22 01:34:24 -07:00
d93d85cd37 Added an expression parser. 2011-10-18 01:04:04 +02:00
467cc4dd14 Fixed infinite loop. Just because it's unused in worldedit doesn't mean you should break it -.- 2011-10-12 17:47:26 -04:00
050eef8dc7 Fixed checkLoadedChunk 2011-10-10 02:01:50 -04:00
b89ede09a6 Bugfix for jumpto 2011-10-09 20:43:21 -04:00
440f3baed1 Changed order of perms resolvers loading so that dinnerperms and ignore-niji-bridges settings were not ignored. 2011-10-09 20:43:21 -04:00