MacOS Playgrounds 学习编程二 第四十四关 数组12-数组的艺术

我们来了到最后一个要学习新内容的关卡了。在这一关,我们能体验一下数组的艺术。

我们要做什么?

好像什么也不用做了

代码如下:

// 创建坐标区域。

let allCoordinates = world.allPossibleCoordinates

let backRow = world.coordinates(inRows: [9])

let insideSquare = world.coordinates(inColumns: [4,5], intersectingRows: [4,5])

let squareCorners = world.coordinates(inColumns: [2,3,6,7], intersectingRows: [3,7])

// 放置平台锁。

let squareLock = PlatformLock(color: .green)

world.place(squareLock, at: Coordinate(column: 1, row: 1))

let cornerLock = PlatformLock(color: .pink)

world.place(cornerLock, at: Coordinate(column: 8, row: 1))

let backLock = PlatformLock(color: .blue)

world.place(backLock, at: Coordinate(column: 4, row: 1))

// 放置角色和平台。

for coor in insideSquare {

    world.place(Platform(onLevel: 4, controlledBy: squareLock), at: coor)

    world.place(Character(name: .hopper), at: coor)

}

for coor in squareCorners {

    world.place(Platform(onLevel: 4, controlledBy: cornerLock), at: coor)

    world.place(Expert(), at: coor)

}

for coor in backRow {

    world.place(Platform(onLevel: 2, controlledBy: backLock), at: Coordinate(column: coor.column, row: coor.row + 1))

    world.place(Character(name: .blu), facing: north, at: coor)

}

// 基于现有角色创建数组。

let blus = world.existingCharacters(at: backRow)

let hoppers = world.existingCharacters(at: insideSquare)

let experts = world.existingExperts(at: squareCorners)

// 玩点比较酷的东西 。

squareLock.movePlatforms(up: true, numberOfTimes: 3)

for hopper in hoppers {

    hopper.turnUp()

    hopper.breakItDown()

}

cornerLock.movePlatforms(up: true, numberOfTimes: 7)

for expert in experts {

    expert.breakItDown()

    expert.argh()

}

for blu in blus {

    blu.jump()

    blu.danceLikeNoOneIsWatching()

}

backLock.movePlatforms(up: true, numberOfTimes: 11)

for blu in blus {

    blu.turnLeft()

    blu.turnLeft()

    blu.argh()

    blu.collectGem()

}

执行后,看看:

原代码

如果你是新手想要学习MacOS Playgrounds学习 学习编程一这部分的知识,可以去读我之前写的小教程,地址在这里:https://www.jianshu.com/p/a0de277374a4

学习完这一部分之后,再继续来接上学习编程二的知识吧。这样子你可以快速的把知识衔接起来了。

还有一部关于密码的小游戏文章,MacOS Playgrounds学习 之 密码,地址在这里:

https://www.jianshu.com/p/1caa4455f409

学习编程二的传送门:

MacOS Playgrounds 学习编程二 第一关 变量1-跟踪记录--https://www.jianshu.com/p/cd02eb8b36e0

MacOS Playgrounds 学习编程二 第二关 变量2-使值增大--https://www.jianshu.com/p/daf7eb351871

MacOS Playgrounds 学习编程二 第三关 变量3-使值递增--https://www.jianshu.com/p/2d08d83863e8

MacOS Playgrounds 学习编程二 第四关 变量4-寻找七颗宝石--https://www.jianshu.com/p/ac77257de394

MacOS Playgrounds 学习编程二 第五关 变量5-三颗宝石,四个开关--https://www.jianshu.com/p/3b20cf2e20b7

MacOS Playgrounds 学习编程二 第六关 变量6-检查等值--https://www.jianshu.com/p/6ebe3b9767fb

MacOS Playgrounds 学习编程二 第七关 变量7-清点开关--https://www.jianshu.com/p/77fcac29a991

MacOS Playgrounds 学习编程二 第八关 变量8-收集指定总数--https://www.jianshu.com/p/672211b2dcfc

MacOS Playgrounds 学习编程二 第九关 类型1-关闭传送门--https://www.jianshu.com/p/ee6627dfdf9f

MacOS Playgrounds 学习编程二 第十关 类型2-开关传送门--https://www.jianshu.com/p/015612088b88

MacOS Playgrounds 学习编程二 第十一关 类型3-设定正确的传送门--https://www.jianshu.com/p/01fc43f5db74

MacOS Playgrounds 学习编程二 第十二关 类型4-世界四角https://www.jianshu.com/p/de6b62fb691f

MacOS Playgrounds 学习编程二 第十三关 类型5-随机宝石遍布各处https://www.jianshu.com/p/9015ac9c1cd4

MacOS Playgrounds 学习编程二 第十四关 初始化1-初始化你的专家https://www.jianshu.com/p/d189ec824c49

MacOS Playgrounds 学习编程二 第十五关 初始化2-训练你的专家https://www.jianshu.com/p/d30765f8db37

MacOS Playgrounds 学习编程二 第十六关 初始化3-使用不同类型的实例https://www.jianshu.com/p/a55976c63c9f

MacOS Playgrounds 学习编程二 第十七关 初始化4-需要两个搭档https://www.jianshu.com/p/24c5b151b12d

MacOS Playgrounds 学习编程二 第十八关 参数1-持续向前走https://www.jianshu.com/p/406d17f570f8

MacOS Playgrounds 学习编程二 第十九关 参数2-归纳函数https://www.jianshu.com/p/74c2122ee6ae

MacOS Playgrounds 学习编程二 第二十关 参数3-上下转动https://www.jianshu.com/p/660e974340ab

MacOS Playgrounds 学习编程二 第二十一关 参数4-放在特定位置https://www.jianshu.com/p/603f952bb7a9

MacOS Playgrounds 学习编程二 第二十二关 参数5-过河https://www.jianshu.com/p/01523e11362d

MacOS Playgrounds 学习编程二 第二十三关 参数6-放置两个角色https://www.jianshu.com/p/b0b8f7d11c60

MacOS Playgrounds 学习编程二 第二十四关 参数7-两个专家https://www.jianshu.com/p/c9cc91d02372

MacOS Playgrounds 学习编程二 第二十五关 参数8-双峰https://www.jianshu.com/p/df01da5a1aad

MacOS Playgrounds 学习编程二 第二十六关 构造世界1-连接世界https://www.jianshu.com/p/b7ea2a0992ca

MacOS Playgrounds 学习编程二 第二十七关 构造世界2-连接并解决https://www.jianshu.com/p/ed5c1b93a87e

MacOS Playgrounds 学习编程二 第二十八关 构造世界3-创建自己的传送门https://www.jianshu.com/p/fc109f83afcc

MacOS Playgrounds 学习编程二 第二十九关 构造世界4-触及阶梯https://www.jianshu.com/p/509b126f0cdb

MacOS Playgrounds 学习编程二 第三十关 构造世界5-浮岛https://www.jianshu.com/p/402408c1331c

MacOS Playgrounds 学习编程二 第三十一关 构造世界6-构建循环https://www.jianshu.com/p/16aa74685251

MacOS Playgrounds 学习编程二 第三十二关 构造世界7-你自己的关卡https://www.jianshu.com/p/a9245af51f13

MacOS Playgrounds 学习编程二 第三十三关 数组1-存储信息https://www.jianshu.com/p/aa06f9fe2225

MacOS Playgrounds 学习编程二 第三十四关 数组2-探索迭代https://www.jianshu.com/p/159eefba4fe9

MacOS Playgrounds 学习编程二 第三十五关 数组3-堆叠砖块https://www.jianshu.com/p/88270712ccd4

MacOS Playgrounds 学习编程二 第三十六关 数组4-按序排列https://www.jianshu.com/p/ee4fc9f8df5c

MacOS Playgrounds 学习编程二 第三十七关 数组5-附加到数组https://www.jianshu.com/p/196452e1beda

MacOS Playgrounds 学习编程二 第三十八关 数组6-建岛人https://www.jianshu.com/p/ef15c4e6764d

MacOS Playgrounds 学习编程二 第三十九关 数组7-附加移除的值https://www.jianshu.com/p/2ab83267f87d

MacOS Playgrounds 学习编程二 第四十关 数组8-修复索引超出范围错误https://www.jianshu.com/p/eeb7eab87be6

MacOS Playgrounds 学习编程二 第四十一关 数组9-生成地形https://www.jianshu.com/p/3399fe756813

MacOS Playgrounds 学习编程二 第四十二关 数组10-随机化的陆地https://www.jianshu.com/p/b5a6861f0cf9

MacOS Playgrounds 学习编程二 第四十三关 数组11-换种方法创建数组https://www.jianshu.com/p/d32144a7d3c5

MacOS Playgrounds 学习编程二 第四十四关 数组12-数组的艺术https://www.jianshu.com/p/740c6c7306e8

MacOS Playgrounds 学习编程二 第四十五关 数组13-创造世界https://www.jianshu.com/p/1abcd301535f

你可能感兴趣的:(MacOS Playgrounds 学习编程二 第四十四关 数组12-数组的艺术)