這一關(guān)并不復(fù)雜谤专,而是要用我們學過的知識進行處理。
關(guān)鍵在于循環(huán)該如何結(jié)束吆玖,搞清楚了這一點筒溃,就容易寫循環(huán)了。
地圖上要我們擺放道具的位置沾乘。
想好路線圖
在這里寶石的數(shù)量是隨機出現(xiàn)的怜奖。
代碼如下:
let totalGems = randomNumberOfGems
let character = Character()
let Block1 = Block()
var GNum = 0
world.place(Block1, atColumn: 0, row: 2)
world.place(character, facing: .east, atColumn: 7, row: 3)
while GNum < totalGems {
? ? if character.isOnGem {
? ? ? ? character.collectGem()
? ? ? ? GNum += 1
? ? }else if character.isBlocked && character.isBlockedLeft {
? ? ? ? character.turnRight()
? ? }else if character.isBlocked && character.isBlockedRight {
? ? ? ? character.turnLeft()
? ? }else{
? ? ? ? character.moveForward()
? ? }
}
執(zhí)行后:
把代碼注釋自己記得加上去。