public override TaskState Process() { System.Collections.Generic.List <Model.Entities.IPlayable> entities = IncludeTask.GetEntites(Type, Controller, Source, Target, Playables); entities.ForEach(p => { Model.Entities.IPlayable removedEntity = p.Zone.Remove(p); Game.Log(LogLevel.INFO, BlockType.PLAY, "MoveToSetaside", $"{p.Controller.Name}'s {p} is moved to the setaside zone."); p.Controller.SetasideZone.Add(removedEntity); }); return(TaskState.COMPLETE); }
public override TaskState Process() { Model.Entities.IPlayable drawedCard = Generic.Draw(Controller); if (drawedCard == null) { return(TaskState.STOP); } if (ToStack) { Playables.Add(drawedCard); } return(TaskState.COMPLETE); }
public override TaskState Process() { if (Playables.Count != 1) { return(TaskState.STOP); } Model.Entities.IPlayable drawedCard = Generic.Draw(Controller, Playables[0]); if (drawedCard == null) { return(TaskState.STOP); } return(TaskState.COMPLETE); }