public BunnyCoordinate HasDuplicateLocation(BunnyCoordinate location)
        {
            if (_coordinateSet.Contains(location.GenerateHash()))
            {
                location.FoundDuplicate = true;
                return(location);
            }

            _coordinateSet.Add(location.GenerateHash());
            return(location);
        }
        public BunnyCoordinate MoveDown(int numberToMove, BunnyCoordinate currentCoordinate)
        {
            for (var i = 1; i <= numberToMove; i++)
            {
                var tempLocation = _locationTracker.HasDuplicateLocation(new BunnyCoordinate(currentCoordinate.X,
                                                                                             currentCoordinate.Y - i));

                if (tempLocation.FoundDuplicate)
                {
                    return(tempLocation);
                }
            }

            return(new BunnyCoordinate(currentCoordinate.X, currentCoordinate.Y - numberToMove));
        }
Esempio n. 3
0
 public BunnyCoordinate MoveRight(int numberToMove, BunnyCoordinate currentCoordinate)
 {
     return(new BunnyCoordinate(currentCoordinate.X + numberToMove, currentCoordinate.Y));
 }
Esempio n. 4
0
 public BunnyCoordinate MoveDown(int numberToMove, BunnyCoordinate currentCoordinate)
 {
     return(new BunnyCoordinate(currentCoordinate.X, currentCoordinate.Y - numberToMove));
 }