{
  "version": 3,
  "sources": ["../src/main.ts", "../src/plugins/layers.ts", "../src/plugins/moreKeys.ts"],
  "sourcesContent": ["import { layerPlugin } from \"./plugins/layers\";\r\nimport { moreKeysPlugin } from \"./plugins/moreKeys\";\r\n\r\nexport {\r\n    layerPlugin,\r\n    moreKeysPlugin,\r\n}\r\n\r\nexport default {\r\n    layerPlugin,\r\n    moreKeysPlugin,\r\n}\r\n", "// Plugin made by DaInfLoop\r\n// https://haroon.repl.co/\r\n\r\n\r\nimport type { KaboomCtx, CompList, GameObj } from \"kaboom\";\r\n\r\nexport function layerPlugin(k: KaboomCtx) {\r\n\tlet userLayers: string[] = [];\r\n\tlet defLayer = \"\";\r\n\tlet _add = k.add;\r\n\r\n\treturn {\r\n\t\t// Layers function\r\n\t\tlayers(layers: string[], def: string) {\r\n\t\t\tuserLayers = layers;\r\n\t\t\tdefLayer = def ?? layers[0];\r\n\t\t},\r\n\t\t// Layer component\r\n\t\tlayer(name: string) {\r\n\t\t\treturn {\r\n\t\t\t\tid: \"layer\",\r\n\t\t\t\tadd() {\r\n\t\t\t\t\tif (userLayers.indexOf(name) == -1) {\r\n\t\t\t\t\t\tthrow new Error(`no layer \"${name}\"`);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet layerZ = userLayers.indexOf(name);\r\n\r\n\t\t\t\t\t// instead of .use(z()) component, only set .z\r\n\t\t\t\t\tthis.z = (layerZ * 1000) + (this.userZ ?? 0);\r\n\t\t\t\t},\r\n\t\t\t\tinspect() {\r\n\t\t\t\t\treturn name;\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t},\r\n\r\n\t\tz(z: number) {\r\n\t\t\treturn {\r\n\t\t\t\tid: \"z\",\r\n\t\t\t\tuserZ: z,\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tadd<T>(components: CompList<T> | GameObj<T> | undefined): GameObj<T> {\r\n\t\t\tif (userLayers.length == 0) return _add(components);\r\n\r\n\t\t\tconst obj = _add(components);\r\n\t\t\tobj.use(this.layer(defLayer));\r\n\r\n\t\t\treturn obj;\r\n\t\t}\r\n\t};\r\n}", "// Plugin made by lajbel\r\n// https://lajbel.github.io\r\n\r\nimport type { KaboomCtx, Key } from \"kaboom\";\r\n\r\nexport function moreKeysPlugin(k: KaboomCtx) {\r\n    return {\r\n        areKeysPressed(keys: Key[]) {\r\n            for (const key of keys) {\r\n                if (k.isKeyPressed(key)) return true;\r\n            }\r\n            return false;\r\n        },\r\n        areKeysDown(keys: Key[]) {\r\n            for (const key of keys) {\r\n                if (k.isKeyDown(key)) return true;\r\n            }\r\n            return false;\r\n        },\r\n        areKeysReleased(keys: Key[]) {\r\n            for (const key of keys) {\r\n                if (k.isKeyReleased(key)) return true;\r\n            }\r\n            return false;\r\n        },\r\n        onKeysPressed(keys: Key[], action: () => void) {\r\n            return k.onUpdate(() => {\r\n                if (this.areKeysPressed(keys)) action();\r\n            });\r\n        },\r\n        onKeysDown(keys: Key[], action: () => void) {\r\n            return k.onUpdate(() => {\r\n                if (this.areKeysDown(keys)) action();\r\n            });\r\n        },\r\n        onKeysReleased(keys: Key[], action: () => void) {\r\n            return k.onUpdate(() => {\r\n                if (this.areKeysReleased(keys)) action();\r\n            });\r\n        }\r\n    }\r\n}\r\n"],
  "mappings": "+cAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,EAAA,gBAAAC,EAAA,mBAAAC,IAAA,eAAAC,EAAAL,GCMO,SAASM,EAAYC,EAAc,CACzC,IAAIC,EAAuB,CAAC,EACxBC,EAAW,GACXC,EAAOH,EAAE,IAEb,MAAO,CAEN,OAAOI,EAAkBC,EAAa,CACrCJ,EAAaG,EACbF,EAAWG,GAAOD,EAAO,CAAC,CAC3B,EAEA,MAAME,EAAc,CACnB,MAAO,CACN,GAAI,QACJ,KAAM,CACL,GAAIL,EAAW,QAAQK,CAAI,GAAK,GAC/B,MAAM,IAAI,MAAM,aAAaA,CAAI,GAAG,EAGrC,IAAIC,EAASN,EAAW,QAAQK,CAAI,EAGpC,KAAK,EAAKC,EAAS,KAAS,KAAK,OAAS,EAC3C,EACA,SAAU,CACT,OAAOD,CACR,CACD,CACD,EAEA,EAAEE,EAAW,CACZ,MAAO,CACN,GAAI,IACJ,MAAOA,CACR,CACD,EAEA,IAAOC,EAA8D,CACpE,GAAIR,EAAW,QAAU,EAAG,OAAOE,EAAKM,CAAU,EAElD,IAAMC,EAAMP,EAAKM,CAAU,EAC3B,OAAAC,EAAI,IAAI,KAAK,MAAMR,CAAQ,CAAC,EAErBQ,CACR,CACD,CACD,CA/CgBC,EAAAZ,EAAA,eCDT,SAASa,EAAeC,EAAc,CACzC,MAAO,CACH,eAAeC,EAAa,CACxB,QAAWC,KAAOD,EACd,GAAID,EAAE,aAAaE,CAAG,EAAG,MAAO,GAEpC,MAAO,EACX,EACA,YAAYD,EAAa,CACrB,QAAWC,KAAOD,EACd,GAAID,EAAE,UAAUE,CAAG,EAAG,MAAO,GAEjC,MAAO,EACX,EACA,gBAAgBD,EAAa,CACzB,QAAWC,KAAOD,EACd,GAAID,EAAE,cAAcE,CAAG,EAAG,MAAO,GAErC,MAAO,EACX,EACA,cAAcD,EAAaE,EAAoB,CAC3C,OAAOH,EAAE,SAAS,IAAM,CAChB,KAAK,eAAeC,CAAI,GAAGE,EAAO,CAC1C,CAAC,CACL,EACA,WAAWF,EAAaE,EAAoB,CACxC,OAAOH,EAAE,SAAS,IAAM,CAChB,KAAK,YAAYC,CAAI,GAAGE,EAAO,CACvC,CAAC,CACL,EACA,eAAeF,EAAaE,EAAoB,CAC5C,OAAOH,EAAE,SAAS,IAAM,CAChB,KAAK,gBAAgBC,CAAI,GAAGE,EAAO,CAC3C,CAAC,CACL,CACJ,CACJ,CApCgBC,EAAAL,EAAA,kBFGhB,IAAOM,EAAQ,CACX,YAAAC,EACA,eAAAC,CACJ",
  "names": ["main_exports", "__export", "main_default", "layerPlugin", "moreKeysPlugin", "__toCommonJS", "layerPlugin", "k", "userLayers", "defLayer", "_add", "layers", "def", "name", "layerZ", "z", "components", "obj", "__name", "moreKeysPlugin", "k", "keys", "key", "action", "__name", "main_default", "layerPlugin", "moreKeysPlugin"]
}
