@littlebird:
without a tutorial, a documentation you can read / get, figuring out how MD works is like going to the pyramids in egypt and trying to read hieroglyphs
you dont know if and how you can insert / remore code words, how to even begin ... where are the possible code words listed, what the hell is "auto-complete" and what is "visual web developer" (maybe a job descriptiion ?? ^^) thats how i started to learn MD ...
whats important:
--> a well documented scripting language (by egosoft)
--> a getting started guide, some little examples / tutorials
--> tools to validate / type-check the mess you wrote (thats where xml comes in handy, but still ... eyecancer-ish to read)
one might say that even the procedural code can be as nested as the MD, stuff, BUT you (often) can re-write that into not-soo-nested code easily:
Code: Select all
while true
if (A and B == C)
{
if (D or E)
dosomething();
}
else dosomethingelse();
endwhile
rewritten to:
Code: Select all
while true
// un-nest this case
if not (A and B == C)
{
dosomethingelse();
continue; // jump back and ignore the rest ...
}
// un-nest that case
if (D or E)
{
dosomething();
continue; // jump back and ignore the rest ...
}
// and so on ...
endwhile
even better, gosub endsub is available to wrap sub functions away from the bigger picture. thats another thing which isnt possible n MD (at least in x3 as far as i`m aware of, library cues arent comparable to that, @call script is another type of wrapping away code parts by reusability [or just to make code readable])
this type of writing code (filtering first all the abort-conditions) is my favourite and allows you to handle each abort case without having to add a new cue which takes care of cancelling all the others (just in case), and hopefully not 2 parallel cues do the same job at the same time resulting in undefined behavior (and debugging that mess afterwards) ... a mess! you cant really use that xml / MD language to build a big & complex system in a way so that a year later, littlebird can modify it in a way she/he wants to (maybe to improve it) because nobody will be able (and willing !!) to read that mess anymore