Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Не могу удалить MovieClip (http://www.flasher.ru/forum/showthread.php?t=106987)

Anri_k 23.01.2008 15:30

Не могу удалить MovieClip
 
Здраствуйте! Нашёл на сайте исходник с крутяшимся меню, вроде разобрался со всем, что к чему, вот только не могу удалить этот клип, на всех других сценах он остаёться, помогите разобраться! За ранее благодарю за содействие!
Код:

var vars="";
//задаем пустую переменную для перехода в фототчеты
var j:Number = 7;
//количество кнопак
var a:Number = 200;
//ширина параболы по которой будет двигатся кнопка
var b:Number = 60;
//высота параболы по которой будет двигатся кнопка
var q:Number = 500;
//координаты на главной сцене по оси икс для нашего блока кнопак
var z:Number = 350;
//координаты на главной сцене по оси игрик для нашего блока кнопак
var TEXT:Array = ["29.11.2007", "06.12.2007", "13.12.2007", "=D", ":D", "8)", "%)"];
//текстовые поля которые будут высвечиватся в наших подсказках
var World:Array = ["img/garage17-01-08/image.xml", "http://www.google.com", "http://www.flash-mx.ru", "http://www.rambler.ru", "http://www.mail.ru", "http://www.membrana.ru", "http://www.3dnews.ru"];
//то что должно произойти при нажатии на кнопку
var g:Number = 60;
//меняя значение "q" вы задаете степень уменьшения
var gr:Number = Math.PI/180;
//
var u:Number = 0;
///////////////////////////////////////////////////
///этот кусочек кода управляет уменьшение кнопак///
//////////изменение в коде нетребуется/////////////
var v:Number = 500;
var r:Number = 350;
for (var t:Number = j; t<(j*2); t++) {
        createEmptyMovieClip("mv"+t, t);
        this["mv"+t].d = 0+t*(360/j);
        this["mv"+t].onEnterFrame = function() {
                if (_root._xmouse<v) {
                        this.d -= (v-_root._xmouse)/60;
                }
                if (_root._xmouse>v) {
                        this.d -= (v-_root._xmouse)/60;
                }
                var x = a*Math.cos(this.d*gr);
                var y = g*Math.sin(this.d*gr);
                this._x = v+x*Math.cos(u*gr)-y*Math.sin(u*gr);
                this._y = r+x*Math.sin(u*gr)+y*Math.cos(u*gr);
        };
}
///////////////////////////////////////////////////
///////////////////////////////////////////////////
///////////////////////////////////////////////////
for (var i:Number = 0; i<j; i++) {
        attachMovie(i, "mc"+i, i);
        //создаем для каждой кнопки индивидуальный набор переменных
        this["mc"+i].d = 0+i*(360/j);
        this["mc"+i].e = i;
        //оговариваем поведение наших кнопак
        this["mc"+i].onEnterFrame = function() {
                if (_root._xmouse<q) {
                        this.d -= (q-_root._xmouse)/60;
                }
                if (_root._xmouse>q) {
                        this.d -= (q-_root._xmouse)/60;
                }
                // вычисляем координаты по параболе                                     
                var x = a*Math.cos(this.d*gr);
                var y = b*Math.sin(this.d*gr);
                this._x = q+x*Math.cos(u*gr)-y*Math.sin(u*gr);
                this._y = z+x*Math.sin(u*gr)+y*Math.cos(u*gr);
                //огавариваем уменьшение для наших кнопак
                this._xscale = this._yscale=_root["mv"+(this.e+j)]._y/4;
                //огавариваем уровень для нащих кнопак
                this.swapDepths(+this._y);
                //создаём условие стыковки с курсором мыши
                if (this.hitTest(_root._xmouse, _root._ymouse)) {
                        this.attachMovie("help", "help", 1);
                        this.help._y = -36;
                        this.help._x = -25;
                        var w:Number = 12;
                        with (this.help) {
                                createTextField("mytext", 2, -w, -w, 70, 20);
                                myformat = new TextFormat();
                                myformat.size = w;
                                myformat.color = 0x003366;
                                myformat.font = Font;
                                mytext.selectable = false;
                                mytext.text = TEXT[this.e];
                                mytext.setTextFormat(myformat);
                        }
                }
                if (!this.hitTest(_root._xmouse, _root._ymouse)) {
                        this.help.unloadMovie();
                }
        };
        // задаем условие которое должно происходить при нажатии на нашу кнопку
        this["mc"+i].onPress = function() {
                vars=World[this.e];
        gotoAndPlay("Сцена 4",1);
        };
}


chingachgoog 23.01.2008 16:04

Тут два решения: либо циклом с removeMovieClip удалять клипы, либо, создавать клипы не на руте, а в контейнере на руте (любой пустой мувик брошенный в координаты 0,0) - и потом на таймлайне можно ВРУЧНУЮ(!) удалить (переместить, скрыть...) этот мувик-контейнер со всем содержимым (код придется подправить конечно)

Anri_k 23.01.2008 16:23

такссс.... а как удалить циклом с removeMovieClip, если не сложно можно пример?

Пытаюсь сделать с помошью маски, пока тоже не выходит


Вроде получилось удалить циклом, спасибо.


Часовой пояс GMT +4, время: 10:09.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.