|
可能會(huì)奇怪為什么有來(lái)一個(gè)第2號(hào)版本,其實(shí),這是改進(jìn)版本,而這個(gè)改進(jìn)版本實(shí)現(xiàn)起來(lái)更加容易,更加方便,但是問(wèn)題也是很明顯的,因?yàn)闀?huì)加上一個(gè)100多KB的DLL,對(duì)于網(wǎng)頁(yè)游戲來(lái)說(shuō),任何1KB都是寶貴的資源,就為了這個(gè)小效果而平白無(wú)故增加X(jué)AP的容量,也驗(yàn)證了有得必有失道理,魚(yú)與熊掌應(yīng)該如何取舍呢,先來(lái)看看這個(gè)實(shí)現(xiàn)方式吧。
前面的建立方式幾乎是一樣的,但是不需要增加那兩個(gè)Grid的了,而是直接用一個(gè)整個(gè)大小的Rect來(lái)裁切掉LayoutRoot,
當(dāng)然了,如果喜歡可以使用Border或者其他的容器做底,現(xiàn)在添加一個(gè)圖片作為圖標(biāo)的底圖,然后在Asset里找到“Pie”這個(gè)控件。
你可以在提示信息中知道,要用這個(gè)控件需要Microsoft.Expression.Drawing.dll,而這個(gè)就是罪魁禍?zhǔn)祝鼤?huì)無(wú)情的進(jìn)入最后發(fā)布的XAP當(dāng)中,好了,我們先不糾結(jié)這個(gè)問(wèn)題,先往下繼續(xù)進(jìn)行。
添加到控件中:
然后將外邊邊距擴(kuò)展出來(lái),這樣才不會(huì)讓扇形的圓弧漏在外面,順便我們填充一個(gè)半透明的黑色。
我們將Margin都設(shè)成了-15,在Pie控件中,StartAngle是開(kāi)始的角度,我簡(jiǎn)單設(shè)置了120,已經(jīng)和前面的有所不同。
現(xiàn)在制作故事板動(dòng)畫(huà),方式和原來(lái)差不多。
這是一個(gè)簡(jiǎn)單的動(dòng)畫(huà),在0秒的時(shí)候設(shè)置StartAngle為0,在第2秒的時(shí)候設(shè)置為360,如果你需要各種不同時(shí)間長(zhǎng)度的,可以做一些調(diào)整。
上一篇沒(méi)有寫(xiě)點(diǎn)擊代碼,這次補(bǔ)上,可以依據(jù)自己的需求改造,如果我們對(duì)UserControl編程的話,可以重寫(xiě)鼠標(biāo)的點(diǎn)擊事件。
public partial class SkillIcon : UserControl
{
public SkillIcon()
{
InitializeComponent();
}
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
{
ANI_CoolDown.Begin();
base.OnMouseLeftButtonDown(e);
}
}
NET技術(shù):Silverlight 游戲開(kāi)發(fā)小技巧:技能冷卻效果2(Cooldown)2,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。