gdcore-tools 1.0.5 → 1.0.7

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.
Files changed (603) hide show
  1. package/GDevelop/ExtLibs/7za.exe +0 -0
  2. package/GDevelop/ExtLibs/curl.exe +0 -0
  3. package/GDevelop/scripts/libgettextlib-0-17.dll +0 -0
  4. package/GDevelop/scripts/libgettextsrc-0-17.dll +0 -0
  5. package/LICENSE +1 -1
  6. package/dist/Runtime/AsyncTasksManager.js +5 -0
  7. package/dist/Runtime/AsyncTasksManager.js.map +7 -0
  8. package/dist/Runtime/Cordova/config.xml +44 -0
  9. package/dist/Runtime/Cordova/package.json +22 -0
  10. package/dist/Runtime/Cordova/www/index.html +45 -0
  11. package/dist/Runtime/CustomRuntimeObject.js +2 -0
  12. package/dist/Runtime/CustomRuntimeObject.js.map +7 -0
  13. package/dist/Runtime/CustomRuntimeObjectInstanceContainer.js +2 -0
  14. package/dist/Runtime/CustomRuntimeObjectInstanceContainer.js.map +7 -0
  15. package/dist/Runtime/Electron/main.js +65 -0
  16. package/dist/Runtime/Electron/package.json +26 -0
  17. package/dist/Runtime/Extensions/3D/A_RuntimeObject3D.js +2 -0
  18. package/dist/Runtime/Extensions/3D/A_RuntimeObject3D.js.map +7 -0
  19. package/dist/Runtime/Extensions/3D/A_RuntimeObject3DRenderer.js +2 -0
  20. package/dist/Runtime/Extensions/3D/A_RuntimeObject3DRenderer.js.map +7 -0
  21. package/dist/Runtime/Extensions/3D/AmbientLight.js +2 -0
  22. package/dist/Runtime/Extensions/3D/AmbientLight.js.map +7 -0
  23. package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js +2 -0
  24. package/dist/Runtime/Extensions/3D/Cube3DRuntimeObject.js.map +7 -0
  25. package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js +2 -0
  26. package/dist/Runtime/Extensions/3D/Cube3DRuntimeObjectPixiRenderer.js.map +7 -0
  27. package/dist/Runtime/Extensions/3D/DirectionalLight.js +2 -0
  28. package/dist/Runtime/Extensions/3D/DirectionalLight.js.map +7 -0
  29. package/dist/Runtime/Extensions/3D/ExponentialFog.js +2 -0
  30. package/dist/Runtime/Extensions/3D/ExponentialFog.js.map +7 -0
  31. package/dist/Runtime/Extensions/3D/HemisphereLight.js +2 -0
  32. package/dist/Runtime/Extensions/3D/HemisphereLight.js.map +7 -0
  33. package/dist/Runtime/Extensions/3D/JsExtension.js +2809 -0
  34. package/dist/Runtime/Extensions/3D/LinearFog.js +2 -0
  35. package/dist/Runtime/Extensions/3D/LinearFog.js.map +7 -0
  36. package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js +2 -0
  37. package/dist/Runtime/Extensions/3D/Model3DRuntimeObject.js.map +7 -0
  38. package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js +2 -0
  39. package/dist/Runtime/Extensions/3D/Model3DRuntimeObject3DRenderer.js.map +7 -0
  40. package/dist/Runtime/Extensions/3D/Scene3DTools.js +2 -0
  41. package/dist/Runtime/Extensions/3D/Scene3DTools.js.map +7 -0
  42. package/dist/Runtime/Extensions/AdMob/JsExtension.js +798 -0
  43. package/dist/Runtime/Extensions/AdMob/admobtools.js +2 -0
  44. package/dist/Runtime/Extensions/AdMob/admobtools.js.map +7 -0
  45. package/dist/Runtime/Extensions/AdvancedWindow/JsExtension.js +719 -0
  46. package/dist/Runtime/Extensions/AdvancedWindow/electron-advancedwindowtools.js +2 -0
  47. package/dist/Runtime/Extensions/AdvancedWindow/electron-advancedwindowtools.js.map +7 -0
  48. package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js +2 -0
  49. package/dist/Runtime/Extensions/AnchorBehavior/anchorruntimebehavior.js.map +7 -0
  50. package/dist/Runtime/Extensions/BBText/JsExtension.js +639 -0
  51. package/dist/Runtime/Extensions/BBText/bbtextruntimeobject-pixi-renderer.js +2 -0
  52. package/dist/Runtime/Extensions/BBText/bbtextruntimeobject-pixi-renderer.js.map +7 -0
  53. package/dist/Runtime/Extensions/BBText/bbtextruntimeobject.js +2 -0
  54. package/dist/Runtime/Extensions/BBText/bbtextruntimeobject.js.map +7 -0
  55. package/dist/Runtime/Extensions/BBText/pixi-multistyle-text/dist/pixi-multistyle-text.umd.js +1 -0
  56. package/dist/Runtime/Extensions/BitmapText/JsExtension.js +756 -0
  57. package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject-pixi-renderer.js +2 -0
  58. package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject-pixi-renderer.js.map +7 -0
  59. package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject.js +2 -0
  60. package/dist/Runtime/Extensions/BitmapText/bitmaptextruntimeobject.js.map +7 -0
  61. package/dist/Runtime/Extensions/DebuggerTools/JsExtension.js +123 -0
  62. package/dist/Runtime/Extensions/DebuggerTools/debuggertools.js +2 -0
  63. package/dist/Runtime/Extensions/DebuggerTools/debuggertools.js.map +7 -0
  64. package/dist/Runtime/Extensions/DestroyOutsideBehavior/destroyoutsideruntimebehavior.js +2 -0
  65. package/dist/Runtime/Extensions/DestroyOutsideBehavior/destroyoutsideruntimebehavior.js.map +7 -0
  66. package/dist/Runtime/Extensions/DeviceSensors/JsExtension.js +461 -0
  67. package/dist/Runtime/Extensions/DeviceSensors/devicesensortools.js +2 -0
  68. package/dist/Runtime/Extensions/DeviceSensors/devicesensortools.js.map +7 -0
  69. package/dist/Runtime/Extensions/DeviceVibration/JsExtension.js +108 -0
  70. package/dist/Runtime/Extensions/DeviceVibration/devicevibrationtools.js +2 -0
  71. package/dist/Runtime/Extensions/DeviceVibration/devicevibrationtools.js.map +7 -0
  72. package/dist/Runtime/Extensions/DialogueTree/JsExtension.js +730 -0
  73. package/dist/Runtime/Extensions/DialogueTree/bondage.js/dist/bondage.min.js +11 -0
  74. package/dist/Runtime/Extensions/DialogueTree/dialoguetools.js +3 -0
  75. package/dist/Runtime/Extensions/DialogueTree/dialoguetools.js.map +7 -0
  76. package/dist/Runtime/Extensions/DraggableBehavior/draggableruntimebehavior.js +2 -0
  77. package/dist/Runtime/Extensions/DraggableBehavior/draggableruntimebehavior.js.map +7 -0
  78. package/dist/Runtime/Extensions/Effects/JsExtension.js +1197 -0
  79. package/dist/Runtime/Extensions/Effects/adjustment-pixi-filter.js +2 -0
  80. package/dist/Runtime/Extensions/Effects/adjustment-pixi-filter.js.map +7 -0
  81. package/dist/Runtime/Extensions/Effects/advanced-bloom-pixi-filter.js +2 -0
  82. package/dist/Runtime/Extensions/Effects/advanced-bloom-pixi-filter.js.map +7 -0
  83. package/dist/Runtime/Extensions/Effects/ascii-pixi-filter.js +2 -0
  84. package/dist/Runtime/Extensions/Effects/ascii-pixi-filter.js.map +7 -0
  85. package/dist/Runtime/Extensions/Effects/bevel-pixi-filter.js +2 -0
  86. package/dist/Runtime/Extensions/Effects/bevel-pixi-filter.js.map +7 -0
  87. package/dist/Runtime/Extensions/Effects/black-and-white-pixi-filter.js +2 -0
  88. package/dist/Runtime/Extensions/Effects/black-and-white-pixi-filter.js.map +7 -0
  89. package/dist/Runtime/Extensions/Effects/blending-mode-pixi-filter.js +2 -0
  90. package/dist/Runtime/Extensions/Effects/blending-mode-pixi-filter.js.map +7 -0
  91. package/dist/Runtime/Extensions/Effects/blur-pixi-filter.js +2 -0
  92. package/dist/Runtime/Extensions/Effects/blur-pixi-filter.js.map +7 -0
  93. package/dist/Runtime/Extensions/Effects/brightness-pixi-filter.js +2 -0
  94. package/dist/Runtime/Extensions/Effects/brightness-pixi-filter.js.map +7 -0
  95. package/dist/Runtime/Extensions/Effects/bulge-pinch-pixi-filter.js +2 -0
  96. package/dist/Runtime/Extensions/Effects/bulge-pinch-pixi-filter.js.map +7 -0
  97. package/dist/Runtime/Extensions/Effects/color-map-pixi-filter.js +2 -0
  98. package/dist/Runtime/Extensions/Effects/color-map-pixi-filter.js.map +7 -0
  99. package/dist/Runtime/Extensions/Effects/color-replace-pixi-filter.js +2 -0
  100. package/dist/Runtime/Extensions/Effects/color-replace-pixi-filter.js.map +7 -0
  101. package/dist/Runtime/Extensions/Effects/crt-pixi-filter.js +2 -0
  102. package/dist/Runtime/Extensions/Effects/crt-pixi-filter.js.map +7 -0
  103. package/dist/Runtime/Extensions/Effects/displacement-pixi-filter.js +2 -0
  104. package/dist/Runtime/Extensions/Effects/displacement-pixi-filter.js.map +7 -0
  105. package/dist/Runtime/Extensions/Effects/dot-pixi-filter.js +2 -0
  106. package/dist/Runtime/Extensions/Effects/dot-pixi-filter.js.map +7 -0
  107. package/dist/Runtime/Extensions/Effects/drop-shadow-pixi-filter.js +2 -0
  108. package/dist/Runtime/Extensions/Effects/drop-shadow-pixi-filter.js.map +7 -0
  109. package/dist/Runtime/Extensions/Effects/glitch-pixi-filter.js +2 -0
  110. package/dist/Runtime/Extensions/Effects/glitch-pixi-filter.js.map +7 -0
  111. package/dist/Runtime/Extensions/Effects/glow-pixi-filter.js +2 -0
  112. package/dist/Runtime/Extensions/Effects/glow-pixi-filter.js.map +7 -0
  113. package/dist/Runtime/Extensions/Effects/godray-pixi-filter.js +2 -0
  114. package/dist/Runtime/Extensions/Effects/godray-pixi-filter.js.map +7 -0
  115. package/dist/Runtime/Extensions/Effects/kawase-blur-pixi-filter.js +2 -0
  116. package/dist/Runtime/Extensions/Effects/kawase-blur-pixi-filter.js.map +7 -0
  117. package/dist/Runtime/Extensions/Effects/light-night-pixi-filter.js +3 -0
  118. package/dist/Runtime/Extensions/Effects/light-night-pixi-filter.js.map +7 -0
  119. package/dist/Runtime/Extensions/Effects/night-pixi-filter.js +3 -0
  120. package/dist/Runtime/Extensions/Effects/night-pixi-filter.js.map +7 -0
  121. package/dist/Runtime/Extensions/Effects/noise-pixi-filter.js +2 -0
  122. package/dist/Runtime/Extensions/Effects/noise-pixi-filter.js.map +7 -0
  123. package/dist/Runtime/Extensions/Effects/old-film-pixi-filter.js +2 -0
  124. package/dist/Runtime/Extensions/Effects/old-film-pixi-filter.js.map +7 -0
  125. package/dist/Runtime/Extensions/Effects/outline-pixi-filter.js +2 -0
  126. package/dist/Runtime/Extensions/Effects/outline-pixi-filter.js.map +7 -0
  127. package/dist/Runtime/Extensions/Effects/pixelate-pixi-filter.js +2 -0
  128. package/dist/Runtime/Extensions/Effects/pixelate-pixi-filter.js.map +7 -0
  129. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-adjustment.js +8 -0
  130. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-advanced-bloom.js +8 -0
  131. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-ascii.js +8 -0
  132. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-bevel.js +8 -0
  133. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-bulge-pinch.js +8 -0
  134. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-color-map.js +8 -0
  135. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-color-replace.js +8 -0
  136. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-crt.js +8 -0
  137. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-dot.js +8 -0
  138. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-drop-shadow.js +8 -0
  139. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-glitch.js +8 -0
  140. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-glow.js +8 -0
  141. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-godray.js +8 -0
  142. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-kawase-blur.js +8 -0
  143. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-old-film.js +8 -0
  144. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-outline.js +8 -0
  145. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-pixelate.js +8 -0
  146. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-radial-blur.js +8 -0
  147. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-reflection.js +8 -0
  148. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-rgb-split.js +8 -0
  149. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-tilt-shift.js +171 -0
  150. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-twist.js +8 -0
  151. package/dist/Runtime/Extensions/Effects/pixi-filters/filter-zoom-blur.js +8 -0
  152. package/dist/Runtime/Extensions/Effects/pixi-filters/types/adjustment/types.d.ts +29 -0
  153. package/dist/Runtime/Extensions/Effects/pixi-filters/types/advanced-bloom/types.d.ts +30 -0
  154. package/dist/Runtime/Extensions/Effects/pixi-filters/types/ascii/types.d.ts +11 -0
  155. package/dist/Runtime/Extensions/Effects/pixi-filters/types/bevel/types.d.ts +25 -0
  156. package/dist/Runtime/Extensions/Effects/pixi-filters/types/bloom/types.d.ts +18 -0
  157. package/dist/Runtime/Extensions/Effects/pixi-filters/types/bulge-pinch/types.d.ts +24 -0
  158. package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-map/types.d.ts +22 -0
  159. package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-overlay/types.d.ts +11 -0
  160. package/dist/Runtime/Extensions/Effects/pixi-filters/types/color-replace/types.d.ts +17 -0
  161. package/dist/Runtime/Extensions/Effects/pixi-filters/types/convolution/types.d.ts +13 -0
  162. package/dist/Runtime/Extensions/Effects/pixi-filters/types/cross-hatch/types.d.ts +10 -0
  163. package/dist/Runtime/Extensions/Effects/pixi-filters/types/crt/types.d.ts +35 -0
  164. package/dist/Runtime/Extensions/Effects/pixi-filters/types/dot/types.d.ts +12 -0
  165. package/dist/Runtime/Extensions/Effects/pixi-filters/types/drop-shadow/types.d.ts +33 -0
  166. package/dist/Runtime/Extensions/Effects/pixi-filters/types/emboss/types.d.ts +11 -0
  167. package/dist/Runtime/Extensions/Effects/pixi-filters/types/glitch/types.d.ts +38 -0
  168. package/dist/Runtime/Extensions/Effects/pixi-filters/types/glow/types.d.ts +23 -0
  169. package/dist/Runtime/Extensions/Effects/pixi-filters/types/godray/types.d.ts +27 -0
  170. package/dist/Runtime/Extensions/Effects/pixi-filters/types/kawase-blur/types.d.ts +15 -0
  171. package/dist/Runtime/Extensions/Effects/pixi-filters/types/motion-blur/types.d.ts +17 -0
  172. package/dist/Runtime/Extensions/Effects/pixi-filters/types/multi-color-replace/types.d.ts +18 -0
  173. package/dist/Runtime/Extensions/Effects/pixi-filters/types/old-film/types.d.ts +33 -0
  174. package/dist/Runtime/Extensions/Effects/pixi-filters/types/outline/types.d.ts +13 -0
  175. package/dist/Runtime/Extensions/Effects/pixi-filters/types/pixelate/types.d.ts +11 -0
  176. package/dist/Runtime/Extensions/Effects/pixi-filters/types/radial-blur/types.d.ts +19 -0
  177. package/dist/Runtime/Extensions/Effects/pixi-filters/types/reflection/types.d.ts +25 -0
  178. package/dist/Runtime/Extensions/Effects/pixi-filters/types/rgb-split/types.d.ts +13 -0
  179. package/dist/Runtime/Extensions/Effects/pixi-filters/types/shockwave/types.d.ts +25 -0
  180. package/dist/Runtime/Extensions/Effects/pixi-filters/types/simple-lightmap/types.d.ts +13 -0
  181. package/dist/Runtime/Extensions/Effects/pixi-filters/types/tilt-shift/types.d.ts +19 -0
  182. package/dist/Runtime/Extensions/Effects/pixi-filters/types/twist/types.d.ts +13 -0
  183. package/dist/Runtime/Extensions/Effects/pixi-filters/types/zoom-blur/types.d.ts +28 -0
  184. package/dist/Runtime/Extensions/Effects/radial-blur-pixi-filter.js +2 -0
  185. package/dist/Runtime/Extensions/Effects/radial-blur-pixi-filter.js.map +7 -0
  186. package/dist/Runtime/Extensions/Effects/reflection-pixi-filter.js +2 -0
  187. package/dist/Runtime/Extensions/Effects/reflection-pixi-filter.js.map +7 -0
  188. package/dist/Runtime/Extensions/Effects/rgb-split-pixi-filter.js +2 -0
  189. package/dist/Runtime/Extensions/Effects/rgb-split-pixi-filter.js.map +7 -0
  190. package/dist/Runtime/Extensions/Effects/sepia-pixi-filter.js +2 -0
  191. package/dist/Runtime/Extensions/Effects/sepia-pixi-filter.js.map +7 -0
  192. package/dist/Runtime/Extensions/Effects/tilt-shift-pixi-filter.js +2 -0
  193. package/dist/Runtime/Extensions/Effects/tilt-shift-pixi-filter.js.map +7 -0
  194. package/dist/Runtime/Extensions/Effects/twist-pixi-filter.js +2 -0
  195. package/dist/Runtime/Extensions/Effects/twist-pixi-filter.js.map +7 -0
  196. package/dist/Runtime/Extensions/Effects/zoom-blur-pixi-filter.js +2 -0
  197. package/dist/Runtime/Extensions/Effects/zoom-blur-pixi-filter.js.map +7 -0
  198. package/dist/Runtime/Extensions/ExampleJsExtension/JsExtension.js +589 -0
  199. package/dist/Runtime/Extensions/ExampleJsExtension/dummyeffect.js +3 -0
  200. package/dist/Runtime/Extensions/ExampleJsExtension/dummyeffect.js.map +7 -0
  201. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimebehavior.js +2 -0
  202. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimebehavior.js.map +7 -0
  203. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject-pixi-renderer.js +2 -0
  204. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject-pixi-renderer.js.map +7 -0
  205. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject.js +2 -0
  206. package/dist/Runtime/Extensions/ExampleJsExtension/dummyruntimeobject.js.map +7 -0
  207. package/dist/Runtime/Extensions/ExampleJsExtension/dummywithshareddataruntimebehavior.js +2 -0
  208. package/dist/Runtime/Extensions/ExampleJsExtension/dummywithshareddataruntimebehavior.js.map +7 -0
  209. package/dist/Runtime/Extensions/ExampleJsExtension/examplejsextensiontools.js +2 -0
  210. package/dist/Runtime/Extensions/ExampleJsExtension/examplejsextensiontools.js.map +7 -0
  211. package/dist/Runtime/Extensions/FacebookInstantGames/FBInstant.d.ts +2 -0
  212. package/dist/Runtime/Extensions/FacebookInstantGames/JsExtension.js +379 -0
  213. package/dist/Runtime/Extensions/FacebookInstantGames/facebookinstantgamestools.js +2 -0
  214. package/dist/Runtime/Extensions/FacebookInstantGames/facebookinstantgamestools.js.map +7 -0
  215. package/dist/Runtime/Extensions/FileSystem/JsExtension.js +559 -0
  216. package/dist/Runtime/Extensions/FileSystem/filesystemtools.js +2 -0
  217. package/dist/Runtime/Extensions/FileSystem/filesystemtools.js.map +7 -0
  218. package/dist/Runtime/Extensions/Firebase/A_firebasejs/A_firebase-base.js +2 -0
  219. package/dist/Runtime/Extensions/Firebase/A_firebasejs/A_firebase-base.js.map +1 -0
  220. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-analytics.js +2 -0
  221. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-analytics.js.map +1 -0
  222. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-auth.js +2 -0
  223. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-auth.js.map +1 -0
  224. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-database.js +2 -0
  225. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-database.js.map +1 -0
  226. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-firestore.js +2 -0
  227. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-firestore.js.map +1 -0
  228. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-functions.js +2 -0
  229. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-functions.js.map +1 -0
  230. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-messaging.js +2 -0
  231. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-messaging.js.map +1 -0
  232. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-performance.js +2 -0
  233. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-performance.js.map +1 -0
  234. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-remote-config.js +2 -0
  235. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-remote-config.js.map +1 -0
  236. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-storage.js +2 -0
  237. package/dist/Runtime/Extensions/Firebase/A_firebasejs/B_firebase-storage.js.map +1 -0
  238. package/dist/Runtime/Extensions/Firebase/A_firebasejs/firebase.d.ts +10191 -0
  239. package/dist/Runtime/Extensions/Firebase/B_firebasetools/C_firebasetools.js +2 -0
  240. package/dist/Runtime/Extensions/Firebase/B_firebasetools/C_firebasetools.js.map +7 -0
  241. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_analyticstools.js +2 -0
  242. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_analyticstools.js.map +7 -0
  243. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_authtools.js +2 -0
  244. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_authtools.js.map +7 -0
  245. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_cloudfirestoretools.js +2 -0
  246. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_cloudfirestoretools.js.map +7 -0
  247. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_databasetools.js +2 -0
  248. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_databasetools.js.map +7 -0
  249. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_functionstools.js +2 -0
  250. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_functionstools.js.map +7 -0
  251. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_performancetools.js +2 -0
  252. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_performancetools.js.map +7 -0
  253. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_remoteconfigtools.js +2 -0
  254. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_remoteconfigtools.js.map +7 -0
  255. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_storagetools.js +2 -0
  256. package/dist/Runtime/Extensions/Firebase/B_firebasetools/D_storagetools.js.map +7 -0
  257. package/dist/Runtime/Extensions/Firebase/JsExtension.js +2323 -0
  258. package/dist/Runtime/Extensions/Inventory/inventory.js +2 -0
  259. package/dist/Runtime/Extensions/Inventory/inventory.js.map +7 -0
  260. package/dist/Runtime/Extensions/Inventory/inventorytools.js +2 -0
  261. package/dist/Runtime/Extensions/Inventory/inventorytools.js.map +7 -0
  262. package/dist/Runtime/Extensions/JsExtensionTypes.flow.js +34 -0
  263. package/dist/Runtime/Extensions/Leaderboards/JsExtension.js +299 -0
  264. package/dist/Runtime/Extensions/Leaderboards/leaderboardstools.js +2 -0
  265. package/dist/Runtime/Extensions/Leaderboards/leaderboardstools.js.map +7 -0
  266. package/dist/Runtime/Extensions/Leaderboards/sha256.d.ts +234 -0
  267. package/dist/Runtime/Extensions/Leaderboards/sha256.js +21 -0
  268. package/dist/Runtime/Extensions/Lighting/JsExtension.js +371 -0
  269. package/dist/Runtime/Extensions/Lighting/lightobstacleruntimebehavior.js +2 -0
  270. package/dist/Runtime/Extensions/Lighting/lightobstacleruntimebehavior.js.map +7 -0
  271. package/dist/Runtime/Extensions/Lighting/lightruntimeobject-pixi-renderer.js +40 -0
  272. package/dist/Runtime/Extensions/Lighting/lightruntimeobject-pixi-renderer.js.map +7 -0
  273. package/dist/Runtime/Extensions/Lighting/lightruntimeobject.js +2 -0
  274. package/dist/Runtime/Extensions/Lighting/lightruntimeobject.js.map +7 -0
  275. package/dist/Runtime/Extensions/LinkedObjects/linkedobjects.js +2 -0
  276. package/dist/Runtime/Extensions/LinkedObjects/linkedobjects.js.map +7 -0
  277. package/dist/Runtime/Extensions/P2P/A_peer.js +4 -0
  278. package/dist/Runtime/Extensions/P2P/A_peer.js.map +1 -0
  279. package/dist/Runtime/Extensions/P2P/B_p2ptools.js +2 -0
  280. package/dist/Runtime/Extensions/P2P/B_p2ptools.js.map +7 -0
  281. package/dist/Runtime/Extensions/P2P/JsExtension.js +483 -0
  282. package/dist/Runtime/Extensions/P2P/peerjs.d.ts +509 -0
  283. package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject-pixi-renderer.js +2 -0
  284. package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject-pixi-renderer.js.map +7 -0
  285. package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject.js +2 -0
  286. package/dist/Runtime/Extensions/PanelSpriteObject/panelspriteruntimeobject.js.map +7 -0
  287. package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject-pixi-renderer.js +2 -0
  288. package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject-pixi-renderer.js.map +7 -0
  289. package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject.js +2 -0
  290. package/dist/Runtime/Extensions/ParticleSystem/particleemitterobject.js.map +7 -0
  291. package/dist/Runtime/Extensions/ParticleSystem/pixi-particles-pixi-renderer.min.js +3 -0
  292. package/dist/Runtime/Extensions/PathfindingBehavior/PathTools.js +2 -0
  293. package/dist/Runtime/Extensions/PathfindingBehavior/PathTools.js.map +7 -0
  294. package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingobstacleruntimebehavior.js +2 -0
  295. package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingobstacleruntimebehavior.js.map +7 -0
  296. package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingruntimebehavior.js +2 -0
  297. package/dist/Runtime/Extensions/PathfindingBehavior/pathfindingruntimebehavior.js.map +7 -0
  298. package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.js +2 -0
  299. package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.js.map +7 -0
  300. package/dist/Runtime/Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.wasm +0 -0
  301. package/dist/Runtime/Extensions/Physics2Behavior/JsExtension.js +4072 -0
  302. package/dist/Runtime/Extensions/Physics2Behavior/box2d.d.ts +1804 -0
  303. package/dist/Runtime/Extensions/Physics2Behavior/physics2runtimebehavior.js +2 -0
  304. package/dist/Runtime/Extensions/Physics2Behavior/physics2runtimebehavior.js.map +7 -0
  305. package/dist/Runtime/Extensions/Physics2Behavior/physics2tools.js +2 -0
  306. package/dist/Runtime/Extensions/Physics2Behavior/physics2tools.js.map +7 -0
  307. package/dist/Runtime/Extensions/PhysicsBehavior/box2djs/box2d.js +804 -0
  308. package/dist/Runtime/Extensions/PhysicsBehavior/physicsruntimebehavior.js +2 -0
  309. package/dist/Runtime/Extensions/PhysicsBehavior/physicsruntimebehavior.js.map +7 -0
  310. package/dist/Runtime/Extensions/PlatformBehavior/benchmarks/platformerobjectruntimebehavior.benchmark.js +2 -0
  311. package/dist/Runtime/Extensions/PlatformBehavior/benchmarks/platformerobjectruntimebehavior.benchmark.js.map +7 -0
  312. package/dist/Runtime/Extensions/PlatformBehavior/platformerobjectruntimebehavior.js +2 -0
  313. package/dist/Runtime/Extensions/PlatformBehavior/platformerobjectruntimebehavior.js.map +7 -0
  314. package/dist/Runtime/Extensions/PlatformBehavior/platformruntimebehavior.js +2 -0
  315. package/dist/Runtime/Extensions/PlatformBehavior/platformruntimebehavior.js.map +7 -0
  316. package/dist/Runtime/Extensions/PlatformBehavior/platformtools.js +2 -0
  317. package/dist/Runtime/Extensions/PlatformBehavior/platformtools.js.map +7 -0
  318. package/dist/Runtime/Extensions/PlayerAuthentication/JsExtension.js +218 -0
  319. package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationcomponents.js +5 -0
  320. package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationcomponents.js.map +7 -0
  321. package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js +2 -0
  322. package/dist/Runtime/Extensions/PlayerAuthentication/playerauthenticationtools.js.map +7 -0
  323. package/dist/Runtime/Extensions/PrimitiveDrawing/pixi-graphics-extras/graphics-extras.min.js +10 -0
  324. package/dist/Runtime/Extensions/PrimitiveDrawing/pixi-graphics-extras/graphics-extras.min.js.map +1 -0
  325. package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject-pixi-renderer.js +2 -0
  326. package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject-pixi-renderer.js.map +7 -0
  327. package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject.js +2 -0
  328. package/dist/Runtime/Extensions/PrimitiveDrawing/shapepainterruntimeobject.js.map +7 -0
  329. package/dist/Runtime/Extensions/Screenshot/JsExtension.js +68 -0
  330. package/dist/Runtime/Extensions/Screenshot/screenshottools.js +2 -0
  331. package/dist/Runtime/Extensions/Screenshot/screenshottools.js.map +7 -0
  332. package/dist/Runtime/Extensions/Shopify/shopify-buy.umd.polyfilled.min.js +2 -0
  333. package/dist/Runtime/Extensions/Shopify/shopifytools.js +2 -0
  334. package/dist/Runtime/Extensions/Shopify/shopifytools.js.map +7 -0
  335. package/dist/Runtime/Extensions/SpatialSound/JsExtension.js +92 -0
  336. package/dist/Runtime/Extensions/SpatialSound/howler.spatial.min.js +2 -0
  337. package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js +2 -0
  338. package/dist/Runtime/Extensions/SpatialSound/spatialsoundtools.js.map +7 -0
  339. package/dist/Runtime/Extensions/SystemInfo/systeminfotools.js +2 -0
  340. package/dist/Runtime/Extensions/SystemInfo/systeminfotools.js.map +7 -0
  341. package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject-pixi-renderer.js +2 -0
  342. package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject-pixi-renderer.js.map +7 -0
  343. package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject.js +2 -0
  344. package/dist/Runtime/Extensions/TextEntryObject/textentryruntimeobject.js.map +7 -0
  345. package/dist/Runtime/Extensions/TextInput/JsExtension.js +790 -0
  346. package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js +2 -0
  347. package/dist/Runtime/Extensions/TextInput/textinputruntimeobject-pixi-renderer.js.map +7 -0
  348. package/dist/Runtime/Extensions/TextInput/textinputruntimeobject.js +2 -0
  349. package/dist/Runtime/Extensions/TextInput/textinputruntimeobject.js.map +7 -0
  350. package/dist/Runtime/Extensions/TextObject/textruntimeobject-pixi-renderer.js +2 -0
  351. package/dist/Runtime/Extensions/TextObject/textruntimeobject-pixi-renderer.js.map +7 -0
  352. package/dist/Runtime/Extensions/TextObject/textruntimeobject.js +2 -0
  353. package/dist/Runtime/Extensions/TextObject/textruntimeobject.js.map +7 -0
  354. package/dist/Runtime/Extensions/TileMap/JsExtension.js +1653 -0
  355. package/dist/Runtime/Extensions/TileMap/TileMapRuntimeManager.js +2 -0
  356. package/dist/Runtime/Extensions/TileMap/TileMapRuntimeManager.js.map +7 -0
  357. package/dist/Runtime/Extensions/TileMap/collision/TileMapCollisionMaskRenderer.js +2 -0
  358. package/dist/Runtime/Extensions/TileMap/collision/TileMapCollisionMaskRenderer.js.map +7 -0
  359. package/dist/Runtime/Extensions/TileMap/collision/TransformedTileMap.js +2 -0
  360. package/dist/Runtime/Extensions/TileMap/collision/TransformedTileMap.js.map +7 -0
  361. package/dist/Runtime/Extensions/TileMap/example/anotherIsland.json +5769 -0
  362. package/dist/Runtime/Extensions/TileMap/example/island.json +5823 -0
  363. package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.d.ts +25 -0
  364. package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.js +2 -0
  365. package/dist/Runtime/Extensions/TileMap/helper/TileMapHelper.js.map +7 -0
  366. package/dist/Runtime/Extensions/TileMap/helper/dts/index.d.ts +16 -0
  367. package/dist/Runtime/Extensions/TileMap/helper/dts/index.d.ts.map +1 -0
  368. package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapFileContent.d.ts +12 -0
  369. package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapFileContent.d.ts.map +1 -0
  370. package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapLoader.d.ts +18 -0
  371. package/dist/Runtime/Extensions/TileMap/helper/dts/load/TileMapLoader.d.ts.map +1 -0
  372. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkFormat.d.ts +589 -0
  373. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkFormat.d.ts.map +1 -0
  374. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoader.d.ts +16 -0
  375. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoader.d.ts.map +1 -0
  376. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoaderHelper.d.ts +5 -0
  377. package/dist/Runtime/Extensions/TileMap/helper/dts/load/ldtk/LDtkTileMapLoaderHelper.d.ts.map +1 -0
  378. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledFormat.d.ts +343 -0
  379. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledFormat.d.ts.map +1 -0
  380. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.d.ts +16 -0
  381. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.d.ts.map +1 -0
  382. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.spec.d.ts +2 -0
  383. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoader.spec.d.ts.map +1 -0
  384. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoaderHelper.d.ts +37 -0
  385. package/dist/Runtime/Extensions/TileMap/helper/dts/load/tiled/TiledTileMapLoaderHelper.d.ts.map +1 -0
  386. package/dist/Runtime/Extensions/TileMap/helper/dts/model/CommonTypes.d.ts +5 -0
  387. package/dist/Runtime/Extensions/TileMap/helper/dts/model/CommonTypes.d.ts.map +1 -0
  388. package/dist/Runtime/Extensions/TileMap/helper/dts/model/GID.d.ts +45 -0
  389. package/dist/Runtime/Extensions/TileMap/helper/dts/model/GID.d.ts.map +1 -0
  390. package/dist/Runtime/Extensions/TileMap/helper/dts/model/TileMapModel.d.ts +361 -0
  391. package/dist/Runtime/Extensions/TileMap/helper/dts/model/TileMapModel.d.ts.map +1 -0
  392. package/dist/Runtime/Extensions/TileMap/helper/dts/render/ResourceCache.d.ts +27 -0
  393. package/dist/Runtime/Extensions/TileMap/helper/dts/render/ResourceCache.d.ts.map +1 -0
  394. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapManager.d.ts +70 -0
  395. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapManager.d.ts.map +1 -0
  396. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapPixiHelper.d.ts +56 -0
  397. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileMapPixiHelper.d.ts.map +1 -0
  398. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileTextureCache.d.ts +24 -0
  399. package/dist/Runtime/Extensions/TileMap/helper/dts/render/TileTextureCache.d.ts.map +1 -0
  400. package/dist/Runtime/Extensions/TileMap/helper/dts/render/ldtk/LDtkPixiHelper.d.ts +26 -0
  401. package/dist/Runtime/Extensions/TileMap/helper/dts/render/ldtk/LDtkPixiHelper.d.ts.map +1 -0
  402. package/dist/Runtime/Extensions/TileMap/helper/dts/render/tiled/TiledPixiHelper.d.ts +21 -0
  403. package/dist/Runtime/Extensions/TileMap/helper/dts/render/tiled/TiledPixiHelper.d.ts.map +1 -0
  404. package/dist/Runtime/Extensions/TileMap/helper/dts/types/index.d.ts +12 -0
  405. package/dist/Runtime/Extensions/TileMap/helper/dts/types/index.d.ts.map +1 -0
  406. package/dist/Runtime/Extensions/TileMap/pako/dist/pako.d.ts +166 -0
  407. package/dist/Runtime/Extensions/TileMap/pako/dist/pako.min.js +2 -0
  408. package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/global-pixi-tilemap.d.ts +23 -0
  409. package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.d.ts +270 -0
  410. package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.umd.js +74 -0
  411. package/dist/Runtime/Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.umd.js.map +7 -0
  412. package/dist/Runtime/Extensions/TileMap/tilemapcollisionmaskruntimeobject.js +2 -0
  413. package/dist/Runtime/Extensions/TileMap/tilemapcollisionmaskruntimeobject.js.map +7 -0
  414. package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js +2 -0
  415. package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js.map +7 -0
  416. package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject.js +2 -0
  417. package/dist/Runtime/Extensions/TileMap/tilemapruntimeobject.js.map +7 -0
  418. package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject-pixi-renderer.js +2 -0
  419. package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject-pixi-renderer.js.map +7 -0
  420. package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject.js +2 -0
  421. package/dist/Runtime/Extensions/TiledSpriteObject/tiledspriteruntimeobject.js.map +7 -0
  422. package/dist/Runtime/Extensions/TopDownMovementBehavior/topdownmovementruntimebehavior.js +2 -0
  423. package/dist/Runtime/Extensions/TopDownMovementBehavior/topdownmovementruntimebehavior.js.map +7 -0
  424. package/dist/Runtime/Extensions/TweenBehavior/JsExtension.js +1087 -0
  425. package/dist/Runtime/Extensions/TweenBehavior/shifty.d.ts +839 -0
  426. package/dist/Runtime/Extensions/TweenBehavior/shifty.js +5 -0
  427. package/dist/Runtime/Extensions/TweenBehavior/shifty.js.map +1 -0
  428. package/dist/Runtime/Extensions/TweenBehavior/shifty_setup.js +2 -0
  429. package/dist/Runtime/Extensions/TweenBehavior/shifty_setup.js.map +7 -0
  430. package/dist/Runtime/Extensions/TweenBehavior/tweenruntimebehavior.js +2 -0
  431. package/dist/Runtime/Extensions/TweenBehavior/tweenruntimebehavior.js.map +7 -0
  432. package/dist/Runtime/Extensions/TweenBehavior/tweentools.js +2 -0
  433. package/dist/Runtime/Extensions/TweenBehavior/tweentools.js.map +7 -0
  434. package/dist/Runtime/Extensions/Video/JsExtension.js +694 -0
  435. package/dist/Runtime/Extensions/Video/videoruntimeobject-pixi-renderer.js +2 -0
  436. package/dist/Runtime/Extensions/Video/videoruntimeobject-pixi-renderer.js.map +7 -0
  437. package/dist/Runtime/Extensions/Video/videoruntimeobject.js +2 -0
  438. package/dist/Runtime/Extensions/Video/videoruntimeobject.js.map +7 -0
  439. package/dist/Runtime/FacebookInstantGames/fbapp-config.json +17 -0
  440. package/dist/Runtime/FacebookInstantGames/index.html +68 -0
  441. package/dist/Runtime/Model3DManager.js +2 -0
  442. package/dist/Runtime/Model3DManager.js.map +7 -0
  443. package/dist/Runtime/RuntimeCustomObjectLayer.js +2 -0
  444. package/dist/Runtime/RuntimeCustomObjectLayer.js.map +7 -0
  445. package/dist/Runtime/RuntimeInstanceContainer.js +2 -0
  446. package/dist/Runtime/RuntimeInstanceContainer.js.map +7 -0
  447. package/dist/Runtime/RuntimeLayer.js +2 -0
  448. package/dist/Runtime/RuntimeLayer.js.map +7 -0
  449. package/dist/Runtime/affinetransformation.js +2 -0
  450. package/dist/Runtime/affinetransformation.js.map +7 -0
  451. package/dist/Runtime/debugger-client/abstract-debugger-client.js +2 -0
  452. package/dist/Runtime/debugger-client/abstract-debugger-client.js.map +7 -0
  453. package/dist/Runtime/debugger-client/hot-reloader.js +2 -0
  454. package/dist/Runtime/debugger-client/hot-reloader.js.map +7 -0
  455. package/dist/Runtime/debugger-client/websocket-debugger-client.js +2 -0
  456. package/dist/Runtime/debugger-client/websocket-debugger-client.js.map +7 -0
  457. package/dist/Runtime/debugger-client/window-message-debugger-client.js +2 -0
  458. package/dist/Runtime/debugger-client/window-message-debugger-client.js.map +7 -0
  459. package/dist/Runtime/events-tools/cameratools.js +2 -0
  460. package/dist/Runtime/events-tools/cameratools.js.map +7 -0
  461. package/dist/Runtime/events-tools/commontools.js +2 -0
  462. package/dist/Runtime/events-tools/commontools.js.map +7 -0
  463. package/dist/Runtime/events-tools/inputtools.js +2 -0
  464. package/dist/Runtime/events-tools/inputtools.js.map +7 -0
  465. package/dist/Runtime/events-tools/networktools.js +2 -0
  466. package/dist/Runtime/events-tools/networktools.js.map +7 -0
  467. package/dist/Runtime/events-tools/objecttools.js +2 -0
  468. package/dist/Runtime/events-tools/objecttools.js.map +7 -0
  469. package/dist/Runtime/events-tools/runtimescenetools.js +2 -0
  470. package/dist/Runtime/events-tools/runtimescenetools.js.map +7 -0
  471. package/dist/Runtime/events-tools/soundtools.js +2 -0
  472. package/dist/Runtime/events-tools/soundtools.js.map +7 -0
  473. package/dist/Runtime/events-tools/storagetools.js +2 -0
  474. package/dist/Runtime/events-tools/storagetools.js.map +7 -0
  475. package/dist/Runtime/events-tools/stringtools.js +3 -0
  476. package/dist/Runtime/events-tools/stringtools.js.map +7 -0
  477. package/dist/Runtime/events-tools/variabletools.js +2 -0
  478. package/dist/Runtime/events-tools/variabletools.js.map +7 -0
  479. package/dist/Runtime/events-tools/windowtools.js +2 -0
  480. package/dist/Runtime/events-tools/windowtools.js.map +7 -0
  481. package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver-font-manager.js +2 -0
  482. package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver-font-manager.js.map +7 -0
  483. package/dist/Runtime/fontfaceobserver-font-manager/fontfaceobserver.js +16 -0
  484. package/dist/Runtime/force.js +2 -0
  485. package/dist/Runtime/force.js.map +7 -0
  486. package/dist/Runtime/gd.js +2 -0
  487. package/dist/Runtime/gd.js.map +7 -0
  488. package/dist/Runtime/howler-sound-manager/howler-sound-manager.js +2 -0
  489. package/dist/Runtime/howler-sound-manager/howler-sound-manager.js.map +7 -0
  490. package/dist/Runtime/howler-sound-manager/howler.min.js +3 -0
  491. package/dist/Runtime/index.html +55 -0
  492. package/dist/Runtime/inputmanager.js +2 -0
  493. package/dist/Runtime/inputmanager.js.map +7 -0
  494. package/dist/Runtime/jsonmanager.js +2 -0
  495. package/dist/Runtime/jsonmanager.js.map +7 -0
  496. package/dist/Runtime/layer.js +2 -0
  497. package/dist/Runtime/layer.js.map +7 -0
  498. package/dist/Runtime/libs/CocoonJS/cocoon.min.js +4 -0
  499. package/dist/Runtime/libs/jshashtable.js +2 -0
  500. package/dist/Runtime/libs/jshashtable.js.map +7 -0
  501. package/dist/Runtime/libs/rbush.js +624 -0
  502. package/dist/Runtime/logger.js +2 -0
  503. package/dist/Runtime/logger.js.map +7 -0
  504. package/dist/Runtime/oncetriggers.js +2 -0
  505. package/dist/Runtime/oncetriggers.js.map +7 -0
  506. package/dist/Runtime/pixi-renderers/CustomObjectPixiRenderer.js +2 -0
  507. package/dist/Runtime/pixi-renderers/CustomObjectPixiRenderer.js.map +7 -0
  508. package/dist/Runtime/pixi-renderers/DebuggerPixiRenderer.js +2 -0
  509. package/dist/Runtime/pixi-renderers/DebuggerPixiRenderer.js.map +7 -0
  510. package/dist/Runtime/pixi-renderers/RuntimeInstanceContainerPixiRenderer.js +1 -0
  511. package/dist/Runtime/pixi-renderers/RuntimeInstanceContainerPixiRenderer.js.map +7 -0
  512. package/dist/Runtime/pixi-renderers/ThreeAddons.js +2 -0
  513. package/dist/Runtime/pixi-renderers/draco/gltf/draco_decoder.wasm +0 -0
  514. package/dist/Runtime/pixi-renderers/draco/gltf/draco_wasm_wrapper.js +116 -0
  515. package/dist/Runtime/pixi-renderers/layer-pixi-renderer.js +15 -0
  516. package/dist/Runtime/pixi-renderers/layer-pixi-renderer.js.map +7 -0
  517. package/dist/Runtime/pixi-renderers/loadingscreen-pixi-renderer.js +2 -0
  518. package/dist/Runtime/pixi-renderers/loadingscreen-pixi-renderer.js.map +7 -0
  519. package/dist/Runtime/pixi-renderers/pixi-bitmapfont-manager.js +2 -0
  520. package/dist/Runtime/pixi-renderers/pixi-bitmapfont-manager.js.map +7 -0
  521. package/dist/Runtime/pixi-renderers/pixi-effects-manager.js +2 -0
  522. package/dist/Runtime/pixi-renderers/pixi-effects-manager.js.map +7 -0
  523. package/dist/Runtime/pixi-renderers/pixi-filters-tools.js +2 -0
  524. package/dist/Runtime/pixi-renderers/pixi-filters-tools.js.map +7 -0
  525. package/dist/Runtime/pixi-renderers/pixi-image-manager.js +2 -0
  526. package/dist/Runtime/pixi-renderers/pixi-image-manager.js.map +7 -0
  527. package/dist/Runtime/pixi-renderers/pixi.js +11 -0
  528. package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js +2 -0
  529. package/dist/Runtime/pixi-renderers/runtimegame-pixi-renderer.js.map +7 -0
  530. package/dist/Runtime/pixi-renderers/runtimescene-pixi-renderer.js +3 -0
  531. package/dist/Runtime/pixi-renderers/runtimescene-pixi-renderer.js.map +7 -0
  532. package/dist/Runtime/pixi-renderers/spriteruntimeobject-pixi-renderer.js +2 -0
  533. package/dist/Runtime/pixi-renderers/spriteruntimeobject-pixi-renderer.js.map +7 -0
  534. package/dist/Runtime/pixi-renderers/three.js +7 -0
  535. package/dist/Runtime/polygon.js +2 -0
  536. package/dist/Runtime/polygon.js.map +7 -0
  537. package/dist/Runtime/profiler.js +2 -0
  538. package/dist/Runtime/profiler.js.map +7 -0
  539. package/dist/Runtime/runtimebehavior.js +2 -0
  540. package/dist/Runtime/runtimebehavior.js.map +7 -0
  541. package/dist/Runtime/runtimegame.js +2 -0
  542. package/dist/Runtime/runtimegame.js.map +7 -0
  543. package/dist/Runtime/runtimeobject.js +2 -0
  544. package/dist/Runtime/runtimeobject.js.map +7 -0
  545. package/dist/Runtime/runtimescene.js +2 -0
  546. package/dist/Runtime/runtimescene.js.map +7 -0
  547. package/dist/Runtime/runtimewatermark.js +100 -0
  548. package/dist/Runtime/runtimewatermark.js.map +7 -0
  549. package/dist/Runtime/scenestack.js +2 -0
  550. package/dist/Runtime/scenestack.js.map +7 -0
  551. package/dist/Runtime/splash/gd-logo-dark-colored.js +2 -0
  552. package/dist/Runtime/splash/gd-logo-dark-colored.js.map +7 -0
  553. package/dist/Runtime/splash/gd-logo-dark.js +2 -0
  554. package/dist/Runtime/splash/gd-logo-dark.js.map +7 -0
  555. package/dist/Runtime/splash/gd-logo-light-colored.js +2 -0
  556. package/dist/Runtime/splash/gd-logo-light-colored.js.map +7 -0
  557. package/dist/Runtime/splash/gd-logo-light.js +2 -0
  558. package/dist/Runtime/splash/gd-logo-light.js.map +7 -0
  559. package/dist/Runtime/spriteruntimeobject.js +2 -0
  560. package/dist/Runtime/spriteruntimeobject.js.map +7 -0
  561. package/dist/Runtime/timemanager.js +2 -0
  562. package/dist/Runtime/timemanager.js.map +7 -0
  563. package/dist/Runtime/timer.js +2 -0
  564. package/dist/Runtime/timer.js.map +7 -0
  565. package/dist/Runtime/types/global-pixi.d.ts +22 -0
  566. package/dist/Runtime/types/global-three-addons.d.ts +9 -0
  567. package/dist/Runtime/types/global-three.d.ts +3 -0
  568. package/dist/Runtime/types/global-types.d.ts +61 -0
  569. package/dist/Runtime/types/howler.d.ts +313 -0
  570. package/dist/Runtime/types/project-data.d.ts +276 -0
  571. package/dist/Runtime/variable.js +2 -0
  572. package/dist/Runtime/variable.js.map +7 -0
  573. package/dist/Runtime/variablescontainer.js +2 -0
  574. package/dist/Runtime/variablescontainer.js.map +7 -0
  575. package/dist/lib/libGD.cjs +22 -0
  576. package/dist/lib/libGD.wasm +0 -0
  577. package/dist/loaders.js +1 -0
  578. package/package.json +24 -10
  579. package/src/WrappedGD.js +159 -138
  580. package/src/downloadGD.js +0 -70
  581. package/src/index.js +21 -14
  582. package/examples/create-objects-from-json/assets/Blank button.png +0 -0
  583. package/examples/create-objects-from-json/game.json +0 -258
  584. package/examples/create-objects-from-json/index.js +0 -50
  585. package/examples/create-objects-from-json/mylist.json +0 -7
  586. package/examples/export-game/game.json +0 -205
  587. package/examples/export-game/index.js +0 -13
  588. package/package-lock.json +0 -223
  589. package/src/CaseSensitiveSlug.js +0 -34
  590. package/src/EventsFunctionsExtensionsLoader/LocalEventsFunctionCodeWriter.js +0 -56
  591. package/src/EventsFunctionsExtensionsLoader/MetadataDeclarationHelpers.js +0 -489
  592. package/src/EventsFunctionsExtensionsLoader/index.js +0 -451
  593. package/src/JsExtensionsLoader/LocalJsExtensionsFinder.js +0 -42
  594. package/src/JsExtensionsLoader/LocalJsExtensionsLoader.js +0 -57
  595. package/src/JsExtensionsLoader/index.js +0 -101
  596. package/src/LocalFileSystem.js +0 -158
  597. package/src/LocalProjectOpener.js +0 -46
  598. package/src/LocalProjectWriter.js +0 -96
  599. package/src/MapFor.js +0 -46
  600. package/src/ObjectSplitter.js +0 -187
  601. package/src/Serializer.js +0 -35
  602. package/src/build.js +0 -51
  603. package/src/runtime-files-list.js +0 -143
@@ -0,0 +1,1653 @@
1
+ // @flow
2
+
3
+ /// <reference path="helper/TileMapHelper.d.ts" />
4
+
5
+ /**
6
+ * This is a declaration of an extension for GDevelop 5.
7
+ *
8
+ * ℹ️ Run `node import-GDJS-Runtime.js` (in newIDE/app/scripts) if you make any change
9
+ * to this extension file or to any other *.js file that you reference inside.
10
+ *
11
+ * The file must be named "JsExtension.js", otherwise GDevelop won't load it.
12
+ * ⚠️ If you make a change and the extension is not loaded, open the developer console
13
+ * and search for any errors.
14
+ *
15
+ * More information on https://github.com/4ian/GDevelop/blob/master/newIDE/README-extensions.md
16
+ */
17
+
18
+ /*::
19
+ // Import types to allow Flow to do static type checking on this file.
20
+ // Extensions declaration are typed using Flow (like the editor), but the files
21
+ // for the game engine are checked with TypeScript annotations.
22
+ import { type ObjectsRenderingService, type ObjectsEditorService } from '../JsExtensionTypes.flow.js'
23
+ */
24
+
25
+ const defineTileMap = function (
26
+ extension,
27
+ _ /*: (string) => string */,
28
+ gd /*: libGDevelop */
29
+ ) {
30
+ var objectTileMap = new gd.ObjectJsImplementation();
31
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
32
+ objectTileMap.updateProperty = function (
33
+ objectContent,
34
+ propertyName,
35
+ newValue
36
+ ) {
37
+ if (propertyName === 'tilemapJsonFile') {
38
+ objectContent.tilemapJsonFile = newValue;
39
+ return true;
40
+ }
41
+ if (propertyName === 'tilesetJsonFile') {
42
+ objectContent.tilesetJsonFile = newValue;
43
+ return true;
44
+ }
45
+ if (propertyName === 'tilemapAtlasImage') {
46
+ objectContent.tilemapAtlasImage = newValue;
47
+ return true;
48
+ }
49
+ if (propertyName === 'displayMode') {
50
+ objectContent.displayMode = newValue;
51
+ return true;
52
+ }
53
+ if (propertyName === 'layerIndex') {
54
+ objectContent.layerIndex = parseFloat(newValue);
55
+ return true;
56
+ }
57
+ if (propertyName === 'levelIndex') {
58
+ objectContent.levelIndex = parseFloat(newValue);
59
+ return true;
60
+ }
61
+ if (propertyName === 'animationSpeedScale') {
62
+ objectContent.animationSpeedScale = parseFloat(newValue);
63
+ return true;
64
+ }
65
+ if (propertyName === 'animationFps') {
66
+ objectContent.animationFps = parseFloat(newValue);
67
+ return true;
68
+ }
69
+
70
+ return false;
71
+ };
72
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
73
+ objectTileMap.getProperties = function (objectContent) {
74
+ var objectProperties = new gd.MapStringPropertyDescriptor();
75
+
76
+ objectProperties.set(
77
+ 'tilemapJsonFile',
78
+ new gd.PropertyDescriptor(objectContent.tilemapJsonFile)
79
+ .setType('resource')
80
+ .addExtraInfo('tilemap')
81
+ .addExtraInfo('json')
82
+ .setLabel(_('Tilemap file (Tiled or LDtk)'))
83
+ .setDescription(
84
+ _('This is the file that was saved or exported from Tiled or LDtk.')
85
+ )
86
+ .setGroup(_('LDtk or Tiled'))
87
+ );
88
+ objectProperties.set(
89
+ 'tilesetJsonFile',
90
+ new gd.PropertyDescriptor(objectContent.tilesetJsonFile || '')
91
+ .setType('resource')
92
+ .addExtraInfo('tileset')
93
+ .addExtraInfo('json')
94
+ .setLabel(_('Tileset JSON file (optional)'))
95
+ .setDescription(
96
+ _(
97
+ "Optional: specify this if you've saved the tileset in a different file as the Tiled tilemap."
98
+ )
99
+ )
100
+ .setGroup(_('Tiled only'))
101
+ );
102
+ objectProperties.set(
103
+ 'tilemapAtlasImage',
104
+ new gd.PropertyDescriptor(objectContent.tilemapAtlasImage)
105
+ .setType('resource')
106
+ .addExtraInfo('image')
107
+ .setLabel(_('Atlas image'))
108
+ .setDescription(
109
+ _(
110
+ 'The Atlas image containing the tileset.'
111
+ )
112
+ )
113
+ .setGroup(_('Tiled only'))
114
+ );
115
+ objectProperties.set(
116
+ 'displayMode',
117
+ new gd.PropertyDescriptor(objectContent.displayMode)
118
+ .setType('choice')
119
+ .addExtraInfo('visible')
120
+ .addExtraInfo('all')
121
+ .addExtraInfo('index')
122
+ .setLabel(_('Display mode'))
123
+ .setGroup(_('Appearance'))
124
+ );
125
+ objectProperties.set(
126
+ 'layerIndex',
127
+ new gd.PropertyDescriptor(objectContent.layerIndex.toString())
128
+ .setType('number')
129
+ .setLabel(_('Layer index to display'))
130
+ .setDescription(
131
+ _(
132
+ 'If "index" is selected as the display mode, this is the index of the layer to display.'
133
+ )
134
+ )
135
+ .setGroup(_('Appearance'))
136
+ );
137
+ objectProperties.set(
138
+ 'levelIndex',
139
+ new gd.PropertyDescriptor((objectContent.levelIndex || 0).toString())
140
+ .setType('number')
141
+ .setLabel(_('Level index to display'))
142
+ .setDescription(_('Select which level to render via its index (LDtk)'))
143
+ .setGroup(_('Appearance'))
144
+ );
145
+ objectProperties.set(
146
+ 'animationSpeedScale',
147
+ new gd.PropertyDescriptor(objectContent.animationSpeedScale.toString())
148
+ .setType('number')
149
+ .setLabel(_('Animation speed scale'))
150
+ .setGroup(_('Animation'))
151
+ );
152
+ objectProperties.set(
153
+ 'animationFps',
154
+ new gd.PropertyDescriptor(objectContent.animationFps.toString())
155
+ .setType('number')
156
+ .setLabel(_('Animation FPS'))
157
+ .setGroup(_('Animation'))
158
+ );
159
+
160
+ return objectProperties;
161
+ };
162
+ objectTileMap.setRawJSONContent(
163
+ JSON.stringify({
164
+ tilemapJsonFile: '',
165
+ tilesetJsonFile: '',
166
+ tilemapAtlasImage: '',
167
+ displayMode: 'visible',
168
+ layerIndex: 0,
169
+ levelIndex: 0,
170
+ animationSpeedScale: 1,
171
+ animationFps: 4,
172
+ })
173
+ );
174
+
175
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
176
+ objectTileMap.updateInitialInstanceProperty = function (
177
+ objectContent,
178
+ instance,
179
+ propertyName,
180
+ newValue,
181
+ project,
182
+ layout
183
+ ) {
184
+ return false;
185
+ };
186
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
187
+ objectTileMap.getInitialInstanceProperties = function (
188
+ content,
189
+ instance,
190
+ project,
191
+ layout
192
+ ) {
193
+ var instanceProperties = new gd.MapStringPropertyDescriptor();
194
+ return instanceProperties;
195
+ };
196
+
197
+ const object = extension
198
+ .addObject(
199
+ 'TileMap',
200
+ _('Tilemap'),
201
+ _(
202
+ 'Displays a tiled-based map, made with the Tiled editor (https://www.mapeditor.org/) or the LDtk editor (https://ldtk.io/).'
203
+ ),
204
+ 'JsPlatform/Extensions/tile_map.svg',
205
+ objectTileMap
206
+ )
207
+ .setCategoryFullName(_('Advanced'))
208
+ .setIncludeFile('Extensions/TileMap/tilemapruntimeobject.js')
209
+ .addIncludeFile('Extensions/TileMap/TileMapRuntimeManager.js')
210
+ .addIncludeFile('Extensions/TileMap/tilemapruntimeobject-pixi-renderer.js')
211
+ .addIncludeFile('Extensions/TileMap/pixi-tilemap/dist/pixi-tilemap.umd.js')
212
+ .addIncludeFile('Extensions/TileMap/pako/dist/pako.min.js')
213
+ .addIncludeFile('Extensions/TileMap/helper/TileMapHelper.js');
214
+
215
+ object
216
+ .addCondition(
217
+ 'TilemapJsonFile',
218
+ _('Tilemap file (Tiled or LDtk)'),
219
+ _('Check the tilemap file (Tiled or LDtk) being used.'),
220
+ _('The tilemap file of _PARAM0_ is _PARAM1_'),
221
+ '',
222
+ 'JsPlatform/Extensions/tile_map.svg',
223
+ 'JsPlatform/Extensions/tile_map.svg'
224
+ )
225
+ .addParameter('object', _('Tile map'), 'TileMap', false)
226
+ .addParameter(
227
+ 'tilemapResource',
228
+ _('Tilemap file (Tiled or LDtk)'),
229
+ '',
230
+ false
231
+ )
232
+ .getCodeExtraInformation()
233
+ .setFunctionName('isTilemapJsonFile');
234
+
235
+ object
236
+ .addAction(
237
+ 'SetTilemapJsonFile',
238
+ _('Tilemap file (Tiled or LDtk)'),
239
+ _(
240
+ 'Set the Tiled or LDtk file containing the Tilemap data to display. This is usually the main file exported from Tiled/LDtk.'
241
+ ),
242
+ _('Set the tilemap file of _PARAM0_ to _PARAM1_'),
243
+ '',
244
+ 'JsPlatform/Extensions/tile_map.svg',
245
+ 'JsPlatform/Extensions/tile_map.svg'
246
+ )
247
+ .addParameter('object', _('Tile map'), 'TileMap', false)
248
+ .addParameter(
249
+ 'tilemapResource',
250
+ _('Tilemap file (Tiled or LDtk)'),
251
+ '',
252
+ false
253
+ )
254
+ .getCodeExtraInformation()
255
+ .setFunctionName('setTilemapJsonFile');
256
+
257
+ object
258
+ .addCondition(
259
+ 'TilesetJsonFile',
260
+ _('Tileset JSON file'),
261
+ _('Check the tileset JSON file being used.'),
262
+ _('The tileset JSON file of _PARAM0_ is _PARAM1_'),
263
+ '',
264
+ 'JsPlatform/Extensions/tile_map.svg',
265
+ 'JsPlatform/Extensions/tile_map.svg'
266
+ )
267
+ .addParameter('object', _('Tile map'), 'TileMap', false)
268
+ .addParameter('tilesetResource', _('Tileset JSON file'), '', false)
269
+ .getCodeExtraInformation()
270
+ .setFunctionName('isTilesetJsonFile');
271
+
272
+ object
273
+ .addAction(
274
+ 'SetTilesetJsonFile',
275
+ _('Tileset JSON file'),
276
+ _(
277
+ 'Set the JSON file with the tileset data (sometimes that is embedded in the Tilemap, so not needed)'
278
+ ),
279
+ _('Set the tileset JSON file of _PARAM0_ to _PARAM1_'),
280
+ '',
281
+ 'JsPlatform/Extensions/tile_map.svg',
282
+ 'JsPlatform/Extensions/tile_map.svg'
283
+ )
284
+ .addParameter('object', _('Tile map'), 'TileMap', false)
285
+ .addParameter('tilesetResource', _('Tileset JSON file'), '', false)
286
+ .getCodeExtraInformation()
287
+ .setFunctionName('setTilesetJsonFile');
288
+
289
+ object
290
+ .addCondition(
291
+ 'DisplayMode',
292
+ _('Display mode'),
293
+ _('Compare the value of the display mode.'),
294
+ _('The display mode of _PARAM0_ is _PARAM1_'),
295
+ '',
296
+ 'JsPlatform/Extensions/tile_map.svg',
297
+ 'JsPlatform/Extensions/tile_map.svg'
298
+ )
299
+ .addParameter('object', _('Tile map'), 'TileMap', false)
300
+ .addParameter(
301
+ 'stringWithSelector',
302
+ _('Display mode'),
303
+ '["visible", "all", "index"]',
304
+ false
305
+ )
306
+ .getCodeExtraInformation()
307
+ .setFunctionName('isDisplayMode');
308
+
309
+ object
310
+ .addAction(
311
+ 'SetDisplayMode',
312
+ _('Display mode'),
313
+ _('Set the display mode'),
314
+ _('Set the display mode of _PARAM0_ to _PARAM1_'),
315
+ '',
316
+ 'JsPlatform/Extensions/tile_map.svg',
317
+ 'JsPlatform/Extensions/tile_map.svg'
318
+ )
319
+ .addParameter('object', _('Tile map'), 'TileMap', false)
320
+ .addParameter(
321
+ 'stringWithSelector',
322
+ _('Display mode'),
323
+ '["visible", "all", "index"]',
324
+ false
325
+ )
326
+ .getCodeExtraInformation()
327
+ .setFunctionName('setDisplayMode');
328
+
329
+ object
330
+ .addCondition(
331
+ 'LayerIndex',
332
+ _('Layer index'),
333
+ _('Compare the value of the layer index.'),
334
+ _('the layer index'),
335
+ '',
336
+ 'JsPlatform/Extensions/tile_map.svg',
337
+ 'JsPlatform/Extensions/tile_map.svg'
338
+ )
339
+ .addParameter('object', _('Tile map'), 'TileMap', false)
340
+ .useStandardRelationalOperatorParameters(
341
+ 'number',
342
+ gd.ParameterOptions.makeNewOptions()
343
+ )
344
+ .getCodeExtraInformation()
345
+ .setFunctionName('getLayerIndex');
346
+
347
+ object
348
+ .addAction(
349
+ 'SetLayerIndex',
350
+ _('Layer index'),
351
+ _('Set the layer index of the Tilemap.'),
352
+ _('the layer index'),
353
+ '',
354
+ 'JsPlatform/Extensions/tile_map.svg',
355
+ 'JsPlatform/Extensions/tile_map.svg'
356
+ )
357
+ .addParameter('object', _('Tile map'), 'TileMap', false)
358
+ .useStandardOperatorParameters(
359
+ 'number',
360
+ gd.ParameterOptions.makeNewOptions()
361
+ )
362
+ .getCodeExtraInformation()
363
+ .setFunctionName('setLayerIndex')
364
+ .setGetter('getLayerIndex');
365
+
366
+ object
367
+ .addExpression(
368
+ 'LayerIndex',
369
+ _('Layer index'),
370
+ _('Get the layer index being displayed'),
371
+ '',
372
+ 'JsPlatform/Extensions/tile_map.svg'
373
+ )
374
+ .addParameter('object', _('Tile map'), 'TileMap', false)
375
+ .getCodeExtraInformation()
376
+ .setFunctionName('getLayerIndex');
377
+
378
+ object
379
+ .addExpressionAndCondition(
380
+ 'number',
381
+ 'LevelIndex',
382
+ _('Level index'),
383
+ _('the level index being displayed.'),
384
+ _('the level index'),
385
+ '',
386
+ 'JsPlatform/Extensions/tile_map.svg'
387
+ )
388
+ .addParameter('object', _('Tile map'), 'TileMap', false)
389
+ .useStandardParameters('number', gd.ParameterOptions.makeNewOptions())
390
+ .setFunctionName('getLevelIndex');
391
+
392
+ object
393
+ .addCondition(
394
+ 'AnimationSpeedScale',
395
+ _('Animation speed scale'),
396
+ _('Compare the animation speed scale.'),
397
+ _('the animation speed scale'),
398
+ '',
399
+ 'JsPlatform/Extensions/tile_map.svg',
400
+ 'JsPlatform/Extensions/tile_map.svg'
401
+ )
402
+ .addParameter('object', _('Tile map'), 'TileMap', false)
403
+ .useStandardRelationalOperatorParameters(
404
+ 'number',
405
+ gd.ParameterOptions.makeNewOptions().setDescription(
406
+ _('Speed scale to compare to (1 by default)')
407
+ )
408
+ )
409
+ .getCodeExtraInformation()
410
+ .setFunctionName('getAnimationSpeedScale');
411
+
412
+ object
413
+ .addAction(
414
+ 'SetAnimationSpeedScale',
415
+ _('Animation speed scale'),
416
+ _('Set the animation speed scale of the Tilemap.'),
417
+ _('the animation speed scale'),
418
+ '',
419
+ 'JsPlatform/Extensions/tile_map.svg',
420
+ 'JsPlatform/Extensions/tile_map.svg'
421
+ )
422
+ .addParameter('object', _('Tile map'), 'TileMap', false)
423
+ .useStandardOperatorParameters(
424
+ 'number',
425
+ gd.ParameterOptions.makeNewOptions().setDescription(
426
+ _('Speed scale (1 by default)')
427
+ )
428
+ )
429
+ .getCodeExtraInformation()
430
+ .setFunctionName('setAnimationSpeedScale')
431
+ .setGetter('getAnimationSpeedScale');
432
+
433
+ object
434
+ .addExpression(
435
+ 'AnimationSpeedScale',
436
+ _('Animation speed scale'),
437
+ _('Get the Animation speed scale'),
438
+ '',
439
+ 'JsPlatform/Extensions/tile_map.svg'
440
+ )
441
+ .addParameter('object', _('Tile map'), 'TileMap', false)
442
+ .getCodeExtraInformation()
443
+ .setFunctionName('getAnimationSpeedScale');
444
+
445
+ object
446
+ .addCondition(
447
+ 'AnimationFps',
448
+ _('Animation speed (FPS)'),
449
+ _('Compare the animation speed.'),
450
+ _('the animation speed (FPS)'),
451
+ '',
452
+ 'JsPlatform/Extensions/tile_map.svg',
453
+ 'JsPlatform/Extensions/tile_map.svg'
454
+ )
455
+ .addParameter('object', _('Tile map'), 'TileMap', false)
456
+ .useStandardRelationalOperatorParameters(
457
+ 'number',
458
+ gd.ParameterOptions.makeNewOptions().setDescription(
459
+ _('Animation speed to compare to (in frames per second)')
460
+ )
461
+ )
462
+ .getCodeExtraInformation()
463
+ .setFunctionName('getAnimationFps');
464
+
465
+ object
466
+ .addAction(
467
+ 'SetAnimationFps',
468
+ _('Animation speed (FPS)'),
469
+ _('Set the animation speed of the Tilemap.'),
470
+ _('the animation speed (FPS)'),
471
+ '',
472
+ 'JsPlatform/Extensions/tile_map.svg',
473
+ 'JsPlatform/Extensions/tile_map.svg'
474
+ )
475
+ .addParameter('object', _('Tile map'), 'TileMap', false)
476
+ .useStandardOperatorParameters(
477
+ 'number',
478
+ gd.ParameterOptions.makeNewOptions().setDescription(
479
+ _('Animation speed (in frames per second)')
480
+ )
481
+ )
482
+ .getCodeExtraInformation()
483
+ .setFunctionName('setAnimationFps')
484
+ .setGetter('getAnimationFps');
485
+
486
+ object
487
+ .addExpression(
488
+ 'AnimationFps',
489
+ _('Animation speed (FPS)'),
490
+ _('Get the animation speed (in frames per second)'),
491
+ '',
492
+ 'JsPlatform/Extensions/tile_map.svg'
493
+ )
494
+ .addParameter('object', _('Tile map'), 'TileMap', false)
495
+ .getCodeExtraInformation()
496
+ .setFunctionName('getAnimationFps');
497
+
498
+ object
499
+ .addAction(
500
+ 'Scale',
501
+ _('Scale'),
502
+ _('Modify the scale of the specified object.'),
503
+ _('the scale'),
504
+ _('Size'),
505
+ 'res/actions/scale24_black.png',
506
+ 'res/actions/scale_black.png'
507
+ )
508
+ .addParameter('object', _('Tile map'), 'TileMap', false)
509
+ .useStandardOperatorParameters(
510
+ 'number',
511
+ gd.ParameterOptions.makeNewOptions().setDescription(
512
+ _('Scale (1 by default)')
513
+ )
514
+ )
515
+ .markAsAdvanced()
516
+ .getCodeExtraInformation()
517
+ .setFunctionName('setScale')
518
+ .setGetter('getScale');
519
+
520
+ object
521
+ .addExpressionAndConditionAndAction(
522
+ 'number',
523
+ 'ScaleX',
524
+ _('Scale on X axis'),
525
+ _("the width's scale of an object"),
526
+ _("the width's scale"),
527
+ _('Size'),
528
+ 'res/actions/scaleWidth24_black.png'
529
+ )
530
+ .addParameter('object', _('Tile map'), 'TileMap', false)
531
+ .useStandardParameters(
532
+ 'number',
533
+ gd.ParameterOptions.makeNewOptions().setDescription(
534
+ _('Scale (1 by default)')
535
+ )
536
+ )
537
+ .markAsAdvanced()
538
+ .setFunctionName('setScaleX')
539
+ .setGetter('getScaleX');
540
+
541
+ object
542
+ .addExpressionAndConditionAndAction(
543
+ 'number',
544
+ 'ScaleY',
545
+ _('Scale on Y axis'),
546
+ _("the height's scale of an object"),
547
+ _("the height's scale"),
548
+ _('Size'),
549
+ 'res/actions/scaleHeight24_black.png'
550
+ )
551
+ .addParameter('object', _('Tile map'), 'TileMap', false)
552
+ .useStandardParameters(
553
+ 'number',
554
+ gd.ParameterOptions.makeNewOptions().setDescription(
555
+ _('Scale (1 by default)')
556
+ )
557
+ )
558
+ .markAsAdvanced()
559
+ .setFunctionName('setScaleY')
560
+ .setGetter('getScaleY');
561
+
562
+ object
563
+ .addAction(
564
+ 'Width',
565
+ _('Width'),
566
+ _('Change the width of an object.'),
567
+ _('the width'),
568
+ _('Size'),
569
+ 'res/actions/scaleWidth24_black.png',
570
+ 'res/actions/scaleWidth_black.png'
571
+ )
572
+ .addParameter('object', _('Tile map'), 'TileMap', false)
573
+ .useStandardOperatorParameters(
574
+ 'number',
575
+ gd.ParameterOptions.makeNewOptions()
576
+ )
577
+ .markAsAdvanced()
578
+ .getCodeExtraInformation()
579
+ .setFunctionName('setWidth');
580
+
581
+ object
582
+ .addAction(
583
+ 'Height',
584
+ _('Height'),
585
+ _('Change the height of an object.'),
586
+ _('the height'),
587
+ _('Size'),
588
+ 'res/actions/scaleHeight24_black.png',
589
+ 'res/actions/scaleHeight_black.png'
590
+ )
591
+ .addParameter('object', _('Tile map'), 'TileMap', false)
592
+ .useStandardOperatorParameters(
593
+ 'number',
594
+ gd.ParameterOptions.makeNewOptions()
595
+ )
596
+ .markAsAdvanced()
597
+ .getCodeExtraInformation()
598
+ .setFunctionName('setHeight');
599
+ };
600
+
601
+ const defineCollisionMask = function (
602
+ extension,
603
+ _ /*: (string) => string */,
604
+ gd /*: libGDevelop */
605
+ ) {
606
+ var collisionMaskObject = new gd.ObjectJsImplementation();
607
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
608
+ collisionMaskObject.updateProperty = function (
609
+ objectContent,
610
+ propertyName,
611
+ newValue
612
+ ) {
613
+ if (propertyName === 'tilemapJsonFile') {
614
+ objectContent.tilemapJsonFile = newValue;
615
+ return true;
616
+ }
617
+ if (propertyName === 'tilesetJsonFile') {
618
+ objectContent.tilesetJsonFile = newValue;
619
+ return true;
620
+ }
621
+ if (propertyName === 'collisionMaskTag') {
622
+ objectContent.collisionMaskTag = newValue;
623
+ return true;
624
+ }
625
+ if (propertyName === 'debugMode') {
626
+ objectContent.debugMode = newValue === '1';
627
+ return true;
628
+ }
629
+ if (propertyName === 'fillColor') {
630
+ objectContent.fillColor = newValue;
631
+ return true;
632
+ }
633
+ if (propertyName === 'outlineColor') {
634
+ objectContent.outlineColor = newValue;
635
+ return true;
636
+ }
637
+ if (propertyName === 'fillOpacity') {
638
+ objectContent.fillOpacity = parseFloat(newValue);
639
+ return true;
640
+ }
641
+ if (propertyName === 'outlineOpacity') {
642
+ objectContent.outlineOpacity = parseFloat(newValue);
643
+ return true;
644
+ }
645
+ if (propertyName === 'outlineSize') {
646
+ objectContent.outlineSize = parseFloat(newValue);
647
+ return true;
648
+ }
649
+
650
+ return false;
651
+ };
652
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
653
+ collisionMaskObject.getProperties = function (objectContent) {
654
+ var objectProperties = new gd.MapStringPropertyDescriptor();
655
+
656
+ objectProperties.set(
657
+ 'tilemapJsonFile',
658
+ new gd.PropertyDescriptor(objectContent.tilemapJsonFile)
659
+ .setType('resource')
660
+ .addExtraInfo('tilemap')
661
+ .addExtraInfo('json')
662
+ .setLabel(_('Tilemap JSON file'))
663
+ .setDescription(
664
+ _(
665
+ 'This is the JSON file that was saved or exported from Tiled. LDtk is not supported yet for collisions.'
666
+ )
667
+ )
668
+ );
669
+ objectProperties.set(
670
+ 'tilesetJsonFile',
671
+ new gd.PropertyDescriptor(objectContent.tilesetJsonFile || '')
672
+ .setType('resource')
673
+ .addExtraInfo('tileset')
674
+ .addExtraInfo('json')
675
+ .setLabel(_('Tileset JSON file (optional)'))
676
+ .setDescription(
677
+ _(
678
+ "Optional, don't specify it if you've not saved the tileset in a different file."
679
+ )
680
+ )
681
+ );
682
+ objectProperties.set(
683
+ 'collisionMaskTag',
684
+ new gd.PropertyDescriptor(objectContent.collisionMaskTag)
685
+ .setType('string')
686
+ .setLabel(_('Class filter'))
687
+ .setDescription(
688
+ _(
689
+ 'Only the tiles with the given class (set in Tiled 1.9+) will have hitboxes created.'
690
+ )
691
+ )
692
+ );
693
+ objectProperties.set(
694
+ 'debugMode',
695
+ new gd.PropertyDescriptor(objectContent.debugMode ? 'true' : 'false')
696
+ .setType('boolean')
697
+ .setLabel(_('Debug mode'))
698
+ .setDescription(
699
+ _('When activated, it displays the hitboxes in the given color.')
700
+ )
701
+ );
702
+ objectProperties.set(
703
+ 'outlineColor',
704
+ new gd.PropertyDescriptor(objectContent.outlineColor)
705
+ .setType('color')
706
+ .setLabel(_('Outline color'))
707
+ );
708
+ objectProperties.set(
709
+ 'outlineOpacity',
710
+ new gd.PropertyDescriptor(
711
+ objectContent.outlineOpacity === undefined
712
+ ? '64'
713
+ : objectContent.outlineOpacity.toString()
714
+ )
715
+ .setType('number')
716
+ .setLabel(_('Outline opacity (0-255)'))
717
+ );
718
+ objectProperties.set(
719
+ 'outlineSize',
720
+ new gd.PropertyDescriptor(
721
+ objectContent.outlineSize === undefined
722
+ ? '1'
723
+ : objectContent.outlineSize.toString()
724
+ )
725
+ .setType('number')
726
+ .setLabel(_('Outline size (in pixels)'))
727
+ );
728
+ objectProperties.set(
729
+ 'fillColor',
730
+ new gd.PropertyDescriptor(objectContent.fillColor)
731
+ .setType('color')
732
+ .setLabel(_('Fill color'))
733
+ );
734
+ objectProperties.set(
735
+ 'fillOpacity',
736
+ new gd.PropertyDescriptor(
737
+ objectContent.fillOpacity === undefined
738
+ ? '32'
739
+ : objectContent.fillOpacity.toString()
740
+ )
741
+ .setType('number')
742
+ .setLabel(_('Fill opacity (0-255)'))
743
+ );
744
+
745
+ return objectProperties;
746
+ };
747
+ collisionMaskObject.setRawJSONContent(
748
+ JSON.stringify({
749
+ tilemapJsonFile: '',
750
+ tilesetJsonFile: '',
751
+ collisionMaskTag: '',
752
+ debugMode: false,
753
+ fillColor: '255;255;255',
754
+ outlineColor: '255;255;255',
755
+ fillOpacity: 64,
756
+ outlineOpacity: 128,
757
+ outlineSize: 1,
758
+ })
759
+ );
760
+
761
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
762
+ collisionMaskObject.updateInitialInstanceProperty = function (
763
+ objectContent,
764
+ instance,
765
+ propertyName,
766
+ newValue,
767
+ project,
768
+ layout
769
+ ) {
770
+ return false;
771
+ };
772
+ // $FlowExpectedError - ignore Flow warning as we're creating an object
773
+ collisionMaskObject.getInitialInstanceProperties = function (
774
+ content,
775
+ instance,
776
+ project,
777
+ layout
778
+ ) {
779
+ var instanceProperties = new gd.MapStringPropertyDescriptor();
780
+ return instanceProperties;
781
+ };
782
+
783
+ const object = extension
784
+ .addObject(
785
+ 'CollisionMask',
786
+ _('Tilemap collision mask'),
787
+ _('Invisible object handling collisions with parts of a tilemap.'),
788
+ 'JsPlatform/Extensions/tile_map_collision_mask32.svg',
789
+ collisionMaskObject
790
+ )
791
+ .setCategoryFullName(_('Advanced'))
792
+ .setIncludeFile('Extensions/TileMap/tilemapcollisionmaskruntimeobject.js')
793
+ .addIncludeFile('Extensions/TileMap/TileMapRuntimeManager.js')
794
+ .addIncludeFile('Extensions/TileMap/pako/dist/pako.min.js')
795
+ .addIncludeFile('Extensions/TileMap/helper/TileMapHelper.js')
796
+ .addIncludeFile('Extensions/TileMap/collision/TransformedTileMap.js')
797
+ .addIncludeFile(
798
+ 'Extensions/TileMap/collision/TileMapCollisionMaskRenderer.js'
799
+ );
800
+
801
+ object
802
+ .addScopedCondition(
803
+ 'TilemapJsonFile',
804
+ _('Tilemap JSON file'),
805
+ _('Check the Tilemap JSON file being used.'),
806
+ _('The Tilemap JSON file of _PARAM0_ is _PARAM1_'),
807
+ '',
808
+ 'JsPlatform/Extensions/tile_map_collision_mask24.svg',
809
+ 'JsPlatform/Extensions/tile_map_collision_mask32.svg'
810
+ )
811
+ .addParameter(
812
+ 'object',
813
+ _('Tile map collision mask'),
814
+ 'CollisionMask',
815
+ false
816
+ )
817
+ .addParameter('jsonResource', _('Tilemap JSON file'), '', false)
818
+ .getCodeExtraInformation()
819
+ .setFunctionName('isTilemapJsonFile');
820
+
821
+ object
822
+ .addScopedAction(
823
+ 'SetTilemapJsonFile',
824
+ _('Tilemap JSON file'),
825
+ _(
826
+ 'Set the JSON file containing the Tilemap data to display. This is usually the JSON file exported from Tiled.'
827
+ ),
828
+ _('Set the Tilemap JSON file of _PARAM0_ to _PARAM1_'),
829
+ '',
830
+ 'JsPlatform/Extensions/tile_map_collision_mask24.svg',
831
+ 'JsPlatform/Extensions/tile_map_collision_mask32.svg'
832
+ )
833
+ .addParameter(
834
+ 'object',
835
+ _('Tile map collision mask'),
836
+ 'CollisionMask',
837
+ false
838
+ )
839
+ .addParameter('jsonResource', _('Tilemap JSON file'), '', false)
840
+ .getCodeExtraInformation()
841
+ .setFunctionName('setTilemapJsonFile');
842
+
843
+ object
844
+ .addScopedCondition(
845
+ 'TilesetJsonFile',
846
+ _('Tileset JSON file'),
847
+ _('Check the tileset JSON file being used.'),
848
+ _('The tileset JSON file of _PARAM0_ is _PARAM1_'),
849
+ '',
850
+ 'JsPlatform/Extensions/tile_map_collision_mask24.svg',
851
+ 'JsPlatform/Extensions/tile_map_collision_mask32.svg'
852
+ )
853
+ .addParameter(
854
+ 'object',
855
+ _('Tile map collision mask'),
856
+ 'CollisionMask',
857
+ false
858
+ )
859
+ .addParameter('jsonResource', _('Tileset JSON file'), '', false)
860
+ .getCodeExtraInformation()
861
+ .setFunctionName('isTilesetJsonFile');
862
+
863
+ object
864
+ .addScopedAction(
865
+ 'SetTilesetJsonFile',
866
+ _('Tileset JSON file'),
867
+ _(
868
+ 'Set the JSON file with the tileset data (sometimes that is embedded in the Tilemap, so not needed)'
869
+ ),
870
+ _('Set the tileset JSON file of _PARAM0_ to _PARAM1_'),
871
+ '',
872
+ 'JsPlatform/Extensions/tile_map_collision_mask24.svg',
873
+ 'JsPlatform/Extensions/tile_map_collision_mask32.svg'
874
+ )
875
+ .addParameter(
876
+ 'object',
877
+ _('Tile map collision mask'),
878
+ 'CollisionMask',
879
+ false
880
+ )
881
+ .addParameter('jsonResource', _('Tileset JSON file'), '', false)
882
+ .getCodeExtraInformation()
883
+ .setFunctionName('setTilesetJsonFile');
884
+
885
+ object
886
+ .addScopedAction(
887
+ 'Scale',
888
+ _('Scale'),
889
+ _('Modify the scale of the specified object.'),
890
+ _('the scale'),
891
+ _('Size'),
892
+ 'res/actions/scale24_black.png',
893
+ 'res/actions/scale_black.png'
894
+ )
895
+ .addParameter(
896
+ 'object',
897
+ _('Tile map collision mask'),
898
+ 'CollisionMask',
899
+ false
900
+ )
901
+ .useStandardOperatorParameters(
902
+ 'number',
903
+ gd.ParameterOptions.makeNewOptions().setDescription(
904
+ _('Scale (1 by default)')
905
+ )
906
+ )
907
+ .markAsAdvanced()
908
+ .getCodeExtraInformation()
909
+ .setFunctionName('setScale')
910
+ .setGetter('getScale');
911
+
912
+ object
913
+ .addExpressionAndConditionAndAction(
914
+ 'number',
915
+ 'ScaleX',
916
+ _('Scale on X axis'),
917
+ _("the width's scale of an object"),
918
+ _("the width's scale"),
919
+ _('Size'),
920
+ 'res/actions/scaleWidth24_black.png'
921
+ )
922
+ .addParameter(
923
+ 'object',
924
+ _('Tile map collision mask'),
925
+ 'CollisionMask',
926
+ false
927
+ )
928
+ .useStandardParameters(
929
+ 'number',
930
+ gd.ParameterOptions.makeNewOptions().setDescription(
931
+ _('Scale (1 by default)')
932
+ )
933
+ )
934
+ .markAsAdvanced()
935
+ .setFunctionName('setScaleX')
936
+ .setGetter('getScaleX');
937
+
938
+ object
939
+ .addExpressionAndConditionAndAction(
940
+ 'number',
941
+ 'ScaleY',
942
+ _('Scale on Y axis'),
943
+ _("the height's scale of an object"),
944
+ _("the height's scale"),
945
+ _('Size'),
946
+ 'res/actions/scaleHeight24_black.png'
947
+ )
948
+ .addParameter(
949
+ 'object',
950
+ _('Tile map collision mask'),
951
+ 'CollisionMask',
952
+ false
953
+ )
954
+ .useStandardParameters(
955
+ 'number',
956
+ gd.ParameterOptions.makeNewOptions().setDescription(
957
+ _('Scale (1 by default)')
958
+ )
959
+ )
960
+ .markAsAdvanced()
961
+ .setFunctionName('setScaleY')
962
+ .setGetter('getScaleY');
963
+
964
+ object
965
+ .addScopedAction(
966
+ 'Width',
967
+ _('Width'),
968
+ _('Change the width of an object.'),
969
+ _('the width'),
970
+ _('Size'),
971
+ 'res/actions/scaleWidth24_black.png',
972
+ 'res/actions/scaleWidth_black.png'
973
+ )
974
+ .addParameter(
975
+ 'object',
976
+ _('Tile map collision mask'),
977
+ 'CollisionMask',
978
+ false
979
+ )
980
+ .useStandardOperatorParameters(
981
+ 'number',
982
+ gd.ParameterOptions.makeNewOptions()
983
+ )
984
+ .markAsAdvanced()
985
+ .getCodeExtraInformation()
986
+ .setFunctionName('setWidth');
987
+
988
+ object
989
+ .addScopedAction(
990
+ 'Height',
991
+ _('Height'),
992
+ _('Change the height of an object.'),
993
+ _('the height'),
994
+ _('Size'),
995
+ 'res/actions/scaleHeight24_black.png',
996
+ 'res/actions/scaleHeight_black.png'
997
+ )
998
+ .addParameter(
999
+ 'object',
1000
+ _('Tile map collision mask'),
1001
+ 'CollisionMask',
1002
+ false
1003
+ )
1004
+ .useStandardOperatorParameters(
1005
+ 'number',
1006
+ gd.ParameterOptions.makeNewOptions()
1007
+ )
1008
+ .markAsAdvanced()
1009
+ .getCodeExtraInformation()
1010
+ .setFunctionName('setHeight');
1011
+ };
1012
+
1013
+ module.exports = {
1014
+ createExtension: function (
1015
+ _ /*: (string) => string */,
1016
+ gd /*: libGDevelop */
1017
+ ) {
1018
+ const extension = new gd.PlatformExtension();
1019
+
1020
+ extension
1021
+ .setExtensionInformation(
1022
+ 'TileMap',
1023
+ _('Tilemap'),
1024
+ "The Tilemap object can be used to display tile-based objects. It's a good way to create maps for RPG, strategy games or create objects by assembling tiles, useful for platformer, retro-looking games, etc...",
1025
+ 'Todor Imreorov',
1026
+ 'Open source (MIT License)'
1027
+ )
1028
+ .setCategory('Advanced')
1029
+ .setExtensionHelpPath('/objects/tilemap');
1030
+
1031
+ extension
1032
+ .addInstructionOrExpressionGroupMetadata(_('Tilemap'))
1033
+ .setIcon('JsPlatform/Extensions/tile_map.svg');
1034
+
1035
+ defineTileMap(extension, _, gd);
1036
+ defineCollisionMask(extension, _, gd);
1037
+
1038
+ return extension;
1039
+ },
1040
+
1041
+ /**
1042
+ * You can optionally add sanity tests that will check the basic working
1043
+ * of your extension behaviors/objects by instantiating behaviors/objects
1044
+ * and setting the property to a given value.
1045
+ *
1046
+ * If you don't have any tests, you can simply return an empty array like this:
1047
+ * `runExtensionSanityTests: function(gd, extension) { return []; }`
1048
+ *
1049
+ * But it is recommended to create tests for the behaviors/objects properties you created
1050
+ * to avoid mistakes.
1051
+ */
1052
+ runExtensionSanityTests: function (
1053
+ gd /*: libGDevelop */,
1054
+ extension /*: gdPlatformExtension*/
1055
+ ) {
1056
+ return [];
1057
+ },
1058
+ /**
1059
+ * Register editors for objects.
1060
+ *
1061
+ * ℹ️ Run `node import-GDJS-Runtime.js` (in newIDE/app/scripts) if you make any change.
1062
+ */
1063
+ registerEditorConfigurations: function (
1064
+ objectsEditorService /*: ObjectsEditorService */
1065
+ ) {
1066
+ objectsEditorService.registerEditorConfiguration(
1067
+ 'TileMap::TileMap',
1068
+ objectsEditorService.getDefaultObjectJsImplementationPropertiesEditor({
1069
+ helpPagePath: '/objects/tilemap',
1070
+ })
1071
+ );
1072
+ objectsEditorService.registerEditorConfiguration(
1073
+ 'TileMap::CollisionMask',
1074
+ objectsEditorService.getDefaultObjectJsImplementationPropertiesEditor({
1075
+ helpPagePath: '/objects/tilemap',
1076
+ })
1077
+ );
1078
+ },
1079
+ /**
1080
+ * Register renderers for instance of objects on the scene editor.
1081
+ *
1082
+ * ℹ️ Run `node import-GDJS-Runtime.js` (in newIDE/app/scripts) if you make any change.
1083
+ */
1084
+ registerInstanceRenderers: function (
1085
+ objectsRenderingService /*: ObjectsRenderingService */
1086
+ ) {
1087
+ const RenderedInstance = objectsRenderingService.RenderedInstance;
1088
+ const PIXI = objectsRenderingService.PIXI;
1089
+
1090
+ const Tilemap = objectsRenderingService.requireModule(
1091
+ __dirname,
1092
+ 'pixi-tilemap/dist/pixi-tilemap.umd'
1093
+ );
1094
+ const TilemapHelper = objectsRenderingService.requireModule(
1095
+ __dirname,
1096
+ 'helper/TileMapHelper'
1097
+ );
1098
+ // required for decoding tiled zlib compressed layer data
1099
+ const pako = objectsRenderingService.requireModule(
1100
+ __dirname,
1101
+ 'pako/dist/pako.min'
1102
+ );
1103
+
1104
+ /**
1105
+ * Renderer for instances of TileMap inside the IDE.
1106
+ *
1107
+ * @extends RenderedInstance
1108
+ * @class RenderedTileMapInstance
1109
+ * @constructor
1110
+ */
1111
+ function RenderedTileMapInstance(
1112
+ project,
1113
+ layout,
1114
+ instance,
1115
+ associatedObjectConfiguration,
1116
+ pixiContainer,
1117
+ pixiResourcesLoader
1118
+ ) {
1119
+ RenderedInstance.call(
1120
+ this,
1121
+ project,
1122
+ layout,
1123
+ instance,
1124
+ associatedObjectConfiguration,
1125
+ pixiContainer,
1126
+ pixiResourcesLoader
1127
+ );
1128
+
1129
+ // This setting allows tile maps with more than 16K tiles.
1130
+ Tilemap.settings.use32bitIndex = true;
1131
+
1132
+ this.tileMapPixiObject = new Tilemap.CompositeTilemap();
1133
+ this._pixiObject = this.tileMapPixiObject;
1134
+
1135
+ // Implement `containsPoint` so that we can set `interactive` to true and
1136
+ // the Tilemap will properly emit events when hovered/clicked.
1137
+ // By default, this is not implemented in pixi-tilemap.
1138
+ this._pixiObject.containsPoint = (position) => {
1139
+ // Turns the world position to the local object coordinates
1140
+ const localPosition = new PIXI.Point();
1141
+ this._pixiObject.worldTransform.applyInverse(position, localPosition);
1142
+
1143
+ return (
1144
+ localPosition.x >= 0 &&
1145
+ localPosition.x < this.width &&
1146
+ localPosition.y >= 0 &&
1147
+ localPosition.y < this.height
1148
+ );
1149
+ };
1150
+ this._pixiContainer.addChild(this._pixiObject);
1151
+ this.width = 48;
1152
+ this.height = 48;
1153
+ this.update();
1154
+ this.updateTileMap();
1155
+ }
1156
+
1157
+ RenderedTileMapInstance.prototype = Object.create(
1158
+ RenderedInstance.prototype
1159
+ );
1160
+
1161
+ RenderedTileMapInstance.prototype.onLoadingError = function () {
1162
+ this.errorPixiObject =
1163
+ this.errorPixiObject ||
1164
+ new PIXI.Sprite(this._pixiResourcesLoader.getInvalidPIXITexture());
1165
+ this._pixiContainer.addChild(this.errorPixiObject);
1166
+ this._pixiObject = this.errorPixiObject;
1167
+ };
1168
+
1169
+ RenderedTileMapInstance.prototype.onLoadingSuccess = function () {
1170
+ if (this.errorPixiObject) {
1171
+ this._pixiContainer.removeChild(this.errorPixiObject);
1172
+ this.errorPixiObject = null;
1173
+ this._pixiObject = this.tileMapPixiObject;
1174
+ }
1175
+ };
1176
+
1177
+ /**
1178
+ * Return the path to the thumbnail of the specified object.
1179
+ */
1180
+ RenderedTileMapInstance.getThumbnail = function (
1181
+ project,
1182
+ resourcesLoader,
1183
+ objectConfiguration
1184
+ ) {
1185
+ return 'JsPlatform/Extensions/tile_map.svg';
1186
+ };
1187
+
1188
+ /**
1189
+ * This is used to reload the Tilemap
1190
+ */
1191
+ RenderedTileMapInstance.prototype.updateTileMap = function () {
1192
+ // Get the tileset resource to use
1193
+ const tilemapAtlasImage = this._associatedObjectConfiguration
1194
+ .getProperties(this.project)
1195
+ .get('tilemapAtlasImage')
1196
+ .getValue();
1197
+ const tilemapJsonFile = this._associatedObjectConfiguration
1198
+ .getProperties(this.project)
1199
+ .get('tilemapJsonFile')
1200
+ .getValue();
1201
+ const tilesetJsonFile = this._associatedObjectConfiguration
1202
+ .getProperties(this.project)
1203
+ .get('tilesetJsonFile')
1204
+ .getValue();
1205
+ const layerIndex = parseInt(
1206
+ this._associatedObjectConfiguration
1207
+ .getProperties(this.project)
1208
+ .get('layerIndex')
1209
+ .getValue(),
1210
+ 10
1211
+ );
1212
+ const levelIndex = parseInt(
1213
+ this._associatedObjectConfiguration
1214
+ .getProperties(this.project)
1215
+ .get('levelIndex')
1216
+ .getValue(),
1217
+ 10
1218
+ );
1219
+ const displayMode = this._associatedObjectConfiguration
1220
+ .getProperties(this.project)
1221
+ .get('displayMode')
1222
+ .getValue();
1223
+
1224
+ const tilemapResource = this._project
1225
+ .getResourcesManager()
1226
+ .getResource(tilemapJsonFile);
1227
+
1228
+ let metadata = {};
1229
+ try {
1230
+ const tilemapMetadataAsString = tilemapResource.getMetadata();
1231
+ if (tilemapMetadataAsString)
1232
+ metadata = JSON.parse(tilemapMetadataAsString);
1233
+ } catch (error) {
1234
+ console.warn('Malformed metadata in a tilemap object:', error);
1235
+ }
1236
+ const mapping = metadata.embeddedResourcesMapping || {};
1237
+
1238
+ const atlasTexture = this._pixiResourcesLoader.getPIXITexture(
1239
+ this._project,
1240
+ tilemapAtlasImage
1241
+ );
1242
+
1243
+ const loadTileMap = () => {
1244
+ /** @type {TileMapHelper.TileMapManager} */
1245
+ const manager = TilemapHelper.TileMapManager.getManager(this._project);
1246
+ manager.getOrLoadTileMap(
1247
+ this._loadTileMapWithCallback.bind(this),
1248
+ tilemapJsonFile,
1249
+ tilesetJsonFile,
1250
+ levelIndex,
1251
+ pako,
1252
+ (tileMap) => {
1253
+ if (!tileMap) {
1254
+ this.onLoadingError();
1255
+ // _loadTileMapWithCallback already log errors
1256
+ return;
1257
+ }
1258
+
1259
+ /** @type {TileMapHelper.TileTextureCache} */
1260
+ const textureCache = manager.getOrLoadTextureCache(
1261
+ this._loadTileMapWithCallback.bind(this),
1262
+ (textureName) =>
1263
+ this._pixiResourcesLoader.getPIXITexture(
1264
+ this._project,
1265
+ mapping[textureName] || textureName
1266
+ ),
1267
+ tilemapAtlasImage,
1268
+ tilemapJsonFile,
1269
+ tilesetJsonFile,
1270
+ levelIndex,
1271
+ (textureCache) => {
1272
+ if (!textureCache) {
1273
+ this.onLoadingError();
1274
+ // getOrLoadTextureCache already log warns and errors.
1275
+ return;
1276
+ }
1277
+ this.onLoadingSuccess();
1278
+
1279
+ this.width = tileMap.getWidth();
1280
+ this.height = tileMap.getHeight();
1281
+ TilemapHelper.PixiTileMapHelper.updatePixiTileMap(
1282
+ this.tileMapPixiObject,
1283
+ tileMap,
1284
+ textureCache,
1285
+ displayMode,
1286
+ layerIndex
1287
+ );
1288
+ }
1289
+ );
1290
+ }
1291
+ );
1292
+ };
1293
+
1294
+ if (atlasTexture.valid) {
1295
+ loadTileMap();
1296
+ } else {
1297
+ // Wait for the atlas image to load.
1298
+ atlasTexture.once('update', () => {
1299
+ loadTileMap();
1300
+ });
1301
+ }
1302
+ };
1303
+
1304
+ // GDJS doesn't use Promise to avoid allocation.
1305
+ RenderedTileMapInstance.prototype._loadTileMapWithCallback = function (
1306
+ tilemapJsonFile,
1307
+ tilesetJsonFile,
1308
+ callback
1309
+ ) {
1310
+ this._loadTileMap(tilemapJsonFile, tilesetJsonFile).then(callback);
1311
+ };
1312
+
1313
+ RenderedTileMapInstance.prototype._loadTileMap = async function (
1314
+ tilemapJsonFile,
1315
+ tilesetJsonFile
1316
+ ) {
1317
+ try {
1318
+ const tileMapJsonData = await this._pixiResourcesLoader.getResourceJsonData(
1319
+ this._project,
1320
+ tilemapJsonFile
1321
+ );
1322
+
1323
+ const tileMap = TilemapHelper.TileMapManager.identify(tileMapJsonData);
1324
+
1325
+ if (tileMap.kind === 'tiled') {
1326
+ const tilesetJsonData = tilesetJsonFile
1327
+ ? await this._pixiResourcesLoader.getResourceJsonData(
1328
+ this._project,
1329
+ tilesetJsonFile
1330
+ )
1331
+ : null;
1332
+
1333
+ if (tilesetJsonData) {
1334
+ tileMapJsonData.tilesets = [tilesetJsonData];
1335
+ }
1336
+ }
1337
+
1338
+ return tileMap;
1339
+ } catch (err) {
1340
+ console.error('Unable to load a Tilemap JSON data: ', err);
1341
+ }
1342
+ return null;
1343
+ };
1344
+
1345
+ /**
1346
+ * This is called to update the PIXI object on the scene editor
1347
+ */
1348
+ RenderedTileMapInstance.prototype.update = function () {
1349
+ if (this._instance.hasCustomSize()) {
1350
+ this._pixiObject.scale.x = this.getCustomWidth() / this.width;
1351
+ this._pixiObject.scale.y =
1352
+ this.getCustomHeight() / this.height;
1353
+ } else {
1354
+ this._pixiObject.scale.x = 1;
1355
+ this._pixiObject.scale.y = 1;
1356
+ }
1357
+
1358
+ // Place the center of rotation in the center of the object. Because pivot position in Pixi
1359
+ // is in the **local coordinates of the object**, we need to find back the original width
1360
+ // and height of the object before scaling (then divide by 2 to find the center)
1361
+ const originalWidth = this.width;
1362
+ const originalHeight = this.height;
1363
+ this._pixiObject.pivot.x = originalWidth / 2;
1364
+ this._pixiObject.pivot.y = originalHeight / 2;
1365
+
1366
+ // Modifying the pivot position also has an impact on the transform. The instance (X,Y) position
1367
+ // of this object refers to the top-left point, but now in Pixi, as we changed the pivot, the Pixi
1368
+ // object (X,Y) position refers to the center. So we add an offset to convert from top-left to center.
1369
+ this._pixiObject.x =
1370
+ this._instance.getX() +
1371
+ this._pixiObject.pivot.x * this._pixiObject.scale.x;
1372
+ this._pixiObject.y =
1373
+ this._instance.getY() +
1374
+ this._pixiObject.pivot.y * this._pixiObject.scale.y;
1375
+
1376
+ // Rotation works as intended because we put the pivot in the center
1377
+ this._pixiObject.rotation = RenderedInstance.toRad(
1378
+ this._instance.getAngle()
1379
+ );
1380
+ };
1381
+
1382
+ /**
1383
+ * Return the width of the instance, when it's not resized.
1384
+ */
1385
+ RenderedTileMapInstance.prototype.getDefaultWidth = function () {
1386
+ return this.width;
1387
+ };
1388
+
1389
+ /**
1390
+ * Return the height of the instance, when it's not resized.
1391
+ */
1392
+ RenderedTileMapInstance.prototype.getDefaultHeight = function () {
1393
+ return this.height;
1394
+ };
1395
+
1396
+ objectsRenderingService.registerInstanceRenderer(
1397
+ 'TileMap::TileMap',
1398
+ RenderedTileMapInstance
1399
+ );
1400
+
1401
+ /**
1402
+ * Renderer for instances of TileMap inside the IDE.
1403
+ *
1404
+ * @extends RenderedInstance
1405
+ * @class RenderedTileMapInstance
1406
+ * @constructor
1407
+ */
1408
+ function RenderedCollisionMaskInstance(
1409
+ project,
1410
+ layout,
1411
+ instance,
1412
+ associatedObjectConfiguration,
1413
+ pixiContainer,
1414
+ pixiResourcesLoader
1415
+ ) {
1416
+ RenderedInstance.call(
1417
+ this,
1418
+ project,
1419
+ layout,
1420
+ instance,
1421
+ associatedObjectConfiguration,
1422
+ pixiContainer,
1423
+ pixiResourcesLoader
1424
+ );
1425
+
1426
+ this.tileMapPixiObject = new PIXI.Graphics();
1427
+ this._pixiObject = this.tileMapPixiObject;
1428
+
1429
+ // Implement `containsPoint` so that we can set `interactive` to true and
1430
+ // the Tilemap will properly emit events when hovered/clicked.
1431
+ // By default, this is not implemented in pixi-tilemap.
1432
+ this._pixiObject.containsPoint = (position) => {
1433
+ // Turns the world position to the local object coordinates
1434
+ const localPosition = new PIXI.Point();
1435
+ this._pixiObject.worldTransform.applyInverse(position, localPosition);
1436
+
1437
+ // Check if the point is inside the object bounds
1438
+ return (
1439
+ localPosition.x >= 0 &&
1440
+ localPosition.x < this.width &&
1441
+ localPosition.y >= 0 &&
1442
+ localPosition.y < this.height
1443
+ );
1444
+ };
1445
+ this._pixiContainer.addChild(this._pixiObject);
1446
+ this.width = 48;
1447
+ this.height = 48;
1448
+ this.update();
1449
+ this.updateTileMap();
1450
+ }
1451
+
1452
+ RenderedCollisionMaskInstance.prototype = Object.create(
1453
+ RenderedInstance.prototype
1454
+ );
1455
+
1456
+ RenderedCollisionMaskInstance.prototype.onLoadingError = function () {
1457
+ this.errorPixiObject =
1458
+ this.errorPixiObject ||
1459
+ new PIXI.Sprite(this._pixiResourcesLoader.getInvalidPIXITexture());
1460
+ this._pixiContainer.addChild(this.errorPixiObject);
1461
+ this._pixiObject = this.errorPixiObject;
1462
+ };
1463
+
1464
+ RenderedCollisionMaskInstance.prototype.onLoadingSuccess = function () {
1465
+ if (this.errorPixiObject) {
1466
+ this._pixiContainer.removeChild(this.errorPixiObject);
1467
+ this.errorPixiObject = null;
1468
+ this._pixiObject = this.tileMapPixiObject;
1469
+ }
1470
+ };
1471
+
1472
+ /**
1473
+ * Return the path to the thumbnail of the specified object.
1474
+ */
1475
+ RenderedCollisionMaskInstance.getThumbnail = function (
1476
+ project,
1477
+ resourcesLoader,
1478
+ objectConfiguration
1479
+ ) {
1480
+ return 'JsPlatform/Extensions/tile_map_collision_mask24.svg';
1481
+ };
1482
+
1483
+ /**
1484
+ * This is used to reload the Tilemap
1485
+ */
1486
+ RenderedCollisionMaskInstance.prototype.updateTileMap = function () {
1487
+ // Get the tileset resource to use
1488
+ const tilemapAtlasImage = this._associatedObjectConfiguration
1489
+ .getProperties(this.project)
1490
+ .get('tilemapAtlasImage')
1491
+ .getValue();
1492
+ const tilemapJsonFile = this._associatedObjectConfiguration
1493
+ .getProperties(this.project)
1494
+ .get('tilemapJsonFile')
1495
+ .getValue();
1496
+ const tilesetJsonFile = this._associatedObjectConfiguration
1497
+ .getProperties(this.project)
1498
+ .get('tilesetJsonFile')
1499
+ .getValue();
1500
+ const collisionMaskTag = this._associatedObjectConfiguration
1501
+ .getProperties(this.project)
1502
+ .get('collisionMaskTag')
1503
+ .getValue();
1504
+ const outlineColor = objectsRenderingService.rgbOrHexToHexNumber(
1505
+ this._associatedObjectConfiguration
1506
+ .getProperties(this.project)
1507
+ .get('outlineColor')
1508
+ .getValue()
1509
+ );
1510
+ const fillColor = objectsRenderingService.rgbOrHexToHexNumber(
1511
+ this._associatedObjectConfiguration
1512
+ .getProperties(this.project)
1513
+ .get('fillColor')
1514
+ .getValue()
1515
+ );
1516
+ const outlineOpacity =
1517
+ this._associatedObjectConfiguration
1518
+ .getProperties(this.project)
1519
+ .get('outlineOpacity')
1520
+ .getValue() / 255;
1521
+ const fillOpacity =
1522
+ this._associatedObjectConfiguration
1523
+ .getProperties(this.project)
1524
+ .get('fillOpacity')
1525
+ .getValue() / 255;
1526
+ const outlineSize = 1;
1527
+
1528
+ /** @type {TileMapHelper.TileMapManager} */
1529
+ const manager = TilemapHelper.TileMapManager.getManager(this._project);
1530
+ manager.getOrLoadTileMap(
1531
+ this._loadTiledMapWithCallback.bind(this),
1532
+ tilemapJsonFile,
1533
+ tilesetJsonFile,
1534
+ 0, // levelIndex
1535
+ pako,
1536
+ (tileMap) => {
1537
+ if (!tileMap) {
1538
+ this.onLoadingError();
1539
+ // _loadTiledMapWithCallback already log errors
1540
+ return;
1541
+ }
1542
+ this.onLoadingSuccess();
1543
+
1544
+ this.width = tileMap.getWidth();
1545
+ this.height = tileMap.getHeight();
1546
+ TilemapHelper.PixiTileMapHelper.updatePixiCollisionMask(
1547
+ this._pixiObject,
1548
+ tileMap,
1549
+ collisionMaskTag,
1550
+ outlineSize,
1551
+ outlineColor,
1552
+ outlineOpacity,
1553
+ fillColor,
1554
+ fillOpacity
1555
+ );
1556
+ }
1557
+ );
1558
+ };
1559
+
1560
+ // GDJS doesn't use Promise to avoid allocation.
1561
+ RenderedCollisionMaskInstance.prototype._loadTiledMapWithCallback =
1562
+ function (tilemapJsonFile, tilesetJsonFile, callback) {
1563
+ this._loadTileMap(tilemapJsonFile, tilesetJsonFile).then(callback);
1564
+ };
1565
+
1566
+ RenderedCollisionMaskInstance.prototype._loadTileMap = async function (
1567
+ tilemapJsonFile,
1568
+ tilesetJsonFile
1569
+ ) {
1570
+ try {
1571
+ const tileMapJsonData = await this._pixiResourcesLoader.getResourceJsonData(
1572
+ this._project,
1573
+ tilemapJsonFile
1574
+ );
1575
+
1576
+ const tileMap = TilemapHelper.TileMapManager.identify(tileMapJsonData);
1577
+
1578
+ if (tileMap.kind === 'tiled') {
1579
+ const tilesetJsonData = tilesetJsonFile
1580
+ ? await this._pixiResourcesLoader.getResourceJsonData(
1581
+ this._project,
1582
+ tilesetJsonFile
1583
+ )
1584
+ : null;
1585
+
1586
+ if (tilesetJsonData) {
1587
+ tileMapJsonData.tilesets = [tilesetJsonData];
1588
+ }
1589
+ }
1590
+ return tileMap;
1591
+ } catch (err) {
1592
+ console.error('Unable to load a Tilemap JSON data: ', err);
1593
+ }
1594
+ return null;
1595
+ };
1596
+
1597
+ /**
1598
+ * This is called to update the PIXI object on the scene editor
1599
+ */
1600
+ RenderedCollisionMaskInstance.prototype.update = function () {
1601
+ if (this._instance.hasCustomSize()) {
1602
+ this._pixiObject.scale.x = this.getCustomWidth() / this.width;
1603
+ this._pixiObject.scale.y =
1604
+ this.getCustomHeight() / this.height;
1605
+ } else {
1606
+ this._pixiObject.scale.x = 1;
1607
+ this._pixiObject.scale.y = 1;
1608
+ }
1609
+
1610
+ // Place the center of rotation in the center of the object. Because pivot position in Pixi
1611
+ // is in the **local coordinates of the object**, we need to find back the original width
1612
+ // and height of the object before scaling (then divide by 2 to find the center)
1613
+ const originalWidth = this.width;
1614
+ const originalHeight = this.height;
1615
+ this._pixiObject.pivot.x = originalWidth / 2;
1616
+ this._pixiObject.pivot.y = originalHeight / 2;
1617
+
1618
+ // Modifying the pivot position also has an impact on the transform. The instance (X,Y) position
1619
+ // of this object refers to the top-left point, but now in Pixi, as we changed the pivot, the Pixi
1620
+ // object (X,Y) position refers to the center. So we add an offset to convert from top-left to center.
1621
+ this._pixiObject.x =
1622
+ this._instance.getX() +
1623
+ this._pixiObject.pivot.x * this._pixiObject.scale.x;
1624
+ this._pixiObject.y =
1625
+ this._instance.getY() +
1626
+ this._pixiObject.pivot.y * this._pixiObject.scale.y;
1627
+
1628
+ // Rotation works as intended because we put the pivot in the center
1629
+ this._pixiObject.rotation = RenderedInstance.toRad(
1630
+ this._instance.getAngle()
1631
+ );
1632
+ };
1633
+
1634
+ /**
1635
+ * Return the width of the instance, when it's not resized.
1636
+ */
1637
+ RenderedCollisionMaskInstance.prototype.getDefaultWidth = function () {
1638
+ return this.width;
1639
+ };
1640
+
1641
+ /**
1642
+ * Return the height of the instance, when it's not resized.
1643
+ */
1644
+ RenderedCollisionMaskInstance.prototype.getDefaultHeight = function () {
1645
+ return this.height;
1646
+ };
1647
+
1648
+ objectsRenderingService.registerInstanceRenderer(
1649
+ 'TileMap::CollisionMask',
1650
+ RenderedCollisionMaskInstance
1651
+ );
1652
+ },
1653
+ };