-ability to define user conditions for spell using Lua scripts. Just use "callback" keyword in conditions, followed by function name after comma. If function returns true, the condition pass and vice versa.
-ability to define user actions for spell using Lua scripts. Use "lua-callback" action type, followed by function name after comma.
* Seems like different versions of CMake and GNU Make doing different things and does not resolve dependeces correctly
* add_custom_command in old version of CMake cannot depends on non-file target
* Old version of CMake does not resolve dependency stratagus.cpp --> version.h --> version-generated.h and trying to compile stratagus.cpp before version-generated.h
* And when generating doxygen documentation, it cannot find rule how to generate version-generated.h, so in stratagus_HDRS file version-generated.h must be twice
* I belive that now compilation is working with CMake 2.6, 2.8, GNU Make 3.8 and Ninja
* Move StratagusMajorVersion, StratagusMinorVersion, StratagusPatchLevel and StratagusPatchLevel2 to CMakeLists.txt
* Added tool genversion.cpp which (re)generate file version-generated.h from cmake if needed
* Fill VERSION macro from other values with C preprocessor instead hardcoded values
* Remove macros StratagusFormatString and StratagusFormatArgs from code, use only VERSION
* This commit enabling clipboard (copy/paste) support on systems with X server
* Now we are using USE_* defines for stratagus features and HAVE_* defines for system native functions (not reimplemented in stratagus)
* So all stratagus builds with different HAVE_* defines should work same and should have same features
* Use cmake for determinating if system has above functions
* Compile our implementations only if system does not have these functions
* Define macro _TRUNCATE if is not defined
* Define errno_t if is not in any standard header include file
* Define prototypes of above functions only if system does not have them
* This commit fix compilation with ubuntu mingw-w64 cross compiler
[*] The coward units in AI force now use Defend order instead of attacking. The same rule applies to summoned units.
[*] The summoned units get GroupId = -1 to avoid AI defence force activate
[*] Changed CclKillUnitAt to use CclGetPos
[-] Fixed missing file in previous commit
[-] Fixed bug when player cancels a building.
[-] Fixed bug with speedup variables in CclGetPlayerData and CclSetPlayerData
[+] Make particles more configurable from Lua
[+] Added 'g' flag for ParseAnimInt to get flag for target unit
[+] Added MissileOffsets array which allows more correct placing for missile's starting point (not from unit's center, but from cannon's hole etc.)
[+] Added CclGetUnitBoolFlag to get unit's bool-flags in Lua
[+] Removed speedup variables (SpeedResourcesHarvest, SpeedResourcesReturn, SpeedBuild, SpeedTrain, SpeedUpgrade, SpeedResearch) into player's code, now speedup could be set individually for each player
[+] Added CUpgradeModifier::ModifyPercent for modifying variables by percent, not by const value.
[+] Added MissileType::Pierce to allow missiles damage everything on their way
[+] Added map preview image generation function for editor (not ready for OpenGL yet)
[+] Added flag for CclCreateMissile to control missile's damage
[*] Missiles now fly into unit's center (according to the comment in code, the old behaviour was to be used for bunkers)
[-] Fixed random number generation code in animations
[-] Fixed "Flushing removed unit" message for boarded units
[-] Fixed unit death into container (happens when unit is temporary)
[-] Fixed land-only restriction for transporters
[-] Fixed "spell-cast" mouse action for non-enemy units (now it's possible to use this action for medics)
[-] Fixed compilation for MSVC9