とある仕事でflvを使った仕事をさせていただいたのですが、
いくぶんflash自体そこまで詳しくないのでflvの終わり判定で
こまった。

困ったらヘルプということでflashのヘルプをみてみたら・・・

普通にのってるじゃないか・・。
NetStreamクラスのインスタンスにNetStatsuEvent.NET_STATUSイベントを登録。
これでvideoが始まったり終わったり止められたりしたときにイベントを発動。

theNetStream.addEventListener(NetStatusEvent.NET_STATUS, statusHandler);


function statusHandler(event:NetStatusEvent):void {
	trace(event.info.code); //info.codeで情報を監視する
}

これを行うとvideo に関する情報が色々とでてくるので
videoの終わる時に出てくる判定が“NetStream.Play.Stop”だそうです。
そこでこれをswitch文で拾ってやってれば大丈夫です。
あ、switch文じゃなくても普通にif文で拾ってあげてもいいのですが
ヘルプにのっていたのと、videoが始まったときにもイベントを拾えるので。。


function statusHandler(event:NetStatusEvent):void
	{
		switch (event.info.code)
		{
			case "NetStream.Play.Start":
				trace("Start [" + theNetStream.time.toFixed(3) + " seconds]");
				break;
			case "NetStream.Play.Stop":
				trace("videoが終わったぁ〜〜よ!!");

				break;
		}
}

Categories: Japanese, flash, テクノロジー — Tags: — @ 3:05 pm
September 11, 2008

TweenMaxがドドドドドン

Tweenerを今までいろいろと使わせていただいたのだけれども、
どうにも動きがぎこちなかったり大量のオブジェクトを動かすと
ガタガタしてしまうのでTweenMaxを試しに使ってみた。

おお、Tweenerのギコチなさがなくなった。。
TweenMax良いのでは?

ということで基本的な使い方。
GreenSock

からダウンロード、解凍したgsファイルをclassフォルダにいれてください。

import gs.*;

で読み込み。

例:
TweenMax.to(対象のオブジェクト, スピード, {プロパティー}); //基本的にガーベッジコレクトの対象になります。

もしtarget_mcのxの値を1秒間に10pix動かしながらブラーをかけるとしたら

TweenMax.to(target_mc, 1, {x:10, blurFilter{blurX:5, blurY:5} });

検証はしてませんがこれで動きます。
うごかなかったらなにかスペル間違えてます。。

さらに、モーション1が終わったらモーション2という動作ですが、
TweenerだとonCompleteでおこなわなければいけなかったんですが、
どうやらこれだと少しだけ時差ができるとのこと。

これをTweenMaxだと時差なく、さらにfuseKitのように動作するとのこと(fuseKitあまり使ったことないので詳しくないのですが。。)例えば
一つの対象オブジェクトに連続で動作させたい場合TweenMax.sequenceを使う。

例(xに200移動した後にアルファを0にする)
TweenMax.sequence(target_mc, [{time:1, x:"200"}, {time:1, autoAlpha:0}]);

複数のオブジェクトを連続で動作させたい場合TweenMax.multiSequenceを使う。


TweenMax.multiSequence([{target:target1_mc, time:1, x:"200"}, {target:target2_mc, time:2, autoAlpha:0}]);

さらにさらに、
すべてのmcの動作をいっぺんにおこないたい場合(動作が同じ場合)TweenMax.allToを使う。

TweenMax.allTo([mc1, mc2, mc3, mc4, mc5], 1, {y:”100″, alpha:0, delayIncrement:0.2});

とにかくTweenMax使いがってもいいし、軽いですよ。まだまだいろいろなプロパティーや
使い方があるのでのちのちここで書けたらいいな。ま、どうでもいいけどブログ読みずれぇ!!

Categories: Japanese, flash, テクノロジー — @ 11:02 am

company information

CyberMedia k.k.
Tech Hiroo Bldg 1F
Hiroo 1-10-5
Shibuya-ku, Tokyo
150-0012
tel +81(0)3-5423-5333
fax +81(0)3-5423-6654
email CyberMedia

Categories

cyber bloggers