что не так с этим методом анимации фона jpg, который динамически меняется с помощью кнопок - PullRequest
0 голосов
/ 29 февраля 2012

Хорошо, вот что я представляю, и имейте в виду, что я только начал играть со вспышкой, так что я действительно новичок на этом этапе:

Я хочу иметь две кнопки, которые загружают различные JPEG-файлы, которые достаточно велики (около 5000 х 600 высот) для анимации в качестве фона страницы. так что в моем слое BG для основной временной шкалы я добавил контейнерный видеоклип (также 5000x600), а на временной шкале контейнерного ролика - классическая анимация движения по сцене вперед-назад. затем на главной временной шкале у меня есть две кнопки, которые должны загрузить фоны. вещь, которая, кажется, все испортила - это то, что я вызываю "stop ();" в моем сценарии действий для остановки на 3-м кадре основной временной шкалы после прелоадера и т. д. в моем тестировании я добавил еще один фрагмент ролика, который анимирует и продолжает анимацию, когда я прекращаю (); но фоновое изображение больше не анимируется.

извините за отсутствие понимания и СПАСИБО за терпение;)

В любом случае вот основной код сценария действия:

import fl.transitions.*;

import fl.transitions.easing.*;

// tween the main menu into place upon opening

//var moveTween:Tween = new Tween(mainmenu_mc, "y", Elastic.easeOut, mainmenu_mc.y, 70, 2, true);

// claim MCs from library to use on stage when needed using addChild

var bg1:blueBG = new blueBG();

var bg2:greenBG = new greenBG();

var bg3:testBG = new testBG();
//var p4:page4 = new page4;


containerBG_mc.addChild(bg3);

var pageMoveTween:Tween = new Tween(containerBG_mc, "alpha", Strong.easeOut, 1, 0, 1, true);



blueBtn_btn.addEventListener(MouseEvent.CLICK, btn1Click);

crazyBtn_btn.addEventListener(MouseEvent.CLICK, btn2Click);




function btn1Click (event:MouseEvent):void {


var btn1Outro:Tween = new Tween(containerBG_mc, "alpha", Strong.easeOut, 1, 0, 1, true);

btn1Outro.addEventListener(TweenEvent.MOTION_FINISH, runBtn1Transition);

function runBtn1Transition (event:TweenEvent):void {

containerBG_mc.removeChildAt(1);

containerBG_mc.addChild(bg1);

var btn1Intro:Tween = new Tween(containerBG_mc, "alpha", Strong.easeOut, 0, 1, 1, true);

}

}




function btn2Click (event:MouseEvent):void {


var btn2Outro:Tween = new Tween(containerBG_mc, "alpha", Strong.easeOut, 1, 0, 1, true);

btn2Outro.addEventListener(TweenEvent.MOTION_FINISH, runBtn2Transition);

function runBtn2Transition (event:TweenEvent):void {

containerBG_mc.removeChildAt(1);

containerBG_mc.addChild(bg2);

var btn2Intro:Tween = new Tween(containerBG_mc, "alpha", Strong.easeOut, 0, 1, 1, true);

}

}

и, конечно, есть остановка (); действие на 3-м кадре основной временной шкалы в другом слое сценария действия

РЕЗЮМЕ:

3 слоя: Слой AS3 слой кнопки BG слой

Обязанности: У слоя AS3 просто есть действие остановки на кадре 3 Слой кнопок содержит две кнопки для динамического изменения фона изображения JPEG. сценарий действия для этого слоя - то, что я отправил выше В слое BG есть экземпляр клипа containerBG_mc, который на собственной временной шкале анимирует левую и правую

если вам нужны дополнительные разъяснения, дайте мне знать

1 Ответ

1 голос
/ 29 февраля 2012

Вы изменяете что-то с помощью временной шкалы в видеоклипе контейнера, поэтому вы не изменяете сам контейнер. Чем вы добавляете мувиклипы в контейнер, чтобы анимация не влияла на них.

То, что вы хотите сделать, это добавить фоны к мувиклипу, который вы скручиваете, в контейнер следующим образом:

containerBG_mc.tweened_mc.addChild( bg3 );

Вы можете задать имя tweened_mc на панели свойств при выборе этого анимационного объекта.

...