Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Action script 2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=49)
-   -   Про loadMovie (http://www.flasher.ru/forum/showthread.php?t=59781)

phiper 24.06.2004 10:13

Про loadMovie
 
Есть оболочка для загрузки клипов в ней следующий код:
fscommand("fullscreen","true");
fscommand("showmenu","false");

Down='';
Done='';
black_scr._visible=false;
MyClip.loadMovie("slides/1.swf");
fade_dir=-1;
someListener = new Object();

someListener.onKeyUp = function () {
pressed_key=Key.getCode();
if ((pressed_key > 47) and (pressed_key < 58)){ // Это цифры от 0 до 9
if (Down){
Done=pressed_key-48+(Down-48)*10; //привили к правильному числу
LoadMyClip(Done);
Down=0;
}else{
Down=pressed_key;
};
}else if(pressed_key == 8){ //BckSpc- Черный экран
if (black_scr._visible){
black_scr._visible=false;
}else{
black_scr._visible=true;
};
}else if(pressed_key == 32){ //Пробел- Продолжить внутри клипы
MyClip.play();
};
};

Key.addListener(someListener);

function LoadMyClip(clipName){
myInt=setInterval(FadeMyClip,10,clipName);
};


function FadeMyClip(clipName){
if(fade_dir==-1){ //Растворение
if (MyClip._alpha > 10){
MyClip._alpha-=10;
//updateAfterEvent();
}else{
if(((clipName+1)==1) or ((clipName+1)>30)) {
clipName="0";
};
MyClip.loadMovie("slides/"+clipName+".swf");
fade_dir=1;
};
}else{ // появление
if (MyClip._alpha < 80){
MyClip._alpha+=10;
//updateAfterEvent();
}else{
clearInterval(myInt);
MyClip._alpha=100;
fade_dir=-1;
};
};
};

при нажатии комбинации клавишь подгружается определенный слайд.
Мне нужно в один из слайдов подгрузить еще один в нем следующий код

_root.load.loadMovie("7.swf");
m._x = 0;
m._y = 0;

если просматривать отдельно этот слайд, то мувик подгружается, а вместе с первой оболочкой нет

главная оболочка --> слайд --> мувик - не получаетс
слайд --> мувик - получается

подскажите в чем проблема и как ее решить?

Спасибо!

Luke 24.06.2004 11:50

В течении дня разберусь. Работы много.
Для начала:
Код:

Done=pressed_key-48+(Down-48)*10;
Выкидываем.
Привести к правильному числу можно проще.
Код:

pressed_key = chr(Key.getCode());

Luke 24.06.2004 12:32

В общем у тебя явные ошибки.
Напиши конкретно, что должен делать твой код и я подправлю до конца.
Сейчас так:

pressed_key = chr(Key.getCode());
if (pressed_key==8) {
if (black_scr._visible) black_scr._visible=false;
else black_scr._visible=true;
}
}
else if(pressed_key<10) LoadMyClip(pressed_key);
else if(pressed_key==" ") MyClip.play();
}

И кто такой "MyClip", неплохо бы его сначала инициализировать чтоль. А то грузим в воздух. :)

phiper 24.06.2004 13:14

код должен выполняет следующее:

при запуске файла подгружается 1.swf
дальше при нажатии 02, 03, 04, 05
и подгружается соответственно 2.swf, 3.swf ...

при подгрузки следующего swf предыдущий становится прозрачным

перемещение внутри клипа через пробел

Luke 24.06.2004 15:06

Цифры могут нажиматься произвольно. При нажатии пробела переход осуществляется от мувика с альфой 100% на 1 вперед и при этом альфа уменьшается предположим до 50, а тот на который перешли подсвечивается до 100%.
Я правильно понял?

phiper 24.06.2004 15:54

не совсем цифры нажимаются произвольно 03, 06, 10 и т.д
при нажатии пробела внутри загруженого мувика происодит перемещение с кадра с кодом stop() при этом он не менят свойство альфа а вот
при выгрузке клипа он растворятся и появляется вызванный нажатием клавиши

Luke 24.06.2004 17:21

Вложений: 1
Ну держи ;)
Второй фрэйм есть только в 1.swf, поэтому пробел работает только в нем.
В 2.swf и 3.swf текстовые поля. Если у тебя в подгружаемых мувах они будут, что альфу надо подправить. Сделаешь сам, а заодно потренируешься. :)

black_scr._visible=false;
_root.createEmptyMovieClip("MyClip",0);
MyClip.loadMovie("1.swf");
someListener = new Object();
someListener.onKeyUp = function () {
pressed_key = chr(Key.getCode());
if (pressed_key == 8) {
if (black_scr._visible) black_scr._visible = false;
else black_scr._visible = true;
}
else if(pressed_key < 10) MySet = setInterval(FadeMyClip, 10, pressed_key);
else if(pressed_key == " ") _root.MyClip.play();
}
Key.addListener(someListener);

function FadeMyClip(pressed_key){
_root.MyClip._alpha = _root.MyClip._alpha - 10;
if (_root.MyClip._alpha <= 5) {
_root.MyClip.loadMovie(pressed_key+".swf");
_root.MyClip._alpha = 100;
clearInterval(MySet);
}
}

Luke 24.06.2004 17:50

Забыл.
Замени:
_root.MyClip._alpha = _root.MyClip._alpha - 10;
на
_root.MyClip._alpha -= 10;

Красиво будет. :p


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

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