1. 程式人生 > >egret遊戲開發筆記(新增特效和釋放特效)

egret遊戲開發筆記(新增特效和釋放特效)

新增特效: this.effPart=EffectMgr.addEff("eff/962", this.group_1, -this.img_0.width / 2+11, this.img_0.height - 34, 1, 500, 500,false);

/** 新增一個特效
* @KEY 例如:eff/zy_3
* @parent 容器
* @x @y 位置
* scale 放大倍數
* @interval 特效單次播放時間(毫秒)
* @time 特效生命時長(毫秒),如果為-1則認為無限時(需要手動移除!)
* @repeat 是否重複播放
* @act 資源中的動作名字,一般用1,具體可以到 resource/model/eff/資料夾下面的JSON檔案檢視動作名
*/
public static addEff(key: string, parent: egret.DisplayObjectContainer, x = 0, y = 0,scale:number = 1, interval = 1000, time: number = -1, repeat: boolean = true, act = "1"): Part {
var ret = this.instance.addEff1(key, parent, x, y,scale, interval, time, repeat, act);
return ret;

}

如果設定的為-1時候需要手動去釋放特效資源(如果是多個item需要迴圈釋放)

public removejy() {
for (var i = 0; i < this.roleGrids.length; i++) {//roleGrids為存放item的陣列
this.roleGrids[i].removejyeff();
}

public removejyeff(){
if (this.effPart) {
EffectMgr.instance.removeEff(this.effPart);
this.effPart = null;
}
}