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で質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- JavaScript コードレビューをお願いします。 1 2022/07/16 05:38
- JavaScript Google reCAPTCHAについて 1 2023/02/22 14:37
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ゲオでカードを作るのは何歳か...
-
フラッシュゲームアーカイブ2
-
レジリエンス 変換キーが作動し...
-
この曲はなんでしょう?
-
arduino プログラムについて
-
FLASHの再生はできないのでしょ...
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
VBAのコンボボックスの年月表示...
-
Adobe Flash Player
-
Windows10重い
-
uwscでExcelに自動記入
-
パソコンのリカバリーについて
-
iPhoneです。 Adobeフラッシュ...
-
Adobe(マクロメディア)のFLAS...
-
ヘッダーデザインをするさい形...
-
更新されて起きた問題
-
googlechromeでadobeflashplayer
-
Flash playerを有効にするには
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
WEBブラウザの重複起動の禁止
-
Flashでのゲーム用アナログ時計...
-
ムービーの早送りと巻き戻しが...
-
ボタンで移動する前に、特定のM...
-
Error#1009 時計のシーン移動ボ...
-
Flash Professional CS5
-
ループ再生のflashをタイムライ...
-
画像がランダムに表示されるFLA...
-
ActionScriptの基本的な部分で...
-
キーボードを押した時のムービ...
-
【ActionScript】命令文を再実...
-
FLASH lite1.1での質問というか...
-
画像をランダムに表示させたい
-
深い階層でのムービークリップ...
-
Flash lite1.0の計算クイズ
-
プルダウンメニューとフェード...
-
loadMovieで読み込んだswf
-
外部画像を読み込み、ボタンで...
-
Flashで右クリックメニューにつ...
-
フレーム内に移動したい
おすすめ情報