2008/06/06

CGFMのFlash版サイトリニューアルの時にFlash制作で使って便利だったライブラリの紹介
2008/06/08 ブログにてスライド公開
外部SWFの連続読込みもこんなに簡単
//-----[外部SWFの配列]
var SwfAry:Array = Array("opening","Home","Lab","Work","About","Inquiry","Present");
/*
■[2] 設定:各エリアの外部SWF読込*/
//-----[ロードオブジェクトを追加]
var loadSwfGroup:LoadGroup = new LoadGroup();
for (var i:Number = 0; i < SwfAry.length; i++) {
//読込む順番に指定していく
loadSwfGroup.addLoad(new MediaLoad(_root[SwfAry[i]+"_mc"], SwfAry[i]+".swf"));
}
//-----[オブザーバーの登録]
loadSwfGroup.addEventObserver(this,LoadGroup.EVENT_LOAD_PERCENT,"onSwfLoadPercent");
loadSwfGroup.addEventObserver(this,LoadGroup.EVENT_LOAD_ERROR,"onSwfLoadError");
loadSwfGroup.addEventObserver(this,LoadGroup.EVENT_LOAD_COMPLETE,"onSwfLoadComplete");
loadSwfGroup.start(); //読込み開始
//-----[ロードグループイベントハンドラー]
function onSwfLoadPercent(sender:MediaLoad, progress:Percent):Void {
LoadSt = "SWF読込中";
//SWF読込み率を全体の95%とする(残りはRSS等)
LoadPer = Math.floor(progress.getPercentage()*95/100);
}
//読込エラー時の処理
function onSwfLoadError(sender:LoadGroup, failedLoad:BytesLoadInterface):Void {
loadSwfGroup.removeLoad(failedLoad);
loadSwfGroup.start();
}
//読込完了後に実行
function onSwfLoadComplete():Void {
LoadSt = "SWF読込 完了";
nextFunc(); //次の処理を開始
}
こんな感じに書くだけでアニメーションが実行できます。
動きの指定の参考サイト。
ソース、長くてすいません。下にスクロールしてくださいm(_ _)m
// Tweener(ライブラリをダウンロードして解凍後にflaファイル直下に置いてのパス指定)
import caurina.transitions.Tweener;
import caurina.transitions.properties.FilterShortcuts;
//○Tweener設定
//timeの倍率: 1(デフォルト)=> time:1->1秒, 10=>time:1->10秒
Tweener.setTimeScale(1);
//ボタンにセット
_root.btn_mc.onRelease = function() {
TweenStart();
}
//初期値メモ
var xDef =_root.nasu_mc._x;
/*--------------------------------------------
関数:エリア移動
--------------------------------------------*/
function TweenStart(){
//初期位置リセット
_root.nasu_mc._x =xDef;
_root.tomato_mc._x =xDef;
//ナス:移動半分までブラーしながら移動
Tweener.addTween(
_root.nasu_mc, {
onStart:function(){ trace("-- 移動開始") },
onComplete:function(){ trace("-- 半分移動終了") },
transition:"easeInCubic",
_x:nasu_mc._x+250, _y:nasu_mc._y,
_Blur_blurX:50, _Blur_blurY:0, _Blur_quality:3,
time:2, delay:0
}
);
//ナス:半分以降
Tweener.addTween(
_root.nasu_mc, {
onComplete:function(){ trace("-- 全部移動終了") },
transition:"easeOutQuint",
_x:nasu_mc._x+500, _y:nasu_mc._y,
_Blur_blurX:0, _Blur_blurY:0, _Blur_quality:3,
time:2, delay:2
}
);
//トマト
Tweener.addTween(
_root.tomato_mc, {
transition:"easeInOutBounce",
_x:tomato_mc._x+500,
time:3, delay:0
}
);
}