PDA

Просмотр полной версии : Есть прелоадер, нет знании его подравить


SantaMaffy
12.03.2007, 18:02
Перебрал кучу прелоадеров, нашёл один самый подходящий, но есть небольшая проблемма, флэш начинает работать не дожидаясь окончания загрузки, где-то на 30% начинает, кидаю код, и сам прелоадер, помогите пожалуйста разобраться

var MOVIE_PATH:String = "game10.swf";
_root.attachMovie("preloader", "preloader", _root.getNextHighestDepth(), {_x:Stage.width / 2, _y:Stage.height / 2});
preloader._x -= preloader._width / 2;
preloader._y -= preloader.height / 2;
loadMovieNum(MOVIE_PATH, 1);
_level1.stop();
_root.onEnterFrame = function () {
var percent:Number = Math.ceil((_level1.getBytesLoaded()/_level1.getBytesTotal()) * 100);
this.preloader.gotoAndStop(percent);
this.preloader.progress_string.text = percent + "%";
if (percent > 99) {
this.preloader.removeMovieClip();
delete this.onEnterFrame;
_level1.gotoAndPlay(2);
}
}

screamge
12.03.2007, 18:33
метод LoadMovieNum для этого дела не годится....пользуйтесь MovieClipLoader

SantaMaffy
12.03.2007, 19:29
метод LoadMovieNum для этого дела не годится....пользуйтесь MovieClipLoader

а это как, я не силён в этих понятиях...если можно подробнее, а лучше может есть у кого-то сразу готовый исходик прелоадера который будет открывать мувик в другом файле :rolleyes:

iNils
12.03.2007, 21:15
На форуме каждая 10-ая тема про прелоадеры.
http://flasher.ru/forum/search.php?do=process&q=preloader
Выбирайте.

SantaMaffy
12.03.2007, 23:05
три дня уже в поиске лажу, ничего не нашёл подходящего.

iNils
13.03.2007, 02:31
Ваш код у меня работает нормально.

SantaMaffy
13.03.2007, 17:07
что я тогда не правельно делаю, на мой взгляд ошибок не допускаю, ведь там нужно лишь задать путь к флэш и всё

iNils
13.03.2007, 17:10
Я не вижу и не могу видеть, что вы там не правильно делаете. Вы там, а я тут. Намек понятен?)

SantaMaffy
13.03.2007, 17:40
если у вас есть желание мне помочь, стукните в асю 452-13-19, готов материально поддержать, намёк понятен? :)))))))))))

etc
13.03.2007, 17:44
Материально — в вакансиях ищите помощника. Непосредственно на форуме решать проблему на нем же, а не просить людей стучаться к вам в асю. Просить можно в одном разделе, «вакансии» называется.

SantaMaffy
13.03.2007, 18:51
Материально — в вакансиях ищите помощника. Непосредственно на форуме решать проблему на нем же, а не просить людей стучаться к вам в асю. Просить можно в одном разделе, «вакансии» называется.

какой у вас процент полезности ваших сообщении?...., наверно очень низкий...

iNils,
ну раз правила такие, то давайте тут уже закончим, вообщем загрузил на сервер прелоадер с флэшом, и при загрузке страницы он вообще уже не грузиться, 0%, и так и стоит...

etc
13.03.2007, 18:55
какой у вас процент полезности ваших сообщении?...., наверно очень низкий...
Это называется общепринятая практика форума. Проценты можно не высчитывать, я же ваши проценты не считаю.

SantaMaffy
13.03.2007, 19:37
просто вместо того чтобы помоч, в каждом топике лишь недовольство с вашей стороны, я не знаю чем я вам не угодил, но если каждого вновь прибывшего пользователя вы таким образом встречаете, то это не есть хорошо

iNils
13.03.2007, 22:43
SantaMaffy, намек вы так и не поняли :) Давайте свои исходники. А выяснять свои отношения надо через приват.

SantaMaffy
14.03.2007, 13:03
SantaMaffy, намек вы так и не поняли :) Давайте свои исходники. А выяснять свои отношения надо через приват.

:) прикрепил...

klierik.
14.03.2007, 15:09
а я б рекомендовал вообще воспользоваться внешним прелоадером =)
он полностью пишеться буквально за пол часа
и весит до 1КБ )))

зы: класс MovieClipLoader
зы2: юзаем линк у мя в подписи и читаем про него =)
удачи

iNils
14.03.2007, 19:47
Поменяйте код прелоадера на этот
var MOVIE_PATH:String = "flash.swf";
_root.attachMovie ("preloader", "preloader", _root.getNextHighestDepth (), {_x:Stage.width / 2, _y:Stage.height / 2});
preloader._x -= preloader._width / 2;
preloader._y -= preloader.height / 2;
loadMovieNum (MOVIE_PATH, 1);
_level1.stop ();
_root.onEnterFrame = function () {
_level1._visible = false;
var percent:Number = Math.ceil ((_level1.getBytesLoaded () / _level1.getBytesTotal ()) * 100);
this.preloader.gotoAndStop (percent);
this.preloader.progress_string.text = percent + "%";
if (percent > 99) {
this.preloader.removeMovieClip ();
delete this.onEnterFrame;
_level1._visible = true;
_level1.play ();
}
};
А внутри flash.fla в первом кадре напишите
stop ();

SantaMaffy
14.03.2007, 21:58
вот, уже то что надо, ОГРОМНОЕ СПАСИБО, правдо flash проигрываеться один раз и останавливаеться:( нельзя чтоб она повторялась?

iNils
14.03.2007, 22:01
Заменить код в flash.fla на
if (!flag) {
flag = true;
stop ();
}

SantaMaffy
14.03.2007, 23:05
всё работает, спасибо ещё раз!!!