UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

39 lines (30 loc) 941 B
import { CellMatcher } from "../CellMatcher.js"; import { assert } from "../../../core/assert.js"; export class CellMatcherContainsMarkerWithinRadius extends CellMatcher { /** * @type {MarkerNodeMatcher} */ matcher = null; /** * Search radius * @type {number} */ radius = 1; /** * * @param {MarkerNodeMatcher} matcher * @param {number} radius * @returns {CellMatcherContainsMarkerWithinRadius} */ static from(matcher, radius) { assert.equal(matcher.isMarkerNodeMatcher, true, 'matcher.isMarkerNodeMatcher'); assert.isNumber(radius, 'radius'); const r = new CellMatcherContainsMarkerWithinRadius(); r.matcher = matcher; r.radius = radius; return r; } match(grid, x, y, rotation) { return grid.containsMarkerInCircle(x, y, this.radius, this.matcher); } }