title: CocosCreator进阶实战第一部分:头脑风暴
date: 2019-12-17 12:00:00
摘要
经过一段时间的学习,相信小伙伴们已经能够写出一些小游戏了。不过不知你是否同我一样,在学习之初不注意代码结构呢?KUOKUO 不敢说现在自己的代码写得有多好,只是希望能让读者有所收获,也是对自己学习的一种总结,对写作技巧的提高!所以 KUOKUO 决定分享 Alive 这一项目!
正文
版本说明
使用 CocosCreator 的 2.1.3 版本开发。 建议先下载完整项目工程,搭配文章“食用”!源码链接在文章最下方。
项目分析
视频演示地址-https://www.bilibili.com/video/av79391712
仔细观察并思考该项目用到了哪些技术?(主角拖动、Boss自动、子弹发射)
层级管理
初学者可能会犯的一个错误就是:子弹是 Boss 自身发出的,那子弹就应该添加到其对应节点上!!!
不要这样,利用空节点进行良好的层级管理,如图。
MusicManager 与 Canvas 同级,用作音乐管理,子弹层、玩家层、Boss层都是空节点用作管理,PlayerManager 略有不同,它的节点宽高适应全屏,因为要走触摸监听。
子弹创建分析
因为项目涉及大量子弹的创建,节点池是必须的,但是我们有四种子弹,所以要四个对象池,我们可以创建对象池的对象池,其实就是一个对象池数组。然后涉及创建不同的子弹,可以使用简单工厂模式。
子弹类分析
子弹多种,我们不能每有一种子弹就单独去实现它的逻辑,我们要善用面向对象思想!该处使用继承,抽象出子弹的通用属性。
子弹发射分析
子弹发射同子弹创建,也可以使用简单工厂。
碰撞检测实现
使用 CocosCreator 碰撞系统,将不同形状的多边形子弹碰撞盒编辑好,然后拖成预制体。
结语
文章第一部分为头脑风暴,接下来会详细的讲解这些是如何用代码实现的。
O(∩_∩)O~~
源码地址