トップページgamedev
1001コメント379KB

■吉里吉里/KAG/TJS雑談質問スレ■その18

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2009/06/06(土) 01:11:54ID:EztZkDNL
ノベルゲーム製作ツール吉里吉里/KAGのユーザーが雑談・質問をするスレです。
自作ゲームの進行状況や製作ツールについての話、TJS等の話題もどうぞ。
マルチポストはやめましょう。個人叩きも禁止です。

※スレで質問をするときは※
KAG/TJS/吉里吉里ドキュメント、スレの過去ログ、公式掲示板のログ、
FAQ、Google等で調べてからにしましょう。
努力の形跡が見られないとスルーされがちです。初心者?でも頑張れ!

前スレ:■吉里吉里/KAG/TJS雑談質問スレ■その17
http://pc11.2ch.net/test/read.cgi/gamedev/1234356309/


吉里吉里2/KAG3雑談質問スレ_過去ログ
ttp://www.geocities.jp/kirikiri_log/

吉里吉里ダウンロードページ
ttp://kikyou.info/tvp/

ダウンロードしたアーカイブに含まれる「KAG System リファレンス」は
初心者にとって最も頼もしい教科書です。何度も繰り返し読みましょう。
■タグリファレンス … KAGの機能が網羅的、辞書的に載っています。
大よその機能(KAGでどんなことが出来るか)は把握しておきましょう。
■Tips/その他 … 陥り易いミスやより高度な使い方への足掛かりになる
数々のTipsが記載されています。

必要に応じて>>3-5の公式掲示板や講座等を併用してください。
(併用に、紙媒体の参考本が欲しい人は、ダウンロードページにリストがあります)
0462名前は開発中のものです。2009/08/08(土) 17:12:06ID:g/+i2DJo
こんな感じで、どうよ?

;選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.選択肢の数 = 4"]
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4'"]
;2択の時の専用マクロ
[if exp="f.選択肢の数 <= 2"][select2 text1="&f.t1" text2="&f.t2" select1="&f.s1" select2="&f.s2" ][endif]
;3択の時の専用マクロ
[if exp="f.選択肢の数 == 3"][select3 text1="&f.t1" text2="&f.t2" text3="&f.t2" select1="&f.s1" select2="&f.s2" select3="&f.s3" ][endif]
;4択の時の専用マクロ
[if exp="f.選択肢の数 >= 4"][select4 text1="&f.t1" text2="&f.t2" text3="&f.t2" text4="&f.t4" select1="&f.s1" select2="&f.s2" select3="&f.s3" select4="&f.s4"][endif]
[s]


[select2]と[select3]と[select4]をまとめて
[select]内で、f.選択肢の数 を調べて、処理を分岐のほうがスマート
0463名前は開発中のものです。2009/08/08(土) 17:35:42ID:g/+i2DJo
2〜4択に対応版作ってみた


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;↓今回の選択肢の数
[if exp="f.好感度フラグ < 5"][eval exp="f.選択肢の数 = 3"][endif]
[if exp="f.好感度フラグ >= 5"][eval exp="f.選択肢の数 = 4"][endif]
;↓選択肢の直前で変数に必要なパラメータを代入
[eval exp="f.s1 = '*select1'"][eval exp="f.t1 = '本文1の文章をここに記述する'"]
[eval exp="f.s2 = '*select2'"][eval exp="f.t2 = '本文2の文章をここに記述する'"]
[eval exp="f.s3 = '*select3'"][eval exp="f.t3 = '本文3の文章をここに記述する'"]
[eval exp="f.s4 = '*select4'"][eval exp="f.t4 = '本文4の文章をここに記述する'"]
;↓のマクロで選択肢配置
[select]
[s]
0464名前は開発中のものです。2009/08/08(土) 17:37:33ID:g/+i2DJo

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;選択肢マクロ
[macro name="select"]
;今回使用するデータを集計
@eval exp="f.data = [[ f.t1 ,'first.ks', f.s1], [ f.t2, 'first.ks', f.s2], [ f.t3,'first.ks', f.s3], [ f.t4,'first.ks', f.s4]]"
;ランダム入れ替え
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;↑今回の選択範囲の内容を入れ替え
;↓以下適当な回数シャッフルを繰り返し
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
@eval exp="f.tmp1 = intrandom(0,f.選択肢の数-1),f.tmp2 = intrandom(0,f.選択肢の数-1),f.data[f.tmp1] <-> f.data[f.tmp2]"
;選択肢を表示する
1.[link target="&f.data[0][2]" storage="&f.data[0][1]"][emb exp="f.data[0][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 2"]2.[link target="&f.data[1][2]" storage="&f.data[1][1]"][emb exp="f.data[1][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 3"]3.[link target="&f.data[2][2]" storage="&f.data[2][1]"][emb exp="f.data[2][0]"][endlink][r] [endif]
[if exp="f.選択肢の数 >= 4"]4.[link target="&f.data[3][2]" storage="&f.data[3][1]"][emb exp="f.data[3][0]"][endlink][r] [endif]
[endmacro]
■ このスレッドは過去ログ倉庫に格納されています