パラメータ 4. 決まった位置に置く

メソッドは関数と似ていますが、

のように特定のオブジェクト(インスタンスなど)に向かって出すコマンドのことです。メソッドにも()がついてましたが、そこに規定の引数をもたせることができます。
このステージでは、world(世界)というオブジェクトに対してplaceというメソッドを使い、好きなキャラクターの位置や向きを移動させます。今まではlet文で用意するだけでいい感じの場所に勝手に配置してくれましたが、ここからはそれも自分で指定しなければなりません。
placeメソッドはworldの設計図にあらかじめ書き込まれているので、自分でfunc文で用意する必要はありません。アプリの出題文にあるように、

などとします。最初のexpertは動かしたい対象、atColumnとrowはコマを指定する為の列番号と行番号です。マップ上の好きなコマをタップすると「(3,0)」のように2つの数字が表示されます。これらをこの順番でatColumnとrowのところに入れてやればOKです。連続2回続けての処理なので関数にしなくてもfor文で繰り返すのが早いでしょう。

ステージのルートとしては、赤いスイッチと宝石の間を基点とすると、「宝石を取り、スイッチを操作し、道を5マス進む」を2回繰り返すとよさそうです。

改善希望!役に立った! (+8 rating, 12 votes)
読み込み中...

“パラメータ 4. 決まった位置に置く” への2件の返信

  1. せっかく瞬間移動を習得したのに、瞬間移動で宝石を集めようか😎

    world.place(expert, atColumn: 1, row: 1)
    expert.collectGem()
    world.place(expert, atColumn: 1, row: 6)
    expert.collectGem()
    world.place(expert, atColumn: 6, row: 1)
    expert.collectGem()

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です