129 lines
7.7 KiB
HTML
129 lines
7.7 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
|
|
<!-- generated by to_html.pl from Diverge.xml -->
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
<title>選択肢を使おう</title>
|
|
<meta name="author" content="W.Dee" />
|
|
<meta http-equiv="Content-Style-Type" content="text/css" />
|
|
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
<link href="browser.css" type="text/css" rel="stylesheet" title="吉里吉里関連リファレンス用標準スタイル" />
|
|
<link href="mailto:[email protected]" rev="Made" />
|
|
<link href="index.html" target="_top" rel="Start" title="トップページ" />
|
|
</head>
|
|
<body>
|
|
<h1><a id="id59" name="id59">ラベルを定義する</a>
|
|
</h1><div class="para"><div>
|
|
さて、選択肢を使う前に<a id="id60" name="id60" class="targanchor"><dfn>ラベル</dfn></a>の説明をしなければなりません。<br />
|
|
選択肢を選択したら、選択先にシナリオの制御が移らなければなりません。そのときの制御の移動の目印となるのがラベルです。<br />
|
|
<br />
|
|
ラベルは、行の先頭に * のついた行です。いままでのサンプルでも出てきていましたね。たとえば・・・<br />
|
|
|
|
<br />
|
|
<code class="bq">[wait time=200]<br />
|
|
<em>*start|スタート</em><br />
|
|
[cm]<br />
|
|
こんにちは。<br />
|
|
</code>
|
|
<br />
|
|
|
|
となっていました。この場合、ここで *start という名前のラベルを定義したわけです。じゃあ | (縦棒) 以降の "|スタート" ってなに、って事になりますが、それについては別の場所 <span class="comlink"> ( → <a target="main" class="jump" href="SaveLoad.html">セーブ・ロードに対応させよう</a> ) </span> で説明します。| 以降は書かなくてもかまいません。<br />
|
|
<br />
|
|
ラベルの名前には任意の物を指定できますが、半角英数のみにしておいた方が無難でしょう。また、ラベル名に半角スペースは使わないでください。<br />
|
|
<br />
|
|
ラベルの機能には、このように制御の移動の際の道しるべになる以外に、セーブ・ロードの位置にもなるという重要な機能があります。これも | (縦棒) の意味と一緒に別の場所でお話しいたします。<br />
|
|
</div></div>
|
|
<h1><a id="id61" name="id61">選択肢を使ってみる</a>
|
|
</h1><div class="para"><div>
|
|
KAG では選択肢というよりもむしろハイパーリンクに近い考え方で選択肢を実現します。<br />
|
|
選択肢を使うには <a id="id62" name="id62" class="targanchor"><dfn>link</dfn></a> と <a id="id63" name="id63" class="targanchor"><dfn>endlink</dfn></a> というタグを使います。この2つのタグで選択肢となる文章を挟むと、そこがマウスやキーボードで選択可能になります。マウスでクリックされたり、キーボードで Enter キーが押されると、該当する link タグに書かれた target 属性のラベルにジャンプします。<br />
|
|
また、選択肢待ちや、シナリオの終了など、動作を停止したい場合は <code class="inlinecode">[<a id="id64" name="id64" class="targanchor"><dfn>s</dfn></a>]</code> タグを書きます。メニューから「次の選択肢まで進む」を選ぶと、この <code class="inlinecode">[s]</code> タグが来るまでノンストップでシナリオを実行します。<br />
|
|
これらを使って、以下のように記述することができます。target= の後の * (アステリスク) は必要ですので忘れないようにしてください。また、| (縦棒) 以降は、target の後に指定するときには必要ありません。<br />
|
|
<br />
|
|
|
|
<br />
|
|
<code class="bq">[wait time=200]<br />
|
|
*start|スタート<br />
|
|
[cm]<br />
|
|
<em>[link target=*select1]選択肢1[endlink][r]<br />
|
|
[link target=*select2]選択肢2[endlink][r]<br />
|
|
[link target=*select3]選択肢3[endlink][r]<br />
|
|
[s]</em><br />
|
|
<br />
|
|
*select1<br />
|
|
選択肢1が選択されました。[l]<br />
|
|
[s]<br />
|
|
<br />
|
|
*select2<br />
|
|
選択肢2が選択されました。[l]<br />
|
|
[s]<br />
|
|
<br />
|
|
*select3<br />
|
|
選択肢3が選択されました。[l]<br />
|
|
[s]<br />
|
|
</code>
|
|
<br />
|
|
|
|
これをこのまま実行させると、選択肢を選択しても選択肢が消えません。<br />
|
|
消すには、通常ラベルの次に [cm] を書きます。<br />
|
|
|
|
<br />
|
|
<code class="bq">[wait time=200]<br />
|
|
*start|スタート<br />
|
|
[cm]<br />
|
|
<em>[link target=*select1]選択肢1[endlink][r]<br />
|
|
[link target=*select2]選択肢2[endlink][r]<br />
|
|
[link target=*select3]選択肢3[endlink][r]<br />
|
|
[s]</em><br />
|
|
<br />
|
|
*select1<br />
|
|
[cm]<br />
|
|
選択肢1が選択されました。[l]<br />
|
|
[s]<br />
|
|
<br />
|
|
*select2<br />
|
|
[cm]<br />
|
|
選択肢2が選択されました。[l]<br />
|
|
[s]<br />
|
|
<br />
|
|
*select3<br />
|
|
[cm]<br />
|
|
選択肢3が選択されました。[l]<br />
|
|
[s]<br />
|
|
</code>
|
|
<br />
|
|
|
|
<br />
|
|
<br /><div class="descimg"><img width="650" height="528" alt="Diverge.png" src="Diverge.png" /><br />選択肢の例</div><br /><br /><div class="note"><div class="notehead"><span class="noteheadspan">Note</span></div>
|
|
選択肢は一回選択されると、新しい選択肢が表示されるか、<a id="id65" name="id65" class="targanchor"><dfn>unlocklink</dfn></a> タグが実行されるまでは選択することはできません。<br />
|
|
また、すでに画面に表示されている選択肢を選択不能にするために <a id="id66" name="id66" class="targanchor"><dfn>locklink</dfn></a> タグがあります。<br />
|
|
通常の記述ではこのことは気にする必要はありません。<br />
|
|
</div><br />
|
|
</div></div>
|
|
<h1><a id="id67" name="id67">2つ以上のシナリオファイル</a>
|
|
</h1><div class="para"><div>
|
|
管理上、シナリオファイルを2つ以上に分けたい場合があるとおもいます。<br />
|
|
答えは簡単で、link タグに storage 属性をつけるだけです。たとえば、scn2.ks というシナリオを用意して、そこの *scn2start というラベルにジャンプするには・・・。<br />
|
|
|
|
<br />
|
|
<code class="bq">[link storage="scn2.ks" target=*scn2start]scn2.ks の scn2start[endlink]<br />
|
|
</code>
|
|
<br />
|
|
|
|
<br />
|
|
と記述します。この選択肢がクリックされると、scn2.ks が読み込まれ、*scn2start というラベルにジャンプします。<br />
|
|
</div></div>
|
|
<h1><a id="id68" name="id68">そのほかのシナリオ分岐に関するもの</a>
|
|
</h1><div class="para"><div>
|
|
ただ単に指定したラベルにジャンプしたいときのために jump タグがあります。<br />
|
|
また、link タグにはクリックされたときに TJS ( 吉里吉里が直接理解できるスクリプト ) の式を実行する機能などもあります。
|
|
また、<a id="id69" name="id69" class="targanchor"><dfn>button</dfn></a> タグは、テキストを選択肢にするのではなく、ボタンとして用意された画像を選択肢にする物です。グラフィカルな選択肢の実現に用います。<br />
|
|
<a target="main" class="jump" href="Tags.html">タグリファレンス</a> を参照してみてください。<br />
|
|
</div></div>
|
|
<script type="text/javascript" charset="UTF-8" src="documentid.js" ></script>
|
|
<script type="text/javascript" charset="UTF-8" src="postcontent.js" ></script>
|
|
</body>
|
|
</html>
|