名前を覚えさせる
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*名前を覚えさせる [#n78329d8]
ユーザの名前を覚えさせる方法の紹介。~
----
#contents
----
~
*インプットボックスを使う [#y27e996e]
さくらスクリプトの&color(blue){\![open,inputbox,ID]};を使...
前提として辞書のどこかにOnUserInputに対応する記述が必要で...
*OnUserInput
$(R0)【タブ】(R1)
>(R0)を教えてもらった
参考リンク [[UKADOC-さくらスクリプトリスト:https://ssp.sh...
**基本形 [#j51df8cd]
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
:(ユーザ名)だね。
基本はこれで、変数「ユーザ名」に入力した内容が保存されま...
//さくらスクリプトのオプションで、予めボックスに文字列を...
// #インプットボックスに予め「ユーザ太郎」と入れておく方法
// \![open,inputbox,ユーザ名,,ユーザ太郎]
//↑下の「名前入力の空エンター・キャンセル対策」に統合しま...
**読み方も教えてもらう [#ed278d20]
名前を入力した後に、続いて読み方も求める方法。
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
:(ユーザ名)だね。
読み方も教えて欲しいな。全角のひらがなで頼む。
\![open,inputbox,ユーザ読み仮名]
*ユーザ読み仮名を教えてもらった
:(ユーザ読み仮名)だね。ありがと。
*名前入力の空エンター・キャンセル対策 [#nd426369]
入力ボックスに何もせずエンター(空エンター)したり、ボッ...
ここではそれを防ぐために、名前入力の時の空エンターを無理...
**初期値を入れておく [#hdfffdd3]
satori_conf.txtで初期値をセットしておけば、空エンターをさ...
$ユーザ名【タブ】ユーザー
そして入力ボックスを開くスクリプトは以下のように。
\![open,inputbox,名前の入力,,(ユーザ名)]
こうしておくと、入力ボックスを開いた時に「ユーザー」が、...
面倒で入力せずエンター押すユーザーさん向け。~
また、初期値がなくてもインプットボックスに文字を入れてお...
#インプットボックスに予め「ユーザ太郎」と入れておく方法
\![open,inputbox,ユーザ名,,ユーザ太郎]
**SSPで設定された情報を活用する [#u9f9ee02]
SSPの本体設定にはユーザーの名前をあらかじめ設定することが...
初回起動の時、もしユーザーがこれを利用していたなら、そち...
OnNotifyUserInfoについて詳しく→[[SSPの設定を覚えさせる...
*OnNotifyUserInfo
$SSPの呼ばれ方【タブ】(R0)
$SSPの名前【タブ】(R1)
*初回起動
$名前【タブ】(when,(変数「SSPの呼ばれ方」の存在)...
:名前を入力してくださいね。\![open,inputbox,ユーザ名,0,...
としておくと、まずSSP設定の「呼ばれ方」を、それがなければ...
名前の入力では入力欄に最初からどれかが入ることになります。~
これに下の項で解説した空打ち対策を合わせて使えば、空エン...
**SHIORIイベントで空打ちとキャンセルを弾く [#f078336a]
OnUserInputと、OnUserInputCancelイベントにこの記述を追加...
(なお「*OnUserInput」はRポストと狛犬には最初から記述さ...
[[is_empty>関数一覧#is_empty]]を使って、空っぽかどうかを...
この関数はMc158-1以降の[[バージョン>情報取得変数#ua674302...
*OnUserInput
>(R0)をタイムアウト【タブ】(compare,(R1),timeo...
>(R0)を空打ちされた【タブ】(is_empty,(R1))
>(R0)を教えてもらった
*OnUserInputCancel
>(R0)を空打ちされた【タブ】(compare,(R1),close)
*名前覚えて
:なんていうお名前なんですか?\![open,inputbox,名前の入...
*名前の入力を空打ちされた
:では、前のままでいいですね。
*名前の入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね、わかりました。
ボックスを閉じた時も「名前の入力を空打ちされた」に飛びま...
***初回起動と後で変える時は処理を分ける [#p9e9dac3]
初回起動の時に名前を教える処理と、後で名前を変える時の処...
*初回
:なんていうお名前なんですか?\![open,inputbox,最初の名...
*最初の名前入力を空打ちされた
:えー。それじゃ、勝手に呼びますよ?
*最初の名前入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね、わかりました。
**名前が入力されるまで処理をストップさせる [#q89f2128]
実は、入力ボックスが開いたままでも各種イベントは発生しま...
つまり、ボックスが開いていてもユーザーに無視されたり、誤...
名前の変更イベントならまだしも、もし初回起動イベントの最...
そこで、複合テクニックとして、名前入力のイベントを終える...
*初回
:\t\*なんていうお名前なんですか?
\q[ ,最初の名前入力を空打ちされた]
\![open,inputbox,最初の名前入力,,(ユーザ名)]
*最初の名前入力を空打ちされた
:\t\*もー。きちんと教えて下さい。
\q[ ,最初の名前入力を空打ちされた]
\![close,inputbox,最初の名前入力]
\![open,inputbox,最初の名前入力,,(ユーザ名)]
*最初の名前入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね。覚えました。
大きな違いはスクリプトの&color(red){ \t \* \q[~] };の3つ...
これらを組み合わせることで、入力ボックスを入力するか閉じ...
-\t タイムクリティカルセクション。これが宣言されたトーク...
-\* これが宣言されたトークの間、選択肢の時間制限を無限に...
-\q[~] 選択肢のさくらスクリプト。見えない空白の選択肢を...
万が一バレてクリックされたとしても、行き先は「空打ちされ...
そのままでも早々バレる事はないでしょうが、少しでも可能性...
動作としては、時間無制限の選択肢が表示されているため、こ...
これによりマウス反応、ランダムトーク、バルーンを閉じる動...
そして、この状態でも入力ボックスによる操作は受け付けてお...
なお &color(red){\![close,inputbox,最初の名前入力]}; は入...
openの前に実行することで、一度閉じてから開くわけです。(...
この記述がなくとも動作はしますが、警告音は鳴るのであった...
**分岐テクニック [#w10a6c32]
前と同じ名前を入力された時に独自の反応をしたい時など。
*ユーザ名を教えてもらった
>前と同じユーザ名を教えられた【タブ】(equal(バイト値...
:(ユーザ名)さんですね。覚えました。
*前と同じユーザ名を教えられた
:今までと同じ(ユーザ名)さんでいいんですね。
*ユーザ名を空打ちされた
:内緒ですか。
それでは今まで通り(ユーザ名)さんと呼びますね。
ユーザ名が未入力で初めて入力する場合などにおかしくなって...
-もっと複雑なの
*ユーザ名を教えてもらった
$教えた回数=(教えた回数)+1
>(教えた回数)回目の会話【タブ】(変数「ユーザ名」の存...
$ユーザ名【タブ】ゆーざ
>(教えた回数)回目の会話
*1回目の会話
#ここが初回会話。
*2回目の会話
#2回目=3回目以降の場合これで。
$教えた回数=1
#バックアップする場合------------------~
#まずこれを
*名前を覚えて
$旧ユーザ名【タブ】(ユーザ名)
#以下の【タブ】の右側には何もありません。ユーザ名の削除...
$ユーザ名【タブ】
\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
$教えた回数=(教えた回数)+1
>(教えた回数)回目の会話【タブ】(変数「ユーザ名」の存...
$ユーザ名【タブ】ゆーざ
>同じお名前【タブ】(compare,(ユーザ名),(旧ユーザ名...
>(教えた回数)回目の会話
*1回目の会話
#初回会話です。
*2回目の会話
#2回目=3回目以降の場合の例
$教えた回数=1
*同じお名前
#例
:(ユーザ名)さん・・・ってこの前もそう言ってなかった!?
:オマエがいかにも忘れてそうだからだろ。
#この場合、ユーザ名、という項目を消しておいて下さい。
*TIPS・敬称の付け方 [#yece19ce]
ユーザ名に敬称を付けたい時、いくつか方法を紹介。
**敬称も含めて入力してもらう [#t141e483]
作る側も手間がかからず、ユーザ側の自由度も高い方法。~
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
めんどうだから「さん」とか「くん」とかも
一緒に入れちゃってよ。
*ユーザ名教えてもらった
:これから(ユーザ名)って呼ぶよ。
**関数を使う・基本編 [#xb3937df]
ユーザ名を変更せずに敬称だけ変更したい場合、以下のような...
&color(#0000cc){なお変数「ユーザ敬称」に何も入ってないと...
~
まず以下を辞書のどこかにコピペします。~
@ユーザ呼称
(ユーザ名)(ユーザ敬称)
「ユーザ呼称」の部分が実際にユーザを呼ぶ場合に(ユーザ呼...
~
敬称を選んでもらう部分は例えばこんな風になります。~
''敬称を覚える部分の例''
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
*ユーザ敬称選択_さん
$ユーザ敬称【タブ】さん
:今度からは(ユーザ呼称)って呼ぶよ。
:さんづけかー。
*ユーザ敬称選択_くん
$ユーザ敬称【タブ】くん
:今度からは(ユーザ呼称)って呼ぶよ。
:くんづけかー。
*ユーザ敬称選択_ちゃん
$ユーザ敬称【タブ】ちゃん
:今度からは(ユーザ呼称)って呼ぶよ。
:チャーン!
~
''ユーザを呼ぶ場所の例''
*
:(ユーザ呼称)は今何してるの?
:パソコンじゃないかな。
:いまどきはタブレットかもよ!
「(ユーザ呼称)」は「ユーザ敬称選択」で選択された「ユー...
これによって「ユーザ名」「ユーザ敬称」を別々の変数として...
**関数を使う・呼び捨ての場合 [#ddd7289f]
単に呼び捨てにして欲しいというユーザさんの需要もあるでし...
~
しかし実は先の例の「ユーザ呼称」そのままだと呼び捨てには...
単に「ユーザ敬称」を空にしてしまうと、「(ユーザ敬称)」...
(ユーザ名)(ユーザ敬称)
は
ユーザ(ユーザ敬称)
のようになってしまうからです。~
参考:[[中身のないからっぽ変数の扱い>変数#i4e87261]]~
~
そこでもう一工夫します。「ユーザ呼称」を以下のように変更...
@ユーザ呼称
(ユーザ名)(when,(ユーザ敬称)!=呼び捨て,(ユーザ敬称...
敬称選択は例えば次のようにします
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
_(ユーザ名)【タブ】ユーザ敬称選択_呼び捨て
#~中略~
*ユーザ敬称選択_呼び捨て
$ユーザ敬称【タブ】呼び捨て
:呼び捨てでいいの?
おう(ユーザ呼称)やきそばパンかってこいや。
:そこまで下に見ろとは言ってない!
これで、「ユーザ敬称」が呼び捨て以外の場合には今までどお...
**関数を使う・もっといろいろな呼び方をさせる [#dc21e05f]
せっかくなのでもっと色んなパターンで呼べるようにしてしま...
ssu.dllの関数「[[iflist>関数一覧#ifwhenlist]]」を使います...
~
まずは「ユーザ呼称」を
@ユーザ呼称
(iflist(バイト値、1)(ユーザ敬称)==
(バイト値、1)呼び捨て(バイト値、1)(ユーザ名)
(バイト値、1)Mr.(バイト値、1)Mr.(ユーザ名)
(バイト値、1)Ms.(バイト値、1)Ms.(ユーザ名)
(バイト値、1)ご主人さま(バイト値、1)ご主人さま
(バイト値、1)(ユーザ名)(ユーザ敬称)
)
「(バイト値、1)」については見難いと思いますがそういう...
参考:[[バイト値>関数一覧#bytes]]、[[引数区切りについて>...
''敬称を覚える部分の例''
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
_(ユーザ名)【タブ】ユーザ敬称選択_呼び捨て
_Mr.(ユーザ名)【タブ】ユーザ敬称選択_Mr.
_Ms.(ユーザ名)【タブ】ユーザ敬称選択_Ms.
_ご主人さま【タブ】ユーザ敬称選択_ご主人さま
#~中略~
*ユーザ敬称選択_Mr.
$ユーザ敬称【タブ】Mr.
:Hey,(ユーザ呼称)!
:トークが英語になったりはしないから安心してな。
*ユーザ敬称選択_Ms.
$ユーザ敬称【タブ】Ms.
:Hey,(ユーザ呼称)!
:What time is it now?
*ユーザ敬称選択_ご主人さま
$ユーザ敬称【タブ】ご主人さま
:はいはい(ユーザ呼称)。
:もっとやる気だそうよ。
これで(ユーザ呼称)とすると、敬称によっては
Mr.ユーザ
のようにユーザ名の前に敬称部分が来たり、
ご主人さま
のように、ユーザ名の情報は保持しつつもまったくユーザ名を...
~
もしパターンを追加したい場合は「ユーザ呼称」の部分に
@ユーザ呼称
(iflist(バイト値、1)(ユーザ敬称)==
(バイト値、1)同志(バイト値、1)同志(ユーザ名)
(バイト値、1)呼び捨て(バイト値、1)(ユーザ名)
#~略~
)
の「同志」の行のように
(バイト値、1)[ユーザ敬称の中身](バイト値、1)[出力...
という書式で追加していきます。~
~
なお一番下の~
(バイト値、1)(ユーザ名)(ユーザ敬称)
の行は一番下以外の場所にもっていくとおかしくなるので注意...
~
ちなみに、括弧の展開数が多いので理論上は多少処理に時間が...
*選択肢で覚えさせる [#f252a61a]
インプットボックスを使わず、選択肢でユーザ名を決定させる...
*名前覚えろ
:あなたはあたしの・・・・・
_ユーザさん
_お兄ちゃん
_パパ
*ユーザさん
$ユーザ名=ユーザさん
:えー!!(ユーザ名)?
ホントにそれでいいのー?
*お兄ちゃん
$ユーザ名=お兄ちゃん
:%username・・・・・・
(5)宜しくねっ!!
*パパ
$ユーザ名=パパ
:うん。あなたが、あたしの(ユーザ名)ね。
終了行:
*名前を覚えさせる [#n78329d8]
ユーザの名前を覚えさせる方法の紹介。~
----
#contents
----
~
*インプットボックスを使う [#y27e996e]
さくらスクリプトの&color(blue){\![open,inputbox,ID]};を使...
前提として辞書のどこかにOnUserInputに対応する記述が必要で...
*OnUserInput
$(R0)【タブ】(R1)
>(R0)を教えてもらった
参考リンク [[UKADOC-さくらスクリプトリスト:https://ssp.sh...
**基本形 [#j51df8cd]
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
:(ユーザ名)だね。
基本はこれで、変数「ユーザ名」に入力した内容が保存されま...
//さくらスクリプトのオプションで、予めボックスに文字列を...
// #インプットボックスに予め「ユーザ太郎」と入れておく方法
// \![open,inputbox,ユーザ名,,ユーザ太郎]
//↑下の「名前入力の空エンター・キャンセル対策」に統合しま...
**読み方も教えてもらう [#ed278d20]
名前を入力した後に、続いて読み方も求める方法。
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
:(ユーザ名)だね。
読み方も教えて欲しいな。全角のひらがなで頼む。
\![open,inputbox,ユーザ読み仮名]
*ユーザ読み仮名を教えてもらった
:(ユーザ読み仮名)だね。ありがと。
*名前入力の空エンター・キャンセル対策 [#nd426369]
入力ボックスに何もせずエンター(空エンター)したり、ボッ...
ここではそれを防ぐために、名前入力の時の空エンターを無理...
**初期値を入れておく [#hdfffdd3]
satori_conf.txtで初期値をセットしておけば、空エンターをさ...
$ユーザ名【タブ】ユーザー
そして入力ボックスを開くスクリプトは以下のように。
\![open,inputbox,名前の入力,,(ユーザ名)]
こうしておくと、入力ボックスを開いた時に「ユーザー」が、...
面倒で入力せずエンター押すユーザーさん向け。~
また、初期値がなくてもインプットボックスに文字を入れてお...
#インプットボックスに予め「ユーザ太郎」と入れておく方法
\![open,inputbox,ユーザ名,,ユーザ太郎]
**SSPで設定された情報を活用する [#u9f9ee02]
SSPの本体設定にはユーザーの名前をあらかじめ設定することが...
初回起動の時、もしユーザーがこれを利用していたなら、そち...
OnNotifyUserInfoについて詳しく→[[SSPの設定を覚えさせる...
*OnNotifyUserInfo
$SSPの呼ばれ方【タブ】(R0)
$SSPの名前【タブ】(R1)
*初回起動
$名前【タブ】(when,(変数「SSPの呼ばれ方」の存在)...
:名前を入力してくださいね。\![open,inputbox,ユーザ名,0,...
としておくと、まずSSP設定の「呼ばれ方」を、それがなければ...
名前の入力では入力欄に最初からどれかが入ることになります。~
これに下の項で解説した空打ち対策を合わせて使えば、空エン...
**SHIORIイベントで空打ちとキャンセルを弾く [#f078336a]
OnUserInputと、OnUserInputCancelイベントにこの記述を追加...
(なお「*OnUserInput」はRポストと狛犬には最初から記述さ...
[[is_empty>関数一覧#is_empty]]を使って、空っぽかどうかを...
この関数はMc158-1以降の[[バージョン>情報取得変数#ua674302...
*OnUserInput
>(R0)をタイムアウト【タブ】(compare,(R1),timeo...
>(R0)を空打ちされた【タブ】(is_empty,(R1))
>(R0)を教えてもらった
*OnUserInputCancel
>(R0)を空打ちされた【タブ】(compare,(R1),close)
*名前覚えて
:なんていうお名前なんですか?\![open,inputbox,名前の入...
*名前の入力を空打ちされた
:では、前のままでいいですね。
*名前の入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね、わかりました。
ボックスを閉じた時も「名前の入力を空打ちされた」に飛びま...
***初回起動と後で変える時は処理を分ける [#p9e9dac3]
初回起動の時に名前を教える処理と、後で名前を変える時の処...
*初回
:なんていうお名前なんですか?\![open,inputbox,最初の名...
*最初の名前入力を空打ちされた
:えー。それじゃ、勝手に呼びますよ?
*最初の名前入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね、わかりました。
**名前が入力されるまで処理をストップさせる [#q89f2128]
実は、入力ボックスが開いたままでも各種イベントは発生しま...
つまり、ボックスが開いていてもユーザーに無視されたり、誤...
名前の変更イベントならまだしも、もし初回起動イベントの最...
そこで、複合テクニックとして、名前入力のイベントを終える...
*初回
:\t\*なんていうお名前なんですか?
\q[ ,最初の名前入力を空打ちされた]
\![open,inputbox,最初の名前入力,,(ユーザ名)]
*最初の名前入力を空打ちされた
:\t\*もー。きちんと教えて下さい。
\q[ ,最初の名前入力を空打ちされた]
\![close,inputbox,最初の名前入力]
\![open,inputbox,最初の名前入力,,(ユーザ名)]
*最初の名前入力を教えてもらった
$ユーザ名【タブ】(R1)
:(ユーザ名)さんですね。覚えました。
大きな違いはスクリプトの&color(red){ \t \* \q[~] };の3つ...
これらを組み合わせることで、入力ボックスを入力するか閉じ...
-\t タイムクリティカルセクション。これが宣言されたトーク...
-\* これが宣言されたトークの間、選択肢の時間制限を無限に...
-\q[~] 選択肢のさくらスクリプト。見えない空白の選択肢を...
万が一バレてクリックされたとしても、行き先は「空打ちされ...
そのままでも早々バレる事はないでしょうが、少しでも可能性...
動作としては、時間無制限の選択肢が表示されているため、こ...
これによりマウス反応、ランダムトーク、バルーンを閉じる動...
そして、この状態でも入力ボックスによる操作は受け付けてお...
なお &color(red){\![close,inputbox,最初の名前入力]}; は入...
openの前に実行することで、一度閉じてから開くわけです。(...
この記述がなくとも動作はしますが、警告音は鳴るのであった...
**分岐テクニック [#w10a6c32]
前と同じ名前を入力された時に独自の反応をしたい時など。
*ユーザ名を教えてもらった
>前と同じユーザ名を教えられた【タブ】(equal(バイト値...
:(ユーザ名)さんですね。覚えました。
*前と同じユーザ名を教えられた
:今までと同じ(ユーザ名)さんでいいんですね。
*ユーザ名を空打ちされた
:内緒ですか。
それでは今まで通り(ユーザ名)さんと呼びますね。
ユーザ名が未入力で初めて入力する場合などにおかしくなって...
-もっと複雑なの
*ユーザ名を教えてもらった
$教えた回数=(教えた回数)+1
>(教えた回数)回目の会話【タブ】(変数「ユーザ名」の存...
$ユーザ名【タブ】ゆーざ
>(教えた回数)回目の会話
*1回目の会話
#ここが初回会話。
*2回目の会話
#2回目=3回目以降の場合これで。
$教えた回数=1
#バックアップする場合------------------~
#まずこれを
*名前を覚えて
$旧ユーザ名【タブ】(ユーザ名)
#以下の【タブ】の右側には何もありません。ユーザ名の削除...
$ユーザ名【タブ】
\![open,inputbox,ユーザ名]
*ユーザ名を教えてもらった
$教えた回数=(教えた回数)+1
>(教えた回数)回目の会話【タブ】(変数「ユーザ名」の存...
$ユーザ名【タブ】ゆーざ
>同じお名前【タブ】(compare,(ユーザ名),(旧ユーザ名...
>(教えた回数)回目の会話
*1回目の会話
#初回会話です。
*2回目の会話
#2回目=3回目以降の場合の例
$教えた回数=1
*同じお名前
#例
:(ユーザ名)さん・・・ってこの前もそう言ってなかった!?
:オマエがいかにも忘れてそうだからだろ。
#この場合、ユーザ名、という項目を消しておいて下さい。
*TIPS・敬称の付け方 [#yece19ce]
ユーザ名に敬称を付けたい時、いくつか方法を紹介。
**敬称も含めて入力してもらう [#t141e483]
作る側も手間がかからず、ユーザ側の自由度も高い方法。~
*名前を変える
:名前は?\![open,inputbox,ユーザ名]
めんどうだから「さん」とか「くん」とかも
一緒に入れちゃってよ。
*ユーザ名教えてもらった
:これから(ユーザ名)って呼ぶよ。
**関数を使う・基本編 [#xb3937df]
ユーザ名を変更せずに敬称だけ変更したい場合、以下のような...
&color(#0000cc){なお変数「ユーザ敬称」に何も入ってないと...
~
まず以下を辞書のどこかにコピペします。~
@ユーザ呼称
(ユーザ名)(ユーザ敬称)
「ユーザ呼称」の部分が実際にユーザを呼ぶ場合に(ユーザ呼...
~
敬称を選んでもらう部分は例えばこんな風になります。~
''敬称を覚える部分の例''
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
*ユーザ敬称選択_さん
$ユーザ敬称【タブ】さん
:今度からは(ユーザ呼称)って呼ぶよ。
:さんづけかー。
*ユーザ敬称選択_くん
$ユーザ敬称【タブ】くん
:今度からは(ユーザ呼称)って呼ぶよ。
:くんづけかー。
*ユーザ敬称選択_ちゃん
$ユーザ敬称【タブ】ちゃん
:今度からは(ユーザ呼称)って呼ぶよ。
:チャーン!
~
''ユーザを呼ぶ場所の例''
*
:(ユーザ呼称)は今何してるの?
:パソコンじゃないかな。
:いまどきはタブレットかもよ!
「(ユーザ呼称)」は「ユーザ敬称選択」で選択された「ユー...
これによって「ユーザ名」「ユーザ敬称」を別々の変数として...
**関数を使う・呼び捨ての場合 [#ddd7289f]
単に呼び捨てにして欲しいというユーザさんの需要もあるでし...
~
しかし実は先の例の「ユーザ呼称」そのままだと呼び捨てには...
単に「ユーザ敬称」を空にしてしまうと、「(ユーザ敬称)」...
(ユーザ名)(ユーザ敬称)
は
ユーザ(ユーザ敬称)
のようになってしまうからです。~
参考:[[中身のないからっぽ変数の扱い>変数#i4e87261]]~
~
そこでもう一工夫します。「ユーザ呼称」を以下のように変更...
@ユーザ呼称
(ユーザ名)(when,(ユーザ敬称)!=呼び捨て,(ユーザ敬称...
敬称選択は例えば次のようにします
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
_(ユーザ名)【タブ】ユーザ敬称選択_呼び捨て
#~中略~
*ユーザ敬称選択_呼び捨て
$ユーザ敬称【タブ】呼び捨て
:呼び捨てでいいの?
おう(ユーザ呼称)やきそばパンかってこいや。
:そこまで下に見ろとは言ってない!
これで、「ユーザ敬称」が呼び捨て以外の場合には今までどお...
**関数を使う・もっといろいろな呼び方をさせる [#dc21e05f]
せっかくなのでもっと色んなパターンで呼べるようにしてしま...
ssu.dllの関数「[[iflist>関数一覧#ifwhenlist]]」を使います...
~
まずは「ユーザ呼称」を
@ユーザ呼称
(iflist(バイト値、1)(ユーザ敬称)==
(バイト値、1)呼び捨て(バイト値、1)(ユーザ名)
(バイト値、1)Mr.(バイト値、1)Mr.(ユーザ名)
(バイト値、1)Ms.(バイト値、1)Ms.(ユーザ名)
(バイト値、1)ご主人さま(バイト値、1)ご主人さま
(バイト値、1)(ユーザ名)(ユーザ敬称)
)
「(バイト値、1)」については見難いと思いますがそういう...
参考:[[バイト値>関数一覧#bytes]]、[[引数区切りについて>...
''敬称を覚える部分の例''
*ユーザ敬称選択
:なんて呼んだらいい?
今は「(ユーザ呼称)」って呼んでるよ。
_(ユーザ名)さん【タブ】ユーザ敬称選択_さん
_(ユーザ名)くん【タブ】ユーザ敬称選択_くん
_(ユーザ名)ちゃん【タブ】ユーザ敬称選択_ちゃん
_(ユーザ名)【タブ】ユーザ敬称選択_呼び捨て
_Mr.(ユーザ名)【タブ】ユーザ敬称選択_Mr.
_Ms.(ユーザ名)【タブ】ユーザ敬称選択_Ms.
_ご主人さま【タブ】ユーザ敬称選択_ご主人さま
#~中略~
*ユーザ敬称選択_Mr.
$ユーザ敬称【タブ】Mr.
:Hey,(ユーザ呼称)!
:トークが英語になったりはしないから安心してな。
*ユーザ敬称選択_Ms.
$ユーザ敬称【タブ】Ms.
:Hey,(ユーザ呼称)!
:What time is it now?
*ユーザ敬称選択_ご主人さま
$ユーザ敬称【タブ】ご主人さま
:はいはい(ユーザ呼称)。
:もっとやる気だそうよ。
これで(ユーザ呼称)とすると、敬称によっては
Mr.ユーザ
のようにユーザ名の前に敬称部分が来たり、
ご主人さま
のように、ユーザ名の情報は保持しつつもまったくユーザ名を...
~
もしパターンを追加したい場合は「ユーザ呼称」の部分に
@ユーザ呼称
(iflist(バイト値、1)(ユーザ敬称)==
(バイト値、1)同志(バイト値、1)同志(ユーザ名)
(バイト値、1)呼び捨て(バイト値、1)(ユーザ名)
#~略~
)
の「同志」の行のように
(バイト値、1)[ユーザ敬称の中身](バイト値、1)[出力...
という書式で追加していきます。~
~
なお一番下の~
(バイト値、1)(ユーザ名)(ユーザ敬称)
の行は一番下以外の場所にもっていくとおかしくなるので注意...
~
ちなみに、括弧の展開数が多いので理論上は多少処理に時間が...
*選択肢で覚えさせる [#f252a61a]
インプットボックスを使わず、選択肢でユーザ名を決定させる...
*名前覚えろ
:あなたはあたしの・・・・・
_ユーザさん
_お兄ちゃん
_パパ
*ユーザさん
$ユーザ名=ユーザさん
:えー!!(ユーザ名)?
ホントにそれでいいのー?
*お兄ちゃん
$ユーザ名=お兄ちゃん
:%username・・・・・・
(5)宜しくねっ!!
*パパ
$ユーザ名=パパ
:うん。あなたが、あたしの(ユーザ名)ね。
ページ名: