unity3D學(xué)習(xí)中NGUI多技能冷卻制作_第1頁(yè)
unity3D學(xué)習(xí)中NGUI多技能冷卻制作_第2頁(yè)
unity3D學(xué)習(xí)中NGUI多技能冷卻制作_第3頁(yè)
unity3D學(xué)習(xí)中NGUI多技能冷卻制作_第4頁(yè)
unity3D學(xué)習(xí)中NGUI多技能冷卻制作_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、技能是游戲的一個(gè)重要組成部分,例如下圖,現(xiàn)在很多手機(jī)游戲都 需要用到技能效果,現(xiàn)在我給大家講講用NGUI制做技能冷卻的效果。般技能由技能欄,技能圖標(biāo)和冷卻遮罩組成,我們需要自己準(zhǔn)備一下 相應(yīng)的圖集新建一個(gè)UIRoot2D,在下面新建一個(gè)空對(duì)象,更名為Skill”,用 來(lái)存放所有的技能。新建一個(gè)sprite作為我們的技能欄,也就是技能背景,更名為Skill_Kill”。3.新建一個(gè)sprite作為我們的技能圖標(biāo),更名為Kill”。4.新建一個(gè)sprite作為我們的冷卻遮罩,更名為“Kill_CoolinMask”,Type 選擇 Filled , FillDir 是我們遮罩的類(lèi)型, 默認(rèn)是Rad

2、ial360 ,其他類(lèi)型也可以用,大家可以自己試一試,點(diǎn)擊 ColorTint調(diào)節(jié)透明度,我這里是用145的透明度,讓冷卻遮罩在冷卻 時(shí)也可以看到技能,大家可以根據(jù)自己的需求自己設(shè)置。冷卻遮罩最重 要的一個(gè)屬性是FillAmoun,當(dāng)他為0時(shí),遮罩不會(huì)顯示,當(dāng)他為1 時(shí),遮罩會(huì)完全顯示,我們默認(rèn)他為0不顯示遮罩,現(xiàn)在大家應(yīng)該知道 他的作用了吧。文章來(lái)自【狗刨學(xué)習(xí)網(wǎng)O亍9 1/ Kill_C 口口 lung MaskStatic ST,丿TrjnsfoniG條p X 0Y 0Z 0Z 0s X 1Y 1Z 1 UlSprfte (Script) 0.Atas* Mcibile Ciitoon S

3、gil (UlAtlias)。 EditSpriteChck_&opeFllltdiL TFlipNtxthinqtFill Dir*Fill AmiOLintInvert FillF-l5.根據(jù)步驟4再做一個(gè)其他技能,一般我們都是把技能放在屏幕的右下角并設(shè)置好錨,如下圖6.好了,UI我們做完了,現(xiàn)在我們新建一個(gè)腳本Skill”,我們把它綁定到所有技能的父對(duì)象Skill”上,在這里我把腳本貼出來(lái)using UnityEngine;using System.Collections;public class Skill : XMBaseMonoBehaviour /冷卻時(shí)間public float

4、 m_coolTime = 2f;/是否正在冷卻public bool m_isLightningCooling = false;public bool m_isKillCooling = false;/是否按下public bool isDownLightning = false;public bool isDownkill = false;/技能GameObject m_go_skill_lightning;GameObject m_go_skill_kill;/冷卻遮罩GameObject m_go_Lightning_coolMask;UlSprite m_spr_Lightning_

5、coolMask;GameObject m_go_Kill_CoolingMask;UISprite m_spr_Kill_CoolingMask;/綁定控件 protected override void XMAwake()base.XMAwake();/技能Bind(ref m_go_skill_ligh tn ing, Skill_Ligh tn ing);UIEventListener.Get(m_go_skill_lightning).onClick = OpenSkill_Lightning;Bind(ref m_go_skill_kill, Skill_Kill);UIEvent

6、Listener.Get(m_go_skill_kill).onClick = OpenSkill_Kill;/冷卻遮罩Bind(ref m_go_Lightning_coolMask,Ligh tn ing_Cooling Mask);m_spr_Lightning_coolMask =m_go_Lightning_coolMask.GetComponentUlSprite();Bind(ref m_go_Kill_CoolingMask, Kill_Cooling Mask);m_spr_Kill_CoolingMask = m_go_Kill_CoolingMask.GetCompone

7、ntUlSprite();/打開(kāi)必殺技能private void OpenSkill_Kill(GameObject go)/開(kāi)啟按下技能的狀態(tài)isDownkill = true;/打開(kāi)閃電技能private void OpenSkill_Lightning(GameObject go)isDownLightning = true;/ Use this for initializationvoid Start () / Update is called once per framevoid Upda te () if (isDownkill)Skill_Kil();if (isDownLigh

8、tning)Skill_Lightning();/閃電技能void Skill_Lightning()/如果沒(méi)有進(jìn)入冷卻狀態(tài),就打開(kāi)冷卻狀態(tài)if (!m_isLightningCooling)m_spr_Lightning_coolMask.fillAmount 二 If;m_isLightningCooling = true;/如果進(jìn)入冷卻狀態(tài),冷卻遮罩就隨設(shè)定的時(shí)間減少if (m_isLightningCooling)/減少冷卻遮罩m_spr_Lightning_coolMask.fillAmount -二(If / m_coolTime) * Time.deltaTime;/當(dāng)冷卻遮罩快

9、沒(méi)有的時(shí)候,關(guān)閉冷卻遮罩,并且退出按 下技能的狀態(tài)if (m_spr_Lightning_coolMask.fillAmount 二 O.Olf) m_isLightningCooling = false;m_spr_Lightning_coolMask.fillAmount 二 0; isDownLightning = false;/必殺技能void Skill_K il()if (!m_isKillCooling)m_spr_Kill_CoolingMask.fillAmount 二 f;m_isKillCooling = true;if (m_isKillCooling)m_spr_Ki

10、ll_CoolingMask.fillAmount -二(If / m_coolTime) * Time.deltaTime;if (m_spr_Kill_CoolingMask.fillAmount 二 O.Olf) m_isKillCooling = false; m_spr_Kill_CoolingMask.fillAmount 二 0; isDownkill = false;運(yùn)行點(diǎn)擊技能,效果如下注:腳本中的protectedoverridevoidXMAwake 方法是重寫(xiě) 我自己寫(xiě)的另一個(gè)腳本,用來(lái)綁定控件,避免了拖拽,當(dāng)然你也可以把 對(duì)象引用改為public,用拖拽的方式進(jìn)行實(shí)例。之前的代碼我是用枚

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論