A new version of the Lemmingball Z engine has been released.
While i am hard at work with preparing a room for my son (to be born February 2015) i did find some time to work on LBZ. I held a coding weekend while my wife attended a conference back at the end of September. During this coding weekend i removed ALL of the dangerous new/delete c++ code that is no longer needed since the c++11 and c++14 standards. This means: lots a bug-fixes…
The process also inspired me to take a hard look at the LGS scripting language. From this was born the idea to added classes and objects in LGS allowing for a few simple Object Oriented tricks in new scripts… This in turn lead me to creating TESTS for the LGS language… to see if what i think the language does matches with what is actually happening. With these new tests, when and if i f*ck something up, I’ll know! :)
Anyways: The LGS language received an upgrade:
- Define your own datatypes (classes)
- New datatype “object” (can store anything, can have a class)
- New concept “references”, you can now make a reference a objects and strings.
- variables that are “playerglobal” “moveglobal” or “global” are now without limits… define as many as you need, and strings and objects are now also supported as globals.
- Enhanced speed of the scripts, and reduced required memory to run them.
- catchevent and catchallevents can now take catch multiple event at once: (catchevent(A,B) { //code })
- All internal LGS variables and functions are now defined in the same list: allowing me to add functions and variables easier.
- Better handling of LGS crashes.
- LGS is better tested, and a lot of weird bugs have been killed.
Great news!