コード例 #1
0
    public int AddBuff(Role sendRole, IBuff.BuffType type, int typeId)
    {
        IBuff buff = null;

        if (type == IBuff.BuffType.Behavior)
        {
            if (EnableBehaviorBuff())
            {
                buff = GetSameBuff(type, typeId);
                if (buff == null)
                {
                    buff = NewBuff(type);
                }
                else
                {
                    Debug.Log("");
                }
                buff.Init(sendRole, mRole, BuffCofig.singleton.GetBehaviorBuffConfig(typeId), Time.fixedTime);
            }
        }
        else if (type == IBuff.BuffType.Move)
        {
            if (EnableMoveBuff())
            {
                buff = GetSameBuff(type, typeId);
                if (buff == null)
                {
                    buff = NewBuff(type);
                }
                else
                {
                    Debug.Log("");
                }

                buff.Init(sendRole, mRole, BuffCofig.singleton.GetMoveBuffConfig(typeId), Time.fixedTime);
            }
        }
        else if (type == IBuff.BuffType.Hurt)
        {
            if (EnableHurtBuff())
            {
                buff = GetSameBuff(type, typeId);
                if (buff == null)
                {
                    buff = NewBuff(type);
                }
                else
                {
                    Debug.Log("");
                }
                buff.Init(sendRole, mRole, BuffCofig.singleton.GetHurtBuffConfig(typeId), Time.fixedTime);
            }
        }
        else if (type == IBuff.BuffType.Control)
        {
            buff = GetSameBuff(type, typeId);
            if (buff == null)
            {
                buff = NewBuff(type);
            }
            else
            {
                Debug.Log("");
            }
            buff.Init(sendRole, mRole, BuffCofig.singleton.GetControlBuffConfig(typeId), Time.fixedTime);
        }

        if (buff != null)
        {
            buff.OnEnter();
            mCurrBuffList[(int)type][buff.mInstId] = buff;
            return(mInstId);
        }
        else
        {
            return(-1);
            // Debug.Log("AddBuff " + "type=" + type + " typeId=" + typeId);
        }
    }