gdcore-tools 1.0.6 → 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 (601) 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/downloadGD.js +0 -70
  580. package/src/index.js +21 -14
  581. package/examples/create-objects-from-json/assets/Blank button.png +0 -0
  582. package/examples/create-objects-from-json/game.json +0 -258
  583. package/examples/create-objects-from-json/index.js +0 -50
  584. package/examples/create-objects-from-json/mylist.json +0 -7
  585. package/examples/export-game/game.json +0 -205
  586. package/examples/export-game/index.js +0 -13
  587. package/src/CaseSensitiveSlug.js +0 -34
  588. package/src/EventsFunctionsExtensionsLoader/LocalEventsFunctionCodeWriter.js +0 -56
  589. package/src/EventsFunctionsExtensionsLoader/MetadataDeclarationHelpers.js +0 -489
  590. package/src/EventsFunctionsExtensionsLoader/index.js +0 -451
  591. package/src/JsExtensionsLoader/LocalJsExtensionsFinder.js +0 -42
  592. package/src/JsExtensionsLoader/LocalJsExtensionsLoader.js +0 -57
  593. package/src/JsExtensionsLoader/index.js +0 -101
  594. package/src/LocalFileSystem.js +0 -158
  595. package/src/LocalProjectOpener.js +0 -46
  596. package/src/LocalProjectWriter.js +0 -96
  597. package/src/MapFor.js +0 -46
  598. package/src/ObjectSplitter.js +0 -187
  599. package/src/Serializer.js +0 -35
  600. package/src/build.js +0 -51
  601. package/src/runtime-files-list.js +0 -143
@@ -0,0 +1,4072 @@
1
+ // @flow
2
+ /**
3
+ * This is a declaration of an extension for GDevelop 5.
4
+ *
5
+ * ℹ️ Changes in this file are watched and automatically imported if the editor
6
+ * is running. You can also manually run `node import-GDJS-Runtime.js` (in newIDE/app/scripts).
7
+ *
8
+ * The file must be named "JsExtension.js", otherwise GDevelop won't load it.
9
+ * ⚠️ If you make a change and the extension is not loaded, open the developer console
10
+ * and search for any errors.
11
+ *
12
+ * More information on https://github.com/4ian/GDevelop/blob/master/newIDE/README-extensions.md
13
+ */
14
+
15
+ /*::
16
+ // Import types to allow Flow to do static type checking on this file.
17
+ // Extensions declaration are typed using Flow (like the editor), but the files
18
+ // for the game engine are checked with TypeScript annotations.
19
+ import { type ObjectsRenderingService, type ObjectsEditorService } from '../JsExtensionTypes.flow.js'
20
+ */
21
+
22
+ module.exports = {
23
+ createExtension: function (
24
+ _ /*: (string) => string */,
25
+ gd /*: libGDevelop */
26
+ ) {
27
+ const extension = new gd.PlatformExtension();
28
+ extension
29
+ .setExtensionInformation(
30
+ 'Physics2',
31
+ _('Physics Engine 2.0'),
32
+ "The physics engine simulates realistic object physics, with gravity, forces, joints, etc. It's perfect for games that need to have realistic behaving objects and a gameplay centered around it.",
33
+ 'Florian Rival, Franco Maciel',
34
+ 'MIT'
35
+ )
36
+ .setExtensionHelpPath('/behaviors/physics2')
37
+ .setCategory('Movement');
38
+ extension
39
+ .addInstructionOrExpressionGroupMetadata(_('Physics Engine 2.0'))
40
+ .setIcon('res/physics32.png');
41
+
42
+ var physics2Behavior = new gd.BehaviorJsImplementation();
43
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
44
+ physics2Behavior.updateProperty = function (
45
+ behaviorContent,
46
+ propertyName,
47
+ newValue
48
+ ) {
49
+ if (propertyName === 'bodyType') {
50
+ behaviorContent.getChild('bodyType').setStringValue(newValue);
51
+ return true;
52
+ }
53
+ if (propertyName === 'bullet') {
54
+ behaviorContent.getChild('bullet').setBoolValue(newValue === '1');
55
+ return true;
56
+ }
57
+ if (propertyName === 'fixedRotation') {
58
+ behaviorContent
59
+ .getChild('fixedRotation')
60
+ .setBoolValue(newValue === '1');
61
+ return true;
62
+ }
63
+ if (propertyName === 'canSleep') {
64
+ behaviorContent.getChild('canSleep').setBoolValue(newValue === '1');
65
+ return true;
66
+ }
67
+ if (propertyName === 'shape') {
68
+ behaviorContent.getChild('shape').setStringValue(newValue);
69
+ return true;
70
+ }
71
+ if (propertyName === 'shapeDimensionA') {
72
+ newValue = parseFloat(newValue);
73
+ if (newValue !== newValue) return false;
74
+ behaviorContent.getChild('shapeDimensionA').setDoubleValue(newValue);
75
+ return true;
76
+ }
77
+ if (propertyName === 'shapeDimensionB') {
78
+ newValue = parseFloat(newValue);
79
+ if (newValue !== newValue) return false;
80
+ behaviorContent.getChild('shapeDimensionB').setDoubleValue(newValue);
81
+ return true;
82
+ }
83
+ if (propertyName === 'shapeOffsetX') {
84
+ newValue = parseFloat(newValue);
85
+ if (newValue !== newValue) return false;
86
+ behaviorContent.getChild('shapeOffsetX').setDoubleValue(newValue);
87
+ return true;
88
+ }
89
+ if (propertyName === 'shapeOffsetY') {
90
+ newValue = parseFloat(newValue);
91
+ if (newValue !== newValue) return false;
92
+ behaviorContent.getChild('shapeOffsetY').setDoubleValue(newValue);
93
+ return true;
94
+ }
95
+ if (propertyName === 'polygonOrigin') {
96
+ behaviorContent.addChild('polygonOrigin').setStringValue(newValue);
97
+ return true;
98
+ }
99
+ if (propertyName === 'vertices') {
100
+ behaviorContent.addChild('vertices');
101
+ // $FlowFixMe
102
+ behaviorContent.setChild('vertices', gd.Serializer.fromJSON(newValue));
103
+ return true;
104
+ }
105
+ if (propertyName === 'density') {
106
+ behaviorContent
107
+ .getChild('density')
108
+ .setDoubleValue(parseFloat(newValue));
109
+ return true;
110
+ }
111
+ if (propertyName === 'friction') {
112
+ newValue = parseFloat(newValue);
113
+ if (newValue !== newValue) return false;
114
+ behaviorContent.getChild('friction').setDoubleValue(newValue);
115
+ return true;
116
+ }
117
+ if (propertyName === 'restitution') {
118
+ newValue = parseFloat(newValue);
119
+ if (newValue !== newValue) return false;
120
+ behaviorContent.getChild('restitution').setDoubleValue(newValue);
121
+ return true;
122
+ }
123
+ if (propertyName === 'linearDamping') {
124
+ newValue = parseFloat(newValue);
125
+ if (newValue !== newValue) return false;
126
+ behaviorContent.getChild('linearDamping').setDoubleValue(newValue);
127
+ return true;
128
+ }
129
+ if (propertyName === 'angularDamping') {
130
+ newValue = parseFloat(newValue);
131
+ if (newValue !== newValue) return false;
132
+ behaviorContent.getChild('angularDamping').setDoubleValue(newValue);
133
+ return true;
134
+ }
135
+ if (propertyName === 'gravityScale') {
136
+ newValue = parseFloat(newValue);
137
+ if (newValue !== newValue) return false;
138
+ behaviorContent.getChild('gravityScale').setDoubleValue(newValue);
139
+ return true;
140
+ }
141
+ if (propertyName === 'layers') {
142
+ behaviorContent.getChild('layers').setIntValue(parseInt(newValue, 10));
143
+ return true;
144
+ }
145
+ if (propertyName === 'masks') {
146
+ behaviorContent.getChild('masks').setIntValue(parseInt(newValue, 10));
147
+ return true;
148
+ }
149
+ };
150
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
151
+ physics2Behavior.getProperties = function (behaviorContent) {
152
+ var behaviorProperties = new gd.MapStringPropertyDescriptor();
153
+
154
+ behaviorProperties
155
+ .getOrCreate('bodyType')
156
+ .setValue(behaviorContent.getChild('bodyType').getStringValue())
157
+ .setType('Choice')
158
+ .setLabel('Type')
159
+ .addExtraInfo('Static')
160
+ .addExtraInfo('Dynamic')
161
+ .addExtraInfo('Kinematic');
162
+ behaviorProperties
163
+ .getOrCreate('bullet')
164
+ .setValue(
165
+ behaviorContent.getChild('bullet').getBoolValue() ? 'true' : 'false'
166
+ )
167
+ .setType('Boolean')
168
+ .setLabel('Bullet');
169
+ behaviorProperties
170
+ .getOrCreate('fixedRotation')
171
+ .setValue(
172
+ behaviorContent.getChild('fixedRotation').getBoolValue()
173
+ ? 'true'
174
+ : 'false'
175
+ )
176
+ .setType('Boolean')
177
+ .setLabel('Fixed Rotation');
178
+ behaviorProperties
179
+ .getOrCreate('canSleep')
180
+ .setValue(
181
+ behaviorContent.getChild('canSleep').getBoolValue() ? 'true' : 'false'
182
+ )
183
+ .setType('Boolean')
184
+ .setLabel('Can Sleep');
185
+ behaviorProperties
186
+ .getOrCreate('shape')
187
+ .setValue(behaviorContent.getChild('shape').getStringValue())
188
+ .setType('Choice')
189
+ .setLabel('Shape')
190
+ .addExtraInfo('Box')
191
+ .addExtraInfo('Circle')
192
+ .addExtraInfo('Edge')
193
+ .addExtraInfo('Polygon');
194
+ behaviorProperties
195
+ .getOrCreate('shapeDimensionA')
196
+ .setValue(
197
+ behaviorContent
198
+ .getChild('shapeDimensionA')
199
+ .getDoubleValue()
200
+ .toString(10)
201
+ )
202
+ .setType('Number')
203
+ .setMeasurementUnit(gd.MeasurementUnit.getPixel())
204
+ .setLabel('Shape Dimension A');
205
+ behaviorProperties
206
+ .getOrCreate('shapeDimensionB')
207
+ .setValue(
208
+ behaviorContent
209
+ .getChild('shapeDimensionB')
210
+ .getDoubleValue()
211
+ .toString(10)
212
+ )
213
+ .setType('Number')
214
+ .setMeasurementUnit(gd.MeasurementUnit.getPixel())
215
+ .setLabel('Shape Dimension B');
216
+ behaviorProperties
217
+ .getOrCreate('shapeOffsetX')
218
+ .setValue(
219
+ behaviorContent.getChild('shapeOffsetX').getDoubleValue().toString(10)
220
+ )
221
+ .setType('Number')
222
+ .setMeasurementUnit(gd.MeasurementUnit.getPixel())
223
+ .setLabel('Shape Offset X');
224
+ behaviorProperties
225
+ .getOrCreate('shapeOffsetY')
226
+ .setValue(
227
+ behaviorContent.getChild('shapeOffsetY').getDoubleValue().toString(10)
228
+ )
229
+ .setType('Number')
230
+ .setMeasurementUnit(gd.MeasurementUnit.getPixel())
231
+ .setLabel('Shape Offset Y');
232
+ behaviorProperties
233
+ .getOrCreate('polygonOrigin')
234
+ .setValue(
235
+ behaviorContent.hasChild('polygonOrigin')
236
+ ? behaviorContent.getChild('polygonOrigin').getStringValue()
237
+ : 'Center'
238
+ )
239
+ .setType('Choice')
240
+ .setLabel('Polygon Origin')
241
+ .addExtraInfo('Center')
242
+ .addExtraInfo('Origin')
243
+ .addExtraInfo('TopLeft');
244
+ behaviorProperties
245
+ .getOrCreate('vertices')
246
+ .setValue(
247
+ behaviorContent.hasChild('vertices')
248
+ ? gd.Serializer.toJSON(behaviorContent.getChild('vertices'))
249
+ : '[]'
250
+ )
251
+ .setLabel('Vertices');
252
+ behaviorProperties
253
+ .getOrCreate('density')
254
+ .setValue(
255
+ behaviorContent.getChild('density').getDoubleValue().toString(10)
256
+ )
257
+ .setType('Number')
258
+ .setLabel('Density');
259
+ behaviorProperties
260
+ .getOrCreate('friction')
261
+ .setValue(
262
+ behaviorContent.getChild('friction').getDoubleValue().toString(10)
263
+ )
264
+ .setType('Number')
265
+ .setLabel('Friction');
266
+ behaviorProperties
267
+ .getOrCreate('restitution')
268
+ .setValue(
269
+ behaviorContent.getChild('restitution').getDoubleValue().toString(10)
270
+ )
271
+ .setType('Number')
272
+ .setLabel('Restitution');
273
+ behaviorProperties
274
+ .getOrCreate('linearDamping')
275
+ .setValue(
276
+ behaviorContent
277
+ .getChild('linearDamping')
278
+ .getDoubleValue()
279
+ .toString(10)
280
+ )
281
+ .setType('Number')
282
+ .setLabel('Linear Damping');
283
+ behaviorProperties
284
+ .getOrCreate('angularDamping')
285
+ .setValue(
286
+ behaviorContent
287
+ .getChild('angularDamping')
288
+ .getDoubleValue()
289
+ .toString(10)
290
+ )
291
+ .setType('Number')
292
+ .setLabel('Angular Damping');
293
+ behaviorProperties
294
+ .getOrCreate('gravityScale')
295
+ .setValue(
296
+ behaviorContent.getChild('gravityScale').getDoubleValue().toString(10)
297
+ )
298
+ .setType('Number')
299
+ .setLabel('Gravity Scale');
300
+ behaviorProperties
301
+ .getOrCreate('layers')
302
+ .setValue(behaviorContent.getChild('layers').getIntValue().toString(10))
303
+ .setType('Number')
304
+ .setLabel('Layers');
305
+ behaviorProperties
306
+ .getOrCreate('masks')
307
+ .setValue(behaviorContent.getChild('masks').getIntValue().toString(10))
308
+ .setType('Number')
309
+ .setLabel('Masks');
310
+
311
+ return behaviorProperties;
312
+ };
313
+
314
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
315
+ physics2Behavior.initializeContent = function (behaviorContent) {
316
+ behaviorContent.addChild('bodyType').setStringValue('Dynamic');
317
+ behaviorContent.addChild('bullet').setBoolValue(false);
318
+ behaviorContent.addChild('fixedRotation').setBoolValue(false);
319
+ behaviorContent.addChild('canSleep').setBoolValue(true);
320
+ behaviorContent.addChild('shape').setStringValue('Box');
321
+ behaviorContent.addChild('shapeDimensionA').setDoubleValue(0);
322
+ behaviorContent.addChild('shapeDimensionB').setDoubleValue(0);
323
+ behaviorContent.addChild('shapeOffsetX').setDoubleValue(0);
324
+ behaviorContent.addChild('shapeOffsetY').setDoubleValue(0);
325
+ behaviorContent.addChild('polygonOrigin').setStringValue('Center');
326
+ behaviorContent.addChild('vertices').considerAsArray();
327
+ behaviorContent.addChild('density').setDoubleValue(1.0);
328
+ behaviorContent.addChild('friction').setDoubleValue(0.3);
329
+ behaviorContent.addChild('restitution').setDoubleValue(0.1);
330
+ behaviorContent.addChild('linearDamping').setDoubleValue(0.1);
331
+ behaviorContent.addChild('angularDamping').setDoubleValue(0.1);
332
+ behaviorContent.addChild('gravityScale').setDoubleValue(1);
333
+ behaviorContent.addChild('layers').setIntValue(1);
334
+ behaviorContent.addChild('masks').setIntValue(1);
335
+ };
336
+
337
+ var sharedData = new gd.BehaviorSharedDataJsImplementation();
338
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
339
+ sharedData.updateProperty = function (
340
+ sharedContent,
341
+ propertyName,
342
+ newValue
343
+ ) {
344
+ if (propertyName === 'gravityX') {
345
+ newValue = parseFloat(newValue);
346
+ if (newValue !== newValue) return false;
347
+ sharedContent.getChild('gravityX').setDoubleValue(newValue);
348
+ return true;
349
+ }
350
+ if (propertyName === 'gravityY') {
351
+ newValue = parseFloat(newValue);
352
+ if (newValue !== newValue) return false;
353
+ sharedContent.getChild('gravityY').setDoubleValue(newValue);
354
+ return true;
355
+ }
356
+ if (propertyName === 'scaleX') {
357
+ newValue = parseInt(newValue, 10);
358
+ if (newValue !== newValue) return false;
359
+ sharedContent.getChild('scaleX').setDoubleValue(newValue);
360
+ return true;
361
+ }
362
+ if (propertyName === 'scaleY') {
363
+ newValue = parseInt(newValue, 10);
364
+ if (newValue !== newValue) return false;
365
+ sharedContent.getChild('scaleY').setDoubleValue(newValue);
366
+ return true;
367
+ }
368
+
369
+ return false;
370
+ };
371
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
372
+ sharedData.getProperties = function (sharedContent) {
373
+ var sharedProperties = new gd.MapStringPropertyDescriptor();
374
+
375
+ sharedProperties
376
+ .getOrCreate('gravityX')
377
+ .setValue(
378
+ sharedContent.getChild('gravityX').getDoubleValue().toString(10)
379
+ )
380
+ .setType('Number')
381
+ .setMeasurementUnit(gd.MeasurementUnit.getNewton());
382
+ sharedProperties
383
+ .getOrCreate('gravityY')
384
+ .setValue(
385
+ sharedContent.getChild('gravityY').getDoubleValue().toString(10)
386
+ )
387
+ .setType('Number')
388
+ .setMeasurementUnit(gd.MeasurementUnit.getNewton());
389
+ sharedProperties
390
+ .getOrCreate('scaleX')
391
+ .setValue(
392
+ sharedContent.getChild('scaleX').getDoubleValue().toString(10)
393
+ )
394
+ .setType('Number');
395
+ sharedProperties
396
+ .getOrCreate('scaleY')
397
+ .setValue(
398
+ sharedContent.getChild('scaleY').getDoubleValue().toString(10)
399
+ )
400
+ .setType('Number');
401
+
402
+ return sharedProperties;
403
+ };
404
+ // $FlowExpectedError - ignore Flow warning as we're creating a behavior
405
+ sharedData.initializeContent = function (behaviorContent) {
406
+ behaviorContent.addChild('gravityX').setDoubleValue(0);
407
+ behaviorContent.addChild('gravityY').setDoubleValue(9.8);
408
+ behaviorContent.addChild('scaleX').setDoubleValue(100);
409
+ behaviorContent.addChild('scaleY').setDoubleValue(100);
410
+ };
411
+
412
+ var aut = extension
413
+ // extension
414
+ .addBehavior(
415
+ 'Physics2Behavior',
416
+ _('Physics Engine 2.0'),
417
+ 'Physics2',
418
+ _(
419
+ 'Simulate realistic object physics with gravity, forces, joints, etc.'
420
+ ),
421
+ '',
422
+ 'res/physics32.png',
423
+ 'Physics2Behavior',
424
+ physics2Behavior,
425
+ sharedData
426
+ )
427
+ .setIncludeFile('Extensions/Physics2Behavior/physics2runtimebehavior.js')
428
+ .addIncludeFile('Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.js')
429
+ .addRequiredFile(
430
+ 'Extensions/Physics2Behavior/Box2D_v2.3.1_min.wasm.wasm'
431
+ );
432
+
433
+ // Global
434
+ aut
435
+ .addCondition(
436
+ 'GravityX',
437
+ _('World gravity on X axis'),
438
+ _('Compare the world gravity on X axis.'),
439
+ _('the world gravity on X axis'),
440
+ _('Global'),
441
+ 'res/physics32.png',
442
+ 'res/physics32.png'
443
+ )
444
+ .addParameter('object', _('Object'), '', false)
445
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
446
+ .useStandardRelationalOperatorParameters(
447
+ 'number',
448
+ gd.ParameterOptions.makeNewOptions().setDescription(
449
+ _('Gravity to compare to (in pixels per second per second)')
450
+ )
451
+ )
452
+ .getCodeExtraInformation()
453
+ .setFunctionName('getGravityX');
454
+
455
+ aut
456
+ .addExpression(
457
+ 'GravityX',
458
+ _('World gravity on X axis'),
459
+ _('World gravity on X axis'),
460
+ _('Global'),
461
+ 'res/physics32.png'
462
+ )
463
+ .addParameter('object', _('Object'), '', false)
464
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
465
+ .getCodeExtraInformation()
466
+ .setFunctionName('getGravityX');
467
+
468
+ aut
469
+ .addCondition(
470
+ 'GravityY',
471
+ _('World gravity on Y axis'),
472
+ _('Compare the world gravity on Y axis.'),
473
+ _('the world gravity on Y axis'),
474
+ _('Global'),
475
+ 'res/physics32.png',
476
+ 'res/physics32.png'
477
+ )
478
+ .addParameter('object', _('Object'), '', false)
479
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
480
+ .useStandardRelationalOperatorParameters(
481
+ 'number',
482
+ gd.ParameterOptions.makeNewOptions().setDescription(
483
+ _('Gravity to compare to (in pixels per second per second)')
484
+ )
485
+ )
486
+ .getCodeExtraInformation()
487
+ .setFunctionName('getGravityY');
488
+
489
+ aut
490
+ .addExpression(
491
+ 'GravityY',
492
+ _('World gravity on Y axis'),
493
+ _('World gravity on Y axis'),
494
+ _('Global'),
495
+ 'res/physics32.png'
496
+ )
497
+ .addParameter('object', _('Object'), '', false)
498
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
499
+ .getCodeExtraInformation()
500
+ .setFunctionName('getGravityY');
501
+
502
+ aut
503
+ .addAction(
504
+ 'Gravity',
505
+ _('World gravity'),
506
+ _('Modify the world gravity.') +
507
+ ' ' +
508
+ _(
509
+ 'While an object is needed, this will apply to all objects using the behavior.'
510
+ ),
511
+ _('Set the world gravity of _PARAM0_ to _PARAM2_;_PARAM3_'),
512
+ _('Global'),
513
+ 'res/physics32.png',
514
+ 'res/physics32.png'
515
+ )
516
+ .addParameter('object', _('Object'), '', false)
517
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
518
+ .addParameter('expression', _('Gravity X'))
519
+ .addParameter('expression', _('Gravity Y'))
520
+ .getCodeExtraInformation()
521
+ .setFunctionName('setGravity');
522
+
523
+ aut
524
+ .addCondition(
525
+ 'TimeScale',
526
+ _('World time scale'),
527
+ _('Compare the world time scale.'),
528
+ _('the world time scale'),
529
+ _('Global'),
530
+ 'res/physics32.png',
531
+ 'res/physics32.png'
532
+ )
533
+ .addParameter('object', _('Object'), '', false)
534
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
535
+ .useStandardRelationalOperatorParameters(
536
+ 'number',
537
+ gd.ParameterOptions.makeNewOptions().setDescription(
538
+ _('Time scale to compare to (1 by default)')
539
+ )
540
+ )
541
+ .getCodeExtraInformation()
542
+ .setFunctionName('getTimeScale');
543
+
544
+ // This action has to be owned by the extension to run only once per objects list, not per instance
545
+ extension
546
+ .addAction(
547
+ 'TimeScale',
548
+ _('World time scale'),
549
+ _('Modify the world time scale.') +
550
+ ' ' +
551
+ _(
552
+ 'While an object is needed, this will apply to all objects using the behavior.'
553
+ ),
554
+ _('Set the world time scale of _PARAM0_ to _PARAM2_'),
555
+ '',
556
+ 'res/physics32.png',
557
+ 'res/physics32.png'
558
+ )
559
+ .addParameter('objectList', _('Object'), '', false)
560
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
561
+ .addParameter('expression', _('Time scale (1 by default)'))
562
+ .getCodeExtraInformation()
563
+ .setIncludeFile('Extensions/Physics2Behavior/physics2tools.js')
564
+ .setFunctionName('gdjs.physics2.setTimeScale');
565
+
566
+ aut
567
+ .addExpression(
568
+ 'TimeScale',
569
+ _('World time scale'),
570
+ _('World time scale'),
571
+ _('Global'),
572
+ 'res/physics32.png'
573
+ )
574
+ .addParameter('object', _('Object'), '', false)
575
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
576
+ .getCodeExtraInformation()
577
+ .setFunctionName('getTimeScale');
578
+
579
+ // Dynamics
580
+ aut
581
+ .addCondition(
582
+ 'IsDynamic',
583
+ _('Is dynamic'),
584
+ _('Test if an object is dynamic.'),
585
+ _('_PARAM0_ is dynamic'),
586
+ _('Dynamics'),
587
+ 'res/physics32.png',
588
+ 'res/physics32.png'
589
+ )
590
+ .addParameter('object', _('Object'), '', false)
591
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
592
+ .getCodeExtraInformation()
593
+ .setFunctionName('isDynamic');
594
+
595
+ aut
596
+ .addAction(
597
+ 'SetDynamic',
598
+ _('Set as dynamic'),
599
+ _(
600
+ 'Set an object as dynamic. Is affected by gravity, forces and velocities.'
601
+ ),
602
+ _('Set _PARAM0_ as dynamic'),
603
+ _('Dynamics'),
604
+ 'res/physics32.png',
605
+ 'res/physics32.png'
606
+ )
607
+ .addParameter('object', _('Object'), '', false)
608
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
609
+ .getCodeExtraInformation()
610
+ .setFunctionName('setDynamic');
611
+
612
+ aut
613
+ .addCondition(
614
+ 'IsStatic',
615
+ _('Is static'),
616
+ _('Test if an object is static.'),
617
+ _('_PARAM0_ is static'),
618
+ _('Dynamics'),
619
+ 'res/physics32.png',
620
+ 'res/physics32.png'
621
+ )
622
+ .addParameter('object', _('Object'), '', false)
623
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
624
+ .getCodeExtraInformation()
625
+ .setFunctionName('isStatic');
626
+
627
+ aut
628
+ .addAction(
629
+ 'SetStatic',
630
+ _('Set as static'),
631
+ _(
632
+ "Set an object as static. Is not affected by gravity, and can't be moved by forces or velocities at all."
633
+ ),
634
+ _('Set _PARAM0_ as static'),
635
+ _('Dynamics'),
636
+ 'res/physics32.png',
637
+ 'res/physics32.png'
638
+ )
639
+ .addParameter('object', _('Object'), '', false)
640
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
641
+ .getCodeExtraInformation()
642
+ .setFunctionName('setStatic');
643
+
644
+ aut
645
+ .addCondition(
646
+ 'IsKinematic',
647
+ _('Is kinematic'),
648
+ _('Test if an object is kinematic.'),
649
+ _('_PARAM0_ is kinematic'),
650
+ _('Dynamics'),
651
+ 'res/physics32.png',
652
+ 'res/physics32.png'
653
+ )
654
+ .addParameter('object', _('Object'), '', false)
655
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
656
+ .getCodeExtraInformation()
657
+ .setFunctionName('isKinematic');
658
+
659
+ aut
660
+ .addAction(
661
+ 'SetKinematic',
662
+ _('Set as kinematic'),
663
+ _(
664
+ 'Set an object as kinematic. Is like a static body but can be moved through its velocity.'
665
+ ),
666
+ _('Set _PARAM0_ as kinematic'),
667
+ _('Dynamics'),
668
+ 'res/physics32.png',
669
+ 'res/physics32.png'
670
+ )
671
+ .addParameter('object', _('Object'), '', false)
672
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
673
+ .getCodeExtraInformation()
674
+ .setFunctionName('setKinematic');
675
+
676
+ aut
677
+ .addCondition(
678
+ 'IsBullet',
679
+ _('Is treat as bullet'),
680
+ _('Test if an object is being treat as a bullet.'),
681
+ _('_PARAM0_ is bullet'),
682
+ _('Dynamics'),
683
+ 'res/physics32.png',
684
+ 'res/physics32.png'
685
+ )
686
+ .addParameter('object', _('Object'), '', false)
687
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
688
+ .getCodeExtraInformation()
689
+ .setFunctionName('isBullet');
690
+
691
+ aut
692
+ .addAction(
693
+ 'SetBullet',
694
+ _('Treat as bullet'),
695
+ _(
696
+ 'Treat the object as a bullet. Better collision handling on high speeds at cost of some performance.'
697
+ ),
698
+ _('Treat _PARAM0_ as bullet: _PARAM2_'),
699
+ _('Dynamics'),
700
+ 'res/physics32.png',
701
+ 'res/physics32.png'
702
+ )
703
+ .addParameter('object', _('Object'), '', false)
704
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
705
+ .addParameter('yesorno', _('Treat as bullet?'), '', false)
706
+ .setDefaultValue('false')
707
+ .getCodeExtraInformation()
708
+ .setFunctionName('setBullet');
709
+
710
+ aut
711
+ .addCondition(
712
+ 'HasFixedRotation',
713
+ _('Has fixed rotation'),
714
+ _('Test if an object has fixed rotation.'),
715
+ _('_PARAM0_ has fixed rotation'),
716
+ _('Dynamics'),
717
+ 'res/physics32.png',
718
+ 'res/physics32.png'
719
+ )
720
+ .addParameter('object', _('Object'), '', false)
721
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
722
+ .getCodeExtraInformation()
723
+ .setFunctionName('hasFixedRotation');
724
+
725
+ aut
726
+ .addAction(
727
+ 'SetFixedRotation',
728
+ _('Fixed rotation'),
729
+ _(
730
+ "Enable or disable an object fixed rotation. If enabled the object won't be able to rotate."
731
+ ),
732
+ _('Set _PARAM0_ fixed rotation: _PARAM2_'),
733
+ _('Dynamics'),
734
+ 'res/physics32.png',
735
+ 'res/physics32.png'
736
+ )
737
+ .addParameter('object', _('Object'), '', false)
738
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
739
+ .addParameter('yesorno', _('Fixed rotation?'), '', false)
740
+ .setDefaultValue('false')
741
+ .getCodeExtraInformation()
742
+ .setFunctionName('setFixedRotation');
743
+
744
+ aut
745
+ .addCondition(
746
+ 'IsSleepingAllowed',
747
+ _('Is sleeping allowed'),
748
+ _('Test if an object can sleep.'),
749
+ _('_PARAM0_ can sleep'),
750
+ _('Dynamics'),
751
+ 'res/physics32.png',
752
+ 'res/physics32.png'
753
+ )
754
+ .addParameter('object', _('Object'), '', false)
755
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
756
+ .getCodeExtraInformation()
757
+ .setFunctionName('isSleepingAllowed');
758
+
759
+ aut
760
+ .addAction(
761
+ 'SetSleepingAllowed',
762
+ _('Sleeping allowed'),
763
+ _(
764
+ 'Allow or not an object to sleep. If enabled the object will be able to sleep, improving performance for non-currently-moving objects.'
765
+ ),
766
+ _('Allow _PARAM0_ to sleep: _PARAM2_'),
767
+ _('Dynamics'),
768
+ 'res/physics32.png',
769
+ 'res/physics32.png'
770
+ )
771
+ .addParameter('object', _('Object'), '', false)
772
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
773
+ .addParameter('yesorno', _('Can sleep?'), '', false)
774
+ .setDefaultValue('true')
775
+ .getCodeExtraInformation()
776
+ .setFunctionName('setSleepingAllowed');
777
+
778
+ // Deprecated action (fixed typo):
779
+ aut
780
+ .addDuplicatedAction("SetSleepingaAllowed", "SetSleepingAllowed")
781
+ .setHidden();
782
+
783
+ aut
784
+ .addCondition(
785
+ 'IsSleeping',
786
+ _('Is sleeping'),
787
+ _('Test if an object is sleeping.'),
788
+ _('_PARAM0_ is sleeping'),
789
+ _('Dynamics'),
790
+ 'res/physics32.png',
791
+ 'res/physics32.png'
792
+ )
793
+ .addParameter('object', _('Object'), '', false)
794
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
795
+ .getCodeExtraInformation()
796
+ .setFunctionName('isSleeping');
797
+
798
+ // Body settings
799
+ aut
800
+ .addAction(
801
+ 'ShapeScale',
802
+ _('Shape scale'),
803
+ _(
804
+ 'Modify an object shape scale. It affects custom shape dimensions and shape offset, if custom dimensions are not set the body will be scaled automatically to the object size.'
805
+ ),
806
+ _('the shape scale'),
807
+ _('Body settings'),
808
+ 'res/physics32.png',
809
+ 'res/physics32.png'
810
+ )
811
+ .addParameter('object', _('Object'), '', false)
812
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
813
+ .useStandardOperatorParameters(
814
+ 'number',
815
+ gd.ParameterOptions.makeNewOptions().setDescription(
816
+ _('Scale (1 by default)')
817
+ )
818
+ )
819
+ .getCodeExtraInformation()
820
+ .setFunctionName('setShapeScale')
821
+ .setGetter('getShapeScale');
822
+
823
+ aut
824
+ .addCondition(
825
+ 'Density',
826
+ _('Density'),
827
+ _('Test an object density.'),
828
+ _('the _PARAM0_ density'),
829
+ _('Body settings'),
830
+ 'res/physics32.png',
831
+ 'res/physics32.png'
832
+ )
833
+ .addParameter('object', _('Object'), '', false)
834
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
835
+ .useStandardRelationalOperatorParameters(
836
+ 'number',
837
+ gd.ParameterOptions.makeNewOptions()
838
+ )
839
+ .getCodeExtraInformation()
840
+ .setFunctionName('getDensity');
841
+
842
+ aut
843
+ .addAction(
844
+ 'Density',
845
+ _('Density'),
846
+ _(
847
+ "Modify an object density. The body's density and volume determine its mass."
848
+ ),
849
+ _('the density'),
850
+ _('Body settings'),
851
+ 'res/physics32.png',
852
+ 'res/physics32.png'
853
+ )
854
+ .addParameter('object', _('Object'), '', false)
855
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
856
+ .useStandardOperatorParameters(
857
+ 'number',
858
+ gd.ParameterOptions.makeNewOptions()
859
+ )
860
+ .getCodeExtraInformation()
861
+ .setFunctionName('setDensity')
862
+ .setGetter('getDensity');
863
+
864
+ aut
865
+ .addExpression(
866
+ 'Density',
867
+ _('Density of the object'),
868
+ _('Get the density of an object.'),
869
+ _('Body settings'),
870
+ 'res/physics32.png'
871
+ )
872
+ .addParameter('object', _('Object'), '', false)
873
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
874
+ .getCodeExtraInformation()
875
+ .setFunctionName('getDensity');
876
+
877
+ aut
878
+ .addCondition(
879
+ 'Friction',
880
+ _('Friction'),
881
+ _('Test an object friction.'),
882
+ _('the _PARAM0_ friction'),
883
+ _('Body settings'),
884
+ 'res/physics32.png',
885
+ 'res/physics32.png'
886
+ )
887
+ .addParameter('object', _('Object'), '', false)
888
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
889
+ .useStandardRelationalOperatorParameters(
890
+ 'number',
891
+ gd.ParameterOptions.makeNewOptions()
892
+ )
893
+ .getCodeExtraInformation()
894
+ .setFunctionName('getFriction');
895
+
896
+ aut
897
+ .addAction(
898
+ 'Friction',
899
+ _('Friction'),
900
+ _(
901
+ "Modify an object friction. How much energy is lost from the movement of one object over another. The combined friction from two bodies is calculated as 'sqrt(bodyA.friction * bodyB.friction)'."
902
+ ),
903
+ _('the friction'),
904
+ _('Body settings'),
905
+ 'res/physics32.png',
906
+ 'res/physics32.png'
907
+ )
908
+ .addParameter('object', _('Object'), '', false)
909
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
910
+ .useStandardOperatorParameters(
911
+ 'number',
912
+ gd.ParameterOptions.makeNewOptions()
913
+ )
914
+ .getCodeExtraInformation()
915
+ .setFunctionName('setFriction')
916
+ .setGetter('getFriction');
917
+
918
+ aut
919
+ .addExpression(
920
+ 'Friction',
921
+ _('Friction of the object'),
922
+ _('Get the friction of an object.'),
923
+ _('Body settings'),
924
+ 'res/physics32.png'
925
+ )
926
+ .addParameter('object', _('Object'), '', false)
927
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
928
+ .getCodeExtraInformation()
929
+ .setFunctionName('getFriction');
930
+
931
+ aut
932
+ .addCondition(
933
+ 'Restitution',
934
+ _('Restitution'),
935
+ _('Test an object restitution.'),
936
+ _('the _PARAM0_ restitution'),
937
+ _('Body settings'),
938
+ 'res/physics32.png',
939
+ 'res/physics32.png'
940
+ )
941
+ .addParameter('object', _('Object'), '', false)
942
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
943
+ .useStandardRelationalOperatorParameters(
944
+ 'number',
945
+ gd.ParameterOptions.makeNewOptions()
946
+ )
947
+ .getCodeExtraInformation()
948
+ .setFunctionName('getRestitution');
949
+
950
+ aut
951
+ .addAction(
952
+ 'Restitution',
953
+ _('Restitution'),
954
+ _(
955
+ "Modify an object restitution. Energy conservation on collision. The combined restitution from two bodies is calculated as 'max(bodyA.restitution, bodyB.restitution)'."
956
+ ),
957
+ _('the restitution'),
958
+ _('Body settings'),
959
+ 'res/physics32.png',
960
+ 'res/physics32.png'
961
+ )
962
+ .addParameter('object', _('Object'), '', false)
963
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
964
+ .useStandardOperatorParameters(
965
+ 'number',
966
+ gd.ParameterOptions.makeNewOptions()
967
+ )
968
+ .getCodeExtraInformation()
969
+ .setFunctionName('setRestitution')
970
+ .setGetter('getRestitution');
971
+
972
+ aut
973
+ .addExpression(
974
+ 'Restitution',
975
+ _('Restitution of the object'),
976
+ _('Get the restitution of an object.'),
977
+ _('Body settings'),
978
+ 'res/physics32.png'
979
+ )
980
+ .addParameter('object', _('Object'), '', false)
981
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
982
+ .getCodeExtraInformation()
983
+ .setFunctionName('getRestitution');
984
+
985
+ aut
986
+ .addCondition(
987
+ 'LinearDamping',
988
+ _('Linear damping'),
989
+ _('Test an object linear damping.'),
990
+ _('the _PARAM0_ linear damping'),
991
+ _('Body settings'),
992
+ 'res/physics32.png',
993
+ 'res/physics32.png'
994
+ )
995
+ .addParameter('object', _('Object'), '', false)
996
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
997
+ .useStandardRelationalOperatorParameters(
998
+ 'number',
999
+ gd.ParameterOptions.makeNewOptions()
1000
+ )
1001
+ .getCodeExtraInformation()
1002
+ .setFunctionName('getLinearDamping');
1003
+
1004
+ aut
1005
+ .addAction(
1006
+ 'LinearDamping',
1007
+ _('Linear damping'),
1008
+ _(
1009
+ 'Modify an object linear damping. How much movement speed is lost across the time.'
1010
+ ),
1011
+ _('the linear damping'),
1012
+ _('Body settings'),
1013
+ 'res/physics32.png',
1014
+ 'res/physics32.png'
1015
+ )
1016
+ .addParameter('object', _('Object'), '', false)
1017
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1018
+ .useStandardOperatorParameters(
1019
+ 'number',
1020
+ gd.ParameterOptions.makeNewOptions()
1021
+ )
1022
+ .getCodeExtraInformation()
1023
+ .setFunctionName('setLinearDamping')
1024
+ .setGetter('getLinearDamping');
1025
+
1026
+ aut
1027
+ .addExpression(
1028
+ 'LinearDamping',
1029
+ _('Linear damping of the object'),
1030
+ _('Get the linear damping of an object.'),
1031
+ _('Body settings'),
1032
+ 'res/physics32.png'
1033
+ )
1034
+ .addParameter('object', _('Object'), '', false)
1035
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1036
+ .getCodeExtraInformation()
1037
+ .setFunctionName('getLinearDamping');
1038
+
1039
+ aut
1040
+ .addCondition(
1041
+ 'AngularDamping',
1042
+ _('Angular damping'),
1043
+ _('Test an object angular damping.'),
1044
+ _('the _PARAM0_ angular damping'),
1045
+ _('Body settings'),
1046
+ 'res/physics32.png',
1047
+ 'res/physics32.png'
1048
+ )
1049
+ .addParameter('object', _('Object'), '', false)
1050
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1051
+ .useStandardRelationalOperatorParameters(
1052
+ 'number',
1053
+ gd.ParameterOptions.makeNewOptions()
1054
+ )
1055
+ .getCodeExtraInformation()
1056
+ .setFunctionName('getAngularDamping');
1057
+
1058
+ aut
1059
+ .addAction(
1060
+ 'AngularDamping',
1061
+ _('Angular damping'),
1062
+ _(
1063
+ 'Modify an object angular damping. How much angular speed is lost across the time.'
1064
+ ),
1065
+ _('the angular damping'),
1066
+ _('Body settings'),
1067
+ 'res/physics32.png',
1068
+ 'res/physics32.png'
1069
+ )
1070
+ .addParameter('object', _('Object'), '', false)
1071
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1072
+ .useStandardOperatorParameters(
1073
+ 'number',
1074
+ gd.ParameterOptions.makeNewOptions()
1075
+ )
1076
+ .getCodeExtraInformation()
1077
+ .setFunctionName('setAngularDamping')
1078
+ .setGetter('getAngularDamping');
1079
+
1080
+ aut
1081
+ .addExpression(
1082
+ 'AngularDamping',
1083
+ _('Angular damping of the object'),
1084
+ _('Get the angular damping of an object.'),
1085
+ _('Body settings'),
1086
+ 'res/physics32.png'
1087
+ )
1088
+ .addParameter('object', _('Object'), '', false)
1089
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1090
+ .getCodeExtraInformation()
1091
+ .setFunctionName('getAngularDamping');
1092
+
1093
+ aut
1094
+ .addCondition(
1095
+ 'GravityScale',
1096
+ _('Gravity scale'),
1097
+ _('Test an object gravity scale.'),
1098
+ _('the _PARAM0_ gravity scale'),
1099
+ _('Body settings'),
1100
+ 'res/physics32.png',
1101
+ 'res/physics32.png'
1102
+ )
1103
+ .addParameter('object', _('Object'), '', false)
1104
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1105
+ .useStandardRelationalOperatorParameters(
1106
+ 'number',
1107
+ gd.ParameterOptions.makeNewOptions().setDescription(
1108
+ _('Scale to compare to (1 by default)')
1109
+ )
1110
+ )
1111
+ .getCodeExtraInformation()
1112
+ .setFunctionName('getGravityScale');
1113
+
1114
+ aut
1115
+ .addAction(
1116
+ 'GravityScale',
1117
+ _('Gravity scale'),
1118
+ _(
1119
+ 'Modify an object gravity scale. The gravity applied to an object is the world gravity multiplied by the object gravity scale.'
1120
+ ),
1121
+ _('the gravity scale'),
1122
+ _('Body settings'),
1123
+ 'res/physics32.png',
1124
+ 'res/physics32.png'
1125
+ )
1126
+ .addParameter('object', _('Object'), '', false)
1127
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1128
+ .useStandardOperatorParameters(
1129
+ 'number',
1130
+ gd.ParameterOptions.makeNewOptions().setDescription(
1131
+ _('Scale (1 by default)')
1132
+ )
1133
+ )
1134
+ .getCodeExtraInformation()
1135
+ .setFunctionName('setGravityScale')
1136
+ .setGetter('getGravityScale');
1137
+
1138
+ aut
1139
+ .addExpression(
1140
+ 'GravityScale',
1141
+ _('Gravity scale of the object'),
1142
+ _('Get the gravity scale of an object.'),
1143
+ _('Body settings'),
1144
+ 'res/physics32.png'
1145
+ )
1146
+ .addParameter('object', _('Object'), '', false)
1147
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1148
+ .getCodeExtraInformation()
1149
+ .setFunctionName('getGravityScale');
1150
+
1151
+ // Filtering
1152
+ aut
1153
+ .addCondition(
1154
+ 'LayerEnabled',
1155
+ _('Layer enabled'),
1156
+ _('Test if an object has a specific layer enabled.'),
1157
+ _('_PARAM0_ has layer _PARAM2_ enabled'),
1158
+ _('Filtering'),
1159
+ 'res/physics32.png',
1160
+ 'res/physics32.png'
1161
+ )
1162
+ .addParameter('object', _('Object'), '', false)
1163
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1164
+ .addParameter('expression', _('Layer (1 - 16)'))
1165
+ .getCodeExtraInformation()
1166
+ .setFunctionName('layerEnabled');
1167
+
1168
+ aut
1169
+ .addAction(
1170
+ 'EnableLayer',
1171
+ _('Enable layer'),
1172
+ _(
1173
+ 'Enable or disable a layer for an object. Two objects collide if any layer of the first object matches any mask of the second one and vice versa.'
1174
+ ),
1175
+ _('Enable layer _PARAM2_ for _PARAM0_: _PARAM3_'),
1176
+ _('Filtering'),
1177
+ 'res/physics32.png',
1178
+ 'res/physics32.png'
1179
+ )
1180
+ .addParameter('object', _('Object'), '', false)
1181
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1182
+ .addParameter('expression', _('Layer (1 - 16)'))
1183
+ .addParameter('yesorno', _('Enable?'), '', false)
1184
+ .setDefaultValue('true')
1185
+ .getCodeExtraInformation()
1186
+ .setFunctionName('enableLayer');
1187
+
1188
+ aut
1189
+ .addCondition(
1190
+ 'MaskEnabled',
1191
+ _('Mask enabled'),
1192
+ _('Test if an object has a specific mask enabled.'),
1193
+ _('_PARAM0_ has mask _PARAM2_ enabled'),
1194
+ _('Filtering'),
1195
+ 'res/physics32.png',
1196
+ 'res/physics32.png'
1197
+ )
1198
+ .addParameter('object', _('Object'), '', false)
1199
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1200
+ .addParameter('expression', _('Mask (1 - 16)'))
1201
+ .getCodeExtraInformation()
1202
+ .setFunctionName('maskEnabled');
1203
+
1204
+ aut
1205
+ .addAction(
1206
+ 'EnableMask',
1207
+ _('Enable mask'),
1208
+ _(
1209
+ 'Enable or disable a mask for an object. Two objects collide if any layer of the first object matches any mask of the second one and vice versa.'
1210
+ ),
1211
+ _('Enable mask _PARAM2_ for _PARAM0_: _PARAM3_'),
1212
+ _('Filtering'),
1213
+ 'res/physics32.png',
1214
+ 'res/physics32.png'
1215
+ )
1216
+ .addParameter('object', _('Object'), '', false)
1217
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1218
+ .addParameter('expression', _('Mask (1 - 16)'))
1219
+ .addParameter('yesorno', _('Enable?'), '', false)
1220
+ .setDefaultValue('true')
1221
+ .getCodeExtraInformation()
1222
+ .setFunctionName('enableMask');
1223
+
1224
+ // Velocity
1225
+ aut
1226
+ .addCondition(
1227
+ 'LinearVelocityX',
1228
+ _('Linear velocity X'),
1229
+ _('Test an object linear velocity on X.'),
1230
+ _('the linear velocity on X'),
1231
+ _('Velocity'),
1232
+ 'res/physics32.png',
1233
+ 'res/physics32.png'
1234
+ )
1235
+ .addParameter('object', _('Object'), '', false)
1236
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1237
+ .useStandardRelationalOperatorParameters(
1238
+ 'number',
1239
+ gd.ParameterOptions.makeNewOptions().setDescription(
1240
+ _('Speed to compare to (in pixels per second)')
1241
+ )
1242
+ )
1243
+ .getCodeExtraInformation()
1244
+ .setFunctionName('getLinearVelocityX');
1245
+
1246
+ aut
1247
+ .addAction(
1248
+ 'LinearVelocityX',
1249
+ _('Linear velocity X'),
1250
+ _('Modify an object linear velocity on X.'),
1251
+ _('the linear velocity on X'),
1252
+ _('Velocity'),
1253
+ 'res/physics32.png',
1254
+ 'res/physics32.png'
1255
+ )
1256
+ .addParameter('object', _('Object'), '', false)
1257
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1258
+ .useStandardOperatorParameters(
1259
+ 'number',
1260
+ gd.ParameterOptions.makeNewOptions().setDescription(
1261
+ _('Speed (in pixels per second)')
1262
+ )
1263
+ )
1264
+ .getCodeExtraInformation()
1265
+ .setFunctionName('setLinearVelocityX')
1266
+ .setGetter('getLinearVelocityX');
1267
+
1268
+ aut
1269
+ .addExpression(
1270
+ 'LinearVelocityX',
1271
+ _('Linear velocity on X axis'),
1272
+ _('Get the linear velocity of an object on X axis.'),
1273
+ _('Velocity'),
1274
+ 'res/physics32.png'
1275
+ )
1276
+ .addParameter('object', _('Object'), '', false)
1277
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1278
+ .getCodeExtraInformation()
1279
+ .setFunctionName('getLinearVelocityX');
1280
+
1281
+ aut
1282
+ .addCondition(
1283
+ 'LinearVelocityY',
1284
+ _('Linear velocity Y'),
1285
+ _('Test an object linear velocity on Y.'),
1286
+ _('the linear velocity on Y'),
1287
+ _('Velocity'),
1288
+ 'res/physics32.png',
1289
+ 'res/physics32.png'
1290
+ )
1291
+ .addParameter('object', _('Object'), '', false)
1292
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1293
+ .useStandardRelationalOperatorParameters(
1294
+ 'number',
1295
+ gd.ParameterOptions.makeNewOptions().setDescription(
1296
+ _('Speed to compare to (in pixels per second)')
1297
+ )
1298
+ )
1299
+ .getCodeExtraInformation()
1300
+ .setFunctionName('getLinearVelocityY');
1301
+
1302
+ aut
1303
+ .addAction(
1304
+ 'LinearVelocityY',
1305
+ _('Linear velocity Y'),
1306
+ _('Modify an object linear velocity on Y.'),
1307
+ _('the linear velocity on Y'),
1308
+ _('Velocity'),
1309
+ 'res/physics32.png',
1310
+ 'res/physics32.png'
1311
+ )
1312
+ .addParameter('object', _('Object'), '', false)
1313
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1314
+ .useStandardOperatorParameters(
1315
+ 'number',
1316
+ gd.ParameterOptions.makeNewOptions().setDescription(
1317
+ _('Speed (in pixels per second)')
1318
+ )
1319
+ )
1320
+ .getCodeExtraInformation()
1321
+ .setFunctionName('setLinearVelocityY')
1322
+ .setGetter('getLinearVelocityY');
1323
+
1324
+ aut
1325
+ .addExpression(
1326
+ 'LinearVelocityY',
1327
+ _('Linear velocity on Y axis'),
1328
+ _('Get the linear velocity of an object on Y axis.'),
1329
+ _('Velocity'),
1330
+ 'res/physics32.png'
1331
+ )
1332
+ .addParameter('object', _('Object'), '', false)
1333
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1334
+ .getCodeExtraInformation()
1335
+ .setFunctionName('getLinearVelocityY');
1336
+
1337
+ aut
1338
+ .addCondition(
1339
+ 'LinearVelocityLength',
1340
+ _('Linear velocity'),
1341
+ _('Test an object linear velocity length.'),
1342
+ _('the linear velocity length'),
1343
+ _('Velocity'),
1344
+ 'res/physics32.png',
1345
+ 'res/physics32.png'
1346
+ )
1347
+ .addParameter('object', _('Object'), '', false)
1348
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1349
+ .useStandardRelationalOperatorParameters(
1350
+ 'number',
1351
+ gd.ParameterOptions.makeNewOptions().setDescription(
1352
+ _('Speed to compare to (in pixels per second)')
1353
+ )
1354
+ )
1355
+ .getCodeExtraInformation()
1356
+ .setFunctionName('getLinearVelocityLength');
1357
+
1358
+ aut
1359
+ .addExpression(
1360
+ 'LinearVelocity',
1361
+ _('Linear velocity'),
1362
+ _('Get the linear velocity of an object.'),
1363
+ _('Velocity'),
1364
+ 'res/physics32.png'
1365
+ )
1366
+ .addParameter('object', _('Object'), '', false)
1367
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1368
+ .getCodeExtraInformation()
1369
+ .setFunctionName('getLinearVelocityLength');
1370
+
1371
+ aut
1372
+ .addCondition(
1373
+ 'LinearVelocityAngle',
1374
+ _('Linear velocity angle'),
1375
+ _('Test an object linear velocity angle.'),
1376
+ _('the linear velocity angle'),
1377
+ _('Velocity'),
1378
+ 'res/physics32.png',
1379
+ 'res/physics32.png'
1380
+ )
1381
+ .addParameter('object', _('Object'), '', false)
1382
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1383
+ .useStandardRelationalOperatorParameters(
1384
+ 'number',
1385
+ gd.ParameterOptions.makeNewOptions().setDescription(
1386
+ _('Angle to compare to (in degrees)')
1387
+ )
1388
+ )
1389
+ .getCodeExtraInformation()
1390
+ .setFunctionName('getLinearVelocityAngle');
1391
+
1392
+ aut
1393
+ .addExpression(
1394
+ 'LinearVelocityAngle',
1395
+ _('Linear velocity angle'),
1396
+ _('Get the linear velocity angle of an object.'),
1397
+ _('Velocity'),
1398
+ 'res/physics32.png'
1399
+ )
1400
+ .addParameter('object', _('Object'), '', false)
1401
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1402
+ .getCodeExtraInformation()
1403
+ .setFunctionName('getLinearVelocityAngle');
1404
+
1405
+ aut
1406
+ .addCondition(
1407
+ 'AngularVelocity',
1408
+ _('Angular velocity'),
1409
+ _('Test an object angular velocity.'),
1410
+ _('the angular velocity'),
1411
+ _('Velocity'),
1412
+ 'res/physics32.png',
1413
+ 'res/physics32.png'
1414
+ )
1415
+ .addParameter('object', _('Object'), '', false)
1416
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1417
+ .useStandardRelationalOperatorParameters(
1418
+ 'number',
1419
+ gd.ParameterOptions.makeNewOptions().setDescription(
1420
+ _('Angular speed to compare to (in degrees per second)')
1421
+ )
1422
+ )
1423
+ .getCodeExtraInformation()
1424
+ .setFunctionName('getAngularVelocity');
1425
+
1426
+ aut
1427
+ .addAction(
1428
+ 'AngularVelocity',
1429
+ _('Angular velocity'),
1430
+ _('Modify an object angular velocity.'),
1431
+ _('the angular velocity'),
1432
+ _('Velocity'),
1433
+ 'res/physics32.png',
1434
+ 'res/physics32.png'
1435
+ )
1436
+ .addParameter('object', _('Object'), '', false)
1437
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1438
+ .useStandardOperatorParameters(
1439
+ 'number',
1440
+ gd.ParameterOptions.makeNewOptions().setDescription(
1441
+ _('Angular speed (in degrees per second)')
1442
+ )
1443
+ )
1444
+ .getCodeExtraInformation()
1445
+ .setFunctionName('setAngularVelocity')
1446
+ .setGetter('getAngularVelocity');
1447
+
1448
+ aut
1449
+ .addExpression(
1450
+ 'AngularVelocity',
1451
+ _('Angular velocity'),
1452
+ _('Get the angular velocity of an object.'),
1453
+ _('Velocity'),
1454
+ 'res/physics32.png'
1455
+ )
1456
+ .addParameter('object', _('Object'), '', false)
1457
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1458
+ .getCodeExtraInformation()
1459
+ .setFunctionName('getAngularVelocity');
1460
+
1461
+ // Forces and impulses
1462
+ aut
1463
+ .addAction(
1464
+ 'ApplyForce',
1465
+ _('Apply force'),
1466
+ _(
1467
+ 'Apply a force to the object. You need to specify the point of application (you can get the body mass center through expressions).'
1468
+ ),
1469
+ _('Apply to _PARAM0_ a force of _PARAM2_;_PARAM3_'),
1470
+ _('Forces & impulses'),
1471
+ 'res/physics32.png',
1472
+ 'res/physics32.png'
1473
+ )
1474
+ .addParameter('object', _('Object'), '', false)
1475
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1476
+ .addParameter('expression', _('X component (N)'))
1477
+ .addParameter('expression', _('Y component (N)'))
1478
+ .addParameter('expression', _('Applying X position'))
1479
+ .addParameter('expression', _('Applying Y position'))
1480
+ .getCodeExtraInformation()
1481
+ .setFunctionName('applyForce');
1482
+
1483
+ aut
1484
+ .addAction(
1485
+ 'ApplyPolarForce',
1486
+ _('Apply force (angle)'),
1487
+ _(
1488
+ 'Apply a force to the object using polar coordinates. You need to specify the point of application (you can get the body mass center through expressions).'
1489
+ ),
1490
+ _('Apply to _PARAM0_ a force of angle _PARAM2_ and length _PARAM3_'),
1491
+ _('Forces & impulses'),
1492
+ 'res/physics32.png',
1493
+ 'res/physics32.png'
1494
+ )
1495
+ .addParameter('object', _('Object'), '', false)
1496
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1497
+ .addParameter('expression', _('Angle'))
1498
+ .addParameter('expression', _('Length (N)'))
1499
+ .addParameter('expression', _('Applying X position'))
1500
+ .addParameter('expression', _('Applying Y position'))
1501
+ .getCodeExtraInformation()
1502
+ .setFunctionName('applyPolarForce');
1503
+
1504
+ aut
1505
+ .addAction(
1506
+ 'ApplyForceTowardPosition',
1507
+ _('Apply force toward position'),
1508
+ _(
1509
+ 'Apply a force to the object to move it toward a position. You need to specify the point of application (you can get the body mass center through expressions).'
1510
+ ),
1511
+ _(
1512
+ 'Apply to _PARAM0_ a force of length _PARAM2_ towards _PARAM3_;_PARAM4_'
1513
+ ),
1514
+ _('Forces & impulses'),
1515
+ 'res/physics32.png',
1516
+ 'res/physics32.png'
1517
+ )
1518
+ .addParameter('object', _('Object'), '', false)
1519
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1520
+ .addParameter('expression', _('Length (N)'))
1521
+ .addParameter('expression', _('X position'))
1522
+ .addParameter('expression', _('Y position'))
1523
+ .addParameter('expression', _('Applying X position'))
1524
+ .addParameter('expression', _('Applying Y position'))
1525
+ .getCodeExtraInformation()
1526
+ .setFunctionName('applyForceTowardPosition');
1527
+
1528
+ aut
1529
+ .addAction(
1530
+ 'ApplyImpulse',
1531
+ _('Apply impulse'),
1532
+ _(
1533
+ 'Apply an impulse to the object. You need to specify the point of application (you can get the body mass center through expressions).'
1534
+ ),
1535
+ _('Apply to _PARAM0_ an impulse of _PARAM2_;_PARAM3_'),
1536
+ _('Forces & impulses'),
1537
+ 'res/physics32.png',
1538
+ 'res/physics32.png'
1539
+ )
1540
+ .addParameter('object', _('Object'), '', false)
1541
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1542
+ .addParameter(
1543
+ 'expression',
1544
+ _('X component (in Newton * seconds or kilogram * meter per second)')
1545
+ )
1546
+ .addParameter(
1547
+ 'expression',
1548
+ _('Y component (in Newton * seconds or kilogram * meter per second)')
1549
+ )
1550
+ .addParameter('expression', _('Applying X position'))
1551
+ .addParameter('expression', _('Applying Y position'))
1552
+ .getCodeExtraInformation()
1553
+ .setFunctionName('applyImpulse');
1554
+
1555
+ aut
1556
+ .addAction(
1557
+ 'ApplyPolarImpulse',
1558
+ _('Apply impulse (angle)'),
1559
+ _(
1560
+ 'Apply an impulse to the object using polar coordinates. You need to specify the point of application (you can get the body mass center through expressions).'
1561
+ ),
1562
+ _(
1563
+ 'Apply to _PARAM0_ an impulse of angle _PARAM2_ and length _PARAM3_ (applied at _PARAM4_;_PARAM5_)'
1564
+ ),
1565
+ _('Forces & impulses'),
1566
+ 'res/physics32.png',
1567
+ 'res/physics32.png'
1568
+ )
1569
+ .addParameter('object', _('Object'), '', false)
1570
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1571
+ .addParameter('expression', _('Angle'))
1572
+ .addParameter(
1573
+ 'expression',
1574
+ _('Length (in Newton * seconds or kilogram * meter per second)')
1575
+ )
1576
+ .addParameter('expression', _('Applying X position'))
1577
+ .addParameter('expression', _('Applying Y position'))
1578
+ .getCodeExtraInformation()
1579
+ .setFunctionName('applyPolarImpulse');
1580
+
1581
+ aut
1582
+ .addAction(
1583
+ 'ApplyImpulseTowardPosition',
1584
+ _('Apply impulse toward position'),
1585
+ _(
1586
+ 'Apply an impulse to the object to move it toward a position. You need to specify the point of application (you can get the body mass center through expressions).'
1587
+ ),
1588
+ _(
1589
+ 'Apply to _PARAM0_ an impulse of length _PARAM2_ towards _PARAM3_;_PARAM4_ (applied at _PARAM5_;_PARAM6_)'
1590
+ ),
1591
+ _('Forces & impulses'),
1592
+ 'res/physics32.png',
1593
+ 'res/physics32.png'
1594
+ )
1595
+ .addParameter('object', _('Object'), '', false)
1596
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1597
+ .addParameter(
1598
+ 'expression',
1599
+ _('Length (in Newton * seconds or kilogram * meter per second)')
1600
+ )
1601
+ .addParameter('expression', _('X position'))
1602
+ .addParameter('expression', _('Y position'))
1603
+ .addParameter('expression', _('Applying X position'))
1604
+ .addParameter('expression', _('Applying Y position'))
1605
+ .getCodeExtraInformation()
1606
+ .setFunctionName('applyImpulseTowardPosition');
1607
+
1608
+ aut
1609
+ .addAction(
1610
+ 'ApplyTorque',
1611
+ _('Apply torque (rotational force)'),
1612
+ _(
1613
+ 'Apply a torque (also called "rotational force") to the object. This will make the object rotate without moving it.'
1614
+ ),
1615
+ _('Apply to _PARAM0_ a torque of _PARAM2_'),
1616
+ _('Forces & impulses'),
1617
+ 'res/physics32.png',
1618
+ 'res/physics32.png'
1619
+ )
1620
+ .addParameter('object', _('Object'), '', false)
1621
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1622
+ .addParameter('expression', _('Torque (N.m)'))
1623
+ .getCodeExtraInformation()
1624
+ .setFunctionName('applyTorque');
1625
+
1626
+ aut
1627
+ .addAction(
1628
+ 'ApplyAngularImpulse',
1629
+ _('Apply angular impulse (rotational impulse)'),
1630
+ _(
1631
+ 'Apply an angular impulse (also called a "rotational impulse") to the object. This will make the object rotate without moving it.'
1632
+ ),
1633
+ _('Apply to _PARAM0_ an angular impulse of _PARAM2_'),
1634
+ _('Forces & impulses'),
1635
+ 'res/physics32.png',
1636
+ 'res/physics32.png'
1637
+ )
1638
+ .addParameter('object', _('Object'), '', false)
1639
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1640
+ .addParameter('expression', _('Angular impulse (N.m.s'))
1641
+ .getCodeExtraInformation()
1642
+ .setFunctionName('applyAngularImpulse');
1643
+
1644
+ aut
1645
+ .addExpression(
1646
+ 'Mass',
1647
+ _('Mass'),
1648
+ _('Return the mass of the object (in kilograms)'),
1649
+ '',
1650
+ 'res/physics32.png'
1651
+ )
1652
+ .addParameter('object', _('Object'), '', false)
1653
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1654
+ .getCodeExtraInformation()
1655
+ .setFunctionName('getMass');
1656
+
1657
+ aut
1658
+ .addExpression(
1659
+ 'Inertia',
1660
+ _('Inertia'),
1661
+ _(
1662
+ 'Return the rotational inertia of the object (in kilograms * meters * meters)'
1663
+ ),
1664
+ '',
1665
+ 'res/physics32.png'
1666
+ )
1667
+ .addParameter('object', _('Object'), '', false)
1668
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1669
+ .getCodeExtraInformation()
1670
+ .setFunctionName('getInertia');
1671
+
1672
+ aut
1673
+ .addExpression(
1674
+ 'MassCenterX',
1675
+ _('Mass center X'),
1676
+ _('Mass center X'),
1677
+ '',
1678
+ 'res/physics32.png'
1679
+ )
1680
+ .addParameter('object', _('Object'), '', false)
1681
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1682
+ .getCodeExtraInformation()
1683
+ .setFunctionName('getMassCenterX');
1684
+
1685
+ aut
1686
+ .addExpression(
1687
+ 'MassCenterY',
1688
+ _('Mass center Y'),
1689
+ _('Mass center Y'),
1690
+ '',
1691
+ 'res/physics32.png'
1692
+ )
1693
+ .addParameter('object', _('Object'), '', false)
1694
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1695
+ .getCodeExtraInformation()
1696
+ .setFunctionName('getMassCenterY');
1697
+
1698
+ // Joints
1699
+ aut
1700
+ .addCondition(
1701
+ 'JointFirstObject',
1702
+ _('Joint first object'),
1703
+ _('Test if an object is the first object on a joint.'),
1704
+ _('_PARAM0_ is the first object for joint _PARAM2_'),
1705
+ _('Joints'),
1706
+ 'res/physics32.png',
1707
+ 'res/physics32.png'
1708
+ )
1709
+ .addParameter('object', _('Object'), '', false)
1710
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1711
+ .addParameter('expression', _('Joint ID'))
1712
+ .getCodeExtraInformation()
1713
+ .setFunctionName('isJointFirstObject');
1714
+
1715
+ aut
1716
+ .addCondition(
1717
+ 'JointSecondObject',
1718
+ _('Joint second object'),
1719
+ _('Test if an object is the second object on a joint.'),
1720
+ _('_PARAM0_ is the second object for joint _PARAM2_'),
1721
+ _('Joints'),
1722
+ 'res/physics32.png',
1723
+ 'res/physics32.png'
1724
+ )
1725
+ .addParameter('object', _('Object'), '', false)
1726
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1727
+ .addParameter('expression', _('Joint ID'))
1728
+ .getCodeExtraInformation()
1729
+ .setFunctionName('isJointSecondObject');
1730
+
1731
+ aut
1732
+ .addExpression(
1733
+ 'JointFirstAnchorX',
1734
+ _('Joint first anchor X'),
1735
+ _('Joint first anchor X'),
1736
+ _('Joints'),
1737
+ 'res/physics32.png'
1738
+ )
1739
+ .addParameter('object', _('Object'), '', false)
1740
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1741
+ .addParameter('expression', _('Joint ID'))
1742
+ .getCodeExtraInformation()
1743
+ .setFunctionName('getJointFirstAnchorX');
1744
+
1745
+ aut
1746
+ .addExpression(
1747
+ 'JointFirstAnchorY',
1748
+ _('Joint first anchor Y'),
1749
+ _('Joint first anchor Y'),
1750
+ _('Joints'),
1751
+ 'res/physics32.png'
1752
+ )
1753
+ .addParameter('object', _('Object'), '', false)
1754
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1755
+ .addParameter('expression', _('Joint ID'))
1756
+ .getCodeExtraInformation()
1757
+ .setFunctionName('getJointFirstAnchorY');
1758
+
1759
+ aut
1760
+ .addExpression(
1761
+ 'JointSecondAnchorX',
1762
+ _('Joint second anchor X'),
1763
+ _('Joint second anchor X'),
1764
+ _('Joints'),
1765
+ 'res/physics32.png'
1766
+ )
1767
+ .addParameter('object', _('Object'), '', false)
1768
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1769
+ .addParameter('expression', _('Joint ID'))
1770
+ .getCodeExtraInformation()
1771
+ .setFunctionName('getJointSecondAnchorX');
1772
+
1773
+ aut
1774
+ .addExpression(
1775
+ 'JointSecondAnchorY',
1776
+ _('Joint second anchor Y'),
1777
+ _('Joint second anchor Y'),
1778
+ _('Joints'),
1779
+ 'res/physics32.png'
1780
+ )
1781
+ .addParameter('object', _('Object'), '', false)
1782
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1783
+ .addParameter('expression', _('Joint ID'))
1784
+ .getCodeExtraInformation()
1785
+ .setFunctionName('getJointSecondAnchorY');
1786
+
1787
+ aut
1788
+ .addCondition(
1789
+ 'JointReactionForce',
1790
+ _('Joint reaction force'),
1791
+ _('Test a joint reaction force.'),
1792
+ _('the joint _PARAM2_ reaction force'),
1793
+ _('Joints'),
1794
+ 'res/physics32.png',
1795
+ 'res/physics32.png'
1796
+ )
1797
+ .addParameter('object', _('Object'), '', false)
1798
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1799
+ .addParameter('expression', _('Joint ID'))
1800
+ .useStandardRelationalOperatorParameters(
1801
+ 'number',
1802
+ gd.ParameterOptions.makeNewOptions()
1803
+ )
1804
+ .getCodeExtraInformation()
1805
+ .setFunctionName('getJointReactionForce');
1806
+
1807
+ aut
1808
+ .addExpression(
1809
+ 'JointReactionForce',
1810
+ _('Joint reaction force'),
1811
+ _('Joint reaction force'),
1812
+ _('Joints'),
1813
+ 'res/physics32.png'
1814
+ )
1815
+ .addParameter('object', _('Object'), '', false)
1816
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1817
+ .addParameter('expression', _('Joint ID'))
1818
+ .getCodeExtraInformation()
1819
+ .setFunctionName('getJointReactionForce');
1820
+
1821
+ aut
1822
+ .addCondition(
1823
+ 'JointReactionTorque',
1824
+ _('Joint reaction torque'),
1825
+ _('Test a joint reaction torque.'),
1826
+ _('the joint _PARAM2_ reaction torque'),
1827
+ _('Joints'),
1828
+ 'res/physics32.png',
1829
+ 'res/physics32.png'
1830
+ )
1831
+ .addParameter('object', _('Object'), '', false)
1832
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1833
+ .addParameter('expression', _('Joint ID'))
1834
+ .useStandardRelationalOperatorParameters(
1835
+ 'number',
1836
+ gd.ParameterOptions.makeNewOptions()
1837
+ )
1838
+ .getCodeExtraInformation()
1839
+ .setFunctionName('getJointReactionTorque');
1840
+
1841
+ aut
1842
+ .addExpression(
1843
+ 'JointReactionTorque',
1844
+ _('Joint reaction torque'),
1845
+ _('Joint reaction torque'),
1846
+ _('Joints'),
1847
+ 'res/physics32.png'
1848
+ )
1849
+ .addParameter('object', _('Object'), '', false)
1850
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1851
+ .addParameter('expression', _('Joint ID'))
1852
+ .getCodeExtraInformation()
1853
+ .setFunctionName('getJointReactionTorque');
1854
+
1855
+ aut
1856
+ .addAction(
1857
+ 'Remove joint',
1858
+ _('Remove joint'),
1859
+ _('Remove a joint from the scene.'),
1860
+ _('Remove joint _PARAM2_'),
1861
+ _('Joints'),
1862
+ 'res/physics32.png',
1863
+ 'res/physics32.png'
1864
+ )
1865
+ .addParameter('object', _('Object'), '', false)
1866
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1867
+ .addParameter('expression', _('Joint ID'))
1868
+ .getCodeExtraInformation()
1869
+ .setFunctionName('removeJoint');
1870
+
1871
+ // Distance joint
1872
+ aut
1873
+ .addAction(
1874
+ 'AddDistanceJoint',
1875
+ _('Add distance joint'),
1876
+ _(
1877
+ 'Add a distance joint between two objects. The length is converted to meters using the world scale on X. The frequency and damping ratio are related to the joint speed of oscillation and how fast it stops.'
1878
+ ),
1879
+ _('Add a distance joint between _PARAM0_ and _PARAM4_'),
1880
+ _('Joints/Distance'),
1881
+ 'JsPlatform/Extensions/distance_joint24.png',
1882
+ 'JsPlatform/Extensions/distance_joint16.png'
1883
+ )
1884
+ .addParameter('object', _('First object'), '', false)
1885
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1886
+ .addParameter('expression', _('Anchor X on first body'))
1887
+ .addParameter('expression', _('Anchor Y on first body'))
1888
+ .addParameter('objectPtr', _('Second object'), '', false)
1889
+ .addParameter('expression', _('Anchor X on second body'))
1890
+ .addParameter('expression', _('Anchor Y on second body'))
1891
+ .addParameter(
1892
+ 'expression',
1893
+ _('Length (-1 to use current objects distance) (default: -1)'),
1894
+ '',
1895
+ true
1896
+ )
1897
+ .setDefaultValue('-1')
1898
+ .addParameter(
1899
+ 'expression',
1900
+ _('Frequency (Hz) (non-negative) (default: 0)'),
1901
+ '',
1902
+ true
1903
+ )
1904
+ .setDefaultValue('0')
1905
+ .addParameter(
1906
+ 'expression',
1907
+ _('Damping ratio (non-negative) (default: 1)'),
1908
+ '',
1909
+ true
1910
+ )
1911
+ .setDefaultValue('1')
1912
+ .addParameter(
1913
+ 'yesorno',
1914
+ _('Allow collision between connected bodies? (default: no)'),
1915
+ '',
1916
+ true
1917
+ )
1918
+ .setDefaultValue('false')
1919
+ .addParameter(
1920
+ 'scenevar',
1921
+ _('Variable where to store the joint ID (default: none)'),
1922
+ '',
1923
+ true
1924
+ )
1925
+ .getCodeExtraInformation()
1926
+ .setFunctionName('addDistanceJoint');
1927
+
1928
+ aut
1929
+ .addAction(
1930
+ 'DistanceJointLength',
1931
+ _('Distance joint length'),
1932
+ _('Modify a distance joint length.'),
1933
+ _('the length for distance joint _PARAM2_'),
1934
+ _('Joints/Distance'),
1935
+ 'JsPlatform/Extensions/distance_joint24.png',
1936
+ 'JsPlatform/Extensions/distance_joint16.png'
1937
+ )
1938
+ .addParameter('object', _('Object'), '', false)
1939
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1940
+ .addParameter('expression', _('Joint ID'))
1941
+ .useStandardOperatorParameters(
1942
+ 'number',
1943
+ gd.ParameterOptions.makeNewOptions()
1944
+ )
1945
+ .getCodeExtraInformation()
1946
+ .setFunctionName('setDistanceJointLength')
1947
+ .setGetter('getDistanceJointLength');
1948
+
1949
+ aut
1950
+ .addExpression(
1951
+ 'DistanceJointLength',
1952
+ _('Distance joint length'),
1953
+ _('Distance joint length'),
1954
+ _('Joints/Distance'),
1955
+ 'JsPlatform/Extensions/distance_joint16.png'
1956
+ )
1957
+ .addParameter('object', _('Object'), '', false)
1958
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1959
+ .addParameter('expression', _('Joint ID'))
1960
+ .getCodeExtraInformation()
1961
+ .setFunctionName('getDistanceJointLength');
1962
+
1963
+ aut
1964
+ .addAction(
1965
+ 'DistanceJointFrequency',
1966
+ _('Distance joint frequency'),
1967
+ _('Modify a distance joint frequency.'),
1968
+ _('the frequency for distance joint _PARAM2_'),
1969
+ _('Joints/Distance'),
1970
+ 'JsPlatform/Extensions/distance_joint24.png',
1971
+ 'JsPlatform/Extensions/distance_joint16.png'
1972
+ )
1973
+ .addParameter('object', _('Object'), '', false)
1974
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1975
+ .addParameter('expression', _('Joint ID'))
1976
+ .useStandardOperatorParameters(
1977
+ 'number',
1978
+ gd.ParameterOptions.makeNewOptions()
1979
+ )
1980
+ .getCodeExtraInformation()
1981
+ .setFunctionName('setDistanceJointFrequency')
1982
+ .setGetter('getDistanceJointFrequency');
1983
+
1984
+ aut
1985
+ .addExpression(
1986
+ 'DistanceJointFrequency',
1987
+ _('Distance joint frequency'),
1988
+ _('Distance joint frequency'),
1989
+ _('Joints/Distance'),
1990
+ 'JsPlatform/Extensions/distance_joint16.png'
1991
+ )
1992
+ .addParameter('object', _('Object'), '', false)
1993
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
1994
+ .addParameter('expression', _('Joint ID'))
1995
+ .getCodeExtraInformation()
1996
+ .setFunctionName('getDistanceJointFrequency');
1997
+
1998
+ aut
1999
+ .addAction(
2000
+ 'DistanceJointDampingRatio',
2001
+ _('Distance joint damping ratio'),
2002
+ _('Modify a distance joint damping ratio.'),
2003
+ _('the damping ratio for distance joint _PARAM2_'),
2004
+ _('Joints/Distance'),
2005
+ 'JsPlatform/Extensions/distance_joint24.png',
2006
+ 'JsPlatform/Extensions/distance_joint16.png'
2007
+ )
2008
+ .addParameter('object', _('Object'), '', false)
2009
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2010
+ .addParameter('expression', _('Joint ID'))
2011
+ .useStandardOperatorParameters(
2012
+ 'number',
2013
+ gd.ParameterOptions.makeNewOptions()
2014
+ )
2015
+ .getCodeExtraInformation()
2016
+ .setFunctionName('setDistanceJointDampingRatio')
2017
+ .setGetter('getDistanceJointDampingRatio');
2018
+
2019
+ aut
2020
+ .addExpression(
2021
+ 'DistanceJointDampingRatio',
2022
+ _('Distance joint damping ratio'),
2023
+ _('Distance joint damping ratio'),
2024
+ _('Joints/Distance'),
2025
+ 'JsPlatform/Extensions/distance_joint16.png'
2026
+ )
2027
+ .addParameter('object', _('Object'), '', false)
2028
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2029
+ .addParameter('expression', _('Joint ID'))
2030
+ .getCodeExtraInformation()
2031
+ .setFunctionName('getDistanceJointDampingRatio');
2032
+
2033
+ // Revolute joint
2034
+ aut
2035
+ .addAction(
2036
+ 'AddRevoluteJoint',
2037
+ _('Add revolute joint'),
2038
+ _(
2039
+ 'Add a revolute joint to an object at a fixed point. The object is attached as the second object in the joint, so you can use this for gear joints.'
2040
+ ),
2041
+ _('Add a revolute joint to _PARAM0_ at _PARAM2_;_PARAM3_'),
2042
+ _('Joints/Revolute'),
2043
+ 'JsPlatform/Extensions/revolute_joint24.png',
2044
+ 'JsPlatform/Extensions/revolute_joint16.png'
2045
+ )
2046
+ .addParameter('object', _('Object'), '', false)
2047
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2048
+ .addParameter('expression', _('X anchor'))
2049
+ .addParameter('expression', _('Y anchor'))
2050
+ .addParameter(
2051
+ 'yesorno',
2052
+ _('Enable angle limits? (default: no)'),
2053
+ '',
2054
+ true
2055
+ )
2056
+ .setDefaultValue('false')
2057
+ .addParameter('expression', _('Reference angle (default: 0)'), '', true)
2058
+ .setDefaultValue('0')
2059
+ .addParameter('expression', _('Minimum angle (default: 0)'), '', true)
2060
+ .setDefaultValue('0')
2061
+ .addParameter('expression', _('Maximum angle (default: 0)'), '', true)
2062
+ .setDefaultValue('0')
2063
+ .addParameter('yesorno', _('Enable motor? (default: no)'), '', true)
2064
+ .setDefaultValue('false')
2065
+ .addParameter('expression', _('Motor speed (default: 0)'), '', true)
2066
+ .setDefaultValue('0')
2067
+ .addParameter(
2068
+ 'expression',
2069
+ _('Motor maximum torque (default: 0)'),
2070
+ '',
2071
+ true
2072
+ )
2073
+ .setDefaultValue('0')
2074
+ .addParameter(
2075
+ 'scenevar',
2076
+ _('Variable where to store the joint ID (default: none)'),
2077
+ '',
2078
+ true
2079
+ )
2080
+ .getCodeExtraInformation()
2081
+ .setFunctionName('addRevoluteJoint');
2082
+
2083
+ aut
2084
+ .addAction(
2085
+ 'AddRevoluteJointBetweenTwoBodies',
2086
+ _('Add revolute joint between two bodies'),
2087
+ _(
2088
+ 'Add a revolute joint between two objects. The reference angle determines what is considered as the base angle at the initial state.'
2089
+ ),
2090
+ _('Add a revolute joint between _PARAM0_ and _PARAM4_'),
2091
+ _('Joints/Revolute'),
2092
+ 'JsPlatform/Extensions/revolute_joint24.png',
2093
+ 'JsPlatform/Extensions/revolute_joint16.png'
2094
+ )
2095
+ .addParameter('object', _('First object'), '', false)
2096
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2097
+ .addParameter('expression', _('Anchor X on first body'))
2098
+ .addParameter('expression', _('Anchor Y on first body'))
2099
+ .addParameter('objectPtr', _('Second object'), '', false)
2100
+ .addParameter('expression', _('Anchor X on second body'))
2101
+ .addParameter('expression', _('Anchor Y on second body'))
2102
+ .addParameter(
2103
+ 'yesorno',
2104
+ _('Enable angle limits? (default: no)'),
2105
+ '',
2106
+ true
2107
+ )
2108
+ .setDefaultValue('false')
2109
+ .addParameter('expression', _('Reference angle (default: 0)'), '', true)
2110
+ .setDefaultValue('0')
2111
+ .addParameter('expression', _('Minimum angle (default: 0)'), '', true)
2112
+ .setDefaultValue('0')
2113
+ .addParameter('expression', _('Maximum angle (default: 0)'), '', true)
2114
+ .setDefaultValue('0')
2115
+ .addParameter('yesorno', _('Enable motor? (default: no)'), '', true)
2116
+ .setDefaultValue('false')
2117
+ .addParameter('expression', _('Motor speed (default: 0)'), '', true)
2118
+ .setDefaultValue('0')
2119
+ .addParameter(
2120
+ 'expression',
2121
+ _('Motor maximum torque (default: 0)'),
2122
+ '',
2123
+ true
2124
+ )
2125
+ .setDefaultValue('0')
2126
+ .addParameter(
2127
+ 'yesorno',
2128
+ _('Allow collision between connected bodies? (default: no)'),
2129
+ '',
2130
+ true
2131
+ )
2132
+ .setDefaultValue('false')
2133
+ .addParameter(
2134
+ 'scenevar',
2135
+ _('Variable where to store the joint ID (default: none)'),
2136
+ '',
2137
+ true
2138
+ )
2139
+ .getCodeExtraInformation()
2140
+ .setFunctionName('addRevoluteJointBetweenTwoBodies');
2141
+
2142
+ aut
2143
+ .addExpression(
2144
+ 'RevoluteJointReferenceAngle',
2145
+ _('Revolute joint reference angle'),
2146
+ _('Revolute joint reference angle'),
2147
+ _('Joints/Revolute'),
2148
+ 'JsPlatform/Extensions/revolute_joint16.png'
2149
+ )
2150
+ .addParameter('object', _('Object'), '', false)
2151
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2152
+ .addParameter('expression', _('Joint ID'))
2153
+ .getCodeExtraInformation()
2154
+ .setFunctionName('getRevoluteJointReferenceAngle');
2155
+
2156
+ aut
2157
+ .addExpression(
2158
+ 'RevoluteJointAngle',
2159
+ _('Revolute joint current angle'),
2160
+ _('Revolute joint current angle'),
2161
+ _('Joints/Revolute'),
2162
+ 'JsPlatform/Extensions/revolute_joint16.png'
2163
+ )
2164
+ .addParameter('object', _('Object'), '', false)
2165
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2166
+ .addParameter('expression', _('Joint ID'))
2167
+ .getCodeExtraInformation()
2168
+ .setFunctionName('getRevoluteJointAngle');
2169
+
2170
+ aut
2171
+ .addExpression(
2172
+ 'RevoluteJointSpeed',
2173
+ _('Revolute joint angular speed'),
2174
+ _('Revolute joint angular speed'),
2175
+ _('Joints/Revolute'),
2176
+ 'JsPlatform/Extensions/revolute_joint16.png'
2177
+ )
2178
+ .addParameter('object', _('Object'), '', false)
2179
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2180
+ .addParameter('expression', _('Joint ID'))
2181
+ .getCodeExtraInformation()
2182
+ .setFunctionName('getRevoluteJointSpeed');
2183
+
2184
+ aut
2185
+ .addCondition(
2186
+ 'RevoluteJointLimitsEnabled',
2187
+ _('Revolute joint limits enabled'),
2188
+ _('Test if a revolute joint limits are enabled.'),
2189
+ _('Limits for revolute joint _PARAM2_ are enabled'),
2190
+ _('Joints/Revolute'),
2191
+ 'JsPlatform/Extensions/revolute_joint24.png',
2192
+ 'JsPlatform/Extensions/revolute_joint16.png'
2193
+ )
2194
+ .addParameter('object', _('Object'), '', false)
2195
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2196
+ .addParameter('expression', _('Joint ID'))
2197
+ .getCodeExtraInformation()
2198
+ .setFunctionName('isRevoluteJointLimitsEnabled');
2199
+
2200
+ aut
2201
+ .addAction(
2202
+ 'EnableRevoluteJointLimits',
2203
+ _('Enable revolute joint limits'),
2204
+ _('Enable or disable a revolute joint angle limits.'),
2205
+ _('Enable limits for revolute joint _PARAM2_: _PARAM3_'),
2206
+ _('Joints/Revolute'),
2207
+ 'JsPlatform/Extensions/revolute_joint24.png',
2208
+ 'JsPlatform/Extensions/revolute_joint16.png'
2209
+ )
2210
+ .addParameter('object', _('Object'), '', false)
2211
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2212
+ .addParameter('expression', _('Joint ID'))
2213
+ .addParameter('yesorno', _('Enable?'))
2214
+ .getCodeExtraInformation()
2215
+ .setFunctionName('enableRevoluteJointLimits');
2216
+
2217
+ aut
2218
+ .addAction(
2219
+ 'RevoluteJointLimits',
2220
+ _('Revolute joint limits'),
2221
+ _('Modify a revolute joint angle limits.'),
2222
+ _('Set the limits to _PARAM3_;_PARAM4_ for revolute joint _PARAM2_'),
2223
+ _('Joints/Revolute'),
2224
+ 'JsPlatform/Extensions/revolute_joint24.png',
2225
+ 'JsPlatform/Extensions/revolute_joint16.png'
2226
+ )
2227
+ .addParameter('object', _('Object'), '', false)
2228
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2229
+ .addParameter('expression', _('Joint ID'))
2230
+ .addParameter('expression', _('Minimum angle'))
2231
+ .addParameter('expression', _('Maximum angle'))
2232
+ .getCodeExtraInformation()
2233
+ .setFunctionName('setRevoluteJointLimits');
2234
+
2235
+ aut
2236
+ .addExpression(
2237
+ 'RevoluteJointMinAngle',
2238
+ _('Revolute joint minimum angle'),
2239
+ _('Revolute joint minimum angle'),
2240
+ _('Joints/Revolute'),
2241
+ 'JsPlatform/Extensions/revolute_joint16.png'
2242
+ )
2243
+ .addParameter('object', _('Object'), '', false)
2244
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2245
+ .addParameter('expression', _('Joint ID'))
2246
+ .getCodeExtraInformation()
2247
+ .setFunctionName('getRevoluteJointMinAngle');
2248
+
2249
+ aut
2250
+ .addExpression(
2251
+ 'RevoluteJointMaxAngle',
2252
+ _('Revolute joint maximum angle'),
2253
+ _('Revolute joint maximum angle'),
2254
+ _('Joints/Revolute'),
2255
+ 'JsPlatform/Extensions/revolute_joint16.png'
2256
+ )
2257
+ .addParameter('object', _('Object'), '', false)
2258
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2259
+ .addParameter('expression', _('Joint ID'))
2260
+ .getCodeExtraInformation()
2261
+ .setFunctionName('getRevoluteJointMaxAngle');
2262
+
2263
+ aut
2264
+ .addCondition(
2265
+ 'RevoluteJointMotorEnabled',
2266
+ _('Revolute joint motor enabled'),
2267
+ _('Test if a revolute joint motor is enabled.'),
2268
+ _('Motor of revolute joint _PARAM2_ is enabled'),
2269
+ _('Joints/Revolute'),
2270
+ 'JsPlatform/Extensions/revolute_joint24.png',
2271
+ 'JsPlatform/Extensions/revolute_joint16.png'
2272
+ )
2273
+ .addParameter('object', _('Object'), '', false)
2274
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2275
+ .addParameter('expression', _('Joint ID'))
2276
+ .getCodeExtraInformation()
2277
+ .setFunctionName('isRevoluteJointMotorEnabled');
2278
+
2279
+ aut
2280
+ .addAction(
2281
+ 'EnableRevoluteJointMotor',
2282
+ _('Enable revolute joint motor'),
2283
+ _('Enable or disable a revolute joint motor.'),
2284
+ _('Enable motor for revolute joint _PARAM2_: _PARAM3_'),
2285
+ _('Joints/Revolute'),
2286
+ 'JsPlatform/Extensions/revolute_joint24.png',
2287
+ 'JsPlatform/Extensions/revolute_joint16.png'
2288
+ )
2289
+ .addParameter('object', _('Object'), '', false)
2290
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2291
+ .addParameter('expression', _('Joint ID'))
2292
+ .addParameter('yesorno', _('Enable?'))
2293
+ .getCodeExtraInformation()
2294
+ .setFunctionName('enableRevoluteJointMotor');
2295
+
2296
+ aut
2297
+ .addAction(
2298
+ 'RevoluteJointMotorSpeed',
2299
+ _('Revolute joint motor speed'),
2300
+ _('Modify a revolute joint motor speed.'),
2301
+ _('the motor speed for revolute joint _PARAM2_'),
2302
+ _('Joints/Revolute'),
2303
+ 'JsPlatform/Extensions/revolute_joint24.png',
2304
+ 'JsPlatform/Extensions/revolute_joint16.png'
2305
+ )
2306
+ .addParameter('object', _('Object'), '', false)
2307
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2308
+ .addParameter('expression', _('Joint ID'))
2309
+ .useStandardOperatorParameters(
2310
+ 'number',
2311
+ gd.ParameterOptions.makeNewOptions()
2312
+ )
2313
+ .getCodeExtraInformation()
2314
+ .setFunctionName('setRevoluteJointMotorSpeed')
2315
+ .setGetter('getRevoluteJointMotorSpeed');
2316
+
2317
+ aut
2318
+ .addExpression(
2319
+ 'RevoluteJointMotorSpeed',
2320
+ _('Revolute joint motor speed'),
2321
+ _('Revolute joint motor speed'),
2322
+ _('Joints/Revolute'),
2323
+ 'JsPlatform/Extensions/revolute_joint16.png'
2324
+ )
2325
+ .addParameter('object', _('Object'), '', false)
2326
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2327
+ .addParameter('expression', _('Joint ID'))
2328
+ .getCodeExtraInformation()
2329
+ .setFunctionName('getRevoluteJointMotorSpeed');
2330
+
2331
+ aut
2332
+ .addAction(
2333
+ 'RevoluteJointMaxMotorTorque',
2334
+ _('Revolute joint max motor torque'),
2335
+ _('Modify a revolute joint maximum motor torque.'),
2336
+ _('the maximum motor torque for revolute joint _PARAM2_'),
2337
+ _('Joints/Revolute'),
2338
+ 'JsPlatform/Extensions/revolute_joint24.png',
2339
+ 'JsPlatform/Extensions/revolute_joint16.png'
2340
+ )
2341
+ .addParameter('object', _('Object'), '', false)
2342
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2343
+ .addParameter('expression', _('Joint ID'))
2344
+ .useStandardOperatorParameters(
2345
+ 'number',
2346
+ gd.ParameterOptions.makeNewOptions()
2347
+ )
2348
+ .getCodeExtraInformation()
2349
+ .setFunctionName('setRevoluteJointMaxMotorTorque')
2350
+ .setGetter('getRevoluteJointMaxMotorTorque');
2351
+
2352
+ aut
2353
+ .addExpression(
2354
+ 'RevoluteJointMaxMotorTorque',
2355
+ _('Revolute joint max motor torque'),
2356
+ _('Revolute joint maximum motor torque'),
2357
+ _('Joints/Revolute'),
2358
+ 'JsPlatform/Extensions/revolute_joint16.png'
2359
+ )
2360
+ .addParameter('object', _('Object'), '', false)
2361
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2362
+ .addParameter('expression', _('Joint ID'))
2363
+ .getCodeExtraInformation()
2364
+ .setFunctionName('getRevoluteJointMaxMotorTorque');
2365
+
2366
+ aut
2367
+ .addExpression(
2368
+ 'RevoluteJointMotorTorque',
2369
+ _('Revolute joint motor torque'),
2370
+ _('Revolute joint motor torque'),
2371
+ _('Joints/Revolute'),
2372
+ 'JsPlatform/Extensions/revolute_joint16.png'
2373
+ )
2374
+ .addParameter('object', _('Object'), '', false)
2375
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2376
+ .addParameter('expression', _('Joint ID'))
2377
+ .getCodeExtraInformation()
2378
+ .setFunctionName('getRevoluteJointMotorTorque');
2379
+
2380
+ // Prismatic joint
2381
+ aut
2382
+ .addAction(
2383
+ 'AddPrismaticJoint',
2384
+ _('Add prismatic joint'),
2385
+ _(
2386
+ 'Add a prismatic joint between two objects. The translation limits are converted to meters using the world scale on X.'
2387
+ ),
2388
+ _('Add a prismatic joint between _PARAM0_ and _PARAM4_'),
2389
+ _('Joints/Prismatic'),
2390
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2391
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2392
+ )
2393
+ .addParameter('object', _('First object'), '', false)
2394
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2395
+ .addParameter('expression', _('Anchor X on first body'))
2396
+ .addParameter('expression', _('Anchor Y on first body'))
2397
+ .addParameter('objectPtr', _('Second object'), '', false)
2398
+ .addParameter('expression', _('Anchor X on second body'))
2399
+ .addParameter('expression', _('Anchor Y on second body'))
2400
+ .addParameter('expression', _('Axis angle'))
2401
+ .addParameter('expression', _('Reference angle (default: 0)'), '', true)
2402
+ .setDefaultValue('0')
2403
+ .addParameter('yesorno', _('Enable limits? (default: no)'), '', true)
2404
+ .setDefaultValue('false')
2405
+ .addParameter(
2406
+ 'expression',
2407
+ _('Minimum translation (default: 0)'),
2408
+ '',
2409
+ true
2410
+ )
2411
+ .setDefaultValue('0')
2412
+ .addParameter(
2413
+ 'expression',
2414
+ _('Maximum translation (default: 0)'),
2415
+ '',
2416
+ true
2417
+ )
2418
+ .setDefaultValue('0')
2419
+ .addParameter('yesorno', _('Enable motor? (default: no)'), '', true)
2420
+ .setDefaultValue('false')
2421
+ .addParameter('expression', _('Motor speed (default: 0)'), '', true)
2422
+ .setDefaultValue('0')
2423
+ .addParameter(
2424
+ 'expression',
2425
+ _('Motor maximum force (default: 0)'),
2426
+ '',
2427
+ true
2428
+ )
2429
+ .setDefaultValue('0')
2430
+ .addParameter(
2431
+ 'yesorno',
2432
+ _('Allow collision between connected bodies? (default: no)'),
2433
+ '',
2434
+ true
2435
+ )
2436
+ .setDefaultValue('false')
2437
+ .addParameter(
2438
+ 'scenevar',
2439
+ _('Variable where to store the joint ID (default: none)'),
2440
+ '',
2441
+ true
2442
+ )
2443
+ .getCodeExtraInformation()
2444
+ .setFunctionName('addPrismaticJoint');
2445
+
2446
+ aut
2447
+ .addExpression(
2448
+ 'PrismaticJointAxisAngle',
2449
+ _('Prismatic joint axis angle'),
2450
+ _('Prismatic joint axis angle'),
2451
+ _('Joints/Prismatic'),
2452
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2453
+ )
2454
+ .addParameter('object', _('Object'), '', false)
2455
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2456
+ .addParameter('expression', _('Joint ID'))
2457
+ .getCodeExtraInformation()
2458
+ .setFunctionName('getPrismaticJointAxisAngle');
2459
+
2460
+ aut
2461
+ .addExpression(
2462
+ 'PrismaticJointReferenceAngle',
2463
+ _('Prismatic joint reference angle'),
2464
+ _('Prismatic joint reference angle'),
2465
+ _('Joints/Prismatic'),
2466
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2467
+ )
2468
+ .addParameter('object', _('Object'), '', false)
2469
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2470
+ .addParameter('expression', _('Joint ID'))
2471
+ .getCodeExtraInformation()
2472
+ .setFunctionName('getPrismaticJointReferenceAngle');
2473
+
2474
+ aut
2475
+ .addExpression(
2476
+ 'PrismaticJointTranslation',
2477
+ _('Prismatic joint current translation'),
2478
+ _('Prismatic joint current translation'),
2479
+ _('Joints/Prismatic'),
2480
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2481
+ )
2482
+ .addParameter('object', _('Object'), '', false)
2483
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2484
+ .addParameter('expression', _('Joint ID'))
2485
+ .getCodeExtraInformation()
2486
+ .setFunctionName('getPrismaticJointTranslation');
2487
+
2488
+ aut
2489
+ .addExpression(
2490
+ 'PrismaticJointSpeed',
2491
+ _('Prismatic joint current speed'),
2492
+ _('Prismatic joint speed'),
2493
+ _('Joints/Prismatic'),
2494
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2495
+ )
2496
+ .addParameter('object', _('Object'), '', false)
2497
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2498
+ .addParameter('expression', _('Joint ID'))
2499
+ .getCodeExtraInformation()
2500
+ .setFunctionName('getPrismaticJointSpeed');
2501
+
2502
+ aut
2503
+ .addCondition(
2504
+ 'PrismaticJointLimitsEnabled',
2505
+ _('Prismatic joint limits enabled'),
2506
+ _('Test if a prismatic joint limits are enabled.'),
2507
+ _('Limits for prismatic joint _PARAM2_ are enabled'),
2508
+ _('Joints/Prismatic'),
2509
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2510
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2511
+ )
2512
+ .addParameter('object', _('Object'), '', false)
2513
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2514
+ .addParameter('expression', _('Joint ID'))
2515
+ .getCodeExtraInformation()
2516
+ .setFunctionName('isPrismaticJointLimitsEnabled');
2517
+
2518
+ aut
2519
+ .addAction(
2520
+ 'EnablePrismaticJointLimits',
2521
+ _('Enable prismatic joint limits'),
2522
+ _('Enable or disable a prismatic joint limits.'),
2523
+ _('Enable limits for prismatic joint _PARAM2_: _PARAM3_'),
2524
+ _('Joints/Prismatic'),
2525
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2526
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2527
+ )
2528
+ .addParameter('object', _('Object'), '', false)
2529
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2530
+ .addParameter('expression', _('Joint ID'))
2531
+ .addParameter('yesorno', _('Enable?'))
2532
+ .getCodeExtraInformation()
2533
+ .setFunctionName('enablePrismaticJointLimits');
2534
+
2535
+ aut
2536
+ .addAction(
2537
+ 'PrismaticJointLimits',
2538
+ _('Prismatic joint limits'),
2539
+ _('Modify a prismatic joint limits.'),
2540
+ _('Set the limits to _PARAM3_;_PARAM4_ for prismatic joint _PARAM2_'),
2541
+ _('Joints/Prismatic'),
2542
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2543
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2544
+ )
2545
+ .addParameter('object', _('Object'), '', false)
2546
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2547
+ .addParameter('expression', _('Joint ID'))
2548
+ .addParameter('expression', _('Minimum translation'))
2549
+ .addParameter('expression', _('Maximum translation'))
2550
+ .getCodeExtraInformation()
2551
+ .setFunctionName('setPrismaticJointLimits');
2552
+
2553
+ aut
2554
+ .addExpression(
2555
+ 'PrismaticJointMinTranslation',
2556
+ _('Prismatic joint minimum translation'),
2557
+ _('Prismatic joint minimum translation'),
2558
+ _('Joints/Prismatic'),
2559
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2560
+ )
2561
+ .addParameter('object', _('Object'), '', false)
2562
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2563
+ .addParameter('expression', _('Joint ID'))
2564
+ .getCodeExtraInformation()
2565
+ .setFunctionName('getPrismaticJointMinTranslation');
2566
+
2567
+ aut
2568
+ .addExpression(
2569
+ 'PrismaticJointMaxTranslation',
2570
+ _('Prismatic joint maximum translation'),
2571
+ _('Prismatic joint maximum translation'),
2572
+ _('Joints/Prismatic'),
2573
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2574
+ )
2575
+ .addParameter('object', _('Object'), '', false)
2576
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2577
+ .addParameter('expression', _('Joint ID'))
2578
+ .getCodeExtraInformation()
2579
+ .setFunctionName('getPrismaticJointMaxTranslation');
2580
+
2581
+ aut
2582
+ .addCondition(
2583
+ 'PrismaticJointMotorEnabled',
2584
+ _('Prismatic joint motor enabled'),
2585
+ _('Test if a prismatic joint motor is enabled.'),
2586
+ _('Motor for prismatic joint _PARAM2_ is enabled'),
2587
+ _('Joints/Prismatic'),
2588
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2589
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2590
+ )
2591
+ .addParameter('object', _('Object'), '', false)
2592
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2593
+ .addParameter('expression', _('Joint ID'))
2594
+ .getCodeExtraInformation()
2595
+ .setFunctionName('isPrismaticJointMotorEnabled');
2596
+
2597
+ aut
2598
+ .addAction(
2599
+ 'EnablePrismaticJointMotor',
2600
+ _('Enable prismatic joint motor'),
2601
+ _('Enable or disable a prismatic joint motor.'),
2602
+ _('Enable motor for prismatic joint _PARAM2_: _PARAM3_'),
2603
+ _('Joints/Prismatic'),
2604
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2605
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2606
+ )
2607
+ .addParameter('object', _('Object'), '', false)
2608
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2609
+ .addParameter('expression', _('Joint ID'))
2610
+ .addParameter('yesorno', _('Enable?'))
2611
+ .getCodeExtraInformation()
2612
+ .setFunctionName('enablePrismaticJointMotor');
2613
+
2614
+ aut
2615
+ .addAction(
2616
+ 'PrismaticJointMotorSpeed',
2617
+ _('Prismatic joint motor speed'),
2618
+ _('Modify a prismatic joint motor speed.'),
2619
+ _('the motor force for prismatic joint _PARAM2_'),
2620
+ _('Joints/Prismatic'),
2621
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2622
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2623
+ )
2624
+ .addParameter('object', _('Object'), '', false)
2625
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2626
+ .addParameter('expression', _('Joint ID'))
2627
+ .useStandardOperatorParameters(
2628
+ 'number',
2629
+ gd.ParameterOptions.makeNewOptions()
2630
+ )
2631
+ .getCodeExtraInformation()
2632
+ .setFunctionName('setPrismaticJointMotorSpeed')
2633
+ .setGetter('getPrismaticJointMotorSpeed');
2634
+
2635
+ aut
2636
+ .addExpression(
2637
+ 'PrismaticJointMotorSpeed',
2638
+ _('Prismatic joint motor speed'),
2639
+ _('Prismatic joint motor speed'),
2640
+ _('Joints/Prismatic'),
2641
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2642
+ )
2643
+ .addParameter('object', _('Object'), '', false)
2644
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2645
+ .addParameter('expression', _('Joint ID'))
2646
+ .getCodeExtraInformation()
2647
+ .setFunctionName('getPrismaticJointMotorSpeed');
2648
+
2649
+ aut
2650
+ .addAction(
2651
+ 'PrismaticJointMaxMotorForce',
2652
+ _('Prismatic joint max motor force'),
2653
+ _('Modify a prismatic joint maximum motor force.'),
2654
+ _('the maximum motor force for prismatic joint _PARAM2_'),
2655
+ _('Joints/Prismatic'),
2656
+ 'JsPlatform/Extensions/prismatic_joint24.png',
2657
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2658
+ )
2659
+ .addParameter('object', _('Object'), '', false)
2660
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2661
+ .addParameter('expression', _('Joint ID'))
2662
+ .useStandardOperatorParameters(
2663
+ 'number',
2664
+ gd.ParameterOptions.makeNewOptions()
2665
+ )
2666
+ .getCodeExtraInformation()
2667
+ .setFunctionName('setPrismaticJointMaxMotorForce')
2668
+ .setGetter('getPrismaticJointMaxMotorForce');
2669
+
2670
+ aut
2671
+ .addExpression(
2672
+ 'PrismaticJointMaxMotorForce',
2673
+ _('Prismatic joint max motor force'),
2674
+ _('Prismatic joint maximum motor force'),
2675
+ _('Joints/Prismatic'),
2676
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2677
+ )
2678
+ .addParameter('object', _('Object'), '', false)
2679
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2680
+ .addParameter('expression', _('Joint ID'))
2681
+ .getCodeExtraInformation()
2682
+ .setFunctionName('getPrismaticJointMaxMotorForce');
2683
+
2684
+ aut
2685
+ .addExpression(
2686
+ 'PrismaticJointMotorForce',
2687
+ _('Prismatic joint motor force'),
2688
+ _('Prismatic joint motor force'),
2689
+ _('Joints/Prismatic'),
2690
+ 'JsPlatform/Extensions/prismatic_joint16.png'
2691
+ )
2692
+ .addParameter('object', _('Object'), '', false)
2693
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2694
+ .addParameter('expression', _('Joint ID'))
2695
+ .getCodeExtraInformation()
2696
+ .setFunctionName('getPrismaticJointMotorForce');
2697
+
2698
+ // Pulley joint
2699
+ aut
2700
+ .addAction(
2701
+ 'AddPulleyJoint',
2702
+ _('Add pulley joint'),
2703
+ _(
2704
+ 'Add a pulley joint between two objects. Lengths are converted to meters using the world scale on X.'
2705
+ ),
2706
+ _('Add a pulley joint between _PARAM0_ and _PARAM4_'),
2707
+ _('Joints/Pulley'),
2708
+ 'JsPlatform/Extensions/pulley_joint24.png',
2709
+ 'JsPlatform/Extensions/pulley_joint16.png'
2710
+ )
2711
+ .addParameter('object', _('First object'), '', false)
2712
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2713
+ .addParameter('expression', _('Anchor X on first body'))
2714
+ .addParameter('expression', _('Anchor Y on first body'))
2715
+ .addParameter('objectPtr', _('Second object'), '', false)
2716
+ .addParameter('expression', _('Anchor X on second body'))
2717
+ .addParameter('expression', _('Anchor Y on second body'))
2718
+ .addParameter('expression', _('Ground anchor X for first object'))
2719
+ .addParameter('expression', _('Ground anchor Y for first object'))
2720
+ .addParameter('expression', _('Ground anchor X for second object'))
2721
+ .addParameter('expression', _('Ground anchor Y for second object'))
2722
+ .addParameter(
2723
+ 'expression',
2724
+ _('Length for first object (-1 to use anchor positions) (default: -1)'),
2725
+ '',
2726
+ true
2727
+ )
2728
+ .setDefaultValue('-1')
2729
+ .addParameter(
2730
+ 'expression',
2731
+ _(
2732
+ 'Length for second object (-1 to use anchor positions) (default: -1)'
2733
+ ),
2734
+ '',
2735
+ true
2736
+ )
2737
+ .setDefaultValue('-1')
2738
+ .addParameter(
2739
+ 'expression',
2740
+ _('Ratio (non-negative) (default: 1'),
2741
+ '',
2742
+ true
2743
+ )
2744
+ .setDefaultValue('1')
2745
+ .addParameter(
2746
+ 'yesorno',
2747
+ _('Allow collision between connected bodies? (default: no)'),
2748
+ '',
2749
+ true
2750
+ )
2751
+ .setDefaultValue('false')
2752
+ .addParameter(
2753
+ 'scenevar',
2754
+ _('Variable where to store the joint ID (default: none)'),
2755
+ '',
2756
+ true
2757
+ )
2758
+ .getCodeExtraInformation()
2759
+ .setFunctionName('addPulleyJoint');
2760
+
2761
+ aut
2762
+ .addExpression(
2763
+ 'PulleyJointFirstGroundAnchorX',
2764
+ _('Pulley joint first ground anchor X'),
2765
+ _('Pulley joint first ground anchor X'),
2766
+ _('Joints/Pulley'),
2767
+ 'JsPlatform/Extensions/pulley_joint16.png'
2768
+ )
2769
+ .addParameter('object', _('Object'), '', false)
2770
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2771
+ .addParameter('expression', _('Joint ID'))
2772
+ .getCodeExtraInformation()
2773
+ .setFunctionName('getPulleyJointFirstGroundAnchorX');
2774
+
2775
+ aut
2776
+ .addExpression(
2777
+ 'PulleyJointFirstGroundAnchorY',
2778
+ _('Pulley joint first ground anchor Y'),
2779
+ _('Pulley joint first ground anchor Y'),
2780
+ _('Joints/Pulley'),
2781
+ 'JsPlatform/Extensions/pulley_joint16.png'
2782
+ )
2783
+ .addParameter('object', _('Object'), '', false)
2784
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2785
+ .addParameter('expression', _('Joint ID'))
2786
+ .getCodeExtraInformation()
2787
+ .setFunctionName('getPulleyJointFirstGroundAnchorY');
2788
+
2789
+ aut
2790
+ .addExpression(
2791
+ 'PulleyJointSecondGroundAnchorX',
2792
+ _('Pulley joint second ground anchor X'),
2793
+ _('Pulley joint second ground anchor X'),
2794
+ _('Joints/Pulley'),
2795
+ 'JsPlatform/Extensions/pulley_joint16.png'
2796
+ )
2797
+ .addParameter('object', _('Object'), '', false)
2798
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2799
+ .addParameter('expression', _('Joint ID'))
2800
+ .getCodeExtraInformation()
2801
+ .setFunctionName('getPulleyJointSecondGroundAnchorX');
2802
+
2803
+ aut
2804
+ .addExpression(
2805
+ 'PulleyJointSecondGroundAnchorY',
2806
+ _('Pulley joint second ground anchor Y'),
2807
+ _('Pulley joint second ground anchor Y'),
2808
+ _('Joints/Pulley'),
2809
+ 'JsPlatform/Extensions/pulley_joint16.png'
2810
+ )
2811
+ .addParameter('object', _('Object'), '', false)
2812
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2813
+ .addParameter('expression', _('Joint ID'))
2814
+ .getCodeExtraInformation()
2815
+ .setFunctionName('getPulleyJointSecondGroundAnchorY');
2816
+
2817
+ aut
2818
+ .addExpression(
2819
+ 'PulleyJointFirstLength',
2820
+ _('Pulley joint first length'),
2821
+ _('Pulley joint first length'),
2822
+ _('Joints/Pulley'),
2823
+ 'JsPlatform/Extensions/pulley_joint16.png'
2824
+ )
2825
+ .addParameter('object', _('Object'), '', false)
2826
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2827
+ .addParameter('expression', _('Joint ID'))
2828
+ .getCodeExtraInformation()
2829
+ .setFunctionName('getPulleyJointFirstLength');
2830
+
2831
+ aut
2832
+ .addExpression(
2833
+ 'PulleyJointSecondLength',
2834
+ _('Pulley joint second length'),
2835
+ _('Pulley joint second length'),
2836
+ _('Joints/Pulley'),
2837
+ 'JsPlatform/Extensions/pulley_joint16.png'
2838
+ )
2839
+ .addParameter('object', _('Object'), '', false)
2840
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2841
+ .addParameter('expression', _('Joint ID'))
2842
+ .getCodeExtraInformation()
2843
+ .setFunctionName('getPulleyJointSecondLength');
2844
+
2845
+ aut
2846
+ .addExpression(
2847
+ 'PulleyJointRatio',
2848
+ _('Pulley joint ratio'),
2849
+ _('Pulley joint ratio'),
2850
+ _('Joints/Pulley'),
2851
+ 'JsPlatform/Extensions/pulley_joint16.png'
2852
+ )
2853
+ .addParameter('object', _('Object'), '', false)
2854
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2855
+ .addParameter('expression', _('Joint ID'))
2856
+ .getCodeExtraInformation()
2857
+ .setFunctionName('getPulleyJointRatio');
2858
+
2859
+ // Gear joint
2860
+ aut
2861
+ .addAction(
2862
+ 'AddGearJoint',
2863
+ _('Add gear joint'),
2864
+ _(
2865
+ 'Add a gear joint between two joints. Attention: Gear joints require the joints to be revolute or prismatic, and both of them to be attached to a static body as first object.'
2866
+ ),
2867
+ _('Add a gear joint between joints _PARAM2_ and _PARAM3_'),
2868
+ _('Joints/Gear'),
2869
+ 'JsPlatform/Extensions/gear_joint24.png',
2870
+ 'JsPlatform/Extensions/gear_joint16.png'
2871
+ )
2872
+ .addParameter('object', _('First object'), '', false)
2873
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2874
+ .addParameter('expression', _('First joint ID'))
2875
+ .addParameter('expression', _('Second joint ID'))
2876
+ .addParameter('expression', _('Ratio (non-zero) (default: 1)'), '', true)
2877
+ .setDefaultValue('1')
2878
+ .addParameter(
2879
+ 'yesorno',
2880
+ _('Allow collision between connected bodies? (default: no)'),
2881
+ '',
2882
+ true
2883
+ )
2884
+ .setDefaultValue('false')
2885
+ .addParameter(
2886
+ 'scenevar',
2887
+ _('Variable where to store the joint ID (default: none)'),
2888
+ '',
2889
+ true
2890
+ )
2891
+ .getCodeExtraInformation()
2892
+ .setFunctionName('addGearJoint');
2893
+
2894
+ aut
2895
+ .addExpression(
2896
+ 'GearJointFirstJoint',
2897
+ _('Gear joint first joint'),
2898
+ _('Gear joint first joint'),
2899
+ _('Joints/Gear'),
2900
+ 'JsPlatform/Extensions/gear_joint16.png'
2901
+ )
2902
+ .addParameter('object', _('Object'), '', false)
2903
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2904
+ .addParameter('expression', _('Joint ID'))
2905
+ .getCodeExtraInformation()
2906
+ .setFunctionName('getGearJointFirstJoint');
2907
+
2908
+ aut
2909
+ .addExpression(
2910
+ 'GearJointSecondJoint',
2911
+ _('Gear joint second joint'),
2912
+ _('Gear joint second joint'),
2913
+ _('Joints/Gear'),
2914
+ 'JsPlatform/Extensions/gear_joint16.png'
2915
+ )
2916
+ .addParameter('object', _('Object'), '', false)
2917
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2918
+ .addParameter('expression', _('Joint ID'))
2919
+ .getCodeExtraInformation()
2920
+ .setFunctionName('getGearJointSecondJoint');
2921
+
2922
+ aut
2923
+ .addAction(
2924
+ 'GearJointRatio',
2925
+ _('Gear joint ratio'),
2926
+ _('Modify a Gear joint ratio.'),
2927
+ _('the ratio for gear joint _PARAM2_'),
2928
+ _('Joints/Gear'),
2929
+ 'JsPlatform/Extensions/gear_joint24.png',
2930
+ 'JsPlatform/Extensions/gear_joint16.png'
2931
+ )
2932
+ .addParameter('object', _('Object'), '', false)
2933
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2934
+ .addParameter('expression', _('Joint ID'))
2935
+ .useStandardOperatorParameters(
2936
+ 'number',
2937
+ gd.ParameterOptions.makeNewOptions()
2938
+ )
2939
+ .getCodeExtraInformation()
2940
+ .setFunctionName('setGearJointRatio')
2941
+ .setGetter('getGearJointRatio');
2942
+
2943
+ aut
2944
+ .addExpression(
2945
+ 'GearJointRatio',
2946
+ _('Gear joint ratio'),
2947
+ _('Gear joint ratio'),
2948
+ _('Joints/Gear'),
2949
+ 'JsPlatform/Extensions/gear_joint16.png'
2950
+ )
2951
+ .addParameter('object', _('Object'), '', false)
2952
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2953
+ .addParameter('expression', _('Joint ID'))
2954
+ .getCodeExtraInformation()
2955
+ .setFunctionName('getGearJointRatio');
2956
+
2957
+ // Mouse joint
2958
+ aut
2959
+ .addAction(
2960
+ 'AddMouseJoint',
2961
+ _('Add mouse joint'),
2962
+ _(
2963
+ 'Add a mouse joint to an object (makes the object move towards a specific point).'
2964
+ ),
2965
+ _('Add a mouse joint to _PARAM0_'),
2966
+ _('Joints/Mouse'),
2967
+ 'JsPlatform/Extensions/mouse_joint24.png',
2968
+ 'JsPlatform/Extensions/mouse_joint16.png'
2969
+ )
2970
+ .addParameter('object', _('Object'), '', false)
2971
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
2972
+ .addParameter('expression', _('Target X'))
2973
+ .addParameter('expression', _('Target Y'))
2974
+ .addParameter(
2975
+ 'expression',
2976
+ _('Maximum force (N) (non-negative) (default: 500)'),
2977
+ '',
2978
+ true
2979
+ )
2980
+ .setDefaultValue('500')
2981
+ .addParameter(
2982
+ 'expression',
2983
+ _('Frequency (Hz) (positive) (default: 10)'),
2984
+ '',
2985
+ true
2986
+ )
2987
+ .setDefaultValue('10')
2988
+ .addParameter(
2989
+ 'expression',
2990
+ _('Damping ratio (non-negative) (default: 1)'),
2991
+ '',
2992
+ true
2993
+ )
2994
+ .setDefaultValue('1')
2995
+ .addParameter(
2996
+ 'scenevar',
2997
+ _('Variable where to store the joint ID (default: none)'),
2998
+ '',
2999
+ true
3000
+ )
3001
+ .getCodeExtraInformation()
3002
+ .setFunctionName('addMouseJoint');
3003
+
3004
+ aut
3005
+ .addAction(
3006
+ 'MouseJointTarget',
3007
+ _('Mouse joint target'),
3008
+ _('Set a mouse joint target.'),
3009
+ _(
3010
+ 'Set the target position of mouse joint _PARAM2_ of _PARAM0_ to _PARAM3_;_PARAM4_'
3011
+ ),
3012
+ _('Joints/Mouse'),
3013
+ 'JsPlatform/Extensions/mouse_joint24.png',
3014
+ 'JsPlatform/Extensions/mouse_joint16.png'
3015
+ )
3016
+ .addParameter('object', _('Object'), '', false)
3017
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3018
+ .addParameter('expression', _('Joint ID'))
3019
+ .addParameter('expression', _('Target X'))
3020
+ .addParameter('expression', _('Target Y'))
3021
+ .getCodeExtraInformation()
3022
+ .setFunctionName('setMouseJointTarget');
3023
+
3024
+ aut
3025
+ .addExpression(
3026
+ 'MouseJointTargetX',
3027
+ _('Mouse joint target X'),
3028
+ _('Mouse joint target X'),
3029
+ _('Joints/Mouse'),
3030
+ 'JsPlatform/Extensions/mouse_joint16.png'
3031
+ )
3032
+ .addParameter('object', _('Object'), '', false)
3033
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3034
+ .addParameter('expression', _('Joint ID'))
3035
+ .getCodeExtraInformation()
3036
+ .setFunctionName('getMouseJointTargetX');
3037
+
3038
+ aut
3039
+ .addExpression(
3040
+ 'MouseJointTargetY',
3041
+ _('Mouse joint target Y'),
3042
+ _('Mouse joint target Y'),
3043
+ _('Joints/Mouse'),
3044
+ 'JsPlatform/Extensions/mouse_joint16.png'
3045
+ )
3046
+ .addParameter('object', _('Object'), '', false)
3047
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3048
+ .addParameter('expression', _('Joint ID'))
3049
+ .getCodeExtraInformation()
3050
+ .setFunctionName('getMouseJointTargetY');
3051
+
3052
+ aut
3053
+ .addAction(
3054
+ 'MouseJointMaxForce',
3055
+ _('Mouse joint max force'),
3056
+ _('Set a mouse joint maximum force.'),
3057
+ _('the maximum force for mouse joint _PARAM2_'),
3058
+ _('Joints/Mouse'),
3059
+ 'JsPlatform/Extensions/mouse_joint24.png',
3060
+ 'JsPlatform/Extensions/mouse_joint16.png'
3061
+ )
3062
+ .addParameter('object', _('Object'), '', false)
3063
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3064
+ .addParameter('expression', _('Joint ID'))
3065
+ .useStandardOperatorParameters(
3066
+ 'number',
3067
+ gd.ParameterOptions.makeNewOptions()
3068
+ )
3069
+ .getCodeExtraInformation()
3070
+ .setFunctionName('setMouseJointMaxForce')
3071
+ .setGetter('getMouseJointMaxForce');
3072
+
3073
+ aut
3074
+ .addExpression(
3075
+ 'MouseJointMaxForce',
3076
+ _('Mouse joint max force'),
3077
+ _('Mouse joint maximum force'),
3078
+ _('Joints/Mouse'),
3079
+ 'JsPlatform/Extensions/mouse_joint16.png'
3080
+ )
3081
+ .addParameter('object', _('Object'), '', false)
3082
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3083
+ .addParameter('expression', _('Joint ID'))
3084
+ .getCodeExtraInformation()
3085
+ .setFunctionName('getMouseJointMaxForce');
3086
+
3087
+ aut
3088
+ .addAction(
3089
+ 'MouseJointFrequency',
3090
+ _('Mouse joint frequency'),
3091
+ _('Set a mouse joint frequency.'),
3092
+ _('the frequency for mouse joint _PARAM2_'),
3093
+ _('Joints/Mouse'),
3094
+ 'JsPlatform/Extensions/mouse_joint24.png',
3095
+ 'JsPlatform/Extensions/mouse_joint16.png'
3096
+ )
3097
+ .addParameter('object', _('Object'), '', false)
3098
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3099
+ .addParameter('expression', _('Joint ID'))
3100
+ .useStandardOperatorParameters(
3101
+ 'number',
3102
+ gd.ParameterOptions.makeNewOptions()
3103
+ )
3104
+ .getCodeExtraInformation()
3105
+ .setFunctionName('setMouseJointFrequency')
3106
+ .setGetter('getMouseJointFrequency');
3107
+
3108
+ aut
3109
+ .addExpression(
3110
+ 'MouseJointFrequency',
3111
+ _('Mouse joint frequency'),
3112
+ _('Mouse joint frequency'),
3113
+ _('Joints/Mouse'),
3114
+ 'JsPlatform/Extensions/mouse_joint16.png'
3115
+ )
3116
+ .addParameter('object', _('Object'), '', false)
3117
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3118
+ .addParameter('expression', _('Joint ID'))
3119
+ .getCodeExtraInformation()
3120
+ .setFunctionName('getMouseJointFrequency');
3121
+
3122
+ aut
3123
+ .addAction(
3124
+ 'MouseJointDampingRatio',
3125
+ _('Mouse joint damping ratio'),
3126
+ _('Set a mouse joint damping ratio.'),
3127
+ _('the damping ratio for mouse joint _PARAM2_'),
3128
+ _('Joints/Mouse'),
3129
+ 'JsPlatform/Extensions/mouse_joint24.png',
3130
+ 'JsPlatform/Extensions/mouse_joint16.png'
3131
+ )
3132
+ .addParameter('object', _('Object'), '', false)
3133
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3134
+ .addParameter('expression', _('Joint ID'))
3135
+ .useStandardOperatorParameters(
3136
+ 'number',
3137
+ gd.ParameterOptions.makeNewOptions()
3138
+ )
3139
+ .getCodeExtraInformation()
3140
+ .setFunctionName('setMouseJointDampingRatio')
3141
+ .setGetter('getMouseJointDampingRatio');
3142
+
3143
+ aut
3144
+ .addExpression(
3145
+ 'MouseJointDampingRatio',
3146
+ _('Mouse joint damping ratio'),
3147
+ _('Mouse joint damping ratio'),
3148
+ _('Joints/Mouse'),
3149
+ 'JsPlatform/Extensions/mouse_joint16.png'
3150
+ )
3151
+ .addParameter('object', _('Object'), '', false)
3152
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3153
+ .addParameter('expression', _('Joint ID'))
3154
+ .getCodeExtraInformation()
3155
+ .setFunctionName('getMouseJointDampingRatio');
3156
+
3157
+ // Wheel joint
3158
+ aut
3159
+ .addAction(
3160
+ 'AddWheelJoint',
3161
+ _('Add wheel joint'),
3162
+ _(
3163
+ 'Add a wheel joint between two objects. Higher frequencies means higher suspensions. Damping determines oscillations, critical damping of 1 means no oscillations.'
3164
+ ),
3165
+ _('Add a wheel joint between _PARAM0_ and _PARAM4_'),
3166
+ _('Joints/Wheel'),
3167
+ 'JsPlatform/Extensions/wheel_joint24.png',
3168
+ 'JsPlatform/Extensions/wheel_joint16.png'
3169
+ )
3170
+ .addParameter('object', _('First object'), '', false)
3171
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3172
+ .addParameter('expression', _('Anchor X on first body'))
3173
+ .addParameter('expression', _('Anchor Y on first body'))
3174
+ .addParameter('objectPtr', _('Second object'), '', false)
3175
+ .addParameter('expression', _('Anchor X on second body'))
3176
+ .addParameter('expression', _('Anchor Y on second body'))
3177
+ .addParameter('expression', _('Axis angle'))
3178
+ .addParameter(
3179
+ 'expression',
3180
+ _('Frequency (Hz) (non-negative) (default: 10)'),
3181
+ '',
3182
+ true
3183
+ )
3184
+ .setDefaultValue('10')
3185
+ .addParameter(
3186
+ 'expression',
3187
+ _('Damping ratio (non-negative) (default: 1)'),
3188
+ '',
3189
+ true
3190
+ )
3191
+ .setDefaultValue('1')
3192
+ .addParameter('yesorno', _('Enable motor? (default: no)'), '', true)
3193
+ .setDefaultValue('false')
3194
+ .addParameter('expression', _('Motor speed (default: 0)'), '', true)
3195
+ .setDefaultValue('0')
3196
+ .addParameter(
3197
+ 'expression',
3198
+ _('Motor maximum torque (default: 0)'),
3199
+ '',
3200
+ true
3201
+ )
3202
+ .setDefaultValue('0')
3203
+ .addParameter(
3204
+ 'yesorno',
3205
+ _('Allow collision between connected bodies? (default: no)'),
3206
+ '',
3207
+ true
3208
+ )
3209
+ .setDefaultValue('false')
3210
+ .addParameter(
3211
+ 'scenevar',
3212
+ _('Variable where to store the joint ID (default: none)'),
3213
+ '',
3214
+ true
3215
+ )
3216
+ .getCodeExtraInformation()
3217
+ .setFunctionName('addWheelJoint');
3218
+
3219
+ aut
3220
+ .addExpression(
3221
+ 'WheelJointAxisAngle',
3222
+ _('Wheel joint axis angle'),
3223
+ _('Wheel joint axis angle'),
3224
+ _('Joints/Wheel'),
3225
+ 'JsPlatform/Extensions/wheel_joint16.png'
3226
+ )
3227
+ .addParameter('object', _('Object'), '', false)
3228
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3229
+ .addParameter('expression', _('Joint ID'))
3230
+ .getCodeExtraInformation()
3231
+ .setFunctionName('getWheelJointAxisAngle');
3232
+
3233
+ aut
3234
+ .addExpression(
3235
+ 'WheelJointTranslation',
3236
+ _('Wheel joint current translation'),
3237
+ _('Wheel joint current translation'),
3238
+ _('Joints/Wheel'),
3239
+ 'JsPlatform/Extensions/wheel_joint16.png'
3240
+ )
3241
+ .addParameter('object', _('Object'), '', false)
3242
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3243
+ .addParameter('expression', _('Joint ID'))
3244
+ .getCodeExtraInformation()
3245
+ .setFunctionName('getWheelJointTranslation');
3246
+
3247
+ aut
3248
+ .addExpression(
3249
+ 'WheelJointSpeed',
3250
+ _('Wheel joint current speed'),
3251
+ _('Wheel joint speed'),
3252
+ _('Joints/Wheel'),
3253
+ 'JsPlatform/Extensions/wheel_joint16.png'
3254
+ )
3255
+ .addParameter('object', _('Object'), '', false)
3256
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3257
+ .addParameter('expression', _('Joint ID'))
3258
+ .getCodeExtraInformation()
3259
+ .setFunctionName('getWheelJointSpeed');
3260
+
3261
+ aut
3262
+ .addCondition(
3263
+ 'WheelJointMotorEnabled',
3264
+ _('Wheel joint motor enabled'),
3265
+ _('Test if a wheel joint motor is enabled.'),
3266
+ _('Motor for wheel joint _PARAM2_ is enabled'),
3267
+ _('Joints/Wheel'),
3268
+ 'JsPlatform/Extensions/wheel_joint24.png',
3269
+ 'JsPlatform/Extensions/wheel_joint16.png'
3270
+ )
3271
+ .addParameter('object', _('Object'), '', false)
3272
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3273
+ .addParameter('expression', _('Joint ID'))
3274
+ .getCodeExtraInformation()
3275
+ .setFunctionName('isWheelJointMotorEnabled');
3276
+
3277
+ aut
3278
+ .addAction(
3279
+ 'EnableWheelJointMotor',
3280
+ _('Enable wheel joint motor'),
3281
+ _('Enable or disable a wheel joint motor.'),
3282
+ _('Enable motor for wheel joint _PARAM2_: _PARAM3_'),
3283
+ _('Joints/Wheel'),
3284
+ 'JsPlatform/Extensions/wheel_joint24.png',
3285
+ 'JsPlatform/Extensions/wheel_joint16.png'
3286
+ )
3287
+ .addParameter('object', _('Object'), '', false)
3288
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3289
+ .addParameter('expression', _('Joint ID'))
3290
+ .addParameter('yesorno', _('Enable?'))
3291
+ .getCodeExtraInformation()
3292
+ .setFunctionName('enableWheelJointMotor');
3293
+
3294
+ aut
3295
+ .addAction(
3296
+ 'WheelJointMotorSpeed',
3297
+ _('Wheel joint motor speed'),
3298
+ _('Modify a wheel joint motor speed.'),
3299
+ _('the motor speed for wheel joint _PARAM2_'),
3300
+ _('Joints/Wheel'),
3301
+ 'JsPlatform/Extensions/wheel_joint24.png',
3302
+ 'JsPlatform/Extensions/wheel_joint16.png'
3303
+ )
3304
+ .addParameter('object', _('Object'), '', false)
3305
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3306
+ .addParameter('expression', _('Joint ID'))
3307
+ .useStandardOperatorParameters(
3308
+ 'number',
3309
+ gd.ParameterOptions.makeNewOptions()
3310
+ )
3311
+ .getCodeExtraInformation()
3312
+ .setFunctionName('setWheelJointMotorSpeed')
3313
+ .setGetter('getWheelJointMotorSpeed');
3314
+
3315
+ aut
3316
+ .addExpression(
3317
+ 'WheelJointMotorSpeed',
3318
+ _('Wheel joint motor speed'),
3319
+ _('Wheel joint motor speed'),
3320
+ _('Joints/Wheel'),
3321
+ 'JsPlatform/Extensions/wheel_joint16.png'
3322
+ )
3323
+ .addParameter('object', _('Object'), '', false)
3324
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3325
+ .addParameter('expression', _('Joint ID'))
3326
+ .getCodeExtraInformation()
3327
+ .setFunctionName('getWheelJointMotorSpeed');
3328
+
3329
+ aut
3330
+ .addAction(
3331
+ 'WheelJointMaxMotorTorque',
3332
+ _('Wheel joint max motor torque'),
3333
+ _('Modify a wheel joint maximum motor torque.'),
3334
+ _('the maximum motor torque for wheel joint _PARAM2_'),
3335
+ _('Joints/Wheel'),
3336
+ 'JsPlatform/Extensions/wheel_joint24.png',
3337
+ 'JsPlatform/Extensions/wheel_joint16.png'
3338
+ )
3339
+ .addParameter('object', _('Object'), '', false)
3340
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3341
+ .addParameter('expression', _('Joint ID'))
3342
+ .useStandardOperatorParameters(
3343
+ 'number',
3344
+ gd.ParameterOptions.makeNewOptions()
3345
+ )
3346
+ .getCodeExtraInformation()
3347
+ .setFunctionName('setWheelJointMaxMotorTorque')
3348
+ .setGetter('getWheelJointMaxMotorTorque');
3349
+
3350
+ aut
3351
+ .addExpression(
3352
+ 'WheelJointMaxMotorTorque',
3353
+ _('Wheel joint max motor torque'),
3354
+ _('Wheel joint maximum motor torque'),
3355
+ _('Joints/Wheel'),
3356
+ 'JsPlatform/Extensions/wheel_joint16.png'
3357
+ )
3358
+ .addParameter('object', _('Object'), '', false)
3359
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3360
+ .addParameter('expression', _('Joint ID'))
3361
+ .getCodeExtraInformation()
3362
+ .setFunctionName('getWheelJointMaxMotorTorque');
3363
+
3364
+ aut
3365
+ .addExpression(
3366
+ 'WheelJointMotorTorque',
3367
+ _('Wheel joint motor torque'),
3368
+ _('Wheel joint motor torque'),
3369
+ _('Joints/Wheel'),
3370
+ 'JsPlatform/Extensions/wheel_joint16.png'
3371
+ )
3372
+ .addParameter('object', _('Object'), '', false)
3373
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3374
+ .addParameter('expression', _('Joint ID'))
3375
+ .getCodeExtraInformation()
3376
+ .setFunctionName('getWheelJointMotorTorque');
3377
+
3378
+ aut
3379
+ .addAction(
3380
+ 'WheelJointFrequency',
3381
+ _('Wheel joint frequency'),
3382
+ _('Modify a wheel joint frequency.'),
3383
+ _('the frequency for wheel joint _PARAM2_'),
3384
+ _('Joints/Wheel'),
3385
+ 'JsPlatform/Extensions/wheel_joint24.png',
3386
+ 'JsPlatform/Extensions/wheel_joint16.png'
3387
+ )
3388
+ .addParameter('object', _('Object'), '', false)
3389
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3390
+ .addParameter('expression', _('Joint ID'))
3391
+ .useStandardOperatorParameters(
3392
+ 'number',
3393
+ gd.ParameterOptions.makeNewOptions()
3394
+ )
3395
+ .getCodeExtraInformation()
3396
+ .setFunctionName('setWheelJointFrequency')
3397
+ .setGetter('getWheelJointFrequency');
3398
+
3399
+ aut
3400
+ .addExpression(
3401
+ 'WheelJointFrequency',
3402
+ _('Wheel joint frequency'),
3403
+ _('Wheel joint frequency'),
3404
+ _('Joints/Wheel'),
3405
+ 'JsPlatform/Extensions/wheel_joint16.png'
3406
+ )
3407
+ .addParameter('object', _('Object'), '', false)
3408
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3409
+ .addParameter('expression', _('Joint ID'))
3410
+ .getCodeExtraInformation()
3411
+ .setFunctionName('getWheelJointFrequency');
3412
+
3413
+ aut
3414
+ .addAction(
3415
+ 'WheelJointDampingRatio',
3416
+ _('Wheel joint damping ratio'),
3417
+ _('Modify a wheel joint damping ratio.'),
3418
+ _('the damping ratio for wheel joint _PARAM2_'),
3419
+ _('Joints/Wheel'),
3420
+ 'JsPlatform/Extensions/wheel_joint24.png',
3421
+ 'JsPlatform/Extensions/wheel_joint16.png'
3422
+ )
3423
+ .addParameter('object', _('Object'), '', false)
3424
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3425
+ .addParameter('expression', _('Joint ID'))
3426
+ .useStandardOperatorParameters(
3427
+ 'number',
3428
+ gd.ParameterOptions.makeNewOptions()
3429
+ )
3430
+ .getCodeExtraInformation()
3431
+ .setFunctionName('setWheelJointDampingRatio')
3432
+ .setGetter('getWheelJointDampingRatio');
3433
+
3434
+ aut
3435
+ .addExpression(
3436
+ 'WheelJointDampingRatio',
3437
+ _('Wheel joint damping ratio'),
3438
+ _('Wheel joint damping ratio'),
3439
+ _('Joints/Wheel'),
3440
+ 'JsPlatform/Extensions/wheel_joint16.png'
3441
+ )
3442
+ .addParameter('object', _('Object'), '', false)
3443
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3444
+ .addParameter('expression', _('Joint ID'))
3445
+ .getCodeExtraInformation()
3446
+ .setFunctionName('getWheelJointDampingRatio');
3447
+
3448
+ // Weld joint
3449
+ aut
3450
+ .addAction(
3451
+ 'AddWeldJoint',
3452
+ _('Add weld joint'),
3453
+ _('Add a weld joint between two objects.'),
3454
+ _('Add a weld joint between _PARAM0_ and _PARAM4_'),
3455
+ _('Joints/Weld'),
3456
+ 'JsPlatform/Extensions/weld_joint24.png',
3457
+ 'JsPlatform/Extensions/weld_joint16.png'
3458
+ )
3459
+ .addParameter('object', _('First object'), '', false)
3460
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3461
+ .addParameter('expression', _('Anchor X on first body'))
3462
+ .addParameter('expression', _('Anchor Y on first body'))
3463
+ .addParameter('objectPtr', _('Second object'), '', false)
3464
+ .addParameter('expression', _('Anchor X on second body'))
3465
+ .addParameter('expression', _('Anchor Y on second body'))
3466
+ .addParameter('expression', _('Reference angle (default: 0)'), '', true)
3467
+ .setDefaultValue('0')
3468
+ .addParameter(
3469
+ 'expression',
3470
+ _('Frequency (Hz) (non-negative) (default: 10)'),
3471
+ '',
3472
+ true
3473
+ )
3474
+ .setDefaultValue('10')
3475
+ .addParameter(
3476
+ 'expression',
3477
+ _('Damping ratio (non-negative) (default: 1)'),
3478
+ '',
3479
+ true
3480
+ )
3481
+ .setDefaultValue('1')
3482
+ .addParameter(
3483
+ 'yesorno',
3484
+ _('Allow collision between connected bodies? (default: no)'),
3485
+ '',
3486
+ true
3487
+ )
3488
+ .setDefaultValue('false')
3489
+ .addParameter(
3490
+ 'scenevar',
3491
+ _('Variable where to store the joint ID (default: none)'),
3492
+ '',
3493
+ true
3494
+ )
3495
+ .getCodeExtraInformation()
3496
+ .setFunctionName('addWeldJoint');
3497
+
3498
+ aut
3499
+ .addExpression(
3500
+ 'WeldJointReferenceAngle',
3501
+ _('Weld joint reference angle'),
3502
+ _('Weld joint reference angle'),
3503
+ _('Joints/Weld'),
3504
+ 'JsPlatform/Extensions/weld_joint16.png'
3505
+ )
3506
+ .addParameter('object', _('Object'), '', false)
3507
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3508
+ .addParameter('expression', _('Joint ID'))
3509
+ .getCodeExtraInformation()
3510
+ .setFunctionName('getWeldJointReferenceAngle');
3511
+
3512
+ aut
3513
+ .addAction(
3514
+ 'WeldJointFrequency',
3515
+ _('Weld joint frequency'),
3516
+ _('Modify a weld joint frequency.'),
3517
+ _('the frequency for weld joint _PARAM2_'),
3518
+ _('Joints/Weld'),
3519
+ 'JsPlatform/Extensions/weld_joint24.png',
3520
+ 'JsPlatform/Extensions/weld_joint16.png'
3521
+ )
3522
+ .addParameter('object', _('Object'), '', false)
3523
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3524
+ .addParameter('expression', _('Joint ID'))
3525
+ .useStandardOperatorParameters(
3526
+ 'number',
3527
+ gd.ParameterOptions.makeNewOptions()
3528
+ )
3529
+ .getCodeExtraInformation()
3530
+ .setFunctionName('setWeldJointFrequency')
3531
+ .setGetter('getWeldJointFrequency');
3532
+
3533
+ aut
3534
+ .addExpression(
3535
+ 'WeldJointFrequency',
3536
+ _('Weld joint frequency'),
3537
+ _('Weld joint frequency'),
3538
+ _('Joints/Weld'),
3539
+ 'JsPlatform/Extensions/weld_joint16.png'
3540
+ )
3541
+ .addParameter('object', _('Object'), '', false)
3542
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3543
+ .addParameter('expression', _('Joint ID'))
3544
+ .getCodeExtraInformation()
3545
+ .setFunctionName('getWeldJointFrequency');
3546
+
3547
+ aut
3548
+ .addAction(
3549
+ 'WeldJointDampingRatio',
3550
+ _('Weld joint damping ratio'),
3551
+ _('Modify a weld joint damping ratio.'),
3552
+ _('the damping ratio for weld joint _PARAM2_'),
3553
+ _('Joints/Weld'),
3554
+ 'JsPlatform/Extensions/weld_joint24.png',
3555
+ 'JsPlatform/Extensions/weld_joint16.png'
3556
+ )
3557
+ .addParameter('object', _('Object'), '', false)
3558
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3559
+ .addParameter('expression', _('Joint ID'))
3560
+ .useStandardOperatorParameters(
3561
+ 'number',
3562
+ gd.ParameterOptions.makeNewOptions()
3563
+ )
3564
+ .getCodeExtraInformation()
3565
+ .setFunctionName('setWeldJointDampingRatio')
3566
+ .setGetter('getWeldJointDampingRatio');
3567
+
3568
+ aut
3569
+ .addExpression(
3570
+ 'WeldJointDampingRatio',
3571
+ _('Weld joint damping ratio'),
3572
+ _('Weld joint damping ratio'),
3573
+ _('Joints/Weld'),
3574
+ 'JsPlatform/Extensions/weld_joint16.png'
3575
+ )
3576
+ .addParameter('object', _('Object'), '', false)
3577
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3578
+ .addParameter('expression', _('Joint ID'))
3579
+ .getCodeExtraInformation()
3580
+ .setFunctionName('getWeldJointDampingRatio');
3581
+
3582
+ // Rope joint
3583
+ aut
3584
+ .addAction(
3585
+ 'AddRopeJoint',
3586
+ _('Add rope joint'),
3587
+ _(
3588
+ 'Add a rope joint between two objects. The maximum length is converted to meters using the world scale on X.'
3589
+ ),
3590
+ _('Add a rope joint between _PARAM0_ and _PARAM4_'),
3591
+ _('Joints/Rope'),
3592
+ 'JsPlatform/Extensions/rope_joint24.png',
3593
+ 'JsPlatform/Extensions/rope_joint16.png'
3594
+ )
3595
+ .addParameter('object', _('First object'), '', false)
3596
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3597
+ .addParameter('expression', _('Anchor X on first body'))
3598
+ .addParameter('expression', _('Anchor Y on first body'))
3599
+ .addParameter('objectPtr', _('Second object'), '', false)
3600
+ .addParameter('expression', _('Anchor X on second body'))
3601
+ .addParameter('expression', _('Anchor Y on second body'))
3602
+ .addParameter(
3603
+ 'expression',
3604
+ _('Maximum length (-1 to use current objects distance) (default: -1)'),
3605
+ '',
3606
+ true
3607
+ )
3608
+ .setDefaultValue('-1')
3609
+ .addParameter(
3610
+ 'yesorno',
3611
+ _('Allow collision between connected bodies? (default: no)'),
3612
+ '',
3613
+ true
3614
+ )
3615
+ .setDefaultValue('false')
3616
+ .addParameter(
3617
+ 'scenevar',
3618
+ _('Variable where to store the joint ID (default: none)'),
3619
+ '',
3620
+ true
3621
+ )
3622
+ .getCodeExtraInformation()
3623
+ .setFunctionName('addRopeJoint');
3624
+
3625
+ aut
3626
+ .addAction(
3627
+ 'RopeJointMaxLength',
3628
+ _('Rope joint max length'),
3629
+ _('Modify a rope joint maximum length.'),
3630
+ _('the maximum length for rope joint _PARAM2_'),
3631
+ _('Joints/Rope'),
3632
+ 'JsPlatform/Extensions/rope_joint24.png',
3633
+ 'JsPlatform/Extensions/rope_joint16.png'
3634
+ )
3635
+ .addParameter('object', _('Object'), '', false)
3636
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3637
+ .addParameter('expression', _('Joint ID'))
3638
+ .useStandardOperatorParameters(
3639
+ 'number',
3640
+ gd.ParameterOptions.makeNewOptions()
3641
+ )
3642
+ .getCodeExtraInformation()
3643
+ .setFunctionName('setRopeJointMaxLength')
3644
+ .setGetter('getRopeJointMaxLength');
3645
+
3646
+ aut
3647
+ .addExpression(
3648
+ 'RopeJointMaxLength',
3649
+ _('Rope joint max length'),
3650
+ _('Rope joint maximum length'),
3651
+ _('Joints/Rope'),
3652
+ 'JsPlatform/Extensions/rope_joint16.png'
3653
+ )
3654
+ .addParameter('object', _('Object'), '', false)
3655
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3656
+ .addParameter('expression', _('Joint ID'))
3657
+ .getCodeExtraInformation()
3658
+ .setFunctionName('getRopeJointMaxLength');
3659
+
3660
+ // Friction joint
3661
+ aut
3662
+ .addAction(
3663
+ 'AddFrictionJoint',
3664
+ _('Add friction joint'),
3665
+ _('Add a friction joint between two objects.'),
3666
+ _('Add a friction joint between _PARAM0_ and _PARAM4_'),
3667
+ _('Joints/Friction'),
3668
+ 'JsPlatform/Extensions/friction_joint24.png',
3669
+ 'JsPlatform/Extensions/friction_joint16.png'
3670
+ )
3671
+ .addParameter('object', _('First object'), '', false)
3672
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3673
+ .addParameter('expression', _('Anchor X on first body'))
3674
+ .addParameter('expression', _('Anchor Y on first body'))
3675
+ .addParameter('objectPtr', _('Second object'), '', false)
3676
+ .addParameter('expression', _('Anchor X on second body'))
3677
+ .addParameter('expression', _('Anchor Y on second body'))
3678
+ .addParameter('expression', _('Maximum force (non-negative)'))
3679
+ .addParameter('expression', _('Maximum torque (non-negative)'))
3680
+ .addParameter(
3681
+ 'yesorno',
3682
+ _('Allow collision between connected bodies? (default: no)'),
3683
+ '',
3684
+ true
3685
+ )
3686
+ .setDefaultValue('false')
3687
+ .addParameter(
3688
+ 'scenevar',
3689
+ _('Variable where to store the joint ID (default: none)'),
3690
+ '',
3691
+ true
3692
+ )
3693
+ .getCodeExtraInformation()
3694
+ .setFunctionName('addFrictionJoint');
3695
+
3696
+ aut
3697
+ .addAction(
3698
+ 'FrictionJointMaxForce',
3699
+ _('Friction joint max force'),
3700
+ _('Modify a friction joint maximum force.'),
3701
+ _('the maximum force for friction joint _PARAM2_'),
3702
+ _('Joints/Friction'),
3703
+ 'JsPlatform/Extensions/friction_joint24.png',
3704
+ 'JsPlatform/Extensions/friction_joint16.png'
3705
+ )
3706
+ .addParameter('object', _('Object'), '', false)
3707
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3708
+ .addParameter('expression', _('Joint ID'))
3709
+ .useStandardOperatorParameters(
3710
+ 'number',
3711
+ gd.ParameterOptions.makeNewOptions()
3712
+ )
3713
+ .getCodeExtraInformation()
3714
+ .setFunctionName('setFrictionJointMaxForce')
3715
+ .setGetter('getFrictionJointMaxForce');
3716
+
3717
+ aut
3718
+ .addExpression(
3719
+ 'FrictionJointMaxForce',
3720
+ _('Friction joint max force'),
3721
+ _('Friction joint maximum force'),
3722
+ _('Joints/Friction'),
3723
+ 'JsPlatform/Extensions/friction_joint16.png'
3724
+ )
3725
+ .addParameter('object', _('Object'), '', false)
3726
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3727
+ .addParameter('expression', _('Joint ID'))
3728
+ .getCodeExtraInformation()
3729
+ .setFunctionName('getFrictionJointMaxForce');
3730
+
3731
+ aut
3732
+ .addAction(
3733
+ 'FrictionJointMaxTorque',
3734
+ _('Friction joint max torque'),
3735
+ _('Modify a friction joint maximum torque.'),
3736
+ _('the maximum torque for friction joint _PARAM2_'),
3737
+ _('Joints/Friction'),
3738
+ 'JsPlatform/Extensions/friction_joint24.png',
3739
+ 'JsPlatform/Extensions/friction_joint16.png'
3740
+ )
3741
+ .addParameter('object', _('Object'), '', false)
3742
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3743
+ .addParameter('expression', _('Joint ID'))
3744
+ .useStandardOperatorParameters(
3745
+ 'number',
3746
+ gd.ParameterOptions.makeNewOptions()
3747
+ )
3748
+ .getCodeExtraInformation()
3749
+ .setFunctionName('setFrictionJointMaxTorque')
3750
+ .setGetter('getFrictionJointMaxTorque');
3751
+
3752
+ aut
3753
+ .addExpression(
3754
+ 'FrictionJointMaxTorque',
3755
+ _('Friction joint max torque'),
3756
+ _('Friction joint maximum torque'),
3757
+ _('Joints/Friction'),
3758
+ 'JsPlatform/Extensions/friction_joint16.png'
3759
+ )
3760
+ .addParameter('object', _('Object'), '', false)
3761
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3762
+ .addParameter('expression', _('Joint ID'))
3763
+ .getCodeExtraInformation()
3764
+ .setFunctionName('getFrictionJointMaxTorque');
3765
+
3766
+ // Motor joint
3767
+ aut
3768
+ .addAction(
3769
+ 'AddMotorJoint',
3770
+ _('Add motor joint'),
3771
+ _(
3772
+ 'Add a motor joint between two objects. The position and angle offsets are relative to the first object.'
3773
+ ),
3774
+ _('Add a motor joint between _PARAM0_ and _PARAM2_'),
3775
+ _('Joints/Motor'),
3776
+ 'JsPlatform/Extensions/motor_joint24.png',
3777
+ 'JsPlatform/Extensions/motor_joint16.png'
3778
+ )
3779
+ .addParameter('object', _('First object'), '', false)
3780
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3781
+ .addParameter('objectPtr', _('Second object'), '', false)
3782
+ .addParameter('expression', _('Offset X position'))
3783
+ .addParameter('expression', _('Offset Y position'))
3784
+ .addParameter('expression', _('Offset Angle'))
3785
+ .addParameter('expression', _('Maximum force (non-negative)'))
3786
+ .addParameter('expression', _('Maximum torque (non-negative)'))
3787
+ .addParameter('expression', _('Correction factor (default: 1)'), '', true)
3788
+ .setDefaultValue('1')
3789
+ .addParameter(
3790
+ 'yesorno',
3791
+ _('Allow collision between connected bodies? (default: no)'),
3792
+ '',
3793
+ true
3794
+ )
3795
+ .setDefaultValue('false')
3796
+ .addParameter(
3797
+ 'scenevar',
3798
+ _('Variable where to store the joint ID (default: none)'),
3799
+ '',
3800
+ true
3801
+ )
3802
+ .getCodeExtraInformation()
3803
+ .setFunctionName('addMotorJoint');
3804
+
3805
+ aut
3806
+ .addAction(
3807
+ 'MotorJointOffset',
3808
+ _('Motor joint offset'),
3809
+ _('Modify a motor joint offset.'),
3810
+ _('Set offset to _PARAM3_;_PARAM4_ for motor joint _PARAM2_'),
3811
+ _('Joints/Motor'),
3812
+ 'JsPlatform/Extensions/motor_joint24.png',
3813
+ 'JsPlatform/Extensions/motor_joint16.png'
3814
+ )
3815
+ .addParameter('object', _('Object'), '', false)
3816
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3817
+ .addParameter('expression', _('Joint ID'))
3818
+ .addParameter('expression', _('Offset X'))
3819
+ .addParameter('expression', _('Offset Y'))
3820
+ .getCodeExtraInformation()
3821
+ .setFunctionName('setMotorJointOffset');
3822
+
3823
+ aut
3824
+ .addExpression(
3825
+ 'MotorJointOffsetX',
3826
+ _('Motor joint offset X'),
3827
+ _('Motor joint offset X'),
3828
+ _('Joints/Motor'),
3829
+ 'JsPlatform/Extensions/motor_joint16.png'
3830
+ )
3831
+ .addParameter('object', _('Object'), '', false)
3832
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3833
+ .addParameter('expression', _('Joint ID'))
3834
+ .getCodeExtraInformation()
3835
+ .setFunctionName('getMotorJointOffsetX');
3836
+
3837
+ aut
3838
+ .addExpression(
3839
+ 'MotorJointOffsetY',
3840
+ _('Motor joint offset Y'),
3841
+ _('Motor joint offset Y'),
3842
+ _('Joints/Motor'),
3843
+ 'JsPlatform/Extensions/motor_joint16.png'
3844
+ )
3845
+ .addParameter('object', _('Object'), '', false)
3846
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3847
+ .addParameter('expression', _('Joint ID'))
3848
+ .getCodeExtraInformation()
3849
+ .setFunctionName('getMotorJointOffsetY');
3850
+
3851
+ aut
3852
+ .addAction(
3853
+ 'MotorJointAngularOffset',
3854
+ _('Motor joint angular offset'),
3855
+ _('Modify a motor joint angular offset.'),
3856
+ _('the angular offset for motor joint _PARAM2_'),
3857
+ _('Joints/Motor'),
3858
+ 'JsPlatform/Extensions/motor_joint24.png',
3859
+ 'JsPlatform/Extensions/motor_joint16.png'
3860
+ )
3861
+ .addParameter('object', _('Object'), '', false)
3862
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3863
+ .addParameter('expression', _('Joint ID'))
3864
+ .useStandardOperatorParameters(
3865
+ 'number',
3866
+ gd.ParameterOptions.makeNewOptions()
3867
+ )
3868
+ .getCodeExtraInformation()
3869
+ .setFunctionName('setMotorJointAngularOffset')
3870
+ .setGetter('getMotorJointAngularOffset');
3871
+
3872
+ aut
3873
+ .addExpression(
3874
+ 'MotorJointAngularOffset',
3875
+ _('Motor joint angular offset'),
3876
+ _('Motor joint angular offset'),
3877
+ _('Joints/Motor'),
3878
+ 'JsPlatform/Extensions/motor_joint16.png'
3879
+ )
3880
+ .addParameter('object', _('Object'), '', false)
3881
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3882
+ .addParameter('expression', _('Joint ID'))
3883
+ .getCodeExtraInformation()
3884
+ .setFunctionName('getMotorJointAngularOffset');
3885
+
3886
+ aut
3887
+ .addAction(
3888
+ 'MotorJointMaxForce',
3889
+ _('Motor joint max force'),
3890
+ _('Modify a motor joint maximum force.'),
3891
+ _('the maximum force for motor joint _PARAM2_'),
3892
+ _('Joints/Motor'),
3893
+ 'JsPlatform/Extensions/motor_joint24.png',
3894
+ 'JsPlatform/Extensions/motor_joint16.png'
3895
+ )
3896
+ .addParameter('object', _('Object'), '', false)
3897
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3898
+ .addParameter('expression', _('Joint ID'))
3899
+ .useStandardOperatorParameters(
3900
+ 'number',
3901
+ gd.ParameterOptions.makeNewOptions()
3902
+ )
3903
+ .getCodeExtraInformation()
3904
+ .setFunctionName('setMotorJointMaxForce')
3905
+ .setGetter('getMotorJointMaxForce');
3906
+
3907
+ aut
3908
+ .addExpression(
3909
+ 'MotorJointMaxForce',
3910
+ _('Motor joint max force'),
3911
+ _('Motor joint maximum force'),
3912
+ _('Joints/Motor'),
3913
+ 'JsPlatform/Extensions/motor_joint16.png'
3914
+ )
3915
+ .addParameter('object', _('Object'), '', false)
3916
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3917
+ .addParameter('expression', _('Joint ID'))
3918
+ .getCodeExtraInformation()
3919
+ .setFunctionName('getMotorJointMaxForce');
3920
+
3921
+ aut
3922
+ .addAction(
3923
+ 'MotorJointMaxTorque',
3924
+ _('Motor joint max torque'),
3925
+ _('Modify a motor joint maximum torque.'),
3926
+ _('the maximum torque for motor joint _PARAM2_'),
3927
+ _('Joints/Motor'),
3928
+ 'JsPlatform/Extensions/motor_joint24.png',
3929
+ 'JsPlatform/Extensions/motor_joint16.png'
3930
+ )
3931
+ .addParameter('object', _('Object'), '', false)
3932
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3933
+ .addParameter('expression', _('Joint ID'))
3934
+ .useStandardOperatorParameters(
3935
+ 'number',
3936
+ gd.ParameterOptions.makeNewOptions()
3937
+ )
3938
+ .getCodeExtraInformation()
3939
+ .setFunctionName('setMotorJointMaxTorque')
3940
+ .setGetter('getMotorJointMaxTorque');
3941
+
3942
+ aut
3943
+ .addExpression(
3944
+ 'MotorJointMaxTorque',
3945
+ _('Motor joint max torque'),
3946
+ _('Motor joint maximum torque'),
3947
+ _('Joints/Motor'),
3948
+ 'JsPlatform/Extensions/motor_joint16.png'
3949
+ )
3950
+ .addParameter('object', _('Object'), '', false)
3951
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3952
+ .addParameter('expression', _('Joint ID'))
3953
+ .getCodeExtraInformation()
3954
+ .setFunctionName('getMotorJointMaxTorque');
3955
+
3956
+ aut
3957
+ .addAction(
3958
+ 'MotorJointCorrectionFactor',
3959
+ _('Motor joint correction factor'),
3960
+ _('Modify a motor joint correction factor.'),
3961
+ _('the correction factor for motor joint _PARAM2_'),
3962
+ _('Joints/Motor'),
3963
+ 'JsPlatform/Extensions/motor_joint24.png',
3964
+ 'JsPlatform/Extensions/motor_joint16.png'
3965
+ )
3966
+ .addParameter('object', _('Object'), '', false)
3967
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3968
+ .addParameter('expression', _('Joint ID'))
3969
+ .useStandardOperatorParameters(
3970
+ 'number',
3971
+ gd.ParameterOptions.makeNewOptions()
3972
+ )
3973
+ .getCodeExtraInformation()
3974
+ .setFunctionName('setMotorJointCorrectionFactor')
3975
+ .setGetter('getMotorJointCorrectionFactor');
3976
+
3977
+ aut
3978
+ .addExpression(
3979
+ 'MotorJointCorrectionFactor',
3980
+ _('Motor joint correction factor'),
3981
+ _('Motor joint correction factor'),
3982
+ _('Joints/Motor'),
3983
+ 'JsPlatform/Extensions/motor_joint16.png'
3984
+ )
3985
+ .addParameter('object', _('Object'), '', false)
3986
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
3987
+ .addParameter('expression', _('Joint ID'))
3988
+ .getCodeExtraInformation()
3989
+ .setFunctionName('getMotorJointCorrectionFactor');
3990
+
3991
+ // Collision
3992
+ extension
3993
+ .addCondition(
3994
+ 'Collision',
3995
+ _('Collision'),
3996
+ _('Check if two objects collide.'),
3997
+ _('_PARAM0_ is colliding with _PARAM2_'),
3998
+ '',
3999
+ 'res/physics32.png',
4000
+ 'res/physics32.png'
4001
+ )
4002
+ .addParameter('objectList', _('Object'), '', false)
4003
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
4004
+ .addParameter('objectList', _('Object'), '', false)
4005
+ .addCodeOnlyParameter('conditionInverted', '')
4006
+ .getCodeExtraInformation()
4007
+ .setIncludeFile('Extensions/Physics2Behavior/physics2tools.js')
4008
+ .setFunctionName('gdjs.physics2.objectsCollide');
4009
+
4010
+ extension
4011
+ .addCondition(
4012
+ 'CollisionStarted',
4013
+ _('Collision started'),
4014
+ _('Check if two objects just started colliding during this frame.'),
4015
+ _('_PARAM0_ started colliding with _PARAM2_'),
4016
+ _('Collision'),
4017
+ 'res/physics32.png',
4018
+ 'res/physics32.png'
4019
+ )
4020
+ .addParameter('objectList', _('Object'), '', false)
4021
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
4022
+ .addParameter('objectList', _('Object'), '', false)
4023
+ .addCodeOnlyParameter('conditionInverted', '')
4024
+ .getCodeExtraInformation()
4025
+ .setIncludeFile('Extensions/Physics2Behavior/physics2tools.js')
4026
+ .setFunctionName('gdjs.physics2.haveObjectsStartedColliding');
4027
+
4028
+ extension
4029
+ .addCondition(
4030
+ 'CollisionStopped',
4031
+ _('Collision stopped'),
4032
+ _('Check if two objects just stopped colliding at this frame.'),
4033
+ _('_PARAM0_ stopped colliding with _PARAM2_'),
4034
+ _('Collision'),
4035
+ 'res/physics32.png',
4036
+ 'res/physics32.png'
4037
+ )
4038
+ .addParameter('objectList', _('Object'), '', false)
4039
+ .addParameter('behavior', _('Behavior'), 'Physics2Behavior')
4040
+ .addParameter('objectList', _('Object'), '', false)
4041
+ .addCodeOnlyParameter('conditionInverted', '')
4042
+ .getCodeExtraInformation()
4043
+ .setIncludeFile('Extensions/Physics2Behavior/physics2tools.js')
4044
+ .setFunctionName('gdjs.physics2.haveObjectsStoppedColliding');
4045
+
4046
+ return extension;
4047
+ },
4048
+
4049
+ runExtensionSanityTests: function (
4050
+ gd /*: libGDevelop */,
4051
+ extension /*: gdPlatformExtension*/
4052
+ ) {
4053
+ const dummyBehavior = extension
4054
+ .getBehaviorMetadata('Physics2::Physics2Behavior')
4055
+ .get();
4056
+ const sharedData = extension
4057
+ .getBehaviorMetadata('Physics2::Physics2Behavior')
4058
+ .getSharedDataInstance();
4059
+ return [
4060
+ gd.ProjectHelper.sanityCheckBehaviorProperty(
4061
+ dummyBehavior,
4062
+ 'density',
4063
+ '123'
4064
+ ),
4065
+ gd.ProjectHelper.sanityCheckBehaviorsSharedDataProperty(
4066
+ sharedData,
4067
+ 'gravityY',
4068
+ '456'
4069
+ ),
4070
+ ];
4071
+ },
4072
+ };