
Код AS1/AS2:
for (var i:Number = 0; i < 8; i++)
{
var button:MovieClip = drawBTN(this, "button" + i, this.getNextHighestDepth, 300, 10);
button._x = (Stage.width - button._width) / 2;
button._y = 50 + (button._height + 10) * i;
trace(button)
}
function drawBTN(cont:MovieClip, name:String, depth:Number, width:Number, height:Number):MovieClip
{
var btn:MovieClip = cont.createEmptyMovieClip(name, depth);
with (btn)
{
beginFill(0x99CC00, 100);
moveTo(height, height * 2);
lineTo(height + width, height * 2);
curveTo(height * 2 + width, height * 2, height * 2 + width, height);
curveTo(height * 2 + width, 0, height + width, 0);
lineTo(height + width, 0);
curveTo(height * 2, 0, height, 0);
curveTo(0, 0, 0, height);
curveTo(0, height * 2, height, height * 2);
endFill();
}
return btn;
}
Захотел вот нарисовать кнупочек для меню, подумал, посмотрел примеры и написал фунхцию (уже и их вроде бы умею писать)). Но вот проблема глубина вообще странно считается.. а точнее тут она всегда 0. Как я понял потому что
this.getNextHighestDepth применяется непосредственно для
btn. Вариант
this._parent.getNextHighestDepth - непроходит. Вариант:

Код AS1/AS2:
var deep:Number = 0; // переменная для величины глубины
for (var i:Number = 0; i < 8; i++)
{
var button:MovieClip = drawBTN(this, "button" + i, deep, 300, 10);
button._x = (Stage.width - button._width) / 2;
button._y = 50 + (button._height + 10) * i;
deep++;
trace(button.getDepth())
}
проходит, но неужто ничего проще нету и с использованием
getNextHighestDepth? О_о.
Вроде бы проблема не сложная но догнать немогу, может просто туплюсь..(