アドベンチャーゲームで選択肢は欠かせませんね。
自分の選択した行動によって物語が分岐していくのは、ゲームの醍醐味です。
ティラノスクリプトではもちろん、分岐に対応しています。ただ、分岐するだけでなく複雑な条件分岐も可能です。
それでは早速、基本的な分岐のスクリプトを見ていきましょう。
選択肢を表示します[l][r][r]
[link target=*select1]【1】選択肢 その1[endlink][r]
[link target=*select2]【2】選択肢 その2[endlink][r]
[s]
*select1
[cm]
「選択肢1」がクリックされました[l]
@jump target=*common
*select2
[cm]
「選択肢2」がクリックされました[l]
@jump target=*common
*common
[cm]
共通ルートです
保存して、実行してみましょう。
[link target=*select1]【1】選択肢 その1[endlink][r]
[link target=*select2]【2】選択肢 その2[endlink][r]
[s]
*select1
[cm]
「選択肢1」がクリックされました[l]
@jump target=*common
ストーリーが長くなってくると、1つのシナリオファイルで記述していると、長くなりすぎて制作しにくくなってきますよね。
そこでシナリオファイルを複数に分ける方法を見ていきましょう。
先程のスクリプトを修正して、選択肢がクリックされた場合、別のスクリプトファイルに移動して戻ってくるというスクリプトを組んでみます
まず、プロジェクトフォルダの「scenario」フォルダに新しく
・scene1.ks
・scene2.ks
という2つのシナリオファイルを作成してください。
それぞれのファイルの内容ですが
scene1.ks
*select1
[cm]
「選択肢1」がクリックされました[l]
@jump storage=first.ks target=*common
*select2
[cm]
「選択肢2」がクリックされました[l]
@jump storage=first.ks target=*common
[link storage=scene1.ks target=*select1]【1】選択肢 その1[endlink][r]
[link storage=scene2.ks target=*select2]【2】選択肢 その2[endlink][r]
[s]
*common
[cm]
別ファイルから戻って来ました
続いて、選択肢に画像を表示してみたいと思います。
以下の2つの画像を表示して、クリックして選択させます。
oda.png と toyo.png
2つの画像ファイルをプロジェクトフォルダのimageフォルダに格納してください
以下のようにスクリプトを記述します
織田信長はどっちでしょう?
[locate x=20 y=100]
[button graphic="oda.png" target=*oda]
[locate x=300 y=100]
[button graphic="toyo.png" target=*toyo]
[s]
*oda
[cm]
正解です![l]
@jump target=*common
*toyo
[cm]
間違いです[l]
@jump target=*common
*common
共通ルート[l]
[locate]タグはボタンを表示する位置を決めます。[locate x=20 y=100]
[button graphic="oda.png" target=*oda]
[locate x=300 y=100]
[button graphic="toyo.png" target=*toyo]
[locate x=20 y=100]
[button graphic="oda.png" target=*oda]
;下のように1行だけで書くことも可能
[button x=20 y=100 graphic="oda.png" target=*oda]