public override Point Find(Point origin) { for (int index = 0; index < this._maxDistance; ++index) { if (this.Check(origin.X, origin.Y + index)) return new Point(origin.X, origin.Y + index); } return GenSearch.NOT_FOUND; } }