要素の凡例
$ σ_σ$ < ここではいろんな要素に共通することを解説するわ。 Σc ' _' ) < 使い方を忘れた時に、ざっと見てみるのもいいかもだぜ。
概要
テクスティオの要素は、その書き方や配置によって機能が変わる文脈依存型の言語です。
要素によって、どの構文が使えるかは異なりますが、例えばxxx
要素があったとして、テクスティオでは次の8種類の使い方が想定されます。
種類 | 構文 | 配置 | 説明 |
---|---|---|---|
命令 | <xxx/> | act,option | 初期化などの機能 |
包含 | <xxx>内容</xxx> | 主にact,option | 入れ子構造 |
定義 | <xxx id="識別子">内容</xxx> | textio | 関数の定義 |
召喚 | <xxx id="識別子"/> | act,option | 関数の呼び出し |
設定 | <xxx id="識別子">内容</xxx> | act,option | 変数の設定 |
置換 | <xxx id="識別子"/> | p | 変数と置き換え |
修飾 | <xxx>内容</xxx> | p | 文字の修飾 |
条件 | <e xxx="条件式">…</e> | 属性 | ブロックの判定 |
要素の分類
テクスティオの要素は大まかに命令、コンテナ、値の3種類に分けられる。
<go>、<inventory>命令
命令要素としてのみ使える要素。
コンテナ
<textio>、<act>、<p>、<i>、<else>、<select>、<option>
他の要素やテキストを内包する要素。包含・定義・召喚要素の使い方ができる。
値
文脈(コンテクスト)
命令要素(act,option要素内 空要素)
<xxx />
act,option要素内の空要素は、命令を実行する。
初期化要素(act,option要素内 空要素)
<xxx />
act,option要素内の空要素は、命令要素の一種で、値の初期化を行う。
包含要素(act,option要素内)
<xxx>内容</xxx>
act,option要素内に配置される内容あり要素は、シナリオの構造を作るために使われる。コンテナ要素。
召喚要素(act,option要素内 id付き空要素)
<xxx id="識別子"/>
id付きの空要素として使うと召喚要素となり、実行時に定義要素を呼び出す。
定義要素(textio要素内 id付き)
<xxx id="識別子">定義内容</xxx>
textio要素直下にidを付けて配置すると、召喚要素を使って呼び出せる。
設定要素(act,option要素内 id付き)
<xxx id="識別子">設定値</xxx>
act,option要素内に配置されるid付き内容あり要素は、値の設定に使われる。
置換要素(p要素内 id付き)
<p>…<xxx id="識別子"/>…</p>
p要素内のid付きの空要素として使うと置換要素となり、値の内容に置き換えられる。
修飾要素(p要素内)
<p>…<i color="#cc0000">内容</i>…</p>
p要素内に配置される(idなし)内容あり要素は、テキストに(条件を含む)属性を設定するために使う。
属性
要素ごとに異なるが、共通する属性は、値要素で条件に使えるvar、i、item、at、pla属性と、識別子を指定するid属性がある。
id属性
id属性は要素を特定するために、定義・設定と召喚・置換の各要素で使われる。
内容を含む場合が定義・設定、空要素の場合が召喚・置換となる。
<xxx id="識別子">定義・設定内容</xxx>
<xxx id="識別子"/>
条件属性
値カテゴリのvar、i、item、at、pla要素はの属性として使うと条件属性となる。
条件分岐
適用可能な判定属性
次の例のeには、textioとselect要素を除くすべての要素が適用でき、条件判定が行える。
xxxには、var、i、item、at、plaの属性が条件として使える。
<e xxx="条件"/>
<e xxx="条件">真の場合の内容</e>
空要素であれ、内容あり要素であれ、条件が真の場合だけ実行(出力)される。
else節
textio
とselect
を除く包含要素、および修飾要素、設定要素は、else要素を含める。
具体的には次の例のeには、<act>、<p>、<i>、<else>、<option>、<var>、<i>、<item>、<at>、<pla>のいずれかが入る。
<e xxx="条件">真の場合の内容<else/>偽の場合の内容</e>