*トークべた書き支援ライブラリ「あやりりすEX」 [#babc9ebb]
いちいちウエイトタグ書いてるのが面倒?
\s[]とか書いてたらヒマかかりすぎ?
SakuraScriptで文章書いたら後で推敲しにくくて困る?
……なら、これだ。
**概要 [#vb9a6dc4]
> "\u\s[10]\0\s[2]…\w5…\w5…\w5…\w5…\w5\w9\w9\1なんや、\w5アホみたいな顔してからに。\w9\w9\0\s[7]\n\nバッテリーがヘタりかけてるのに、\w9\n休止状態で放置しないでください!\w9\nばかになるでしょ!\w9\w9\1\n\n…\w5…\w5もともと賢い事ないがな。\w9\w9\0\s[26]\n\n…\w5…\w5…\w5…\w5\e"
こんな辞書が…
<<"
ま05:分かりました!分かりましたよ!20年モノのパソコンがどうなるのか!
し10:スクラップやのうて?
ま :付喪神っていう便利な言葉が、世の中にはあるんですよ!
し11:…まあ、ゴーストにはなったがな?
">>
こうなります。
''導入しても、通常のSakuraScriptの1行で書かれたトークはそのままスルーパス(あるいは句読点だけウエイトなどの調整可能)します。''
''文中のSakuraScriptはそのまま実行されます。細かく調整したい場合や。途中で単純な喋り以外の機能を呼び出したい時は、SakuraScriptをそのまま書いて下さい。''
**実運用サンプル [#of85b014]
http://ssp.shillest.net/ghost.html
-the "MobileMaster"
-とらふぃっく☆とれいん
-メリーさんの電話
http://ms.shillest.net/
-いまいち萌えない娘
-とらぶる☆ばぐとらっく
**下ごしらえ [#jaa7788a]
+最新のシステム辞書と、最新のYAYAの機能をふんだんに利用していますので、yaya.dllの上書きと「システム辞書」の上書きをお願いします。
+[[aya_lilith_ex.dic:http://ms.shillest.net/ghost/mobilemaster/ghost/master/aya_lilith_ex.dic]] と [[aya_lilith_ex_config.dic:http://ms.shillest.net/ghost/mobilemaster/ghost/master/aya_lilith_ex_config.dic]] を保存し、ghost/master以下に格納します。
+yaya.txtの''include, system_config.txt''直後あたりに、~
dic, aya_lilith_ex.dic~
dic, aya_lilith_ex_config.dic~
を追記してください。
''aya_lilith_ex_config.dic'' を開き、''あやりりすEXヘッダ0''・''あやりりすEXヘッダ1''をそれぞれ適切に設定して下さい。設定の仕方は辞書内のコメントに記述していますが、通常使いたい1文字の候補を複数書いて [まマ] のように大カッコでくくればOKです。
※発展:この部分には正規表現が利用できます。2文字以上使いたい場合などは工夫してみてください。
**使い方 [#m5494897]
YAYAの比較的新しいバージョンで追加された、複数行テキスト記述機能(ヒアドキュメント)を使用しています。
" " で囲まれるテキストは
<<"
">>
' ' で囲まれるテキストは
<<'
'>>
と同等になります。この2つの書き方の違いは、後者が複数行べた書きできる点だけです。
これを使い、基本的には以下のように書きます。
<<"
ま05:分かりました!分かりましたよ!20年モノのパソコンがどうなるのか!
し10:スクラップやのうて?
ま :付喪神っていう便利な言葉が、世の中にはあるんですよ!
し11:…まあ、ゴーストにはなったがな?
">>
頭の1文字「ま」「し」は、それぞれaya_lilith_ex_config.dicで設定した文字にしてください。
その後ろの全角数字はサーフィス番号(表情ID)です。半角でも通ります。
句読点や改行時のウエイト等は、適宜自動的に挿入されます。通常はそのままべた書きしてください。
何か特殊なことをしたい場合は、SakuraScriptがそのまま使えます。また、従来通りのSakuraScriptを含む1行のテキストとの共存も可能です。
**文法 [#c8eb7517]
ま05:てすとてすと
「:」より前が表情やその他オプションを定義する部分、後ろが喋る文字です。
設定した1文字+サーフィス番号:テキスト、が基本形です。サーフィス番号(表情ID)は、半角・全角どちらでも使えますが、日本語変換モードのまま全角で打ち込むと楽です。
ま05「かぎかっこでもいけるよ」
カギカッコで区切ってもOKですが、ちゃんとカッコは閉じてください。
ま消:きゃー消えちゃった―
番号のかわりに「消」と書くと、ウインドウが消えます(キャラが隠れます)
ま :さっきの表情のままね
何も書かないと前の表情のままです。スペース(全角・半角問わず)は無視されます。
二人:バルス!
「二人」と書くと二人同時に喋ります。
ま07し11二人:バルス!
この書き方は複数つなぎあわせることもできます。上記の例の場合、キャラ二人をそれぞれ7番・11番の表情に変えてから、同時に喋ります。
待ち無しま05:あまり待たない
待ちゼロま05:ぜんぜん待たない
待ち多めま05:ふつうより長めに待つ
直後にツッコミを入れたい、また長めに悩んでいる演出を入れたい、という時のために、このように喋り出す前の待ち時間を制御することができます。なお、''まったく書かなくても標準で適宜待ち時間が入ります''。
クリック待ちま07:クリック待ってる
クリック待ち、と書くと、喋り出す前にバルーンをクリックしてくれるのを待ちます。
改行無しま05:改行しないよ
改行無し、と書くと、前に喋った内容から改行せず表情だけを変えることができます。
改行多めま08:改行しまくり!
ちょっと多めに改行します。段落の区切りなどに。
ま00:(ユーザ)さん!
ユーザ名を途中に挿入します。:の後、喋る文字の部分にのみ適用されます。
ま05:(チョコ|菓子パン|ケーキ)食べよう!
|で区切って文字列を書き、カッコでくくるとランダム選択になります。
#コメントなので無視
#ではじまる行は完全に無視されます。
@設定:パッシブモード
@設定:クイックセクション
@設定:タイムアウト1000「時間切れ」
「@設定:」ではじまる行は、以降の喋りに関係するオプション設定です。上のサンプルはそれぞれ、
-パッシブモード(マウス反応以外すべて無視)
-クイックセクション(全文字ウエイト無視で一瞬で表示)
-タイムアウト(以降に続く数字のミリ秒間待つ、待ったら「」でくくった名前の関数を呼ぶ)
になります。
@メニュー:さんぷる1|Sample1Execute
@半分メニュー:さんぷる2|さんぷる2実行
@改行多めメニュー:さんぷる3|OnTest3Exec|R0
@クリック待ちメニュー:さんぷる4|さんぷる4実行
「@~メニュー:」ではじまる行は、メニュー表示です。~
半分メニューは標準サイズバルーンに横2つずつ並べる表示です。~
改行多めとつけると、1行改行が1行半になります。選択肢の区切りなどに。
改行多めとつけると、1行改行が1行半になります。選択肢の区切りなどに。~
クリック待ちとつけると、そのメニューを表示した直後でクリック待ち(\x)に入ります。
後ろは|区切りです。最初の項目が表示するテキスト、2つ目以降は実行する関数/イベントです。
なお、''メニュー内は自動でクイックセクション''になり、一気にウエイトなしで表示されます。
**自動チェイントークとランダム選択 [#w9e81368]
ま05:ちぇいんてすと。
し10:うまくいくやろか。
=====
ま05:ちぇいん2-Aにきたよ。
し10:成功やね。
-----
ま05:ちぇいん2-Bにきたよ。
し10:ここはランダムや。
===== (=が5つ以上) で区切るとチェイントーク、----- (-が5つ以上) で区切るとランダム選択になります。
例えば上の例の場合、最初の ===== までを喋った後いったん終わり、次のランダムトークを喋るタイミングで、2つめと3つめのトークからどちらかを喋ります。
**FAQ [#t4ab4bcc]
:なぜEX?|イベント処理支援ライブラリ「あやりりす」っていうのがあったんですが、こちらはまだいろいろ依存がありすぎて切り離せない…。ちなみに、さらに他に用語解説用ライブラリもあったりします。
:なぜ書いたし|いや、Twitterなどでネタいただくのはいいんですが、 ラ「ごにょごにょ」テ「ごにょごにょ」 といった形式を一々全部SakuraScriptに直すのが''ものすごく面倒''で……
:まとめて開発版で怪しいことしたいです。|the "MobileMaster"・とらふぃっく☆とれいんをデバッグ用前線扱いで運用中です。
:選択肢とかも書けるようにして果ては里々並に…|そんなごちゃごちゃしたのはふつうにSakuraScript書きなさいって…