KylinMark = Buff:New() --初始化Buff,通过传入一些自定义参数控制成长相关的数值 function KylinMark:SetData(...) self.pro1, self.pro2, self.v1, self.pro3 = ... -- 刷新排序等级 self.sort = 4 end function KylinMark:roleTurnStar(role) BattleUtil.RandomAction(self.pro1, function () local dd = floor(BattleUtil.ErrorCorrection(role:GetRoleData(BattlePropList[self.pro2])*self.v1)) BattleUtil.ApplyDamage(self.caster,self.target, dd) end) --概率消失 BattleUtil.RandomAction(self.pro3, function () self.disperse=true end) end --初始化后调用一次 function KylinMark:OnStart() self.target.Event:AddEvent(BattleEventName.RoleTurnStart,self.roleTurnStar) end --间隔N帧触发,返回true时表示继续触发,返回false立刻触发OnEnd function KylinMark:OnTrigger() return true end --效果结束时调用一次 function KylinMark:OnEnd() self.target.Event:RemoveEvent(BattleEventName.RoleTurnStart,self.roleTurnStar) end --只有当cover字段为true时触发,返回true则被新效果覆盖 function KylinMark:OnCover(newBuff) return true end return KylinMark