@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,109 @@
|
|
|
1
|
+
import { C as Ctx, B as CtxRequest } from './local-VZkqsCzR.js';
|
|
2
|
+
import { F as WorldMirror, h as LocalWorld, y as WorldBuilder, B as WorldConnection } from './online-XeymeM9s.js';
|
|
3
|
+
import { G as Game, aS as UiActionId } from './game-fgQy2YIm.js';
|
|
4
|
+
import { G as GameScene } from './fluid-ARr0qUIL.js';
|
|
5
|
+
import { bs as ThirdPersonRig } from './play-BRRlfLhX.js';
|
|
6
|
+
import { h as GenreTemplate } from './template-BkEGVTQj.js';
|
|
7
|
+
|
|
8
|
+
declare const WORLDS: {
|
|
9
|
+
readonly plazaHalf: 40;
|
|
10
|
+
readonly reach: 2.5;
|
|
11
|
+
readonly nudgeMm: 1000;
|
|
12
|
+
readonly duplicateOffsetMm: 1500;
|
|
13
|
+
readonly scaleUpPermille: 1250;
|
|
14
|
+
readonly scaleDownPermille: 800;
|
|
15
|
+
readonly selectRadius: 3;
|
|
16
|
+
readonly maxObjects: 400;
|
|
17
|
+
readonly palette: readonly [{
|
|
18
|
+
readonly item: "cimplify/crate";
|
|
19
|
+
readonly halfExtentsMm: readonly [500, 500, 500];
|
|
20
|
+
readonly color: 9268835;
|
|
21
|
+
}, {
|
|
22
|
+
readonly item: "cimplify/table";
|
|
23
|
+
readonly halfExtentsMm: readonly [750, 375, 450];
|
|
24
|
+
readonly color: 12946250;
|
|
25
|
+
}, {
|
|
26
|
+
readonly item: "cimplify/block";
|
|
27
|
+
readonly halfExtentsMm: readonly [1000, 250, 1000];
|
|
28
|
+
readonly color: 9479342;
|
|
29
|
+
}, {
|
|
30
|
+
readonly item: "cimplify/pillar";
|
|
31
|
+
readonly halfExtentsMm: readonly [250, 1250, 250];
|
|
32
|
+
readonly color: 14737632;
|
|
33
|
+
}];
|
|
34
|
+
};
|
|
35
|
+
declare const WORLD_ACTIONS: {
|
|
36
|
+
readonly build: "world.build";
|
|
37
|
+
readonly item: "world.item";
|
|
38
|
+
readonly place: "world.place";
|
|
39
|
+
readonly selectNear: "world.select_near";
|
|
40
|
+
readonly selectAdd: "world.select_add";
|
|
41
|
+
readonly clear: "world.clear";
|
|
42
|
+
readonly move: "world.move";
|
|
43
|
+
readonly rotate: "world.rotate";
|
|
44
|
+
readonly scaleUp: "world.scale_up";
|
|
45
|
+
readonly scaleDown: "world.scale_down";
|
|
46
|
+
readonly duplicate: "world.duplicate";
|
|
47
|
+
readonly remove: "world.delete";
|
|
48
|
+
readonly undo: "world.undo";
|
|
49
|
+
readonly redo: "world.redo";
|
|
50
|
+
readonly grid: "world.grid";
|
|
51
|
+
readonly surface: "world.surface";
|
|
52
|
+
};
|
|
53
|
+
interface BuildersPlazaOptions {
|
|
54
|
+
readonly connection?: WorldConnection | null;
|
|
55
|
+
}
|
|
56
|
+
declare class BuildersPlaza implements GameScene<Game> {
|
|
57
|
+
readonly name = "worlds";
|
|
58
|
+
rig: ThirdPersonRig | null;
|
|
59
|
+
readonly mirror: WorldMirror;
|
|
60
|
+
readonly local: LocalWorld | null;
|
|
61
|
+
readonly builder: WorldBuilder;
|
|
62
|
+
readonly connection: WorldConnection | null;
|
|
63
|
+
buildMode: boolean;
|
|
64
|
+
snap: number;
|
|
65
|
+
item: number;
|
|
66
|
+
built: number;
|
|
67
|
+
rejected: number;
|
|
68
|
+
private lastSeenResult;
|
|
69
|
+
private readonly placeOps;
|
|
70
|
+
private placeHead;
|
|
71
|
+
private boxes;
|
|
72
|
+
private readonly actions;
|
|
73
|
+
private readonly transform;
|
|
74
|
+
private readonly rotation;
|
|
75
|
+
private readonly nearest;
|
|
76
|
+
private readonly pose;
|
|
77
|
+
private objectsSlot;
|
|
78
|
+
private modeSlot;
|
|
79
|
+
private started;
|
|
80
|
+
private lastX;
|
|
81
|
+
private lastZ;
|
|
82
|
+
constructor(options?: BuildersPlazaOptions);
|
|
83
|
+
enter(game: Game): void;
|
|
84
|
+
fixedUpdate(game: Game): void;
|
|
85
|
+
update(game: Game): void;
|
|
86
|
+
exit(): void;
|
|
87
|
+
actionId(index: number): UiActionId;
|
|
88
|
+
private observeResults;
|
|
89
|
+
private target;
|
|
90
|
+
private nearestObject;
|
|
91
|
+
private handle;
|
|
92
|
+
private sync;
|
|
93
|
+
private draw;
|
|
94
|
+
}
|
|
95
|
+
declare const worldsTemplate: GenreTemplate<BuildersPlaza>;
|
|
96
|
+
declare function joinBuildersPlaza(ctx: Ctx, request: CtxRequest<"world.join">): Promise<BuildersPlaza>;
|
|
97
|
+
|
|
98
|
+
type worlds_BuildersPlaza = BuildersPlaza;
|
|
99
|
+
declare const worlds_BuildersPlaza: typeof BuildersPlaza;
|
|
100
|
+
type worlds_BuildersPlazaOptions = BuildersPlazaOptions;
|
|
101
|
+
declare const worlds_WORLDS: typeof WORLDS;
|
|
102
|
+
declare const worlds_WORLD_ACTIONS: typeof WORLD_ACTIONS;
|
|
103
|
+
declare const worlds_joinBuildersPlaza: typeof joinBuildersPlaza;
|
|
104
|
+
declare const worlds_worldsTemplate: typeof worldsTemplate;
|
|
105
|
+
declare namespace worlds {
|
|
106
|
+
export { worlds_BuildersPlaza as BuildersPlaza, type worlds_BuildersPlazaOptions as BuildersPlazaOptions, worlds_WORLDS as WORLDS, worlds_WORLD_ACTIONS as WORLD_ACTIONS, worlds_joinBuildersPlaza as joinBuildersPlaza, worlds_worldsTemplate as worldsTemplate };
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export { BuildersPlaza as B, WORLDS as W, type BuildersPlazaOptions as a, WORLD_ACTIONS as b, worldsTemplate as c, joinBuildersPlaza as j, worlds as w };
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { C as Ctx, B as CtxRequest } from './local-D8_I6UeL.mjs';
|
|
2
|
+
import { F as WorldMirror, h as LocalWorld, y as WorldBuilder, B as WorldConnection } from './online-d7W_Al9a.mjs';
|
|
3
|
+
import { G as Game, aS as UiActionId } from './game-Bx8onkhX.mjs';
|
|
4
|
+
import { G as GameScene } from './fluid-DLlEj2cs.mjs';
|
|
5
|
+
import { bs as ThirdPersonRig } from './play-ClrMd_e8.mjs';
|
|
6
|
+
import { h as GenreTemplate } from './template-AhCdB1kW.mjs';
|
|
7
|
+
|
|
8
|
+
declare const WORLDS: {
|
|
9
|
+
readonly plazaHalf: 40;
|
|
10
|
+
readonly reach: 2.5;
|
|
11
|
+
readonly nudgeMm: 1000;
|
|
12
|
+
readonly duplicateOffsetMm: 1500;
|
|
13
|
+
readonly scaleUpPermille: 1250;
|
|
14
|
+
readonly scaleDownPermille: 800;
|
|
15
|
+
readonly selectRadius: 3;
|
|
16
|
+
readonly maxObjects: 400;
|
|
17
|
+
readonly palette: readonly [{
|
|
18
|
+
readonly item: "cimplify/crate";
|
|
19
|
+
readonly halfExtentsMm: readonly [500, 500, 500];
|
|
20
|
+
readonly color: 9268835;
|
|
21
|
+
}, {
|
|
22
|
+
readonly item: "cimplify/table";
|
|
23
|
+
readonly halfExtentsMm: readonly [750, 375, 450];
|
|
24
|
+
readonly color: 12946250;
|
|
25
|
+
}, {
|
|
26
|
+
readonly item: "cimplify/block";
|
|
27
|
+
readonly halfExtentsMm: readonly [1000, 250, 1000];
|
|
28
|
+
readonly color: 9479342;
|
|
29
|
+
}, {
|
|
30
|
+
readonly item: "cimplify/pillar";
|
|
31
|
+
readonly halfExtentsMm: readonly [250, 1250, 250];
|
|
32
|
+
readonly color: 14737632;
|
|
33
|
+
}];
|
|
34
|
+
};
|
|
35
|
+
declare const WORLD_ACTIONS: {
|
|
36
|
+
readonly build: "world.build";
|
|
37
|
+
readonly item: "world.item";
|
|
38
|
+
readonly place: "world.place";
|
|
39
|
+
readonly selectNear: "world.select_near";
|
|
40
|
+
readonly selectAdd: "world.select_add";
|
|
41
|
+
readonly clear: "world.clear";
|
|
42
|
+
readonly move: "world.move";
|
|
43
|
+
readonly rotate: "world.rotate";
|
|
44
|
+
readonly scaleUp: "world.scale_up";
|
|
45
|
+
readonly scaleDown: "world.scale_down";
|
|
46
|
+
readonly duplicate: "world.duplicate";
|
|
47
|
+
readonly remove: "world.delete";
|
|
48
|
+
readonly undo: "world.undo";
|
|
49
|
+
readonly redo: "world.redo";
|
|
50
|
+
readonly grid: "world.grid";
|
|
51
|
+
readonly surface: "world.surface";
|
|
52
|
+
};
|
|
53
|
+
interface BuildersPlazaOptions {
|
|
54
|
+
readonly connection?: WorldConnection | null;
|
|
55
|
+
}
|
|
56
|
+
declare class BuildersPlaza implements GameScene<Game> {
|
|
57
|
+
readonly name = "worlds";
|
|
58
|
+
rig: ThirdPersonRig | null;
|
|
59
|
+
readonly mirror: WorldMirror;
|
|
60
|
+
readonly local: LocalWorld | null;
|
|
61
|
+
readonly builder: WorldBuilder;
|
|
62
|
+
readonly connection: WorldConnection | null;
|
|
63
|
+
buildMode: boolean;
|
|
64
|
+
snap: number;
|
|
65
|
+
item: number;
|
|
66
|
+
built: number;
|
|
67
|
+
rejected: number;
|
|
68
|
+
private lastSeenResult;
|
|
69
|
+
private readonly placeOps;
|
|
70
|
+
private placeHead;
|
|
71
|
+
private boxes;
|
|
72
|
+
private readonly actions;
|
|
73
|
+
private readonly transform;
|
|
74
|
+
private readonly rotation;
|
|
75
|
+
private readonly nearest;
|
|
76
|
+
private readonly pose;
|
|
77
|
+
private objectsSlot;
|
|
78
|
+
private modeSlot;
|
|
79
|
+
private started;
|
|
80
|
+
private lastX;
|
|
81
|
+
private lastZ;
|
|
82
|
+
constructor(options?: BuildersPlazaOptions);
|
|
83
|
+
enter(game: Game): void;
|
|
84
|
+
fixedUpdate(game: Game): void;
|
|
85
|
+
update(game: Game): void;
|
|
86
|
+
exit(): void;
|
|
87
|
+
actionId(index: number): UiActionId;
|
|
88
|
+
private observeResults;
|
|
89
|
+
private target;
|
|
90
|
+
private nearestObject;
|
|
91
|
+
private handle;
|
|
92
|
+
private sync;
|
|
93
|
+
private draw;
|
|
94
|
+
}
|
|
95
|
+
declare const worldsTemplate: GenreTemplate<BuildersPlaza>;
|
|
96
|
+
declare function joinBuildersPlaza(ctx: Ctx, request: CtxRequest<"world.join">): Promise<BuildersPlaza>;
|
|
97
|
+
|
|
98
|
+
type worlds_BuildersPlaza = BuildersPlaza;
|
|
99
|
+
declare const worlds_BuildersPlaza: typeof BuildersPlaza;
|
|
100
|
+
type worlds_BuildersPlazaOptions = BuildersPlazaOptions;
|
|
101
|
+
declare const worlds_WORLDS: typeof WORLDS;
|
|
102
|
+
declare const worlds_WORLD_ACTIONS: typeof WORLD_ACTIONS;
|
|
103
|
+
declare const worlds_joinBuildersPlaza: typeof joinBuildersPlaza;
|
|
104
|
+
declare const worlds_worldsTemplate: typeof worldsTemplate;
|
|
105
|
+
declare namespace worlds {
|
|
106
|
+
export { worlds_BuildersPlaza as BuildersPlaza, type worlds_BuildersPlazaOptions as BuildersPlazaOptions, worlds_WORLDS as WORLDS, worlds_WORLD_ACTIONS as WORLD_ACTIONS, worlds_joinBuildersPlaza as joinBuildersPlaza, worlds_worldsTemplate as worldsTemplate };
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
export { BuildersPlaza as B, WORLDS as W, type BuildersPlazaOptions as a, WORLD_ACTIONS as b, worldsTemplate as c, joinBuildersPlaza as j, worlds as w };
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
#ifndef CIMPLIFY_H
|
|
2
|
+
#define CIMPLIFY_H
|
|
3
|
+
|
|
4
|
+
#include <stdint.h>
|
|
5
|
+
|
|
6
|
+
#define CIMPLIFY_ABI 1
|
|
7
|
+
|
|
8
|
+
#ifdef __EMSCRIPTEN__
|
|
9
|
+
#define CIMPLIFY_IMPORT(name)
|
|
10
|
+
#else
|
|
11
|
+
#define CIMPLIFY_IMPORT(name) __attribute__((import_module("cimplify"), import_name(#name)))
|
|
12
|
+
#endif
|
|
13
|
+
#define CIMPLIFY_EXPORT(name) __attribute__((used, visibility("default"), export_name(#name)))
|
|
14
|
+
|
|
15
|
+
#ifdef __cplusplus
|
|
16
|
+
extern "C" {
|
|
17
|
+
#endif
|
|
18
|
+
|
|
19
|
+
enum {
|
|
20
|
+
CIMPLIFY_CTX = 0,
|
|
21
|
+
CIMPLIFY_PENDING = 0,
|
|
22
|
+
CIMPLIFY_OK = 1,
|
|
23
|
+
CIMPLIFY_ERROR = 2,
|
|
24
|
+
CIMPLIFY_EVENT = 3,
|
|
25
|
+
CIMPLIFY_UNKNOWN = -1,
|
|
26
|
+
CIMPLIFY_SHORT = -2,
|
|
27
|
+
CIMPLIFY_LOG_DEBUG = 0,
|
|
28
|
+
CIMPLIFY_LOG_WARN = 1,
|
|
29
|
+
CIMPLIFY_LOG_ERROR = 2,
|
|
30
|
+
CIMPLIFY_VISIBLE = 1,
|
|
31
|
+
CIMPLIFY_HIDDEN = 2,
|
|
32
|
+
CIMPLIFY_SUSPEND = 3,
|
|
33
|
+
CIMPLIFY_RESUME = 4,
|
|
34
|
+
CIMPLIFY_DISPOSE = 6,
|
|
35
|
+
CIMPLIFY_KEY_WORDS = 8
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
typedef struct cimplify_input {
|
|
39
|
+
int32_t width;
|
|
40
|
+
int32_t height;
|
|
41
|
+
int32_t pointer_x;
|
|
42
|
+
int32_t pointer_y;
|
|
43
|
+
int32_t pointer_down;
|
|
44
|
+
int32_t pointer_presses;
|
|
45
|
+
int32_t pointer_releases;
|
|
46
|
+
int32_t reserved;
|
|
47
|
+
uint32_t keys_down[CIMPLIFY_KEY_WORDS];
|
|
48
|
+
uint32_t keys_pressed[CIMPLIFY_KEY_WORDS];
|
|
49
|
+
} cimplify_input;
|
|
50
|
+
|
|
51
|
+
CIMPLIFY_IMPORT(request) int32_t cimplify_request(int32_t target, const char *path, int32_t path_length, const char *args, int32_t args_length);
|
|
52
|
+
CIMPLIFY_IMPORT(listen) int32_t cimplify_listen(int32_t target, const char *path, int32_t path_length, const char *args, int32_t args_length);
|
|
53
|
+
CIMPLIFY_IMPORT(pack) int32_t cimplify_pack(const char *name, int32_t name_length);
|
|
54
|
+
CIMPLIFY_IMPORT(status) int32_t cimplify_status(int32_t id);
|
|
55
|
+
CIMPLIFY_IMPORT(size) int32_t cimplify_size(int32_t id);
|
|
56
|
+
CIMPLIFY_IMPORT(take) int32_t cimplify_take(int32_t id, void *out, int32_t capacity);
|
|
57
|
+
CIMPLIFY_IMPORT(release) void cimplify_release(int32_t id);
|
|
58
|
+
CIMPLIFY_IMPORT(present) void cimplify_present(const void *rgba, int32_t width, int32_t height);
|
|
59
|
+
CIMPLIFY_IMPORT(log) void cimplify_log(int32_t level, const char *text, int32_t length);
|
|
60
|
+
|
|
61
|
+
const cimplify_input *cimplify_input_state(void);
|
|
62
|
+
|
|
63
|
+
static inline int32_t cimplify_key_down(const cimplify_input *input, uint32_t key_code) {
|
|
64
|
+
return (int32_t)((input->keys_down[(key_code & 255u) >> 5] >> (key_code & 31u)) & 1u);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
static inline int32_t cimplify_key_pressed(const cimplify_input *input, uint32_t key_code) {
|
|
68
|
+
return (int32_t)((input->keys_pressed[(key_code & 255u) >> 5] >> (key_code & 31u)) & 1u);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
static inline int32_t cimplify_length(const char *text) {
|
|
72
|
+
int32_t length = 0;
|
|
73
|
+
while (text[length] != 0) length++;
|
|
74
|
+
return length;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
static inline int32_t cimplify_call(const char *path, const char *args_json) {
|
|
78
|
+
return cimplify_request(CIMPLIFY_CTX, path, cimplify_length(path), args_json, cimplify_length(args_json));
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
CIMPLIFY_EXPORT(cimplify_start) void cimplify_start(void);
|
|
82
|
+
CIMPLIFY_EXPORT(cimplify_frame) void cimplify_frame(int32_t delta_micros);
|
|
83
|
+
CIMPLIFY_EXPORT(cimplify_abi_version) int32_t cimplify_abi_version(void);
|
|
84
|
+
CIMPLIFY_EXPORT(cimplify_input_block) cimplify_input *cimplify_input_block(void);
|
|
85
|
+
|
|
86
|
+
#ifdef CIMPLIFY_IMPLEMENTATION
|
|
87
|
+
|
|
88
|
+
static cimplify_input cimplify_input_storage;
|
|
89
|
+
|
|
90
|
+
int32_t cimplify_abi_version(void) {
|
|
91
|
+
return CIMPLIFY_ABI;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
cimplify_input *cimplify_input_block(void) {
|
|
95
|
+
return &cimplify_input_storage;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
const cimplify_input *cimplify_input_state(void) {
|
|
99
|
+
return &cimplify_input_storage;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
#endif
|
|
103
|
+
|
|
104
|
+
#ifdef __cplusplus
|
|
105
|
+
}
|
|
106
|
+
#endif
|
|
107
|
+
|
|
108
|
+
#endif
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
addToLibrary({
|
|
2
|
+
cimplify_request: (target, path, pathLength, args, argsLength) => Module.cimplify.request(target, path, pathLength, args, argsLength),
|
|
3
|
+
cimplify_listen: (target, path, pathLength, args, argsLength) => Module.cimplify.listen(target, path, pathLength, args, argsLength),
|
|
4
|
+
cimplify_pack: (name, nameLength) => Module.cimplify.pack(name, nameLength),
|
|
5
|
+
cimplify_status: (id) => Module.cimplify.status(id),
|
|
6
|
+
cimplify_size: (id) => Module.cimplify.size(id),
|
|
7
|
+
cimplify_take: (id, out, capacity) => Module.cimplify.take(id, out, capacity),
|
|
8
|
+
cimplify_release: (id) => Module.cimplify.release(id),
|
|
9
|
+
cimplify_present: (rgba, width, height) => Module.cimplify.present(rgba, width, height),
|
|
10
|
+
cimplify_log: (level, text, length) => Module.cimplify.log(level, text, length),
|
|
11
|
+
});
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
extends Node
|
|
2
|
+
|
|
3
|
+
signal settled(id: int, status: int, payload: String)
|
|
4
|
+
signal event(id: int, payload: String)
|
|
5
|
+
signal lifecycle(state: String)
|
|
6
|
+
|
|
7
|
+
const CTX := 0
|
|
8
|
+
const OK := 1
|
|
9
|
+
const FAILED := 2
|
|
10
|
+
const EVENT := 3
|
|
11
|
+
const INTERFACE := "cimplify"
|
|
12
|
+
const LIFECYCLE_STATES: Array[String] = ["visible", "hidden", "suspend", "resume", "dispose"]
|
|
13
|
+
const PAUSING_STATES: Array[String] = ["hidden", "suspend"]
|
|
14
|
+
const RESUMING_STATES: Array[String] = ["visible", "resume"]
|
|
15
|
+
|
|
16
|
+
var _bridge: JavaScriptObject
|
|
17
|
+
var _callback: JavaScriptObject
|
|
18
|
+
var _lifecycle_listens: Dictionary = {}
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
func _ready() -> void:
|
|
22
|
+
process_mode = Node.PROCESS_MODE_ALWAYS
|
|
23
|
+
if not OS.has_feature("web"):
|
|
24
|
+
return
|
|
25
|
+
_bridge = JavaScriptBridge.get_interface(INTERFACE)
|
|
26
|
+
if _bridge == null:
|
|
27
|
+
return
|
|
28
|
+
_callback = JavaScriptBridge.create_callback(_on_settled)
|
|
29
|
+
for state in LIFECYCLE_STATES:
|
|
30
|
+
var id := int(_bridge.listen(CTX, "lifecycle.on", JSON.stringify([state]), _callback))
|
|
31
|
+
_lifecycle_listens[id] = state
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
func available() -> bool:
|
|
35
|
+
return _bridge != null
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
func call_ctx(path: String, args: Array = [], target: int = CTX) -> Dictionary:
|
|
39
|
+
if _bridge == null:
|
|
40
|
+
return {"ok": false, "error": {"code": "unavailable", "message": "ctx is reached only inside the Cimplify canvas host"}}
|
|
41
|
+
var id := int(_bridge.request(target, path, JSON.stringify(args), _callback))
|
|
42
|
+
while true:
|
|
43
|
+
var result: Array = await settled
|
|
44
|
+
if int(result[0]) != id:
|
|
45
|
+
continue
|
|
46
|
+
var value: Variant = JSON.parse_string(String(result[2]))
|
|
47
|
+
if int(result[1]) == OK:
|
|
48
|
+
return {"ok": true, "value": value}
|
|
49
|
+
return {"ok": false, "error": value}
|
|
50
|
+
return {}
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
func listen(path: String, args: Array = [], target: int = CTX) -> int:
|
|
54
|
+
if _bridge == null:
|
|
55
|
+
return -1
|
|
56
|
+
return int(_bridge.listen(target, path, JSON.stringify(args), _callback))
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
func release(id: int) -> void:
|
|
60
|
+
if _bridge != null:
|
|
61
|
+
_bridge.release(id)
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
func load_pack(name: String) -> bool:
|
|
65
|
+
if _bridge == null:
|
|
66
|
+
return false
|
|
67
|
+
var id := int(_bridge.pack(name, _callback))
|
|
68
|
+
while true:
|
|
69
|
+
var result: Array = await settled
|
|
70
|
+
if int(result[0]) != id:
|
|
71
|
+
continue
|
|
72
|
+
if int(result[1]) != OK:
|
|
73
|
+
return false
|
|
74
|
+
return ProjectSettings.load_resource_pack(String(result[2]))
|
|
75
|
+
return false
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
func _on_settled(args: Array) -> void:
|
|
79
|
+
var id := int(args[0])
|
|
80
|
+
var status := int(args[1])
|
|
81
|
+
var payload := String(args[2])
|
|
82
|
+
if _lifecycle_listens.has(id):
|
|
83
|
+
if status == EVENT:
|
|
84
|
+
_on_lifecycle(_lifecycle_listens[id])
|
|
85
|
+
return
|
|
86
|
+
if status == EVENT:
|
|
87
|
+
event.emit(id, payload)
|
|
88
|
+
else:
|
|
89
|
+
settled.emit(id, status, payload)
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
func _on_lifecycle(state: String) -> void:
|
|
93
|
+
if PAUSING_STATES.has(state):
|
|
94
|
+
get_tree().paused = true
|
|
95
|
+
elif RESUMING_STATES.has(state):
|
|
96
|
+
get_tree().paused = false
|
|
97
|
+
lifecycle.emit(state)
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
#![no_std]
|
|
2
|
+
|
|
3
|
+
use core::cell::UnsafeCell;
|
|
4
|
+
|
|
5
|
+
pub const ABI: i32 = 1;
|
|
6
|
+
pub const KEY_WORDS: usize = 8;
|
|
7
|
+
|
|
8
|
+
mod sys {
|
|
9
|
+
#[link(wasm_import_module = "cimplify")]
|
|
10
|
+
unsafe extern "C" {
|
|
11
|
+
pub fn request(target: i32, path: *const u8, path_length: i32, args: *const u8, args_length: i32) -> i32;
|
|
12
|
+
pub fn listen(target: i32, path: *const u8, path_length: i32, args: *const u8, args_length: i32) -> i32;
|
|
13
|
+
pub fn pack(name: *const u8, name_length: i32) -> i32;
|
|
14
|
+
pub fn status(id: i32) -> i32;
|
|
15
|
+
pub fn size(id: i32) -> i32;
|
|
16
|
+
pub fn take(id: i32, out: *mut u8, capacity: i32) -> i32;
|
|
17
|
+
pub fn release(id: i32);
|
|
18
|
+
pub fn present(rgba: *const u8, width: i32, height: i32);
|
|
19
|
+
pub fn log(level: i32, text: *const u8, length: i32);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
|
|
24
|
+
pub struct Target(i32);
|
|
25
|
+
|
|
26
|
+
pub const CTX: Target = Target(0);
|
|
27
|
+
|
|
28
|
+
impl Target {
|
|
29
|
+
pub const fn handle(id: i32) -> Self {
|
|
30
|
+
Self(id)
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
|
|
35
|
+
pub enum Status {
|
|
36
|
+
Pending,
|
|
37
|
+
Ready,
|
|
38
|
+
Failed,
|
|
39
|
+
Event,
|
|
40
|
+
Unknown,
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
|
|
44
|
+
pub struct Short {
|
|
45
|
+
pub needed: usize,
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
|
|
49
|
+
pub struct Call(i32);
|
|
50
|
+
|
|
51
|
+
const STATUS_PENDING: i32 = 0;
|
|
52
|
+
const STATUS_READY: i32 = 1;
|
|
53
|
+
const STATUS_FAILED: i32 = 2;
|
|
54
|
+
const STATUS_EVENT: i32 = 3;
|
|
55
|
+
|
|
56
|
+
impl Call {
|
|
57
|
+
pub fn status(self) -> Status {
|
|
58
|
+
match unsafe { sys::status(self.0) } {
|
|
59
|
+
STATUS_PENDING => Status::Pending,
|
|
60
|
+
STATUS_READY => Status::Ready,
|
|
61
|
+
STATUS_FAILED => Status::Failed,
|
|
62
|
+
STATUS_EVENT => Status::Event,
|
|
63
|
+
_ => Status::Unknown,
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
pub fn size(self) -> usize {
|
|
68
|
+
unsafe { sys::size(self.0) }.max(0) as usize
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
pub fn take(self, out: &mut [u8]) -> Result<usize, Short> {
|
|
72
|
+
let written = unsafe { sys::take(self.0, out.as_mut_ptr(), out.len() as i32) };
|
|
73
|
+
if written < 0 {
|
|
74
|
+
return Err(Short { needed: self.size() });
|
|
75
|
+
}
|
|
76
|
+
Ok(written as usize)
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
pub fn release(self) {
|
|
80
|
+
unsafe { sys::release(self.0) }
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
pub fn request(target: Target, path: &str, args_json: &str) -> Call {
|
|
85
|
+
Call(unsafe { sys::request(target.0, path.as_ptr(), path.len() as i32, args_json.as_ptr(), args_json.len() as i32) })
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
pub fn listen(target: Target, path: &str, args_json: &str) -> Call {
|
|
89
|
+
Call(unsafe { sys::listen(target.0, path.as_ptr(), path.len() as i32, args_json.as_ptr(), args_json.len() as i32) })
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
pub fn pack(name: &str) -> Call {
|
|
93
|
+
Call(unsafe { sys::pack(name.as_ptr(), name.len() as i32) })
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
pub fn present(rgba: &[u8], width: u32, height: u32) {
|
|
97
|
+
if rgba.len() < width as usize * height as usize * 4 {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
unsafe { sys::present(rgba.as_ptr(), width as i32, height as i32) }
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
|
|
104
|
+
pub enum Level {
|
|
105
|
+
Debug = 0,
|
|
106
|
+
Warn = 1,
|
|
107
|
+
Error = 2,
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
pub fn log(level: Level, text: &str) {
|
|
111
|
+
unsafe { sys::log(level as i32, text.as_ptr(), text.len() as i32) }
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
#[repr(C)]
|
|
115
|
+
pub struct Input {
|
|
116
|
+
pub width: i32,
|
|
117
|
+
pub height: i32,
|
|
118
|
+
pub pointer_x: i32,
|
|
119
|
+
pub pointer_y: i32,
|
|
120
|
+
pub pointer_down: i32,
|
|
121
|
+
pub pointer_presses: i32,
|
|
122
|
+
pub pointer_releases: i32,
|
|
123
|
+
reserved: i32,
|
|
124
|
+
pub keys_down: [u32; KEY_WORDS],
|
|
125
|
+
pub keys_pressed: [u32; KEY_WORDS],
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
impl Input {
|
|
129
|
+
const EMPTY: Self = Self {
|
|
130
|
+
width: 0,
|
|
131
|
+
height: 0,
|
|
132
|
+
pointer_x: 0,
|
|
133
|
+
pointer_y: 0,
|
|
134
|
+
pointer_down: 0,
|
|
135
|
+
pointer_presses: 0,
|
|
136
|
+
pointer_releases: 0,
|
|
137
|
+
reserved: 0,
|
|
138
|
+
keys_down: [0; KEY_WORDS],
|
|
139
|
+
keys_pressed: [0; KEY_WORDS],
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
pub fn key_down(&self, key_code: u32) -> bool {
|
|
143
|
+
bit(&self.keys_down, key_code)
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
pub fn key_pressed(&self, key_code: u32) -> bool {
|
|
147
|
+
bit(&self.keys_pressed, key_code)
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
fn bit(words: &[u32; KEY_WORDS], key_code: u32) -> bool {
|
|
152
|
+
let code = key_code & 255;
|
|
153
|
+
(words[(code >> 5) as usize] >> (code & 31)) & 1 == 1
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
struct InputCell(UnsafeCell<Input>);
|
|
157
|
+
|
|
158
|
+
unsafe impl Sync for InputCell {}
|
|
159
|
+
|
|
160
|
+
static INPUT: InputCell = InputCell(UnsafeCell::new(Input::EMPTY));
|
|
161
|
+
|
|
162
|
+
pub fn input() -> &'static Input {
|
|
163
|
+
unsafe { &*INPUT.0.get() }
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
#[unsafe(no_mangle)]
|
|
167
|
+
pub extern "C" fn cimplify_input_block() -> *mut Input {
|
|
168
|
+
INPUT.0.get()
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
#[unsafe(no_mangle)]
|
|
172
|
+
pub extern "C" fn cimplify_abi_version() -> i32 {
|
|
173
|
+
ABI
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
#[macro_export]
|
|
177
|
+
macro_rules! game {
|
|
178
|
+
($start:path, $frame:path) => {
|
|
179
|
+
#[unsafe(no_mangle)]
|
|
180
|
+
pub extern "C" fn cimplify_start() {
|
|
181
|
+
$start()
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
#[unsafe(no_mangle)]
|
|
185
|
+
pub extern "C" fn cimplify_frame(delta_micros: i32) {
|
|
186
|
+
$frame(delta_micros)
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
}
|