- 追加された行はこの色です。
- 削除された行はこの色です。
- call関数 へ行く。
call関数について。~
自作関数は上級者向けと思われがちですが、callを使っていないだけで、無意識に同等のものを組んでいる人は多いです。~
----
#contents
----
~
*関数の自作 [#b9df0eea]
関数と言うと難しそうに聞こえますが、
-『現在月を入れると、季節(春夏秋冬)を返す』
-『現在時や現在月を入れると、昼か夜かを返す』
-『郵便物の重さの数値を入れると、料金を返す』
-『地域情報を入れると、その地域の天気予報を返す』
といった具合に、掻い摘んで言えば''何かを入れたら、何かが返ってくる''ものです。~
使いこなせば制作・管理・仕様変更の労力の削減に役立つはず。
*call関数 [#de4d832c]
里々の自作関数は、主に[[call関数>関数一覧#call]]で実現します。~
call関数とは、*文または@単語群に引数を付けて呼ぶ関数。~
呼び出された文または単語群では、(A0)で引数0を、(A1)で引数1を、以下数字通りに参照できます。~
(call,文または単語群,引数0,引数1,引数2......)
呼び出す文または単語群がいわゆる自作関数になります。
…と、こう書くとなんだか特別な何かに見えるかも知れませんが、~
実体は文または単語群なので、普段()で呼び出すのと変わりません。~
つまり(call,○○)と(○○)は''結果が同じ''なので、渡したい引数がないならcallを使う必要もないということ。
**表記例 [#r613e3a6]
@箱の数
(A0)に(A1)が(A2)個あります。
上記のような自作関数を作った時、~
&color(#cc0000){(call,箱の数,部屋,箱,16)};で呼び出すと「部屋に箱が16個あります。」~
&color(#cc0000){(箱の数)};で呼び出すと「にが個あります。」~
と表示されます。((call関数を使わずに呼び出すと(A*)は空白となり表示されません。))~
***replace.txtで自作関数っぽく [#zf911ae0]
replace.txtで置き換えておくとcallを省略でき、自作関数らしく記述できます。
(箱の数,【タブ】(call,箱の数,
*
:(箱の数,部屋,箱,16)
*活用例 [#xe001b92]
**季節を返す [#of719bc4]
@季節
(nswitch,(A0),冬,冬,春,春,春,夏,夏,夏,秋,秋,秋,冬)
*
:3月の季節って(call,季節,3)?
:まだまだ寒いで。つーか今(call,季節,(現在月))やん。
**指定した音声を鳴らす [#de989179]
サウンド再生タグを楽に書く。
(※「sound」フォルダにbird.wavやbell.wavが入っている状態での例)
*
:(call、音、bird)鳥のなきごえです。\w9\w9\w9
:(call、音、bell)ベルの音です。
@音
\_v[sound/(A0).wav]
**計算する [#rdd8506f]
2つの数字を足し算したり掛け算したり。(一部ssu.dllを使用)
*
:5と4で計算
(call,計算,5,4)
*
:8と16で計算
(call,計算,8,16)
*
:10と22で計算
(call,計算,10,22)
*計算
:(A0)と(A1)を足すと「(calc,(A0)+(A1))」になるよ。
(A0)と(A1)を掛け算すると「(calc,(A0)*(A1))」になるよ。
**整理 [#g0a2e55d]
単語一覧メニューの項目を書く時すっきりさせる。(一部ssu.dllを使用)
*
:いぬだいすき!
<単語一覧に「いぬ」項目が追加されました>
$単語_いぬ【タブ】1
*単語一覧
:単語一覧です。
(call,単語項目,いぬ)φ
(call,単語項目,ねこ)φ
(call,単語項目,とり)φ
(call,単語項目,くま)φ
(call,単語項目,うさぎ)φ
@単語項目
(if、(変数「単語_(A0)」の存在)、☆ \q[(A0),(A0)の意味]\n)
*いぬの意味
:ワンワン吼える動物。
_単語一覧
*ねこの意味
:にゃーにゃー鳴く動物。
_単語一覧
*とりの意味
・・・(以下略)