According to the docs:
Quoteset(variable, value)
Set the given 'variable' to the given 'value'.
Note - when the name of "value" is a variable, it will be NOT resolved automatically!
To get the content of a variable the get(variable) function need to be used!
Well... not exactly, and that can cause lots of wasted time when, like me, you forget the above note. Consider:
<layer name="scene_03" file="some.file" />
<action name="test_set" >
set(test, 'scene_03');
set(tmp, get(test) );
trace( get(tmp) ); // Result: scene_03
trace( get(layer[get(tmp)].file) ); // Result: some.file
set(tmp, test );
trace( get(tmp) ); // Result: scene_03
trace( get(layer[get(tmp)].file) ); // Result: null
</action>
Display More
Notice: Whether you set tmp to "test" or "get(test)" it traces to the same value, but when you use that value you get very different results -- but not always. The results are the same in string concatenation, for instance (txtadd). How does that make sense?
Klaus -- Since when you do and don't have to use get() is... confusing you can understand how this can easily be missed. Since I seemed to be getting the right result without get() debugging was quite frustrating. Shouldn't set(tmp, test) result in tmp==null or tmp=='test' instead?
Going forward, would it be possible for this to be more like javascript throughout? Just use "var" instead of "get(var)" or set() for that matter?