1. Let's imagine a situation that we have a weapon:
<ItemType
name = "blah"
virtual = "1">
<Weapon
omnidirection = "true"
damage = "generic:1337"
blah-blah
>
<Effect>
<blah-blah>
...
And we need to get some attribute. For example - if some itemtype have effect with some value, then blah-blah.
typGetAttribute %UNID% %block% %attribute% [%index%=0]
So, UNID is UNID, block is block enclosed in triangle braches (ItemType, Weapon, Effect, etc), attribute is the name of an attribute and index is number of block, if there're few of them (missile launchers, for example)
typGetBlocks %UNID%
Returns a list of blocks of some UNID.
Uses: try to come up with them yourself.
Another one idea.
sysAddObjTimerEvent & sysAddObjRecurringTimerEvent
Make the same, but ... FOR FUNCTIONS.
(sysAddObjTimerFunction 1 (lambda Nil (dbgOutput "IT WORKS")))
Why i can't use events for such targets? Just because events CAN'T receive values.