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~~

源码地址

https://github.com/KuoKuo666/Alive

CocosCreator进阶实战第一部分:头脑风暴相关推荐

  1. javascript进阶教程第一章案例实战

    javascript进阶教程第一章案例实战 一.学习任务 通过几个案例练习回顾学过的知识 通过练习积累JS的使用技巧 二.实例 练习1:删除确认提示框 实例描述: 防止用户小心单击了"删除& ...

  2. MATLAB实战系列(二十九)-头脑风暴优化(BSO)算法求解旅行商问题(TSP)-交叉算子

    前言 代码明细可参见 MATLAB实战系列(八)-头脑风暴优化(BSO)算法求解旅行商问题(TSP)(附MATLAB代码) 交叉算子的实现机制 我们还是以求解TSP问题为例,8个城市的坐标如下所示. ...

  3. 聊天机器人落地及进阶实战 | 公开课速记

    嘉宾 | 邵浩 编辑 | suiling 来源 | AI科技大本营在线公开课 近年来,聊天机器人技术及产品得到了快速的发展.聊天机器人作为人工智能技术的杀手级应用,发展得如火如荼,各种智能硬件层出不穷 ...

  4. 头脑风暴是如何毁掉创意的?

    2019独角兽企业重金招聘Python工程师标准>>> 设 想以下场景:你在思考公司下一步的发展战略.为了集思广益得到最好的方案,你召集了团队里面的人一起开会.原本你是这样想的,一次 ...

  5. 【沟通之道】头脑风暴-女人的心思你别猜

    作者:范军 (Frank Fan)新浪微博:@frankfan7   微信:GetToCloud   一位大叔在海边低着头没精打采的走着,远处天空的黑云慢慢压了过来,他也是一脸愁云惨雾.他想发泄一下, ...

  6. MySQL的进阶实战篇

    关联文章: MySQL的初次见面礼基础实战篇 MySQL的进阶实战篇 本篇上一篇博文MySQL的初次见面礼基础实战篇的延续,是mysql的进阶内容的记录,本篇主要知识点如下: 进阶实战篇 进阶实战篇 ...

  7. ROS 机器人操作系统进阶实战

    ROS(Robot Operating System) 是一个开源的机器人操作系统,目的是提供开发平台.工具及生态给开发人员,可以让开发人员快速开发.本课程通过精心设计的案例,分析技术要点.理解运行原 ...

  8. Linux Capabilities 入门教程--进阶实战篇

    该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 Linux Capabilities 入门教程:进阶实战篇 ...

  9. 【第五组】头脑风暴+核心竞争力+NABCD+个人(用例+功能+技术说明书) 最后修改时间 2017.07.13...

    2017.07.13版 因为对之前版本做了较多修改,所以重新发了,并且在博客下方保留原有版本作为记录. 头脑风暴结果: 刚开始我们无法确定要做一个什么样的应用程序,总结之前可视化课程的作业,我们提出了 ...

最新文章

  1. DLPack构建跨框架的深度学习编译器
  2. 《C++面向对象高效编程(第2版)》——3.17 编写内存安全类
  3. [转]淘宝下单高并发解决方案
  4. 定位导致物化视图无法快速刷新的原因
  5. hive不在同一台机 hue_环境篇:呕心沥血@CDH线上调优
  6. 华为面试题算什么,这个背会了外企随便进
  7. python全局解释器锁 tensorflow_Python即将出局?Julia和Swift能取而代之吗?
  8. 医院耗材管理系统开发_17
  9. 网易游戏(雷火)一、二、三交叉面
  10. MariaDB安装报1067错误解决方式
  11. 中国20强游戏公司2022上半年年报分析:复合因素下业绩增长承压,海外新兴市场蕴含增长新趋势
  12. word文档通配符换行_Word中如何使用通配符进行查找和替换
  13. C# 自定义鼠标光标
  14. Windows 2003系统25招加速大法
  15. CryEngine Plugin 创建
  16. BurpSuit Intruder密码爆破的另类使用——有道词典批量收藏并导出到quizlet
  17. UITextField类对象左视图leftView无效--iOS开发
  18. 【坐标转换】四参数和七参数计算,并正向转换坐标(附完整源代码地址)
  19. 乐视X625手机刷机(全三个版本)官方包附刷机教程OEM解锁
  20. 守护进程——解放本地PC

热门文章

  1. 【STM32】Keil5(MDK-ARM)安装教程详解
  2. Mysql 基础操作知识专题
  3. java基础面试题总结(2023版)
  4. 第19集丨本来无一物,何处惹尘埃
  5. 十月最新,小红书面试经历,问答超详细!
  6. html超级玛丽游戏源码,超级玛丽HTML5源代码学习------(一)
  7. 计算机课授课方法有哪些,计算机课程教学模式与方法
  8. AS608 指纹模块驱动代码
  9. 交换机和路由器的区别在哪里 一针见血通俗解答---土巴兔
  10. 魔兽世界地图插件制作代码、