Commit Graph

582 Commits

Author SHA1 Message Date
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
TomyLobo
d3822ee345 Fixed postfix operator evaluation order. 2011-10-31 00:42:57 +01:00
zml2008
d5328e34ba This might fix problems people have been having with dinnerperms. 2011-10-30 15:16:00 -07:00
TomyLobo
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
TomyLobo
77d1317964 Added support for temporary variables 2011-10-29 21:07:31 +02:00
Wizjany
2719308ada Made //fast display a different message if the argument matches the current mode 2011-10-29 13:32:51 -04:00
Wizjany
2b9f0be8df Updated to 1.9 2011-10-29 13:32:51 -04:00
Wizjany
699807665d Cleanup 2011-10-29 11:57:45 -04:00
TomyLobo
8797d8ac3c Added element comments to all classes of the expression parser.
Also fixed some id() implementations.
2011-10-29 17:24:11 +02:00
TomyLobo
e70446e82e Renamed RValue.invoke() to getValue. 2011-10-29 16:03:55 +02:00
TomyLobo
93f073f264 Renamed Assignable to LValue and Invokable to RValue 2011-10-29 16:01:55 +02:00
TomyLobo
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
TomyLobo
8ce3f4d77a Moved some code around in ParserProcessors.java 2011-10-29 04:20:13 +02:00
TomyLobo
f28401aecc Moved the sub-processors into a new class, ParserProcessors. 2011-10-28 20:34:48 +02:00
TomyLobo
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
TomyLobo
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
TomyLobo
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
TomyLobo
f6f08da620 Cleanup 2011-10-27 19:29:02 +02:00
TomyLobo
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
TomyLobo
9c070c323f Added ternary versions of min and max. 2011-10-27 19:06:27 +02:00
TomyLobo
ef5fba0f05 Improved accuracy of Function.getPosition() after optimization. 2011-10-27 19:06:26 +02:00
TomyLobo
0ca66ce350 Moved check for fastLightingAvailable from BukkitWorld.fixAfterFastMode to fixLighting and adjusted the description for //generate. 2011-10-26 23:24:23 +02:00
Wizjany
dbc3053195 Fixed & updated BlockType.usesDamageValue 2011-10-26 16:50:46 -04:00
TomyLobo
906b6dd832 Forgot to save... 2011-10-25 23:26:25 +02:00
TomyLobo
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
TomyLobo
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
TomyLobo
c2191f4fc7 Generalized the Lexer a bit more and renamed a function in the parser. 2011-10-25 18:45:52 +02:00
TomyLobo
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
TomyLobo
3ed867ed53 Added left, right, back and forward directions to all directional commands. 2011-10-25 01:07:08 +02:00
TomyLobo
2d654b59c5 Reduced code duplication in the WorldEdit.get*Direction methods. 2011-10-25 01:06:18 +02:00
TomyLobo
3962e6c9d8 Added LocalPlayer.getCardinalDirection(int yawOffset) 2011-10-25 01:02:50 +02:00
TomyLobo
a1fb1fd4e4 Using Notch's block lighting functions now.
Also removed some debug messages
2011-10-24 23:42:04 +02:00
TomyLobo
a0461aeb2c BukkitWorld.fixLighting now also fixes block light. 2011-10-24 20:49:17 +02:00
TomyLobo
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
TomyLobo
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
TomyLobo
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
TomyLobo
ef88c04550 Gave //fast an on|off parameter and adjusted its message to reflect a future change. 2011-10-24 04:33:19 +02:00
TomyLobo
542aed6ffd Fixed warnings. 2011-10-24 04:32:02 +02:00
TomyLobo
ffe5f89afc EditSession.flushQueue(): queueLast is now ordered with attachments in mind. 2011-10-24 04:31:34 +02:00
zml2008
bd5c78bb40 Fixed bug in PermissionsEx resolver when PermissionsEx is not found. 2011-10-23 09:19:29 -07:00
zml2008
52982c7c0f Moved YAML classes from RegionBook from WorldGuard into WorldEdit and made everything use those. 2011-10-22 23:48:15 -07:00
zml2008
a928349b1a Fixed bug in NijiPermissionsResolver.isFakePerms() 2011-10-22 08:07:02 -07:00
zml2008
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
TomyLobo
d93d85cd37 Added an expression parser. 2011-10-18 01:04:04 +02:00
Wizjany
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
zml2008
050eef8dc7 Fixed checkLoadedChunk 2011-10-10 02:01:50 -04:00
Wizjany
b89ede09a6 Bugfix for jumpto 2011-10-09 20:43:21 -04:00
Wizjany
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
sk89q
09447c5f6c Fixed CommandContext.matches() always returning true. 2011-10-09 10:31:15 -07:00
Wizjany
68fe0d3438 Cleanup. Cycler uses BaseBlock instead of BlockData directly. Fixed a few BlockType method inaccuracies. 2011-10-04 17:16:20 -04:00
zml2008
9e877740aa Added negated node support for DinnerPerms lookup. 2011-10-03 22:09:44 -07:00
ZachBora
bb609a47c2 Negative angles will return negative number of rotations thus never looping the rotation. 2011-10-02 22:26:44 -03:00
zml2008
24056df78a Fixed config generation for Windows users 2011-10-02 01:27:52 -07:00
Meaglin
b17fb7eaa3 Adding /snapshot sel [index] to select a snapshot by list index. 2011-10-02 00:10:27 -04:00
TomyLobo
e2c71e4269 Added cactus to getAttachment. 2011-09-30 08:56:09 +02:00
TomyLobo
7fec065d4a Apparently the wiki has wrong data values for the stone button.
Also added top attachment for vines.
2011-09-29 21:11:51 +02:00
TomyLobo
69367e7762 Added BlockType.getAttachment.
See javadoc for details.
2011-09-29 15:54:28 +02:00
zml2008
ccfabd94b9 Should fix broken config generation some people have been getting 2011-09-28 19:05:47 -07:00
TomyLobo
cbc331da7d Added some constants com.sk89q.worldedit.blocks.ClothColor.ID.X = ClothColor.X.getID() 2011-09-28 10:57:30 +02:00
TomyLobo
21c6ab894c Moved BlockData to the blocks package and left a stub with deprecated delegates behind. 2011-09-28 10:45:32 +02:00
TomyLobo
accd841b51 Fixed a few warnings 2011-09-28 08:05:50 +02:00
Wizjany
2d7c462477 Cleanup formatting. 2011-09-27 03:32:46 -04:00
t3hk0d3
4f80e78a7e WEPIF Improvement: code clean out, hardcoding removal and refactoring. Added Service discovery to PluginPermissionsResolver 2011-09-26 21:20:02 -07:00
Wizjany
102e5f142e Fix data cycling the right way. Merged TomyLobo's test changes in. 2011-09-26 05:53:04 -04:00
Wizjany
868fef813f Changed pyramid command usage 2011-09-26 01:43:39 -04:00
Wizjany
23c9a66c80 Fixed gaping huge security flaw. 2011-09-26 01:32:12 -04:00
Wizjany
9e6a2ccf4d Nicer wiki perms table. 2011-09-26 00:09:21 -04:00
Wizjany
903abc80a4 Cleanup 2011-09-25 22:21:27 -04:00
TomyLobo
c6c55c3b2a Adjusted some of the cycler code and added a test case for it.
- Added range checks for most blocks
- torches: Fixed cycle from 0->1->2->3->0 to 1->2->3->4->1
- mushroom caps: Included data value 10 (stem) in cycle
- vines: Included data value 0 (top attachment only) in the cycle
- furnaces/dispensers: Linearised the cycle. It's now 2->3->4->5->2
- chests/ladders: Added cycle code.
- rails: Linearised the cycle. It's now 6->7->8->9->6
2011-09-25 10:52:29 +02:00
TomyLobo
93f36955ca Added a test case for BlockData.
Fixed some non-breaking inaccuracies to make the test case work.
2011-09-25 06:08:31 +02:00
TomyLobo
63fa72af5e Added rotate code for brick and stone brick stairs and made powered/detector rails not lose their charge when rotating. 2011-09-25 06:01:01 +02:00
TomyLobo
b06caa9fd3 Cleanup 2011-09-25 05:15:20 +02:00
TomyLobo
50009cc855 Improved hashCode implementations for the Vector classes.
Block[World]Vector was ignoring changes of y < 128 (i.e. all of them) and changes of x < 8192.
2011-09-25 04:56:54 +02:00
zml2008
3bbebcd64e Updated for Bukkit changes. 2011-09-24 15:45:49 -07:00
Wizjany
f90e47da9a Removed trailing whitespaces. 2011-09-24 15:32:03 -04:00
Wizjany
b5b55a2775 Cleanup and a few bugfixes 2011-09-24 15:24:10 -04:00
lahwran
a2e23fedf7 send poly regions to wecui, take 2 2011-09-24 11:45:03 -06:00
TomyLobo
7c18327fdc Fixed extended piston rotation. 2011-09-24 11:20:37 +02:00
TomyLobo
bfc877cdb2 Added rotate code for vines, fence gates and mushroom caps. 2011-09-23 16:32:50 +02:00
TomyLobo
a3cd58fda1 Added flip code for vines, fence gates and mushroom caps. 2011-09-23 14:00:49 +02:00
TomyLobo
4b760fd17b Swapped flipY and flipZ in BlockData.flip and formatted the function more consistently. 2011-09-23 12:50:57 +02:00
Wizjany
2f19edca2a Fixed case fallthroughs in BlockType. 2011-09-22 01:31:35 -04:00
TomyLobo
67918f171b Internal restructuring of CommandContext
- getJoinedStrings(n) will now return literally everything after the first space following the (n-1)th argument. Mixing flags in after that is undefined
- What was in args before is now a List named parsedArgs, which also no longer contains the command, which was split off into a separate field.
- get[Padded]Slice now operates on the unparsed args with flags and all, allowing whoever uses it (script commands) to obtain a more low-level input.
- Added a test for the exactness of getJoinedStrings and adjusted an existing test to the new old behaviour.
2011-09-20 03:25:35 +02:00
TomyLobo
2d86b1b40d Fixed and cleaned up CommandContext.
- Removed all the inefficient removePortionOfArray stuff and replaced it by ArrayLists that accumulate content instead.
- Added new tests
- Swapped the arguments to assertEquals everywhere. First argument is "expected".
- Fixed warnings in the test case
- I put my original flag parser back and added support for putting flags anywhere. Looks and works better than that undocumented mindfuck zml put there.
2011-09-19 23:14:49 +02:00
TomyLobo
c78e8a10d7 Made shouldNotStack use a HashSet instead of a bunch of or'ed comparisons. 2011-09-19 09:13:51 +02:00
TomyLobo
c1f1e29617 Replace ItemType.X.getID() with ItemID.X everywhere. 2011-09-19 08:38:30 +02:00
TomyLobo
16a4e5ccb3 Added/fixed some copyright notices. 2011-09-19 08:24:21 +02:00
TomyLobo
088001f099 Used ItemID in ItemType 2011-09-19 08:08:05 +02:00
TomyLobo
51d4b572cb De-craftbooked some copyright notices. 2011-09-19 07:43:49 +02:00
TomyLobo
5b5c25f1ae Added an ItemID class, containing all the item IDs. 2011-09-19 07:39:28 +02:00
TomyLobo
88b4f4de18 Cleanup.
- Fixed a few warnings
- Unified the formatting of the command prologue
- Put down why it was deprecated in the javadoc of a deprecated method.
- Gave //none a better usage line
- Switchcaseified some elseifs
2011-09-19 07:24:49 +02:00
Wizjany
43809a705d More BlockType cleanup 2011-09-19 00:43:39 -04:00
Wizjany
67a7969cd1 Added a tool that allows a player to place and remove blocks at a distance. 2011-09-18 21:53:29 -04:00
Wizjany
1a6bc6f42c Fixed AIOOBE and a missing return, removed an unused and ambiguous method from CommandContext. 2011-09-18 19:11:05 -04:00
Wizjany
dd358bc982 Made floating tree remover work on mushrooms 2011-09-18 02:37:38 -04:00
Wizjany
709cae1995 Removed permissions from plugin.yml for compatibility and cleaned up a bit more. 2011-09-18 02:37:37 -04:00
zml2008
3f369f104a Abstracted type detection of simulateBlockMine into BlockType. 2011-09-17 22:00:14 -07:00
zml2008
a1cf6eb6da Allow //replace to ignore from block damage values (and force them to not be ignored with the -f flag) 2011-09-17 21:50:06 -07:00
zml2008
56fd654eed Fixed bug with unclosed quotes 2011-09-17 21:10:55 -07:00
md-5
46ba1c7f5b Added mob type enum and subsequently removed case sensitivity from //set with mobspawners. 2011-09-17 21:08:15 -04:00
Wizjany
1c4c621500 Cleanup. 2011-09-17 19:32:44 -04:00
Wizjany
f7c5782fa9 Added data support for silverfish blocks. 2011-09-17 14:11:59 -04:00
Wizjany
ece3934994 Abstracted cycler tool methods to BlockData and optimized them slightly, as well as adding support for many new blocks. 2011-09-17 01:44:10 -04:00
Wizjany
b10498b9c7 Added 'xp' as a parameter of the /remove command to remove experience orbs. 2011-09-17 01:44:10 -04:00
TomyLobo
d6ed17dd9d Made some variables final. 2011-09-16 05:48:09 +02:00
TomyLobo
633145d796 Adjusted some BlockType flags.
Beds, glass panes and fence gates should no longer be placed last
Fence gates can no longer be passed through, since they can't, if they're closed.
2011-09-16 05:46:07 +02:00
TomyLobo
7798319896 Optimized all of the public static boolean BlockType.*(int id) functions by using HashSets and put the blockDrops HashMap next to the getDroppedBlock function. 2011-09-16 05:02:39 +02:00
TomyLobo
f0308efdd0 Made the static initializer for BlockType.blockDrops refer to the BlockID constants instead of having the literal IDs. 2011-09-16 03:32:58 +02:00
TomyLobo
19eedecdaf Re-re-introduced a small optimization in the flag parser. 2011-09-16 02:16:11 +02:00
Wizjany
9371202a12 Cleanup BlockType and added a missing block 2011-09-14 21:27:24 -04:00
Wizjany
afa8e873e9 Reverted block id checking in BukkitWorld to prevent false positives and made LoclWorld use the internal list for easier updates 2011-09-14 21:27:24 -04:00
zml2008
75e843b965 Some small improvements to value flags, and a unit test. 2011-09-14 17:59:18 -07:00
TomyLobo
6cdfd86f0b CommandContext:
- Adjusted comment of CommandContext(String[] args, Set<Character> valueFlags) to reflect the actual semantics
- Optimized several parts of the parser (still not happy with the frequent reallocations inside removePortionOfArray)
- Someone (unintentionally?) forgot to break if a non-flag argument was found. If this was indeed intended behaviour, just change the "break;" in line 83 to "continue;".
- Reduced the number of nested control structures a bit.
2011-09-14 18:56:42 +02:00
TomyLobo
cb927d17e1 Fixed a warning. 2011-09-14 18:33:07 +02:00
zml2008
6f43c6a312 Updated for 1.8 blocks and items 2011-09-13 22:47:17 -07:00
zml2008
2f390e9938 Added multiword args and some improvements to value flags. 2011-09-13 22:47:17 -07:00
zml2008
c38a6b0677 Bug fixes 2011-09-09 15:15:03 -07:00
zml2008
6b3f19f857 Minor cleanup of WEPIF constructors 2011-09-07 17:56:39 -07:00
ZerothAngel
703131107d Fix dinnerperms wildcard matching & group enumeration. 2011-09-05 20:53:11 -07:00
zml2008
6f1d263e16 Added getting of the Bukkit player to BukkitPlayer (for RegionBook) 2011-09-04 19:29:45 -07:00
TomyLobo
3bcd9a932b Replaced lots of else if constructs by switch/case and other simpler constructs. 2011-09-05 04:20:36 +02:00
TomyLobo
9ea977af77 Fixed some warnings. 2011-09-04 23:20:03 +02:00
TomyLobo
bb2f8bb350 Cleaned up WorldEdit.getFlipDirection. 2011-09-04 23:18:37 +02:00
Wizjany
e4cd6c23b6 Fixed odd-lengthed clipboards double flipping in the center as per anon's commit(s). 2011-09-03 20:25:20 -04:00
Wizjany
4c00a24c1d Abstracted all block IDs to BlockID and item ids to ItemType. Overloaded recently changed methods for compatibility and cleaned a few things up. 2011-09-03 13:01:51 -04:00
TomyLobo
8c0d0f9ed4 //[h]sphere can now generate ellipsoid (stretched sphere) shapes 2011-09-03 18:59:18 +02:00
TomyLobo
780d07a9ba Fixed a warning. Seriously, guys... 2011-09-02 21:32:23 +02:00
TomyLobo
3205904003 //copy and //paste now respect /toggleplace. 2011-09-02 21:03:22 +02:00
zml2008
bc6315fb24 Fixed getting and setting of blocks in unloaded chunks 2011-08-29 17:31:08 -07:00
zml2008
02d8acfa81 Alowed performing undos from other player sessions, if they exist. 2011-08-29 14:24:46 -07:00
zml2008
a3186c2ce4 Removed old workaround from hmod 2011-08-29 14:24:46 -07:00
zml2008
93fbad4d82 Cleaned up CommandAlias a bit 2011-08-29 14:24:46 -07:00
TomyLobo
d64fd95173 Added support for value flags to the command system 2011-08-29 14:46:36 +02:00
TomyLobo
b8a310dfdc Changed data type of BaseBlock.data from char to byte 2011-08-29 14:46:35 +02:00
zml2008
1562f17540 Added block damage support to //replace and //replacenear 2011-08-29 00:08:06 -07:00
zml2008
d83fed13fb Fixed 43 and 44 block data cycling 2011-08-28 20:46:54 -07:00
zml2008
04dd21d51a Added merging of quoted multiword strings (single or double quotes) into one index, flags can be anywhere in the command args string. Untested and currently unused command aliasing added for moving commands around 2011-08-28 13:00:00 -07:00
TomyLobo
4dcbae03fe Made some variables in CuboidClipboard.flip final 2011-08-28 12:28:31 +02:00
TomyLobo
447de4b206 - CommandContext's valueFlag constructor will now ignore the 0th element of args (no idea why that is even there)
- Limited flags to a-zA-Z
- Passing null to the valueFlag constructor will disable flag parsing altogether
- Adjusted the error message
- Added javadoc to CommandContext(String[], Set<Character>)
- Added CommandContext(String, Set<Character>)
2011-08-27 16:12:49 +02:00
TomyLobo
799b84622f Added support for value flags to CommandContext. 2011-08-26 18:40:51 +02:00
TomyLobo
8ac8cb77a5 Cleaned up bukkit event registration a bit and fixed 2 warnings. 2011-08-26 18:40:21 +02:00
TomyLobo
3f58187790 Fixed sign post flipping 2011-08-26 16:48:31 +02:00
TomyLobo
c6843a2c6d When flipping a door upside-down, the top and bottom parts are now swapped. 2011-08-26 14:08:02 +02:00
TomyLobo
c8bbcbd133 Fixed flipping of the central blocks in a clipboard with odd length. 2011-08-26 14:04:38 +02:00
TomyLobo
8e84e7ae18 - Added proper block flipping code for all blocks with proper rotation code except sign posts
- Fixed block rotation code for some blocks and cleaned it up a lot
- Added block rotation code for powered rails and detector rails
- //flip now flips all blocks, not just half of them
2011-08-26 13:14:39 +02:00
TomyLobo
2281684f20 - Added a -p flag to //flip that makes it flip around the player instead of the center of the clipboard.
- Code cleanup
2011-08-26 05:04:07 +02:00
zml2008
84ed4bf4c3 Added PermissionsEx support to WEPIF. 2011-08-24 23:58:06 -07:00
Wizjany
da6e6da024 Cleanup. Added toString override for polygonal regions. 2011-08-24 18:27:18 -04:00
Droolio
26d07b4ca4 Fixed polygonal edges with explicit test for point-on-line segment
Closes pull #136
2011-08-24 00:19:00 -07:00
zml2008
2af38feadc Added a generic injector for commands 2011-08-24 00:17:27 -07:00
zml2008
ef60fa94bf Typo fixes 2011-08-24 00:17:27 -07:00
masteroftime
63262dbd5f Corrected number of arguments in //pos2 2011-08-22 23:05:31 +02:00
zml2008
91b7b8444f Added pattern support to /replacenear, //walls, and //faces 2011-08-21 23:56:10 -07:00
zml2008
9e13e25760 Fixed floodfill usage 2011-08-21 23:56:10 -07:00
TomyLobo
9de9004834 - Moved Bukkit event registration from WorldEditPlugin into the respective listeners.
- Changed registerEvent to the string-based system WorldGuard has, which should improve compatibility with differing Bukkit versions.
2011-08-21 23:05:03 +02:00
TomyLobo
d12bff993b Added //-prefixed aliases for most /-prefixed commands 2011-08-21 22:35:27 +02:00
Wizjany
a9498d2c68 Stop working around broken stuff and do it like we always have. 2011-08-21 11:47:29 -04:00
TomyLobo
e09a66d859 Gave /green a larger "ignored blocks" set. 2011-08-20 15:51:25 +02:00
TomyLobo
2893438f8e /green now fails a bit less. 2011-08-20 15:18:17 +02:00
zml2008
3c92bd9451 Worked around brokenness in PlayerInteractEvent 2011-08-17 13:38:23 -07:00
zml2008
59ade7a386 Abstracted natural blocktype checking to BlockType.isNaturalBlock 2011-08-17 13:36:17 -07:00
TomyLobo
93620ec168 The /green command should now only affect dirt on the top layer. 2011-08-17 13:19:35 +02:00
zml2008
2b94ddf7ed Added flag to //smooth to only use "natural" blocks 2011-08-17 00:33:46 -07:00
zml2008
c99d64cfa0 Removed unnecessary valid block checking (already in LocalWorld) 2011-08-16 22:29:06 -07:00
zml2008
a313f2e93e Made events respect isCancelled() 2011-08-16 18:39:07 -07:00
Wizjany
4d6bb6d746 Prevent setting blocks to items due to Bukkit's Material containing both. 2011-08-16 19:31:22 -04:00
zml2008
3f0da63b01 Fixed dinerperms groups and bridge detection. 2011-08-16 14:05:45 -07:00
TomyLobo
151b4c0fa1 Added a /green command, which greens the surrounding landscape. 2011-08-16 18:43:13 +02:00
TomyLobo
6c5d1236c7 Fixed non-integer radius support for /thaw and /snow. 2011-08-16 18:42:29 +02:00
TomyLobo
ea445ebcf5 Added a -s flag to //chunk, which extends your current selection to the encompassed chunks. 2011-08-16 10:10:23 +02:00
TomyLobo
c79d90bb99 Added support for non-integer radius to //fill, //fillr, //drain, //fixlava, //fixwater, //snow and //thaw. 2011-08-15 14:35:21 +02:00
TomyLobo
a57830706e Added support for non-integer radius to //superpickaxe recursive and improved performance a bit by making the recurse method static. 2011-08-15 14:22:35 +02:00
TomyLobo
e67ea1e769 Commands that consider the player's look direction now also use up/down when the player's pitch is outside the [-67.5;67.5] interval. 2011-08-15 14:09:19 +02:00
TLUL
22cbc90b6d setTypeIdAndData in LocalWorld is no longer abstract - it now defaults to calling setBlockType and setBlockData. Restores compatibility with SinglePlayerCommands 2.10_2. 2011-08-14 03:48:18 -04:00
Wizjany
9d753c8692 Cleanup overlay/underlay mask. 2011-08-13 01:04:59 -04:00
TomyLobo
af2429467d Optimized //(h)sphere a bit and made the shell for //hsphere as thin as possible. 2011-08-12 08:20:40 +02:00
TomyLobo
b74670fda6 Fixed a warning 2011-08-12 08:20:40 +02:00
X1337X
bc31e4c20a Removed the >, or <, from the over and underlay masks - command is now /mask >id,id,id 2011-08-11 22:56:24 +02:00
X1337X
43bba317e5 Added overlay and underlay masks 2011-08-11 21:44:54 +01:00
masteroftime
750d6dd1d0 Destroying tall grass with superpickaxe now randomly drops seed 2011-08-11 19:27:00 +02:00
Wizjany
46e37017bf Whitespace police 2011-08-10 18:36:26 -04:00
masteroftime
7b306160d7 Added optional position parameter to //pos1 and //pos2 2011-08-10 18:36:26 -04:00
hretsam
ddcf948974 Fixed issue #376 "right-clicking with a compass on a door is treated if the door was not there and the left mousebutton was clicked."
Also when you use the compass for jumpto/thru it wont interact with items anymore.
2011-08-10 18:36:25 -04:00
TomyLobo
5e45fd1625 Disabling global masks while regnerating because they only affect the area outside the selection. 2011-08-10 04:16:54 +02:00
TomyLobo
2af31fe231 Added position logging to /up, /ceil, position+orientation+region logging for the script commands and changed the logging for //move and //stack to orientation+region 2011-08-09 01:23:16 +02:00
TomyLobo
d30cad6340 Added ORIENTATION_REGION and ALL LogModes, which log orientation+region and position+orientation+region respectively. 2011-08-09 01:23:08 +02:00
TomyLobo
e320d34b32 Added an optional on/off argument to the toggle pickaxe command. 2011-08-09 00:19:58 +02:00
TomyLobo
cc917b424c Added position/region logging. 2011-08-08 14:40:02 +02:00
TomyLobo
6f79df8398 Added to toString() method to CuboidRegion. 2011-08-08 14:39:16 +02:00
TomyLobo
2c155c241b Added an invokeMethod hook to CommandsManager, that wraps method invocation and can be overridden 2011-08-08 14:06:28 +02:00
TomyLobo
96eb94155c Fixed the desciption of the //outline (//faces) command. 2011-08-08 09:20:55 +02:00
TomyLobo
7a3ddfe7bc Fixed //flip sometimes throwing errors about unknown directions. 2011-08-08 09:19:24 +02:00
TomyLobo
8d688165ee Fixed exceptions in //brush since build #115. 2011-08-08 02:23:42 +02:00
Wizjany
b8a987b204 Cancel scheduler tasks onDisable to prevent nag warnings 2011-08-07 11:57:32 -04:00
zml2008
0f73533199 Fixed some more warnings 2011-08-07 01:08:40 -07:00
zml2008
cea080e7c7 Added Nijiperms bridge detection, allowing DinnerPerms to no longer conflict with everything else by default. 2011-08-07 01:00:48 -07:00
TomyLobo
0040ba9867 Added support for non-integer radius to the sphere, cylinder, smooth and extinguish brushes. 2011-08-07 05:24:20 +02:00
TomyLobo
57b5c5b546 Added support for non-integer radius to //cyl, //hcyl, //sphere and //hsphere 2011-08-07 05:24:19 +02:00
TomyLobo
9d98ca3db8 Added library support for non-integer radius spheres and cylinders. 2011-08-07 05:19:17 +02:00
TomyLobo
a527b59770 Fixed more warnings. 2011-08-07 02:53:48 +02:00
hretsam
282b3fbd05 Merge branch 'master' of git@github.com:sk89q/worldedit.git 2011-08-07 02:42:12 +02:00
hretsam
2342acfae2 Added pyramid generation with /pyramid & /hpyramid 2011-08-07 02:40:48 +02:00
TomyLobo
79f8a032f3 Fixed warnings. 2011-08-07 02:34:30 +02:00
Wizjany
02e24ed824 Removed and reimplemented mrapple's selection at a distance. It is now a brush tool, meaning it can be bound as other tools can and it subject to Nichts' /range command, so you can select points in midair. 2011-08-06 19:22:10 -04:00
zml2008
266f272d88 Moved WEPIF config to a global config file. Permissions configured per-plugin are not migrated to the global config. 2011-08-06 00:35:40 -07:00
Elizabeth Jennifer Myers
501c9fa482 Merge branch 'master' of https://github.com/sk89q/worldedit 2011-08-05 15:36:43 -04:00
Elizabeth Jennifer Myers
4aa9f7d35b EditSession: Fix hcyl height checks.
The height check was incorrect for certain height/position combinations,
causing the cyl to be the wrong length.

Closes #119
2011-08-05 15:34:05 -04:00
hretsam
2068189cf5 Added multiworld support for snapshots.
Added robinjam's nether support (Thank you robinjam!)
2011-08-05 12:35:38 +02:00
hretsam
f8c53a06bf Merge branch 'master' of git@github.com:sk89q/worldedit.git 2011-08-05 12:30:27 +02:00
hretsam
990915b23f Merge remote-tracking branch 'remotes/pull_117/multiworld-snapshots' 2011-08-05 12:29:49 +02:00
zml2008
37f8b8927a Made getGroups() work properly for nijiperms. 2011-08-04 21:58:14 -07:00
sk89q
8ea980a303 Changed //smooth to smooth nearly everything. 2011-08-02 15:52:58 -07:00
sk89q
8bb0629d79 Added //naturalize. 2011-08-02 15:52:57 -07:00
zml2008
9343b3d1a8 Changed the DinnerPerms priority to not be overridden by permissions bridges 2011-08-01 21:10:13 -07:00
zml2008
cb7ec82905 Added DinnerPerms support to WEPIF 2011-08-01 21:02:15 -07:00
zml2008
2efa37f0b2 Fix for bukkit note block changes 2011-07-31 22:11:45 -07:00
mrapple
894ebec740 You may now select pos1/pos2 from a distance! 2011-07-23 11:34:28 -05:00
mrapple
40772cbc67 I had just compiled this, not sure how that errors slipped through 2011-07-23 10:54:38 -05:00
mrapple
15b97782c4 Remove unnecessary player animation event, just use player interact instead 2011-07-23 10:51:31 -05:00
Jacob Scott
86d12a62a0 superpickaxe on a piston head wont drop an unplacable block 2011-07-15 03:22:58 -05:00
Jacob Scott
66dcc99809 fixed superpickaxe for gravel & lightstone, preprocessors faster than postprocessors, added methods so same-type changes are visble client-side, fixed fixliquid & setblocks block count 2011-07-15 02:00:48 -05:00
Jacob Scott
75660547d9 fixed superpickaxe for gravel & lightstone, preprocessors faster than postprocessors, added methods so same-type changes are visble client-side, fixed fixliquid & setblocks block count 2011-07-15 01:59:30 -05:00
Jeremy Koletar
4b65cf5bea Curse you indentation man! 2011-07-07 14:25:21 -05:00
Jeremy Koletar
7717223686 Some code tidying. 2011-07-07 14:05:03 -05:00
James Robinson
73a86468fe Add nether snapshot support 2011-07-07 19:10:36 +01:00
Jeremy Koletar
6b9dbe349a Changes tabs to spaces, also removed extra boolean. 2011-07-07 12:35:08 -05:00
James Robinson
858f8d3c36 Add multiworld snapshot support 2011-07-07 18:23:12 +01:00
Jeremy Koletar
fce942e130 Allow a command to be passed to /ascend and /descend which ascends/descends multiple floors. 2011-07-07 10:35:20 -05:00
mrapple
1e9c5b2c76 Allow piston blocks to rotate 2011-07-02 20:06:56 -05:00
Wizjany
084e9456e1 Added 1.7 blocks to BlockType methods. 2011-07-02 15:13:21 -04:00
Wizjany
5231352f6c Updated item ids and names for 1.7 2011-07-01 00:26:40 -04:00
Wizjany
b4f646a11a Added backwards compatibility for per-world permissions. (Not sure why it hasn't popped up before now) 2011-06-30 09:20:07 -04:00
Wizjany
021e99c252 Added range command for brushes. Thanks Nichts 2011-06-22 18:33:43 -04:00
Wizjany
1aa08104b5 Made a few commands obey //toggleplace 2011-06-21 12:44:12 -04:00
sk89q
86ecd49b89 Added support for using instances (created using a specified dependency injector) in CommandsManager. 2011-06-18 10:14:49 -07:00
hash
1784b29f02 Added a new utility method to BukkitUtil to do the common task of shifting coordinates for an entity to the center of a block. 2011-06-15 20:01:03 -05:00
Wizjany
c21357de28 Added multiworld permissions support to WEPIF 2011-06-09 00:30:19 -04:00
hash
08c8a5ab23 Merge branch 'master' of github.com:sk89q/worldedit 2011-06-06 19:32:42 -05:00
hash
b5c9f70e70 Added a utility method for dealing with location precision to bukkit utilities. 2011-06-06 19:32:15 -05:00
sk89q
95c60343c7 Made 'brick' => brick block, not brick bar. 2011-06-05 14:37:11 -07:00
sk89q
f0b2fcc13f Improved item/block name matching. 2011-06-05 11:59:23 -07:00
sk89q
e20cca38fd Change the block type check to be implementation-dependent. The Bukkit plugin now checks Bukkit's Material. 2011-06-04 22:22:23 -07:00
sk89q
0f040429c5 Added flood fill tool, fixed data values not being set properly. 2011-06-04 19:41:12 -07:00
sk89q
730244056c Fixed a mask parsing error that raised java.lang.StringIndexOutOfBoundsException. 2011-06-04 12:22:33 -07:00
sk89q
2e7de18840 Removed ReplacingEditSession, which is now obsoleted by the changes to EditSession. 2011-06-04 12:21:13 -07:00
sk89q
aa17d2f0e0 Added //gmask to set a *GLOBAL* mask that affects nearly ALL operations. Now you can confine //sphere to a region or create //walls that do not replace existing blocks. 2011-06-04 12:16:10 -07:00
sk89q
e1da7c41ad Added a new region-based mask type and the ability to combine masks. 2011-06-04 11:57:40 -07:00
sk89q
504b4a613f Added support for combined masks. 2011-06-04 11:42:45 -07:00
sk89q
d881c14e2d Added //fast mode, which allows the server to skip the dirtying of chunks. This means that you have to rejoin to see changes though, but most operations are doubled in speed. 2011-06-04 10:30:45 -07:00
sk89q
d397460026 Added rotation support to redstone repeaters. 2011-06-03 22:51:42 -07:00