? ? ? 第一次發(fā)布文章瓶籽,文筆不好匠童,還請見諒。
? ? ?最近在學(xué)習(xí)NGUI塑顺,雖然已經(jīng)沒多少人用這個框架了汤求,不過個人覺得,既然火了這么久严拒,肯定有他強大之處扬绪,所以還是需要學(xué)習(xí)一下,豐富下自己的見識裤唠。
? ? 閑話不多說挤牛,來正經(jīng)的,今天要做的這個東西個人覺得還是挺有用的种蘸,技能冷卻墓赴,在許多游戲中都有這個東西的存在,畢竟如果技能沒有冷卻的話航瞭,那太恐怖了诫硕,降低了游戲的難度,也讓一個游戲沒有那么吸引人刊侯。
? ?看著這個名字--NGUI制作技能冷卻效果章办,看著高大上,其實并沒有什么特別牛逼的地方滨彻,只是一些基本的操作和代碼邏輯藕届。下面,進(jìn)入正題疮绷。
1.素材準(zhǔn)備
2.原理分析
? ? ? ? 其實吧翰舌,這個東西的原理就是一個,技能前面有一層模板冬骚,當(dāng)技能在冷卻期間就給他蒙上椅贱,然后慢慢的冷卻回來懂算,當(dāng)蒙版完全消失的時候,技能也就完全冷卻了庇麦。
3.技能圖標(biāo)和蒙版制作
? ? ? 別的什么都別想计技,先做好幾張圖片的顯示,這里山橄,樓主是用的是Sprite垮媒,制作圖集,然后把技能圖片放在圖集里面航棱,直接引用就好了睡雇。
這里要注意的是各個組件的父子關(guān)系它抱,別弄混,因為我們后面還要用代碼控制我們的技能冷卻效果朴艰。
注意观蓄,圖標(biāo)大小什么的我就不說了,每個人都可以自己div,但是祠墅,這里要注意的是侮穿,我們的組件是有層深度關(guān)系的,Label毁嗦,我們的QWER肯定是顯示在最上面一層的亲茅,不然冷卻的時候都看不見我們的技能鍵,玩家表示很傷金矛。而我們的蒙版應(yīng)該是在技能圖標(biāo)上面芯急,不然怎么蒙住嘛,是吧驶俊,所以他們的深度關(guān)系是Depth:Skill(技能圖標(biāo)) < CD(蒙版) < Label(技能鍵label)
上面步驟完成后,是這個樣子的免姿。
4.神奇的屬性
UI Sprite中的屬性列表:
5.最終代碼制作
腳本是掛載每一個技能圖標(biāo)對象上的药版,所以sprite是獲取的子對象的。
把keycode設(shè)置成public喻犁,讓我們能方便地在unity中修改槽片,冷卻用協(xié)程來協(xié)助何缓,主要是設(shè)置蒙版的fillamount值來改變當(dāng)前技能的冷卻效果。
當(dāng)fillamount為1時还栓,蒙版全部顯示碌廓。
fillamount為0時,蒙版全部隱藏剩盒。
最后谷婆,文章就到這了,文筆有限辽聊,望大家見諒纪挎。
歡迎各路英雄互相討論學(xué)習(xí)。