MacOS Playgrounds 学习编程二 第二十八关 构造世界3-创建自己的传送门

我们学会放砖块后,现在来试试放传送门,

为什么是放传送门,而不是放砖块?让我们用图来看看,放传送门要放几个,放砖块要放几个?

可见,传送门只要放一对就可完成,而砖块要放很多了。

代码如下:

let greenPortal = Portal(color: #colorLiteral(red: 0.4028071761, green: 0.7315050364, blue: 0.2071235478, alpha: 1))//系统内的颜色是可以点选的。不用这样子写。

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()

}

//这个方法多做了许多的无用功,还有更好的方法吗?

这是我为了让角色自己完成任务写的方法,实际上还是有很多其他的方法,你可以试试自己写一下。执行后:

注释不一定完整,请在自己的代码上写全注释。

你可能感兴趣的:(MacOS Playgrounds 学习编程二 第二十八关 构造世界3-创建自己的传送门)