#sample_2

	\pc\fl【応用コマンドサンプル】

	next sample_2a

//---------------------------------------------------------------
#sample_2a

	scene
	%init
	#1 ＝ 0
	wipedef 50
	wait

	fselect
	1 spl2_plus	モーションの合成
	2 spl2_m2 非同期動作 
	3 spl2_mc 継続動作
	4 spl2_delay モーションの遅延
	5 sample_2b	次の選択肢→
	0 00_sample_select2 ＜戻る＞

#sample_2b

	scene
	%init
	#1 ＝ 0
	wipedef 50
	wait

	fselect
	1 spl2_ptc パーティクル
	2 spl2_skip キー入力受付ＯＮ／ＯＦＦ
	3 spl2_frame メッセージウィンドウの表示／非表示
	4 spl2_auto 強制オートモード
	5 sample_2a	←前の選択肢
	0 00_sample_select2 ＜戻る＞

//---------------------------------------------------------------
#spl2_plus

	\fl【モーションの合成】

	「ｍｏｖｅ」や「ａｒｃ」などのモーション系の命令は、「ｗａｉｔ」を挟まない限り同時に実行されます。

	その場合、それぞれの命令が合成された動きとなります。

	cg 0 BQ01,1,1
	rdraw

【例】	「ｍｏｖｅ」と「ａｒｃ」を同時に指定します。

	pl 0 move 80 600 200
	pl 0 arc 80 0 180 0 100
	wait

	＜動作完了＞

	%def
	rwipe wipe21
	wait

	\fl【時間を指定する合成】

	時間指定の入った「ｗａｉｔ」を入れることで、動作の途中で別な動作を加えることができます。

	cg 0 BQ01,1,1
	rdraw

【例】	「ｍｏｖｅ」開始後、３０フレーム後に「ａｒｃ」の動作を開始します。その間も「ｍｏｖｅ」は有効のままです。

	pl 0 move 120 800
	wait 30
	pl 0 arc 60 0 360 0 40
	wait

	＜動作完了＞

	%def
	rwipe wipe21
	wait

	next sample_2a

//---------------------------------------------------------------
#spl2_m2

	\fl【ｍ２】…非同期コマンド

	通常のモーションコマンドは、クリックなどで次のメッセージを表示すると動きがスキップされてしまいます。

	コマンド名の最初に「ｍ２」がつく非同期コマンドを使用すると、クリックで飛ばされることなく動作を完了します。

	コマンドによっては非同期版が用意されていないものがあるので、リファレンスで確認してください。

	pl 0 pos 100
	cg 0 BQ01,1,1
	rdraw

【例】	「ｍ２ｍｏｖｅ」で、クリックしてもスキップされずにＸ：７００まで移動します。

	pl 0 m2move 180 700

	画面右に向かって動いています。クリックしても動作が止まりません。

	これによって、クリックと非同期でモーションを動作させることができます。

	cg 0
	rdraw
	wait

	ｍ２系のモーションも他のモーションと組み合わせて使うことができます。

	pl 0 pos 100
	cg 0 BQ01,1,1
	rdraw

	メッセージや他のモーションコマンドと組み合わせると、通常のコマンドでは表現できなかった動きをさせることもできます。

【例】	クリックするとタマちゃんが飛び立ちます。

	pl 0 m2move 300 @+1200 @

	好きなところでクリック！

	pl 0 move 30 @ @-200 
	pl 0 fade 30 255 0
	wait
	cg 0
	wait
	pl 0 stop

	この時、クリックのタイミングによっては想定外の動きが出てしまうことがあるので注意してください。

	next sample_2a

//---------------------------------------------------------------
#spl2_mc

	\fl【ｍｃ】…継続コマンド

	同じ動作を継続的に繰り返す場合、コマンド名の最初に「ｍｃ」がつく継続コマンドを使用します。

	コマンドによっては継続版が用意されていないものがあるので、リファレンスで確認してください。

	pl 0
	wait
	cg 0 BQ01,1,1
	rdraw

【例】	タマちゃんを継続扇形移動させます。

	pl 0 mcarc 30 90 450 30 0 0
	wait

	継続モーションは「ｓｔｏｐ」コマンドで停止します。

	pl 0 stop

	動きを停止しました。

	%def
	rwipe wipe21
	wait

	next sample_2a

//---------------------------------------------------------------
#spl2_delay

	\fl【ｄｅｌａｙ】…モーションの遅延

	タイミングのずれた動作をさせたい場合など、[「ｗａｉｔ」]でなく「ｄｅｌａｙ」を使う方法もあります。

	「ｄｅｌａｙ」を使うと、クリックに影響することなく動作を遅らせることができます。

	cg 0 BQ01,1,1 200
	cg 1 bq01,2,2 600 @ 1
	rdraw

【例】	緑タマと赤タマに同時にモーションを指定しますが、赤タマの動作を３０フレーム遅らせます。

	pl 1 delay 30
	pl [0,1] arc 60 180 360 0 30
	wait

	「ｄｅｌａｙ」は、再度「ｄｅｌａｙ」を指定するか、対象バンクの初期化が行われるまで効果が継続します。

	%def
	rwipe wipe21
	wait

	next sample_2a

//---------------------------------------------------------------
#spl2_ptc

	\fl【ｐａｒｔｉｃｌｅ】…パーティクル

	パーティクルを使用するには、パーティクルスクリプトとそれに使用する画像が必要です。

【例】	雪の画像「ｆｇ_ｓｎｏｗ」をパーティクルスクリプト「ｓｎｏｗ」で降らせます。

	particle 0 snow fg_snow 100 5000 -2500 500 5 10 1 5 20 40 5 2 300 300

	パーティクルを開始しました。

//	256×256以上の大きさの画像を使うことはできません。

	画像と同じくフェードアウトできます。

	particle 0 fade 80 255 0
	wait 80

	これも画像と同じく透明になっているだけなので、専用コマンドで停止する必要があります。

	particle 0 stop
	wait

	next sample_2b

//---------------------------------------------------------------
#spl2_skip

	\fl【ｋｅｙｓｋｉｐ】…キー入力受付ＯＮ／[ＯＦＦ]

	モーション中、キー入力による演出スキップを[ＯＮ／ＯＦＦ]する命令です。

	pl 0 pos 100
	cg 0 BQ01,1,1
	rdraw

【例】	キー入力ＯＦＦにします。モーション中にクリックをしてみてください。

	keyskip off
	wait 1

	pl 0 move 180 @+1200 @
	wait

	keyskip on
	wait 1

	＜動作完了＞

	%def
	wait

	next sample_2b

//---------------------------------------------------------------
#spl2_frame

	\fl【ｆｒａｍｅ】…メッセージウィンドウの[表示／]非表示

	メッセージウィンドウを任意で非表示（表示）状態にすることができます。

	テキスト表示タイミング、もしくはキー入力が行われた時点で強制的に「表示」となります。

【例】	画像表示からテキストが表示されるまでを非表示にします。

	frameoff fade 15
	wait
	bg 0 bg01a0
	rdraw 40
	wait
	wait 60
	cg 1 ba01,1,1,2,2,1
	rdraw
	wait
	frameon fade 15
	wait

	休み時間になり、彼女が教室に入ってきた。

	%def
	rwipe wipe21
	wait

	next sample_2b

//---------------------------------------------------------------
#spl2_auto

	\fl【ａｕｔｏ】…強制オートモード

	強制オートモードへの移行、解除を行います。オートのスピードもパラメータで指定できます。

	bg 0 bg11a
	rdraw 30

【例】	オートモードに移行します。

	auto on
	cg 1 bj01,1,1,5,1,1,1 @ @ 1
	rdraw

	強制オートモードに移行しました。

	オートモードが解除されるまで、キー入力を受け付けなくなります。\@

	cg 1
	rdraw
	wait
	cg 1 bj01l,1,1,2,1,1,1 @ @ 1
	rdraw 30
	\n

	cg 1 bj01l,1,1,1,5,1,a @ @ 1
	rdraw

	オートモードです・・・

	cg 1
	rdraw 30
	wait
	auto off

	強制オートモードを解除しました。


	%def
	rwipe wipe21
	wait
	%init

	next sample_2b
