pathfinding
Version:
Comprehensive pathfinding library for grid based games
29 lines (24 loc) • 993 B
JavaScript
var BiAStarFinder = require('./BiAStarFinder');
/**
* Bi-direcitional Best-First-Search path-finder.
* @constructor
* @extends BiAStarFinder
* @param {Object} opt
* @param {boolean} opt.allowDiagonal Whether diagonal movement is allowed.
* Deprecated, use diagonalMovement instead.
* @param {boolean} opt.dontCrossCorners Disallow diagonal movement touching
* block corners. Deprecated, use diagonalMovement instead.
* @param {DiagonalMovement} opt.diagonalMovement Allowed diagonal movement.
* @param {function} opt.heuristic Heuristic function to estimate the distance
* (defaults to manhattan).
*/
function BiBestFirstFinder(opt) {
BiAStarFinder.call(this, opt);
var orig = this.heuristic;
this.heuristic = function(dx, dy) {
return orig(dx, dy) * 1000000;
};
}
BiBestFirstFinder.prototype = new BiAStarFinder();
BiBestFirstFinder.prototype.constructor = BiBestFirstFinder;
module.exports = BiBestFirstFinder;