トップページへ戻る


選択肢の配置場所をマクロ化する
 
「ねーねーねー」

「何だ?」

「下のスクリプトと画面を見てほしーんだもん」

「どれどれ?」

(前略)

;-----------------------------------------------------------------
*chapter0_scene12|序章 気づかい……?
[er]\
……運転を続けるぼくを気づかってくれているのか?[l]

だとしたら、やっぱり[emb exp="f.name2"]は優しいなぁ。[l]

こうやって時々優しくなる[emb exp="f.name2"]が好きなんだよな。[l]

いつもこうだったらもっといいのに……[l]

「何をぶつぶつ言ってるのよ、[emb exp="f.name1"][l]

「な、何でもない」[l]

「残念だけど聞こえたわよ」[l]

[font size=42]はうあ![resetfont][l]

「いつもこうだったらいいのに、ってどういう意味よ。
 返事によっては許さないからね」[l]

「い、いやその……」[p]
[er]\
「言いなさいよ。言わないとサイドブレーキ引くわよ」

[delay speed=nowait]\
[link target=*chapter0_scene14]A.天気がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene15]B.車の調子がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene16]C.胃の調子がいつもこうだったらいいのに[endlink]\
[delay speed=user]\
[s]
;---------------------------------------------------

(後略)

「画像は(前略)で、もーすでに読み込んでんだけど、これを実行すんとこーなんの」

「これが、何だ?」

「すきゃんてぃがいーたいのわ、選択肢の場所だもん。こーゆーばーい、下にあるほーがかっこいーと思うんだなーこれが」

「それじゃ、[locate] タグでY座標(縦位置)を決めればいいだろ?」

「実わ、それもやってみたんだなー」

(前略)

「言いなさいよ。言わないとサイドブレーキ引くわよ」

[delay speed=nowait]\
[locate y=365]\
[link target=*chapter0_scene14]A.天気がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene15]B.車の調子がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene16]C.胃の調子がいつもこうだったらいいのに[endlink]\
[delay speed=user]\
[s]
;---------------------------------------------------

(後略)

「何だ。できてるじゃんか」

「んでもねー、これをコピーペーストして他のシーンにも使うと、何か変なんだもん」

(前略)

「ねえ[emb exp="f.name1"]、どうしたの?」[l]

「電波が入らない……」[l]

「ほんと?」[l]

「う、嘘ついてどうなるんだよ!」[l]

思わず大声になってしまったぼくに、
[emb exp="f.name2"]は妙な顔になった。[l]

「ねえ[emb exp="f.name1"]、何をそんなに怒ってるの?
 あたし、何か変なこと言った?」

[delay speed=nowait]\
[locate y=365]\
[link target=*
chapter0_scene29]A.「ああ、言ったね」[endlink]
[link target=*
chapter0_scene28]B.「ごめん」[endlink]\
[delay speed=user]\

[s]
;---------------------------------------------------

(後略)

「どこが変だ?」

「よーく見てよねもー! 選択肢が浮き上がっちゃってんぢゃんよもー!」

「あ、なるほど。一つ前の画面は選択肢が3つだったから画面の下にレイアウトされたけど、その位置をそのまま使うと、選択肢が2つの場合は確かにおかしいことになるな」

「でしょー!?」

「でも、それは仕方がないことだぞ。[locate] タグは左上(縦書きの場合は右上)の位置を指定するタグなんだから」

「んでも、かっこ悪いもん! んきゃー!」

「そういう場合は [locate] タグで指定するY座標に、文字のサイズと行間サイズを足してやればいいよ。いくつだったか覚えていないなら、Config.tjs を再確認しよう」

「文字の大きさは20で、行と行の間は0だって」

「それじゃ、20足せばぴったりだ」

(少尉注:この値は Config.tjs の設定によって変化します)

「んー」

(前略)

「ねえ[emb exp="f.name1"]、どうしたの?」[l]

「電波が入らない……」[l]

「ほんと?」[l]

「う、嘘ついてどうなるんだよ!」[l]

思わず大声になってしまったぼくに、
[emb exp="f.name2"]は妙な顔になった。[l]

「ねえ[emb exp="f.name1"]、何をそんなに怒ってるの?
 あたし、何か変なこと言った?」

[delay speed=nowait]\
[locate y=385]\
[link target=*chapter0_scene29]A.「ああ、言ったね」[endlink]
[link target=*chapter0_scene28]B.「ごめん」[endlink]\
[delay speed=user]\
[s]
;---------------------------------------------------

(後略)

「ほんとだー、ぴったり下にくっついたねー」

「このような短い選択肢ではなく、KAGでは複数行にまたがった長い選択肢も使うことができるけど、下端合わせの方法は共通だ。文字サイズと行間サイズを最初に自分で把握しておけば、[locate] タグで自在に位置合わせをすることができるってわけだ」

「んぢゃー、最初のうちに、選択肢が2つの場合と3つの場合の数字を計算しておけば楽だねー」

「そうだな。4つ以上の選択肢を使う場合も、同じように最初に雛型を作っておけばいい。マクロにするというのも一つの手だな」

「あ、そーか。それぢゃー、ちょっとやってみんもん」

[macro name=select2]\
[delay speed=nowait]\
[locate y=385]\
[endmacro]\
;-----------------------------------------------------------------
[macro name=select3]\
[delay speed=nowait]\
[locate y=365]\
[endmacro]\
;-----------------------------------------------------------------
[macro name=endselect]\
[delay speed=user]\
[endmacro]\

「こんなんでどーかなー?」

「いいんじゃないか?」

「それぢゃー、スクリプトに入れてみんもん!」

[macro name=select2]\
[delay speed=nowait]\
[locate y=385]\
[endmacro]\
;-----------------------------------------------------------------
[macro name=select3]\
[delay speed=nowait]\
[locate y=365]\
[endmacro]\
;-----------------------------------------------------------------
[macro name=endselect]\
[delay speed=user]\
[endmacro]\
;-----------------------------------------------------------------

(中略)

「言いなさいよ。言わないとサイドブレーキ引くわよ」

[select3]\
[link target=*chapter0_scene14]A.天気がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene15]B.車の調子がいつもこうだったらいいのに[endlink]
[link target=*chapter0_scene16]C.胃の調子がいつもこうだったらいいのに[endlink]\
[endselect]\
[s]
;-----------------------------------------------------------------

(中略)

「それじゃ、教会まで行って電話を借りてみよう。[l]
 ところで―――」

[select2]\
[link target=*chapter0_scene22]A.「ここで待っているかい?」[endlink]
[link target=*chapter0_scene23]B.「一緒に行くかい?」[endlink]\
[endselect]\
[s]
;-----------------------------------------------------------------

(後略)

「うん。すごく見やすくなったし、いいんじゃないか?」

「んきゃー! マクロってちょー便利だもんねー!」

「その調子でいこう」

練習日記 5日目 次へ


トップページへ戻る