commit 0a3f5772b9450672fb033a6306fbf7fb0d972d5c
Author: Skydark Chen <skydark2@gmail.com>
Date: Fri Nov 27 10:54:46 2015 +0800
Fix for-each iterator
It should not pop from stack at the end while compiling.
commit 07c057e7502eb51ab3e6088eb2aee9ceb7d07576
Author: Skydark Chen <skydark2@gmail.com>
Date: Tue Nov 24 11:45:07 2015 +0800
Fix non-int type arithmetic compare
It was an error if we compare two double/float/long in scripts
since the bytecode compiled in ExpressionArithmeticCompare.java were
ICMPEQ/ICMPNE/... which assumed that two expressions had an int type.
commit 941b32c8be
Author: Skydark Chen <skydark2@gmail.com>
Date: Sun Nov 15 21:24:25 2015 +0800
Fix ZenGetter and ZenSetter annotations
Before this commit, ZenGetter and ZenSetter in ZenExpansion could not
be defined. Since ZenExpansion requires static methods to work, but
the getters and setters will be invoked as virtual.
commit bd55380b5a
Author: Skydark Chen <skydark2@gmail.com>
Date: Sun Nov 15 19:58:21 2015 +0800
Fix block comments regexp
Before this commit, comments like this could not be recognized:
/* blah blah * blah / <- this slash failed */
commit 2924666ad4
Author: Skydark Chen <skydark2@gmail.com>
Date: Sun Nov 15 19:44:02 2015 +0800
Add support to return void in a function
* statement `return;` is valid now.
* functions return void by default, an explicit return is not necessary now
commit 33c2bd0c94
Author: Skydark Chen <skydark2@gmail.com>
Date: Sat Nov 14 13:48:53 2015 +0800
Add unicode support for zenscripts
The unicode characters can be recognized in strings and comments.
The encoding of scripts should be utf-8.
commit 89b2548d02
Author: Skydark Chen <skydark2@gmail.com>
Date: Thu Nov 12 23:39:25 2015 +0800
Fix nested foreach loop cause out of index
Before this commit, ZenGetter and ZenSetter in ZenExpansion could not
be defined. Since ZenExpansion requires static methods to work, but
the getters and setters will be invoked as virtual.
- Added noReturn() transformation to avoid any item from being returned. Suppressed programmed vanilla/mod behaviour to, for example, give a bucket back.
- Added giveBack() and giveBack(item) transformation to return the item, or a replacement item, back into the inventory instead of the crafting table. Fixes fighting between transformations and default mod/vanilla behavior.
- Fixed asterisks in multiline comments breaking script parsing.
- Fixed removeShaped function not working properly if no ingredients are given
- Fixed addAll for oredict entries in 1.7.10
- Further preparation of event manager for the event update
- Can now request all blocks and entities using the global game variable
- Improved automatic handling of version numbers
- Expanded MFR support to 1.7.10
- Improved MFR implementation, no longer uses reflection. Yay!
- Registration of a class registry now allows a description to be shown when loaded. Handy to check if mod support loaded properly.
- Fixed a few bugs in MFR support
- Fixed 1.7.2 IC2 item bracket handler
- Improved function literals. Function recipes are a thing!
- Added mirrored shaped recipes
- Fixed a few "any" type - related errors
- Added environment to the bracket handlers. Breaks existing bracket handlers!!
- Turned JavaMethod into an interface. Can now be used both for existing methods and generated ones. Makes a few things simpler :)
- Added creative and adventure getters to player info
- Added interface to game, client and server
- Added transformations
- Made ingredient conditions more practical to use, no longer requires imports
- Started implementation of event handling
- Moved commands and logic to the common API code
- Added common interface to MineTweaker recipes
- Added string methods
- Moved the logger from static value to static getter
- Fixed crashes on dedicated servers
- Fixed bracket resolution for <id:meta> values in 1.6.4
- Fixed scripts not being sent to multiplayer clients in 1.6.4
- Finished the RegisterZenClassesTask and applied it to the API & Mod support projects
- Started work on the events API
- Added a mod.info file
- Added mods detection API
- Fixed mod support loading even if the respective mod isn't present
- Fixed iterator implementations missing the remove method (fine in Java 8, but not in Java 7)
- Added /mt mods command
- Added getPlayer to crafting inventory
- Added crafting inventory to recipe function
- Removed some print statements
- Renamed the global minetweaker variable to tweaker
- Bumped forge version to 1121 due to ore dictionary changes
- Added bracket handler for ore entries
- Enabled withTag(null)
- Fixed issues with the new ore dictionary implementation in Forge 1113+
- Fixed bug in Ore recipe conversion
- Fixed import errors not being detected and reported properly
- Fixed nested NBT tags not being converted properly
- Fixed something in any type implementation
- Added commas in function name generation
- Added class registries for IC2 and NEI integration
- Fixed some non-static expansion methods
- Fixed scripts not reloading properly
- Implemented mod support build system
- Fixed recipe removal breaking on recipes without predefined output
- Fixed NPE on parsing a bracket expression that doesn't exist - now prints an appropriate error
- Implemented advanced recipes on <*> values
- Removed unused ZenScript classes
- Continued work on any values
- Moved documentation generation to buildSrc
- Started work on a jar merging task
- Added toString implementation to ingredients
- Added stack count to ICraftingInventory
- Fixed imports
- Added logCommand to the logger to log command output
- Implemented memory script provider to load scripts received from the server
- Added exception handling for script execution
- First attempt at creating a transformer to generate a list of ZenClass and ZenExpansion classes
- Added console commands (reload, names, liquids, inventory, hand, oredict)
- Added general logic
- Fixed item ingredients for wildcard sizes
- Implemented selective recipe removal
- Fixed null recipe results
- Started implementation of player-specific recipes
- Removed redundant IC2 mod copy
- Other minor fixes