コード例 #1
0
    protected virtual void Awake()
    {
        tm                   = new WsTaskManager();
        sm                   = new SkillManager(tm);
        obj_entity           = new Entity();
        obj_entity.m_Id      = 100000001;
        obj_entity.Hp        = 100;
        obj_entity.Mp        = 100;
        obj_entity.MaxHp     = 100;
        obj_entity.MaxMp     = 100;
        obj_entity.Fight     = 10;
        obj_entity.Defence   = 10;
        obj_entity.trans     = gameObject.transform;
        attribute.m_BuffList = new List <Buff>();
        List <Buff> list = new List <Buff>();
        Buff        b    = new Buff();

        b.AtRound = 1;
        list.Add(b);
    }
コード例 #2
0
ファイル: SkillManager.cs プロジェクト: skey88/ws_skill
        public void Fire02(Skill skill)
        {
            string        que01    = "蓄力队列>01";
            TimeCondition singCond = new TimeCondition(skill.Attribute.m_DelayTime);

            TaskSystem.Task singTask = new TaskSystem.Task("    蓄力任务", singCond);
            m_tm.AddTask(singTask);
            m_tm.Start(que01, delegate()
            {
                Debug.Log(que01 + "队列结束********************************************");
                for (int i = 0; i < skill.Attribute.m_BuffList.Count; i++)
                {
                    WsTaskManager wtm = new WsTaskManager();
                    Buff b            = skill.Attribute.m_BuffList[i];

                    TimeCondition singCond3   = new TimeCondition(b.m_DelayTime);
                    TaskSystem.Task singTask3 = new TaskSystem.Task("A           buff延迟任务" + (i + 1), singCond3);
                    wtm.AddTask(singTask3);
                    wtm.Start("           buff延迟队列>" + (i + 1), delegate()
                    {
                        //Debug.Log("           buff延迟队列结束>" + (i + 1));
                        Debug.Log("buff延迟任务队列结束********************************************");
                        WsTaskManager wtm2 = new WsTaskManager();
                        string tn          = "B                      buff生效任务:" + b.m_BuffName;
                        BuffCondition bc   = new BuffCondition(b, b.m_BuffTime);
                        //Debug.Log(tn);
                        TaskSystem.Task tbc = new TaskSystem.Task(tn, bc);
                        wtm2.AddTask(tbc);

                        wtm2.Start("000           buff队列>" + (i + 1), delegate()
                        {
                            Debug.Log("buff队列队列结束********************************************");
                            b.RemoveBuff();
                        });
                    });
                }
            });
        }
コード例 #3
0
    public override void Fire2(Skill skill)
    {
        //释放特效
        //CastCondition cc = new CastCondition(skill,skill.Attribute.m_DelayTime);
        //Task.Task emitTask = new Task.Task("释放", cc);
        //tm.AddTask(emitTask);


        //TimeCondition singCond = new TimeCondition(skill.Attribute.m_DelayTime);
        //Task.Task singTask = new Task.Task("吟唱任务", singCond);
        //tm.AddTask(singTask);

        //WsTaskManager tm1 = new WsTaskManager();
        //Buff b = skill.Attribute.m_BuffList[0];
        //BuffCondition bc = new BuffCondition(b, b.m_BuffTime);
        //string tn = b.m_BuffName;
        ////Debug.Log(tn);
        //Task.Task tbc = new Task.Task(tn, bc);
        //tm1.AddTask(tbc);

        //tm1.Start(tn, delegate ()
        //{
        //    b.RemoveBuff();
        //});


        //Buff b2 = skill.Attribute.m_BuffList[1];
        //BuffCondition bc2 = new BuffCondition(b2, b2.m_BuffTime);
        //string tn2 = b2.m_BuffName;
        //Debug.Log(tn2);
        //Task.Task tbc2 = new Task.Task(tn2, bc);
        //tm.AddTask(tbc2);

        //tm.Start(tn2, delegate ()
        //{
        //    b2.RemoveBuff();
        //});

        for (int i = 0; i < skill.Attribute.m_BuffList.Count; i++)
        {
            Buff b = skill.Attribute.m_BuffList[i];
            b.InitBuff(skill.Caster);

            WsTaskManager   wtm2 = new WsTaskManager();
            string          tn   = "B                      buff生效任务:" + b.m_BuffName;
            BuffCondition   bc   = new BuffCondition(b, b.m_BuffTime);
            TaskSystem.Task tbc  = new TaskSystem.Task(tn, bc);
            wtm2.AddTask(tbc);

            wtm2.Start("000           buff队列>" + (i + 1), delegate()
            {
                b.RemoveBuff();
                Debug.Log("3.*****************Fight:" + obj_entity.Fight);
            });
        }


        //TimeCondition singCond2 = new TimeCondition(skill.Attribute.m_DelayTime);
        //Task.Task singTask2 = new Task.Task("吟唱任务2", singCond2);
        //tm.AddTask(singTask2);
        //tm.Start("队列02", delegate ()
        //{
        //    Debug.Log("队列02结束------------------------------------------");
        //});


        //BuffCondition bc = new BuffCondition(skill.Attribute.m_BuffList[0],5);
        //Task.Task tbc = new Task.Task("bc任务", bc);
        //tm.AddTask(tbc);

        //tm.Start("bc任务" + attribute.Name, delegate ()
        //{
        //    skill.Attribute.m_BuffList[0].RemoveBuff();
        //});

        ////启动任务队列
        //tm.Start("吟唱任务" + attribute.Name, delegate ()
        //{
        //    Debug.Log("Hp:---------" + obj_entity.Hp);
        //    skill.End();
        //});
    }
コード例 #4
0
ファイル: SkillManager.cs プロジェクト: skey88/ws_skill
 public SkillManager(WsTaskManager tm)
 {
     m_tm = tm;
 }