2時間かけて戦っていたのがあったのでまたシェア。
何かというと選択肢。たとえばこんなもの。
[se fn=選択.mp3] 来栖祐一は[font color=”red”]――[resetfont]を目指している[r][nowait] ■ [stk][link target=*hansei2_3_1 ]小説家[stk_e] ■ [stk][link target=*hansei2_3_2 ]絵本作家[stk_e] [endnowait][s]
これは普通の選択肢。で、選択肢から適当にあるものを選んだ結果、
来栖祐一は [font color=”yellow”][emb exp=”f.m2″][resetfont] を目指している[r]
この[emb exp=”f.m2″]というのはいわゆる演算、変数の部分です。
参考はティラノスクリプトの演算、変数ページ
私としては選択肢を選んだら、自動的に選んだ選択肢の言葉が出るものだ。
と思ってこんな形で最初していたのですが、
(一部略)
■ [stk][link target=*hansei2_3_1exp=”f.m2=小説家” ]小説家[stk_e] ■ [stk][link target=*hansei2_3_2 exp=”f.m2=絵本作家”]絵本作家[stk_e]
でもこの結果として、どんな選択肢を選んでも
[emb exp=”f.m2″]の値が「絵本作家」になってしまうのです。私としては小説家を選んだら、小説家と出したいのに、なぜ絵本作家になるんだ。
ということで、変数は基本、前より跡が優先されること。
すなわち、先の小説家より、後に書いた絵本作家に上書きされてしまい、
結果として、変数内容が絵本作家になってしまうこと。
で、これどうしたらいいのだろうと色々悩んだところ、こうして解決しました。
*hansei2_3
[cm]
[se fn=選択.mp3]
来栖祐一は[font color=”red”]――[resetfont]を目指している
[r][nowait]
■ [stk][link target=*hansei2_3_1 ]小説家[stk_e]
■ [stk][link target=*hansei2_3_2 ]絵本作家[stk_e]
[endnowait][s]
*hansei2_3_1
[cm][eval exp=”f.m4=’小説家’,f.s1=f.s1+1″]
@jump target=*hansei2_4
*hansei2_3_2
[cm][eval exp=”f.m4=’絵本作家'”]
@jump target=*hansei2_4
*hansei2_3_3
;————————-
*hansei2_4
[cm]
[se fn=選択.mp3]
ということで、一度違うラベルに移動させて、
そこで[eval exp=”f.m4=’絵本作家'”]を使って変数入力。
その後、次の選択肢に共通でジャンプさせる。
たったこれだけで、自分が選んだ選択肢通りに名前が表示される。
ということがわかりました。

コメントを残す