UNPKG

excalibur

Version:

Excalibur.js is a simple JavaScript game engine with TypeScript bindings for making 2D games in HTML5 Canvas. Our mission is to make web game development as simple as possible.

23 lines (22 loc) 1.08 kB
import { CollisionContact } from '../Detection/CollisionContact'; import { CollisionSolver } from './Solver'; import { PhysicsConfig } from '../PhysicsConfig'; import { DeepRequired } from '../../Util/Required'; /** * ArcadeSolver is the default in Excalibur. It solves collisions so that there is no overlap between contacts, * and negates velocity along the collision normal. * * This is usually the type of collisions used for 2D games that don't need a more realistic collision simulation. * */ export declare class ArcadeSolver implements CollisionSolver { config: DeepRequired<Pick<PhysicsConfig, 'arcade'>['arcade']>; directionMap: Map<string, "horizontal" | "vertical">; distanceMap: Map<string, number>; constructor(config: DeepRequired<Pick<PhysicsConfig, 'arcade'>['arcade']>); solve(contacts: CollisionContact[]): CollisionContact[]; preSolve(contacts: CollisionContact[]): void; postSolve(contacts: CollisionContact[]): void; solvePosition(contact: CollisionContact): void; solveVelocity(contact: CollisionContact): void; }