ブロックで始める初心者向けプログラミング
チャプター
>
レベル
関数と手続き
関数内での条件の使用
目標
条件を使い、1つのカスタム関数で門を開け、橋を修復する。
沼地を横断する道にはいくつかの障害があり、その一部は同じもので、条件付きの1つのカスタム関数を使って自動的に通過することができます。
進路には、開け閉めする必要があるドアと修復する必要がある橋という2種類の障害があります。関数の引数として "open" と "build" のコマンドを受け取り、両方を処理できるカスタム関数を作成してください。
define function ブロックを使用して、パラメーター action を持つ navigate_swamp という名前の関数を作成します。関数内で if ブロックを使用して、action パラメーターの値を確認してください。
カスタム関数内の build 条件(action が "build" の場合)では、build ブロックと "bridge" を使って、マップの中央にある倒壊した橋を修復します。プレイヤーが前進して橋を3回(3回分)修復できるように設定し、沼地を横断できるようにします。
カスタム関数のもう一つのオプション、門を開け閉めするための処理(action が "open" の場合)では、open と close ブロックを使用します。ドアを開け、2歩前進し、左に2回回って向きを変えてドアを閉じ、再度向きを変えるように設定してください。
ドアの前にある暗い X マークまで歩き、call function ブロックを使って引数に "open" を渡し、navigate_swamp を呼び出して門を通過します。また、フィールド内のすべての丸太を集め、最初に見つけた明るい X マークまで進んだら、call function ブロックを使って引数に "build" を渡し、navigate_swamp を呼び出して小川を渡ってください。
パスの最後にある星印で示された出口に到達し、カスタム関数を使用してレベルを完了させましょう。