There is no direct way to do this, but you've got some choices.
First of all, you can use the (dated) Dary system. Or have a look at vJass' dynamic arrays. And at last, there are always Tables.
e: i can't get the links inline, so here they are
It's not really hard. And i must know, since i already did it ;) But go ahead and build it since it's a nice project. Just look at the bridges as rects or regions an check on entering if the unit is high enough. Also, try to allow bridges above other bridges.
But i guess that leaving bridge...
Try it yourself. Or tell me where that this comes from in the method shown below taken from the op.
Or tell me where it returns some value of type thistype.
static method for takes real x, real y, real r, boolexpr c returns thistype
local List node
Nah, Jass supports recursion. So the above will work.
It does not support calling a function which was not defined before calling, so smth like this wont work:
function even takes integer i returns boolean
if i == 0 then
Uhm? They do.
//Generated allocator of Parent
function s__Parent__allocate takes nothing returns integer
local integer this=si__Parent_F
if (this!=0) then
Using a heap for n insertions you get a time-complexity of O(n*ln n). Everyone agrees? (Don't know if i use the right terminology, correct me if im wrong.)
Now lets consider this:
function foldl takes nothing...
You can have a global Multiboard, but you can't initialize it inside of the globals block.
Board m=Board.create() //Error
Board n //works
Then you can acces n in your functions. You create the actual multiboard inside of an init function
Dunno, you dont gave that much informations, but this may help http://www.wc3c.net/vexorian/jasshelpermanual.html#interfs
Another possiblity is ofcourse http://www.wc3c.net/vexorian/jasshelpermanual.html#typecast But i think it's a dirtier approach. Really depends on your situatuion.
Tabs are no replacements for a fixed amount of spaces. They align at multiple of the tab-width-amount (normally 4 or 8).
aaa a a
aaaa aaa a
So, if you want to replace spaces with tabs, you have to count the position where the next non-space...
Care to elaborate?
I mean i'm all for readability and i would use the local too but im not 100% sure it's actually faster.
In comparison we've got two native calls versus one native call, one local declaration and two local reads. So the local declaration and two reads have to be faster...