1.3 挑战
自行练习所学习过的知识,这对你来说是很重要的,因此,本书的每一章末尾都会按照从易到难的顺序,给出1到3个挑战。
我强烈建议你尝试一下所有的挑战,因为尽管按照这个按部就班的教程也可以学到东西,但通过自己解决问题,则可以学到更多的知识。此外,每一章都将从前一章的挑战所完成的地方开始继续,因此,你将会连续地学习。
如果你遇到困难,可以在本章的资源中找到解决方案,但是,要从本书中获得尽可能大的收获,在查看解决方案之前,请尽自己最大的努力去尝试。
挑战1:添加僵尸
现在,我们游戏有了一个漂亮的背景,但是,“明星”还没有出场。作为第一个挑战,为僵尸打开大门吧!
提示:
在GameScene中,添加一个名为zombie的SKSpriteNode类型的常量属性。使用名为zombie1的图像来初始化它。
在didMoveToView()中,把这个僵尸放置到(400, 400)。
还是在didMoveToView()中,把这个僵尸添加到场景中。如果操作正确,你会看到僵尸出现在屏幕上了,如图1-28所示。
图1-28
在iPad Air 2模拟器上运行游戏,以证实它能够在该设备上工作,只不过似乎有一个稍大一点的可视区域,如图1-29所示。
图1-29
挑战2:进一步的文档
本章介绍了要开发游戏所需要了解的与精灵和节点相关的所有知识。
然而,知道在遇到问题或困难的时候应该到哪里去查找更多的信息,将会是比较好的。我强烈推荐你查看Apple的SKNode Class Reference和SKSpriteNode Class Reference,这两个文档介绍了我们在Sprite Kit中最常用到的两个类,并且,基本熟悉它们所包含的属性和方法是有好处的。
可以从Xcode的主菜单中选择Help\Documentation and API Reference,并且搜索SKNode和SKSpriteNode以找到相关的参考,如图1-30所示。
图1-30
现在,来完成第2个挑战,使用这些文档所提供的信息,将僵尸的大小放大为原来的两倍(缩放为2x)。回答这个问题:你是否使用了SKSpriteNode或SKNode的一个方法来做到这一点?