public bool IsTargetCompletelyBlockedBehindCover(HeroSystemCharacter viewer, ITargetable target)
        {
            ProtectingCover cover = MapFactory.ActiveGameMap.GetConcealmentForCharacterBetweenOtherCharacter(viewer, target);

            if (cover != null)
            {
                ConcealmentAmount coverage = cover.BlockingCoverProvidedAgainstOtherCharacter(viewer, target);

                if (coverage == ConcealmentAmount.Partial || coverage == ConcealmentAmount.None)
                {
                    {
                        return(false);
                    }
                }
                else
                {
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
 public void PeekAroundCoverToViewDefender(ProtectingCover cover, HeroSystemCharacter other)
 {
     cover.UpdateAmountOfConcealmentBeingProvidedToCharacterUnderCoverFromOtherCharacter(ConcealmentAmount.Partial, this, other);
 }
 public void DuckBehindCoverHidingFrom(ProtectingCover cover, HeroSystemCharacter other)
 {
     cover.UpdateAmountOfConcealmentBeingProvidedToCharacterUnderCoverFromOtherCharacter(ConcealmentAmount.Full, this, other);
 }