一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - CocosCreator實現技能冷卻效果

CocosCreator實現技能冷卻效果

2022-03-02 16:30property-Cocos js教程

這篇文章主要介紹了CocosCreator實現技能冷卻效果,同學們可以跟著教程,親手試一下,代碼都是可以復用的

CocosCreator實現技能CD效果

在很多游戲里面都有技能,玩家在點擊技能按鈕后技能會有一個冷卻的時間,當冷卻時間過了之后技能才可以再次使用

在cocos中實現這個效果很簡單,需要用到精靈組件
首先將技能按鈕的圖片拖到canvas下

CocosCreator實現技能冷卻效果

然后在技能按鈕下新建一個label
像這樣

CocosCreator實現技能冷卻效果

然后新建TS腳本把下面的代碼復制粘貼進去

const {ccclass, property} = cc._decorator;

@ccclass
export 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實現技能冷卻效果的詳細內容,更多關于CocosCreator技能冷卻的資料請關注服務器之家其它相關文章!

原文鏈接:https://blog.csdn.net/bcswkl_/article/details/108913302

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 肉肉小说在线阅读 | 国产精品伊人 | 催眠白丝舞蹈老师小说 | 国产探花在线观看 | 欧美国产在线视频 | 免费看日韩 | 免费看视频高清在线观看 | 好男人好资源在线观看 | 特级淫片欧美高清视频蜜桃 | 色婷婷激婷婷深爱五月老司机 | 国产v在线在线观看羞羞答答 | 国产激情视频网站 | 色欲麻将 | 探花国产 | 午夜片无码区在线观看 | 四虎影视库永久在线地址 | 亚洲码在线观看 | 色老板在线视频 | 色图大全 | 三级视频中文字幕 | 欧美成人手机 | 青青在线国产视频 | 日韩一区二区在线视频 | 青青在线视频免费 | 国产精品视频免费一区二区三区 | 女人是男人的未来1分49分 | 亚州精品永久观看视频 | 精品福利视频一区二区三区 | 爱情岛论坛自拍永久入口 | 久久中文字幕免费高清 | 国产精品视频第一区二区 | xxxxxx日本处大片免费看 | 激情视频网址 | 国产拍拍 | 娇喘嗯嗯 轻点啊视频福利 九九九九在线精品免费视频 | 日韩精品成人在线 | 午夜伦理yy44008影院 | 欧美亚洲国产一区二区三区 | 欧美在线看片a免费观看 | 成年人视频在线免费观看 | 能播放18xxx18女同 |