Beispiel #1
0
    IEnumerator Start()
    {
        Attribute attribute = new Attribute();

        attribute.CostMp      = 5;
        attribute.m_DelayTime = 2;

        SkillSystem.Skill windy  = new SkillSystem.Skill();
        Entity            sakura = new Entity();

        sakura.Name = "小樱";
        sakura.Mp   = 10;
        Entity enemy = new Entity();


        windy.Init(sakura, enemy, attribute);
        //检验流程
        bool isvalid = windy.IsValid(new MpVerify());

        if (!isvalid)
        {
            windy.Interrupt(new InterruptValid());
        }


        Debug.Log("准备 吟唱");
        TaskSystem.TimeCondition cond = new TaskSystem.TimeCondition(attribute.m_DelayTime);
        TaskSystem.Task          task = new TaskSystem.Task("吟唱动画", cond);

        yield return(StartCoroutine(windy.Sing(task)));

        Debug.Log("吟唱 结束");
    }
Beispiel #2
0
    public void Fire02(SkillSystem.Skill skill)
    {
        //to-do吟唱 吟唱时间可以根据表格来

        //伤害计算
        DamageCondtion dmgCond = new DamageCondtion(skill,
                                                    delegate(int result)
        {
            HandleCast(skill, result);
        },
                                                    EventsType.Skill_DamageEnd, skill.Caster.m_Id);

        TaskSystem.Task dmgTask = new TaskSystem.Task("伤害检查", dmgCond);
        TaskManager.Instance().AddTask(dmgTask);
        //启动任务队列
        TaskManager.Instance().Start(">>>技能伤害计算流程");
    }
Beispiel #3
0
 public void SkillEnd(SkillSystem.Skill sk)
 {
     Debug.Log("SkillEnd");
 }
Beispiel #4
0
 public void InitBullet(SkillSystem.Skill skill)
 {
     m_Skill = skill;
 }