Hi All,
I'm working on an animation that utilizes TweenLite and LoaderMax, It plays 4 videos, depending on which button is pressed. Button 1 plays Video 2, Button 2 plays Video2 and so on.
the issue that I'm running into is that once a particular video has played, I can navigate with breathe_mc.video_btn, live_mc.video_btn and so on, and play other videos, however, if I click to play the same video again, the whole movie freezes. So - it doesn't play the video 2nd time or even allow me do anyting else. So basically, The Video Buttons load and play the video once clicked, but if, after the video played and unloaded, I want to play the same video - the whole movie freezes.. Hope this makes sense... Thanks a bunch ahead of time!! Below is the Code:
import com.greensock.*;
import com.greensock.easing.*;
import com.greensock.easing.CustomEase;
import com.greensock.loading.VideoLoader;
import flash.display.Sprite;
import com.greensock.events.LoaderEvent;
import flash.display.MovieClip;
import flash.display.SimpleButton;
import flash.events.MouseEvent;
//Last Buttons Variables
var close_btn:Button_close = new Button_close();
var learn_more_btn:Button_learn_more = new Button_learn_more();
var replay_btn:Button_replay = new Button_replay();
// Video Variables
var Video_Breathe:VideoLoader = new VideoLoader("Breathe_Video.f4v",{container:this,
x:0, y:0});
var Video_Live:VideoLoader = new VideoLoader("Live_Video.f4v",{conainer:this,
x:0, y:0});
var Video_Sleep:VideoLoader = new VideoLoader("Sleep_Video.f4v",{conainer:this,
x:0, y:0});
var Video_Feel:VideoLoader = new VideoLoader("Feel_Video.f4v",{conainer:this,
x:0, y:0});
// Video complete Event Listeners
Video_Breathe.addEventListener(VideoLoader.VIDEO_COMPLETE, donePlaying_breathe);
Video_Live.addEventListener(VideoLoader.VIDEO_COMPLETE, donePlaying_live);
Video_Sleep.addEventListener(VideoLoader.VIDEO_COMPLETE, donePlaying_sleep);
Video_Feel.addEventListener(VideoLoader.VIDEO_COMPLETE, donePlaying_feel);
OverwriteManager.init(OverwriteManager.AUTO);
//Buttons Invisible
breathe_mc.learn_btn.visible = false;
breathe_mc.video_btn.visible = false;
live_mc.learn_btn.visible = false;
live_mc.video_btn.visible = false;
sleep_mc.learn_btn.visible = false;
sleep_mc.video_btn.visible = false;
feel_mc.learn_btn.visible = false;
feel_mc.video_btn.visible = false;
//Custom Eases
CustomEase.create("myCustomEase", [{s:0,cp:1.14999,e:1.4},{s:1.4,cp:1.65,e:1}]);
CustomEase.create("myCustomEase2",[{s:0,cp:0.97,e:1.22},{s:1.22,cp:1.4 7,e:1}]);
var timeline:TimelineLite = new TimelineLite({onComplete:showBreathe});
addChild(removeChild(better_mc));
TweenLite.to(better_mc,2,{alpha:1, y:186.6,ease:Bounce.easeOut});
timeline.appendMultiple([
TweenLite.to(breathe_mc, 1, {alpha:1,y:117,ease:CustomEase.byName("myCustomEase2")}),
TweenLite.to(live_mc, 1, {alpha:1,y:117, y:37, ease:CustomEase.byName("myCustomEase2")}),
TweenLite.to(sleep_mc, 1, {alpha:1,y:77, ease:CustomEase.byName("myCustomEase2")}),
TweenLite.to(feel_mc, 1, {alpha:1,y:77, ease:CustomEase.byName("myCustomEase2")})],1,TweenAlign.START, .2);
function showBreathe():void
{
breathe_mc.learn_btn.visible = true;
breathe_mc.video_btn.visible = true;
TweenLite.to(breathe_mc.learn_btn, .5, {alpha:1});
TweenLite.to(breathe_mc.video_btn, .5, {alpha:1});
TweenLite.to(breathe_mc, 1, {y:77, ease:CustomEase.byName("myCustomEase")});
//Show Text
TweenLite.to(breathe_txt_mc, 1,{alpha:1});
}
//Event Listeners
breathe_mc.addEventListener(MouseEvent.MOUSE_OVER, breatheOpen);
live_mc.addEventListener(MouseEvent.MOUSE_OVER, liveOpen);
sleep_mc.addEventListener(MouseEvent.MOUSE_OVER, sleepOpen);
feel_mc.addEventListener(MouseEvent.MOUSE_OVER, feelOpen);
//Event Listeners for Playing Video
breathe_mc.video_btn.addEventListener(MouseEvent.MOUSE_DOWN, breathe_play_video);
live_mc.video_btn.addEventListener(MouseEvent.MOUSE_DOWN, live_play_video);
sleep_mc.video_btn.addEventListener(MouseEvent.MOUSE_DOWN, sleep_play_video);
feel_mc.video_btn.addEventListener(MouseEvent.MOUSE_DOWN, feel_play_video);
// Event Listener for Close Video
close_btn.addEventListener(MouseEvent.MOUSE_DOWN, closeVideo);
//Functions for VIDEO and LEARN MORE buttons
function breathe_play_video(event:MouseEvent):void {
Video_Breathe.load();
this.addChild(Video_Breathe.content);
}
function live_play_video(event:MouseEvent):void {
Video_Live.load();
this.addChild(Video_Live.content);
}
function sleep_play_video(event:MouseEvent):void {
Video_Sleep.load();
this.addChild(Video_Sleep.content);
}
function feel_play_video(event:MouseEvent):void {
Video_Feel.load();
addChild(Video_Feel.content);
}
function closeVideo(event:MouseEvent):void {
Video_Breathe.unload();
Video_Sleep.unload();
Video_Feel.unload();
Video_Live.unload();
removeChild(close_btn);
removeChild(learn_more_btn);
removeChild(replay_btn);
}
// Last Breathe Buttons Added to Stage
function donePlaying_breathe(e:Event):void {
addChild(close_btn);
addChild(learn_more_btn);
addChild(replay_btn)
close_btn.x = 313;
close_btn.y = 183;
learn_more_btn.x = 434;
learn_more_btn.y = 183;
replay_btn.x = 554;
replay_btn.y = 183;
}
// Last Live Buttons
function donePlaying_live(e:Event):void {
addChild(close_btn);
addChild(learn_more_btn);
addChild(replay_btn)
close_btn.x = 43;
close_btn.y = 183;
learn_more_btn.x = 164;
learn_more_btn.y = 183;
replay_btn.x = 284;
replay_btn.y = 183;
}
// Last Sleep Buttons
function donePlaying_sleep(e:Event):void {
addChild(close_btn);
addChild(learn_more_btn);
addChild(replay_btn)
close_btn.x = 43;
close_btn.y = 183;
learn_more_btn.x = 164;
learn_more_btn.y = 183;
replay_btn.x = 284;
replay_btn.y = 183;
}
//Last Feel Buttons
function donePlaying_feel(e:Event):void {
addChild(close_btn);
addChild(learn_more_btn);
addChild(replay_btn)
close_btn.x = 83;
close_btn.y = 183;
learn_more_btn.x = 204;
learn_more_btn.y = 183;
replay_btn.x = 324;
replay_btn.y = 183;
}
// Functions Breathe
function breatheOpen(event:MouseEvent):void
{
TweenLite.to(breathe_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(breathe_mc.learn_btn, .5, {alpha:1});
TweenLite.to(breathe_mc.video_btn, .5, {alpha:1});
//Close Live
TweenLite.to(live_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(live_mc.learn_btn, .5, {alpha:0});
TweenLite.to(live_mc.video_btn, .5, {alpha:0});
//Close Sleep
TweenLite.to(sleep_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(sleep_mc.learn_btn, .5, {alpha:0});
TweenLite.to(sleep_mc.video_btn, .5, {alpha:0});
//Close Feel
TweenLite.to(feel_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(feel_mc.learn_btn, .5, {alpha:0});
TweenLite.to(feel_mc.video_btn, .5, {alpha:0});
//Show Pic
TweenLite.to(pic_breathe_mc, .5, {alpha:1});
//Hide Other Pics
TweenLite.to(pic_live_mc, .5, {alpha:0});
TweenLite.to(pic_sleep_mc, .5, {alpha:0});
TweenLite.to(pic_feel_mc, .5, {alpha:0});
//Show Text
TweenLite.to(breathe_txt_mc, 1,{alpha:1});
//Hide Other Text
TweenLite.to(live_txt_mc, 1,{alpha:0});
TweenLite.to(sleep_txt_mc, 1,{alpha:0});
TweenLite.to(feel_txt_mc, 1,{alpha:0});
}
// Functions live
function liveOpen(event:MouseEvent):void
{
TweenLite.to(live_mc, 1, {y:77, ease:Elastic.easeOut});
live_mc.learn_btn.visible = true;
live_mc.video_btn.visible = true;
TweenLite.to(live_mc.learn_btn, .5, {alpha:1});
TweenLite.to(live_mc.video_btn, .5, {alpha:1});
//Close Breathe
TweenLite.to(breathe_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(breathe_mc.learn_btn, .5, {alpha:0});
TweenLite.to(breathe_mc.video_btn, .5, {alpha:0});
//Close Sleep
TweenLite.to(sleep_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(sleep_mc.learn_btn, .5, {alpha:0});
TweenLite.to(sleep_mc.video_btn, .5, {alpha:0});
//Close Feel
TweenLite.to(feel_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(feel_mc.learn_btn, .5, {alpha:0});
TweenLite.to(feel_mc.video_btn, .5, {alpha:0});
//Show Pic
TweenLite.to(pic_live_mc, .5, {alpha:1});
//Hide Other Pics
TweenLite.to(pic_sleep_mc, .5, {alpha:0});
TweenLite.to(pic_feel_mc, .5, {alpha:0});
//Show Text
TweenLite.to(live_txt_mc, 1,{alpha:1});
//Hide Other Text
TweenLite.to(breathe_txt_mc, 1,{alpha:0});
TweenLite.to(sleep_txt_mc, 1,{alpha:0});
TweenLite.to(feel_txt_mc, 1,{alpha:0});
}
// Functions sleep
function sleepOpen(event:MouseEvent):void
{
TweenLite.to(sleep_mc, 1, {y:37, ease:Elastic.easeOut});
sleep_mc.learn_btn.visible = true;
sleep_mc.video_btn.visible = true;
TweenLite.to(sleep_mc.learn_btn, .5, {alpha:1});
TweenLite.to(sleep_mc.video_btn, .5, {alpha:1});
//Close Breathe
TweenLite.to(breathe_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(breathe_mc.learn_btn, .5, {alpha:0});
TweenLite.to(breathe_mc.video_btn, .5, {alpha:0});
//Close Live
TweenLite.to(live_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(live_mc.learn_btn, .5, {alpha:0});
TweenLite.to(live_mc.video_btn, .5, {alpha:0});
//Close Feel
TweenLite.to(feel_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(feel_mc.learn_btn, .5, {alpha:0});
TweenLite.to(feel_mc.video_btn, .5, {alpha:0});
//Show Pic
TweenLite.to(pic_sleep_mc, .5, {alpha:1});
//Hide Other Pics
TweenLite.to(pic_feel_mc, .5, {alpha:0});
//Show Text
TweenLite.to(sleep_txt_mc, 1,{alpha:1});
//Hide Other Text
TweenLite.to(live_txt_mc, 1,{alpha:0});
TweenLite.to(breathe_txt_mc, 1,{alpha:0});
TweenLite.to(feel_txt_mc, 1,{alpha:0});
}
// Functions feel
function feelOpen(event:MouseEvent):void
{
TweenLite.to(feel_mc, 1, {y:37, ease:Elastic.easeOut});
feel_mc.learn_btn.visible = true;
feel_mc.video_btn.visible = true;
TweenLite.to(feel_mc.learn_btn, .5, {alpha:1});
TweenLite.to(feel_mc.video_btn, .5, {alpha:1});
//Close Breathe
TweenLite.to(breathe_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(breathe_mc.learn_btn, .5, {alpha:0});
TweenLite.to(breathe_mc.video_btn, .5, {alpha:0});
//Close Live
TweenLite.to(live_mc, 1, {y:117, ease:Elastic.easeOut});
TweenLite.to(live_mc.learn_btn, .5, {alpha:0});
TweenLite.to(live_mc.video_btn, .5, {alpha:0});
//Close Sleep
TweenLite.to(sleep_mc, 1, {y:77, ease:Elastic.easeOut});
TweenLite.to(sleep_mc.learn_btn, .5, {alpha:0});
TweenLite.to(sleep_mc.video_btn, .5, {alpha:0});
//Show Pic
TweenLite.to(pic_feel_mc, .5, {alpha:1});
//Show Text
TweenLite.to(feel_txt_mc, 1,{alpha:1});
//Hide Other Text
TweenLite.to(live_txt_mc, 1,{alpha:0});
TweenLite.to(sleep_txt_mc, 1,{alpha:0});
TweenLite.to(breathe_txt_mc, 1,{alpha:0});
}