Cocos游戏开发中的弯的箭头游戏效果

引言

哈喽大家好,我是亿元程序员。

合集2.0 更新完结已经过去10天了,本来想着躺平休息,没想到一躺就10天了,小伙伴们差点以为我要停更了。

不约而同地发来慰问、提供素材和建议:

小伙伴们 太热情了,因为合集2.0的效果不怎么好,我都还在想还要不要继续3.0,结果让我有点小感动。

先不管3.0的事,更新还是要更新的。

躺平期间翻看了小伙伴们的私信和建议,有这么一条:

打开图片一看,吓了一跳:

言归正传 ,本期带大家看看,如何在Cocos游戏开发中实现"弯"的箭头游戏效果,大家记得三键三连。

弯的箭头游戏

笔者 前面介绍过《Cocos游戏开发中的箭头游戏效果》,是关于前阵子很火的箭头游戏:

其实"弯"的箭头游戏的规则和"直"的是一致的,只是箭头从方方正正的变成了弯弯曲曲的:

那我们在Cocos如何能实现这种弯的箭头效果?

实战前夕

在实战之前,可能就有小伙伴跃跃欲试了:

我知道我知道 ,可以先找美术妹子聊聊天,然后让她帮我出一堆箭头的图片!然后拖到游戏中就可以了!

话不多说,直接开干,玩得就是真实!

1.下载Cocos

打开官网,(这么久没来这个地方,发现有了些许变化),我们直接点击下载:

没想到又跳回了这里:

再次点击 下载,完成CocosDashboard的下载安装。

2.安装编辑器

打开 CocosDashboard,点击安装->安装编辑器->选择我们合适引擎版本->这里我们选择3.8.7

3.新建项目

编辑器 安装好之后,我们创建一个名为arrow_wan2D空项目:

4.资源准备

美术妹子要来一张箭头图片,放到工程assets目录下,并且直接放拖到Canvas下:

5.效果预览

拖完之后我们点击预览就可以看到一个弯曲的箭头啦:

但是只是静态展示,箭头游戏还需要点击动起来,下面我们写点代码

6.写代码

新建 一个Main.ts,也同样直接拖拽到Canvas下:

然后 在脚本开头通过@property(Node)绑定我们的图片:

找到 属性检查器中的Main,如下图所示将图片和脚本绑定:

想要 让图片动起来,我们只需要一个tween动画即可:

7.再次效果预览

**???**怎么停下来了?(哈哈,把距离算短了,问题不大,我们再点一次就好

可以看出,通过图片的形式,箭头没办法像之前那样"逃逸",我们要换个方式

弯箭头实战

下面 我们通过Graphics画箭头,并且让其像箭头逃逸一样的效果动起来。

1.绘制箭头线

绘制箭头 的方式其实很简单,我们只需要通过GraphicsquadraticCurveTo绘制二次贝赛尔曲线路径,输入起点、控制点、终点,最后stroke一下:

效果如下

2.绘制箭头

上面可以看到只是一条线,缺少箭头标志,我们只需要通过计算,再画一个三角形即可:

效果如下

3.让箭头动起来

先说下原理,由于画箭头的时候,我们只有起点、终点和控制点,没办法让箭头沿着轨迹走,于是我们把箭头细化成若干个路径点:

代码如下

想要箭头动起来,我们需要先加一个点击事件:

其中判断是否点击到箭头的方法:

在Update中累加逃出距离,不断重绘:

最后就可以像贪吃蛇一样,只需要移动箭头的头和尾,即可让箭头移动起来:

4.效果演示

以上就是如何在Cocos游戏开发中实现"弯"的箭头游戏效果的全部内容。

结语

不忘初心,保持更新。

那么 问题来了,弯的箭头编辑器应该怎么写呢?,欢迎评论区讨论一下。

本文实例工程 可通过点赞后私信 发送"弯箭头"获取。

更多实战完整源码包含编辑器 可以看亿元Cocos小游戏实战合集2.0(已完结),感谢小伙伴们对创作的支持。


我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助, 也希望通过您能帮助到大家。

实不相瞒,想要个爱心 !请把该文章分享给你觉得有需要的其他小伙伴。谢谢!

推荐文章:

亿元Cocos小游戏实战合集2.0

亿元Cocos小游戏实战合集1.0

老板说最近这款游戏很火让我抄,可是我连玩都玩不明白...

这款值68亿的游戏,你不实战一下吗?安排!

小伙伴说我的拼图游戏用Mask不能合批...

俄罗斯方块谁不会做......啊?流沙版?

最近很火的一个拼图游戏,老板让我用Cocos3.8做一个...

老板说拼图游戏太卷了,让我用Cocos做个3d版本的...

敢不敢挑战用Cocos3.8复刻曾经很火的割绳子游戏?

相关推荐
ct9781 小时前
Promise
前端·javascript·vue.js
怕浪猫1 小时前
Electron 开发实战(十一):自动更新机制|服务架构、公私网更新、版本回滚全解
前端·javascript·electron
AI视觉网奇1 小时前
three-bvh-csg glb分割
开发语言·前端·javascript
zhangfeng11331 小时前
workbuddy ,node.js 每次会在 项目目录上安装 node_modules,能不能一次安装多次使用,为什么 npm 不把包装在全局
前端·npm·node.js
一次旅行1 小时前
CopilotKit实战:用生成式UI打造智能Agent前端
前端·人工智能·ui
禅思院1 小时前
大列表性能优化 · 工程实战·四
开发语言·前端·性能优化·前端框架·php·异步加载
rising start1 小时前
五、Vue3 ref 用法 + Props 完整指南
前端·javascript·vue.js
web打印社区1 小时前
前端html转换pdf并静默打印pdf最佳实现路径
前端·javascript·vue.js·electron·html
Curvatureflight2 小时前
浏览器音频采集实践:麦克风权限、降噪、回声消除与 PCM 转换
前端·javascript·音视频·信息与通信·web·pcm