UNPKG

grid-engine

Version:

Phaser3 plugin for grid based movement on a 2D game board.

54 lines (53 loc) 2.88 kB
import { Direction } from "./../Direction/Direction.js"; import { Rect } from "../Utils/Rect/Rect.js"; import { GridCharacter } from "../GridCharacter/GridCharacter.js"; import { CollisionStrategy } from "../Collisions/CollisionStrategy.js"; import { CharLayer } from "../GridEngine.js"; import { Tilemap } from "./Tilemap.js"; import { Vector2 } from "../Utils/Vector2/Vector2.js"; import { LayerVecPos } from "../Utils/LayerPositionUtils/LayerPositionUtils.js"; export declare class GridTilemap { private tilemap; private collisionTilePropertyName; private useTileCollisionCache; private static readonly ONE_WAY_COLLIDE_PROP_PREFIX; private characters; private charBlockCache; private transitions; private reverseTransitions; private collidesPropNames; private tileCostPropNames; private collisionRelevantLayersFrameCache; private tileCollisionCache?; constructor(tilemap: Tilemap, collisionTilePropertyName: string, collisionStrategy: CollisionStrategy, collisionGroupRelation?: Map<string, Set<string>> | undefined, useTileCollisionCache?: boolean); fixCacheLayer(layer: CharLayer): void; unfixCacheLayers(): void; addCharacter(character: GridCharacter): void; removeCharacter(charId: string): void; getCharacters(): GridCharacter[]; getCharactersAt(position: Vector2, layer?: string): Set<GridCharacter>; rebuildTileCollisionCache(rect?: Rect): void; hasBlockingTileUncached(pos: Vector2, charLayer: string | undefined, direction?: Direction, ignoreHasTile?: boolean): boolean; hasBlockingTile(pos: Vector2, charLayer: string | undefined, direction?: Direction, ignoreHasTile?: boolean): boolean; getTransition(pos: Vector2, fromLayer?: string): string | undefined; getReverseTransitions(pos: Vector2, targetLayer?: string): Set<CharLayer> | undefined; setTransition(pos: Vector2, fromLayer: CharLayer, toLayer: CharLayer): void; getTransitions(): Map<CharLayer, Map<CharLayer, CharLayer>>; getTileCosts(pos: LayerVecPos, srcDir?: Direction): number; private getTileCostsForLayer; hasNoTileUncached(pos: Vector2, charLayer?: string): boolean; hasNoTile(pos: Vector2, charLayer?: string): boolean; hasBlockingChar(pos: Vector2, layer: string | undefined, collisionGroups: string[], exclude?: Set<string>, ignoreCollisionGroups?: Set<string>): boolean; isInRange(pos: Vector2): boolean; toMapDirection(direction: Direction): Direction; fromMapDirection(direction: Direction): Direction; isIsometric(): boolean; getTilePosInDirection(position: LayerVecPos, direction: Direction): LayerVecPos; invalidateFrameCache(): void; private isLayerBlockingAt; private getCharLayerIndexes; private findPrevAndCharLayer; private getCollisionRelevantLayers; private getLowestCharLayer; private getCharLayerNames; }