MacOS Playgrounds 學(xué)習(xí)編程二 第二十八關(guān) 構(gòu)造世界3-創(chuàng)建自己的傳送門(mén)

我們學(xué)會(huì)放磚塊后,現(xiàn)在來(lái)試試放傳送門(mén),

為什么是放傳送門(mén),而不是放磚塊?讓我們用圖來(lái)看看,放傳送門(mén)要放幾個(gè),放磚塊要放幾個(gè)?

可見(jiàn),傳送門(mén)只要放一對(duì)就可完成,而磚塊要放很多了。

代碼如下:

let greenPortal = Portal(color: #colorLiteral(red: 0.4028071761, green: 0.7315050364, blue: 0.2071235478, alpha: 1))//系統(tǒng)內(nèi)的顏色是可以點(diǎn)選的。不用這樣子寫(xiě)。

world.place(greenPortal, atStartColumn: 1, startRow: 5, atEndColumn: 5, endRow: 1)

var gNum = 0

func Portalchico() {

if greenPortal.isActive == false {

Portaltrue()

}else{

Portalfalse()

}

}

func Portaltrue() {

greenPortal.isActive = true

}

func Portalfalse() {

greenPortal.isActive = false

}

while? gNum < 8 {

? ? if isOnGem {

? ? ? ? collectGem()

? ? ? ? gNum += 1

? ? }else {

? ? ? ? turnLeft()

? ? }

? ? if isBlocked {

? ? ? ? turnLeft()

? ? ? ? turnLeft()

? ? ? ? Portalchico()? ?

? ? }//else if !isBlocked && !isBlockedLeft && !isBlockedRight{

? ? //turnRight()

? ? //}

? ? moveForward()

}

//這個(gè)方法多做了許多的無(wú)用功,還有更好的方法嗎?

這是我為了讓角色自己完成任務(wù)寫(xiě)的方法,實(shí)際上還是有很多其他的方法,你可以試試自己寫(xiě)一下。執(zhí)行后:

注釋不一定完整,請(qǐng)?jiān)谧约旱拇a上寫(xiě)全注釋。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容