Форум 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)
-   -   Обращение к приаттаченному мувику (http://www.flasher.ru/forum/showthread.php?t=87461)

repz 06.11.2006 01:19

Обращение к приаттаченному мувику
 
Сто раз мусировался, но что т не найду никак. Как обратиться к приаттаченному мувику? событие там на него повесить?

repz 06.11.2006 01:34

Код:

mc_mc.onRelease= function() {
        _root.attachMovie("Top","Top1",0,{_x:1,_y:1});
}
_root.Top1.onPress=function() {
        mc_mc._visible=false;
}

Не работает???

El Scream 06.11.2006 01:42

Помоему еще вот так можно
Код:

var thisBug:MovieClip = _root.attachMovie("bug_id", "bug"+bugNum+"_mc", bugNum,
{_x:randRange(50, 500), _y:randRange(50, 350)});

Далее обращаемся к thisBug как к приаттаченому клипу. Кстати вот что поиск выдает на этом форуме при поисковой комбинации "attachMovie"

http://www.flasher.ru/forum/search.php?searchid=457824

В принципе в 9 топике уже нашел
Код:

var counter:Number = 0;
var snowClipBaseName:String = "snow";

function randRange(min:Number, max:Number):Number
{
        var randomNum:Number = Math.round(Math.random() * (max - min)) + min;
        return randomNum;
}


this.onEnterFrame = function()
{
        var newSnowClipName:String = snowClipBaseName + counter;
        var newSnowClipX:Number = randRange(0, Stage.width);
        var newSnowClipScale:Number = randRange(20, 100);
        var newSnowClipAlpha:Number = randRange(30, 100);
        var newSnowClip:MovieClip = this.attachMovie("snow", newSnowClipName, this.getNextHighestDepth(), {_x:newSnowClipX, _y:0, _xscale:newSnowClipScale, _yscale:newSnowClipScale, _alpha:newSnowClipAlpha});
        newSnowClip.onEnterFrame = function()
        {
                if (this._currentframe == this._totalframes)
                {
                        this.removeMovieClip();
                }
        }
        counter++;
        if (counter > 1000)
        {
                counter = 0;
        }
}

Где все наглядно описано. Получается - лень искать. А говорите - искали. Ай яй яй.

repz 06.11.2006 01:45

Дело в том, что inils писал этот код в качестве примера того, как можно обратиться - получается работает, а у мя не пашет. Это я в поиске нашел, но должна быть конструкция проще.....

repz 06.11.2006 02:00

Код:

mc_mc.onRelease=function(){       
            this.attachMovie("Top","Tops",0,{_x:1,_y:1});
}
this.Tops.onRelease=function(){
        mc_mc._visible=false;}

При такой конструкции мувик аттачится прямо на кнопку, а не по координатам???? и не работает, как надо....????
Код:

this.attachMovie("Top","Tops",0,{_x:1,_y:1});
this.Tops.onRelease=function(){
        mc_mc._visible=false;}

а так все работает.....
P.S. можно ли повесить аттач на кнопку? как в первом случае?
P.P.S все понял в первом случае мы на кнопку "координируем" - так что ли?

iNils 06.11.2006 02:00

Код:

mc_mc.onRelease= function() {
        _root.attachMovie("Top","Top1",0,{_x:1,_y:1});
        _root.Top1.onPress=function() {
                mc_mc._visible=false;
        }
}


repz 06.11.2006 02:03

2 iNils:
а обратиться не из под кнопки его создающей можно?

iNils 06.11.2006 02:05

Можно, но только после создания. Первоначальнй код из-за этого и не работал, что вы пытались присвоить обработчик события к клипу, который на сцене в тот момент не существовал.

repz 06.11.2006 02:07

Спасибо!!! :-))))
В конце концов можно юзать код преложенный El Scream.

El Scream 06.11.2006 02:19

Ну, авторство приложенного текста все таки принадлежит Хемуль. Так что при встрече знайте кому обязанны (smile). Мне спасибо, разве что за большую растропность.


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

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