createEngine(gopt: BUILDNANAOpt ): globalOpt: scale: number spriteAtlasPadding: number defaultLifetimeScope: "scene" | "app" & BUILDNANAOpt canvas: HTMLCanvasElement app: state: canvas: HTMLCanvasElement buttons: ButtonsDef buttonHandler: ButtonProcessor loopID: null | number stopped: boolean dt: number fixedDt: number maxStep: number restDt: number time: number realTime: number rawFPSCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void fpsCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void timeScale: number skipTime: boolean isHidden: boolean numFrames: number capsOn: boolean mousePos: Vec2 mouseDeltaPos: Vec2 keyState: ButtonState<Key, never> mouseState: ButtonState<MouseButton, never> mergedGamepadState: buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> > lastInputDevice: "mouse" | "keyboard" | "gamepad" | null gamepads: KGamepad[] charInputted: string[] isMouseMoved: boolean lastWidth: number lastHeight: number canvasScaleX: number canvasScaleY: number events: KEventHandler<AppEventMap> dt(): number fixedDt(): number restDt(): number time(): number run(fixedUpdate: ()=>void , update: (processInput: ()=>void , resetInput: ()=>void )=>void ): void canvas: HTMLCanvasElement updateCanvasScale(): void fps(): number rawFPS(): number setFixedSpeed(speed: FixedSpeedOption ): void numFrames(): number quit(): void isHidden(): boolean setFullscreen(f?: boolean ): void isFullscreen(): boolean setCursor(c: Cursor ): void screenshot(): string screenshotToBlob(): Promise<Blob> getGamepads(): KGamepad[] getCursor(): Cursor setCursorLocked(b: boolean ): void isCursorLocked(): boolean isTouchscreen(): boolean mousePos(): Vec2 mouseDeltaPos(): Vec2 isKeyDown(k?: Key | Key[] ): boolean isKeyPressed(k?: Key | Key[] ): boolean isKeyPressedRepeat(k?: Key | Key[] ): boolean isKeyReleased(k?: Key | Key[] ): boolean isMouseDown(m?: MouseButton ): boolean isMousePressed(m?: MouseButton ): boolean isMouseReleased(m?: MouseButton ): boolean isMouseMoved(): boolean isGamepadButtonPressed(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonDown(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonReleased(btn?: KGamepadButton | KGamepadButton[] ): boolean isFocused(): boolean getGamepadStick(stick: KGamepadStick ): Vec2 getGamepadAnalogButton(btn: KGamepadButton ): number isButtonPressed(btn?: string | string[] ): boolean isButtonDown(btn?: string | string[] ): boolean isButtonReleased(btn?: string | string[] ): boolean getButton(btn: string ): ButtonBinding getButtons(): ButtonsDef setButton(btn: string , binding: ButtonBinding ): void pressButton(btn: string ): void releaseButton(btn: string ): void charInputted(): string[] onResize(action: ()=>void ): KEventController onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseMove(f: (pos: Vec2 , dpos: Vec2 )=>void ): KEventController onCharInput(action: (ch: string )=>void ): KEventController onTouchStart(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchMove(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchEnd(f: (pos: Vec2 , t: Touch )=>void ): KEventController onScroll(action: (delta: Vec2 )=>void ): KEventController onHide(action: ()=>void ): KEventController onShow(action: ()=>void ): KEventController onTabHide(action: ()=>void ): KEventController onTabShow(action: ()=>void ): KEventController onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController onGamepadConnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadDisconnect(action: (gamepad: KGamepad )=>void ): KEventController onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController getLastInputDeviceType(): "keyboard" | "gamepad" | "mouse" | null events: KEventHandler<AppEventMap> ggl: gl: WebGLRenderingContext opts: BUILDNANAOpt onDestroy(action: ()=>unknown ): void destroy(): void pushTexture2D(item: WebGLTexture ): void popTexture2D(): void pushArrayBuffer(item: WebGLBuffer ): void popArrayBuffer(): void pushElementArrayBuffer(item: WebGLBuffer ): void popElementArrayBuffer(): void pushFramebuffer(item: WebGLFramebuffer ): void popFramebuffer(): void pushRenderbuffer(item: WebGLRenderbuffer ): void popRenderbuffer(): void pushViewport(item: x: number y: number w: number h: number ): void popViewport(): void pushProgram(item: WebGLProgram ): void popProgram(): void setVertexFormat(fmt: VertexFormat ): void gfx: AppGfxCtx audio: InternalAudioCtx assets: urlPrefix: string sprites: AssetBucket<SpriteData> fonts: AssetBucket<FontData> bitmapFonts: AssetBucket<GfxFont> sounds: AssetBucket<SoundData> shaders: AssetBucket<Shader> custom: AssetBucket<any> prefabAssets: AssetBucket<SerializedGameObj> music: Record<string, string> packer: TexPacker loaded: boolean frameRenderer: frameStart(): void frameEnd(): void fixedUpdateFrame(): void updateFrame(): void fontCacheC2d: CanvasRenderingContext2D | null fontCacheCanvas: HTMLCanvasElement game: Game debug: Debug gc: ()=>void[] sceneScope: SceneScope appScope: onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onCharInput(action: (ch: string )=>void ): KEventController onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseMove(f: (pos: Vec2 , dpos: Vec2 )=>void ): KEventController onTouchStart(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchEnd(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchMove(f: (pos: Vec2 , t: Touch )=>void ): KEventController onScroll(action: (delta: Vec2 )=>void ): KEventController onGamepadConnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadDisconnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onTabShow(action: ()=>void ): KEventController onTabHide(action: ()=>void ): KEventController onUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onFixedUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onDraw: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onAdd: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onDestroy: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onUse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onUnuse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onTag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onUntag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController on(event: Ev , tag: Tag , cb: (obj: GameObj , args: TupleWithoutFirst )=>void ): KEventController onClick(tag: Tag , action: (obj: GameObj )=>void ): KEventController onCollide: onCollide onCollideEnd: onCollideEnd onCollideUpdate: onCollideUpdate onHover: onHover onHoverEnd: onHoverEnd onHoverUpdate: onHoverUpdate onResize(action: ()=>void ): KEventController onSceneLeave: onSceneLeave onLoad: onLoad onLoading: onLoading onError: onError onLoadError: onLoadError onCleanup(action: ()=>void ): void onShow(action: ()=>void ): KEventController onHide(action: ()=>void ): KEventController k: BUILDNANACtx startLoop(): void
globalOpt: scale: number spriteAtlasPadding: number defaultLifetimeScope: "scene" | "app" & BUILDNANAOpt
app: state: canvas: HTMLCanvasElement buttons: ButtonsDef buttonHandler: ButtonProcessor loopID: null | number stopped: boolean dt: number fixedDt: number maxStep: number restDt: number time: number realTime: number rawFPSCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void fpsCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void timeScale: number skipTime: boolean isHidden: boolean numFrames: number capsOn: boolean mousePos: Vec2 mouseDeltaPos: Vec2 keyState: ButtonState<Key, never> mouseState: ButtonState<MouseButton, never> mergedGamepadState: buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> > lastInputDevice: "mouse" | "keyboard" | "gamepad" | null gamepads: KGamepad[] charInputted: string[] isMouseMoved: boolean lastWidth: number lastHeight: number canvasScaleX: number canvasScaleY: number events: KEventHandler<AppEventMap> dt(): number fixedDt(): number restDt(): number time(): number run(fixedUpdate: ()=>void , update: (processInput: ()=>void , resetInput: ()=>void )=>void ): void canvas: HTMLCanvasElement updateCanvasScale(): void fps(): number rawFPS(): number setFixedSpeed(speed: FixedSpeedOption ): void numFrames(): number quit(): void isHidden(): boolean setFullscreen(f?: boolean ): void isFullscreen(): boolean setCursor(c: Cursor ): void screenshot(): string screenshotToBlob(): Promise<Blob> getGamepads(): KGamepad[] getCursor(): Cursor setCursorLocked(b: boolean ): void isCursorLocked(): boolean isTouchscreen(): boolean mousePos(): Vec2 mouseDeltaPos(): Vec2 isKeyDown(k?: Key | Key[] ): boolean isKeyPressed(k?: Key | Key[] ): boolean isKeyPressedRepeat(k?: Key | Key[] ): boolean isKeyReleased(k?: Key | Key[] ): boolean isMouseDown(m?: MouseButton ): boolean isMousePressed(m?: MouseButton ): boolean isMouseReleased(m?: MouseButton ): boolean isMouseMoved(): boolean isGamepadButtonPressed(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonDown(btn?: KGamepadButton | KGamepadButton[] ): boolean isGamepadButtonReleased(btn?: KGamepadButton | KGamepadButton[] ): boolean isFocused(): boolean getGamepadStick(stick: KGamepadStick ): Vec2 getGamepadAnalogButton(btn: KGamepadButton ): number isButtonPressed(btn?: string | string[] ): boolean isButtonDown(btn?: string | string[] ): boolean isButtonReleased(btn?: string | string[] ): boolean getButton(btn: string ): ButtonBinding getButtons(): ButtonsDef setButton(btn: string , binding: ButtonBinding ): void pressButton(btn: string ): void releaseButton(btn: string ): void charInputted(): string[] onResize(action: ()=>void ): KEventController onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseMove(f: (pos: Vec2 , dpos: Vec2 )=>void ): KEventController onCharInput(action: (ch: string )=>void ): KEventController onTouchStart(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchMove(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchEnd(f: (pos: Vec2 , t: Touch )=>void ): KEventController onScroll(action: (delta: Vec2 )=>void ): KEventController onHide(action: ()=>void ): KEventController onShow(action: ()=>void ): KEventController onTabHide(action: ()=>void ): KEventController onTabShow(action: ()=>void ): KEventController onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController onGamepadConnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadDisconnect(action: (gamepad: KGamepad )=>void ): KEventController onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController getLastInputDeviceType(): "keyboard" | "gamepad" | "mouse" | null events: KEventHandler<AppEventMap>
state: canvas: HTMLCanvasElement buttons: ButtonsDef buttonHandler: ButtonProcessor loopID: null | number stopped: boolean dt: number fixedDt: number maxStep: number restDt: number time: number realTime: number rawFPSCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void fpsCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void timeScale: number skipTime: boolean isHidden: boolean numFrames: number capsOn: boolean mousePos: Vec2 mouseDeltaPos: Vec2 keyState: ButtonState<Key, never> mouseState: ButtonState<MouseButton, never> mergedGamepadState: buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> > lastInputDevice: "mouse" | "keyboard" | "gamepad" | null gamepads: KGamepad[] charInputted: string[] isMouseMoved: boolean lastWidth: number lastHeight: number canvasScaleX: number canvasScaleY: number events: KEventHandler<AppEventMap>
rawFPSCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void
fpsCounter: maxSamples: number history: Float64Array accumulator: number i: number fps: number curNSamples: number timer: number autoRecalculateInterval: number tick(dt: number ): void calculate(): number ago(ago: number ): number | undefined resize(samples: number ): void
mergedGamepadState: buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number>
gamepadStates: Map<number, buttonState: ButtonState<KGamepadButton, KGamepad> stickState: Map<KGamepadStick, Vec2> analogState: Map<string, number> >
onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController
onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
ggl: gl: WebGLRenderingContext opts: BUILDNANAOpt onDestroy(action: ()=>unknown ): void destroy(): void pushTexture2D(item: WebGLTexture ): void popTexture2D(): void pushArrayBuffer(item: WebGLBuffer ): void popArrayBuffer(): void pushElementArrayBuffer(item: WebGLBuffer ): void popElementArrayBuffer(): void pushFramebuffer(item: WebGLFramebuffer ): void popFramebuffer(): void pushRenderbuffer(item: WebGLRenderbuffer ): void popRenderbuffer(): void pushViewport(item: x: number y: number w: number h: number ): void popViewport(): void pushProgram(item: WebGLProgram ): void popProgram(): void setVertexFormat(fmt: VertexFormat ): void
assets: urlPrefix: string sprites: AssetBucket<SpriteData> fonts: AssetBucket<FontData> bitmapFonts: AssetBucket<GfxFont> sounds: AssetBucket<SoundData> shaders: AssetBucket<Shader> custom: AssetBucket<any> prefabAssets: AssetBucket<SerializedGameObj> music: Record<string, string> packer: TexPacker loaded: boolean
appScope: onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController onCharInput(action: (ch: string )=>void ): KEventController onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController onMouseMove(f: (pos: Vec2 , dpos: Vec2 )=>void ): KEventController onTouchStart(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchEnd(f: (pos: Vec2 , t: Touch )=>void ): KEventController onTouchMove(f: (pos: Vec2 , t: Touch )=>void ): KEventController onScroll(action: (delta: Vec2 )=>void ): KEventController onGamepadConnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadDisconnect(action: (gamepad: KGamepad )=>void ): KEventController onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController onTabShow(action: ()=>void ): KEventController onTabHide(action: ()=>void ): KEventController onUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onFixedUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onDraw: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onAdd: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onDestroy: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController onUse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onUnuse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onTag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController onUntag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController on(event: Ev , tag: Tag , cb: (obj: GameObj , args: TupleWithoutFirst )=>void ): KEventController onClick(tag: Tag , action: (obj: GameObj )=>void ): KEventController onCollide: onCollide onCollideEnd: onCollideEnd onCollideUpdate: onCollideUpdate onHover: onHover onHoverEnd: onHoverEnd onHoverUpdate: onHoverUpdate onResize(action: ()=>void ): KEventController onSceneLeave: onSceneLeave onLoad: onLoad onLoading: onLoading onError: onError onLoadError: onLoadError onCleanup(action: ()=>void ): void onShow(action: ()=>void ): KEventController onHide(action: ()=>void ): KEventController
onKeyDown: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPress: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyPressRepeat: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onKeyRelease: (action: (key: Key )=>void )=>KEventController & (key: Key | Key[] , action: (key: Key )=>void )=>KEventController
onMouseDown: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMousePress: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onMouseRelease: (action: (m: MouseButton )=>void )=>KEventController & (mouse: MouseButton | MouseButton[] , action: (m: MouseButton )=>void )=>KEventController
onGamepadButtonDown: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonPress: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadButtonRelease: (action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController & (btn: KGamepadButton | KGamepadButton[] , action: (btn: KGamepadButton , gamepad: KGamepad )=>void )=>KEventController
onGamepadStick(stick: KGamepadStick , action: (value: Vec2 , gp: KGamepad )=>void ): KEventController
onButtonDown: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonPress: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onButtonRelease: (action: (btn: string )=>void )=>KEventController & (btn: string | string , action: (btn: string )=>void )=>KEventController
onUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController
onFixedUpdate: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController
onDraw: (action: ()=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController
onAdd: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController
onDestroy: (action: (obj: GameObj )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj )=>void )=>KEventController
onUse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController
onUnuse: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController
onTag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController
onUntag: (action: (obj: GameObj , compId: string )=>void )=>KEventController & (tag: Tag , action: (obj: GameObj , compId: string )=>void )=>KEventController