import { Vector } from "../Vector"; interface StepState { /** how far off the player is from a single pixel, `x % 1` where x is 16 units per block */ pixelOffset: number; position: number; currentSpeed: number; } /** * This is the algorithm used when stepping the player a single pixel at a time, * checking for collisions along the way. * * Editors note: the algorithm for going to the right is implemented correctly, * but going left is very buggy. This buggyness is intentionally left alone, so * anything confusing about it is intentional. * * @param currentIsBoost Conditional that states whether the current block the * player is on is a boost */ export declare function stepAlgo(currentIsBoost: boolean, me: StepState): Generator; export declare function collisionStepping(checkIsColliding: (position: Vector) => boolean, position: Vector, velocity: Vector, currentGravityDirection: Vector, currentIsBoost: boolean): { position: Vector; velocity: Vector; grounded: boolean; }; export {};