UNPKG

@dothq/littlejsengine

Version:

LittleJS - Tiny and Fast HTML5 Game Engine

426 lines (425 loc) 17.6 kB
declare function engineInit(gameInit: any, gameUpdate: any, gameUpdatePost: any, gameRender: any, gameRenderPost: any, tileImageSource: any): void; declare function engineUpdateObjects(): void; declare function destroyAllObjects(): void; declare function forEachObject(pos: any, size: any, callbackFunction: any, objects?: any[]): void; declare function drawTile(pos: any, size: Vector2, tileIndex: number, tileSize: Vector2, color: Color, angle: number, mirror: any, additiveColor?: Color): void; declare function drawRect(pos: any, size: any, color: any, angle: any): void; declare function drawTileScreenSpace(pos: any, size: Vector2, tileIndex: any, tileSize: any, color: any, angle: any, mirror: any, additiveColor: any): void; declare function drawRectScreenSpace(pos: any, size: any, color: any, angle: any): void; declare function drawLine(posA: any, posB: any, thickness: number, color: any): void; declare function drawCanvas2D(pos: any, size: any, angle: any, mirror: any, drawFunction: any, context?: any): void; declare function drawText(text: any, pos: any, size?: number, color?: Color, lineWidth?: number, lineColor?: Color, textAlign?: string, font?: string): void; declare function setBlendMode(additive: any): void; declare function toggleFullscreen(): void; declare function inputUpdate(): void; declare function inputUpdatePost(): void; declare function gamepadsUpdate(): void; declare function playAudioFile(url: any, volumeScale?: number, loop?: number): HTMLAudioElement; declare function speak(text: any, language?: string, volume?: number, rate?: number, pitch?: number): SpeechSynthesisUtterance; declare function playSamples(sampleChannels: any, volume?: number, playbackRate?: number, pan?: number, loop?: number): any; declare function zzfxG(volume?: number, randomness?: number, frequency?: number, attack?: number, sustain?: number, release?: number, shape?: number, shapeCurve?: number, slide?: number, deltaSlide?: number, pitchJump?: number, pitchJumpTime?: number, repeatTime?: number, noise?: number, modulation?: number, bitCrush?: number, delay?: number, sustainVolume?: number, decay?: number, tremolo?: number): number[]; declare function zzfxM(instruments: any, patterns: any, sequence: any, BPM?: number): any[][]; declare function initTileCollision(size: any): void; declare function tileCollisionTest(pos: any, size: Vector2, object: any): number; declare function tileCollisionRaycast(posStart: any, posEnd: any, object: any): Vector2; declare function medalsInit(gameName: any): void; declare function medalsRender(): void; declare function glInit(): void; declare function glSetBlendMode(additive: any): void; declare function glSetTexture(texture?: any): void; declare function glCompileShader(source: any, type: any): any; declare function glCreateProgram(vsSource: any, fsSource: any): any; declare function glCreateBuffer(bufferType: any, size: any, usage: any): any; declare function glCreateTexture(image: any): any; declare function glPreRender(width: any, height: any): void; declare function glFlush(): void; declare function glCopyToContext(context: any, forceDraw: any): void; declare function glDraw(x: any, y: any, sizeX: any, sizeY: any, angle?: number, uv0X?: number, uv0Y?: number, uv1X?: number, uv1Y?: number, rgba?: number, rgbaAdditive?: number): void; declare const debug: 1; declare const enableAsserts: 1; declare const debugPointSize: 0.5; declare let showWatermark: number; declare let godMode: number; declare let debugPrimitives: any[]; declare let debugOverlay: number; declare let debugPhysics: number; declare let debugRaycast: number; declare let debugParticles: number; declare let debugGamepads: number; declare let debugMedals: number; declare let debugCanvas: number; declare let debugTakeScreenshot: any; declare let downloadLink: any; declare function ASSERT(...assert: any[]): void; declare function debugRect(pos: any, size?: Vector2, color?: string, time?: number, angle?: number, fill?: number): void; declare function debugCircle(pos: any, radius?: number, color?: string, time?: number, fill?: number): void; declare function debugPoint(pos: any, color: any, time: any, angle: any): void; declare function debugLine(posA: any, posB: any, color: any, thickness: number, time: any): void; declare function debugAABB(pA: any, pB: any, sA: any, sB: any, color: any): void; declare function debugText(text: string, pos: any, size?: number, color?: string, time?: number, angle?: number, font?: string): void; declare function debugClear(): any[]; declare function debugSaveCanvas(canvas: any, filename?: string): void; declare function debugInit(): void; declare function debugUpdate(): void; declare function debugRender(): void; declare let debugParticleEditor: number; declare let debugParticleSystem: any; declare let debugParticleSystemDiv: any; declare let particleSystemCode: any; declare function debugToggleParticleEditor(): void; declare const debugParticleSettings: string[][]; declare const PI: number; declare const isChrome: any; declare function abs(a: any): any; declare function sign(a: any): 1 | -1; declare function min(a: any, b: any): any; declare function max(a: any, b: any): any; declare function mod(a: any, b: any): number; declare function clamp(v: any, max?: number, min?: number): any; declare function percent(v: any, max?: number, min?: number): any; declare function lerp(p: any, max?: number, min?: number): number; declare function formatTime(t: any): string; declare function isOverlapping(pA: any, sA: any, pB: any, sB: any): number; declare function nearestPowerOfTwo(v: any): number; declare function wave(f?: number, a?: number, t?: number): number; declare function smoothStep(p: any): number; declare function rand(a?: number, b?: number): number; declare function randInt(a?: number, b?: number): number; declare function randSign(): number; declare function randInCircle(radius?: number, minRadius?: number): Vector2; declare function randVector(length?: number): Vector2; declare function randColor(cA: Color, cB: Color, linear: any): Color; declare let randSeed: number; declare function randSeeded(a?: number, b?: number): number; declare function vec2(x: number, y: any): Vector2; declare class Vector2 { constructor(x?: number, y?: number); x: number; y: number; copy(): Vector2; scale(s: any): Vector2; add(v: any): Vector2; subtract(v: any): Vector2; multiply(v: any): Vector2; divide(v: any): Vector2; length(): number; lengthSquared(): number; distance(p: any): number; distanceSquared(p: any): number; normalize(length?: number): Vector2; clampLength(length?: number): Vector2; dot(v: any): number; cross(v: any): number; angle(): number; setAngle(a: any, length?: number): Vector2; rotate(a: any): Vector2; direction(): 1 | 0 | 2 | 3; flip(): Vector2; invert(): Vector2; round(): Vector2; floor(): Vector2; int(): Vector2; lerp(v: any, p: any): Vector2; area(): number; arrayCheck(arraySize: any): boolean; } declare class Color { constructor(r?: number, g?: number, b?: number, a?: number); r: number; g: number; b: number; a: number; copy(c: any): Color; add(c: any): Color; subtract(c: any): Color; multiply(c: any): Color; scale(s: any, a?: any): Color; clamp(): Color; lerp(c: any, p: any): Color; mutate(amount?: number, alphaAmount?: number): Color; rgba(): string; rgbaInt(): number; setHSLA(h?: number, s?: number, l?: number, a?: number): Color; } declare class Timer { constructor(timeLeft: any); time: any; setTime: any; set(timeLeft?: number): void; unset(): void; isSet(): boolean; active(): boolean; elapsed(): boolean; get(): number; getPercent(): any; } declare const maxWidth: 1920; declare const maxHeight: 1200; declare let defaultFont: string; declare let fixedWidth: number; declare let fixedHeight: number; declare let fixedFitToWindow: number; declare const defaultTileSize: Vector2; declare const tileBleedShrinkFix: 0.3; declare let pixelated: number; declare const glEnable: 1; declare let glOverlay: number; declare const defaultObjectSize: Vector2; declare const defaultObjectMass: 1; declare const defaultObjectDamping: 0.99; declare const defaultObjectAngleDamping: 0.99; declare const defaultObjectElasticity: 0; declare const defaultObjectFriction: 0.8; declare const maxObjectSpeed: 1; declare const gamepadsEnable: 1; declare const touchInputEnable: 1; declare const copyGamepadDirectionToStick: 1; declare const copyWASDToDpad: 1; declare const soundEnable: 1; declare let audioVolume: number; declare const defaultSoundRange: 30; declare const defaultSoundTaper: 0.7; declare const medalDisplayTime: 5; declare const medalDisplaySlideTime: 0.5; declare const medalDisplayWidth: 640; declare const medalDisplayHeight: 99; declare const medalDisplayIconSize: 80; declare const engineName: "LittleJS"; declare const engineVersion: "1.0.16"; declare const FPS: 60; declare const timeDelta: number; declare const tileImage: HTMLImageElement; declare let mainCanvas: any; declare let mainContext: any; declare let overlayCanvas: any; declare let overlayContext: any; declare let mainCanvasSize: Vector2; declare let engineObjects: any[]; declare let engineCollideObjects: any[]; declare let cameraPos: Vector2; declare let cameraScale: any; declare let frame: number; declare let time: number; declare let realTime: number; declare let paused: number; declare let frameTimeLastMS: number; declare let frameTimeBufferMS: number; declare let debugFPS: number; declare let gravity: number; declare let tileImageSize: any; declare let tileImageSizeInverse: any; declare let shrinkTilesX: any; declare let shrinkTilesY: any; declare let drawCount: any; declare class EngineObject { constructor(pos: any, size: Vector2, tileIndex: number, tileSize: Vector2, angle: number, color: any); pos: any; size: Vector2; tileIndex: number; tileSize: Vector2; angle: number; color: any; mass: number; damping: number; angleDamping: number; elasticity: number; friction: number; spawnTime: number; velocity: Vector2; collideSolidObjects: number; renderOrder: number; angleVelocity: number; collideTiles: number; gravityScale: number; children: any[]; update(): void; groundObject: any; render(): void; destroy(): void; destroyed: number; collideWithTile(data: any, pos: any): boolean; collideWithTileRaycast(data: any, pos: any): boolean; collideWithObject(o: any): number; getAliveTime(): number; applyAcceleration(a: any): void; applyForce(force: any): void; isFixed(): boolean; getMirrorSign(s?: number): number; addChild(child: any, localPos?: Vector2, localAngle?: number): void; removeChild(child: any): void; setCollision(collideSolidObjects: any, isSolid: any, collideTiles?: number): void; isSolid: any; } declare function screenToWorld(screenPos: any): any; declare function worldToScreen(worldPos: any): any; declare function isFullscreen(): Element; declare let hadInput: number; declare function keyIsDown(key: any, device?: number): 1 | 0; declare function keyWasPressed(key: any, device?: number): 1 | 0; declare function keyWasReleased(key: any, device?: number): 1 | 0; declare function clearInput(): any[]; declare function mouseIsDown(key: any, device?: number): 1 | 0; declare function mouseWasPressed(key: any, device?: number): 1 | 0; declare function mouseWasReleased(key: any, device?: number): 1 | 0; declare let mousePos: Vector2; declare let mousePosScreen: Vector2; declare let mouseWheel: number; declare let usingGamepad: number; declare function gamepadIsDown(button: any, gamepad?: number): 1 | 0; declare function gamepadWasPressed(button: any, gamepad?: number): 1 | 0; declare function gamepadWasReleased(button: any, gamepad?: number): 1 | 0; declare function gamepadStick(stick: any, gamepad?: number): any; declare const inputData: any[][]; declare function remapKeyCode(c: any): any; declare let stickData: any[]; declare const isTouchDevice: boolean; declare class Sound { constructor(zzfxSound: any, range?: number, taper?: number); range: number; taper: number; randomness: any; cachedSamples: number[]; play(pos: any, volumeScale?: number, pitchScale?: number): any; } declare class Music { constructor(zzfxMusic: any); cachedSamples: any[][]; play(volumeScale?: number, loop?: number): any; } declare function stopSpeech(): void; declare let audioContext: any; declare const zzfxR: 44100; declare function zzfx(...z: any[]): any; declare let tileCollision: any[]; declare let tileCollisionSize: Vector2; declare let tileLayerCanvasCache: any[]; declare function setTileCollisionData(pos: any, data?: number): number; declare function getTileCollisionData(pos: any): any; declare class TileLayerData { constructor(tile?: number, direction?: number, mirror?: number, color?: Color); tile: number; direction: number; mirror: number; color: Color; clear(): void; } declare class TileLayer extends EngineObject { constructor(pos: any, size: any, scale?: Vector2, layer?: number); canvas: any; context: any; scale: Vector2; layer: number; flushGLBeforeRender: number; data: TileLayerData[]; setData(layerPos: any, data: any, redraw: any): void; getData(layerPos: any): TileLayerData; redraw(): void; redrawStart(clear?: number): void; savedRenderSettings: any[]; redrawEnd(): void; drawTileData(layerPos: any): void; drawAllTileData(): void; drawCanvas2D(pos: any, size: any, angle: any, mirror: any, drawFunction: any): void; drawTile(pos: any, size: Vector2, tileIndex: number, tileSize: Vector2, color: Color, angle: number, mirror: any): void; drawRect(pos: any, size: any, color: any, angle: any): void; } declare class ParticleEmitter extends EngineObject { constructor(pos: any, emitSize: number, emitTime: number, emitRate: number, emitConeAngle: number, tileIndex: number, tileSize: Vector2, colorStartA: Color, colorStartB: Color, colorEndA: Color, colorEndB: Color, particleTime: number, sizeStart: number, sizeEnd: number, speed: number, angleSpeed: number, damping: number, angleDamping: number, gravityScale: number, particleConeAngle: number, fadeRate: number, randomness: number, collideTiles: any, additive: any, randomColorLinear?: number, renderOrder?: number); emitSize: number; emitTime: number; emitRate: number; emitConeAngle: number; colorStartA: Color; colorStartB: Color; colorEndA: Color; colorEndB: Color; randomColorLinear: number; particleTime: number; sizeStart: number; sizeEnd: number; speed: number; angleSpeed: number; particleConeAngle: number; fadeRate: number; randomness: number; additive: any; trailScale: number; emitTimeBuffer: number; emitParticle(): Particle; } declare class Particle extends EngineObject { constructor(pos: any, tileIndex: any, tileSize: any, angle: any); } declare let medals: any[]; declare let medalsDisplayQueue: any[]; declare let medalsGameName: any; declare let medalsPreventUnlock: any; declare let medalsDisplayTimer: any; declare let newgrounds: any; declare class Medal { constructor(id: any, name: any, description: string, icon: string, src: any); id: any; name: any; description: string; icon: string; image: HTMLImageElement; unlock(): void; unlocked: number; storageKey(): string; render(hidePercent?: number): void; renderIcon(x: any, y: any, size?: number): void; } declare class Newgrounds { constructor(app_id: any, cipher: any); app_id: any; cipher: any; host: string; cryptoJS: any; session_id: string | number; medals: any; scoreboards: any; unlockMedal(id: any): any; postScore(id: any, value: any): any; logView(): any; getScores(id: any, user?: number, social?: number, skip?: number, limit?: number): any; call(component: any, parameters?: number, async?: number): any; encryptCall(call: any): any; } declare function CryptoJS(): any; declare let glCanvas: any; declare let glContext: any; declare let glTileTexture: any; declare let glActiveTexture: any; declare let glShader: any; declare let glPositionData: any; declare let glColorData: any; declare let glBatchCount: any; declare let glDirty: any; declare let glAdditive: any; declare const gl_ONE: 1; declare const gl_TRIANGLES: 4; declare const gl_SRC_ALPHA: 770; declare const gl_ONE_MINUS_SRC_ALPHA: 771; declare const gl_BLEND: 3042; declare const gl_TEXTURE_2D: 3553; declare const gl_UNSIGNED_BYTE: 5121; declare const gl_FLOAT: 5126; declare const gl_RGBA: 6408; declare const gl_NEAREST: 9728; declare const gl_LINEAR: 9729; declare const gl_TEXTURE_MAG_FILTER: 10240; declare const gl_TEXTURE_MIN_FILTER: 10241; declare const gl_TEXTURE_WRAP_S: 10242; declare const gl_TEXTURE_WRAP_T: 10243; declare const gl_COLOR_BUFFER_BIT: 16384; declare const gl_CLAMP_TO_EDGE: 33071; declare const gl_ARRAY_BUFFER: 34962; declare const gl_DYNAMIC_DRAW: 35048; declare const gl_FRAGMENT_SHADER: 35632; declare const gl_VERTEX_SHADER: 35633; declare const gl_COMPILE_STATUS: 35713; declare const gl_LINK_STATUS: 35714; declare const gl_VERTICES_PER_QUAD: 6; declare const gl_INDICIES_PER_VERT: 9; declare const gl_MAX_BATCH: number; declare const gl_VERTEX_BYTE_STRIDE: number;