Форум 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=110613)

player 05.04.2008 19:49

Кушает память, медленно но верно.
 
Вложений: 1
Мувик показывает случайным образом картинки с эффектом плавного перехода. Ест где-то память. Когда я подгружаю 6ть таких мувиков то это сразу заметно, когда один приходится подождать, но все равно ест. Где не пойму. Вроде все чищу.
Код:

var ind:Number = 0;
var ind0:Object = NULL;
var ind1:Object = NULL;
var pri:Number = 0;
// длинна кнопки
var BTNW:Number = 166;
// высота кнопки
var BTNH:Number = 100;
// интервал
my_interval = setInterval(automat1, (Math.floor(Math.random()*5+1)*1000));
// оздает загрузчик клипа
var loader:MovieClipLoader = new MovieClipLoader;
// добавляет в загрузчик обработчик событий
loader.addListener(this);

// гружу первую картинку сразу
rand_file = Math.random();
rand_file = rand_file * 11;
rand_file = Math.floor(rand_file);
var pict_mc:MovieClip = createEmptyMovieClip("pict_mc",-1);
loader.loadClip(rand_file+".jpg","pict_mc");


function automat1() {
        rand_file = Math.random();
        rand_file = rand_file * 11;
        rand_file = Math.floor(rand_file);
        var pict_mc:MovieClip = createEmptyMovieClip("pict_mc"+ind,ind);
        loader.loadClip(rand_file+".jpg","pict_mc"+ind);
        if (pri > 1) {
                pri = 0;
        }
        if (pri == 0) {
                //удаляю мувик
                ind0.removeMovieClip();
                ind0 = _root["pict_mc"+ind];
        }
        if (pri == 1) {
                //удаляю мувик
                ind1.removeMovieClip();
                ind1 = _root["pict_mc"+ind];
        }
        pri++;
        ind++;
        _root["pict_mc"+ind]._x=0;
}
function onLoadInit(_pic:MovieClip) {
        _pic._width = BTNW;
        _pic._height = BTNH;
        _pic._alpha=0;
        _pic.onEnterFrame = function() {
                if (_pic._alpha<100) {
                        _pic._alpha += 10;
                } else {
                        delete _pic.onEnterFrame;
                }
        };
}

Скрипт прикреплен.

etc 05.04.2008 20:53

Проверьте области видимости.

player 06.04.2008 18:42

переписал верхнюю чушь на это
Код:

var ind:Number = 0;
var ind0:Object = NULL;
var ind1:Object = NULL;
var pri:Number = 0;
// длинна кнопки
var BTNW:Number = 166;
// высота кнопки
var BTNH:Number = 100;
// интервал

// оздает загрузчик клипа
var loader:MovieClipLoader = new MovieClipLoader;
// добавляет в загрузчик обработчик событий
loader.addListener(this);

// гружу первую картинку сразу
rand_file = Math.random();
rand_file = rand_file * 11;
rand_file = Math.floor(rand_file);
var pict_mc = createEmptyMovieClip("pict_mc",-1);
loader.loadClip(rand_file+".jpg",this.pict_mc);


function automat1() {
        rand_file = Math.random();
        rand_file = rand_file * 11;
        rand_file = Math.floor(rand_file);
        pict_mc = createEmptyMovieClip("pict_mc"+ind,ind);
                trace(pict_mc);
        loader.loadClip(rand_file+".jpg","pict_mc"+ind);
        ind0 = pict_mc;
        trace("automat " + ind0);
        ind++;
        _root["pict_mc"+ind]._x=0;
}
function onLoadInit(_pic:MovieClip) {
        _pic._width = BTNW;
        _pic._height = BTNH;
        _pic._alpha=0;
        _pic.onEnterFrame = function() {
                if (_pic._alpha<100) {
                        _pic._alpha += 10;
                } else {
                        delete _pic.onEnterFrame;
                }
        };

        trace("удаляю " + _root["pict_mc"+(ind-3)]._width);
        _root["pict_mc"+(ind-3)].removeMovieClip();
       
       
}
my_interval = setInterval(automat1, (Math.floor(Math.random()*5+1)*1000));

тоже чушь но получше. До клипа достучался но память все равно ест.


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

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