「我学游戏」 SpriteKit简单游戏入门demo (三)

上两篇学习SpriteKit的基础知识,本篇举一个简单的游戏demo

1,首先创建新项目,选择iOS->Game创建

创建好之后会发现多了这四个文件,后来发现暂时用不到,果断将他们删除了,GameViewController

就相当于普通项目的ViewController

「我学游戏」 SpriteKit简单游戏入门demo (三)

项目框架

2,创建基于SKScene的GameScreen

「我学游戏」 SpriteKit简单游戏入门demo (三)

GameScreen用到的属性

在它的初始化方法中添加背景音乐,为甚不先加精灵元素(SKSpriteNode)呢,因为本人被这个背景音乐搞得头大,一直crash.抱着对技术负责的心态,去搜索相关的东西,无论是AVAudioPlayer还是AVPlayer都播放改背景音乐有问题,这时候有点怀疑是不是音乐的问题,果断去百度下载音乐,无奈都是各种坑,版权无法下载,最后还是在本机搜索到一个MP3格式的文件,放进去测试项目可以播放,然后放进游戏也是很流畅.可能是版本升级之后,改背景音乐不支持了吧(也可能改音乐文件中毒了),最后才加进去了背景音乐(添加在初始化方法中).

「我学游戏」 SpriteKit简单游戏入门demo (三)

播放本地音乐

然后将玩家添加到screen中

「我学游戏」 SpriteKit简单游戏入门demo (三)

添加玩家

添加怪物并且让它们从屏幕右侧跑出来,在屏幕左侧的时候从屏幕中移除,同时添加到数组中.值得一提的是为了让游戏不太死板,在设置移动速度的时候,通过随机数生成随机的速度.

「我学游戏」 SpriteKit简单游戏入门demo (三)

添加玩家

玩家和怪物都添加完毕之后,是时候让他们互动起来了,这里我们在touchesBegan:

方法中实现,通过获取当前点击的location,计算偏移量和移动距离添加子弹,在子弹出屏幕的时候移除掉.相比于静态的UIView,SKScreen中是一个动态监测,它的-(void)update:(CFTimeInterval)currentTime方法可以为我们提供实时的精灵对象位置信息,通过遍历怪物和子弹的位置关系,判断是否打中怪物,同时做相应的移除处理,并且计算得分.然后通过得分情况展示对应的展示结果的Screen.

展开阅读全文

页面更新:2024-03-09

标签:放进   游戏   初始化   果断   子弹   背景音乐   怪物   得分   入门   屏幕   速度   位置   精灵   简单   玩家   方法   项目   数码

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top