AS3で下記のスクリプトを書いています。
画像をぼかした状態で徐々に表示させ、ぼかしがなくなったら○秒見せて
ぼかしながら消していくという内容を想定しています。
ひとまず動くのですが、ぼかしながら消していく関数を実行する前に任意の
秒数(フレーム数?)停止させたいのですが、どうすればいいのでしょうか?
package
{
import flash.display.*;
import flash.events.*;
import flash.utils.*
import fl.events.*;
import flash.filters.*;
public class Main extends MovieClip
{
public var logoObj1:MovieClip = new logo1();
public var blur:BlurFilter;
public var i:uint = 70;
public var ii:uint = 0;
public function Main():void
{
opening();
}
private function opening(e:Event = null):void
{
blur = new BlurFilter();
addEventListener(Event.ENTER_FRAME, BlurMinus);
}
private function BlurMinus(e:Event):void
{
blur.blurX = i;
blur.blurY = i;
logoObj1.filters = [blur];
logoObj1.x = w / 2;
logoObj1.y = h / 2;
addChild(logoObj1);
if ( i == 0 ) {
// ここで任意の秒数を経過したらBlurPlasを実行させたい!
addEventListener(Event.ENTER_FRAME, BlurPlas);
}
i = i - 2;
}
private function BlurPlas(e:Event):void
{
blur.blurX = ii;
blur.blurY = ii;
logoObj1.filters = [blur];
logoObj1.alpha += (0 - logoObj1.alpha) / 50;
if ( logoObj1.alpha == 0 ) {
removeEventListener(Event.ENTER_FRAME, BlurMinus);
removeEventListener(Event.ENTER_FRAME, BlurPlas);
}
ii = ii + 2;
}
}
}
No.2ベストアンサー
- 回答日時:
「実行を○秒停止する」というニュアンスで考えるのではなくて
「実行を○秒待つ」または「実行を○秒遅延させる」と考えれば良いでしょう。
この遅延には Timer クラスを使えば良いと思います。
その場合の修正案です↓。
//---------------------------------------------
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
//↓削除
//import fl.events.*;
import flash.filters.*;
//↓Timer クラスと TimerEvent クラスのインポート
import flash.utils.Timer;
import flash.events.TimerEvent;
public class Main extends MovieClip {
public var logoObj1:MovieClip = new logo1();
public var blur:BlurFilter;
public var i:uint = 70;
public var ii:uint = 0;
//↓勝手に適当な付け加え
public var w:Number = stage.stageWidth;
public var h:Number = stage.stageHeight;
//Timer インスタンス tm の宣言
public var tm:Timer;
//↓待つミリ秒数の設定(1秒=1000ミリ秒)
public var wait_ms:uint = 5000;
public function Main():void {
opening();
}
private function opening(e:Event=null):void {
blur = new BlurFilter ;
addEventListener(Event.ENTER_FRAME,BlurMinus);
//↓Timer インスタンス tm を作成
tm = new Timer(wait_ms,1);
//↓指定ミリ秒後に setBlurPlas を実行する設定にする
tm.addEventListener(TimerEvent.TIMER, setBlurPlas);
}
private function BlurMinus(e:Event):void {
blur.blurX = i;
blur.blurY = i;
logoObj1.filters = [blur];
logoObj1.x = w / 2;
logoObj1.y = h / 2;
addChild(logoObj1);
if (i == 0) {
//↓BlurMinus のイベントリスナーを削除
removeEventListener(Event.ENTER_FRAME,BlurMinus);
//↓タイマースタート
tm.start();
}
i = i - 2;
}
//↓setBlurPlas の定義
private function setBlurPlas(e:TimerEvent):void {
//↓毎フレームBlurPlasを実行
addEventListener(Event.ENTER_FRAME,BlurPlas);
}
private function BlurPlas(e:Event):void {
blur.blurX = ii;
blur.blurY = ii;
logoObj1.filters = [blur];
logoObj1.alpha += 0 - logoObj1.alpha / 50;
if (logoObj1.alpha==0) {
//↓削除
//removeEventListener(Event.ENTER_FRAME,BlurMinus);
removeEventListener(Event.ENTER_FRAME,BlurPlas);
}
ii=ii+2;
}
}
}
//---------------------------------------------
No.1
- 回答日時:
とか
http://www.oro.co.jp/cd/column/flash/actionscrip …
とか
を参考にするといいかも
この回答への補足
お返事ありがとうございます。
http://www.oro.co.jp/cd/column/flash/actionscrip …
は質問前に試したのですが、一度(1フレーム分)しか動作せず徐々に薄れて
いくという表現ができませんでした。
引き続き具体的な回答をお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
flashでjpg画像をloadmovieで読...
-
フレームアクションについて。
-
WEBブラウザの重複起動の禁止
-
suzuka rollOverで画像が徐々...
-
Flash4でloadMovieの完了を知る...
-
外部swf内でattachSoundしたサ...
-
phpで音を鳴らす
-
ActionScriptで画像と文字を表示
-
フレーム内のオプションボタン...
-
フレームでのResponse.Redirect
-
FLASH8 外部テキストファイル...
-
わっかが広がるような演出
-
Homepage Managerのフレームエ...
-
GetPrivateProfileString変値
-
レイヤーをどんどん加える?
-
ムービーの指定フレームでの停...
-
撮影速度は240fpsで再生スピー...
-
フレーム内に移動したい
-
HPを作りたい
-
FLASH LITE1.1 制限時間を任意...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FLASHのボタンでif文を使ってラ...
-
最後のフレームで数秒止めてル...
-
Flash オブジェクトの表示/非表示
-
WEBブラウザの重複起動の禁止
-
AS3.0で子MCから他の子MCの...
-
一定時間停止後フレーム移動
-
stopとgotoAndStopの違いについて
-
Error#1009 時計のシーン移動ボ...
-
Excel VBA SetFocus
-
flashのActionscriptでのムービ...
-
FLASH lite1.1での質問というか...
-
JavaScriptからsetVariable()で...
-
Math.ramdom()を特定回数繰り返す
-
ASだけで○秒停止する方法
-
FlashVarsでswfへ変数を渡し、...
-
ActionScriptで関数とは?
-
Flash Professional CS5
-
アクションスクリプトでのフレ...
-
Flash lite1.0で カウントダウン
-
二択のフレーム移動
おすすめ情報