public override TaskState Process()
 {
     System.Collections.Generic.List <IPlayable> entities = IncludeTask.GetEntites(Type, Controller, Source, Target, Playables);
     entities.ForEach(p =>
     {
         var minion = p as Minion;
         if (minion != null)
         {
             minion.HasDeathrattle = Enchantment.Activation == EnchantmentActivation.DEATHRATTLE ? true : false;
             if (minion.Enchantments == null)
             {
                 minion.Enchantments = new System.Collections.Generic.List <Enchantment> {
                     Enchantment
                 }
             }
             ;
             else
             {
                 minion.Enchantments.Add(Enchantment);
             }
             if (Activate)
             {
                 Enchantment.Activate(Controller, minion);
             }
         }
     });
     return(TaskState.COMPLETE);
 }