ユーザ用ツール

サイト用ツール


関数について



関数について

ここでは基本的な関数の使い方を説明しています。1)
eraMegaten関数リファレンスも参照のこと。



関数とは

与えられた値をもとに、あらかじめ用意された命令を実行し、結果を返してくれるものを関数と言います。

プログラミング上、同一の処理を何度も行う際、
関数を使うことで、「同じ処理を手軽に繰り返せる」という利点があります。

  • 関数化のメリット
    • 記述をシンプルに出来る
    • 同じことを何回も書かなくていい
    • 1回作ってしまえば中身を知らない人にも共有できる

関数の構造

関数の基本的な構造は3つの要素で出来ています
=|BOX|

@関数名

> ※命令文

> RETURN

=
  • 関数名
    • 関数の名前です。他の関数と重複しない、処理内容を端的に表したものを付けましょう
  • 命令文
    • 処理したい内容を記述します
  • RETURN
    • 「この関数はここで終わりです」の合図です2)
    • 処理を終わらせたいタイミングで呼ぶので、場合によっては命令文の中に入る場合や、複数存在する場合があります

関数の使い方

呼び出したい場所で、「CALL」命令を使って呼びます
=|BOX|
CALL 関数名

=

関数の実例

例題:「調教対象の性別を判別し、画面に描画する」処理を行う

最初に関数を用意します
=|BOX|

@性別描画処理
IF TALENT:オトコ == 0 && TALENT:男の娘 == 0
PRINTL 女性
ELSE
PRINTL 男性
ENDIF
RETURN\\ 

| | = |

次に、使いたい場所にCALL命令で呼び出します
=|BOX|

PRINTL あなたは叫んだ。「性別を描画したい!」
;関数を呼ぶ
CALL 性別描画処理

> PRINTL あなたは上を見た。「性別が描画されている!」

=

実際に処理されると、以下のように処理されます(調教相手が女性の場合)
=|BOX|

あなたは叫んだ。「性別を描画したい!」
女性
あなたは上を見た。「性別が描画されている!」

| | = |

式中関数

特殊な関数として、式の中で使える「式中間数」があります
呼ぶときは、式の中で「関数名()」で記述します

たとえば以下の関数を定義・判定した場合……
=|BOX|

;何が何でも1を返す関数です、入れた場所で「1」になります
@絶対に1を返す関数だぞ
#FUNCTIONS
RETURNF 1

| | = | =|BOX|

IF 絶対に1を返す関数だぞ() == 1
PRINTL うわー1が返ってきたー
ENDIF

| | = |

これは関数を呼んでいる場所に「1」が返ってくるので、実際は
「IF 1 = 1」
として処理されます

式中間数の使用例

例題:乳サイズを見る関数“デカパイ判定”を作りメッセージを分岐させる

式中間数として定義する場合、
関数名の真下に「#FUNCTION3)」と入れ、
RETURNの代わりに「RETURNF」を使います。
=|BOX|

@デカパイ判定
#FUNCTION

> ;小さい

IF TALENT:絶壁 || TALENT:貧乳
RETURNF 0
;大きい
ELSEIF TALENT:巨乳 || TALENT:超乳
RETURNF 2
;並
ELSE
RETURNF 1
ENDIF

| | = |

式中間数は「記述した場所」で実行され、その場に「FUNCTIONF」で返した値が代入されます
(下の「デカパイ判定()」がそのまま帰ってきた数字に代わるイメージです)
=|BOX|

PRINTFORML 「なにジロジロ見てるのよ」
;絶壁か貧乳の場合
IF デカパイ判定() == 0
PRINTFORMW 「貧相な乳で悪かったわね」
;巨乳か爆乳の場合
ELSEIF デカパイ判定() == 2
PRINTFORMW 「そんなにでかい胸が珍しいの?」
;それ以外の場合(並乳)
ELSE
PRINTFORMW 「とっとと出でってくれる?」
ENDIF

| | = |

汎用的な関数の格納場所

「ERB¥組み込み関数」「ERB\汎用組み込み関数」もしくは「ERB\私家版追加関数」フォルダ配下に格納されています。

1)
基本に絞るので引数とかは一回忘れます
2)
ほかにも機能はありますが、このページでは割愛
3)
文字列を返す場合は#FUNCTIONS
関数について.txt · 最終更新: (外部編集)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki