Ejemplo n.º 1
0
    public void AddDebuff(DebuffParam param)
    {
        bool addDebuff = enemyStatus.AddDebuff(param);

        if (addDebuff)
        {
            StartCoroutine("DebuffTimer");
        }
    }
Ejemplo n.º 2
0
    public bool AddDebuff(DebuffParam param)
    {
        int listCount = debuffList.Count;
        int index     = debuffList.FindIndex(delegate(DebuffParam a) {
            return(a.debuffType.Equals(param.debuffType) &&
                   (Mathf.Abs(a.debuffValue) < Mathf.Abs(param.debuffValue)));
        });

        if (index > -1)
        {
            debuffList.RemoveAt(index);
            debuffList.Add(param);
        }
        else if (listCount.Equals(0))
        {
            debuffList.Add(param);
        }
        else
        {
            return(false);
        }

        return(listCount.Equals(0));
    }