Cocos Creator | 飞刀大乱斗开发教程系列(二)
预览效果
具体内容
■ 这一期,主要讲解主页中间人物效果的实现。也就是,在下方列表选择不同人物,上方显示不同的人物,播放不同的效果,即下图的效果实现,此部分也是采用预制 Prefab 进行实现。
英雄Hero预制组成
■ 英雄预制 Hero 主要四部分组成:旋转的光、大小变化的光球、英雄本身、英雄的武器。这四部分,都会根据英雄的不同等级,动态的更换对应的纹理即可,游戏过程中,使用的动画,无须变化。
■ 使用到的几个精灵,都需要根据不同等级,进行纹理的更换,于是就封装了一个通用的方法,传入精灵节点和纹理所在路径,使用 cc.loader 动态加载纹理,加载成功以后,直接显示出来。
动画的显示
■ 这一部分,有 3 个节点需要使用到动画:旋转的光、放大缩小的光球、旋转的刀。每一个节点都挂载一个启动播放的动画,动画的具体实现,直接在 Cocos Creator 编辑器内编辑好保存就行。
■ 光旋转效果,只需要做旋转动画即可。在动画中,加入旋转角度,就可以简单的实现。显示的效果好不好,可以预览观察,直到调整到合适的旋转节奏就行。
■ 武器旋转效果,和旋转的光,是用的同一种节奏进行的,所以本实例中,旋转的武器和旋转的光,都是使用上图效果中的同一个动画。播放时,设置成循环播放就可以实现不断的播放效果了。
■ 放大缩小光球,也和上面动画效果差不多,只是动画选择的是 scale 属性,不断的进行放大缩小就行,也是一样,加入循环播放的控制。
■ 以上所有动画,在游戏中是同时进行播放的,最后看起来的效果就如同最开始的预览一样,球和武器一起旋转,同时光球不断的放大缩小。
武器添加
■ 这里将的武器添加,是指初始化时,根据不同等级的英雄,默认添加添加到英雄周围旋转的飞刀,都是一次性添加的,没有动态添加几把的效果,这个后期会讲到。
■ 英雄上所有的武器,共用一个根节点,根节点作为容器,管理所有武器。这么做的好处是,多个武器需要做动画时,只需要按照规则把武器添加好,对根节点做动画即可。添加的方式是,以中心点为圆点,根据武器数,计算出每把武器之间的角度,然后算出每把武器的 x 坐标值和 y 坐标值。
■ 假设武器锚点离中心点的偏移量是 Offset,角度是 angle,那么就容易算出武器的横坐标 x = Offset * sin(angle),同理,可算出武器的纵坐标 y = Offset * cos(angle)。按照这个原理,就可以实现武器按照角度分布,添加到武器根节点上。计算过程中,需要注意角度和弧度的转换,不同版本的 Cocos Creator 设置角度的 API 可能有差异,这个看官方文档就行。
选中未选中处理
■ 这里,有添加一个额外处理,正常情况下,人物使用的纹理和选中使用的纹理,是有差异的,这个功能,主要是用在后期的游戏中的,目前只需要关注有这个功能即可。这个实现,也很简单,就是监听触摸事件,触摸开始更换一个纹理,触摸结束,再还原回来就行。
■ 英雄有两种状态,进攻状态和防御状态,按下时是进攻,松开以后是防御状态。攻击状态下,武器会扩大攻击范围,武器有一定的倾斜度。防御状态下,武器笔直向外,离英雄更近。只需要单独的做每个武器做动画,修改武器的位置和偏移角度,计算方法类似上面的添加武器。
Cocos Creator | 飞刀大乱斗开发教程系列(二)的更多相关文章
- Cocos Creator | 飞刀大乱斗开发教程系列(三)
预览效果 具体内容 ■ 这一期,主要讲解游戏过程中,通过触摸滑动,控制人物的运动方向,以及游戏过程中,人物运动区域的控制.如下图,人物通过滑动控制运动方向,即是往哪个方向滑动,人物就往哪个方向移动 ...
- Cocos Creator | 飞刀大乱斗开发教程系列(一)
预览效果 具体内容 ■ 这一期,主要讲解主页下方列表选项如何实现.也就是游戏开始后,加载所有现有的英雄列表,这一功能的实现,如下图部分. ■ 列表使用 ScrollView 实现,横向滚动,设置好上下 ...
- cocos creator策略类手游开发教程
目录 大小6.83GB,Mp4格式,语言:中文 扫码时备注或说明中留下邮箱 付款后如未回复请至https://shop135452397.taobao.com/ 联系店主
- GridView的 PreRender事件与 RowCreated、RowDataBound事件大乱斗
GridView的 PreRender事件与 RowCreated.RowDataBound事件大乱斗 之前写了几个范例,做了GridView的 PreRender事件与 RowCreated.Row ...
- python红蓝英雄大乱斗(面向对象实现)
红蓝英雄大乱斗 游戏规则 ''' 有红蓝两方英雄(可自定义个数) 随机一方英雄使用随机攻击方式攻击另一方英雄,任意一方英雄全部阵亡则游戏结束 每个英雄有 名字.生命值.普通攻击.Q技能攻击.W技能攻击 ...
- iOS 11开发教程(二)编写第一个iOS 11应用
iOS 11开发教程(二)编写第一个iOS 11应用 编写第一个iOS 11应用 本节将以一个iOS 11应用程序为例,为开发者讲解如何使用Xcode 9.0去创建项目,以及iOS模拟器的一些功能.编 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二十二):如何安装 Nuget(dll) 后使用项目源代码调试
最近碰到开发者问:我使用 nuget 安装了 Senparc.Weixin SDK,但是有一些已经封装好的过程想要调试,我又不想直接附加源代码项目,这样就没有办法同步更新了,我应该怎么办? 这其实是一 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二):成为开发者
Senparc.Weixin.MP SDK 微信公众平台开发教程(二):成为开发者 这一篇主要讲作为一名使用公众平台接口的开发者,你需要知道的一些东西.其中也涉及到一些微信官方的规定或比较掩蔽的注意点 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(二十):使用菜单消息功能
在<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>教程中,我们介绍了如何使用“客服接口”,即在服务器后台,在任意时间向微信发送文本.图文.图片等不 ...
随机推荐
- jenkins集成错误 标签: 发布 2016-01-10 20:45 747人阅读 评论(21) 收藏
进入ITOO的项目以后,终于要将自己负责的模块在jenkins上面集成发布了.首先自己按照文档要求一步一步的将配置完成,然后构建,不错所料出错了,经过修改,终于构建成功!构建成功以后就没再管了,结果第 ...
- MySQL按天,按周,按月,按时间段统计【转载】
自己做过MySQL按天,按周,按月,按时间段统计,但是不怎么满意,后来找到这位大神的博客,转载一下,谢谢这位博主的分享 知识点:DATE_FORMAT 使用示例 select DATE_FORMAT( ...
- 我钟爱的HTML5和CSS3在线工具【转】
我真的喜欢上了HTML5, CSS3, JavaScript编程,但是有一些代码还是需要一些辅助工具来做才行,例如,CSS3的Gradient渐变如果手写代码的话真的不爽,还有像animation动画 ...
- PHPstorm相关设置以及快捷键
转自:http://blog.csdn.net/fenglailea/article/details/12166617 1.界面中文方框问题 Settings->Appearance中Theme ...
- 洛谷P1488 肥猫的游戏 题解 博弈论入门
题目链接:https://www.luogu.org/problem/P1488 其实这道题目我只需要 \(n\) 以及黑色三角形的三个端点编号就可以了. 我们假设在一个 \(n\) 边形中,黑色三角 ...
- ABSD 基于架构的软件设计方法方法简介(摘抄)
ABSD(Architecture-Based Software Design)基于架构的软件设计方法 有三个基础: 第一个基础是功能分解.在功能分解中,ABSD方法使用已有的基于模块的内聚和耦合技术 ...
- H3C 配置帧中继交换
- POJ 2763"Housewife Wind"(DFS序+树状数组+LCA)
传送门 •题意 一对夫妇居住在 xx村庄,给村庄有 $n$ 个小屋: 这 $n$ 个小屋之间有双向可达的道路,不会出现环,即所构成的图是个树: 从 $a_i$ 小屋到 $b_i$ 小屋需要花费 $w_ ...
- python编程之操作系统基础
操作系统发展史: 最早的计算机没有操作系统的概念:是使用打孔机和打孔卡片来进行计算的.只能一个一个处理. 后来产生了批处理系统,可以批量处理,进而加快计算的速度. 批处理系统:串行 数据处理速度加快 ...
- SQL 常见出现错误(附件、保存表、脱机、自增序列号 )
一.问题如图所示: 当填了某些数据,按“保存”时出现这个问题怎么解决? 1.打开“工具”-“选项”-“Designers” , 2.选择如下去勾: 二.当附加数据库的时候出现如下错误: 在附件文件上选 ...