예제 #1
0
        public HitResult IsHit(Square square)
        {
            if (!Squares.Contains(square))
            {
                return(HitResult.Missed);
            }
            var sq = Squares.First(s => s == square);

            sq.Hit = true;
            bool sunk = Squares.Count(s => s.Hit == true) == Squares.Count();

            return(sunk ? HitResult.Sunk : HitResult.Hit);
        }
예제 #2
0
파일: Ship.cs 프로젝트: tlevacic/BattleShip
 public HitResult Hit(Square square)
 {
     if (!Squares.Contains(square))
     {
         return(HitResult.Missed);
     }
     Squares.First(s => s == square).Hit = true;
     if (Squares.Count(s => s.Hit) == Squares.Count())
     {
         foreach (var s in Squares)
         {
             s.SetState(HitResult.Sunken);
         }
         return(HitResult.Sunken);
     }
     return(HitResult.Hit);
 }