スクリプト/はじめてのRmakeスクリプト / 第08回 ユーザ定義関数をマスターしよう
最終投稿者:
aoihikawa
更新:2012/07/19 21:03:27

はじめてのRmakeスクリプト
第08回 ユーザ定義関数をマスターしよう




08-01 ユーザ定義関数














#宿屋のユーザ関数 def shopInn() #変数「s」に表示するメッセージ文字列を入れる s = "お泊りですか?\n一晩10Gになります" #speakWithSelect関数の戻り値を元に複数分岐する case speakWithSelect(2, "はい", "いいえ", s) when 0 #「0」番目の選択肢が選ばれた場合 speak("ようこそ こちらの部屋へどうぞ") when 1 #「1」番目の選択肢が選ばれた場合 speak("無茶はされないよう") end end #宿屋のユーザ関数を使う(1回目) shopInn() #宿屋のユーザ関数を使う(2回目) shopInn()

















08-02 ユーザ定義関数と引数








#宿屋のユーザ関数 def shopInn(g) #変数「s」に表示するメッセージ文字列を入れる s = "お泊りですか?\n一晩" + toString(g) + "Gになります" #speakWithSelect関数の戻り値を元に複数分岐する case speakWithSelect(2, "はい", "いいえ", s) when 0 #「0」番目の選択肢が選ばれた場合 speak("ようこそ こちらの部屋へどうぞ") when 1 #「1」番目の選択肢が選ばれた場合 speak("無茶はされないよう") end end #宿屋のユーザ関数を使う shopInn(50)









08-03 ユーザ定義関数と戻り値










#宿屋のユーザ関数 def shopInn(g) #変数「s」に表示するメッセージ文字列を入れる s = "お泊りですか?\n一晩" + toString(g) + "Gになります" #変数「f」にブーリアン「false」を初期値として入れる f = false #speakWithSelect関数の戻り値を元に複数分岐する case speakWithSelect(2, "はい", "いいえ", s) when 0 #「0」番目の選択肢が選ばれた場合 speak("ようこそ こちらの部屋へどうぞ") #変数「f」の値を「true」に変更する f = true when 1 #「1」番目の選択肢が選ばれた場合 speak("無茶はされないよう") end #関数の戻り値に、変数「f」の値を設定する return f end #宿屋のユーザ関数の結果によって、分岐処理を行う if shopInn(50) speak("宿屋に泊まったよ") else speak("宿屋に泊まらなかったよ") end








08-04 第08回 まとめ問題集




問題01
次のスクリプトにユーザ定義関数を使用して
実行結果が「おはよう」と表示されるよう、行を追加してください
#ここに追加する speakAisatu()
問題02
次のスクリプトにユーザ定義関数と引数を使用して
実行結果が「こんにちは」と表示されるよう、行を追加してください
#ここに追加する case x when 0 speak("おはよう") when 1 speak("こんにちは") when 2 speak("こんばんは") end end speakAisatu(1)
問題03
次のスクリプトにユーザ定義関数と引数を使用して
実行結果が「こんにちは 勇者様」と表示されるよう、行を追加してください
#ここに追加する speak(speakAisatu(1) + " 勇者様")


<連載一覧>
第01回 変数と数値をマスターしよう
第02回 変数と文字列をマスターしよう
第03回 変数とフラグをマスターしよう
第04回 配列変数をマスターしよう
第05回 通常変数をマスターしよう
第06回 数値の応用をマスターしよう
第07回 時間の動作をマスターしよう
第08回 ユーザ定義関数をマスターしよう
第09回 スクリプト用語のまとめ
この記事についてご質問等がありましたら
こちらのブログ記事のコメントへご投稿、
よろしくお願いいたします。
コメントする
コメントするには、ログインする必要があります。
コメント一覧

アクティビティフィードで送信したか送信してないか返り値で表せる。ってかいてあったので調べてここにたどり着いたんですが、この場合、trueとfalseはどう書けばいいんでしょうか。

関数と戻り値(返り値)の利用に関する記事はこちらになります