phaser4-rex-plugins
Version:
44 lines (35 loc) • 954 B
TypeScript
export default Raycaster;
declare namespace Raycaster {
interface IConfig {
maxRayLength?: number
}
interface IResult {
gameObject: Phaser.GameObjects.GameObject,
polygon: Phaser.Geom.Polygon,
segment: Phaser.Geom.Line,
x: number,
y: number,
reflectAngle: number,
}
}
declare class Raycaster {
addObstacle(
gameObject: Phaser.GameObjects.GameObject,
polygon?: Phaser.Geom.Polygon
): this;
addObstacle(
gameObjects: Phaser.GameObjects.GameObject[]
): this;
removeObstacle(
gameObject: Phaser.GameObjects.GameObject
): this;
clearObstacle(): this;
updateObstacle(
gameObject: Phaser.GameObjects.GameObject,
polygon?: Phaser.Geom.Polygon
): this;
rayToward(
x: number, y: number,
angle: number
): Raycaster.IResult | false;
}