@cimplify/sdk 0.108.0 → 0.110.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/advanced.d.mts +4 -3
- package/dist/advanced.d.ts +4 -3
- package/dist/advanced.js +24 -24
- package/dist/advanced.mjs +5 -5
- package/dist/animation-4EXBXRVX.js +27 -0
- package/dist/animation-6DICNWUP.mjs +6 -0
- package/dist/audio-DhvyjqdA.d.mts +249 -0
- package/dist/audio-m0w8cnxq.d.ts +249 -0
- package/dist/avatars.d.mts +110 -0
- package/dist/avatars.d.ts +110 -0
- package/dist/avatars.js +82 -0
- package/dist/avatars.mjs +5 -0
- package/dist/backend-gUCzs5Kg.d.mts +3866 -0
- package/dist/backend-gUCzs5Kg.d.ts +3866 -0
- package/dist/{catalogue-B4eLL8Mi.d.ts → catalogue-CPTMyBUz.d.mts} +109 -221
- package/dist/catalogue-DzrTXP3v.d.mts +541 -0
- package/dist/catalogue-DzrTXP3v.d.ts +541 -0
- package/dist/{catalogue-OT89_Ifs.d.mts → catalogue-OTuS5zp-.d.ts} +109 -221
- package/dist/chunk-22BD3RHN.mjs +1809 -0
- package/dist/chunk-25T4JHEA.mjs +21 -0
- package/dist/chunk-2AQ237Y4.js +508 -0
- package/dist/chunk-2IC4H6OV.mjs +48 -0
- package/dist/chunk-2LHLG4OB.mjs +71 -0
- package/dist/chunk-2O2CG465.js +1709 -0
- package/dist/chunk-2Q4DTHXK.js +316 -0
- package/dist/chunk-2QTQ6BUH.mjs +46 -0
- package/dist/chunk-2UN4SFLR.mjs +100 -0
- package/dist/chunk-2V75I7K3.js +454 -0
- package/dist/chunk-2V7IL4HC.js +10 -0
- package/dist/chunk-34XBXUMW.js +296 -0
- package/dist/chunk-3C4C654I.js +71 -0
- package/dist/chunk-3DAD2LDF.mjs +72 -0
- package/dist/chunk-3GXH2NFD.mjs +4 -0
- package/dist/chunk-3O47ZFW3.js +961 -0
- package/dist/chunk-3OY3VYNF.mjs +11 -0
- package/dist/chunk-3S6WPBZL.js +2936 -0
- package/dist/chunk-3TUOUP5T.js +399 -0
- package/dist/chunk-3VEH23I5.mjs +1380 -0
- package/dist/chunk-3ZYSAW2T.mjs +263 -0
- package/dist/chunk-4ANVF274.js +103 -0
- package/dist/chunk-4C7I3ELN.js +388 -0
- package/dist/chunk-4DYKAYFO.mjs +8 -0
- package/dist/chunk-4ZDR72SG.js +329 -0
- package/dist/chunk-52YS45RR.js +1066 -0
- package/dist/chunk-5325XSCH.js +107 -0
- package/dist/chunk-5AD5X6AV.js +13 -0
- package/dist/chunk-5BYDGGWO.mjs +197 -0
- package/dist/chunk-5C3C7VDM.mjs +55 -0
- package/dist/chunk-5HFMY3D7.js +660 -0
- package/dist/chunk-5LH2QN3T.js +1862 -0
- package/dist/chunk-5PJEXSOW.js +44 -0
- package/dist/chunk-5SXDH3Y7.js +90 -0
- package/dist/chunk-5YFBGGCK.mjs +502 -0
- package/dist/chunk-5YWN6H5Q.mjs +133 -0
- package/dist/chunk-66QP3SMN.js +402 -0
- package/dist/chunk-6DAEZKIG.mjs +385 -0
- package/dist/chunk-6DATW7TB.mjs +420 -0
- package/dist/{chunk-JRGK3NXR.mjs → chunk-6ETDAU62.mjs} +72 -212
- package/dist/chunk-6H254EVP.mjs +178 -0
- package/dist/chunk-6PFNJPBJ.mjs +820 -0
- package/dist/chunk-6PJWXIFX.mjs +357 -0
- package/dist/chunk-6SWKWCMS.js +80 -0
- package/dist/chunk-6VVXXX7S.js +808 -0
- package/dist/chunk-6WUBSMTX.js +1403 -0
- package/dist/chunk-73SGZLAQ.mjs +35 -0
- package/dist/chunk-76L2V6KD.mjs +4 -0
- package/dist/chunk-7AAIAVAA.js +1531 -0
- package/dist/chunk-7ARSJPV3.mjs +93 -0
- package/dist/chunk-7BHW5GTC.mjs +1234 -0
- package/dist/chunk-7DQSDKDU.js +6 -0
- package/dist/chunk-7IQQQENP.mjs +401 -0
- package/dist/chunk-7KFTYENS.js +11357 -0
- package/dist/chunk-7SM6XSPZ.js +3171 -0
- package/dist/chunk-7SXOHAIR.mjs +28 -0
- package/dist/chunk-A2MAX6S4.js +90 -0
- package/dist/chunk-A33OORT7.mjs +1530 -0
- package/dist/{chunk-U6ACF76H.mjs → chunk-A36JRXXH.mjs} +1075 -1845
- package/dist/chunk-A7BU3BK4.js +52 -0
- package/dist/chunk-A7MQSN2V.mjs +77 -0
- package/dist/chunk-A7V4L2IT.mjs +416 -0
- package/dist/chunk-AABEK6XU.js +226 -0
- package/dist/chunk-AGV33FWC.mjs +5005 -0
- package/dist/chunk-AHNR3BXI.js +108 -0
- package/dist/chunk-AQ5RLBU2.mjs +286 -0
- package/dist/chunk-AQOE6WCG.js +1270 -0
- package/dist/chunk-ATAWRACV.mjs +62 -0
- package/dist/chunk-ATCURNUV.js +14 -0
- package/dist/chunk-AWPV33OO.js +6 -0
- package/dist/chunk-AYJPHKYV.js +337 -0
- package/dist/chunk-AZ5BGWHB.js +162 -0
- package/dist/chunk-AZAXD44P.js +1373 -0
- package/dist/chunk-BBGKQIJJ.mjs +406 -0
- package/dist/chunk-BP4JLSUA.js +1453 -0
- package/dist/{chunk-SUCE7FWA.mjs → chunk-BTUSVHIE.mjs} +539 -978
- package/dist/chunk-BU6OK542.mjs +818 -0
- package/dist/chunk-CVSRWM6W.js +418 -0
- package/dist/chunk-CYBMFMJD.mjs +247 -0
- package/dist/chunk-DDJLDOUX.mjs +217 -0
- package/dist/{chunk-V32BCG7M.js → chunk-DFZWHNRG.js} +75 -215
- package/dist/chunk-DJ2C7AVG.js +644 -0
- package/dist/chunk-DS2VU4WW.mjs +102 -0
- package/dist/chunk-DSAG7T5P.js +7290 -0
- package/dist/chunk-E2QPPH7I.js +327 -0
- package/dist/chunk-E65WCTIG.mjs +1187 -0
- package/dist/{chunk-33VCYWVL.mjs → chunk-E6QQKDNE.mjs} +30 -42
- package/dist/chunk-ECDK6QBF.mjs +981 -0
- package/dist/chunk-EIB4OWVQ.mjs +620 -0
- package/dist/chunk-EQUZYCGO.js +250 -0
- package/dist/chunk-F3UJ6ZRM.mjs +313 -0
- package/dist/chunk-F63N2ZTQ.js +7023 -0
- package/dist/chunk-F6XRYEM3.mjs +26 -0
- package/dist/chunk-FE6VCE4K.js +5030 -0
- package/dist/chunk-FLWD6GRR.js +1372 -0
- package/dist/chunk-FQBFWJBS.mjs +110 -0
- package/dist/chunk-FXVJ2HFU.js +26 -0
- package/dist/chunk-FZMQMQBW.js +312 -0
- package/dist/chunk-G3EEC44R.js +53 -0
- package/dist/{chunk-KG3WT4PR.mjs → chunk-GCKWKLZF.mjs} +73 -104
- package/dist/chunk-GCX7TY4D.mjs +6826 -0
- package/dist/chunk-GDB6TCSD.js +450 -0
- package/dist/chunk-GDCV4IWO.mjs +21 -0
- package/dist/chunk-GDZT5LZ5.js +170 -0
- package/dist/chunk-GHPUYD4I.mjs +213 -0
- package/dist/chunk-GHS6MIL6.mjs +1432 -0
- package/dist/chunk-GPS2THCL.mjs +11 -0
- package/dist/{chunk-EV2EVOYS.js → chunk-GTJWQAGU.js} +31 -42
- package/dist/chunk-GVTI6UJQ.mjs +130 -0
- package/dist/chunk-GXKI64OT.mjs +1138 -0
- package/dist/chunk-GYDYF2WX.js +275 -0
- package/dist/chunk-GYLP6UG4.mjs +705 -0
- package/dist/chunk-H3OQKK6X.js +1158 -0
- package/dist/chunk-H5DFSCJ6.js +40 -0
- package/dist/chunk-HAGEIC2L.mjs +186 -0
- package/dist/chunk-HAJ4JRFO.js +293 -0
- package/dist/chunk-HDR72GB6.js +188 -0
- package/dist/chunk-HF5HPS4T.mjs +40 -0
- package/dist/chunk-HK6LOFDS.js +218 -0
- package/dist/chunk-HMWYTXCY.mjs +143 -0
- package/dist/chunk-HPCSRCMA.js +89 -0
- package/dist/chunk-HSEO6TPU.js +247 -0
- package/dist/chunk-I5FOHCLH.js +132 -0
- package/dist/chunk-IDLW4NWA.mjs +85 -0
- package/dist/chunk-IIDZ5WUX.js +61 -0
- package/dist/chunk-IR74FJHU.js +2332 -0
- package/dist/chunk-IRVFYAKP.mjs +100 -0
- package/dist/{chunk-XBL3TMPC.mjs → chunk-IZDWAL53.mjs} +1795 -3287
- package/dist/chunk-J2KZXIU3.js +51 -0
- package/dist/chunk-J2U6PJSO.js +91 -0
- package/dist/chunk-J5AJNY2N.js +283 -0
- package/dist/chunk-J6KQZ4FO.mjs +821 -0
- package/dist/{chunk-OWW5GUSB.js → chunk-JGBCIKJV.js} +7 -6
- package/dist/chunk-JKGTBMU7.mjs +25 -0
- package/dist/chunk-JR3TNEQC.js +422 -0
- package/dist/chunk-JURRXY2J.mjs +29 -0
- package/dist/chunk-K3HW5I2A.mjs +317 -0
- package/dist/chunk-K46SMZ66.mjs +103 -0
- package/dist/chunk-K4UDGE3Z.mjs +6 -0
- package/dist/chunk-KDQOR4QQ.mjs +350 -0
- package/dist/chunk-KDTVOLHI.mjs +288 -0
- package/dist/chunk-KGHJH5KJ.mjs +35 -0
- package/dist/chunk-KIZOA5LX.mjs +140 -0
- package/dist/chunk-KK6HYVBI.mjs +242 -0
- package/dist/chunk-KMKWGXMK.js +856 -0
- package/dist/chunk-KPA6K5IB.js +80 -0
- package/dist/chunk-KU7O4IXU.mjs +260 -0
- package/dist/chunk-KVFNRJOR.mjs +11142 -0
- package/dist/chunk-KZJRSXHK.js +2432 -0
- package/dist/chunk-LHWPRUJL.js +79 -0
- package/dist/chunk-LIV3KXJG.mjs +369 -0
- package/dist/chunk-LKV4LACG.js +21 -0
- package/dist/chunk-LUY45X3U.mjs +263 -0
- package/dist/chunk-LYEZZEEF.mjs +17 -0
- package/dist/chunk-M5EXQZYY.mjs +1519 -0
- package/dist/chunk-ME6HGG4I.mjs +1338 -0
- package/dist/chunk-MEXP6DA6.js +31 -0
- package/dist/chunk-MG52AW3H.js +902 -0
- package/dist/chunk-MIPO6F72.js +334 -0
- package/dist/{chunk-5QW7CQBA.js → chunk-MKIJQL5Q.js} +211 -321
- package/dist/chunk-MN3YETVN.mjs +17 -0
- package/dist/chunk-MOBSBXVE.mjs +2391 -0
- package/dist/chunk-MOMOZEUM.mjs +88 -0
- package/dist/chunk-MRFUNRAP.js +62 -0
- package/dist/chunk-MTIHEW2M.js +433 -0
- package/dist/chunk-N4RGGDEL.mjs +73 -0
- package/dist/chunk-NH654HAT.js +10 -0
- package/dist/chunk-NHJUGZUR.mjs +253 -0
- package/dist/chunk-NMQT4HG3.mjs +757 -0
- package/dist/chunk-NPSYB6DC.mjs +906 -0
- package/dist/chunk-NW2GPMSO.js +857 -0
- package/dist/chunk-NXKQOQ6L.js +76 -0
- package/dist/chunk-NXLAZIJZ.js +309 -0
- package/dist/chunk-NYWNA5CF.js +148 -0
- package/dist/chunk-NZTKLY2W.js +1442 -0
- package/dist/chunk-O2ICABUD.js +36 -0
- package/dist/chunk-OIVVQQ22.js +862 -0
- package/dist/chunk-OKC2B4O3.mjs +312 -0
- package/dist/chunk-OLWFPDBK.js +2220 -0
- package/dist/chunk-OMTVH334.js +3779 -0
- package/dist/chunk-OQRVEM56.mjs +362 -0
- package/dist/chunk-OXMIBOD4.js +337 -0
- package/dist/chunk-PBL6YL5L.mjs +288 -0
- package/dist/chunk-PDOELNNQ.js +97 -0
- package/dist/chunk-PDQJY2GZ.js +136 -0
- package/dist/chunk-PKOZXD2Q.js +1274 -0
- package/dist/chunk-PPF2BYFL.mjs +2191 -0
- package/dist/chunk-PQTQKNKD.js +539 -0
- package/dist/chunk-PRSR4FAV.mjs +81 -0
- package/dist/chunk-PTRNO5UD.js +95 -0
- package/dist/chunk-Q2Y3VMKH.js +2000 -0
- package/dist/chunk-QCZOE65N.js +96 -0
- package/dist/chunk-QDYFLATW.mjs +52 -0
- package/dist/chunk-QQABGCMM.js +22 -0
- package/dist/chunk-QS6TRHMR.js +345 -0
- package/dist/chunk-R56P64LB.mjs +208 -0
- package/dist/chunk-RCQ2MPBV.js +428 -0
- package/dist/chunk-RFVRPYR2.mjs +856 -0
- package/dist/chunk-RKBLPGPV.js +11521 -0
- package/dist/chunk-RM2V4IND.mjs +327 -0
- package/dist/chunk-RQXN5A34.mjs +613 -0
- package/dist/chunk-RUVGVNOF.mjs +2687 -0
- package/dist/chunk-SAFJIGYB.mjs +165 -0
- package/dist/chunk-SKQFLBDD.js +263 -0
- package/dist/chunk-SMK6JU2F.mjs +2092 -0
- package/dist/{chunk-UVRPC2P7.js → chunk-SNNEOS5Z.js} +1984 -3476
- package/dist/chunk-SPCRQ6NO.mjs +1246 -0
- package/dist/chunk-SWX4SALA.mjs +19 -0
- package/dist/{chunk-JVODCGFP.mjs → chunk-SYEO2WV4.mjs} +128 -238
- package/dist/chunk-T2QQMX2N.js +10 -0
- package/dist/chunk-T3AFF3L7.mjs +57 -0
- package/dist/chunk-T6Z2EXYL.js +712 -0
- package/dist/chunk-T7LOXGYX.js +118 -0
- package/dist/chunk-TJCAE7RC.mjs +1315 -0
- package/dist/chunk-TJI3K6RP.js +137 -0
- package/dist/chunk-TL2SVO4P.mjs +55 -0
- package/dist/chunk-TM63CYGN.mjs +399 -0
- package/dist/chunk-TU5RYTYU.mjs +13 -0
- package/dist/chunk-TVJZ4GPS.js +1553 -0
- package/dist/chunk-TWM6DLYF.js +371 -0
- package/dist/chunk-U63OC4TQ.js +30 -0
- package/dist/{chunk-L5GKVQVJ.js → chunk-U6BVSJZ6.js} +25 -57
- package/dist/chunk-U6UVWEAK.mjs +792 -0
- package/dist/chunk-UCEPNO6N.mjs +11048 -0
- package/dist/{chunk-ANT574FD.js → chunk-UCR5HRYM.js} +74 -105
- package/dist/chunk-UG5BTOTF.mjs +334 -0
- package/dist/chunk-UGH37BQW.mjs +157 -0
- package/dist/chunk-V7ZRH3PY.mjs +271 -0
- package/dist/chunk-VBGHBL3E.mjs +1394 -0
- package/dist/chunk-VRBDAS5I.js +920 -0
- package/dist/chunk-VVE3Y76O.js +230 -0
- package/dist/chunk-W65JIRI4.mjs +1182 -0
- package/dist/chunk-WHYKAT7G.js +62 -0
- package/dist/{chunk-YOIVZ6OA.mjs → chunk-WIZRUIZB.mjs} +25 -57
- package/dist/chunk-WKWTDZS7.js +385 -0
- package/dist/chunk-WLMINRC4.mjs +78 -0
- package/dist/chunk-WOF3AD3J.js +22 -0
- package/dist/chunk-WWKMOA76.js +1262 -0
- package/dist/chunk-X5A5FOWW.js +615 -0
- package/dist/chunk-X6CN6KQF.mjs +192 -0
- package/dist/chunk-XD2PMH46.mjs +517 -0
- package/dist/chunk-XJA2NGTI.mjs +88 -0
- package/dist/chunk-XJIHN3BY.mjs +8 -0
- package/dist/chunk-XK6UDWJS.js +203 -0
- package/dist/chunk-XPG3N5CF.mjs +415 -0
- package/dist/chunk-XVZ2NKSU.mjs +74 -0
- package/dist/chunk-XYP45OLE.js +117 -0
- package/dist/chunk-XZSDGZX6.mjs +301 -0
- package/dist/chunk-Y2EMGN4T.mjs +120 -0
- package/dist/chunk-Y3XWP5XW.mjs +298 -0
- package/dist/chunk-Y4K22JL6.js +228 -0
- package/dist/chunk-Y65LXQGA.mjs +3164 -0
- package/dist/chunk-Y66WVMO5.mjs +87 -0
- package/dist/chunk-Y7JWLB25.mjs +7280 -0
- package/dist/chunk-YCDXAJKU.js +175 -0
- package/dist/chunk-YRDQCCIS.js +152 -0
- package/dist/chunk-YV52DGSA.js +111 -0
- package/dist/chunk-YXGZQPUD.js +94 -0
- package/dist/chunk-Z3A3AFVU.mjs +102 -0
- package/dist/chunk-ZCY6YKKP.mjs +475 -0
- package/dist/chunk-ZEQHXVU5.js +215 -0
- package/dist/chunk-ZF7JCXCI.js +284 -0
- package/dist/chunk-ZJBRUH6V.js +29 -0
- package/dist/chunk-ZMIL4ZOA.js +365 -0
- package/dist/chunk-ZR5ULMN2.mjs +337 -0
- package/dist/chunk-ZXREOYOW.js +87 -0
- package/dist/{client-BSP9U1O1.d.mts → client-CX_WR0-J.d.mts} +2 -2
- package/dist/client-Dytx_ZTC.d.ts +230 -0
- package/dist/{client-B878xeAP.d.ts → client-dqOhP9Nc.d.ts} +2 -2
- package/dist/client-hTKbCuhG.d.mts +230 -0
- package/dist/clock-B-UAjkKa.d.mts +5 -0
- package/dist/clock-B-UAjkKa.d.ts +5 -0
- package/dist/config-BlXQluJR.d.mts +36 -0
- package/dist/config-BlXQluJR.d.ts +36 -0
- package/dist/courier-Cnn-edJ4.d.ts +95 -0
- package/dist/courier-FmGfkvIN.d.mts +95 -0
- package/dist/crowd-DdHFbqKK.d.ts +186 -0
- package/dist/crowd-hOVSAmA3.d.mts +186 -0
- package/dist/danfo-BEBapFlX.d.mts +146 -0
- package/dist/danfo-UQ_PTIIx.d.ts +146 -0
- package/dist/{elements-Bty6Qs_N.d.mts → elements-DdsRig-2.d.mts} +1548 -257
- package/dist/{elements-Bty6Qs_N.d.ts → elements-DdsRig-2.d.ts} +1548 -257
- package/dist/engines/godot.d.mts +56 -0
- package/dist/engines/godot.d.ts +56 -0
- package/dist/engines/godot.js +28 -0
- package/dist/engines/godot.mjs +3 -0
- package/dist/engines/wasm.d.mts +11 -0
- package/dist/engines/wasm.d.ts +11 -0
- package/dist/engines/wasm.js +178 -0
- package/dist/engines/wasm.mjs +176 -0
- package/dist/fallback-CrG_lTFk.d.mts +270 -0
- package/dist/fallback-CrG_lTFk.d.ts +270 -0
- package/dist/fallback-KDB4Y2CE.mjs +6 -0
- package/dist/fallback-Y26TQENE.js +19 -0
- package/dist/features-CZB4rmcD.d.mts +118 -0
- package/dist/features-CZB4rmcD.d.ts +118 -0
- package/dist/fit-BWiE7rgA.d.mts +44 -0
- package/dist/fit-DK0oT7zO.d.ts +44 -0
- package/dist/five-a-side-Bv1AOUy3.d.mts +115 -0
- package/dist/five-a-side-EC51SJY1.d.ts +115 -0
- package/dist/fluid-ARr0qUIL.d.ts +939 -0
- package/dist/fluid-DLlEj2cs.d.mts +939 -0
- package/dist/game/conformance.d.mts +84 -0
- package/dist/game/conformance.d.ts +84 -0
- package/dist/game/conformance.js +1025 -0
- package/dist/game/conformance.mjs +994 -0
- package/dist/game/heap.d.mts +40 -0
- package/dist/game/heap.d.ts +40 -0
- package/dist/game/heap.js +48 -0
- package/dist/game/heap.mjs +7 -0
- package/dist/game/kit/canvas.d.mts +240 -0
- package/dist/game/kit/canvas.d.ts +240 -0
- package/dist/game/kit/canvas.js +3566 -0
- package/dist/game/kit/canvas.mjs +1039 -0
- package/dist/game/kit/courier.d.mts +17 -0
- package/dist/game/kit/courier.d.ts +17 -0
- package/dist/game/kit/courier.js +66 -0
- package/dist/game/kit/courier.mjs +49 -0
- package/dist/game/kit/danfo.d.mts +11 -0
- package/dist/game/kit/danfo.d.ts +11 -0
- package/dist/game/kit/danfo.js +109 -0
- package/dist/game/kit/danfo.mjs +44 -0
- package/dist/game/kit/engine.d.mts +29 -0
- package/dist/game/kit/engine.d.ts +29 -0
- package/dist/game/kit/engine.js +183 -0
- package/dist/game/kit/engine.mjs +30 -0
- package/dist/game/kit/five-a-side.d.mts +11 -0
- package/dist/game/kit/five-a-side.d.ts +11 -0
- package/dist/game/kit/five-a-side.js +86 -0
- package/dist/game/kit/five-a-side.mjs +41 -0
- package/dist/game/kit/frontier.d.mts +344 -0
- package/dist/game/kit/frontier.d.ts +344 -0
- package/dist/game/kit/frontier.js +435 -0
- package/dist/game/kit/frontier.mjs +14 -0
- package/dist/game/kit/genesis.d.mts +752 -0
- package/dist/game/kit/genesis.d.ts +752 -0
- package/dist/game/kit/genesis.js +380 -0
- package/dist/game/kit/genesis.mjs +15 -0
- package/dist/game/kit/ludo.d.mts +15 -0
- package/dist/game/kit/ludo.d.ts +15 -0
- package/dist/game/kit/ludo.js +87 -0
- package/dist/game/kit/ludo.mjs +42 -0
- package/dist/game/kit/runner.d.mts +12 -0
- package/dist/game/kit/runner.d.ts +12 -0
- package/dist/game/kit/runner.js +83 -0
- package/dist/game/kit/runner.mjs +46 -0
- package/dist/game/kit/shootout.d.mts +13 -0
- package/dist/game/kit/shootout.d.ts +13 -0
- package/dist/game/kit/shootout.js +122 -0
- package/dist/game/kit/shootout.mjs +57 -0
- package/dist/game/kit/slots.d.mts +392 -0
- package/dist/game/kit/slots.d.ts +392 -0
- package/dist/game/kit/slots.js +215 -0
- package/dist/game/kit/slots.mjs +6 -0
- package/dist/game/kit/tycoon.d.mts +16 -0
- package/dist/game/kit/tycoon.d.ts +16 -0
- package/dist/game/kit/tycoon.js +145 -0
- package/dist/game/kit/tycoon.mjs +44 -0
- package/dist/game/kit/word.d.mts +11 -0
- package/dist/game/kit/word.d.ts +11 -0
- package/dist/game/kit/word.js +78 -0
- package/dist/game/kit/word.mjs +41 -0
- package/dist/game/kit/worlds.d.mts +18 -0
- package/dist/game/kit/worlds.d.ts +18 -0
- package/dist/game/kit/worlds.js +74 -0
- package/dist/game/kit/worlds.mjs +49 -0
- package/dist/game/kit.d.mts +53 -0
- package/dist/game/kit.d.ts +53 -0
- package/dist/game/kit.js +2610 -0
- package/dist/game/kit.mjs +101 -0
- package/dist/game/prepared.d.mts +14 -0
- package/dist/game/prepared.d.ts +14 -0
- package/dist/game/prepared.js +81 -0
- package/dist/game/prepared.mjs +32 -0
- package/dist/game-Bx8onkhX.d.mts +1451 -0
- package/dist/game-fgQy2YIm.d.ts +1451 -0
- package/dist/game-theme-CBTw1b_d.d.mts +35 -0
- package/dist/game-theme-Dg-ict5A.d.ts +35 -0
- package/dist/game.d.mts +3546 -0
- package/dist/game.d.ts +3546 -0
- package/dist/game.js +4455 -0
- package/dist/game.mjs +50 -0
- package/dist/graphics-C6YjWYvP.d.ts +5 -0
- package/dist/graphics-Dk2yQnYN.d.mts +5 -0
- package/dist/guest-DrsA00XD.d.mts +732 -0
- package/dist/guest-wIdfoT05.d.ts +732 -0
- package/dist/hit-stop-BKkVwTq7.d.mts +43 -0
- package/dist/hit-stop-D-8pPYnM.d.ts +43 -0
- package/dist/hot-Crn9XpHJ.d.ts +29 -0
- package/dist/hot-DH3nOhQD.d.mts +29 -0
- package/dist/{index-CQStGb3B.d.mts → index-6gkHMGAq.d.mts} +2 -2
- package/dist/index-B8ybCKJI.d.ts +41 -0
- package/dist/{index-DJwXmoaP.d.ts → index-B98Xac8e.d.ts} +2 -2
- package/dist/{index-B7oA_1XI.d.ts → index-B_ByTtIT.d.ts} +2 -2
- package/dist/index-DHjNHb1c.d.mts +41 -0
- package/dist/{index-DhUSTAhT.d.mts → index-DbAN_VQE.d.mts} +2 -2
- package/dist/index.d.mts +134 -24
- package/dist/index.d.ts +134 -24
- package/dist/index.js +407 -248
- package/dist/index.mjs +184 -58
- package/dist/interactives-authoring.d.mts +231 -0
- package/dist/interactives-authoring.d.ts +231 -0
- package/dist/interactives-authoring.js +1743 -0
- package/dist/interactives-authoring.mjs +1704 -0
- package/dist/interactives-canvas.global.js +148 -0
- package/dist/interactives-guest.d.mts +20 -0
- package/dist/interactives-guest.d.ts +20 -0
- package/dist/interactives-guest.js +63 -0
- package/dist/interactives-guest.json +1 -0
- package/dist/interactives-guest.mjs +61 -0
- package/dist/interactives-jsc.global.js +9357 -0
- package/dist/interactives-meters.d.mts +93 -0
- package/dist/interactives-meters.d.ts +93 -0
- package/dist/interactives-meters.js +252 -0
- package/dist/interactives-meters.mjs +68 -0
- package/dist/interactives-production.d.mts +430 -0
- package/dist/interactives-production.d.ts +430 -0
- package/dist/interactives-production.js +1231 -0
- package/dist/interactives-production.mjs +1170 -0
- package/dist/interactives-record.d.mts +112 -0
- package/dist/interactives-record.d.ts +112 -0
- package/dist/interactives-record.js +302 -0
- package/dist/interactives-record.mjs +295 -0
- package/dist/interactives-runtime.d.mts +61 -0
- package/dist/interactives-runtime.d.ts +61 -0
- package/dist/interactives-runtime.js +442 -0
- package/dist/interactives-runtime.mjs +25 -0
- package/dist/interactives-studio-kernel.global.js +1 -0
- package/dist/interactives-studio.d.mts +806 -0
- package/dist/interactives-studio.d.ts +806 -0
- package/dist/interactives-studio.js +5741 -0
- package/dist/interactives-studio.mjs +5651 -0
- package/dist/interactives-tick.d.mts +90 -0
- package/dist/interactives-tick.d.ts +90 -0
- package/dist/interactives-tick.js +203 -0
- package/dist/interactives-tick.mjs +6 -0
- package/dist/interactives-web.d.mts +762 -0
- package/dist/interactives-web.d.ts +762 -0
- package/dist/interactives-web.js +5000 -0
- package/dist/interactives-web.mjs +4628 -0
- package/dist/interactives.d.mts +2430 -0
- package/dist/interactives.d.ts +2430 -0
- package/dist/interactives.js +5723 -0
- package/dist/interactives.mjs +4333 -0
- package/dist/juice-CoHxlpKA.d.ts +42 -0
- package/dist/juice-DQztFS43.d.mts +42 -0
- package/dist/launch-T2f4_Di4.d.mts +151 -0
- package/dist/launch-d6oreMzR.d.ts +151 -0
- package/dist/library-DXYaMFhi.d.mts +69 -0
- package/dist/library-DXYaMFhi.d.ts +69 -0
- package/dist/link-BUTqGmyi.d.mts +38 -0
- package/dist/link-BUTqGmyi.d.ts +38 -0
- package/dist/lint.js +104 -204
- package/dist/lint.mjs +103 -203
- package/dist/local-D8_I6UeL.d.mts +6967 -0
- package/dist/local-VZkqsCzR.d.ts +6967 -0
- package/dist/lockstep-BLf6dglI.d.mts +321 -0
- package/dist/lockstep-D50Ia0JW.d.ts +321 -0
- package/dist/ludo-B8ClkDqr.d.ts +205 -0
- package/dist/ludo-BOuohQ-M.d.mts +205 -0
- package/dist/mock/cli.mjs +200 -56
- package/dist/mock/library.js +200 -56
- package/dist/mock/library.mjs +200 -56
- package/dist/mock/msw.js +200 -56
- package/dist/mock/msw.mjs +200 -56
- package/dist/native-BodxSh03.d.mts +16 -0
- package/dist/native-DUHMT8gA.d.ts +16 -0
- package/dist/network-ZXLD7l1b.d.mts +19 -0
- package/dist/network-ZXLD7l1b.d.ts +19 -0
- package/dist/online-XeymeM9s.d.ts +381 -0
- package/dist/online-d7W_Al9a.d.mts +381 -0
- package/dist/params-DxFb5G_U.d.mts +155 -0
- package/dist/params-DxFb5G_U.d.ts +155 -0
- package/dist/play-BRRlfLhX.d.ts +940 -0
- package/dist/play-ClrMd_e8.d.mts +940 -0
- package/dist/policy-CCw8tXLm.d.mts +3078 -0
- package/dist/policy-CMqOSQIu.d.ts +3078 -0
- package/dist/ports-B_0v_P3A.d.mts +13 -0
- package/dist/ports-CGU_3e_0.d.ts +13 -0
- package/dist/prefetch-BHnicOQj.d.ts +117 -0
- package/dist/prefetch-CBXgYacv.d.mts +117 -0
- package/dist/{price-CSztR02F.d.mts → price-BOzexBww.d.mts} +1 -1
- package/dist/{price-C_vasx9A.d.ts → price-C1h9sPxE.d.ts} +1 -1
- package/dist/protocol-C8qbpUbT.d.mts +242 -0
- package/dist/protocol-C8qbpUbT.d.ts +242 -0
- package/dist/rapier-AZHT4YI7.js +7886 -0
- package/dist/rapier-ODEPCQA6.mjs +7792 -0
- package/dist/react.d.mts +157 -15
- package/dist/react.d.ts +157 -15
- package/dist/react.js +5564 -5904
- package/dist/react.mjs +5451 -5808
- package/dist/runner-CQcLL7By.d.ts +189 -0
- package/dist/runner-D46Yj-wE.d.mts +189 -0
- package/dist/runtime-BRWfkf_q.d.mts +51 -0
- package/dist/runtime-DyuBMkKM.d.ts +51 -0
- package/dist/scheduling-D2ajXpMC.d.ts +224 -0
- package/dist/scheduling-DSRbbaZb.d.mts +224 -0
- package/dist/schema-BrWxzKp6.d.mts +63 -0
- package/dist/schema-BrWxzKp6.d.ts +63 -0
- package/dist/server/evict.js +34 -37
- package/dist/server/evict.mjs +34 -37
- package/dist/server/tanstack.d.mts +49 -3
- package/dist/server/tanstack.d.ts +49 -3
- package/dist/server/tanstack.js +169 -117
- package/dist/server/tanstack.mjs +166 -118
- package/dist/{server-Dckg4Vdr.d.ts → server-D29IIuDV.d.ts} +136 -130
- package/dist/{server-B6dW7-Lj.d.mts → server-DQMWPnc8.d.mts} +136 -130
- package/dist/server.d.mts +45 -5
- package/dist/server.d.ts +45 -5
- package/dist/server.js +171 -227
- package/dist/server.mjs +165 -225
- package/dist/session-grant-CJ27DwrT.d.mts +19 -0
- package/dist/session-grant-CJ27DwrT.d.ts +19 -0
- package/dist/shootout-BJZeX6FG.d.ts +140 -0
- package/dist/shootout-tcZd1Rxt.d.mts +140 -0
- package/dist/state-replica-stMtdkVD.d.mts +42 -0
- package/dist/state-replica-stMtdkVD.d.ts +42 -0
- package/dist/studio-CowqWqez.d.mts +14 -0
- package/dist/studio-CowqWqez.d.ts +14 -0
- package/dist/styles.css +1 -1
- package/dist/template-AhCdB1kW.d.mts +190 -0
- package/dist/template-BkEGVTQj.d.ts +190 -0
- package/dist/terrain-BMxEc6Oc.d.ts +429 -0
- package/dist/terrain-C-XC1Oui.d.mts +429 -0
- package/dist/testing/msw.d.mts +28 -4
- package/dist/testing/msw.d.ts +28 -4
- package/dist/testing/msw.js +15 -21
- package/dist/testing/msw.mjs +15 -21
- package/dist/testing/suite.d.mts +6 -5
- package/dist/testing/suite.d.ts +6 -5
- package/dist/testing/suite.js +89 -124
- package/dist/testing/suite.mjs +81 -116
- package/dist/testing.d.mts +27 -1227
- package/dist/testing.d.ts +27 -1227
- package/dist/testing.js +127 -131
- package/dist/testing.mjs +19 -23
- package/dist/tick-transport-C8QEh8Uw.d.mts +50 -0
- package/dist/tick-transport-UjHY3xK1.d.ts +50 -0
- package/dist/timeline-protocol-hp6e8zFB.d.mts +47 -0
- package/dist/timeline-protocol-hp6e8zFB.d.ts +47 -0
- package/dist/tokens-DhanQRQS.d.mts +21 -0
- package/dist/tokens-K8yxwd6G.d.ts +21 -0
- package/dist/tree-C-Io2Hbx.d.mts +35 -0
- package/dist/tree-CP_qSW4H.d.ts +35 -0
- package/dist/tycoon-B5KHk2Xx.d.mts +255 -0
- package/dist/tycoon-hmHo-3HX.d.ts +255 -0
- package/dist/types-BQkxPwZP.d.mts +219 -0
- package/dist/types-D_f6UUxM.d.ts +219 -0
- package/dist/ui-DwHicuFv.d.mts +563 -0
- package/dist/ui-hi7S2YcH.d.ts +563 -0
- package/dist/{sign-in-DQlIdqsi.d.mts → url-52ndUruG.d.mts} +15 -1
- package/dist/{sign-in-DQlIdqsi.d.ts → url-52ndUruG.d.ts} +15 -1
- package/dist/utils.d.mts +3 -3
- package/dist/utils.d.ts +3 -3
- package/dist/utils.js +37 -37
- package/dist/utils.mjs +4 -4
- package/dist/vars-Dc_PrhBK.d.mts +511 -0
- package/dist/vars-Dc_PrhBK.d.ts +511 -0
- package/dist/vm-IUARFFAI.mjs +63 -0
- package/dist/vm-N7L6MGGH.js +65 -0
- package/dist/weave-delivery-CW-Kstut.d.mts +360 -0
- package/dist/weave-delivery-CW-Kstut.d.ts +360 -0
- package/dist/web-Dss74a7v.d.ts +883 -0
- package/dist/web-f9ZQPoyw.d.mts +883 -0
- package/dist/web-transport-C7MkBL0a.d.ts +19 -0
- package/dist/web-transport-aYEqXMd9.d.mts +19 -0
- package/dist/weight-CPGjsgjV.d.ts +92 -0
- package/dist/weight-tF1ODR1p.d.mts +92 -0
- package/dist/word-BcX9Jcmv.d.mts +70 -0
- package/dist/word-C7sVPLHm.d.ts +70 -0
- package/dist/world-PvILHDR1.d.ts +2285 -0
- package/dist/world-qekkXjJv.d.mts +2285 -0
- package/dist/worlds-Br2Pb0Cs.d.ts +109 -0
- package/dist/worlds-D5ydYr7d.d.mts +109 -0
- package/engines/c/cimplify.h +108 -0
- package/engines/c/cimplify.lib.js +11 -0
- package/engines/godot/addons/cimplify/cimplify.gd +97 -0
- package/engines/rust/interactives-ctx/Cargo.toml +9 -0
- package/engines/rust/interactives-ctx/src/lib.rs +189 -0
- package/package.json +189 -3
- package/vendor/rapier3d-compat/LICENSE +201 -0
- package/vendor/rapier3d-compat/PATCHES.md +61 -0
- package/dist/chunk-2P4KXFB6.js +0 -274
- package/dist/chunk-3G6RQLXK.mjs +0 -21
- package/dist/chunk-3V4DVXV3.mjs +0 -254
- package/dist/chunk-EDK3LNM6.js +0 -2436
- package/dist/chunk-F7J3HK27.js +0 -4549
- package/dist/chunk-U4MW6PYU.mjs +0 -23
- package/dist/chunk-XREIZ56K.js +0 -26
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import { kP as StoreApi, C as Ctx, fV as HostCall, dZ as CtxEconomy, hA as ParticipantId, gJ as LedgerReceipt, f9 as ExchangeReceipt, lw as TradeOffer, lz as TradeSettlement, eT as EconomyCatalogue } from './local-VZkqsCzR.js';
|
|
2
|
+
import { L as LifecycleSource, K as KeySource } from './ports-CGU_3e_0.js';
|
|
3
|
+
import { c as Currency, j as Item, F as Faucet, S as Sink, f as Exchange, b as CimplesOffer, p as RandomExchange, E as EconomyDecl, x as SoftValue, z as ValueGrant, u as SoftCurrency, m as PremiumExchange, n as PremiumItem, g as FixedOffer, l as PremiumCurrency, h as GenreTemplate, q as RandomOffer } from './template-BkEGVTQj.js';
|
|
4
|
+
import { G as Game } from './game-fgQy2YIm.js';
|
|
5
|
+
import { G as GameScene } from './fluid-ARr0qUIL.js';
|
|
6
|
+
|
|
7
|
+
type SaveStorePort = Pick<StoreApi, "get" | "commit">;
|
|
8
|
+
type Migration = (previous: unknown) => unknown;
|
|
9
|
+
interface SaveSchema<T> {
|
|
10
|
+
readonly name: string;
|
|
11
|
+
readonly version: number;
|
|
12
|
+
initial(): T;
|
|
13
|
+
parse(value: unknown): T | null;
|
|
14
|
+
readonly migrations?: Readonly<Record<number, Migration>>;
|
|
15
|
+
}
|
|
16
|
+
type LoadStatus = "fresh" | "loaded" | "migrated" | "newer" | "invalid";
|
|
17
|
+
interface Loaded<T> {
|
|
18
|
+
readonly value: T;
|
|
19
|
+
readonly status: LoadStatus;
|
|
20
|
+
readonly writtenBy: string | null;
|
|
21
|
+
}
|
|
22
|
+
declare class SaveSlots<T> {
|
|
23
|
+
readonly schema: SaveSchema<T>;
|
|
24
|
+
private readonly store;
|
|
25
|
+
private readonly revision;
|
|
26
|
+
private readonly blocked;
|
|
27
|
+
private readonly writes;
|
|
28
|
+
constructor(store: SaveStorePort, schema: SaveSchema<T>, revision: string);
|
|
29
|
+
load(slot: string): Promise<Loaded<T>>;
|
|
30
|
+
save(slot: string, value: T): Promise<void>;
|
|
31
|
+
reset(slot: string, value?: T): Promise<void>;
|
|
32
|
+
private write;
|
|
33
|
+
private block;
|
|
34
|
+
}
|
|
35
|
+
type SaveCtx = Pick<Ctx, "open_store" | "program">;
|
|
36
|
+
declare function openSaveSlots<T>(ctx: SaveCtx, schema: SaveSchema<T>): Promise<SaveSlots<T>>;
|
|
37
|
+
declare class Autosave<T> {
|
|
38
|
+
private readonly slots;
|
|
39
|
+
private readonly slot;
|
|
40
|
+
private readonly source;
|
|
41
|
+
private readonly unsubscribes;
|
|
42
|
+
private dirty;
|
|
43
|
+
private inflight;
|
|
44
|
+
private readonly onEvent;
|
|
45
|
+
constructor(slots: SaveSlots<T>, slot: string, source: () => T, lifecycle: LifecycleSource);
|
|
46
|
+
get pending(): boolean;
|
|
47
|
+
markDirty(): void;
|
|
48
|
+
flush(): Promise<void>;
|
|
49
|
+
dispose(): void;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
declare const MS_PER_DAY = 86400000;
|
|
53
|
+
declare function dayIndex(unixMs: number, utcOffsetMinutes?: number): number;
|
|
54
|
+
declare function utcOffsetMinutes(timeZone: string, unixMs: number): number;
|
|
55
|
+
declare function hashSalt(salt: string): number;
|
|
56
|
+
declare function daySeed(day: number, salt: number): number;
|
|
57
|
+
interface ChallengeDecl<K extends string = string> {
|
|
58
|
+
readonly id: string;
|
|
59
|
+
readonly kind: K;
|
|
60
|
+
readonly target: number;
|
|
61
|
+
}
|
|
62
|
+
declare class DailyChallenges<K extends string = string> {
|
|
63
|
+
readonly pool: readonly ChallengeDecl<K>[];
|
|
64
|
+
readonly perDay: number;
|
|
65
|
+
private readonly salt;
|
|
66
|
+
private readonly random;
|
|
67
|
+
private readonly order;
|
|
68
|
+
readonly picks: Int32Array;
|
|
69
|
+
readonly progress: Float64Array;
|
|
70
|
+
private dayValue;
|
|
71
|
+
constructor(pool: readonly ChallengeDecl<K>[], perDay: number, salt: string);
|
|
72
|
+
get day(): number;
|
|
73
|
+
select(day: number): boolean;
|
|
74
|
+
record(kind: K, amount: number): void;
|
|
75
|
+
maxOut(kind: K, value: number): void;
|
|
76
|
+
challenge(index: number): ChallengeDecl<K>;
|
|
77
|
+
completed(index: number): boolean;
|
|
78
|
+
allCompleted(): boolean;
|
|
79
|
+
snapshot(): {
|
|
80
|
+
readonly day: number;
|
|
81
|
+
readonly progress: readonly number[];
|
|
82
|
+
};
|
|
83
|
+
restore(saved: {
|
|
84
|
+
readonly day: number;
|
|
85
|
+
readonly progress: readonly number[];
|
|
86
|
+
} | null, today: number): void;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
interface Economy {
|
|
90
|
+
readonly currencies: readonly Currency[];
|
|
91
|
+
readonly items: readonly Item[];
|
|
92
|
+
readonly faucets: readonly Faucet[];
|
|
93
|
+
readonly sinks: readonly Sink[];
|
|
94
|
+
readonly exchanges: readonly Exchange[];
|
|
95
|
+
readonly offers: readonly CimplesOffer[];
|
|
96
|
+
readonly randomExchanges: readonly RandomExchange[];
|
|
97
|
+
currencyIndex(id: string): number;
|
|
98
|
+
itemIndex(id: string): number;
|
|
99
|
+
offer(id: string): CimplesOffer | null;
|
|
100
|
+
}
|
|
101
|
+
declare function defineEconomy(decl: EconomyDecl): Economy;
|
|
102
|
+
|
|
103
|
+
interface EconomyExchangePort {
|
|
104
|
+
exchange: HostCall<"game.economy.exchange">;
|
|
105
|
+
}
|
|
106
|
+
interface LedgerPorts {
|
|
107
|
+
readonly economy: CtxEconomy;
|
|
108
|
+
readonly keys: KeySource;
|
|
109
|
+
readonly exchange?: EconomyExchangePort | null;
|
|
110
|
+
}
|
|
111
|
+
type TradeableValue = SoftCurrency | Item;
|
|
112
|
+
declare class Ledger {
|
|
113
|
+
private readonly declared;
|
|
114
|
+
private readonly ports;
|
|
115
|
+
private readonly amounts;
|
|
116
|
+
private readonly holdings;
|
|
117
|
+
private revisionValue;
|
|
118
|
+
private ownerValue;
|
|
119
|
+
constructor(economy: Economy, ports: LedgerPorts);
|
|
120
|
+
get revision(): number;
|
|
121
|
+
get owner(): ParticipantId | null;
|
|
122
|
+
balance(currency: Currency): number;
|
|
123
|
+
holding(item: Item): number;
|
|
124
|
+
verifyCatalogue(): Promise<void>;
|
|
125
|
+
refresh(): Promise<void>;
|
|
126
|
+
earn<V extends SoftValue>(rule: Faucet<V>, quantity: number): Promise<LedgerReceipt>;
|
|
127
|
+
spend<V extends SoftValue>(rule: Sink<V>, quantity: number): Promise<LedgerReceipt>;
|
|
128
|
+
exchange(exchange: Exchange, quantity?: number): Promise<ExchangeReceipt>;
|
|
129
|
+
roll(reward: RandomExchange): Promise<ExchangeReceipt>;
|
|
130
|
+
propose(counterparty: ParticipantId, give: readonly ValueGrant<TradeableValue>[], take: readonly ValueGrant<TradeableValue>[], expiresInMs: number): Promise<TradeOffer>;
|
|
131
|
+
accept(tradeId: string): Promise<TradeSettlement>;
|
|
132
|
+
cancel(tradeId: string): Promise<TradeOffer>;
|
|
133
|
+
private settle;
|
|
134
|
+
private apply;
|
|
135
|
+
}
|
|
136
|
+
declare function catalogueProblems(economy: Economy, catalogue: EconomyCatalogue): string[];
|
|
137
|
+
|
|
138
|
+
declare const STALLS = 4;
|
|
139
|
+
declare const STALL_NAMES: readonly string[];
|
|
140
|
+
declare const coins: SoftCurrency<"coins">;
|
|
141
|
+
declare const gems: PremiumCurrency<"gems">;
|
|
142
|
+
declare const goldenPot: PremiumItem<"golden-pot">;
|
|
143
|
+
declare const chefHat: PremiumItem<"chef-hat">;
|
|
144
|
+
declare const festivalBanner: PremiumItem<"festival-banner">;
|
|
145
|
+
declare const stallEarnings: Faucet<SoftCurrency<"coins">>;
|
|
146
|
+
declare const buyStall: Sink<SoftCurrency<"coins">>;
|
|
147
|
+
declare const buyChefHat: PremiumExchange;
|
|
148
|
+
declare const gemPouch: FixedOffer;
|
|
149
|
+
declare const coinPack: FixedOffer;
|
|
150
|
+
declare const spiceCrate: RandomOffer;
|
|
151
|
+
declare const spiceCrateForGems: RandomExchange;
|
|
152
|
+
declare const tycoonEconomy: EconomyDecl;
|
|
153
|
+
type TycoonChallenge = "cook" | "buy" | "collect";
|
|
154
|
+
declare const TYCOON_CHALLENGES: readonly ChallengeDecl<TycoonChallenge>[];
|
|
155
|
+
declare const BANK_COINS = 0;
|
|
156
|
+
declare const BANK_COLLECT = 0;
|
|
157
|
+
declare const BANK_BUY = 1;
|
|
158
|
+
interface TycoonBank {
|
|
159
|
+
readonly coins: Float64Array;
|
|
160
|
+
readonly requests: Float64Array;
|
|
161
|
+
readonly confirmed: Int32Array;
|
|
162
|
+
pump(): void;
|
|
163
|
+
}
|
|
164
|
+
type TycoonBankFactory = (costs: Float64Array) => TycoonBank;
|
|
165
|
+
declare class LocalTycoonBank implements TycoonBank {
|
|
166
|
+
readonly coins: Float64Array<ArrayBuffer>;
|
|
167
|
+
readonly requests: Float64Array<ArrayBuffer>;
|
|
168
|
+
readonly confirmed: Int32Array<ArrayBuffer>;
|
|
169
|
+
private readonly costs;
|
|
170
|
+
constructor(costs: Float64Array, starting?: number);
|
|
171
|
+
pump(): void;
|
|
172
|
+
}
|
|
173
|
+
declare class LedgerTycoonBank implements TycoonBank {
|
|
174
|
+
readonly coins: Float64Array<ArrayBuffer>;
|
|
175
|
+
readonly requests: Float64Array<ArrayBuffer>;
|
|
176
|
+
readonly confirmed: Int32Array<ArrayBuffer>;
|
|
177
|
+
private readonly ledger;
|
|
178
|
+
private readonly costs;
|
|
179
|
+
private busy;
|
|
180
|
+
constructor(ledger: Ledger, costs: Float64Array);
|
|
181
|
+
pump(): void;
|
|
182
|
+
private run;
|
|
183
|
+
}
|
|
184
|
+
interface TycoonSave {
|
|
185
|
+
readonly owned: readonly number[];
|
|
186
|
+
readonly pending: number;
|
|
187
|
+
readonly earned: number;
|
|
188
|
+
readonly savedAt: number;
|
|
189
|
+
}
|
|
190
|
+
declare const tycoonSaveSchema: SaveSchema<TycoonSave>;
|
|
191
|
+
declare class JollofTycoon implements GameScene<Game> {
|
|
192
|
+
readonly name = "jollof-tycoon";
|
|
193
|
+
readonly owned: Int32Array<ArrayBuffer>;
|
|
194
|
+
readonly cost: Float64Array<ArrayBuffer>;
|
|
195
|
+
readonly potProgress: Float64Array<ArrayBuffer>;
|
|
196
|
+
readonly stats: Float64Array<ArrayBuffer>;
|
|
197
|
+
readonly daily: DailyChallenges<TycoonChallenge>;
|
|
198
|
+
readonly bank: TycoonBank;
|
|
199
|
+
potsCooked: number;
|
|
200
|
+
stallsBought: number;
|
|
201
|
+
private readonly springs;
|
|
202
|
+
private readonly pops;
|
|
203
|
+
private readonly buyActions;
|
|
204
|
+
private collectAction;
|
|
205
|
+
private coinSlot;
|
|
206
|
+
private pendingSlot;
|
|
207
|
+
private readonly ownedSlots;
|
|
208
|
+
private boxes;
|
|
209
|
+
constructor(bank?: TycoonBankFactory | null, daily?: DailyChallenges<TycoonChallenge> | null);
|
|
210
|
+
get pending(): number;
|
|
211
|
+
get earned(): number;
|
|
212
|
+
enter(game: Game): void;
|
|
213
|
+
fixedUpdate(game: Game): void;
|
|
214
|
+
update(game: Game): void;
|
|
215
|
+
snapshot(nowMs: number): TycoonSave;
|
|
216
|
+
restore(save: TycoonSave, nowMs: number): number;
|
|
217
|
+
}
|
|
218
|
+
declare const jollofTycoonTemplate: GenreTemplate<JollofTycoon>;
|
|
219
|
+
|
|
220
|
+
declare const tycoon_BANK_BUY: typeof BANK_BUY;
|
|
221
|
+
declare const tycoon_BANK_COINS: typeof BANK_COINS;
|
|
222
|
+
declare const tycoon_BANK_COLLECT: typeof BANK_COLLECT;
|
|
223
|
+
type tycoon_JollofTycoon = JollofTycoon;
|
|
224
|
+
declare const tycoon_JollofTycoon: typeof JollofTycoon;
|
|
225
|
+
type tycoon_LedgerTycoonBank = LedgerTycoonBank;
|
|
226
|
+
declare const tycoon_LedgerTycoonBank: typeof LedgerTycoonBank;
|
|
227
|
+
type tycoon_LocalTycoonBank = LocalTycoonBank;
|
|
228
|
+
declare const tycoon_LocalTycoonBank: typeof LocalTycoonBank;
|
|
229
|
+
declare const tycoon_STALLS: typeof STALLS;
|
|
230
|
+
declare const tycoon_STALL_NAMES: typeof STALL_NAMES;
|
|
231
|
+
declare const tycoon_TYCOON_CHALLENGES: typeof TYCOON_CHALLENGES;
|
|
232
|
+
type tycoon_TycoonBank = TycoonBank;
|
|
233
|
+
type tycoon_TycoonBankFactory = TycoonBankFactory;
|
|
234
|
+
type tycoon_TycoonChallenge = TycoonChallenge;
|
|
235
|
+
type tycoon_TycoonSave = TycoonSave;
|
|
236
|
+
declare const tycoon_buyChefHat: typeof buyChefHat;
|
|
237
|
+
declare const tycoon_buyStall: typeof buyStall;
|
|
238
|
+
declare const tycoon_chefHat: typeof chefHat;
|
|
239
|
+
declare const tycoon_coinPack: typeof coinPack;
|
|
240
|
+
declare const tycoon_coins: typeof coins;
|
|
241
|
+
declare const tycoon_festivalBanner: typeof festivalBanner;
|
|
242
|
+
declare const tycoon_gemPouch: typeof gemPouch;
|
|
243
|
+
declare const tycoon_gems: typeof gems;
|
|
244
|
+
declare const tycoon_goldenPot: typeof goldenPot;
|
|
245
|
+
declare const tycoon_jollofTycoonTemplate: typeof jollofTycoonTemplate;
|
|
246
|
+
declare const tycoon_spiceCrate: typeof spiceCrate;
|
|
247
|
+
declare const tycoon_spiceCrateForGems: typeof spiceCrateForGems;
|
|
248
|
+
declare const tycoon_stallEarnings: typeof stallEarnings;
|
|
249
|
+
declare const tycoon_tycoonEconomy: typeof tycoonEconomy;
|
|
250
|
+
declare const tycoon_tycoonSaveSchema: typeof tycoonSaveSchema;
|
|
251
|
+
declare namespace tycoon {
|
|
252
|
+
export { tycoon_BANK_BUY as BANK_BUY, tycoon_BANK_COINS as BANK_COINS, tycoon_BANK_COLLECT as BANK_COLLECT, tycoon_JollofTycoon as JollofTycoon, tycoon_LedgerTycoonBank as LedgerTycoonBank, tycoon_LocalTycoonBank as LocalTycoonBank, tycoon_STALLS as STALLS, tycoon_STALL_NAMES as STALL_NAMES, tycoon_TYCOON_CHALLENGES as TYCOON_CHALLENGES, type tycoon_TycoonBank as TycoonBank, type tycoon_TycoonBankFactory as TycoonBankFactory, type tycoon_TycoonChallenge as TycoonChallenge, type tycoon_TycoonSave as TycoonSave, tycoon_buyChefHat as buyChefHat, tycoon_buyStall as buyStall, tycoon_chefHat as chefHat, tycoon_coinPack as coinPack, tycoon_coins as coins, tycoon_festivalBanner as festivalBanner, tycoon_gemPouch as gemPouch, tycoon_gems as gems, tycoon_goldenPot as goldenPot, tycoon_jollofTycoonTemplate as jollofTycoonTemplate, tycoon_spiceCrate as spiceCrate, tycoon_spiceCrateForGems as spiceCrateForGems, tycoon_stallEarnings as stallEarnings, tycoon_tycoonEconomy as tycoonEconomy, tycoon_tycoonSaveSchema as tycoonSaveSchema };
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
export { Autosave as A, BANK_BUY as B, type ChallengeDecl as C, DailyChallenges as D, type Economy as E, type TycoonSave as F, buyChefHat as G, buyStall as H, chefHat as I, JollofTycoon as J, coinPack as K, Ledger as L, MS_PER_DAY as M, coins as N, festivalBanner as O, gemPouch as P, gems as Q, goldenPot as R, type SaveCtx as S, type TradeableValue as T, jollofTycoonTemplate as U, spiceCrate as V, spiceCrateForGems as W, stallEarnings as X, tycoonEconomy as Y, tycoonSaveSchema as Z, type EconomyExchangePort as a, type LedgerPorts as b, type LoadStatus as c, type Loaded as d, type Migration as e, type SaveSchema as f, SaveSlots as g, type SaveStorePort as h, catalogueProblems as i, dayIndex as j, daySeed as k, defineEconomy as l, hashSalt as m, BANK_COINS as n, openSaveSlots as o, BANK_COLLECT as p, LedgerTycoonBank as q, LocalTycoonBank as r, STALLS as s, tycoon as t, utcOffsetMinutes as u, STALL_NAMES as v, TYCOON_CHALLENGES as w, type TycoonBank as x, type TycoonBankFactory as y, type TycoonChallenge as z };
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { C as CompoundPartDesc, D as DeviceTier, B as BrushOp } from './backend-gUCzs5Kg.mjs';
|
|
2
|
+
|
|
3
|
+
declare const CSG_EPSILON = 0.00001;
|
|
4
|
+
interface CsgVertex {
|
|
5
|
+
readonly p: readonly [number, number, number];
|
|
6
|
+
readonly n: readonly [number, number, number];
|
|
7
|
+
}
|
|
8
|
+
declare class CsgPlane {
|
|
9
|
+
readonly normal: readonly [number, number, number];
|
|
10
|
+
readonly w: number;
|
|
11
|
+
constructor(normal: readonly [number, number, number], w: number);
|
|
12
|
+
static through(a: readonly number[], b: readonly number[], c: readonly number[]): CsgPlane | null;
|
|
13
|
+
flipped(): CsgPlane;
|
|
14
|
+
distance(p: readonly number[]): number;
|
|
15
|
+
split(polygon: CsgPolygon, coplanarFront: CsgPolygon[], coplanarBack: CsgPolygon[], front: CsgPolygon[], back: CsgPolygon[]): void;
|
|
16
|
+
}
|
|
17
|
+
declare class CsgPolygon {
|
|
18
|
+
readonly vertices: readonly CsgVertex[];
|
|
19
|
+
readonly shared: number;
|
|
20
|
+
readonly plane: CsgPlane;
|
|
21
|
+
constructor(vertices: readonly CsgVertex[], shared: number, plane: CsgPlane);
|
|
22
|
+
static of(vertices: readonly CsgVertex[], shared: number): CsgPolygon | null;
|
|
23
|
+
flipped(): CsgPolygon;
|
|
24
|
+
}
|
|
25
|
+
type CsgOperation = "union" | "subtract" | "intersect";
|
|
26
|
+
declare function csg(a: readonly CsgPolygon[], b: readonly CsgPolygon[], operation: CsgOperation): CsgPolygon[];
|
|
27
|
+
|
|
28
|
+
type Vec3 = readonly [number, number, number];
|
|
29
|
+
type ThingShape = {
|
|
30
|
+
readonly kind: "box";
|
|
31
|
+
readonly size: Vec3;
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: "sphere";
|
|
34
|
+
readonly radius: number;
|
|
35
|
+
} | {
|
|
36
|
+
readonly kind: "cylinder";
|
|
37
|
+
readonly radius: number;
|
|
38
|
+
readonly height: number;
|
|
39
|
+
} | {
|
|
40
|
+
readonly kind: "tube";
|
|
41
|
+
readonly radius: number;
|
|
42
|
+
readonly length: number;
|
|
43
|
+
} | {
|
|
44
|
+
readonly kind: "rounded";
|
|
45
|
+
readonly size: Vec3;
|
|
46
|
+
readonly radius: number;
|
|
47
|
+
};
|
|
48
|
+
type ThingShapeKind = ThingShape["kind"];
|
|
49
|
+
declare const THING_SHAPE_KINDS: readonly ThingShapeKind[];
|
|
50
|
+
interface Placement {
|
|
51
|
+
readonly at: Vec3;
|
|
52
|
+
readonly turn: Vec3;
|
|
53
|
+
readonly mirror: 0 | 1 | 2 | -1;
|
|
54
|
+
}
|
|
55
|
+
type Matrix = readonly [number, number, number, number, number, number, number, number, number];
|
|
56
|
+
declare function rotationMatrix(turn: Vec3): Matrix;
|
|
57
|
+
declare function shapeFaces(shape: ThingShape, segments: number): CsgVertex[][];
|
|
58
|
+
declare function shapePolygons(shape: ThingShape, placement: Placement, shared: number, segments: number): CsgPolygon[];
|
|
59
|
+
declare function shapeRadius(shape: ThingShape): number;
|
|
60
|
+
|
|
61
|
+
type ThingCombine = "join" | "cut" | "overlap";
|
|
62
|
+
type ThingMirror = "none" | "x" | "y" | "z";
|
|
63
|
+
type ThingEffectKind = "fire" | "smoke" | "steam" | "sparks" | "confetti" | "water" | "rain" | "break" | "sound";
|
|
64
|
+
interface ThingPart {
|
|
65
|
+
readonly id: string;
|
|
66
|
+
readonly name: string;
|
|
67
|
+
readonly shape: ThingShape;
|
|
68
|
+
readonly at: Vec3;
|
|
69
|
+
readonly turn: Vec3;
|
|
70
|
+
readonly material: string;
|
|
71
|
+
readonly combine: ThingCombine;
|
|
72
|
+
readonly mirror: ThingMirror;
|
|
73
|
+
}
|
|
74
|
+
interface ThingEffect {
|
|
75
|
+
readonly kind: ThingEffectKind;
|
|
76
|
+
readonly at: Vec3;
|
|
77
|
+
readonly size: number;
|
|
78
|
+
readonly startsAfter?: number;
|
|
79
|
+
readonly lasts?: number;
|
|
80
|
+
readonly color?: number;
|
|
81
|
+
readonly sound?: string | null;
|
|
82
|
+
}
|
|
83
|
+
interface Thing {
|
|
84
|
+
readonly name: string;
|
|
85
|
+
readonly parts: readonly ThingPart[];
|
|
86
|
+
readonly effects: readonly ThingEffect[];
|
|
87
|
+
}
|
|
88
|
+
interface ThingMeshGroup {
|
|
89
|
+
readonly material: string;
|
|
90
|
+
readonly start: number;
|
|
91
|
+
readonly count: number;
|
|
92
|
+
}
|
|
93
|
+
interface ThingMesh {
|
|
94
|
+
readonly positions: Float32Array;
|
|
95
|
+
readonly normals: Float32Array;
|
|
96
|
+
readonly indices: Uint32Array;
|
|
97
|
+
readonly groups: readonly ThingMeshGroup[];
|
|
98
|
+
readonly triangles: number;
|
|
99
|
+
}
|
|
100
|
+
interface ThingMass {
|
|
101
|
+
readonly volume: number;
|
|
102
|
+
readonly mass: number;
|
|
103
|
+
readonly centre: Vec3;
|
|
104
|
+
}
|
|
105
|
+
type PhoneCost = "light" | "medium" | "heavy";
|
|
106
|
+
interface ThingLevel {
|
|
107
|
+
readonly name: "close" | "middle" | "far";
|
|
108
|
+
readonly mesh: ThingMesh;
|
|
109
|
+
readonly dropped: readonly string[];
|
|
110
|
+
}
|
|
111
|
+
interface CompiledThing {
|
|
112
|
+
readonly levels: readonly ThingLevel[];
|
|
113
|
+
readonly mass: ThingMass;
|
|
114
|
+
readonly collider: {
|
|
115
|
+
readonly kind: "compound";
|
|
116
|
+
readonly parts: readonly CompoundPartDesc[];
|
|
117
|
+
};
|
|
118
|
+
readonly bounds: {
|
|
119
|
+
readonly min: Vec3;
|
|
120
|
+
readonly max: Vec3;
|
|
121
|
+
};
|
|
122
|
+
readonly cost: PhoneCost;
|
|
123
|
+
readonly effects: readonly ThingEffect[];
|
|
124
|
+
}
|
|
125
|
+
declare const THING_COMBINES: readonly ThingCombine[];
|
|
126
|
+
declare const THING_MIRRORS: readonly ThingMirror[];
|
|
127
|
+
declare const THING_EFFECTS: readonly ThingEffectKind[];
|
|
128
|
+
declare const CLOSE_SEGMENTS = 32;
|
|
129
|
+
declare const MIDDLE_SEGMENTS = 12;
|
|
130
|
+
declare const SMALL_PART_SHARE = 0.08;
|
|
131
|
+
declare const LIGHT_TRIANGLES = 4000;
|
|
132
|
+
declare const MEDIUM_TRIANGLES = 16000;
|
|
133
|
+
declare const EFFECT_TRIANGLE_COST = 1000;
|
|
134
|
+
declare const MAX_THING_PARTS = 64;
|
|
135
|
+
declare class ThingError extends Error {
|
|
136
|
+
constructor(message: string);
|
|
137
|
+
}
|
|
138
|
+
declare function massOf(mesh: ThingMesh): ThingMass;
|
|
139
|
+
declare function colliderOf(thing: Thing): {
|
|
140
|
+
readonly kind: "compound";
|
|
141
|
+
readonly parts: readonly CompoundPartDesc[];
|
|
142
|
+
};
|
|
143
|
+
declare function phoneCost(triangles: number, effects: number): PhoneCost;
|
|
144
|
+
declare function compileThing(thing: Thing): CompiledThing;
|
|
145
|
+
|
|
146
|
+
type Point2 = readonly [number, number];
|
|
147
|
+
type WorldLayer = "ground" | "roads" | "buildings" | "props" | "crowds" | "lights" | "sounds";
|
|
148
|
+
declare const WORLD_LAYERS: readonly WorldLayer[];
|
|
149
|
+
interface WorldPlacement {
|
|
150
|
+
readonly kind: string;
|
|
151
|
+
readonly at: Point2;
|
|
152
|
+
readonly yaw: number;
|
|
153
|
+
}
|
|
154
|
+
interface GroundStroke {
|
|
155
|
+
readonly op: BrushOp;
|
|
156
|
+
readonly at: Point2;
|
|
157
|
+
readonly radius: number;
|
|
158
|
+
readonly strength: number;
|
|
159
|
+
readonly target: number | null;
|
|
160
|
+
readonly layer: number;
|
|
161
|
+
}
|
|
162
|
+
interface Road {
|
|
163
|
+
readonly points: readonly Point2[];
|
|
164
|
+
readonly width: number;
|
|
165
|
+
}
|
|
166
|
+
interface ScatterStroke {
|
|
167
|
+
readonly layer: "props" | "crowds";
|
|
168
|
+
readonly kinds: readonly string[];
|
|
169
|
+
readonly at: Point2;
|
|
170
|
+
readonly radius: number;
|
|
171
|
+
readonly count: number;
|
|
172
|
+
readonly spacing: number;
|
|
173
|
+
readonly seed: number;
|
|
174
|
+
}
|
|
175
|
+
interface CrowdArea {
|
|
176
|
+
readonly at: Point2;
|
|
177
|
+
readonly radius: number;
|
|
178
|
+
readonly count: number;
|
|
179
|
+
readonly kinds: readonly string[];
|
|
180
|
+
}
|
|
181
|
+
interface WorldLight {
|
|
182
|
+
readonly at: Point2;
|
|
183
|
+
readonly height: number;
|
|
184
|
+
readonly color: number;
|
|
185
|
+
readonly intensity: number;
|
|
186
|
+
}
|
|
187
|
+
interface SoundZone {
|
|
188
|
+
readonly at: Point2;
|
|
189
|
+
readonly radius: number;
|
|
190
|
+
readonly sound: string;
|
|
191
|
+
}
|
|
192
|
+
type WeatherPreset = "clear" | "overcast" | "fog" | "drizzle" | "heavy_rain" | "thunderstorm" | "snow" | "blizzard" | "desert_dust" | "monsoon" | "golden_hour" | "night" | "harmattan_haze" | "real_sky";
|
|
193
|
+
interface WorldSky {
|
|
194
|
+
readonly hour: number;
|
|
195
|
+
readonly weather: WeatherPreset;
|
|
196
|
+
readonly dayMinutes: number;
|
|
197
|
+
}
|
|
198
|
+
type CrowdCaps = {
|
|
199
|
+
readonly [T in DeviceTier]?: number | null;
|
|
200
|
+
};
|
|
201
|
+
interface WorldDoc {
|
|
202
|
+
readonly name: string;
|
|
203
|
+
readonly place: string | null;
|
|
204
|
+
readonly size: Point2;
|
|
205
|
+
readonly ground: readonly GroundStroke[];
|
|
206
|
+
readonly roads: readonly Road[];
|
|
207
|
+
readonly buildings: readonly WorldPlacement[];
|
|
208
|
+
readonly props: readonly WorldPlacement[];
|
|
209
|
+
readonly scatters: readonly ScatterStroke[];
|
|
210
|
+
readonly crowds: readonly CrowdArea[];
|
|
211
|
+
readonly lights: readonly WorldLight[];
|
|
212
|
+
readonly sounds: readonly SoundZone[];
|
|
213
|
+
readonly gates: readonly Point2[];
|
|
214
|
+
readonly sky: WorldSky;
|
|
215
|
+
readonly crowdCaps?: CrowdCaps;
|
|
216
|
+
}
|
|
217
|
+
declare function emptyWorld(name: string, size: Point2, place?: string | null): WorldDoc;
|
|
218
|
+
|
|
219
|
+
export { rotationMatrix as $, type ThingPart as A, type ThingShape as B, CLOSE_SEGMENTS as C, type ThingShapeKind as D, EFFECT_TRIANGLE_COST as E, type WeatherPreset as F, type GroundStroke as G, type WorldDoc as H, type WorldLayer as I, type WorldLight as J, type WorldPlacement as K, LIGHT_TRIANGLES as L, MAX_THING_PARTS as M, type Point2 as N, type WorldSky as O, type PhoneCost as P, colliderOf as Q, type Road as R, SMALL_PART_SHARE as S, THING_COMBINES as T, compileThing as U, type Vec3 as V, WORLD_LAYERS as W, csg as X, emptyWorld as Y, massOf as Z, phoneCost as _, CSG_EPSILON as a, shapeFaces as a0, shapePolygons as a1, shapeRadius as a2, type CompiledThing as b, type CrowdArea as c, type CrowdCaps as d, type CsgOperation as e, CsgPlane as f, CsgPolygon as g, type CsgVertex as h, MEDIUM_TRIANGLES as i, MIDDLE_SEGMENTS as j, type Placement as k, type ScatterStroke as l, type SoundZone as m, THING_EFFECTS as n, THING_MIRRORS as o, THING_SHAPE_KINDS as p, type Thing as q, type ThingCombine as r, type ThingEffect as s, type ThingEffectKind as t, ThingError as u, type ThingLevel as v, type ThingMass as w, type ThingMesh as x, type ThingMeshGroup as y, type ThingMirror as z };
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { C as CompoundPartDesc, D as DeviceTier, B as BrushOp } from './backend-gUCzs5Kg.js';
|
|
2
|
+
|
|
3
|
+
declare const CSG_EPSILON = 0.00001;
|
|
4
|
+
interface CsgVertex {
|
|
5
|
+
readonly p: readonly [number, number, number];
|
|
6
|
+
readonly n: readonly [number, number, number];
|
|
7
|
+
}
|
|
8
|
+
declare class CsgPlane {
|
|
9
|
+
readonly normal: readonly [number, number, number];
|
|
10
|
+
readonly w: number;
|
|
11
|
+
constructor(normal: readonly [number, number, number], w: number);
|
|
12
|
+
static through(a: readonly number[], b: readonly number[], c: readonly number[]): CsgPlane | null;
|
|
13
|
+
flipped(): CsgPlane;
|
|
14
|
+
distance(p: readonly number[]): number;
|
|
15
|
+
split(polygon: CsgPolygon, coplanarFront: CsgPolygon[], coplanarBack: CsgPolygon[], front: CsgPolygon[], back: CsgPolygon[]): void;
|
|
16
|
+
}
|
|
17
|
+
declare class CsgPolygon {
|
|
18
|
+
readonly vertices: readonly CsgVertex[];
|
|
19
|
+
readonly shared: number;
|
|
20
|
+
readonly plane: CsgPlane;
|
|
21
|
+
constructor(vertices: readonly CsgVertex[], shared: number, plane: CsgPlane);
|
|
22
|
+
static of(vertices: readonly CsgVertex[], shared: number): CsgPolygon | null;
|
|
23
|
+
flipped(): CsgPolygon;
|
|
24
|
+
}
|
|
25
|
+
type CsgOperation = "union" | "subtract" | "intersect";
|
|
26
|
+
declare function csg(a: readonly CsgPolygon[], b: readonly CsgPolygon[], operation: CsgOperation): CsgPolygon[];
|
|
27
|
+
|
|
28
|
+
type Vec3 = readonly [number, number, number];
|
|
29
|
+
type ThingShape = {
|
|
30
|
+
readonly kind: "box";
|
|
31
|
+
readonly size: Vec3;
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: "sphere";
|
|
34
|
+
readonly radius: number;
|
|
35
|
+
} | {
|
|
36
|
+
readonly kind: "cylinder";
|
|
37
|
+
readonly radius: number;
|
|
38
|
+
readonly height: number;
|
|
39
|
+
} | {
|
|
40
|
+
readonly kind: "tube";
|
|
41
|
+
readonly radius: number;
|
|
42
|
+
readonly length: number;
|
|
43
|
+
} | {
|
|
44
|
+
readonly kind: "rounded";
|
|
45
|
+
readonly size: Vec3;
|
|
46
|
+
readonly radius: number;
|
|
47
|
+
};
|
|
48
|
+
type ThingShapeKind = ThingShape["kind"];
|
|
49
|
+
declare const THING_SHAPE_KINDS: readonly ThingShapeKind[];
|
|
50
|
+
interface Placement {
|
|
51
|
+
readonly at: Vec3;
|
|
52
|
+
readonly turn: Vec3;
|
|
53
|
+
readonly mirror: 0 | 1 | 2 | -1;
|
|
54
|
+
}
|
|
55
|
+
type Matrix = readonly [number, number, number, number, number, number, number, number, number];
|
|
56
|
+
declare function rotationMatrix(turn: Vec3): Matrix;
|
|
57
|
+
declare function shapeFaces(shape: ThingShape, segments: number): CsgVertex[][];
|
|
58
|
+
declare function shapePolygons(shape: ThingShape, placement: Placement, shared: number, segments: number): CsgPolygon[];
|
|
59
|
+
declare function shapeRadius(shape: ThingShape): number;
|
|
60
|
+
|
|
61
|
+
type ThingCombine = "join" | "cut" | "overlap";
|
|
62
|
+
type ThingMirror = "none" | "x" | "y" | "z";
|
|
63
|
+
type ThingEffectKind = "fire" | "smoke" | "steam" | "sparks" | "confetti" | "water" | "rain" | "break" | "sound";
|
|
64
|
+
interface ThingPart {
|
|
65
|
+
readonly id: string;
|
|
66
|
+
readonly name: string;
|
|
67
|
+
readonly shape: ThingShape;
|
|
68
|
+
readonly at: Vec3;
|
|
69
|
+
readonly turn: Vec3;
|
|
70
|
+
readonly material: string;
|
|
71
|
+
readonly combine: ThingCombine;
|
|
72
|
+
readonly mirror: ThingMirror;
|
|
73
|
+
}
|
|
74
|
+
interface ThingEffect {
|
|
75
|
+
readonly kind: ThingEffectKind;
|
|
76
|
+
readonly at: Vec3;
|
|
77
|
+
readonly size: number;
|
|
78
|
+
readonly startsAfter?: number;
|
|
79
|
+
readonly lasts?: number;
|
|
80
|
+
readonly color?: number;
|
|
81
|
+
readonly sound?: string | null;
|
|
82
|
+
}
|
|
83
|
+
interface Thing {
|
|
84
|
+
readonly name: string;
|
|
85
|
+
readonly parts: readonly ThingPart[];
|
|
86
|
+
readonly effects: readonly ThingEffect[];
|
|
87
|
+
}
|
|
88
|
+
interface ThingMeshGroup {
|
|
89
|
+
readonly material: string;
|
|
90
|
+
readonly start: number;
|
|
91
|
+
readonly count: number;
|
|
92
|
+
}
|
|
93
|
+
interface ThingMesh {
|
|
94
|
+
readonly positions: Float32Array;
|
|
95
|
+
readonly normals: Float32Array;
|
|
96
|
+
readonly indices: Uint32Array;
|
|
97
|
+
readonly groups: readonly ThingMeshGroup[];
|
|
98
|
+
readonly triangles: number;
|
|
99
|
+
}
|
|
100
|
+
interface ThingMass {
|
|
101
|
+
readonly volume: number;
|
|
102
|
+
readonly mass: number;
|
|
103
|
+
readonly centre: Vec3;
|
|
104
|
+
}
|
|
105
|
+
type PhoneCost = "light" | "medium" | "heavy";
|
|
106
|
+
interface ThingLevel {
|
|
107
|
+
readonly name: "close" | "middle" | "far";
|
|
108
|
+
readonly mesh: ThingMesh;
|
|
109
|
+
readonly dropped: readonly string[];
|
|
110
|
+
}
|
|
111
|
+
interface CompiledThing {
|
|
112
|
+
readonly levels: readonly ThingLevel[];
|
|
113
|
+
readonly mass: ThingMass;
|
|
114
|
+
readonly collider: {
|
|
115
|
+
readonly kind: "compound";
|
|
116
|
+
readonly parts: readonly CompoundPartDesc[];
|
|
117
|
+
};
|
|
118
|
+
readonly bounds: {
|
|
119
|
+
readonly min: Vec3;
|
|
120
|
+
readonly max: Vec3;
|
|
121
|
+
};
|
|
122
|
+
readonly cost: PhoneCost;
|
|
123
|
+
readonly effects: readonly ThingEffect[];
|
|
124
|
+
}
|
|
125
|
+
declare const THING_COMBINES: readonly ThingCombine[];
|
|
126
|
+
declare const THING_MIRRORS: readonly ThingMirror[];
|
|
127
|
+
declare const THING_EFFECTS: readonly ThingEffectKind[];
|
|
128
|
+
declare const CLOSE_SEGMENTS = 32;
|
|
129
|
+
declare const MIDDLE_SEGMENTS = 12;
|
|
130
|
+
declare const SMALL_PART_SHARE = 0.08;
|
|
131
|
+
declare const LIGHT_TRIANGLES = 4000;
|
|
132
|
+
declare const MEDIUM_TRIANGLES = 16000;
|
|
133
|
+
declare const EFFECT_TRIANGLE_COST = 1000;
|
|
134
|
+
declare const MAX_THING_PARTS = 64;
|
|
135
|
+
declare class ThingError extends Error {
|
|
136
|
+
constructor(message: string);
|
|
137
|
+
}
|
|
138
|
+
declare function massOf(mesh: ThingMesh): ThingMass;
|
|
139
|
+
declare function colliderOf(thing: Thing): {
|
|
140
|
+
readonly kind: "compound";
|
|
141
|
+
readonly parts: readonly CompoundPartDesc[];
|
|
142
|
+
};
|
|
143
|
+
declare function phoneCost(triangles: number, effects: number): PhoneCost;
|
|
144
|
+
declare function compileThing(thing: Thing): CompiledThing;
|
|
145
|
+
|
|
146
|
+
type Point2 = readonly [number, number];
|
|
147
|
+
type WorldLayer = "ground" | "roads" | "buildings" | "props" | "crowds" | "lights" | "sounds";
|
|
148
|
+
declare const WORLD_LAYERS: readonly WorldLayer[];
|
|
149
|
+
interface WorldPlacement {
|
|
150
|
+
readonly kind: string;
|
|
151
|
+
readonly at: Point2;
|
|
152
|
+
readonly yaw: number;
|
|
153
|
+
}
|
|
154
|
+
interface GroundStroke {
|
|
155
|
+
readonly op: BrushOp;
|
|
156
|
+
readonly at: Point2;
|
|
157
|
+
readonly radius: number;
|
|
158
|
+
readonly strength: number;
|
|
159
|
+
readonly target: number | null;
|
|
160
|
+
readonly layer: number;
|
|
161
|
+
}
|
|
162
|
+
interface Road {
|
|
163
|
+
readonly points: readonly Point2[];
|
|
164
|
+
readonly width: number;
|
|
165
|
+
}
|
|
166
|
+
interface ScatterStroke {
|
|
167
|
+
readonly layer: "props" | "crowds";
|
|
168
|
+
readonly kinds: readonly string[];
|
|
169
|
+
readonly at: Point2;
|
|
170
|
+
readonly radius: number;
|
|
171
|
+
readonly count: number;
|
|
172
|
+
readonly spacing: number;
|
|
173
|
+
readonly seed: number;
|
|
174
|
+
}
|
|
175
|
+
interface CrowdArea {
|
|
176
|
+
readonly at: Point2;
|
|
177
|
+
readonly radius: number;
|
|
178
|
+
readonly count: number;
|
|
179
|
+
readonly kinds: readonly string[];
|
|
180
|
+
}
|
|
181
|
+
interface WorldLight {
|
|
182
|
+
readonly at: Point2;
|
|
183
|
+
readonly height: number;
|
|
184
|
+
readonly color: number;
|
|
185
|
+
readonly intensity: number;
|
|
186
|
+
}
|
|
187
|
+
interface SoundZone {
|
|
188
|
+
readonly at: Point2;
|
|
189
|
+
readonly radius: number;
|
|
190
|
+
readonly sound: string;
|
|
191
|
+
}
|
|
192
|
+
type WeatherPreset = "clear" | "overcast" | "fog" | "drizzle" | "heavy_rain" | "thunderstorm" | "snow" | "blizzard" | "desert_dust" | "monsoon" | "golden_hour" | "night" | "harmattan_haze" | "real_sky";
|
|
193
|
+
interface WorldSky {
|
|
194
|
+
readonly hour: number;
|
|
195
|
+
readonly weather: WeatherPreset;
|
|
196
|
+
readonly dayMinutes: number;
|
|
197
|
+
}
|
|
198
|
+
type CrowdCaps = {
|
|
199
|
+
readonly [T in DeviceTier]?: number | null;
|
|
200
|
+
};
|
|
201
|
+
interface WorldDoc {
|
|
202
|
+
readonly name: string;
|
|
203
|
+
readonly place: string | null;
|
|
204
|
+
readonly size: Point2;
|
|
205
|
+
readonly ground: readonly GroundStroke[];
|
|
206
|
+
readonly roads: readonly Road[];
|
|
207
|
+
readonly buildings: readonly WorldPlacement[];
|
|
208
|
+
readonly props: readonly WorldPlacement[];
|
|
209
|
+
readonly scatters: readonly ScatterStroke[];
|
|
210
|
+
readonly crowds: readonly CrowdArea[];
|
|
211
|
+
readonly lights: readonly WorldLight[];
|
|
212
|
+
readonly sounds: readonly SoundZone[];
|
|
213
|
+
readonly gates: readonly Point2[];
|
|
214
|
+
readonly sky: WorldSky;
|
|
215
|
+
readonly crowdCaps?: CrowdCaps;
|
|
216
|
+
}
|
|
217
|
+
declare function emptyWorld(name: string, size: Point2, place?: string | null): WorldDoc;
|
|
218
|
+
|
|
219
|
+
export { rotationMatrix as $, type ThingPart as A, type ThingShape as B, CLOSE_SEGMENTS as C, type ThingShapeKind as D, EFFECT_TRIANGLE_COST as E, type WeatherPreset as F, type GroundStroke as G, type WorldDoc as H, type WorldLayer as I, type WorldLight as J, type WorldPlacement as K, LIGHT_TRIANGLES as L, MAX_THING_PARTS as M, type Point2 as N, type WorldSky as O, type PhoneCost as P, colliderOf as Q, type Road as R, SMALL_PART_SHARE as S, THING_COMBINES as T, compileThing as U, type Vec3 as V, WORLD_LAYERS as W, csg as X, emptyWorld as Y, massOf as Z, phoneCost as _, CSG_EPSILON as a, shapeFaces as a0, shapePolygons as a1, shapeRadius as a2, type CompiledThing as b, type CrowdArea as c, type CrowdCaps as d, type CsgOperation as e, CsgPlane as f, CsgPolygon as g, type CsgVertex as h, MEDIUM_TRIANGLES as i, MIDDLE_SEGMENTS as j, type Placement as k, type ScatterStroke as l, type SoundZone as m, THING_EFFECTS as n, THING_MIRRORS as o, THING_SHAPE_KINDS as p, type Thing as q, type ThingCombine as r, type ThingEffect as s, type ThingEffectKind as t, ThingError as u, type ThingLevel as v, type ThingMass as w, type ThingMesh as x, type ThingMeshGroup as y, type ThingMirror as z };
|