private void Execute() { for (var i = 0; i < BuffEmitters.Count; ++i) { var BuffEmitter = BuffEmitters[i]; List <UnitBase> ls = new List <UnitBase>(); if (mRegion.Select(ls, BuffEmitter.condition)) { for (var idx = 0; idx < ls.Count; ++idx) { UnitBase unit = ls[idx] as UnitBase; if (unit != null) { for (var n = 0; n < BuffEmitter.buffs.Length; ++n) { unit.AddBuff(BuffEmitter.buffs[n], Caster); } } } } } }