public void CheckBlocks(Unit Attacker, Unit Target, Modules.Target.TargettingData TD) { foreach (CardZone CZ in mBoard.RangeZones) { foreach (Entity E in CZ.List.Cards) { if (E.IsUnit()) { ((Unit)E).CheckBlockStatus(Attacker, Target, TD); } } } }
protected override bool CheckValidityInternal(Entities.Entity Performer, List <Entities.Entity> Selection, TurnInfo TI) { Effects.Orders.OrderWithUses TheOrder = (Effects.Orders.OrderWithUses)(((Entities.Effect_Entity)Performer).GetEffect()); Entities.Unit TheTarget = (Entities.Unit)Selection[0]; Modules.Target.TargettingData TD = new Modules.Target.TargettingData(); TD.AttackType.Long = true; if (TheTarget.GetCurrentRange() == Range.Long) { TD.TargetType.Long = true; } else if (TheTarget.GetCurrentRange() == Range.Short) { TD.TargetType.Short = true; } int cost = 0; TheTarget.CheckTargetStatus(null, TD, ref cost); return(TheOrder.GetNumUses(mActionIndex) > 0 && TD.Result()); }