forked from dongweiPeng/SkillSystem
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathISkill.cs
More file actions
45 lines (43 loc) · 1.29 KB
/
Copy pathISkill.cs
File metadata and controls
45 lines (43 loc) · 1.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Skill
{
public delegate void SkillComplate(Skill skill);
public interface ISkill
{
/// <summary>
/// 技能的数据装载
/// </summary>
/// <param name="target">技能作用的目标</param>
/// <param name="attribute">技能携带的属性</param>
void Init<T, U>(T caster, U target, Attribute attribute = null, SkillComplate complate = null) where T : Entity where U : Entity;
/// <summary>
/// 是否可以通过
/// </summary>
/// <returns></returns>
bool IsValid(IVerify verify);
/// <summary>
/// 多重验证 根据优先级决定验证数据
/// </summary>
/// <param name="verfiyList"></param>
/// <returns></returns>
bool IsValid(List<IVerify> verfiyList);
/// <summary>
/// 吟唱
/// </summary>
IEnumerator Sing(Task.Task task);
/// <summary>
/// 伤害计算
/// </summary>
int Caculate(IDamage damage);
/// <summary>
/// 结束
/// </summary>
void End();
/// <summary>
/// 中断
/// </summary>
void Interrupt(IInterrupt interrupt);
}
}