UNPKG

rock-mod

Version:

Rock-Mod is a powerful framework designed for creating and managing mods for Grand Theft Auto (GTA) games.

36 lines (35 loc) 1.34 kB
import { RageBaseObjectsIterator } from "../baseObject/RageBaseObjectsIterator"; export class RageWorldObjectsIterator extends RageBaseObjectsIterator { constructor(baseObjects) { super(baseObjects); } *dimension(value) { for (const worldObject of this.all()) { if (worldObject.dimension === value) { yield worldObject; } } } *range2D(center, range) { const rangeSquared = range * range; for (const worldObject of this.all()) { const { position } = worldObject; const distanceSquared = (center.x - position.x) * (center.x - position.x) + (center.y - position.y) * (center.y - position.y); if (distanceSquared <= rangeSquared) { yield worldObject; } } } *range3D(center, range) { const rangeSquared = range * range; for (const worldObject of this.all()) { const { position } = worldObject; const distanceSquared = (center.x - position.x) * (center.x - position.x) + (center.y - position.y) * (center.y - position.y) + (center.z - position.z) * (center.z - position.z); if (distanceSquared <= rangeSquared) { yield worldObject; } } } }