public override bool Execute(IDamageable self, IDamageable[] targets)
        {
            if (!base.Execute(self, targets))
            {
                return(false);
            }
            bool flag = false;

            for (int i = 0; i < buffs.Length; i++)
            {
                if (buffs[i].ForSelf)
                {
                    flag = self.Buff(buffs[i], durations[i]);
                }
                else
                {
                    foreach (IDamageable target in targets)
                    {
                        if (target.Buff(buffs[i], durations[i]))
                        {
                            flag = true;
                        }
                    }
                }
            }

            return(flag);
        }