From 322eca52cf05108f5e16209d47700e3653eed776 Mon Sep 17 00:00:00 2001 From: klangner Date: Thu, 22 Oct 2020 22:35:46 +0200 Subject: [PATCH] bsp rooms --- docs/0.bootstrap.js | 12 ++++++------ docs/3bda724f23e860df0b9c.module.wasm | Bin 0 -> 102281 bytes docs/bootstrap.js | 2 +- docs/index.html | 1 + 4 files changed, 8 insertions(+), 7 deletions(-) create mode 100644 docs/3bda724f23e860df0b9c.module.wasm diff --git a/docs/0.bootstrap.js b/docs/0.bootstrap.js index 1681d54..2d4e83c 100644 --- a/docs/0.bootstrap.js +++ b/docs/0.bootstrap.js @@ -4,11 +4,11 @@ /*!*****************************!*\ !*** ../pkg/mapgen_demo.js ***! \*****************************/ -/*! exports provided: Cell, World, __wbindgen_object_drop_ref, __wbg_getRandomValues_3ac1b33c90b52596, __wbg_randomFillSync_6f956029658662ec, __wbg_self_1c83eb4471d9eb9b, __wbg_static_accessor_MODULE_abf5ae284bffdf45, __wbg_require_5b2b5b594d809d9f, __wbg_crypto_c12f14e810edcaa2, __wbg_msCrypto_679be765111ba775, __wbindgen_is_undefined, __wbg_getRandomValues_05a60bf171bfc2be, __wbg_instanceof_Window_adf3196bdc02b386, __wbg_document_6cc8d0b87c0a99b9, __wbg_getElementById_0cb6ad9511b1efc0, __wbg_setinnerHTML_4ff235db1a3cb4d8, __wbg_call_8e95613cc6524977, __wbindgen_object_clone_ref, __wbg_newnoargs_f3b8a801d5d4b079, __wbg_self_07b2f89e82ceb76d, __wbg_window_ba85d88572adc0dc, __wbg_globalThis_b9277fc37e201fe5, __wbg_global_e16303fe83e1d57f, __wbindgen_throw */ +/*! exports provided: Cell, Position, World, __wbindgen_object_drop_ref, __wbg_getRandomValues_3ac1b33c90b52596, __wbg_randomFillSync_6f956029658662ec, __wbg_self_1c83eb4471d9eb9b, __wbg_static_accessor_MODULE_abf5ae284bffdf45, __wbg_require_5b2b5b594d809d9f, __wbg_crypto_c12f14e810edcaa2, __wbg_msCrypto_679be765111ba775, __wbindgen_is_undefined, __wbg_getRandomValues_05a60bf171bfc2be, __wbg_instanceof_Window_adf3196bdc02b386, __wbg_document_6cc8d0b87c0a99b9, __wbg_getElementById_0cb6ad9511b1efc0, __wbg_setinnerHTML_4ff235db1a3cb4d8, __wbg_call_8e95613cc6524977, __wbindgen_object_clone_ref, __wbg_newnoargs_f3b8a801d5d4b079, __wbg_self_07b2f89e82ceb76d, __wbg_window_ba85d88572adc0dc, __wbg_globalThis_b9277fc37e201fe5, __wbg_global_e16303fe83e1d57f, __wbindgen_throw */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mapgen_demo_bg.wasm */ \"../pkg/mapgen_demo_bg.wasm\");\n/* harmony import */ var _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mapgen_demo_bg.js */ \"../pkg/mapgen_demo_bg.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Cell\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"Cell\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"World\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"World\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_drop_ref\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_object_drop_ref\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_3ac1b33c90b52596\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getRandomValues_3ac1b33c90b52596\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_randomFillSync_6f956029658662ec\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_randomFillSync_6f956029658662ec\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_1c83eb4471d9eb9b\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_self_1c83eb4471d9eb9b\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_static_accessor_MODULE_abf5ae284bffdf45\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_static_accessor_MODULE_abf5ae284bffdf45\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_require_5b2b5b594d809d9f\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_require_5b2b5b594d809d9f\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_crypto_c12f14e810edcaa2\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_crypto_c12f14e810edcaa2\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_msCrypto_679be765111ba775\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_msCrypto_679be765111ba775\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_is_undefined\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_is_undefined\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_05a60bf171bfc2be\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getRandomValues_05a60bf171bfc2be\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_instanceof_Window_adf3196bdc02b386\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_instanceof_Window_adf3196bdc02b386\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_document_6cc8d0b87c0a99b9\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_document_6cc8d0b87c0a99b9\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getElementById_0cb6ad9511b1efc0\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getElementById_0cb6ad9511b1efc0\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_setinnerHTML_4ff235db1a3cb4d8\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_setinnerHTML_4ff235db1a3cb4d8\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_call_8e95613cc6524977\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_call_8e95613cc6524977\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_clone_ref\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_object_clone_ref\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_newnoargs_f3b8a801d5d4b079\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_newnoargs_f3b8a801d5d4b079\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_07b2f89e82ceb76d\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_self_07b2f89e82ceb76d\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_window_ba85d88572adc0dc\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_window_ba85d88572adc0dc\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_globalThis_b9277fc37e201fe5\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_globalThis_b9277fc37e201fe5\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_global_e16303fe83e1d57f\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_global_e16303fe83e1d57f\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_throw\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_throw\"]; });\n\n\n\n\n//# sourceURL=webpack:///../pkg/mapgen_demo.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mapgen_demo_bg.wasm */ \"../pkg/mapgen_demo_bg.wasm\");\n/* harmony import */ var _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mapgen_demo_bg.js */ \"../pkg/mapgen_demo_bg.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Cell\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"Cell\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Position\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"Position\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"World\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"World\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_drop_ref\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_object_drop_ref\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_3ac1b33c90b52596\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getRandomValues_3ac1b33c90b52596\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_randomFillSync_6f956029658662ec\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_randomFillSync_6f956029658662ec\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_1c83eb4471d9eb9b\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_self_1c83eb4471d9eb9b\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_static_accessor_MODULE_abf5ae284bffdf45\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_static_accessor_MODULE_abf5ae284bffdf45\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_require_5b2b5b594d809d9f\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_require_5b2b5b594d809d9f\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_crypto_c12f14e810edcaa2\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_crypto_c12f14e810edcaa2\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_msCrypto_679be765111ba775\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_msCrypto_679be765111ba775\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_is_undefined\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_is_undefined\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_05a60bf171bfc2be\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getRandomValues_05a60bf171bfc2be\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_instanceof_Window_adf3196bdc02b386\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_instanceof_Window_adf3196bdc02b386\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_document_6cc8d0b87c0a99b9\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_document_6cc8d0b87c0a99b9\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getElementById_0cb6ad9511b1efc0\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_getElementById_0cb6ad9511b1efc0\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_setinnerHTML_4ff235db1a3cb4d8\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_setinnerHTML_4ff235db1a3cb4d8\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_call_8e95613cc6524977\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_call_8e95613cc6524977\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_clone_ref\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_object_clone_ref\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_newnoargs_f3b8a801d5d4b079\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_newnoargs_f3b8a801d5d4b079\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_07b2f89e82ceb76d\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_self_07b2f89e82ceb76d\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_window_ba85d88572adc0dc\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_window_ba85d88572adc0dc\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_globalThis_b9277fc37e201fe5\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_globalThis_b9277fc37e201fe5\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbg_global_e16303fe83e1d57f\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbg_global_e16303fe83e1d57f\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_throw\", function() { return _mapgen_demo_bg_js__WEBPACK_IMPORTED_MODULE_1__[\"__wbindgen_throw\"]; });\n\n\n\n\n//# sourceURL=webpack:///../pkg/mapgen_demo.js?"); /***/ }), @@ -16,11 +16,11 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _map /*!********************************!*\ !*** ../pkg/mapgen_demo_bg.js ***! \********************************/ -/*! exports provided: Cell, World, __wbindgen_object_drop_ref, __wbg_getRandomValues_3ac1b33c90b52596, __wbg_randomFillSync_6f956029658662ec, __wbg_self_1c83eb4471d9eb9b, __wbg_static_accessor_MODULE_abf5ae284bffdf45, __wbg_require_5b2b5b594d809d9f, __wbg_crypto_c12f14e810edcaa2, __wbg_msCrypto_679be765111ba775, __wbindgen_is_undefined, __wbg_getRandomValues_05a60bf171bfc2be, __wbg_instanceof_Window_adf3196bdc02b386, __wbg_document_6cc8d0b87c0a99b9, __wbg_getElementById_0cb6ad9511b1efc0, __wbg_setinnerHTML_4ff235db1a3cb4d8, __wbg_call_8e95613cc6524977, __wbindgen_object_clone_ref, __wbg_newnoargs_f3b8a801d5d4b079, __wbg_self_07b2f89e82ceb76d, __wbg_window_ba85d88572adc0dc, __wbg_globalThis_b9277fc37e201fe5, __wbg_global_e16303fe83e1d57f, __wbindgen_throw */ +/*! exports provided: Cell, Position, World, __wbindgen_object_drop_ref, __wbg_getRandomValues_3ac1b33c90b52596, __wbg_randomFillSync_6f956029658662ec, __wbg_self_1c83eb4471d9eb9b, __wbg_static_accessor_MODULE_abf5ae284bffdf45, __wbg_require_5b2b5b594d809d9f, __wbg_crypto_c12f14e810edcaa2, __wbg_msCrypto_679be765111ba775, __wbindgen_is_undefined, __wbg_getRandomValues_05a60bf171bfc2be, __wbg_instanceof_Window_adf3196bdc02b386, __wbg_document_6cc8d0b87c0a99b9, __wbg_getElementById_0cb6ad9511b1efc0, __wbg_setinnerHTML_4ff235db1a3cb4d8, __wbg_call_8e95613cc6524977, __wbindgen_object_clone_ref, __wbg_newnoargs_f3b8a801d5d4b079, __wbg_self_07b2f89e82ceb76d, __wbg_window_ba85d88572adc0dc, __wbg_globalThis_b9277fc37e201fe5, __wbg_global_e16303fe83e1d57f, __wbindgen_throw */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(module, global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Cell\", function() { return Cell; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"World\", function() { return World; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_drop_ref\", function() { return __wbindgen_object_drop_ref; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_3ac1b33c90b52596\", function() { return __wbg_getRandomValues_3ac1b33c90b52596; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_randomFillSync_6f956029658662ec\", function() { return __wbg_randomFillSync_6f956029658662ec; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_1c83eb4471d9eb9b\", function() { return __wbg_self_1c83eb4471d9eb9b; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_static_accessor_MODULE_abf5ae284bffdf45\", function() { return __wbg_static_accessor_MODULE_abf5ae284bffdf45; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_require_5b2b5b594d809d9f\", function() { return __wbg_require_5b2b5b594d809d9f; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_crypto_c12f14e810edcaa2\", function() { return __wbg_crypto_c12f14e810edcaa2; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_msCrypto_679be765111ba775\", function() { return __wbg_msCrypto_679be765111ba775; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_is_undefined\", function() { return __wbindgen_is_undefined; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_05a60bf171bfc2be\", function() { return __wbg_getRandomValues_05a60bf171bfc2be; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_instanceof_Window_adf3196bdc02b386\", function() { return __wbg_instanceof_Window_adf3196bdc02b386; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_document_6cc8d0b87c0a99b9\", function() { return __wbg_document_6cc8d0b87c0a99b9; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getElementById_0cb6ad9511b1efc0\", function() { return __wbg_getElementById_0cb6ad9511b1efc0; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_setinnerHTML_4ff235db1a3cb4d8\", function() { return __wbg_setinnerHTML_4ff235db1a3cb4d8; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_call_8e95613cc6524977\", function() { return __wbg_call_8e95613cc6524977; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_clone_ref\", function() { return __wbindgen_object_clone_ref; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_newnoargs_f3b8a801d5d4b079\", function() { return __wbg_newnoargs_f3b8a801d5d4b079; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_07b2f89e82ceb76d\", function() { return __wbg_self_07b2f89e82ceb76d; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_window_ba85d88572adc0dc\", function() { return __wbg_window_ba85d88572adc0dc; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_globalThis_b9277fc37e201fe5\", function() { return __wbg_globalThis_b9277fc37e201fe5; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_global_e16303fe83e1d57f\", function() { return __wbg_global_e16303fe83e1d57f; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_throw\", function() { return __wbindgen_throw; });\n/* harmony import */ var _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mapgen_demo_bg.wasm */ \"../pkg/mapgen_demo_bg.wasm\");\n\n\nconst heap = new Array(32).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction dropObject(idx) {\n if (idx < 36) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder;\n\nlet cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true });\n\ncachedTextDecoder.decode();\n\nlet cachegetUint8Memory0 = null;\nfunction getUint8Memory0() {\n if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"memory\"].buffer) {\n cachegetUint8Memory0 = new Uint8Array(_mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"memory\"].buffer);\n }\n return cachegetUint8Memory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));\n}\n\nfunction handleError(f) {\n return function () {\n try {\n return f.apply(this, arguments);\n\n } catch (e) {\n _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"__wbindgen_exn_store\"](addHeapObject(e));\n }\n };\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n/**\n*/\nconst Cell = Object.freeze({ Floor:0,\"0\":\"Floor\",Wall:1,\"1\":\"Wall\", });\n/**\n*/\nclass World {\n\n static __wrap(ptr) {\n const obj = Object.create(World.prototype);\n obj.ptr = ptr;\n\n return obj;\n }\n\n free() {\n const ptr = this.ptr;\n this.ptr = 0;\n\n _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"__wbg_world_free\"](ptr);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_cellular_automata(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_cellular_automata\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_simple_rooms(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_simple_rooms\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_bsp_interior(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_bsp_interior\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_drunkard(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_drunkard\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_random(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_random\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @returns {number}\n */\n width() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_width\"](this.ptr);\n return ret >>> 0;\n }\n /**\n * @returns {number}\n */\n height() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_height\"](this.ptr);\n return ret >>> 0;\n }\n /**\n * @returns {number}\n */\n tiles() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_tiles\"](this.ptr);\n return ret;\n }\n}\n\nconst __wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n};\n\nconst __wbg_getRandomValues_3ac1b33c90b52596 = function(arg0, arg1, arg2) {\n getObject(arg0).getRandomValues(getArrayU8FromWasm0(arg1, arg2));\n};\n\nconst __wbg_randomFillSync_6f956029658662ec = function(arg0, arg1, arg2) {\n getObject(arg0).randomFillSync(getArrayU8FromWasm0(arg1, arg2));\n};\n\nconst __wbg_self_1c83eb4471d9eb9b = handleError(function() {\n var ret = self.self;\n return addHeapObject(ret);\n});\n\nconst __wbg_static_accessor_MODULE_abf5ae284bffdf45 = function() {\n var ret = module;\n return addHeapObject(ret);\n};\n\nconst __wbg_require_5b2b5b594d809d9f = function(arg0, arg1, arg2) {\n var ret = getObject(arg0).require(getStringFromWasm0(arg1, arg2));\n return addHeapObject(ret);\n};\n\nconst __wbg_crypto_c12f14e810edcaa2 = function(arg0) {\n var ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n};\n\nconst __wbg_msCrypto_679be765111ba775 = function(arg0) {\n var ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n};\n\nconst __wbindgen_is_undefined = function(arg0) {\n var ret = getObject(arg0) === undefined;\n return ret;\n};\n\nconst __wbg_getRandomValues_05a60bf171bfc2be = function(arg0) {\n var ret = getObject(arg0).getRandomValues;\n return addHeapObject(ret);\n};\n\nconst __wbg_instanceof_Window_adf3196bdc02b386 = function(arg0) {\n var ret = getObject(arg0) instanceof Window;\n return ret;\n};\n\nconst __wbg_document_6cc8d0b87c0a99b9 = function(arg0) {\n var ret = getObject(arg0).document;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n};\n\nconst __wbg_getElementById_0cb6ad9511b1efc0 = function(arg0, arg1, arg2) {\n var ret = getObject(arg0).getElementById(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n};\n\nconst __wbg_setinnerHTML_4ff235db1a3cb4d8 = function(arg0, arg1, arg2) {\n getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2);\n};\n\nconst __wbg_call_8e95613cc6524977 = handleError(function(arg0, arg1) {\n var ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n});\n\nconst __wbindgen_object_clone_ref = function(arg0) {\n var ret = getObject(arg0);\n return addHeapObject(ret);\n};\n\nconst __wbg_newnoargs_f3b8a801d5d4b079 = function(arg0, arg1) {\n var ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n};\n\nconst __wbg_self_07b2f89e82ceb76d = handleError(function() {\n var ret = self.self;\n return addHeapObject(ret);\n});\n\nconst __wbg_window_ba85d88572adc0dc = handleError(function() {\n var ret = window.window;\n return addHeapObject(ret);\n});\n\nconst __wbg_globalThis_b9277fc37e201fe5 = handleError(function() {\n var ret = globalThis.globalThis;\n return addHeapObject(ret);\n});\n\nconst __wbg_global_e16303fe83e1d57f = handleError(function() {\n var ret = global.global;\n return addHeapObject(ret);\n});\n\nconst __wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n};\n\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../www/node_modules/webpack/buildin/harmony-module.js */ \"./node_modules/webpack/buildin/harmony-module.js\")(module), __webpack_require__(/*! ./../www/node_modules/webpack/buildin/global.js */ \"./node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:///../pkg/mapgen_demo_bg.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(function(module, global) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Cell\", function() { return Cell; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Position\", function() { return Position; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"World\", function() { return World; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_drop_ref\", function() { return __wbindgen_object_drop_ref; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_3ac1b33c90b52596\", function() { return __wbg_getRandomValues_3ac1b33c90b52596; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_randomFillSync_6f956029658662ec\", function() { return __wbg_randomFillSync_6f956029658662ec; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_1c83eb4471d9eb9b\", function() { return __wbg_self_1c83eb4471d9eb9b; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_static_accessor_MODULE_abf5ae284bffdf45\", function() { return __wbg_static_accessor_MODULE_abf5ae284bffdf45; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_require_5b2b5b594d809d9f\", function() { return __wbg_require_5b2b5b594d809d9f; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_crypto_c12f14e810edcaa2\", function() { return __wbg_crypto_c12f14e810edcaa2; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_msCrypto_679be765111ba775\", function() { return __wbg_msCrypto_679be765111ba775; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_is_undefined\", function() { return __wbindgen_is_undefined; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getRandomValues_05a60bf171bfc2be\", function() { return __wbg_getRandomValues_05a60bf171bfc2be; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_instanceof_Window_adf3196bdc02b386\", function() { return __wbg_instanceof_Window_adf3196bdc02b386; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_document_6cc8d0b87c0a99b9\", function() { return __wbg_document_6cc8d0b87c0a99b9; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_getElementById_0cb6ad9511b1efc0\", function() { return __wbg_getElementById_0cb6ad9511b1efc0; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_setinnerHTML_4ff235db1a3cb4d8\", function() { return __wbg_setinnerHTML_4ff235db1a3cb4d8; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_call_8e95613cc6524977\", function() { return __wbg_call_8e95613cc6524977; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_object_clone_ref\", function() { return __wbindgen_object_clone_ref; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_newnoargs_f3b8a801d5d4b079\", function() { return __wbg_newnoargs_f3b8a801d5d4b079; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_self_07b2f89e82ceb76d\", function() { return __wbg_self_07b2f89e82ceb76d; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_window_ba85d88572adc0dc\", function() { return __wbg_window_ba85d88572adc0dc; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_globalThis_b9277fc37e201fe5\", function() { return __wbg_globalThis_b9277fc37e201fe5; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbg_global_e16303fe83e1d57f\", function() { return __wbg_global_e16303fe83e1d57f; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"__wbindgen_throw\", function() { return __wbindgen_throw; });\n/* harmony import */ var _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mapgen_demo_bg.wasm */ \"../pkg/mapgen_demo_bg.wasm\");\n\n\nconst heap = new Array(32).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nfunction getObject(idx) { return heap[idx]; }\n\nlet heap_next = heap.length;\n\nfunction dropObject(idx) {\n if (idx < 36) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nconst lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder;\n\nlet cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true });\n\ncachedTextDecoder.decode();\n\nlet cachegetUint8Memory0 = null;\nfunction getUint8Memory0() {\n if (cachegetUint8Memory0 === null || cachegetUint8Memory0.buffer !== _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"memory\"].buffer) {\n cachegetUint8Memory0 = new Uint8Array(_mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"memory\"].buffer);\n }\n return cachegetUint8Memory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len));\n}\n\nfunction handleError(f) {\n return function () {\n try {\n return f.apply(this, arguments);\n\n } catch (e) {\n _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"__wbindgen_exn_store\"](addHeapObject(e));\n }\n };\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n return getUint8Memory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n/**\n*/\nconst Cell = Object.freeze({ Floor:0,\"0\":\"Floor\",Wall:1,\"1\":\"Wall\", });\n/**\n*/\nclass Position {\n\n static __wrap(ptr) {\n const obj = Object.create(Position.prototype);\n obj.ptr = ptr;\n\n return obj;\n }\n\n free() {\n const ptr = this.ptr;\n this.ptr = 0;\n\n _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"__wbg_position_free\"](ptr);\n }\n /**\n * @param {number} col\n * @param {number} row\n * @returns {Position}\n */\n static new(col, row) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"position_new\"](col, row);\n return Position.__wrap(ret);\n }\n /**\n * @returns {number}\n */\n col() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"position_col\"](this.ptr);\n return ret >>> 0;\n }\n /**\n * @returns {number}\n */\n row() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"position_row\"](this.ptr);\n return ret >>> 0;\n }\n}\n/**\n*/\nclass World {\n\n static __wrap(ptr) {\n const obj = Object.create(World.prototype);\n obj.ptr = ptr;\n\n return obj;\n }\n\n free() {\n const ptr = this.ptr;\n this.ptr = 0;\n\n _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"__wbg_world_free\"](ptr);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_cellular_automata(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_cellular_automata\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_simple_rooms(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_simple_rooms\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_bsp_rooms(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_bsp_rooms\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_bsp_interior(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_bsp_interior\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_drunkard(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_drunkard\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @param {number} width\n * @param {number} height\n * @param {number} seed\n * @returns {World}\n */\n static new_random(width, height, seed) {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_new_random\"](width, height, seed);\n return World.__wrap(ret);\n }\n /**\n * @returns {number}\n */\n width() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"position_col\"](this.ptr);\n return ret >>> 0;\n }\n /**\n * @returns {number}\n */\n height() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_height\"](this.ptr);\n return ret >>> 0;\n }\n /**\n * @returns {number}\n */\n tiles() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_tiles\"](this.ptr);\n return ret;\n }\n /**\n * @returns {Position}\n */\n player_pos() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_player_pos\"](this.ptr);\n return Position.__wrap(ret);\n }\n /**\n * @returns {Position}\n */\n exit_pos() {\n var ret = _mapgen_demo_bg_wasm__WEBPACK_IMPORTED_MODULE_0__[\"world_exit_pos\"](this.ptr);\n return Position.__wrap(ret);\n }\n}\n\nconst __wbindgen_object_drop_ref = function(arg0) {\n takeObject(arg0);\n};\n\nconst __wbg_getRandomValues_3ac1b33c90b52596 = function(arg0, arg1, arg2) {\n getObject(arg0).getRandomValues(getArrayU8FromWasm0(arg1, arg2));\n};\n\nconst __wbg_randomFillSync_6f956029658662ec = function(arg0, arg1, arg2) {\n getObject(arg0).randomFillSync(getArrayU8FromWasm0(arg1, arg2));\n};\n\nconst __wbg_self_1c83eb4471d9eb9b = handleError(function() {\n var ret = self.self;\n return addHeapObject(ret);\n});\n\nconst __wbg_static_accessor_MODULE_abf5ae284bffdf45 = function() {\n var ret = module;\n return addHeapObject(ret);\n};\n\nconst __wbg_require_5b2b5b594d809d9f = function(arg0, arg1, arg2) {\n var ret = getObject(arg0).require(getStringFromWasm0(arg1, arg2));\n return addHeapObject(ret);\n};\n\nconst __wbg_crypto_c12f14e810edcaa2 = function(arg0) {\n var ret = getObject(arg0).crypto;\n return addHeapObject(ret);\n};\n\nconst __wbg_msCrypto_679be765111ba775 = function(arg0) {\n var ret = getObject(arg0).msCrypto;\n return addHeapObject(ret);\n};\n\nconst __wbindgen_is_undefined = function(arg0) {\n var ret = getObject(arg0) === undefined;\n return ret;\n};\n\nconst __wbg_getRandomValues_05a60bf171bfc2be = function(arg0) {\n var ret = getObject(arg0).getRandomValues;\n return addHeapObject(ret);\n};\n\nconst __wbg_instanceof_Window_adf3196bdc02b386 = function(arg0) {\n var ret = getObject(arg0) instanceof Window;\n return ret;\n};\n\nconst __wbg_document_6cc8d0b87c0a99b9 = function(arg0) {\n var ret = getObject(arg0).document;\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n};\n\nconst __wbg_getElementById_0cb6ad9511b1efc0 = function(arg0, arg1, arg2) {\n var ret = getObject(arg0).getElementById(getStringFromWasm0(arg1, arg2));\n return isLikeNone(ret) ? 0 : addHeapObject(ret);\n};\n\nconst __wbg_setinnerHTML_4ff235db1a3cb4d8 = function(arg0, arg1, arg2) {\n getObject(arg0).innerHTML = getStringFromWasm0(arg1, arg2);\n};\n\nconst __wbg_call_8e95613cc6524977 = handleError(function(arg0, arg1) {\n var ret = getObject(arg0).call(getObject(arg1));\n return addHeapObject(ret);\n});\n\nconst __wbindgen_object_clone_ref = function(arg0) {\n var ret = getObject(arg0);\n return addHeapObject(ret);\n};\n\nconst __wbg_newnoargs_f3b8a801d5d4b079 = function(arg0, arg1) {\n var ret = new Function(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n};\n\nconst __wbg_self_07b2f89e82ceb76d = handleError(function() {\n var ret = self.self;\n return addHeapObject(ret);\n});\n\nconst __wbg_window_ba85d88572adc0dc = handleError(function() {\n var ret = window.window;\n return addHeapObject(ret);\n});\n\nconst __wbg_globalThis_b9277fc37e201fe5 = handleError(function() {\n var ret = globalThis.globalThis;\n return addHeapObject(ret);\n});\n\nconst __wbg_global_e16303fe83e1d57f = handleError(function() {\n var ret = global.global;\n return addHeapObject(ret);\n});\n\nconst __wbindgen_throw = function(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n};\n\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../www/node_modules/webpack/buildin/harmony-module.js */ \"./node_modules/webpack/buildin/harmony-module.js\")(module), __webpack_require__(/*! ./../www/node_modules/webpack/buildin/global.js */ \"./node_modules/webpack/buildin/global.js\")))\n\n//# sourceURL=webpack:///../pkg/mapgen_demo_bg.js?"); /***/ }), @@ -28,7 +28,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* WEBPACK VAR INJECTION */(f /*!**********************************!*\ !*** ../pkg/mapgen_demo_bg.wasm ***! \**********************************/ -/*! exports provided: memory, __wbg_world_free, world_new_cellular_automata, world_new_simple_rooms, world_new_bsp_interior, world_new_drunkard, world_new_random, world_width, world_height, world_tiles, __wbindgen_exn_store */ +/*! exports provided: memory, __wbg_world_free, __wbg_position_free, world_new_cellular_automata, world_new_simple_rooms, world_new_bsp_rooms, world_new_bsp_interior, world_new_drunkard, world_new_random, world_height, world_tiles, world_player_pos, world_exit_pos, position_new, position_col, position_row, world_width, __wbindgen_exn_store */ /***/ (function(module, exports, __webpack_require__) { eval("\"use strict\";\n// Instantiate WebAssembly module\nvar wasmExports = __webpack_require__.w[module.i];\n__webpack_require__.r(exports);\n// export exports from WebAssembly module\nfor(var name in wasmExports) if(name != \"__webpack_init__\") exports[name] = wasmExports[name];\n// exec imports from WebAssembly module (for esm order)\n/* harmony import */ var m0 = __webpack_require__(/*! ./mapgen_demo_bg.js */ \"../pkg/mapgen_demo_bg.js\");\n\n\n// exec wasm module\nwasmExports[\"__webpack_init__\"]()\n\n//# sourceURL=webpack:///../pkg/mapgen_demo_bg.wasm?"); @@ -43,7 +43,7 @@ eval("\"use strict\";\n// Instantiate WebAssembly module\nvar wasmExports = __we /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var mapgen_demo__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! mapgen-demo */ \"../pkg/mapgen_demo.js\");\n/* harmony import */ var mapgen_demo_mapgen_demo_bg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! mapgen-demo/mapgen_demo_bg */ \"../pkg/mapgen_demo_bg.wasm\");\n\n\n\nconst CELL_SIZE = 15;\nconst GRID_COLOR = \"#CCCCCC\";\nconst DEAD_COLOR = \"#FFFFFF\";\nconst ALIVE_COLOR = \"#000000\";\n\nvar world = null;\nconst width = 80;\nconst height = 50;\n\nconst infoDiv = document.getElementById('map-info');\n// Give the canvas room for all of our cells and a 1px border\n// around each of them.\nconst canvas = document.getElementById(\"mapgen-canvas\");\ncanvas.height = CELL_SIZE * height;\ncanvas.width = CELL_SIZE * width;\n// Load tiles bitmap\nlet tiles_image = new Image();\ntiles_image.src = 'assets/tiles.png';\n\nconst ctx = canvas.getContext('2d');\n\nfunction get_seed() {\n var seed_text = document.getElementById(\"seed\").value;\n if( seed_text.length > 0) {\n return Number(seed_text);\n } \n return Date.now();\n}\n\n// Map generators\nfunction newCellularAutomata() {\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_cellular_automata(width, height, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newSimpleRooms() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_simple_rooms(width, height, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newBspInterior() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_bsp_interior(width, height, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newDrunkard() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_drunkard(width, height, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newRandomGen() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_random(width, height, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nconst renderLoop = () => {\n // universe.tick();\n\n // drawGrid();\n drawCells();\n\n requestAnimationFrame(renderLoop);\n};\n\nconst drawGrid = () => {\n ctx.beginPath();\n ctx.strokeStyle = GRID_COLOR;\n\n // Vertical lines.\n for (let i = 0; i <= width; i++) {\n ctx.moveTo(i * (CELL_SIZE + 1) + 1, 0);\n ctx.lineTo(i * (CELL_SIZE + 1) + 1, (CELL_SIZE + 1) * height + 1);\n }\n\n // Horizontal lines.\n for (let j = 0; j <= height; j++) {\n ctx.moveTo(0, j * (CELL_SIZE + 1) + 1);\n ctx.lineTo((CELL_SIZE + 1) * width + 1, j * (CELL_SIZE + 1) + 1);\n }\n\n ctx.stroke();\n};\n\nconst getIndex = (row, column) => {\n return row * width + column;\n};\n\nconst is_inner_wall = (tiles, col, row) => {\n\n for (let c = Math.max(col-1, 0); c < Math.min(col+2, width); c++) {\n for (let r = Math.max(row-1, 0); r < Math.min(row+2, height); r++) {\n if ((c != col || r != row) && tiles[getIndex(r, c)] == mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"Cell\"].Floor) {\n return false;\n }\n }\n }\n\n return true;\n}\n\nconst drawCells = () => {\n const tilesPtr = world.tiles();\n const tiles = new Uint8Array(mapgen_demo_mapgen_demo_bg__WEBPACK_IMPORTED_MODULE_1__[\"memory\"].buffer, tilesPtr, width * height);\n const tile_size = 39;\n\n ctx.beginPath();\n\n for (let row = 0; row < height; row++) {\n for (let col = 0; col < width; col++) {\n const idx = getIndex(row, col);\n\n var tile_x = 0;\n var tile_y = 0;\n if (tiles[idx] == mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"Cell\"].Floor) {\n tile_x = 3;\n tile_y = 2;\n } else if (is_inner_wall(tiles, col, row)){\n tile_x = 18;\n tile_y = 0;\n } else {\n tile_x = 0;\n tile_y = 3;\n }\n ctx.drawImage(\n tiles_image, \n tile_x * tile_size+3, \n tile_y * tile_size+3, \n tile_size-3, \n tile_size-3, \n col * CELL_SIZE,\n row * CELL_SIZE,\n CELL_SIZE,\n CELL_SIZE);\n }\n }\n\n ctx.stroke();\n};\n\nnewRandomGen();\n\n// Connect UI element\ndocument.getElementById('cellular-automata-option').addEventListener('click', newCellularAutomata);\ndocument.getElementById('simple-rooms-option').addEventListener('click', newSimpleRooms);\ndocument.getElementById('bsp-interior-option').addEventListener('click', newBspInterior);\ndocument.getElementById('drunkard-option').addEventListener('click', newDrunkard);\ndocument.getElementById('random-option').addEventListener('click', newRandomGen);\n\n\n//# sourceURL=webpack:///./index.js?"); +eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var mapgen_demo__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! mapgen-demo */ \"../pkg/mapgen_demo.js\");\n/* harmony import */ var mapgen_demo_mapgen_demo_bg__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! mapgen-demo/mapgen_demo_bg */ \"../pkg/mapgen_demo_bg.wasm\");\n\n\n\nconst CANVAS_SIZE = 750;\nconst GRID_COLS = 80;\nconst GRID_ROWS = 50;\nconst CELL_SIZE = CANVAS_SIZE/GRID_ROWS;\nconst TILE_SIZE = 39;\n\n// Init canvas\nconst canvas = document.getElementById(\"mapgen-canvas\");\ncanvas.height = CELL_SIZE * GRID_ROWS;\ncanvas.width = CELL_SIZE * GRID_COLS;\nconst ctx = canvas.getContext('2d');\n// Info box\nconst infoDiv = document.getElementById('map-info');\n// API to the WASM\nlet world = null;\n\n// Load tiles bitmap\nlet tiles_image = new Image();\ntiles_image.src = 'assets/tiles.png';\n\n// Take provided seed or generate new one\nfunction get_seed() {\n var seed_text = document.getElementById(\"seed\").value;\n if( seed_text.length > 0) {\n return Number(seed_text);\n } \n return Date.now();\n}\n\n// Map generators\nfunction newCellularAutomata() {\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_cellular_automata(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newSimpleRooms() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_simple_rooms(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newBspInterior() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_bsp_interior(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newDrunkard() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_drunkard(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newBspRooms() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_bsp_rooms(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nfunction newRandomGen() {\n var seed = Date.now();\n world = mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"World\"].new_random(GRID_COLS, GRID_ROWS, get_seed());\n requestAnimationFrame(renderLoop);\n}\n\nconst renderLoop = () => {\n // universe.tick();\n drawCells();\n requestAnimationFrame(renderLoop);\n};\n\nconst getIndex = (row, column) => {\n return row * GRID_COLS + column;\n};\n\nconst is_inner_wall = (tiles, col, row) => {\n for (let c = Math.max(col - 1, 0); c < Math.min(col + 2, GRID_COLS); c++) {\n for (let r = Math.max(row - 1, 0); r < Math.min(row + 2, GRID_ROWS); r++) {\n if ((c != col || r != row) && tiles[getIndex(r, c)] == mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"Cell\"].Floor) {\n return false;\n }\n }\n }\n\n return true;\n}\n\nconst draw_tile = (ctx, row, col, tile_type) => {\n var tile_x = 0;\n var tile_y = 0;\n if (tile_type == \"floor\") {\n tile_x = 3;\n tile_y = 2;\n } else if (tile_type == \"wall\") {\n tile_x = 0;\n tile_y = 3;\n } else if (tile_type == \"player\") {\n tile_x = 0;\n tile_y = 8;\n } else if (tile_type == \"exit\") {\n tile_x = 10;\n tile_y = 1;\n } else {\n tile_x = 18;\n tile_y = 0;\n }\n\n ctx.drawImage(\n tiles_image,\n tile_x * TILE_SIZE + 3,\n tile_y * TILE_SIZE + 3,\n TILE_SIZE - 3,\n TILE_SIZE - 3,\n col * CELL_SIZE,\n row * CELL_SIZE,\n CELL_SIZE,\n CELL_SIZE);\n\n}\n\nconst drawCells = () => {\n const tilesPtr = world.tiles();\n const tiles = new Uint8Array(mapgen_demo_mapgen_demo_bg__WEBPACK_IMPORTED_MODULE_1__[\"memory\"].buffer, tilesPtr, GRID_COLS * GRID_ROWS);\n\n // tiles\n for (let row = 0; row < GRID_ROWS; row++) {\n for (let col = 0; col < GRID_COLS; col++) {\n const idx = getIndex(row, col);\n if (tiles[idx] == mapgen_demo__WEBPACK_IMPORTED_MODULE_0__[\"Cell\"].Floor) {\n draw_tile(ctx, row, col, \"floor\");\n } else if (is_inner_wall(tiles, col, row)){\n draw_tile(ctx, row, col, \"inner-wall\");\n } else {\n draw_tile(ctx, row, col, \"wall\");\n }\n }\n }\n\n // Player position\n let player = world.player_pos();\n draw_tile(ctx, player.row(), player.col(), \"player\");\n\n // Exit position\n let exit = world.exit_pos();\n draw_tile(ctx, exit.row(), exit.col(), \"exit\");\n};\n\nnewRandomGen();\n\n// Connect UI element\ndocument.getElementById('cellular-automata-option').addEventListener('click', newCellularAutomata);\ndocument.getElementById('simple-rooms-option').addEventListener('click', newSimpleRooms);\ndocument.getElementById('bsp-rooms-option').addEventListener('click', newBspRooms);\ndocument.getElementById('drunkard-option').addEventListener('click', newDrunkard);\ndocument.getElementById('bsp-interior-option').addEventListener('click', newBspInterior);\ndocument.getElementById('random-option').addEventListener('click', newRandomGen);\n\n\n//# sourceURL=webpack:///./index.js?"); /***/ }), diff --git a/docs/3bda724f23e860df0b9c.module.wasm b/docs/3bda724f23e860df0b9c.module.wasm new file mode 100644 index 0000000000000000000000000000000000000000..70e358b415b49226e9873e1713e0eb258f9c3db4 GIT binary patch literal 102281 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 Cellular Automata Simple Rooms + BSP Rooms BSP Interior Drunkard Walk Random Generator