返回顶部
首页 > 资讯 > 精选 >CocosCreator如何实现技能冷却效果
  • 729
分享到

CocosCreator如何实现技能冷却效果

2023-06-14 13:06:30 729人浏览 八月长安
摘要

这篇文章主要介绍CocosCreator如何实现技能冷却效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!CocosCreator实现技能CD效果在很多游戏里面都有技能,玩家在点击技能按钮后技能会有一个冷却的时间,当

这篇文章主要介绍CocosCreator如何实现技能冷却效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

CocosCreator实现技能CD效果

在很多游戏里面都有技能,玩家在点击技能按钮后技能会有一个冷却的时间,当冷却时间过了之后技能才可以再次使用

在cocos中实现这个效果很简单,需要用到精灵组件
首先将技能按钮的图片拖到canvas

CocosCreator如何实现技能冷却效果

然后在技能按钮下新建一个label
像这样

CocosCreator如何实现技能冷却效果

然后新建TS脚本把下面的代码复制粘贴进去

const {ccclass, property} = cc._decorator;@ccclassexport default class NewClass extends cc.Component {    @property(cc.Sprite)    skill:cc.Sprite = null;//技能精灵    @property(cc.Label)    time_label:cc.Label = null;//显示技能冷却剩余时间的文字    @property    time:number = 3;//技能冷却时间    @property    isshow_label:boolean = true;//是否显示文字    onLoad(){        this.skill.fillRange = 1;//游戏开始的时候技能的填充范围是1    }    update(dt:number){        if(this.skill.fillRange != 1){//如果技能精灵的填充不为1 也就是说已经使用了技能            this.skill.fillRange += dt / this.time;//恢复技能   每帧恢复的值为帧率 / 技能冷却时间            this.time_label.string = Math.floor(((1 - this.skill.fillRange) * this.time)).toString();//每帧更新技能剩余时间            //技能剩余时间首先1 - 技能精灵的填充度再 * 技能冷却时间,最后Math.floor取整            if(this.isshow_label == true){//如果可以显示文字                this.time_label.node.active = true;//显示技能冷却剩余时间            }        }        if(this.skill.fillRange == 1){//如果技能精灵的填充为1 也就是说技能还没被使用            this.skill.getComponent(cc.Button).interactable = true;//启动按钮            this.time_label.node.active = false;//隐藏技能冷却剩余时间        }    }    onbtn(){//按下技能按钮时的事件        this.skill.fillRange = 0;//技能填充范围设置为0        console.log("使用了技能");//打印log        this.skill.getComponent(cc.Button).interactable = false;//禁用按钮    }}

每一句代码我都写了很详细的注释哦

把写好的脚本挂到技能按钮上,然后绑定节点

CocosCreator如何实现技能冷却效果

可以根据需要随意修改

  • Time是技能的冷却时间,想改多少改多少

  • Isshow_time是是否显示冷却剩余时间的文字,如果不想让文字显示就把他勾掉,默认是显示

光写代码是不够的,还需要给技能按钮做一些设置
需要改动sprite(精灵)组件并且给技能按钮添加button(按钮)组件

CocosCreator如何实现技能冷却效果

按照图片调好

  1. Type 需要把精灵的渲染模式改为填充

  2. Fill Type 把填充方式改为扇形填充

  3. Fill Center 修改扇形的中心点 0,0为左下角1,1为右上角 我们希望扇形围绕中心点来填充,所以改成0.5,0.5

  4. Fill Range 把填充总量改为1

最后给技能按钮添加button(按钮)组件

CocosCreator如何实现技能冷却效果

绑定的事件就是onbtn,为了好看再把button组件的Transition改为COLOR

CocosCreator如何实现技能冷却效果

大功告成,这样就可以了
点击运行看一下

CocosCreator如何实现技能冷却效果

真不错

在点击技能按钮的时候想实现什么功能就把代码都放在onbtn里面就可以了

CocosCreator如何实现技能冷却效果

放这里面就可以

比如可以在按下技能按钮的时候播放一个特效动画

CocosCreator如何实现技能冷却效果

以上是“CocosCreator如何实现技能冷却效果”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: CocosCreator如何实现技能冷却效果

本文链接: https://lsjlt.com/news/271059.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CocosCreator如何实现技能冷却效果
    这篇文章主要介绍CocosCreator如何实现技能冷却效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!CocosCreator实现技能CD效果在很多游戏里面都有技能,玩家在点击技能按钮后技能会有一个冷却的时间,当...
    99+
    2023-06-14
  • CocosCreator实现技能冷却效果
    CocosCreator实现技能CD效果 在很多游戏里面都有技能,玩家在点击技能按钮后技能会有一个冷却的时间,当冷却时间过了之后技能才可以再次使用 在cocos中实现这个效果很简单,...
    99+
    2024-04-02
  • CSS如何实现点赞效果心形效果
    小编给大家分享一下CSS如何实现点赞效果心形效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! CSS实现点赞效果心形效果 <!DOCTYPE html> <htm...
    99+
    2024-04-02
  • css3如何实现animation效果
    小编给大家分享一下css3如何实现animation效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   &nbs...
    99+
    2024-04-02
  • 如何实现php+loading效果
    小编给大家分享一下如何实现php+loading效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!   首先准备一段loading的html:   动手实现一个网页加载进度loadin...
    99+
    2024-04-02
  • 如何用CocosCreator实现射击小游戏
    分析下制作步骤: 1. 准备好资源,搭建场景 资源的话可以自己到网上找,也可以直接用我的也行;创建好相应文件夹,把资源放到res文件夹下; 搭建场景: 第一步:创建一个单色精灵(Sc...
    99+
    2024-04-02
  • jquery如何实现隔几秒才能触发效果
    小编给大家分享一下jquery如何实现隔几秒才能触发效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
  • js如何实现抽奖效果
    小编给大家分享一下js如何实现抽奖效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!效果图:代码如下:<!DOCTYPE&...
    99+
    2024-04-02
  • jquery如何实现拖动效果
    这篇文章主要介绍jquery如何实现拖动效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码如下:<!DOCTYPE html> <html ...
    99+
    2024-04-02
  • jQuery如何实现弹幕效果
    这篇文章主要为大家展示了“jQuery如何实现弹幕效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery如何实现弹幕效果”这篇文章吧。效果如下:代码如下...
    99+
    2024-04-02
  • Vue如何实现动画效果
    这篇文章主要介绍Vue如何实现动画效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体如下:1.哪些元素/那些组件适合在那些条件下实现动画效果条件渲染 (使用 v-if)条件展示 ...
    99+
    2024-04-02
  • canvas如何实现滤镜效果
    这篇文章给大家分享的是有关canvas如何实现滤镜效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下<!DOCTYPE html>  ...
    99+
    2024-04-02
  • Bootstrap如何实现翻页效果
    这篇文章主要介绍Bootstrap如何实现翻页效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果图最后一页时:最开始一页时:实现①、翻页组件的布局<%@ page...
    99+
    2024-04-02
  • canvas如何实现弹幕效果
    这篇文章主要介绍canvas如何实现弹幕效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!代码如下<!DOCTYPE html> <html l...
    99+
    2024-04-02
  • ajax如何实现分页效果
    这篇文章将为大家详细讲解有关ajax如何实现分页效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。ajax分页效果图:上干货:  $(function(){&n...
    99+
    2024-04-02
  • jQuery如何实现滚动效果
    这篇文章主要介绍了jQuery如何实现滚动效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. 图片轮播:原理如下: 假设有三张图片,三张...
    99+
    2024-04-02
  • 如何实现layui分页效果
    这篇文章主要介绍了如何实现layui分页效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体内容如下<!DOCTYPE h...
    99+
    2024-04-02
  • HTML5如何实现拖放效果
    这篇文章主要介绍HTML5如何实现拖放效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!拖放拖放是一种常见的特性,即抓取对象以后拖到另一个位置。在 HTML5 中,拖放是标准的一部分...
    99+
    2024-04-02
  • css3如何实现过滤效果
    小编给大家分享一下css3如何实现过滤效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!上面的图片就是css3新特性的滤镜效果,...
    99+
    2024-04-02
  • CSS3如何实现倒影效果
    这篇文章主要介绍CSS3如何实现倒影效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果图如下:示例图片在CSS3之前,想要实现示例图片这样的一个倒影效果一般只能通过处理图片的方式...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作