スポンサーリンク
スポンサーリンク
解答例
let block1 = Block()
let block2 = Block()
let block3 = Block()
let block4 = Block()
let block5 = Block()
world.place(block1, atColumn: 2, row: 2)
world.place(block2, atColumn: 2, row: 2)
world.place(block3, atColumn: 4, row: 2)
world.place(block4, atColumn: 6, row: 2)
world.place(block5, atColumn: 6, row: 2)
func crossBridge() {
turnRight()
move(distance: 4)
collectGem()
turnLeft()
turnLeft()
move(distance: 4)
turnRight()
}
for i in 1 ... 3 {
move(distance: 2)
toggleSwitch()
crossBridge()
}
解説
offスイッチを曲がった先に宝石があるのですが、
2ブロック分下がったところはジャンプもできないし、
全部をとにかくブロックで埋めて平面にした方が、ゴールしやすいようです。
1つのブロックにつき、1つずつ名前を割り当てていき、ブロック型を宣言します。
あとは座標を調べ、2個必要なところには全く同じ座標を代入することで
重ねて置くことができます。
画面の角度を変えて、どこに何個置けばいいのか確認しましょう。
あとは、関数とforループでゴールできますね。
要点まとめ
・初期化すれば、同じ型のインスタンスを複数使うことができる
スポンサーリンク